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

Side by Side Diff: webrtc/common_video/include/frame_callback.h

Issue 2668763004: Added VP8 simulcast tests. Fixed analyzer to correctly infer timestamps. (Closed)
Patch Set: reapplyting patch to clean branch Created 3 years, 10 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 | « no previous file | webrtc/video/full_stack_tests.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) 2013 The WebRTC project authors. All Rights Reserved. 2 * Copyright (c) 2013 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
11 #ifndef WEBRTC_COMMON_VIDEO_INCLUDE_FRAME_CALLBACK_H_ 11 #ifndef WEBRTC_COMMON_VIDEO_INCLUDE_FRAME_CALLBACK_H_
12 #define WEBRTC_COMMON_VIDEO_INCLUDE_FRAME_CALLBACK_H_ 12 #define WEBRTC_COMMON_VIDEO_INCLUDE_FRAME_CALLBACK_H_
13 13
14 #include <stddef.h> 14 #include <stddef.h>
15 #include <stdint.h> 15 #include <stdint.h>
16 16
17 #include "webrtc/common_types.h" 17 #include "webrtc/common_types.h"
18 18
19 namespace webrtc { 19 namespace webrtc {
20 20
21 class VideoFrame; 21 class VideoFrame;
22 22
23 struct EncodedFrame { 23 struct EncodedFrame {
24 public: 24 public:
25 EncodedFrame() : data_(NULL), length_(0), frame_type_(kEmptyFrame) {} 25 EncodedFrame()
26 EncodedFrame(const uint8_t* data, size_t length, FrameType frame_type) 26 : data_(nullptr),
27 : data_(data), length_(length), frame_type_(frame_type) {} 27 length_(0),
28 frame_type_(kEmptyFrame),
29 encoded_width_(0),
30 encoded_height_(0),
31 timestamp_(0) {}
32 EncodedFrame(const uint8_t* data,
33 size_t length,
34 FrameType frame_type,
35 uint32_t encoded_width,
36 uint32_t encoded_height,
37 uint32_t timestamp)
38 : data_(data),
39 length_(length),
40 frame_type_(frame_type),
41 encoded_width_(encoded_width),
42 encoded_height_(encoded_height),
43 timestamp_(timestamp) {}
28 44
29 const uint8_t* data_; 45 const uint8_t* data_;
30 const size_t length_; 46 const size_t length_;
31 const FrameType frame_type_; 47 const FrameType frame_type_;
48 const uint32_t encoded_width_;
49 const uint32_t encoded_height_;
50 const uint32_t timestamp_;
32 }; 51 };
33 52
34 class I420FrameCallback { 53 class I420FrameCallback {
35 public: 54 public:
36 // This function is called with a I420 frame allowing the user to modify the 55 // This function is called with a I420 frame allowing the user to modify the
37 // frame content. 56 // frame content.
38 virtual void FrameCallback(VideoFrame* video_frame) = 0; 57 virtual void FrameCallback(VideoFrame* video_frame) = 0;
39 58
40 protected: 59 protected:
41 virtual ~I420FrameCallback() {} 60 virtual ~I420FrameCallback() {}
42 }; 61 };
43 62
44 class EncodedFrameObserver { 63 class EncodedFrameObserver {
45 public: 64 public:
46 virtual void EncodedFrameCallback(const EncodedFrame& encoded_frame) = 0; 65 virtual void EncodedFrameCallback(const EncodedFrame& encoded_frame) = 0;
47 virtual void OnEncodeTiming(int64_t capture_ntp_ms, int encode_duration_ms) {} 66 virtual void OnEncodeTiming(int64_t capture_ntp_ms, int encode_duration_ms) {}
48 67
49 protected: 68 protected:
50 virtual ~EncodedFrameObserver() {} 69 virtual ~EncodedFrameObserver() {}
51 }; 70 };
52 71
53 } // namespace webrtc 72 } // namespace webrtc
54 73
55 #endif // WEBRTC_COMMON_VIDEO_INCLUDE_FRAME_CALLBACK_H_ 74 #endif // WEBRTC_COMMON_VIDEO_INCLUDE_FRAME_CALLBACK_H_
OLDNEW
« no previous file with comments | « no previous file | webrtc/video/full_stack_tests.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698