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

Side by Side Diff: webrtc/modules/video_coding/frame_object.h

Issue 2468183002: RtpFrameObject::GetCodecHeader now return rtc::Optional<RTPVideoTypeHeader> (Closed)
Patch Set: Created 4 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
« no previous file with comments | « no previous file | webrtc/modules/video_coding/frame_object.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) 2016 The WebRTC project authors. All Rights Reserved. 2 * Copyright (c) 2016 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_MODULES_VIDEO_CODING_FRAME_OBJECT_H_ 11 #ifndef WEBRTC_MODULES_VIDEO_CODING_FRAME_OBJECT_H_
12 #define WEBRTC_MODULES_VIDEO_CODING_FRAME_OBJECT_H_ 12 #define WEBRTC_MODULES_VIDEO_CODING_FRAME_OBJECT_H_
13 13
14 #include "webrtc/base/optional.h"
14 #include "webrtc/common_types.h" 15 #include "webrtc/common_types.h"
15 #include "webrtc/modules/include/module_common_types.h" 16 #include "webrtc/modules/include/module_common_types.h"
16 #include "webrtc/modules/video_coding/encoded_frame.h" 17 #include "webrtc/modules/video_coding/encoded_frame.h"
17 18
18 namespace webrtc { 19 namespace webrtc {
19 namespace video_coding { 20 namespace video_coding {
20 21
21 class FrameObject : public webrtc::VCMEncodedFrame { 22 class FrameObject : public webrtc::VCMEncodedFrame {
22 public: 23 public:
23 static const uint8_t kMaxFrameReferences = 5; 24 static const uint8_t kMaxFrameReferences = 5;
(...skipping 40 matching lines...) Expand 10 before | Expand all | Expand 10 after
64 ~RtpFrameObject(); 65 ~RtpFrameObject();
65 uint16_t first_seq_num() const; 66 uint16_t first_seq_num() const;
66 uint16_t last_seq_num() const; 67 uint16_t last_seq_num() const;
67 int times_nacked() const; 68 int times_nacked() const;
68 enum FrameType frame_type() const; 69 enum FrameType frame_type() const;
69 VideoCodecType codec_type() const; 70 VideoCodecType codec_type() const;
70 bool GetBitstream(uint8_t* destination) const override; 71 bool GetBitstream(uint8_t* destination) const override;
71 uint32_t Timestamp() const override; 72 uint32_t Timestamp() const override;
72 int64_t ReceivedTime() const override; 73 int64_t ReceivedTime() const override;
73 int64_t RenderTime() const override; 74 int64_t RenderTime() const override;
74 RTPVideoTypeHeader* GetCodecHeader() const; 75 rtc::Optional<RTPVideoTypeHeader> GetCodecHeader() const;
terelius 2016/11/02 13:08:18 How large is the RTPVideoTypeHeader, and how often
philipel 2016/11/02 13:12:24 It is 1624 bytes, and it is called ~1 time per fra
terelius 2016/11/02 13:18:38 A 1.5 kB header seems like a lot. Does it have to
philipel 2016/11/02 13:26:14 It is quite large (in fact it is larger than the b
terelius 2016/11/02 13:34:49 Ok. Can you file a feature request in the bugtrack
75 76
76 private: 77 private:
77 rtc::scoped_refptr<PacketBuffer> packet_buffer_; 78 rtc::scoped_refptr<PacketBuffer> packet_buffer_;
78 enum FrameType frame_type_; 79 enum FrameType frame_type_;
79 VideoCodecType codec_type_; 80 VideoCodecType codec_type_;
80 uint16_t first_seq_num_; 81 uint16_t first_seq_num_;
81 uint16_t last_seq_num_; 82 uint16_t last_seq_num_;
82 uint32_t timestamp_; 83 uint32_t timestamp_;
83 int64_t received_time_; 84 int64_t received_time_;
84 85
85 // Equal to times nacked of the packet with the highet times nacked 86 // Equal to times nacked of the packet with the highet times nacked
86 // belonging to this frame. 87 // belonging to this frame.
87 int times_nacked_; 88 int times_nacked_;
88 }; 89 };
89 90
90 } // namespace video_coding 91 } // namespace video_coding
91 } // namespace webrtc 92 } // namespace webrtc
92 93
93 #endif // WEBRTC_MODULES_VIDEO_CODING_FRAME_OBJECT_H_ 94 #endif // WEBRTC_MODULES_VIDEO_CODING_FRAME_OBJECT_H_
OLDNEW
« no previous file with comments | « no previous file | webrtc/modules/video_coding/frame_object.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698