diff --git a/headers/private/media/DecoderPlugin.h b/headers/private/media/DecoderPlugin.h index e9f46c55e3..6aed9b1079 100644 --- a/headers/private/media/DecoderPlugin.h +++ b/headers/private/media/DecoderPlugin.h @@ -11,7 +11,7 @@ namespace BPrivate { namespace media { class ChunkProvider { public: - virtual status_t GetNextChunk(void **chunkBuffer, int32 *chunkSize, + virtual status_t GetNextChunk(const void **chunkBuffer, size_t *chunkSize, media_header *mediaHeader) = 0; }; @@ -24,7 +24,7 @@ public: virtual void GetCodecInfo(media_codec_info *codecInfo) = 0; // Setup get's called with the info data from Reader::GetStreamInfo - virtual status_t Setup(media_format *ioEncodedFormat, const void *infoBuffer, int32 infoSize) = 0; + virtual status_t Setup(media_format *ioEncodedFormat, const void *infoBuffer, size_t infoSize) = 0; virtual status_t NegotiateOutputFormat(media_format *ioDecodedFormat) = 0; @@ -35,7 +35,7 @@ public: virtual status_t Decode(void *buffer, int64 *frameCount, media_header *mediaHeader, media_decode_info *info = 0) = 0; - status_t GetNextChunk(void **chunkBuffer, int32 *chunkSize, + status_t GetNextChunk(const void **chunkBuffer, size_t *chunkSize, media_header *mediaHeader); void Setup(ChunkProvider *provider); diff --git a/headers/private/media/MediaExtractor.h b/headers/private/media/MediaExtractor.h index 7070f6c0c9..c4959cccb9 100644 --- a/headers/private/media/MediaExtractor.h +++ b/headers/private/media/MediaExtractor.h @@ -14,8 +14,8 @@ struct stream_info status_t status; void * cookie; bool hasCookie; - void * infoBuffer; - int32 infoBufferSize; + const void * infoBuffer; + size_t infoBufferSize; ChunkCache * chunkCache; media_format encodedFormat; }; @@ -40,7 +40,7 @@ public: int64 *frame, bigtime_t *time); status_t GetNextChunk(int32 stream, - void **chunkBuffer, int32 *chunkSize, + const void **chunkBuffer, size_t *chunkSize, media_header *mediaHeader); status_t CreateDecoder(int32 stream, Decoder **decoder, media_codec_info *mci); diff --git a/headers/private/media/ReaderPlugin.h b/headers/private/media/ReaderPlugin.h index bd81a4f912..e383a63307 100644 --- a/headers/private/media/ReaderPlugin.h +++ b/headers/private/media/ReaderPlugin.h @@ -27,14 +27,14 @@ public: virtual status_t FreeCookie(void *cookie) = 0; virtual status_t GetStreamInfo(void *cookie, int64 *frameCount, bigtime_t *duration, - media_format *format, void **infoBuffer, int32 *infoSize) = 0; + media_format *format, const void **infoBuffer, size_t *infoSize) = 0; virtual status_t Seek(void *cookie, uint32 seekTo, int64 *frame, bigtime_t *time) = 0; virtual status_t GetNextChunk(void *cookie, - void **chunkBuffer, int32 *chunkSize, + const void **chunkBuffer, size_t *chunkSize, media_header *mediaHeader) = 0; BDataIO * Source(); diff --git a/src/add-ons/media/plugins/ac3_decoder/ac3_decoder.cpp b/src/add-ons/media/plugins/ac3_decoder/ac3_decoder.cpp index 5232f1fc42..498592f060 100644 --- a/src/add-ons/media/plugins/ac3_decoder/ac3_decoder.cpp +++ b/src/add-ons/media/plugins/ac3_decoder/ac3_decoder.cpp @@ -62,7 +62,7 @@ AC3Decoder::GetCodecInfo(media_codec_info *info) status_t AC3Decoder::Setup(media_format *ioEncodedFormat, - const void *infoBuffer, int32 infoSize) + const void *infoBuffer, size_t infoSize) { return B_OK; } diff --git a/src/add-ons/media/plugins/ac3_decoder/ac3_decoder.h b/src/add-ons/media/plugins/ac3_decoder/ac3_decoder.h index 37fc9f84c5..55b45c9b14 100644 --- a/src/add-ons/media/plugins/ac3_decoder/ac3_decoder.h +++ b/src/add-ons/media/plugins/ac3_decoder/ac3_decoder.h @@ -34,7 +34,7 @@ public: void GetCodecInfo(media_codec_info *info); status_t Setup(media_format *ioEncodedFormat, - const void *infoBuffer, int32 infoSize); + const void *infoBuffer, size_t infoSize); status_t NegotiateOutputFormat(media_format *ioDecodedFormat); @@ -57,8 +57,8 @@ private: void * fInputBuffer; int fInputBufferSize; - void * fInputChunk; - int32 fInputChunkSize; + const void *fInputChunk; + size_t fInputChunkSize; int fInputChunkOffset; bigtime_t fStartTime; diff --git a/src/add-ons/media/plugins/aiff_reader/aiff_reader.cpp b/src/add-ons/media/plugins/aiff_reader/aiff_reader.cpp index 830d5ff528..310afcd0a7 100644 --- a/src/add-ons/media/plugins/aiff_reader/aiff_reader.cpp +++ b/src/add-ons/media/plugins/aiff_reader/aiff_reader.cpp @@ -319,7 +319,7 @@ aiffReader::FreeCookie(void *cookie) status_t aiffReader::GetStreamInfo(void *cookie, int64 *frameCount, bigtime_t *duration, - media_format *format, void **infoBuffer, int32 *infoSize) + media_format *format, const void **infoBuffer, size_t *infoSize) { *frameCount = fFrameCount; *duration = fDuration; @@ -376,7 +376,7 @@ aiffReader::Seek(void *cookie, status_t aiffReader::GetNextChunk(void *cookie, - void **chunkBuffer, int32 *chunkSize, + const void **chunkBuffer, size_t *chunkSize, media_header *mediaHeader) { // XXX it might be much better to not return any start_time information for encoded formats here, diff --git a/src/add-ons/media/plugins/aiff_reader/aiff_reader.h b/src/add-ons/media/plugins/aiff_reader/aiff_reader.h index ffd25d29bc..6f1aeae565 100644 --- a/src/add-ons/media/plugins/aiff_reader/aiff_reader.h +++ b/src/add-ons/media/plugins/aiff_reader/aiff_reader.h @@ -44,14 +44,14 @@ public: status_t FreeCookie(void *cookie); status_t GetStreamInfo(void *cookie, int64 *frameCount, bigtime_t *duration, - media_format *format, void **infoBuffer, int32 *infoSize); + media_format *format, const void **infoBuffer, size_t *infoSize); status_t Seek(void *cookie, uint32 seekTo, int64 *frame, bigtime_t *time); status_t GetNextChunk(void *cookie, - void **chunkBuffer, int32 *chunkSize, + const void **chunkBuffer, size_t *chunkSize, media_header *mediaHeader); private: uint32 DecodeFrameRate(void *_80bit_float); diff --git a/src/add-ons/media/plugins/au_reader/au_reader.cpp b/src/add-ons/media/plugins/au_reader/au_reader.cpp index 6101eadee1..92e5aa780a 100644 --- a/src/add-ons/media/plugins/au_reader/au_reader.cpp +++ b/src/add-ons/media/plugins/au_reader/au_reader.cpp @@ -292,7 +292,7 @@ auReader::FreeCookie(void *cookie) status_t auReader::GetStreamInfo(void *cookie, int64 *frameCount, bigtime_t *duration, - media_format *format, void **infoBuffer, int32 *infoSize) + media_format *format, const void **infoBuffer, size_t *infoSize) { *frameCount = fFrameCount; *duration = fDuration; @@ -349,7 +349,7 @@ auReader::Seek(void *cookie, status_t auReader::GetNextChunk(void *cookie, - void **chunkBuffer, int32 *chunkSize, + const void **chunkBuffer, size_t *chunkSize, media_header *mediaHeader) { // XXX it might be much better to not return any start_time information for encoded formats here, diff --git a/src/add-ons/media/plugins/au_reader/au_reader.h b/src/add-ons/media/plugins/au_reader/au_reader.h index 04c647da76..d7a68a3a82 100644 --- a/src/add-ons/media/plugins/au_reader/au_reader.h +++ b/src/add-ons/media/plugins/au_reader/au_reader.h @@ -44,14 +44,14 @@ public: status_t FreeCookie(void *cookie); status_t GetStreamInfo(void *cookie, int64 *frameCount, bigtime_t *duration, - media_format *format, void **infoBuffer, int32 *infoSize); + media_format *format, const void **infoBuffer, size_t *infoSize); status_t Seek(void *cookie, uint32 seekTo, int64 *frame, bigtime_t *time); status_t GetNextChunk(void *cookie, - void **chunkBuffer, int32 *chunkSize, + const void **chunkBuffer, size_t *chunkSize, media_header *mediaHeader); BPositionIO *Source() { return fSource; } diff --git a/src/add-ons/media/plugins/avcodec/avcodec.cpp b/src/add-ons/media/plugins/avcodec/avcodec.cpp index ae33b1aad8..c2f56087c0 100644 --- a/src/add-ons/media/plugins/avcodec/avcodec.cpp +++ b/src/add-ons/media/plugins/avcodec/avcodec.cpp @@ -97,23 +97,23 @@ avCodec::GetCodecInfo(media_codec_info *mci) status_t -avCodec::Setup(media_format *input_format, const void *in_info, int32 in_size) +avCodec::Setup(media_format *ioEncodedFormat, const void *infoBuffer, size_t infoSize) { - if (input_format->type != B_MEDIA_ENCODED_AUDIO && input_format->type != B_MEDIA_ENCODED_VIDEO) + if (ioEncodedFormat->type != B_MEDIA_ENCODED_AUDIO && ioEncodedFormat->type != B_MEDIA_ENCODED_VIDEO) return B_ERROR; - isAudio = (input_format->type == B_MEDIA_ENCODED_AUDIO); + isAudio = (ioEncodedFormat->type == B_MEDIA_ENCODED_AUDIO); if (isAudio && !fOutputBuffer) fOutputBuffer = new char[100000]; #if DEBUG char buffer[1024]; - string_for_format(*input_format, buffer, sizeof(buffer)); + string_for_format(*ioEncodedFormat, buffer, sizeof(buffer)); PRINT(("[%c] input_format=%s\n", isAudio?('a'):('v'), buffer)); PRINT(("[%c] in_info_size=%ld\n", isAudio?('a'):('v'), in_size)); - PRINT(("[%c] user_data_type=%08lx\n", isAudio?('a'):('v'), input_format->user_data_type)); -// PRINT(("[%c] meta_data_size=%ld\n", isAudio?('a'):('v'), input_format->meta_data_size)); + PRINT(("[%c] user_data_type=%08lx\n", isAudio?('a'):('v'), ioEncodedFormat->user_data_type)); +// PRINT(("[%c] meta_data_size=%ld\n", isAudio?('a'):('v'), ioEncodedFormat->meta_data_size)); #endif media_format_description descr; @@ -121,8 +121,8 @@ avCodec::Setup(media_format *input_format, const void *in_info, int32 in_size) ffcodec_index_in_table = i; uint64 cid; - if(BMediaFormats().GetCodeFor(*input_format,gCodecTable[i].family,&descr) == B_OK - && gCodecTable[i].type == input_format->type) + if (BMediaFormats().GetCodeFor(*ioEncodedFormat, gCodecTable[i].family, &descr) == B_OK + && gCodecTable[i].type == ioEncodedFormat->type) { PRINT((" codec id = \"%c%c%c%c\"\n", (descr.u.avi.codec >> 24) & 0xff, (descr.u.avi.codec >> 16) & 0xff, @@ -159,8 +159,8 @@ avCodec::Setup(media_format *input_format, const void *in_info, int32 in_size) } if (gCodecTable[i].family == B_WAV_FORMAT_FAMILY) { - const wave_format_ex *wfmt_data = (const wave_format_ex *)input_format->MetaData(); - int wfmt_size = input_format->MetaDataSize(); + const wave_format_ex *wfmt_data = (const wave_format_ex *)ioEncodedFormat->MetaData(); + int wfmt_size = ioEncodedFormat->MetaDataSize(); if (wfmt_data && wfmt_size) { fBlockAlign = wfmt_data->block_align; fExtraDataSize = wfmt_data->extra_size; @@ -171,7 +171,7 @@ avCodec::Setup(media_format *input_format, const void *in_info, int32 in_size) } } - fInputFormat = *input_format; + fInputFormat = *ioEncodedFormat; return B_OK; } } @@ -377,7 +377,7 @@ avCodec::Decode(void *out_buffer, int64 *out_frameCount, if (fChunkBufferSize == 0) { media_header chunk_mh; status_t err; - err = GetNextChunk((void **)&fChunkBuffer, &fChunkBufferSize, &chunk_mh); + err = GetNextChunk(&fChunkBuffer, &fChunkBufferSize, &chunk_mh); if (err != B_OK || fChunkBufferSize < 0) { printf("GetNextChunk error\n"); fChunkBufferSize = 0; @@ -391,7 +391,7 @@ avCodec::Decode(void *out_buffer, int64 *out_frameCount, } if (fOutputBufferSize == 0) { int len, out_size; - len = avcodec_decode_audio(ffc, (short *)fOutputBuffer, &out_size, (uint8_t *)fChunkBuffer + fChunkBufferOffset, fChunkBufferSize); + len = avcodec_decode_audio(ffc, (short *)fOutputBuffer, &out_size, const_cast(static_cast(fChunkBuffer)) + fChunkBufferOffset, fChunkBufferSize); if (len < 0) { printf("########### audio decode error, fChunkBufferSize %ld, fChunkBufferOffset %ld\n", fChunkBufferSize, fChunkBufferOffset); out_size = 0; @@ -411,8 +411,8 @@ avCodec::Decode(void *out_buffer, int64 *out_frameCount, media_header chunk_mh; status_t err; - void *data; - int32 size; + const void *data; + size_t size; err = GetNextChunk(&data, &size, &chunk_mh); if (err != B_OK) { diff --git a/src/add-ons/media/plugins/avcodec/avcodec.h b/src/add-ons/media/plugins/avcodec/avcodec.h index e3b7cd7d41..cb6bf0d976 100644 --- a/src/add-ons/media/plugins/avcodec/avcodec.h +++ b/src/add-ons/media/plugins/avcodec/avcodec.h @@ -37,8 +37,8 @@ class avCodec : public Decoder virtual void GetCodecInfo(media_codec_info *mci); - virtual status_t Setup(media_format *input_format, - const void *in_info, int32 in_size); + virtual status_t Setup(media_format *ioEncodedFormat, + const void *infoBuffer, size_t infoSize); virtual status_t NegotiateOutputFormat(media_format *output_format); @@ -83,9 +83,9 @@ class avCodec : public Decoder float fOutputFrameRate; int fOutputFrameSize; // sample size * channel count - char * fChunkBuffer; + const void *fChunkBuffer; int32 fChunkBufferOffset; - int32 fChunkBufferSize; + size_t fChunkBufferSize; char * fOutputBuffer; int32 fOutputBufferOffset; diff --git a/src/add-ons/media/plugins/avi_reader/avi_reader.cpp b/src/add-ons/media/plugins/avi_reader/avi_reader.cpp index c0b772d6b7..fbd1fb45d9 100644 --- a/src/add-ons/media/plugins/avi_reader/avi_reader.cpp +++ b/src/add-ons/media/plugins/avi_reader/avi_reader.cpp @@ -346,7 +346,7 @@ aviReader::FreeCookie(void *_cookie) status_t aviReader::GetStreamInfo(void *_cookie, int64 *frameCount, bigtime_t *duration, - media_format *format, void **infoBuffer, int32 *infoSize) + media_format *format, const void **infoBuffer, size_t *infoSize) { avi_cookie *cookie = (avi_cookie *)_cookie; @@ -377,7 +377,7 @@ aviReader::Seek(void *cookie, status_t aviReader::GetNextChunk(void *_cookie, - void **chunkBuffer, int32 *chunkSize, + const void **chunkBuffer, size_t *chunkSize, media_header *mediaHeader) { avi_cookie *cookie = (avi_cookie *)_cookie; diff --git a/src/add-ons/media/plugins/avi_reader/avi_reader.h b/src/add-ons/media/plugins/avi_reader/avi_reader.h index 4e7db457f0..db817cb521 100644 --- a/src/add-ons/media/plugins/avi_reader/avi_reader.h +++ b/src/add-ons/media/plugins/avi_reader/avi_reader.h @@ -44,14 +44,14 @@ public: status_t FreeCookie(void *cookie); status_t GetStreamInfo(void *cookie, int64 *frameCount, bigtime_t *duration, - media_format *format, void **infoBuffer, int32 *infoSize); + media_format *format, const void **infoBuffer, size_t *infoSize); status_t Seek(void *cookie, uint32 seekTo, int64 *frame, bigtime_t *time); status_t GetNextChunk(void *cookie, - void **chunkBuffer, int32 *chunkSize, + const void **chunkBuffer, size_t *chunkSize, media_header *mediaHeader); private: OpenDMLFile *fFile; diff --git a/src/add-ons/media/plugins/matroska/libMatroskaParser/MatroskaParser.c b/src/add-ons/media/plugins/matroska/libMatroskaParser/MatroskaParser.c index e5c61402e9..0406d9e20a 100644 --- a/src/add-ons/media/plugins/matroska/libMatroskaParser/MatroskaParser.c +++ b/src/add-ons/media/plugins/matroska/libMatroskaParser/MatroskaParser.c @@ -1904,7 +1904,7 @@ static int readMoreBlocks(MatroskaFile *mf) { if (++retries > 3) // don't try too hard goto ex; - for (;;cp) { + for (;;cp) { // <-- XXX TODO FIX THIS! if (filepos(mf) >= mf->pSegmentTop) { mf->readPosition = filepos(mf); goto ex; diff --git a/src/add-ons/media/plugins/matroska/matroska_reader.cpp b/src/add-ons/media/plugins/matroska/matroska_reader.cpp index 7c75c517a7..8339482649 100644 --- a/src/add-ons/media/plugins/matroska/matroska_reader.cpp +++ b/src/add-ons/media/plugins/matroska/matroska_reader.cpp @@ -332,7 +332,7 @@ mkvReader::FreeCookie(void *_cookie) status_t mkvReader::GetStreamInfo(void *_cookie, int64 *frameCount, bigtime_t *duration, - media_format *format, void **infoBuffer, int32 *infoSize) + media_format *format, const void **infoBuffer, size_t *infoSize) { mkv_cookie *cookie = (mkv_cookie *)_cookie; *frameCount = cookie->frame_count; @@ -385,7 +385,7 @@ mkvReader::Seek(void *_cookie, status_t mkvReader::GetNextChunk(void *_cookie, - void **chunkBuffer, int32 *chunkSize, + const void **chunkBuffer, size_t *chunkSize, media_header *mediaHeader) { mkv_cookie *cookie = (mkv_cookie *)_cookie; diff --git a/src/add-ons/media/plugins/matroska/matroska_reader.h b/src/add-ons/media/plugins/matroska/matroska_reader.h index 4e8d5c092a..2409498e52 100644 --- a/src/add-ons/media/plugins/matroska/matroska_reader.h +++ b/src/add-ons/media/plugins/matroska/matroska_reader.h @@ -46,14 +46,14 @@ public: status_t FreeCookie(void *cookie); status_t GetStreamInfo(void *cookie, int64 *frameCount, bigtime_t *duration, - media_format *format, void **infoBuffer, int32 *infoSize); + media_format *format, const void **infoBuffer, size_t *infoSize); status_t Seek(void *cookie, uint32 seekTo, int64 *frame, bigtime_t *time); status_t GetNextChunk(void *cookie, - void **chunkBuffer, int32 *chunkSize, + const void **chunkBuffer, size_t *chunkSize, media_header *mediaHeader); private: status_t SetupVideoCookie(mkv_cookie *cookie); diff --git a/src/add-ons/media/plugins/mov_reader/mov_reader.cpp b/src/add-ons/media/plugins/mov_reader/mov_reader.cpp index 8416f18313..3c3e63e932 100644 --- a/src/add-ons/media/plugins/mov_reader/mov_reader.cpp +++ b/src/add-ons/media/plugins/mov_reader/mov_reader.cpp @@ -416,7 +416,7 @@ movReader::FreeCookie(void *_cookie) status_t movReader::GetStreamInfo(void *_cookie, int64 *frameCount, bigtime_t *duration, - media_format *format, void **infoBuffer, int32 *infoSize) + media_format *format, const void **infoBuffer, size_t *infoSize) { mov_cookie *cookie = (mov_cookie *)_cookie; @@ -469,7 +469,7 @@ movReader::Seek(void *cookie, status_t movReader::GetNextChunk(void *_cookie, - void **chunkBuffer, int32 *chunkSize, + const void **chunkBuffer, size_t *chunkSize, media_header *mediaHeader) { mov_cookie *cookie = (mov_cookie *)_cookie; diff --git a/src/add-ons/media/plugins/mov_reader/mov_reader.h b/src/add-ons/media/plugins/mov_reader/mov_reader.h index 32574647d1..98ca5411e6 100644 --- a/src/add-ons/media/plugins/mov_reader/mov_reader.h +++ b/src/add-ons/media/plugins/mov_reader/mov_reader.h @@ -44,14 +44,14 @@ public: status_t FreeCookie(void *cookie); status_t GetStreamInfo(void *cookie, int64 *frameCount, bigtime_t *duration, - media_format *format, void **infoBuffer, int32 *infoSize); + media_format *format, const void **infoBuffer, size_t *infoSize); status_t Seek(void *cookie, uint32 seekTo, int64 *frame, bigtime_t *time); status_t GetNextChunk(void *cookie, - void **chunkBuffer, int32 *chunkSize, + const void **chunkBuffer, size_t *chunkSize, media_header *mediaHeader); private: MOVFileReader *theFileReader; diff --git a/src/add-ons/media/plugins/mp3_decoder/mp3DecoderPlugin.cpp b/src/add-ons/media/plugins/mp3_decoder/mp3DecoderPlugin.cpp index 52594bfe7d..bb640fd4b8 100644 --- a/src/add-ons/media/plugins/mp3_decoder/mp3DecoderPlugin.cpp +++ b/src/add-ons/media/plugins/mp3_decoder/mp3DecoderPlugin.cpp @@ -122,7 +122,7 @@ mp3Decoder::GetCodecInfo(media_codec_info *info) status_t mp3Decoder::Setup(media_format *ioEncodedFormat, - const void *infoBuffer, int32 infoSize) + const void *infoBuffer, size_t infoSize) { // decode first chunk to initialize mpeg library if (B_OK != DecodeNextChunk()) { @@ -237,8 +237,8 @@ mp3Decoder::Decode(void *buffer, int64 *frameCount, status_t mp3Decoder::DecodeNextChunk() { - void *chunkBuffer; - int32 chunkSize; + const void *chunkBuffer; + size_t chunkSize; media_header mh; int outsize; int result; diff --git a/src/add-ons/media/plugins/mp3_decoder/mp3DecoderPlugin.h b/src/add-ons/media/plugins/mp3_decoder/mp3DecoderPlugin.h index 59bdd74d52..5f7200d139 100644 --- a/src/add-ons/media/plugins/mp3_decoder/mp3DecoderPlugin.h +++ b/src/add-ons/media/plugins/mp3_decoder/mp3DecoderPlugin.h @@ -37,7 +37,7 @@ public: void GetCodecInfo(media_codec_info *codecInfo); status_t Setup(media_format *ioEncodedFormat, - const void *infoBuffer, int32 infoSize); + const void *infoBuffer, size_t infoSize); status_t NegotiateOutputFormat(media_format *ioDecodedFormat); diff --git a/src/add-ons/media/plugins/mp3_reader/MP3ReaderPlugin.cpp b/src/add-ons/media/plugins/mp3_reader/MP3ReaderPlugin.cpp index 63267b8f26..8382a14048 100644 --- a/src/add-ons/media/plugins/mp3_reader/MP3ReaderPlugin.cpp +++ b/src/add-ons/media/plugins/mp3_reader/MP3ReaderPlugin.cpp @@ -301,7 +301,7 @@ mp3Reader::FreeCookie(void *cookie) status_t mp3Reader::GetStreamInfo(void *cookie, int64 *frameCount, bigtime_t *duration, - media_format *format, void **infoBuffer, int32 *infoSize) + media_format *format, const void **infoBuffer, size_t *infoSize) { mp3data *data = reinterpret_cast(cookie); @@ -382,7 +382,7 @@ mp3Reader::Seek(void *cookie, status_t mp3Reader::GetNextChunk(void *cookie, - void **chunkBuffer, int32 *chunkSize, + const void **chunkBuffer, size_t *chunkSize, media_header *mediaHeader) { mp3data *data = reinterpret_cast(cookie); diff --git a/src/add-ons/media/plugins/mp3_reader/MP3ReaderPlugin.h b/src/add-ons/media/plugins/mp3_reader/MP3ReaderPlugin.h index 4658e40582..e4e5c072cc 100644 --- a/src/add-ons/media/plugins/mp3_reader/MP3ReaderPlugin.h +++ b/src/add-ons/media/plugins/mp3_reader/MP3ReaderPlugin.h @@ -47,14 +47,14 @@ public: status_t FreeCookie(void *cookie); status_t GetStreamInfo(void *cookie, int64 *frameCount, bigtime_t *duration, - media_format *format, void **infoBuffer, int32 *infoSize); + media_format *format, const void **infoBuffer, size_t *infoSize); status_t Seek(void *cookie, uint32 seekTo, int64 *frame, bigtime_t *time); status_t GetNextChunk(void *cookie, - void **chunkBuffer, int32 *chunkSize, + const void **chunkBuffer, size_t *chunkSize, media_header *mediaHeader); BPositionIO *Source() { return fSeekableSource; } diff --git a/src/add-ons/media/plugins/musepack/MusePackDecoder.cpp b/src/add-ons/media/plugins/musepack/MusePackDecoder.cpp index 886a730061..483e318a73 100644 --- a/src/add-ons/media/plugins/musepack/MusePackDecoder.cpp +++ b/src/add-ons/media/plugins/musepack/MusePackDecoder.cpp @@ -30,7 +30,7 @@ MusePackDecoder::GetCodecInfo(media_codec_info *info) status_t -MusePackDecoder::Setup(media_format *ioEncodedFormat, const void *infoBuffer, int32 infoSize) +MusePackDecoder::Setup(media_format *ioEncodedFormat, const void *infoBuffer, size_t infoSize) { if (infoBuffer == NULL || infoSize != sizeof(MPC_decoder)) return B_BAD_VALUE; diff --git a/src/add-ons/media/plugins/musepack/MusePackDecoder.h b/src/add-ons/media/plugins/musepack/MusePackDecoder.h index b6a5cbd337..06e9029dc4 100644 --- a/src/add-ons/media/plugins/musepack/MusePackDecoder.h +++ b/src/add-ons/media/plugins/musepack/MusePackDecoder.h @@ -20,7 +20,7 @@ class MusePackDecoder : public Decoder { void GetCodecInfo(media_codec_info *info); status_t Setup(media_format *ioEncodedFormat, - const void *infoBuffer, int32 infoSize); + const void *infoBuffer, size_t infoSize); status_t NegotiateOutputFormat(media_format *ioDecodedFormat); diff --git a/src/add-ons/media/plugins/musepack/MusePackReader.cpp b/src/add-ons/media/plugins/musepack/MusePackReader.cpp index 473e01f666..232e6ef538 100644 --- a/src/add-ons/media/plugins/musepack/MusePackReader.cpp +++ b/src/add-ons/media/plugins/musepack/MusePackReader.cpp @@ -116,7 +116,7 @@ MusePackReader::FreeCookie(void *cookie) status_t MusePackReader::GetStreamInfo(void *cookie, int64 *_frameCount, bigtime_t *_duration, - media_format *format, void **_infoBuffer, int32 *_infoSize) + media_format *format, const void **_infoBuffer, size_t *_infoSize) { if (cookie != NULL) return B_BAD_VALUE; @@ -145,7 +145,7 @@ MusePackReader::Seek(void *cookie, uint32 seekTo, int64 *frame, bigtime_t *time) status_t -MusePackReader::GetNextChunk(void *cookie, void **chunkBuffer, int32 *chunkSize, +MusePackReader::GetNextChunk(void *cookie, const void **chunkBuffer, size_t *chunkSize, media_header *mediaHeader) { // this one will never be called by our decoder diff --git a/src/add-ons/media/plugins/musepack/MusePackReader.h b/src/add-ons/media/plugins/musepack/MusePackReader.h index 96fc5ec584..191517f912 100644 --- a/src/add-ons/media/plugins/musepack/MusePackReader.h +++ b/src/add-ons/media/plugins/musepack/MusePackReader.h @@ -28,12 +28,12 @@ class MusePackReader : public Reader { status_t FreeCookie(void *cookie); status_t GetStreamInfo(void *cookie, int64 *frameCount, bigtime_t *duration, - media_format *format, void **infoBuffer, int32 *infoSize); + media_format *format, const void **infoBuffer, size_t *infoSize); status_t Seek(void *cookie, uint32 seekTo, int64 *frame, bigtime_t *time); - status_t GetNextChunk(void *cookie, void **chunkBuffer, int32 *chunkSize, + status_t GetNextChunk(void *cookie, const void **chunkBuffer, size_t *chunkSize, media_header *mediaHeader); private: diff --git a/src/add-ons/media/plugins/ogg/OggReaderPlugin.cpp b/src/add-ons/media/plugins/ogg/OggReaderPlugin.cpp index a5f4581efe..3cf93c7f9e 100644 --- a/src/add-ons/media/plugins/ogg/OggReaderPlugin.cpp +++ b/src/add-ons/media/plugins/ogg/OggReaderPlugin.cpp @@ -290,7 +290,7 @@ OggReader::FreeCookie(void *cookie) status_t OggReader::GetStreamInfo(void *cookie, int64 *frameCount, bigtime_t *duration, - media_format *format, void **infoBuffer, int32 *infoSize) + media_format *format, const void **infoBuffer, size_t *infoSize) { TRACE("OggReader::GetStreamInfo\n"); *infoBuffer = 0; @@ -316,7 +316,7 @@ OggReader::Seek(void *cookie, status_t OggReader::GetNextChunk(void *cookie, - void **chunkBuffer, int32 *chunkSize, + const void **chunkBuffer, size_t *chunkSize, media_header *mediaHeader) { // TRACE("OggReader::GetNextChunk\n"); diff --git a/src/add-ons/media/plugins/ogg/OggReaderPlugin.h b/src/add-ons/media/plugins/ogg/OggReaderPlugin.h index de87f5c3ce..92ab9bafd6 100644 --- a/src/add-ons/media/plugins/ogg/OggReaderPlugin.h +++ b/src/add-ons/media/plugins/ogg/OggReaderPlugin.h @@ -30,9 +30,9 @@ public: // delegated to OggTrack status_t GetStreamInfo(void *cookie, int64 *frameCount, bigtime_t *duration, - media_format *format, void **infoBuffer, int32 *infoSize); + media_format *format, const void **infoBuffer, size_t *infoSize); status_t Seek(void *cookie, uint32 seekTo, int64 *frame, bigtime_t *time); - status_t GetNextChunk(void *cookie, void **chunkBuffer, int32 *chunkSize, + status_t GetNextChunk(void *cookie, const void **chunkBuffer, size_t *chunkSize, media_header *mediaHeader); private: diff --git a/src/add-ons/media/plugins/ogg/OggSeekable.cpp b/src/add-ons/media/plugins/ogg/OggSeekable.cpp index a13dbe8318..e624fdc31b 100644 --- a/src/add-ons/media/plugins/ogg/OggSeekable.cpp +++ b/src/add-ons/media/plugins/ogg/OggSeekable.cpp @@ -450,7 +450,7 @@ OggSeekable::Seek(uint32 seekTo, int64 *frame, bigtime_t *time) }*/ status_t -OggSeekable::GetNextChunk(void **chunkBuffer, int32 *chunkSize, +OggSeekable::GetNextChunk(const void **chunkBuffer, size_t *chunkSize, media_header *mediaHeader) { ogg_packet packet; diff --git a/src/add-ons/media/plugins/ogg/OggSeekable.h b/src/add-ons/media/plugins/ogg/OggSeekable.h index b3cc1cca7a..6df8de3945 100644 --- a/src/add-ons/media/plugins/ogg/OggSeekable.h +++ b/src/add-ons/media/plugins/ogg/OggSeekable.h @@ -16,7 +16,7 @@ public: virtual status_t GetStreamInfo(int64 *frameCount, bigtime_t *duration, media_format *format); virtual status_t Seek(uint32 seekTo, int64 *frame, bigtime_t *time); - virtual status_t GetNextChunk(void **chunkBuffer, int32 *chunkSize, + virtual status_t GetNextChunk(const void **chunkBuffer, size_t *chunkSize, media_header *mediaHeader); protected: diff --git a/src/add-ons/media/plugins/ogg/OggSpeexStream.cpp b/src/add-ons/media/plugins/ogg/OggSpeexStream.cpp index 1d7d97aa86..002b85224c 100644 --- a/src/add-ons/media/plugins/ogg/OggSpeexStream.cpp +++ b/src/add-ons/media/plugins/ogg/OggSpeexStream.cpp @@ -147,7 +147,7 @@ OggSpeexStream::GetStreamInfo(int64 *frameCount, bigtime_t *duration, status_t -OggSpeexStream::GetNextChunk(void **chunkBuffer, int32 *chunkSize, +OggSpeexStream::GetNextChunk(const void **chunkBuffer, size_t *chunkSize, media_header *mediaHeader) { status_t result = GetPacket(&fChunkPacket); diff --git a/src/add-ons/media/plugins/ogg/OggSpeexStream.h b/src/add-ons/media/plugins/ogg/OggSpeexStream.h index e50ccf399d..c74ab2a70d 100644 --- a/src/add-ons/media/plugins/ogg/OggSpeexStream.h +++ b/src/add-ons/media/plugins/ogg/OggSpeexStream.h @@ -14,7 +14,7 @@ public: virtual status_t GetStreamInfo(int64 *frameCount, bigtime_t *duration, media_format *format); - virtual status_t GetNextChunk(void **chunkBuffer, int32 *chunkSize, + virtual status_t GetNextChunk(const void **chunkBuffer, size_t *chunkSize, media_header *mediaHeader); }; diff --git a/src/add-ons/media/plugins/ogg/OggStream.cpp b/src/add-ons/media/plugins/ogg/OggStream.cpp index 1456051d6b..b2a0549638 100644 --- a/src/add-ons/media/plugins/ogg/OggStream.cpp +++ b/src/add-ons/media/plugins/ogg/OggStream.cpp @@ -132,7 +132,7 @@ OggStream::GetStreamInfo(int64 *frameCount, bigtime_t *duration, // the default chunk is an ogg packet status_t -OggStream::GetNextChunk(void **chunkBuffer, int32 *chunkSize, +OggStream::GetNextChunk(const void **chunkBuffer, size_t *chunkSize, media_header *mediaHeader) { status_t result = GetPacket(&fChunkPacket); diff --git a/src/add-ons/media/plugins/ogg/OggStream.h b/src/add-ons/media/plugins/ogg/OggStream.h index cf241bc420..69f8c7956a 100644 --- a/src/add-ons/media/plugins/ogg/OggStream.h +++ b/src/add-ons/media/plugins/ogg/OggStream.h @@ -15,7 +15,7 @@ public: // interface for OggReader virtual status_t GetStreamInfo(int64 *frameCount, bigtime_t *duration, media_format *format); - virtual status_t GetNextChunk(void **chunkBuffer, int32 *chunkSize, + virtual status_t GetNextChunk(const void **chunkBuffer, size_t *chunkSize, media_header *mediaHeader); protected: diff --git a/src/add-ons/media/plugins/ogg/OggTobiasSeekable.cpp b/src/add-ons/media/plugins/ogg/OggTobiasSeekable.cpp index e87cab7359..d3b3e34014 100644 --- a/src/add-ons/media/plugins/ogg/OggTobiasSeekable.cpp +++ b/src/add-ons/media/plugins/ogg/OggTobiasSeekable.cpp @@ -288,7 +288,7 @@ OggTobiasSeekable::GetStreamInfo(int64 *frameCount, bigtime_t *duration, status_t -OggTobiasSeekable::GetNextChunk(void **chunkBuffer, int32 *chunkSize, +OggTobiasSeekable::GetNextChunk(const void **chunkBuffer, size_t *chunkSize, media_header *mediaHeader) { status_t result = inherited::GetNextChunk(chunkBuffer, chunkSize, mediaHeader); diff --git a/src/add-ons/media/plugins/ogg/OggTobiasSeekable.h b/src/add-ons/media/plugins/ogg/OggTobiasSeekable.h index e7d2a83e7a..d7688d5e09 100644 --- a/src/add-ons/media/plugins/ogg/OggTobiasSeekable.h +++ b/src/add-ons/media/plugins/ogg/OggTobiasSeekable.h @@ -16,7 +16,7 @@ public: virtual status_t GetStreamInfo(int64 *frameCount, bigtime_t *duration, media_format *format); - virtual status_t GetNextChunk(void **chunkBuffer, int32 *chunkSize, + virtual status_t GetNextChunk(const void **chunkBuffer, size_t *chunkSize, media_header *mediaHeader); private: diff --git a/src/add-ons/media/plugins/ogg/OggTobiasStream.cpp b/src/add-ons/media/plugins/ogg/OggTobiasStream.cpp index 9175c91f0d..fc6cc3c090 100644 --- a/src/add-ons/media/plugins/ogg/OggTobiasStream.cpp +++ b/src/add-ons/media/plugins/ogg/OggTobiasStream.cpp @@ -225,7 +225,7 @@ OggTobiasStream::GetStreamInfo(int64 *frameCount, bigtime_t *duration, status_t -OggTobiasStream::GetNextChunk(void **chunkBuffer, int32 *chunkSize, +OggTobiasStream::GetNextChunk(const void **chunkBuffer, size_t *chunkSize, media_header *mediaHeader) { status_t result = GetPacket(&fChunkPacket); diff --git a/src/add-ons/media/plugins/ogg/OggTobiasStream.h b/src/add-ons/media/plugins/ogg/OggTobiasStream.h index c9e27d531e..e3ed0b7504 100644 --- a/src/add-ons/media/plugins/ogg/OggTobiasStream.h +++ b/src/add-ons/media/plugins/ogg/OggTobiasStream.h @@ -14,7 +14,7 @@ public: virtual status_t GetStreamInfo(int64 *frameCount, bigtime_t *duration, media_format *format); - virtual status_t GetNextChunk(void **chunkBuffer, int32 *chunkSize, + virtual status_t GetNextChunk(const void **chunkBuffer, size_t *chunkSize, media_header *mediaHeader); // reader push input function diff --git a/src/add-ons/media/plugins/ogg/OggTrack.cpp b/src/add-ons/media/plugins/ogg/OggTrack.cpp index a2bb6be012..ec8844456a 100644 --- a/src/add-ons/media/plugins/ogg/OggTrack.cpp +++ b/src/add-ons/media/plugins/ogg/OggTrack.cpp @@ -66,7 +66,7 @@ OggTrack::Seek(uint32 seekTo, int64 *frame, bigtime_t *time) status_t -OggTrack::GetNextChunk(void **chunkBuffer, int32 *chunkSize, +OggTrack::GetNextChunk(const void **chunkBuffer, size_t *chunkSize, media_header *mediaHeader) { *chunkBuffer = 0; diff --git a/src/add-ons/media/plugins/ogg/OggTrack.h b/src/add-ons/media/plugins/ogg/OggTrack.h index 81c7de53b3..aa53a33ab5 100644 --- a/src/add-ons/media/plugins/ogg/OggTrack.h +++ b/src/add-ons/media/plugins/ogg/OggTrack.h @@ -24,7 +24,7 @@ public: virtual status_t GetStreamInfo(int64 *frameCount, bigtime_t *duration, media_format *format); virtual status_t Seek(uint32 seekTo, int64 *frame, bigtime_t *time); - virtual status_t GetNextChunk(void **chunkBuffer, int32 *chunkSize, + virtual status_t GetNextChunk(const void **chunkBuffer, size_t *chunkSize, media_header *mediaHeader); protected: diff --git a/src/add-ons/media/plugins/raw_decoder/AudioConversion.cpp b/src/add-ons/media/plugins/raw_decoder/AudioConversion.cpp index 61a5f2a159..329d169cbe 100644 --- a/src/add-ons/media/plugins/raw_decoder/AudioConversion.cpp +++ b/src/add-ons/media/plugins/raw_decoder/AudioConversion.cpp @@ -35,11 +35,11 @@ typedef double float64; class uint8_sample { public: - inline operator uint8() { return data; } - inline operator int8() { return (int32)data - 128; } - inline operator int16() { return ((int32)data - 128) << 8; } - inline operator int32() { return ((int32)data - 128) << 24; } - inline operator float() { return ((int32)data - 128) * (1.0f / 127.0f); } + inline operator uint8() const { return data; } + inline operator int8() const { return (int32)data - 128; } + inline operator int16() const { return ((int32)data - 128) << 8; } + inline operator int32() const { return ((int32)data - 128) << 24; } + inline operator float() const { return ((int32)data - 128) * (1.0f / 127.0f); } private: uint8 data; } _PACKED; @@ -47,11 +47,11 @@ private: class int8_sample { public: - inline operator uint8() { return (int32)data + 128; } - inline operator int8() { return data; } - inline operator int16() { return (int16)data << 8; } - inline operator int32() { return (int32)data << 24; } - inline operator float() { return (int32)data * (1.0f / 127.0f); } + inline operator uint8() const { return (int32)data + 128; } + inline operator int8() const { return data; } + inline operator int16() const { return (int16)data << 8; } + inline operator int32() const { return (int32)data << 24; } + inline operator float() const { return (int32)data * (1.0f / 127.0f); } private: int8 data; } _PACKED; @@ -59,11 +59,11 @@ private: class int16_sample { public: - inline operator uint8() { return (uint8)((int8)(data >> 8) + 128); } - inline operator int8() { return (int8)(data >> 8); } - inline operator int16() { return data; } - inline operator int32() { return (int32)data << 16; } - inline operator float() { return data * (1.0f / 32767.0f); } + inline operator uint8() const { return (uint8)((int8)(data >> 8) + 128); } + inline operator int8() const { return (int8)(data >> 8); } + inline operator int16() const { return data; } + inline operator int32() const { return (int32)data << 16; } + inline operator float() const { return data * (1.0f / 32767.0f); } private: int16 data; } _PACKED; @@ -72,21 +72,21 @@ class int24_sample { public: #if B_HOST_IS_LENDIAN - inline operator uint8() { return (int32)data[2] + 128; } - inline operator int8() { return (int8)data[2]; } - inline operator int16() { return (int16)((uint32)data[2] << 8 | (uint32)data[1]); } - inline operator int32() { return (int32)((uint32)data[2] << 24 | (uint32)data[1] << 16 | (uint32)data[0] << 8); } - inline operator float() { return (int32)((uint32)data[2] << 16 | (uint32)data[1] << 8 | (uint32)data[0]) * (1.0f / (2147483647.0f / 256)); } + inline operator uint8() const { return (int32)data[2] + 128; } + inline operator int8() const { return (int8)data[2]; } + inline operator int16() const { return (int16)((uint32)data[2] << 8 | (uint32)data[1]); } + inline operator int32() const { return (int32)((uint32)data[2] << 24 | (uint32)data[1] << 16 | (uint32)data[0] << 8); } + inline operator float() const { return (int32)((uint32)data[2] << 16 | (uint32)data[1] << 8 | (uint32)data[0]) * (1.0f / (2147483647.0f / 256)); } // XXX is the line above correct? long version: -// inline operator float() { return (int32)((uint32)data[2] << 24 | (uint32)data[1] << 16 | (uint32)data[0] << 8) * (1.0f / 2147483647.0f); } +// inline operator float() const { return (int32)((uint32)data[2] << 24 | (uint32)data[1] << 16 | (uint32)data[0] << 8) * (1.0f / 2147483647.0f); } #else - inline operator uint8() { return (int32)data[0] + 128; } - inline operator int8() { return (int8)data[0]; } - inline operator int16() { return (int16)((uint32)data[0] << 8 | (uint32)data[1]); } - inline operator int32() { return (int32)((uint32)data[0] << 24 | (uint32)data[1] << 16 | (uint32)data[2] << 8); } - inline operator float() { return (int32)((uint32)data[0] << 16 | (uint32)data[1] << 8 | (uint32)data[2]) * (1.0f / (2147483647.0f / 256)); } + inline operator uint8() const { return (int32)data[0] + 128; } + inline operator int8() const { return (int8)data[0]; } + inline operator int16() const { return (int16)((uint32)data[0] << 8 | (uint32)data[1]); } + inline operator int32() const { return (int32)((uint32)data[0] << 24 | (uint32)data[1] << 16 | (uint32)data[2] << 8); } + inline operator float() const { return (int32)((uint32)data[0] << 16 | (uint32)data[1] << 8 | (uint32)data[2]) * (1.0f / (2147483647.0f / 256)); } // XXX is the line above correct? long version: -// inline operator float() { return (int32)((uint32)data[0] << 24 | (uint32)data[1] << 16 | (uint32)data[2] << 8) * (1.0f / 2147483647.0f); } +// inline operator float() const { return (int32)((uint32)data[0] << 24 | (uint32)data[1] << 16 | (uint32)data[2] << 8) * (1.0f / 2147483647.0f); } #endif private: uint8 data[3]; @@ -95,11 +95,11 @@ private: class int32_sample { public: - inline operator uint8() { return (int8)(data >> 24) + 128; } - inline operator int8() { return (int8)(data >> 24); } - inline operator int16() { return (int16)(data >> 16); } - inline operator int32() { return data; } - inline operator float() { return data * (1.0f / 2147483647.0f); } + inline operator uint8() const { return (int8)(data >> 24) + 128; } + inline operator int8() const { return (int8)(data >> 24); } + inline operator int16() const { return (int16)(data >> 16); } + inline operator int32() const { return data; } + inline operator float() const { return data * (1.0f / 2147483647.0f); } private: int32 data; } _PACKED; @@ -107,11 +107,11 @@ private: class float32_sample { public: - inline operator uint8() { int32 v = (int32)(data * 127.0f) + 128; if (v > 255) v = 255; else if (v < 0) v = 0; return v; } - inline operator int8() { int32 v = (int32)(data * 127.0f); if (v > 127) v = 127; else if (v < -127) v = -127; return v; } - inline operator int16() { int32 v = (int32)(data * 32767.0f); if (v > 32767) v = 32767; else if (v < -32767) v = -32767; return v; } - inline operator int32() { float32 v; if (data < -1.0f) v = -1.0f; else if (data > 1.0f) v = 1.0f; else v = data; return (int32)(v * 2147483647.0f); } - inline operator float() { return data; } + inline operator uint8() const { int32 v = (int32)(data * 127.0f) + 128; if (v > 255) v = 255; else if (v < 0) v = 0; return v; } + inline operator int8() const { int32 v = (int32)(data * 127.0f); if (v > 127) v = 127; else if (v < -127) v = -127; return v; } + inline operator int16() const { int32 v = (int32)(data * 32767.0f); if (v > 32767) v = 32767; else if (v < -32767) v = -32767; return v; } + inline operator int32() const { float32 v; if (data < -1.0f) v = -1.0f; else if (data > 1.0f) v = 1.0f; else v = data; return (int32)(v * 2147483647.0f); } + inline operator float() const { return data; } private: float32 data; } _PACKED; @@ -119,19 +119,19 @@ private: class float64_sample { public: - inline operator uint8() { int32 v = (int32)(data * 127.0f) + 128; if (v > 255) v = 255; else if (v < 0) v = 0; return v; } - inline operator int8() { int32 v = (int32)(data * 127.0f); if (v > 127) v = 127; else if (v < -127) v = -127; return v; } - inline operator int16() { int32 v = (int32)(data * 32767.0f); if (v > 32767) v = 32767; else if (v < -32767) v = -32767; return v; } - inline operator int32() { float64 v; if (data < -1.0) v = -1.0; else if (data > 1.0) v = 1.0; else v = data; return (int32)(v * 2147483647.0f); } - inline operator float() { return data; } + inline operator uint8() const { int32 v = (int32)(data * 127.0f) + 128; if (v > 255) v = 255; else if (v < 0) v = 0; return v; } + inline operator int8() const { int32 v = (int32)(data * 127.0f); if (v > 127) v = 127; else if (v < -127) v = -127; return v; } + inline operator int16() const { int32 v = (int32)(data * 32767.0f); if (v > 32767) v = 32767; else if (v < -32767) v = -32767; return v; } + inline operator int32() const { float64 v; if (data < -1.0) v = -1.0; else if (data > 1.0) v = 1.0; else v = data; return (int32)(v * 2147483647.0f); } + inline operator float() const { return data; } private: float64 data; } _PACKED; #define CONVERT(src_type, dst_type) \ -void src_type##_to_##dst_type (void *dst, void *src, int32 count) \ +void src_type##_to_##dst_type (void *dst, const void *src, int32 count) \ { \ - register src_type##_sample *s = (src_type##_sample *) src; \ + register const src_type##_sample *s = (const src_type##_sample *) src; \ register dst_type *d = (dst_type *) dst; \ register int32 c = count >> 4; \ if (!c) goto fin1; \ diff --git a/src/add-ons/media/plugins/raw_decoder/AudioConversion.h b/src/add-ons/media/plugins/raw_decoder/AudioConversion.h index 8669782fff..c3af647285 100644 --- a/src/add-ons/media/plugins/raw_decoder/AudioConversion.h +++ b/src/add-ons/media/plugins/raw_decoder/AudioConversion.h @@ -27,47 +27,47 @@ #include -void uint8_to_uint8(void *dst, void *src, int32 count); -void uint8_to_int8(void *dst, void *src, int32 count); -void uint8_to_int16(void *dst, void *src, int32 count); -void uint8_to_int32(void *dst, void *src, int32 count); -void uint8_to_float32(void *dst, void *src, int32 count); +void uint8_to_uint8(void *dst, const void *src, int32 count); +void uint8_to_int8(void *dst, const void *src, int32 count); +void uint8_to_int16(void *dst, const void *src, int32 count); +void uint8_to_int32(void *dst, const void *src, int32 count); +void uint8_to_float32(void *dst, const void *src, int32 count); -void int8_to_uint8(void *dst, void *src, int32 count); -void int8_to_int8(void *dst, void *src, int32 count); -void int8_to_int16(void *dst, void *src, int32 count); -void int8_to_int32(void *dst, void *src, int32 count); -void int8_to_float32(void *dst, void *src, int32 count); +void int8_to_uint8(void *dst, const void *src, int32 count); +void int8_to_int8(void *dst, const void *src, int32 count); +void int8_to_int16(void *dst, const void *src, int32 count); +void int8_to_int32(void *dst, const void *src, int32 count); +void int8_to_float32(void *dst, const void *src, int32 count); -void int16_to_uint8(void *dst, void *src, int32 count); -void int16_to_int8(void *dst, void *src, int32 count); -void int16_to_int16(void *dst, void *src, int32 count); -void int16_to_int32(void *dst, void *src, int32 count); -void int16_to_float32(void *dst, void *src, int32 count); +void int16_to_uint8(void *dst, const void *src, int32 count); +void int16_to_int8(void *dst, const void *src, int32 count); +void int16_to_int16(void *dst, const void *src, int32 count); +void int16_to_int32(void *dst, const void *src, int32 count); +void int16_to_float32(void *dst, const void *src, int32 count); -void int24_to_uint8(void *dst, void *src, int32 count); -void int24_to_int8(void *dst, void *src, int32 count); -void int24_to_int16(void *dst, void *src, int32 count); -void int24_to_int32(void *dst, void *src, int32 count); -void int24_to_float32(void *dst, void *src, int32 count); +void int24_to_uint8(void *dst, const void *src, int32 count); +void int24_to_int8(void *dst, const void *src, int32 count); +void int24_to_int16(void *dst, const void *src, int32 count); +void int24_to_int32(void *dst, const void *src, int32 count); +void int24_to_float32(void *dst, const void *src, int32 count); -void int32_to_uint8(void *dst, void *src, int32 count); -void int32_to_int8(void *dst, void *src, int32 count); -void int32_to_int16(void *dst, void *src, int32 count); -void int32_to_int32(void *dst, void *src, int32 count); -void int32_to_float32(void *dst, void *src, int32 count); +void int32_to_uint8(void *dst, const void *src, int32 count); +void int32_to_int8(void *dst, const void *src, int32 count); +void int32_to_int16(void *dst, const void *src, int32 count); +void int32_to_int32(void *dst, const void *src, int32 count); +void int32_to_float32(void *dst, const void *src, int32 count); -void float32_to_uint8(void *dst, void *src, int32 count); -void float32_to_int8(void *dst, void *src, int32 count); -void float32_to_int16(void *dst, void *src, int32 count); -void float32_to_int32(void *dst, void *src, int32 count); -void float32_to_float32(void *dst, void *src, int32 count); +void float32_to_uint8(void *dst, const void *src, int32 count); +void float32_to_int8(void *dst, const void *src, int32 count); +void float32_to_int16(void *dst, const void *src, int32 count); +void float32_to_int32(void *dst, const void *src, int32 count); +void float32_to_float32(void *dst, const void *src, int32 count); -void float64_to_uint8(void *dst, void *src, int32 count); -void float64_to_int8(void *dst, void *src, int32 count); -void float64_to_int16(void *dst, void *src, int32 count); -void float64_to_int32(void *dst, void *src, int32 count); -void float64_to_float32(void *dst, void *src, int32 count); +void float64_to_uint8(void *dst, const void *src, int32 count); +void float64_to_int8(void *dst, const void *src, int32 count); +void float64_to_int16(void *dst, const void *src, int32 count); +void float64_to_int32(void *dst, const void *src, int32 count); +void float64_to_float32(void *dst, const void *src, int32 count); void swap_int16(void *data, int32 count); void swap_int24(void *data, int32 count); diff --git a/src/add-ons/media/plugins/raw_decoder/RawDecoderPlugin.cpp b/src/add-ons/media/plugins/raw_decoder/RawDecoderPlugin.cpp index 2a0a8c5bde..0973f73a20 100644 --- a/src/add-ons/media/plugins/raw_decoder/RawDecoderPlugin.cpp +++ b/src/add-ons/media/plugins/raw_decoder/RawDecoderPlugin.cpp @@ -59,7 +59,7 @@ RawDecoder::GetCodecInfo(media_codec_info *info) status_t RawDecoder::Setup(media_format *ioEncodedFormat, - const void *infoBuffer, int32 infoSize) + const void *infoBuffer, size_t infoSize) { char s[200]; string_for_format(*ioEncodedFormat, s, sizeof(s)); @@ -478,20 +478,20 @@ RawDecoder::Decode(void *buffer, int64 *frameCount, if (fChunkSize == 0) { media_header mh; status_t err; - err = GetNextChunk((void **)&fChunkBuffer, &fChunkSize, &mh); + err = GetNextChunk(&fChunkBuffer, &fChunkSize, &mh); if (err != B_OK || fChunkSize < fInputFrameSize) { fChunkSize = 0; break; } if (fSwapInput) - fSwapInput(fChunkBuffer, fChunkSize / fInputSampleSize); + fSwapInput(const_cast(fChunkBuffer), fChunkSize / fInputSampleSize); // XXX TODO! FIX THIS, we write to a const buffer!!! fStartTime = mh.start_time; continue; } int32 frames = min_c(fOutputBufferFrameCount - *frameCount, fChunkSize / fInputFrameSize); int32 samples = frames * fInputFormat.u.raw_audio.channel_count; fConvert(output_buffer, fChunkBuffer, samples); - fChunkBuffer += frames * fInputFrameSize; + fChunkBuffer = (const char *)fChunkBuffer + frames * fInputFrameSize; fChunkSize -= frames * fInputFrameSize; output_buffer += frames * fOutputFrameSize; *frameCount += frames; diff --git a/src/add-ons/media/plugins/raw_decoder/RawDecoderPlugin.h b/src/add-ons/media/plugins/raw_decoder/RawDecoderPlugin.h index 79a7f57bba..a1dbf0daa6 100644 --- a/src/add-ons/media/plugins/raw_decoder/RawDecoderPlugin.h +++ b/src/add-ons/media/plugins/raw_decoder/RawDecoderPlugin.h @@ -33,7 +33,7 @@ public: void GetCodecInfo(media_codec_info *info); status_t Setup(media_format *ioEncodedFormat, - const void *infoBuffer, int32 infoSize); + const void *infoBuffer, size_t infoSize); status_t NegotiateOutputFormat(media_format *ioDecodedFormat); @@ -56,11 +56,11 @@ private: int32 fOutputSampleSize; int32 fOutputBufferFrameCount; void (*fSwapInput)(void *data, int32 count); - void (*fConvert)(void *dst, void *src, int32 count); + void (*fConvert)(void *dst, const void *src, int32 count); void (*fSwapOutput)(void *data, int32 count); - char * fChunkBuffer; - int32 fChunkSize; + const void * fChunkBuffer; + size_t fChunkSize; bigtime_t fStartTime; diff --git a/src/add-ons/media/plugins/speex/speexCodecPlugin.cpp b/src/add-ons/media/plugins/speex/speexCodecPlugin.cpp index 2da5573d94..2f622de5ab 100644 --- a/src/add-ons/media/plugins/speex/speexCodecPlugin.cpp +++ b/src/add-ons/media/plugins/speex/speexCodecPlugin.cpp @@ -81,7 +81,7 @@ SpeexDecoder::GetCodecInfo(media_codec_info *info) status_t SpeexDecoder::Setup(media_format *inputFormat, - const void *infoBuffer, int32 infoSize) + const void *infoBuffer, size_t infoSize) { TRACE("SpeexDecoder::Setup\n"); if (!format_is_compatible(speex_encoded_media_format(),*inputFormat)) { @@ -254,8 +254,8 @@ SpeexDecoder::Decode(void *buffer, int64 *frameCount, int total_samples = 0; while (out_bytes_needed >= fSpeexOutputLength) { // get a new packet - void *chunkBuffer; - int32 chunkSize; + const void *chunkBuffer; + size_t chunkSize; media_header mh; status_t status = GetNextChunk(&chunkBuffer, &chunkSize, &mh); if (status == B_LAST_BUFFER_ERROR) { diff --git a/src/add-ons/media/plugins/speex/speexCodecPlugin.h b/src/add-ons/media/plugins/speex/speexCodecPlugin.h index 1827a1abd4..289babb5c5 100644 --- a/src/add-ons/media/plugins/speex/speexCodecPlugin.h +++ b/src/add-ons/media/plugins/speex/speexCodecPlugin.h @@ -12,7 +12,7 @@ public: void GetCodecInfo(media_codec_info *info); status_t Setup(media_format *inputFormat, - const void *infoBuffer, int32 infoSize); + const void *infoBuffer, size_t infoSize); status_t NegotiateOutputFormat(media_format *ioDecodedFormat); diff --git a/src/add-ons/media/plugins/theora/theoraCodecPlugin.h b/src/add-ons/media/plugins/theora/theoraCodecPlugin.h index fce6b64c74..d884ba6abf 100644 --- a/src/add-ons/media/plugins/theora/theoraCodecPlugin.h +++ b/src/add-ons/media/plugins/theora/theoraCodecPlugin.h @@ -13,7 +13,7 @@ public: void GetCodecInfo(media_codec_info *info); status_t Setup(media_format *inputFormat, - const void *infoBuffer, int32 infoSize); + const void *infoBuffer, size_t infoSize); status_t NegotiateOutputFormat(media_format *ioDecodedFormat); diff --git a/src/add-ons/media/plugins/vorbis/vorbisCodecPlugin.cpp b/src/add-ons/media/plugins/vorbis/vorbisCodecPlugin.cpp index a476e828b9..82225d77f8 100644 --- a/src/add-ons/media/plugins/vorbis/vorbisCodecPlugin.cpp +++ b/src/add-ons/media/plugins/vorbis/vorbisCodecPlugin.cpp @@ -74,7 +74,7 @@ VorbisDecoder::GetCodecInfo(media_codec_info *info) status_t VorbisDecoder::Setup(media_format *inputFormat, - const void *infoBuffer, int32 infoSize) + const void *infoBuffer, size_t infoSize) { TRACE("VorbisDecoder::Setup\n"); if (!format_is_compatible(vorbis_encoded_media_format(),*inputFormat)) { @@ -178,8 +178,8 @@ VorbisDecoder::Decode(void *buffer, int64 *frameCount, float **pcm; while ((samples = vorbis_synthesis_pcmout(&fDspState,&pcm)) == 0) { // get a new packet - void *chunkBuffer; - int32 chunkSize; + const void *chunkBuffer; + size_t chunkSize; media_header mh; status_t status = GetNextChunk(&chunkBuffer, &chunkSize, &mh); if (status == B_LAST_BUFFER_ERROR) { diff --git a/src/add-ons/media/plugins/vorbis/vorbisCodecPlugin.h b/src/add-ons/media/plugins/vorbis/vorbisCodecPlugin.h index 40e61d7da7..d918cc862f 100644 --- a/src/add-ons/media/plugins/vorbis/vorbisCodecPlugin.h +++ b/src/add-ons/media/plugins/vorbis/vorbisCodecPlugin.h @@ -13,7 +13,7 @@ public: void GetCodecInfo(media_codec_info *info); status_t Setup(media_format *inputFormat, - const void *infoBuffer, int32 infoSize); + const void *infoBuffer, size_t infoSize); status_t NegotiateOutputFormat(media_format *ioDecodedFormat); diff --git a/src/add-ons/media/plugins/wav_reader/WavReaderPlugin.cpp b/src/add-ons/media/plugins/wav_reader/WavReaderPlugin.cpp index b7faa80a71..859beb26b3 100644 --- a/src/add-ons/media/plugins/wav_reader/WavReaderPlugin.cpp +++ b/src/add-ons/media/plugins/wav_reader/WavReaderPlugin.cpp @@ -336,7 +336,7 @@ WavReader::FreeCookie(void *cookie) status_t WavReader::GetStreamInfo(void *cookie, int64 *frameCount, bigtime_t *duration, - media_format *format, void **infoBuffer, int32 *infoSize) + media_format *format, const void **infoBuffer, size_t *infoSize) { wavdata *data = reinterpret_cast(cookie); @@ -396,7 +396,7 @@ WavReader::Seek(void *cookie, status_t WavReader::GetNextChunk(void *cookie, - void **chunkBuffer, int32 *chunkSize, + const void **chunkBuffer, size_t *chunkSize, media_header *mediaHeader) { wavdata *data = reinterpret_cast(cookie); diff --git a/src/add-ons/media/plugins/wav_reader/WavReaderPlugin.h b/src/add-ons/media/plugins/wav_reader/WavReaderPlugin.h index 54e5de09a9..648a2d0a3a 100644 --- a/src/add-ons/media/plugins/wav_reader/WavReaderPlugin.h +++ b/src/add-ons/media/plugins/wav_reader/WavReaderPlugin.h @@ -44,14 +44,14 @@ public: status_t FreeCookie(void *cookie); status_t GetStreamInfo(void *cookie, int64 *frameCount, bigtime_t *duration, - media_format *format, void **infoBuffer, int32 *infoSize); + media_format *format, const void **infoBuffer, size_t *infoSize); status_t Seek(void *cookie, uint32 seekTo, int64 *frame, bigtime_t *time); status_t GetNextChunk(void *cookie, - void **chunkBuffer, int32 *chunkSize, + const void **chunkBuffer, size_t *chunkSize, media_header *mediaHeader); BPositionIO *Source() { return fSource; } diff --git a/src/kits/media/ChunkCache.cpp b/src/kits/media/ChunkCache.cpp index e07f8c9a24..0d123adb54 100644 --- a/src/kits/media/ChunkCache.cpp +++ b/src/kits/media/ChunkCache.cpp @@ -85,7 +85,7 @@ ChunkCache::NeedsRefill() status_t -ChunkCache::GetNextChunk(void **chunkBuffer, int32 *chunkSize, media_header *mediaHeader) +ChunkCache::GetNextChunk(const void **chunkBuffer, size_t *chunkSize, media_header *mediaHeader) { // printf("ChunkCache::GetNextChunk: %p fEmptyChunkCount %ld, fReadyChunkCount %ld\n", fNextGet, fEmptyChunkCount, fReadyChunkCount); retry: @@ -113,7 +113,7 @@ retry: void -ChunkCache::PutNextChunk(void *chunkBuffer, int32 chunkSize, const media_header &mediaHeader, status_t err) +ChunkCache::PutNextChunk(const void *chunkBuffer, size_t chunkSize, const media_header &mediaHeader, status_t err) { // printf("ChunkCache::PutNextChunk: %p fEmptyChunkCount %ld, fReadyChunkCount %ld\n", fNextPut, fEmptyChunkCount, fReadyChunkCount); diff --git a/src/kits/media/ChunkCache.h b/src/kits/media/ChunkCache.h index 286b3931ab..5a8282afa4 100644 --- a/src/kits/media/ChunkCache.h +++ b/src/kits/media/ChunkCache.h @@ -35,8 +35,8 @@ struct chunk_info { chunk_info * next; void * buffer; - int32 sizeUsed; - int32 sizeMax; + size_t sizeUsed; + size_t sizeMax; media_header mediaHeader; status_t err; }; @@ -51,8 +51,8 @@ public: void MakeEmpty(); bool NeedsRefill(); - status_t GetNextChunk(void **chunkBuffer, int32 *chunkSize, media_header *mediaHeader); - void PutNextChunk(void *chunkBuffer, int32 chunkSize, const media_header &mediaHeader, status_t err); + status_t GetNextChunk(const void **chunkBuffer, size_t *chunkSize, media_header *mediaHeader); + void PutNextChunk(const void *chunkBuffer, size_t chunkSize, const media_header &mediaHeader, status_t err); private: enum { CHUNK_COUNT = 5 }; diff --git a/src/kits/media/DecoderPlugin.cpp b/src/kits/media/DecoderPlugin.cpp index 093ab25bcb..3f60655886 100644 --- a/src/kits/media/DecoderPlugin.cpp +++ b/src/kits/media/DecoderPlugin.cpp @@ -24,7 +24,7 @@ Decoder::~Decoder() status_t -Decoder::GetNextChunk(void **chunkBuffer, int32 *chunkSize, +Decoder::GetNextChunk(const void **chunkBuffer, size_t *chunkSize, media_header *mediaHeader) { return fChunkProvider->GetNextChunk(chunkBuffer, chunkSize, mediaHeader); diff --git a/src/kits/media/MediaDecoder.cpp b/src/kits/media/MediaDecoder.cpp index acaa54780a..b281a20c61 100644 --- a/src/kits/media/MediaDecoder.cpp +++ b/src/kits/media/MediaDecoder.cpp @@ -275,11 +275,9 @@ BMediaDecoder::AttachToDecoder() MediaDecoderChunkProvider(BMediaDecoder * decoder) { fDecoder = decoder; } - virtual status_t GetNextChunk(void **chunkBuffer, int32 *chunkSize, + virtual status_t GetNextChunk(const void **chunkBuffer, size_t *chunkSize, media_header *mediaHeader) { - const void ** buffer = const_cast(chunkBuffer); - size_t * size = reinterpret_cast(chunkSize); - return fDecoder->GetNextChunk(buffer,size,mediaHeader); + return fDecoder->GetNextChunk(chunkBuffer, chunkSize, mediaHeader); } } * provider = new MediaDecoderChunkProvider(this); if (provider == NULL) { diff --git a/src/kits/media/MediaExtractor.cpp b/src/kits/media/MediaExtractor.cpp index ea2a765555..cb5c2ade25 100644 --- a/src/kits/media/MediaExtractor.cpp +++ b/src/kits/media/MediaExtractor.cpp @@ -139,8 +139,8 @@ MediaExtractor::CountFrames(int32 stream) const int64 frameCount; bigtime_t duration; media_format format; - void *infoBuffer; - int32 infoSize; + const void *infoBuffer; + size_t infoSize; fReader->GetStreamInfo(fStreamInfo[stream].cookie, &frameCount, &duration, &format, &infoBuffer, &infoSize); @@ -155,8 +155,8 @@ MediaExtractor::Duration(int32 stream) const int64 frameCount; bigtime_t duration; media_format format; - void *infoBuffer; - int32 infoSize; + const void *infoBuffer; + size_t infoSize; fReader->GetStreamInfo(fStreamInfo[stream].cookie, &frameCount, &duration, &format, &infoBuffer, &infoSize); @@ -187,7 +187,7 @@ MediaExtractor::Seek(int32 stream, uint32 seekTo, status_t MediaExtractor::GetNextChunk(int32 stream, - void **chunkBuffer, int32 *chunkSize, + const void **chunkBuffer, size_t *chunkSize, media_header *mediaHeader) { if (fStreamInfo[stream].status != B_OK) @@ -218,7 +218,7 @@ public: fStream = stream; } - virtual status_t GetNextChunk(void **chunkBuffer, int32 *chunkSize, + virtual status_t GetNextChunk(const void **chunkBuffer, size_t *chunkSize, media_header *mediaHeader) { return fExtractor->GetNextChunk(fStream, chunkBuffer, chunkSize, mediaHeader); @@ -283,8 +283,8 @@ MediaExtractor::ExtractorThread() continue; if (fStreamInfo[stream].chunkCache->NeedsRefill()) { media_header mediaHeader; - void *chunkBuffer; - int32 chunkSize; + const void *chunkBuffer; + size_t chunkSize; status_t err; err = fReader->GetNextChunk(fStreamInfo[stream].cookie, &chunkBuffer, &chunkSize, &mediaHeader); fStreamInfo[stream].chunkCache->PutNextChunk(chunkBuffer, chunkSize, mediaHeader, err); diff --git a/src/kits/media/MediaTrack.cpp b/src/kits/media/MediaTrack.cpp index 95a4e3492f..b0f3e57242 100644 --- a/src/kits/media/MediaTrack.cpp +++ b/src/kits/media/MediaTrack.cpp @@ -54,7 +54,7 @@ public: RawDecoderChunkProvider(Decoder *decoder, int buffer_size, int frame_size); virtual ~RawDecoderChunkProvider(); - status_t GetNextChunk(void **chunkBuffer, int32 *chunkSize, media_header *mediaHeader); + status_t GetNextChunk(const void **chunkBuffer, size_t *chunkSize, media_header *mediaHeader); private: Decoder *fDecoder; @@ -446,14 +446,19 @@ BMediaTrack::ReadChunk(char **out_buffer, status_t result; media_header header; + const void *buffer; + size_t size; memset(&header, 0, sizeof(header)); // always clear it first, as the reader doesn't set all fields - result = fExtractor->GetNextChunk(fStream, (void **)out_buffer, out_size, &header); - - fCurTime = header.start_time; - if (mh) - *mh = header; + result = fExtractor->GetNextChunk(fStream, &buffer, &size, &header); + if (result == B_OK) { + *out_buffer = const_cast(static_cast(buffer)); // yes this *is* ugly + *out_size = size; + fCurTime = header.start_time; + if (mh) + *mh = header; + } return result; } @@ -822,7 +827,7 @@ RawDecoderChunkProvider::~RawDecoderChunkProvider() } status_t -RawDecoderChunkProvider::GetNextChunk(void **chunkBuffer, int32 *chunkSize, +RawDecoderChunkProvider::GetNextChunk(const void **chunkBuffer, size_t *chunkSize, media_header *mediaHeader) { int64 frames;