Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(261)

Side by Side Diff: media/filters/chunk_demuxer.cc

Issue 11468018: Add libvpx wrapper to media to support VP9 video decoding. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Add work around for lack of VP9 in ffmpeg. Created 8 years ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "media/filters/chunk_demuxer.h" 5 #include "media/filters/chunk_demuxer.h"
6 6
7 #include <algorithm> 7 #include <algorithm>
8 #include <deque> 8 #include <deque>
9 9
10 #include "base/bind.h" 10 #include "base/bind.h"
(...skipping 22 matching lines...) Expand all
33 typedef StreamParser* (*ParserFactoryFunction)( 33 typedef StreamParser* (*ParserFactoryFunction)(
34 const std::vector<std::string>& codecs); 34 const std::vector<std::string>& codecs);
35 35
36 struct SupportedTypeInfo { 36 struct SupportedTypeInfo {
37 const char* type; 37 const char* type;
38 const ParserFactoryFunction factory_function; 38 const ParserFactoryFunction factory_function;
39 const CodecInfo** codecs; 39 const CodecInfo** codecs;
40 }; 40 };
41 41
42 static const CodecInfo kVP8CodecInfo = { "vp8", DemuxerStream::VIDEO }; 42 static const CodecInfo kVP8CodecInfo = { "vp8", DemuxerStream::VIDEO };
43 static const CodecInfo kVP9CodecInfo = { "vp9", DemuxerStream::VIDEO };
43 static const CodecInfo kVorbisCodecInfo = { "vorbis", DemuxerStream::AUDIO }; 44 static const CodecInfo kVorbisCodecInfo = { "vorbis", DemuxerStream::AUDIO };
44 45
45 static const CodecInfo* kVideoWebMCodecs[] = { 46 static const CodecInfo* kVideoWebMCodecs[] = {
46 &kVP8CodecInfo, 47 &kVP8CodecInfo,
48 &kVP9CodecInfo,
scherkus (not reviewing) 2012/12/18 01:01:56 if vp9 isn't expected to work with media source, t
Tom Finegan 2012/12/18 01:47:42 Forgot to remove this, done.
47 &kVorbisCodecInfo, 49 &kVorbisCodecInfo,
48 NULL 50 NULL
49 }; 51 };
50 52
51 static const CodecInfo* kAudioWebMCodecs[] = { 53 static const CodecInfo* kAudioWebMCodecs[] = {
52 &kVorbisCodecInfo, 54 &kVorbisCodecInfo,
53 NULL 55 NULL
54 }; 56 };
55 57
56 static StreamParser* BuildWebMParser(const std::vector<std::string>& codecs) { 58 static StreamParser* BuildWebMParser(const std::vector<std::string>& codecs) {
(...skipping 1183 matching lines...) Expand 10 before | Expand all | Expand 10 after
1240 1242
1241 Ranges<TimeDelta> ChunkDemuxer::GetBufferedRanges() const { 1243 Ranges<TimeDelta> ChunkDemuxer::GetBufferedRanges() const {
1242 if (audio_ && !video_) 1244 if (audio_ && !video_)
1243 return audio_->GetBufferedRanges(duration_); 1245 return audio_->GetBufferedRanges(duration_);
1244 else if (!audio_ && video_) 1246 else if (!audio_ && video_)
1245 return video_->GetBufferedRanges(duration_); 1247 return video_->GetBufferedRanges(duration_);
1246 return ComputeIntersection(); 1248 return ComputeIntersection();
1247 } 1249 }
1248 1250
1249 } // namespace media 1251 } // namespace media
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698