From 434ee6c2607207a54238bfe78fd60616f6dd1d2d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Axel=20D=C3=B6rfler?= Date: Sun, 18 Jan 2004 03:17:30 +0000 Subject: [PATCH] Added clean and empty decoder/reader add-on code :-) git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6128 a95241bf-73f2-0310-859d-f6bbb57e9c96 --- src/add-ons/media/plugins/musepack/Jamfile | 15 ++++ .../media/plugins/musepack/MusePack.cpp | 42 +++++++++++ src/add-ons/media/plugins/musepack/MusePack.h | 21 ++++++ .../plugins/musepack/MusePackDecoder.cpp | 45 ++++++++++++ .../media/plugins/musepack/MusePackDecoder.h | 32 +++++++++ .../media/plugins/musepack/MusePackReader.cpp | 69 +++++++++++++++++++ .../media/plugins/musepack/MusePackReader.h | 39 +++++++++++ 7 files changed, 263 insertions(+) create mode 100644 src/add-ons/media/plugins/musepack/Jamfile create mode 100644 src/add-ons/media/plugins/musepack/MusePack.cpp create mode 100644 src/add-ons/media/plugins/musepack/MusePack.h create mode 100644 src/add-ons/media/plugins/musepack/MusePackDecoder.cpp create mode 100644 src/add-ons/media/plugins/musepack/MusePackDecoder.h create mode 100644 src/add-ons/media/plugins/musepack/MusePackReader.cpp create mode 100644 src/add-ons/media/plugins/musepack/MusePackReader.h diff --git a/src/add-ons/media/plugins/musepack/Jamfile b/src/add-ons/media/plugins/musepack/Jamfile new file mode 100644 index 0000000000..5564b2904b --- /dev/null +++ b/src/add-ons/media/plugins/musepack/Jamfile @@ -0,0 +1,15 @@ +SubDir OBOS_TOP src add-ons media plugins musepack ; + +UsePrivateHeaders media ; + +Addon musepack : media plugins : + MusePack.cpp + MusePackReader.cpp + MusePackDecoder.cpp + : false + : libmusepack.a + ; + +LinkSharedOSLibs musepack : be libmedia.so ; + +SubInclude OBOS_TOP src add-ons media plugins musepack mpc ; diff --git a/src/add-ons/media/plugins/musepack/MusePack.cpp b/src/add-ons/media/plugins/musepack/MusePack.cpp new file mode 100644 index 0000000000..dcfc25550c --- /dev/null +++ b/src/add-ons/media/plugins/musepack/MusePack.cpp @@ -0,0 +1,42 @@ +/* +** Copyright 2004, Axel Dörfler, axeld@pinc-software.de. All rights reserved. +** Distributed under the terms of the OpenBeOS License. +*/ + + +#include "MusePack.h" +#include "MusePackReader.h" +#include "MusePackDecoder.h" + +#include +#include + + +Reader * +MusePackPlugin::NewReader() +{ + return new MusePackReader(); +} + +Decoder * +MusePackPlugin::NewDecoder() +{ + return new MusePackDecoder(); +} + +status_t +MusePackPlugin::RegisterPlugin() +{ + PublishDecoder("audiocodec/musepack", "musepack", "musepack decoder"); +} + + +// #pragma mark - + + +MediaPlugin * +instantiate_plugin() +{ + return new MusePackPlugin(); +} + diff --git a/src/add-ons/media/plugins/musepack/MusePack.h b/src/add-ons/media/plugins/musepack/MusePack.h new file mode 100644 index 0000000000..68977030b0 --- /dev/null +++ b/src/add-ons/media/plugins/musepack/MusePack.h @@ -0,0 +1,21 @@ +/* +** Copyright 2004, Axel Dörfler, axeld@pinc-software.de. All rights reserved. +** Distributed under the terms of the OpenBeOS License. +*/ +#ifndef MUSEPACK_PLUGIN_H +#define MUSEPACK_PLUGIN_H + + +#include "ReaderPlugin.h" +#include "DecoderPlugin.h" + + +class MusePackPlugin : public ReaderPlugin, DecoderPlugin { + public: + Reader *NewReader(); + + Decoder *NewDecoder(); + status_t RegisterPlugin(); +}; + +#endif /* MUSEPACK_PLUGIN_H */ diff --git a/src/add-ons/media/plugins/musepack/MusePackDecoder.cpp b/src/add-ons/media/plugins/musepack/MusePackDecoder.cpp new file mode 100644 index 0000000000..782843c811 --- /dev/null +++ b/src/add-ons/media/plugins/musepack/MusePackDecoder.cpp @@ -0,0 +1,45 @@ +/* +** Copyright 2004, Axel Dörfler, axeld@pinc-software.de. All rights reserved. +** Distributed under the terms of the OpenBeOS License. +*/ + + +#include "MusePackDecoder.h" + +#include +#include + + +MusePackDecoder::MusePackDecoder() +{ +} + + +MusePackDecoder::~MusePackDecoder() +{ +} + + +status_t +MusePackDecoder::Setup(media_format *ioEncodedFormat, const void *infoBuffer, int32 infoSize) +{ +} + + +status_t +MusePackDecoder::NegotiateOutputFormat(media_format *ioDecodedFormat) +{ +} + + +status_t +MusePackDecoder::Seek(uint32 seekTo, int64 seekFrame, int64 *frame, bigtime_t seekTime, bigtime_t *time) +{ +} + + +status_t +MusePackDecoder::Decode(void *buffer, int64 *frameCount, media_header *mediaHeader, media_decode_info *info) +{ +} + diff --git a/src/add-ons/media/plugins/musepack/MusePackDecoder.h b/src/add-ons/media/plugins/musepack/MusePackDecoder.h new file mode 100644 index 0000000000..ff1a514fb8 --- /dev/null +++ b/src/add-ons/media/plugins/musepack/MusePackDecoder.h @@ -0,0 +1,32 @@ +/* +** Copyright 2004, Axel Dörfler, axeld@pinc-software.de. All rights reserved. +** Distributed under the terms of the OpenBeOS License. +*/ +#ifndef MUSEPACK_DECODER_H +#define MUSEPACK_DECODER_H + + +#include "DecoderPlugin.h" +#include + + +class MusePackDecoder : public Decoder { + public: + MusePackDecoder(); + ~MusePackDecoder(); + + status_t Setup(media_format *ioEncodedFormat, + const void *infoBuffer, int32 infoSize); + + status_t NegotiateOutputFormat(media_format *ioDecodedFormat); + + status_t Seek(uint32 seekTo, int64 seekFrame, int64 *frame, + bigtime_t seekTime, bigtime_t *time); + + status_t Decode(void *buffer, int64 *frameCount, + media_header *mediaHeader, media_decode_info *info); + + private: +}; + +#endif /* MUSEPACK_DECODER_H */ diff --git a/src/add-ons/media/plugins/musepack/MusePackReader.cpp b/src/add-ons/media/plugins/musepack/MusePackReader.cpp new file mode 100644 index 0000000000..66e1713ff9 --- /dev/null +++ b/src/add-ons/media/plugins/musepack/MusePackReader.cpp @@ -0,0 +1,69 @@ +/* +** Copyright 2004, Axel Dörfler, axeld@pinc-software.de. All rights reserved. +** Distributed under the terms of the OpenBeOS License. +*/ + + +#include "MusePackReader.h" + +#include +#include + + +MusePackReader::MusePackReader() +{ +} + + +MusePackReader::~MusePackReader() +{ +} + + +const char * +MusePackReader::Copyright() +{ +} + + +status_t +MusePackReader::Sniff(int32 *streamCount) +{ +} + + +void +MusePackReader::GetFileFormatInfo(media_file_format *mff) +{ +} + + +status_t +MusePackReader::AllocateCookie(int32 streamNumber, void **cookie) +{ +} + + +status_t +MusePackReader::FreeCookie(void *cookie) +{ +} + + +status_t +MusePackReader::GetStreamInfo(void *cookie, int64 *frameCount, bigtime_t *duration, media_format *format, void **infoBuffer, int32 *infoSize) +{ +} + + +status_t +MusePackReader::Seek(void *cookie, uint32 seekTo, int64 *frame, bigtime_t *time) +{ +} + + +status_t +MusePackReader::GetNextChunk(void *cookie, void **chunkBuffer, int32 *chunkSize, media_header *mediaHeader) +{ +} + diff --git a/src/add-ons/media/plugins/musepack/MusePackReader.h b/src/add-ons/media/plugins/musepack/MusePackReader.h new file mode 100644 index 0000000000..04cb0be5f2 --- /dev/null +++ b/src/add-ons/media/plugins/musepack/MusePackReader.h @@ -0,0 +1,39 @@ +/* +** Copyright 2004, Axel Dörfler, axeld@pinc-software.de. All rights reserved. +** Distributed under the terms of the OpenBeOS License. +*/ +#ifndef MUSEPACK_READER_H +#define MUSEPACK_READER_H + + +#include "ReaderPlugin.h" +#include + + +class MusePackReader : public Reader { + public: + MusePackReader(); + ~MusePackReader(); + + const char *Copyright(); + + status_t Sniff(int32 *streamCount); + + void GetFileFormatInfo(media_file_format *mff); + + status_t AllocateCookie(int32 streamNumber, void **cookie); + status_t FreeCookie(void *cookie); + + status_t GetStreamInfo(void *cookie, int64 *frameCount, bigtime_t *duration, + media_format *format, void **infoBuffer, int32 *infoSize); + + status_t Seek(void *cookie, uint32 seekTo, + int64 *frame, bigtime_t *time); + + status_t GetNextChunk(void *cookie, void **chunkBuffer, int32 *chunkSize, + media_header *mediaHeader); + + private: +}; + +#endif /* MUSEPACK_READER_H */