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

Side by Side Diff: chrome/renderer/media/gles2_video_decode_context.h

Issue 4113006: Rename UploadToVideoFrame to ConvertToVideoFrame. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 10 years, 1 month 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) 2010 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2010 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 #ifndef CHROME_RENDERER_MEDIA_GLES2_VIDEO_DECODE_CONTEXT_H_ 5 #ifndef CHROME_RENDERER_MEDIA_GLES2_VIDEO_DECODE_CONTEXT_H_
6 #define CHROME_RENDERER_MEDIA_GLES2_VIDEO_DECODE_CONTEXT_H_ 6 #define CHROME_RENDERER_MEDIA_GLES2_VIDEO_DECODE_CONTEXT_H_
7 7
8 #include <vector> 8 #include <vector>
9 9
10 #include "media/video/video_decode_context.h" 10 #include "media/video/video_decode_context.h"
(...skipping 19 matching lines...) Expand all
30 // 1. Memory mapped textures (aka software decoding mode). 30 // 1. Memory mapped textures (aka software decoding mode).
31 // Each texture is memory mapped and appears to the VideoDecodeEngine as 31 // Each texture is memory mapped and appears to the VideoDecodeEngine as
32 // system memory. 32 // system memory.
33 // 33 //
34 // The usage of the textures is that the VideoDecodeEngine is performing 34 // The usage of the textures is that the VideoDecodeEngine is performing
35 // software video decoding and use them as if they are allocated in plain 35 // software video decoding and use them as if they are allocated in plain
36 // system memory (in fact they are allocated in system memory and shared 36 // system memory (in fact they are allocated in system memory and shared
37 // bwith the GPU process). An additional step of uploading the content to 37 // bwith the GPU process). An additional step of uploading the content to
38 // video memory is needed. Since VideoDecodeEngine is unaware of the video 38 // video memory is needed. Since VideoDecodeEngine is unaware of the video
39 // memory, this upload operation is performed by calling 39 // memory, this upload operation is performed by calling
40 // UploadToVideoFrame(). 40 // ConvertToVideoFrame().
41 // 41 //
42 // After the content is uploaded to video memory, WebKit will see the video 42 // After the content is uploaded to video memory, WebKit will see the video
43 // frame as textures and will perform the necessary operations for 43 // frame as textures and will perform the necessary operations for
44 // rendering. 44 // rendering.
45 // 45 //
46 // 2. Opaque textures (aka hardware decoding mode). 46 // 2. Opaque textures (aka hardware decoding mode).
47 // In this mode of operation each video frame is backed by some opaque 47 // In this mode of operation each video frame is backed by some opaque
48 // textures. This is used only when hardware video decoding is used. The 48 // textures. This is used only when hardware video decoding is used. The
49 // textures needs to be generated and allocated inside the renderer process 49 // textures needs to be generated and allocated inside the renderer process
50 // first. This will establish a translation between texture ID in the 50 // first. This will establish a translation between texture ID in the
(...skipping 28 matching lines...) Expand all
79 bool memory_mapped, ggl::Context* context); 79 bool memory_mapped, ggl::Context* context);
80 virtual ~Gles2VideoDecodeContext(); 80 virtual ~Gles2VideoDecodeContext();
81 81
82 // media::VideoDecodeContext implementation. 82 // media::VideoDecodeContext implementation.
83 virtual void* GetDevice(); 83 virtual void* GetDevice();
84 virtual void AllocateVideoFrames( 84 virtual void AllocateVideoFrames(
85 int frames_num, size_t width, size_t height, 85 int frames_num, size_t width, size_t height,
86 media::VideoFrame::Format format, 86 media::VideoFrame::Format format,
87 std::vector<scoped_refptr<media::VideoFrame> >* frames_out, Task* task); 87 std::vector<scoped_refptr<media::VideoFrame> >* frames_out, Task* task);
88 virtual void ReleaseAllVideoFrames(); 88 virtual void ReleaseAllVideoFrames();
89 virtual void UploadToVideoFrame(void* buffer, 89 virtual void ConvertToVideoFrame(void* buffer,
90 scoped_refptr<media::VideoFrame> frame, 90 scoped_refptr<media::VideoFrame> frame,
91 Task* task); 91 Task* task);
92 virtual void Destroy(Task* task); 92 virtual void Destroy(Task* task);
93 93
94 // Accessor of the current mode of this decode context. 94 // Accessor of the current mode of this decode context.
95 bool IsMemoryMapped() const { return memory_mapped_; } 95 bool IsMemoryMapped() const { return memory_mapped_; }
96 96
97 private: 97 private:
98 // Message loop for Render Thread. 98 // Message loop for Render Thread.
99 MessageLoop* message_loop_; 99 MessageLoop* message_loop_;
100 100
101 // Type of storage provided by this class. 101 // Type of storage provided by this class.
102 bool memory_mapped_; 102 bool memory_mapped_;
103 103
104 // Pointer to the GLES2 context. 104 // Pointer to the GLES2 context.
105 ggl::Context* context_; 105 ggl::Context* context_;
106 106
107 // VideoFrames allocated. 107 // VideoFrames allocated.
108 std::vector<scoped_refptr<media::VideoFrame> > frames_; 108 std::vector<scoped_refptr<media::VideoFrame> > frames_;
109 109
110 DISALLOW_COPY_AND_ASSIGN(Gles2VideoDecodeContext); 110 DISALLOW_COPY_AND_ASSIGN(Gles2VideoDecodeContext);
111 }; 111 };
112 112
113 #endif // CHROME_RENDERER_MEDIA_GLES2_VIDEO_DECODE_CONTEXT_H_ 113 #endif // CHROME_RENDERER_MEDIA_GLES2_VIDEO_DECODE_CONTEXT_H_
OLDNEW
« no previous file with comments | « chrome/gpu/media/mft_angle_video_device.cc ('k') | chrome/renderer/media/gles2_video_decode_context.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698