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

Side by Side Diff: common_video/include/video_frame_buffer.h

Issue 2951033003: [EXPERIMENTAL] Generic stereo codec with index header sending single frames
Patch Set: Rebase and add external codec support. Created 3 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 | « common_types.cc ('k') | common_video/video_frame.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 /* 1 /*
2 * Copyright (c) 2015 The WebRTC project authors. All Rights Reserved. 2 * Copyright (c) 2015 The WebRTC project authors. All Rights Reserved.
3 * 3 *
4 * Use of this source code is governed by a BSD-style license 4 * Use of this source code is governed by a BSD-style license
5 * that can be found in the LICENSE file in the root of the source 5 * that can be found in the LICENSE file in the root of the source
6 * tree. An additional intellectual property rights grant can be found 6 * tree. An additional intellectual property rights grant can be found
7 * in the file PATENTS. All contributing project authors may 7 * in the file PATENTS. All contributing project authors may
8 * be found in the AUTHORS file in the root of the source tree. 8 * be found in the AUTHORS file in the root of the source tree.
9 */ 9 */
10 10
(...skipping 38 matching lines...) Expand 10 before | Expand all | Expand 10 after
49 const int height_; 49 const int height_;
50 const uint8_t* const y_plane_; 50 const uint8_t* const y_plane_;
51 const uint8_t* const u_plane_; 51 const uint8_t* const u_plane_;
52 const uint8_t* const v_plane_; 52 const uint8_t* const v_plane_;
53 const int y_stride_; 53 const int y_stride_;
54 const int u_stride_; 54 const int u_stride_;
55 const int v_stride_; 55 const int v_stride_;
56 rtc::Callback0<void> no_longer_used_cb_; 56 rtc::Callback0<void> no_longer_used_cb_;
57 }; 57 };
58 58
59 class WrappedI420ABuffer : public I420BufferInterface {
60 public:
61 WrappedI420ABuffer(rtc::scoped_refptr<webrtc::VideoFrameBuffer> buffer,
62 const uint8_t* a_plane,
63 int a_stride,
64 const rtc::Callback0<void>& alpha_no_longer_used_cb);
65 int width() const override;
66 int height() const override;
67
68 const uint8_t* DataY() const override;
69 const uint8_t* DataU() const override;
70 const uint8_t* DataV() const override;
71 const uint8_t* DataA() const override;
72 int StrideY() const override;
73 int StrideU() const override;
74 int StrideV() const override;
75 int StrideA() const override;
76
77 private:
78 friend class rtc::RefCountedObject<WrappedI420ABuffer>;
79 ~WrappedI420ABuffer() override;
80
81 rtc::scoped_refptr<webrtc::VideoFrameBuffer> buffer_;
82 rtc::scoped_refptr<webrtc::I420BufferInterface> i420_buffer_;
83 const uint8_t* const a_plane_;
84 const int a_stride_;
85 rtc::Callback0<void> alpha_no_longer_used_cb_;
86 };
87
59 rtc::scoped_refptr<I420BufferInterface> WrapI420Buffer( 88 rtc::scoped_refptr<I420BufferInterface> WrapI420Buffer(
60 int width, 89 int width,
61 int height, 90 int height,
62 const uint8_t* y_plane, 91 const uint8_t* y_plane,
63 int y_stride, 92 int y_stride,
64 const uint8_t* u_plane, 93 const uint8_t* u_plane,
65 int u_stride, 94 int u_stride,
66 const uint8_t* v_plane, 95 const uint8_t* v_plane,
67 int v_stride, 96 int v_stride,
68 const rtc::Callback0<void>& no_longer_used); 97 const rtc::Callback0<void>& no_longer_used);
(...skipping 17 matching lines...) Expand all
86 int y_stride, 115 int y_stride,
87 const uint8_t* u_plane, 116 const uint8_t* u_plane,
88 int u_stride, 117 int u_stride,
89 const uint8_t* v_plane, 118 const uint8_t* v_plane,
90 int v_stride, 119 int v_stride,
91 const rtc::Callback0<void>& no_longer_used); 120 const rtc::Callback0<void>& no_longer_used);
92 121
93 } // namespace webrtc 122 } // namespace webrtc
94 123
95 #endif // COMMON_VIDEO_INCLUDE_VIDEO_FRAME_BUFFER_H_ 124 #endif // COMMON_VIDEO_INCLUDE_VIDEO_FRAME_BUFFER_H_
OLDNEW
« no previous file with comments | « common_types.cc ('k') | common_video/video_frame.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698