| OLD | NEW |
| 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 "webkit/media/webmediaplayer_impl.h" | 5 #include "webkit/media/webmediaplayer_impl.h" |
| 6 | 6 |
| 7 #include <algorithm> | 7 #include <algorithm> |
| 8 #include <limits> | 8 #include <limits> |
| 9 #include <string> | 9 #include <string> |
| 10 #include <vector> | 10 #include <vector> |
| (...skipping 1285 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1296 filter_collection->SetAudioRenderer(audio_renderer.Pass()); | 1296 filter_collection->SetAudioRenderer(audio_renderer.Pass()); |
| 1297 | 1297 |
| 1298 // Create our video decoders and renderer. | 1298 // Create our video decoders and renderer. |
| 1299 ScopedVector<media::VideoDecoder> video_decoders; | 1299 ScopedVector<media::VideoDecoder> video_decoders; |
| 1300 | 1300 |
| 1301 if (gpu_factories_) { | 1301 if (gpu_factories_) { |
| 1302 video_decoders.push_back(new media::GpuVideoDecoder( | 1302 video_decoders.push_back(new media::GpuVideoDecoder( |
| 1303 media_thread_.message_loop_proxy(), gpu_factories_)); | 1303 media_thread_.message_loop_proxy(), gpu_factories_)); |
| 1304 } | 1304 } |
| 1305 | 1305 |
| 1306 video_decoders.push_back(new media::FFmpegVideoDecoder( | |
| 1307 media_thread_.message_loop_proxy())); | |
| 1308 | |
| 1309 // TODO(phajdan.jr): Remove ifdefs when libvpx with vp9 support is released | 1306 // TODO(phajdan.jr): Remove ifdefs when libvpx with vp9 support is released |
| 1310 // (http://crbug.com/174287) . | 1307 // (http://crbug.com/174287) . |
| 1311 #if !defined(MEDIA_DISABLE_LIBVPX) | 1308 #if !defined(MEDIA_DISABLE_LIBVPX) |
| 1312 if (cmd_line->HasSwitch(switches::kEnableVp9Playback)) { | 1309 if (cmd_line->HasSwitch(switches::kEnableVp9Playback) || |
| 1310 cmd_line->HasSwitch(switches::kEnableVp8AlphaPlayback)) { |
| 1313 video_decoders.push_back(new media::VpxVideoDecoder( | 1311 video_decoders.push_back(new media::VpxVideoDecoder( |
| 1314 media_thread_.message_loop_proxy())); | 1312 media_thread_.message_loop_proxy())); |
| 1315 } | 1313 } |
| 1316 #endif // !defined(MEDIA_DISABLE_LIBVPX) | 1314 #endif // !defined(MEDIA_DISABLE_LIBVPX) |
| 1317 | 1315 |
| 1316 video_decoders.push_back(new media::FFmpegVideoDecoder( |
| 1317 media_thread_.message_loop_proxy())); |
| 1318 |
| 1318 scoped_ptr<media::VideoRenderer> video_renderer( | 1319 scoped_ptr<media::VideoRenderer> video_renderer( |
| 1319 new media::VideoRendererBase( | 1320 new media::VideoRendererBase( |
| 1320 media_thread_.message_loop_proxy(), | 1321 media_thread_.message_loop_proxy(), |
| 1321 video_decoders.Pass(), | 1322 video_decoders.Pass(), |
| 1322 set_decryptor_ready_cb, | 1323 set_decryptor_ready_cb, |
| 1323 base::Bind(&WebMediaPlayerImpl::FrameReady, base::Unretained(this)), | 1324 base::Bind(&WebMediaPlayerImpl::FrameReady, base::Unretained(this)), |
| 1324 BIND_TO_RENDER_LOOP(&WebMediaPlayerImpl::SetOpaque), | 1325 BIND_TO_RENDER_LOOP(&WebMediaPlayerImpl::SetOpaque), |
| 1325 true)); | 1326 true)); |
| 1326 filter_collection->SetVideoRenderer(video_renderer.Pass()); | 1327 filter_collection->SetVideoRenderer(video_renderer.Pass()); |
| 1327 | 1328 |
| 1328 return filter_collection.Pass(); | 1329 return filter_collection.Pass(); |
| 1329 } | 1330 } |
| 1330 | 1331 |
| 1331 } // namespace webkit_media | 1332 } // namespace webkit_media |
| OLD | NEW |