3rdparty/licenseReport: Add seperate LGPL checks
[haiku.git] / src / add-ons / media / plugins / musepack / MusePackReader.h
blob79fb8544cca7e270d10217f9c389e22bcbac40cb
1 /*
2 ** Copyright 2004, Axel Dörfler, axeld@pinc-software.de. All rights reserved.
3 ** Distributed under the terms of the MIT License.
4 */
5 #ifndef MUSEPACK_READER_H
6 #define MUSEPACK_READER_H
9 #include "ReaderPlugin.h"
10 #include <MediaFormats.h>
12 #include "mpc/in_mpc.h"
13 #include "mpc/mpc_dec.h"
16 class MusePackReader : public Reader {
17 public:
18 MusePackReader();
19 ~MusePackReader();
21 const char *Copyright();
23 status_t Sniff(int32 *streamCount);
25 void GetFileFormatInfo(media_file_format *mff);
27 status_t AllocateCookie(int32 streamNumber, void **cookie);
28 status_t FreeCookie(void *cookie);
30 status_t GetStreamInfo(void *cookie, int64 *frameCount, bigtime_t *duration,
31 media_format *format, const void **infoBuffer, size_t *infoSize);
33 status_t Seek(void *cookie, uint32 seekTo,
34 int64 *frame, bigtime_t *time);
36 status_t GetNextChunk(void *cookie, const void **chunkBuffer, size_t *chunkSize,
37 media_header *mediaHeader);
39 private:
40 StreamInfo fInfo;
41 media_format fFormat;
42 MPC_decoder *fDecoder;
45 #endif /* MUSEPACK_READER_H */