| Index: media/filters/chunk_demuxer.h
|
| diff --git a/media/filters/chunk_demuxer.h b/media/filters/chunk_demuxer.h
|
| index e7f6caed37c9c4ab0eab72d3329b35688b38f907..78bd5daadf3c77dbbadef2179e441bc9a97f78aa 100644
|
| --- a/media/filters/chunk_demuxer.h
|
| +++ b/media/filters/chunk_demuxer.h
|
| @@ -6,6 +6,7 @@
|
| #define MEDIA_FILTERS_CHUNK_DEMUXER_H_
|
|
|
| #include <map>
|
| +#include <set>
|
| #include <string>
|
| #include <utility>
|
| #include <vector>
|
| @@ -15,7 +16,6 @@
|
| #include "media/base/demuxer.h"
|
| #include "media/base/ranges.h"
|
| #include "media/base/stream_parser.h"
|
| -#include "media/base/text_track.h"
|
| #include "media/filters/source_buffer_stream.h"
|
|
|
| namespace media {
|
| @@ -38,13 +38,13 @@ class MEDIA_EXPORT ChunkDemuxer : public Demuxer {
|
| // is ready to receive media data via AppenData().
|
| // |need_key_cb| Run when the demuxer determines that an encryption key is
|
| // needed to decrypt the content.
|
| - // |add_text_track_cb| Run when demuxer detects the presence of an inband
|
| - // text track.
|
| + // |enable_text| Process inband text tracks in the normal way when true,
|
| + // otherwise ignore them.
|
| // |log_cb| Run when parsing error messages need to be logged to the error
|
| // console.
|
| ChunkDemuxer(const base::Closure& open_cb,
|
| const NeedKeyCB& need_key_cb,
|
| - const AddTextTrackCB& add_text_track_cb,
|
| + bool enable_text,
|
| const LogCB& log_cb);
|
| virtual ~ChunkDemuxer();
|
|
|
| @@ -171,8 +171,10 @@ class MEDIA_EXPORT ChunkDemuxer : public Demuxer {
|
| // has not been created before. Returns NULL otherwise.
|
| ChunkDemuxerStream* CreateDemuxerStream(DemuxerStream::Type type);
|
|
|
| - bool OnTextBuffers(TextTrack* text_track,
|
| - const StreamParser::BufferQueue& buffers);
|
| + void OnNewTextTrack(ChunkDemuxerStream* text_stream,
|
| + TextKind kind,
|
| + const std::string& name,
|
| + const std::string& language);
|
| void OnNewMediaSegment(const std::string& source_id,
|
| base::TimeDelta start_timestamp);
|
|
|
| @@ -224,7 +226,7 @@ class MEDIA_EXPORT ChunkDemuxer : public Demuxer {
|
| DemuxerHost* host_;
|
| base::Closure open_cb_;
|
| NeedKeyCB need_key_cb_;
|
| - AddTextTrackCB add_text_track_cb_;
|
| + bool enable_text_;
|
| // Callback used to report error strings that can help the web developer
|
| // figure out what is wrong with the content.
|
| LogCB log_cb_;
|
| @@ -235,6 +237,9 @@ class MEDIA_EXPORT ChunkDemuxer : public Demuxer {
|
| scoped_ptr<ChunkDemuxerStream> audio_;
|
| scoped_ptr<ChunkDemuxerStream> video_;
|
|
|
| + typedef std::set<ChunkDemuxerStream*> TextStreamSet;
|
| + TextStreamSet text_stream_set_;
|
| +
|
| // Keeps |audio_| alive when audio has been disabled.
|
| scoped_ptr<ChunkDemuxerStream> disabled_audio_;
|
|
|
|
|