diff --git a/CHROMIUM_BUILD_COMPATIBILITY.txt b/CHROMIUM_BUILD_COMPATIBILITY.txt index 4659adeee..caebb6775 100644 --- a/CHROMIUM_BUILD_COMPATIBILITY.txt +++ b/CHROMIUM_BUILD_COMPATIBILITY.txt @@ -56,3 +56,4 @@ Date | CEF Revision | Chromium Revision 2010-10-03 | /trunk@108 | /trunk@61327 2010-10-15 | /trunk@116 | /trunk@62731 2010-10-21 | /trunk@122 | /trunk@63396 +2010-10-26 | /trunk@127 | /trunk@63876 diff --git a/libcef/browser_webview_delegate.cc b/libcef/browser_webview_delegate.cc index 5b83d5ec7..42f18f6e9 100644 --- a/libcef/browser_webview_delegate.cc +++ b/libcef/browser_webview_delegate.cc @@ -15,11 +15,11 @@ #include "request_impl.h" #include "v8_impl.h" +#include "base/debug/trace_event.h" #include "base/file_util.h" #include "base/message_loop.h" #include "base/process_util.h" #include "base/string_util.h" -#include "base/trace_event.h" #include "base/utf_string_conversions.h" #include "gfx/point.h" #include "media/filters/audio_renderer_impl.h" @@ -529,18 +529,14 @@ WebPlugin* BrowserWebViewDelegate::createPlugin( WebMediaPlayer* BrowserWebViewDelegate::createMediaPlayer( WebFrame* frame, WebMediaPlayerClient* client) { - scoped_refptr factory = - new media::FilterFactoryCollection(); - - // Add the audio renderer factory. - factory->AddFactory(media::AudioRendererImpl::CreateFilterFactory()); + media::MediaFilterCollection collection; appcache::WebApplicationCacheHostImpl* appcache_host = appcache::WebApplicationCacheHostImpl::FromFrame(frame); // TODO(hclam): this is the same piece of code as in RenderView, maybe they // should be grouped together. - webkit_glue::MediaResourceLoaderBridgeFactory* bridge_factory = + webkit_glue::MediaResourceLoaderBridgeFactory* bridge_factory_simple = new webkit_glue::MediaResourceLoaderBridgeFactory( GURL(frame->url()), // referrer "null", // frame origin @@ -548,18 +544,25 @@ WebMediaPlayer* BrowserWebViewDelegate::createMediaPlayer( base::GetCurrentProcId(), appcache_host ? appcache_host->host_id() : appcache::kNoHostId, 0); - // A simple data source that keeps all data in memory. - media::FilterFactory* simple_data_source_factory = - webkit_glue::SimpleDataSource::CreateFactory(MessageLoop::current(), - bridge_factory); - // A sophisticated data source that does memory caching. - media::FilterFactory* buffered_data_source_factory = - webkit_glue::BufferedDataSource::CreateFactory(MessageLoop::current(), - bridge_factory); - factory->AddFactory(buffered_data_source_factory); - factory->AddFactory(simple_data_source_factory); + webkit_glue::MediaResourceLoaderBridgeFactory* bridge_factory_buffered = + new webkit_glue::MediaResourceLoaderBridgeFactory( + GURL(frame->url()), // referrer + "null", // frame origin + "null", // main_frame_origin + base::GetCurrentProcId(), + appcache_host ? appcache_host->host_id() : appcache::kNoHostId, + 0); + + scoped_refptr video_renderer = + new webkit_glue::VideoRendererImpl(false); + collection.push_back(video_renderer); + + // Add the audio renderer. + collection.push_back(new media::AudioRendererImpl()); + return new webkit_glue::WebMediaPlayerImpl( - client, factory, new webkit_glue::VideoRendererImpl::FactoryFactory(false)); + client, collection, bridge_factory_simple, bridge_factory_buffered, + false, video_renderer); } WebApplicationCacheHost* BrowserWebViewDelegate::createApplicationCacheHost( diff --git a/libcef/browser_webview_delegate_win.cc b/libcef/browser_webview_delegate_win.cc index 287a7cc92..398d5d610 100644 --- a/libcef/browser_webview_delegate_win.cc +++ b/libcef/browser_webview_delegate_win.cc @@ -18,13 +18,12 @@ #include #include -#include "gfx/point.h" #include "base/message_loop.h" -#include "base/trace_event.h" #include "base/string_util.h" #include "base/utf_string_conversions.h" #include "gfx/gdi_util.h" #include "gfx/native_widget_types.h" +#include "gfx/point.h" #include "net/base/net_errors.h" #include "third_party/WebKit/WebKit/chromium/public/WebContextMenuData.h" #include "third_party/WebKit/WebKit/chromium/public/WebCursorInfo.h"