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

Side by Side Diff: content/renderer/render_view_impl.cc

Issue 13890012: Integrate VDA with WebRTC. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Create new VDA thread, copy gpu_factories, and add DestructionObserver Created 7 years, 6 months 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
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 "content/renderer/render_view_impl.h" 5 #include "content/renderer/render_view_impl.h"
6 6
7 #include <algorithm> 7 #include <algorithm>
8 #include <cmath> 8 #include <cmath>
9 9
10 #include "base/auto_reset.h" 10 #include "base/auto_reset.h"
(...skipping 2730 matching lines...) Expand 10 before | Expand all | Expand 10 after
2741 #endif 2741 #endif
2742 2742
2743 scoped_refptr<media::AudioRendererSink> sink; 2743 scoped_refptr<media::AudioRendererSink> sink;
2744 if (!cmd_line->HasSwitch(switches::kDisableAudio)) { 2744 if (!cmd_line->HasSwitch(switches::kDisableAudio)) {
2745 sink = RenderThreadImpl::current()->GetAudioRendererMixerManager()-> 2745 sink = RenderThreadImpl::current()->GetAudioRendererMixerManager()->
2746 CreateInput(routing_id_); 2746 CreateInput(routing_id_);
2747 DVLOG(1) << "Using AudioRendererMixerManager-provided sink: " << sink; 2747 DVLOG(1) << "Using AudioRendererMixerManager-provided sink: " << sink;
2748 } 2748 }
2749 2749
2750 scoped_refptr<media::GpuVideoDecoder::Factories> gpu_factories; 2750 scoped_refptr<media::GpuVideoDecoder::Factories> gpu_factories;
2751 WebGraphicsContext3DCommandBufferImpl* context3d = NULL; 2751 scoped_refptr<base::MessageLoopProxy> factories_loop =
2752 if (!cmd_line->HasSwitch(switches::kDisableAcceleratedVideoDecode)) 2752 RenderThreadImpl::current()->compositor_message_loop_proxy();
2753 context3d = RenderThreadImpl::current()->GetGpuVDAContext3D(); 2753 if (!factories_loop)
2754 if (context3d) { 2754 factories_loop = base::MessageLoopProxy::current();
2755 scoped_refptr<base::MessageLoopProxy> factories_loop = 2755 gpu_factories = RenderThreadImpl::current()->GetGpuFactories(
2756 RenderThreadImpl::current()->compositor_message_loop_proxy(); 2756 factories_loop);
2757 if (!factories_loop)
2758 factories_loop = base::MessageLoopProxy::current();
2759 GpuChannelHost* gpu_channel_host =
2760 RenderThreadImpl::current()->EstablishGpuChannelSync(
2761 CAUSE_FOR_GPU_LAUNCH_VIDEODECODEACCELERATOR_INITIALIZE);
2762 gpu_factories = new RendererGpuVideoDecoderFactories(
2763 gpu_channel_host, factories_loop, context3d);
2764 }
2765 2757
2766 webkit_media::WebMediaPlayerParams params( 2758 webkit_media::WebMediaPlayerParams params(
2767 sink, gpu_factories, new RenderMediaLog()); 2759 sink, gpu_factories, new RenderMediaLog());
2768 WebMediaPlayer* media_player = 2760 WebMediaPlayer* media_player =
2769 GetContentClient()->renderer()->OverrideCreateWebMediaPlayer( 2761 GetContentClient()->renderer()->OverrideCreateWebMediaPlayer(
2770 this, frame, client, AsWeakPtr(), params); 2762 this, frame, client, AsWeakPtr(), params);
2771 if (!media_player) { 2763 if (!media_player) {
2772 media_player = new webkit_media::WebMediaPlayerImpl( 2764 media_player = new webkit_media::WebMediaPlayerImpl(
2773 frame, client, AsWeakPtr(), params); 2765 frame, client, AsWeakPtr(), params);
2774 } 2766 }
(...skipping 3785 matching lines...) Expand 10 before | Expand all | Expand 10 after
6560 WebURL url = icon_urls[i].iconURL(); 6552 WebURL url = icon_urls[i].iconURL();
6561 if (!url.isEmpty()) 6553 if (!url.isEmpty())
6562 urls.push_back(FaviconURL(url, 6554 urls.push_back(FaviconURL(url,
6563 ToFaviconType(icon_urls[i].iconType()))); 6555 ToFaviconType(icon_urls[i].iconType())));
6564 } 6556 }
6565 SendUpdateFaviconURL(urls); 6557 SendUpdateFaviconURL(urls);
6566 } 6558 }
6567 6559
6568 6560
6569 } // namespace content 6561 } // namespace content
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698