diff options
author | Matthew Hoops | 2011-06-02 18:40:49 -0400 |
---|---|---|
committer | Matthew Hoops | 2011-06-02 23:44:40 -0400 |
commit | 2e066816983935b8e365fc555f953bdce9f64e46 (patch) | |
tree | 08760ac1ed5e7d1754792d8353e0fff19704f42d /audio/decoders/quicktime_intern.h | |
parent | 717248e1625bc42fc7f777ca9d3029f6ef8978e6 (diff) | |
download | scummvm-rg350-2e066816983935b8e365fc555f953bdce9f64e46.tar.gz scummvm-rg350-2e066816983935b8e365fc555f953bdce9f64e46.tar.bz2 scummvm-rg350-2e066816983935b8e365fc555f953bdce9f64e46.zip |
COMMON: Begin objectifying QuickTimeParser::SampleDesc further
This is preparation for multiple video and audio tracks
Diffstat (limited to 'audio/decoders/quicktime_intern.h')
-rw-r--r-- | audio/decoders/quicktime_intern.h | 33 |
1 files changed, 18 insertions, 15 deletions
diff --git a/audio/decoders/quicktime_intern.h b/audio/decoders/quicktime_intern.h index 691ef7b58c..3279ad8054 100644 --- a/audio/decoders/quicktime_intern.h +++ b/audio/decoders/quicktime_intern.h @@ -65,30 +65,33 @@ public: bool loadAudioStream(Common::SeekableReadStream *stream, DisposeAfterUse::Flag disposeFileHandle); protected: - struct AudioSampleDesc : public Common::QuickTimeParser::SampleDesc { - AudioSampleDesc(); - - uint16 channels; - uint32 sampleRate; - uint32 samplesPerFrame; - uint32 bytesPerFrame; + class AudioSampleDesc : public Common::QuickTimeParser::SampleDesc { + public: + AudioSampleDesc(Common::QuickTimeParser::MOVStreamContext *parentStream, uint32 codecTag); + + bool isAudioCodecSupported() const; + uint32 getAudioChunkSampleCount(uint chunk) const; + AudioStream *createAudioStream(Common::SeekableReadStream *stream) const; + + // TODO: Make private in the long run + uint16 _bitsPerSample; + uint16 _channels; + uint32 _sampleRate; + uint32 _samplesPerFrame; + uint32 _bytesPerFrame; }; // Common::QuickTimeParser API virtual Common::QuickTimeParser::SampleDesc *readSampleDesc(MOVStreamContext *st, uint32 format); - AudioStream *createAudioStream(Common::SeekableReadStream *stream); - bool checkAudioCodecSupport(uint32 tag, byte objectTypeMP4); void init(); - + void setAudioStreamPos(const Timestamp &where); + bool isOldDemuxing() const; void queueNextAudioChunk(); - uint32 getAudioChunkSampleCount(uint chunk); - int8 _audioStreamIndex; + + int _audioStreamIndex; uint _curAudioChunk; QueuingAudioStream *_audStream; - - void setAudioStreamPos(const Timestamp &where); - bool isOldDemuxing() const; }; } // End of namespace Audio |