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

Side by Side Diff: media/gpu/ipc/common/media_messages.h

Issue 2345123002: Attach color space information to hardware decoded NV12 video frames. (Closed)
Patch Set: minor bugfix Created 4 years, 2 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
« no previous file with comments | « media/gpu/ipc/common/BUILD.gn ('k') | media/gpu/ipc/service/BUILD.gn » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2016 The Chromium Authors. All rights reserved. 1 // Copyright 2016 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 // Multiply-included message file, hence no include guard here, but see below 5 // Multiply-included message file, hence no include guard here, but see below
6 // for a much smaller-than-usual include guard section. 6 // for a much smaller-than-usual include guard section.
7 7
8 #include <stdint.h> 8 #include <stdint.h>
9 9
10 #include "base/unguessable_token.h" 10 #include "base/unguessable_token.h"
11 #include "gpu/config/gpu_info.h" 11 #include "gpu/config/gpu_info.h"
12 #include "gpu/ipc/common/gpu_param_traits_macros.h" 12 #include "gpu/ipc/common/gpu_param_traits_macros.h"
13 #include "ipc/ipc_message_macros.h" 13 #include "ipc/ipc_message_macros.h"
14 #include "ipc/param_traits_macros.h" 14 #include "ipc/param_traits_macros.h"
15 #include "media/gpu/ipc/common/media_param_traits.h" 15 #include "media/gpu/ipc/common/media_param_traits.h"
16 #include "media/video/jpeg_decode_accelerator.h" 16 #include "media/video/jpeg_decode_accelerator.h"
17 #include "media/video/video_decode_accelerator.h" 17 #include "media/video/video_decode_accelerator.h"
18 #include "media/video/video_encode_accelerator.h" 18 #include "media/video/video_encode_accelerator.h"
19 #include "ui/gfx/ipc/color/gfx_param_traits.h"
19 #include "ui/gfx/ipc/gfx_param_traits.h" 20 #include "ui/gfx/ipc/gfx_param_traits.h"
20 21
21 #define IPC_MESSAGE_START MediaMsgStart 22 #define IPC_MESSAGE_START MediaMsgStart
22 23
23 IPC_STRUCT_BEGIN(AcceleratedJpegDecoderMsg_Decode_Params) 24 IPC_STRUCT_BEGIN(AcceleratedJpegDecoderMsg_Decode_Params)
24 IPC_STRUCT_MEMBER(media::BitstreamBuffer, input_buffer) 25 IPC_STRUCT_MEMBER(media::BitstreamBuffer, input_buffer)
25 IPC_STRUCT_MEMBER(gfx::Size, coded_size) 26 IPC_STRUCT_MEMBER(gfx::Size, coded_size)
26 IPC_STRUCT_MEMBER(base::SharedMemoryHandle, output_video_frame_handle) 27 IPC_STRUCT_MEMBER(base::SharedMemoryHandle, output_video_frame_handle)
27 IPC_STRUCT_MEMBER(uint32_t, output_buffer_size) 28 IPC_STRUCT_MEMBER(uint32_t, output_buffer_size)
28 IPC_STRUCT_END() 29 IPC_STRUCT_END()
29 30
30 IPC_STRUCT_BEGIN(AcceleratedVideoEncoderMsg_Encode_Params) 31 IPC_STRUCT_BEGIN(AcceleratedVideoEncoderMsg_Encode_Params)
31 IPC_STRUCT_MEMBER(int32_t, frame_id) 32 IPC_STRUCT_MEMBER(int32_t, frame_id)
32 IPC_STRUCT_MEMBER(base::TimeDelta, timestamp) 33 IPC_STRUCT_MEMBER(base::TimeDelta, timestamp)
33 IPC_STRUCT_MEMBER(base::SharedMemoryHandle, buffer_handle) 34 IPC_STRUCT_MEMBER(base::SharedMemoryHandle, buffer_handle)
34 IPC_STRUCT_MEMBER(uint32_t, buffer_offset) 35 IPC_STRUCT_MEMBER(uint32_t, buffer_offset)
35 IPC_STRUCT_MEMBER(uint32_t, buffer_size) 36 IPC_STRUCT_MEMBER(uint32_t, buffer_size)
36 IPC_STRUCT_MEMBER(bool, force_keyframe) 37 IPC_STRUCT_MEMBER(bool, force_keyframe)
37 IPC_STRUCT_END() 38 IPC_STRUCT_END()
38 39
39 IPC_STRUCT_BEGIN(AcceleratedVideoEncoderMsg_Encode_Params2) 40 IPC_STRUCT_BEGIN(AcceleratedVideoEncoderMsg_Encode_Params2)
40 IPC_STRUCT_MEMBER(int32_t, frame_id) 41 IPC_STRUCT_MEMBER(int32_t, frame_id)
41 IPC_STRUCT_MEMBER(base::TimeDelta, timestamp) 42 IPC_STRUCT_MEMBER(base::TimeDelta, timestamp)
42 IPC_STRUCT_MEMBER(std::vector<gfx::GpuMemoryBufferHandle>, 43 IPC_STRUCT_MEMBER(std::vector<gfx::GpuMemoryBufferHandle>,
43 gpu_memory_buffer_handles) 44 gpu_memory_buffer_handles)
44 IPC_STRUCT_MEMBER(gfx::Size, size) 45 IPC_STRUCT_MEMBER(gfx::Size, size)
45 IPC_STRUCT_MEMBER(bool, force_keyframe) 46 IPC_STRUCT_MEMBER(bool, force_keyframe)
46 IPC_STRUCT_END() 47 IPC_STRUCT_END()
47 48
49 IPC_STRUCT_BEGIN(AcceleratedVideoDecoderHostMsg_PictureReady_Params)
50 IPC_STRUCT_MEMBER(int32_t, picture_buffer_id)
51 IPC_STRUCT_MEMBER(int32_t, bitstream_buffer_id)
52 IPC_STRUCT_MEMBER(gfx::Rect, visible_rect)
53 IPC_STRUCT_MEMBER(gfx::ColorSpace, color_space)
54 IPC_STRUCT_MEMBER(bool, allow_overlay)
55 IPC_STRUCT_MEMBER(bool, size_changed)
56 IPC_STRUCT_END()
57
48 //------------------------------------------------------------------------------ 58 //------------------------------------------------------------------------------
49 // Utility Messages 59 // Utility Messages
50 60
51 // Sent from Renderer to GPU process to request a token identifying the channel. 61 // Sent from Renderer to GPU process to request a token identifying the channel.
52 // These tokens can be used to prove ownership of the channel. The intended use 62 // These tokens can be used to prove ownership of the channel. The intended use
53 // case is to share the command buffer with MojoMediaApplication. 63 // case is to share the command buffer with MojoMediaApplication.
54 IPC_SYNC_MESSAGE_CONTROL0_1(GpuCommandBufferMsg_GetChannelToken, 64 IPC_SYNC_MESSAGE_CONTROL0_1(GpuCommandBufferMsg_GetChannelToken,
55 base::UnguessableToken /* channel_token */) 65 base::UnguessableToken /* channel_token */)
56 66
57 //------------------------------------------------------------------------------ 67 //------------------------------------------------------------------------------
(...skipping 55 matching lines...) Expand 10 before | Expand all | Expand 10 after
113 uint32_t, /* Number of textures per frame */ 123 uint32_t, /* Number of textures per frame */
114 gfx::Size, /* Requested size of buffer */ 124 gfx::Size, /* Requested size of buffer */
115 uint32_t) /* Texture target */ 125 uint32_t) /* Texture target */
116 126
117 // Decoder reports that a picture is ready and buffer does not need to be passed 127 // Decoder reports that a picture is ready and buffer does not need to be passed
118 // back to the decoder. 128 // back to the decoder.
119 IPC_MESSAGE_ROUTED1(AcceleratedVideoDecoderHostMsg_DismissPictureBuffer, 129 IPC_MESSAGE_ROUTED1(AcceleratedVideoDecoderHostMsg_DismissPictureBuffer,
120 int32_t) /* Picture buffer ID */ 130 int32_t) /* Picture buffer ID */
121 131
122 // Decoder reports that a picture is ready. 132 // Decoder reports that a picture is ready.
123 IPC_MESSAGE_ROUTED5(AcceleratedVideoDecoderHostMsg_PictureReady, 133 IPC_MESSAGE_ROUTED1(AcceleratedVideoDecoderHostMsg_PictureReady,
124 int32_t, /* Picture buffer ID */ 134 AcceleratedVideoDecoderHostMsg_PictureReady_Params)
125 int32_t, /* Bitstream buffer ID */
126 gfx::Rect, /* Visible rectangle */
127 bool, /* Buffer is HW overlay capable */
128 bool) /* VDA updated picture size */
129 135
130 // Confirm decoder has been flushed. 136 // Confirm decoder has been flushed.
131 IPC_MESSAGE_ROUTED0(AcceleratedVideoDecoderHostMsg_FlushDone) 137 IPC_MESSAGE_ROUTED0(AcceleratedVideoDecoderHostMsg_FlushDone)
132 138
133 // Confirm decoder has been reset. 139 // Confirm decoder has been reset.
134 IPC_MESSAGE_ROUTED0(AcceleratedVideoDecoderHostMsg_ResetDone) 140 IPC_MESSAGE_ROUTED0(AcceleratedVideoDecoderHostMsg_ResetDone)
135 141
136 // Video decoder has encountered an error. 142 // Video decoder has encountered an error.
137 IPC_MESSAGE_ROUTED1(AcceleratedVideoDecoderHostMsg_ErrorNotification, 143 IPC_MESSAGE_ROUTED1(AcceleratedVideoDecoderHostMsg_ErrorNotification,
138 uint32_t /* Error ID */) 144 uint32_t /* Error ID */)
(...skipping 86 matching lines...) Expand 10 before | Expand all | Expand 10 after
225 IPC_MESSAGE_ROUTED0(AcceleratedJpegDecoderMsg_Destroy) 231 IPC_MESSAGE_ROUTED0(AcceleratedJpegDecoderMsg_Destroy)
226 232
227 //------------------------------------------------------------------------------ 233 //------------------------------------------------------------------------------
228 // Accelerated JPEG Decoder Host Messages 234 // Accelerated JPEG Decoder Host Messages
229 // These messages are sent from the GPU process to Browser process. 235 // These messages are sent from the GPU process to Browser process.
230 // 236 //
231 // Report decode status. 237 // Report decode status.
232 IPC_MESSAGE_ROUTED2(AcceleratedJpegDecoderHostMsg_DecodeAck, 238 IPC_MESSAGE_ROUTED2(AcceleratedJpegDecoderHostMsg_DecodeAck,
233 int32_t, /* bitstream_buffer_id */ 239 int32_t, /* bitstream_buffer_id */
234 media::JpegDecodeAccelerator::Error /* error */) 240 media::JpegDecodeAccelerator::Error /* error */)
OLDNEW
« no previous file with comments | « media/gpu/ipc/common/BUILD.gn ('k') | media/gpu/ipc/service/BUILD.gn » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698