OLD | NEW |
1 /* | 1 /* |
2 * libjingle | 2 * libjingle |
3 * Copyright 2013 Google Inc. | 3 * Copyright 2013 Google Inc. |
4 * | 4 * |
5 * Redistribution and use in source and binary forms, with or without | 5 * Redistribution and use in source and binary forms, with or without |
6 * modification, are permitted provided that the following conditions are met: | 6 * modification, are permitted provided that the following conditions are met: |
7 * | 7 * |
8 * 1. Redistributions of source code must retain the above copyright notice, | 8 * 1. Redistributions of source code must retain the above copyright notice, |
9 * this list of conditions and the following disclaimer. | 9 * this list of conditions and the following disclaimer. |
10 * 2. Redistributions in binary form must reproduce the above copyright notice, | 10 * 2. Redistributions in binary form must reproduce the above copyright notice, |
(...skipping 11 matching lines...) Expand all Loading... |
22 * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, | 22 * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, |
23 * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR | 23 * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR |
24 * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF | 24 * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF |
25 * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | 25 * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
26 */ | 26 */ |
27 | 27 |
28 #import "RTCI420Frame.h" | 28 #import "RTCI420Frame.h" |
29 | 29 |
30 #include <memory> | 30 #include <memory> |
31 | 31 |
32 #include "webrtc/media/engine/webrtcvideoframe.h" | 32 #include "webrtc/media/base/videoframe.h" |
33 | 33 |
34 @implementation RTCI420Frame { | 34 @implementation RTCI420Frame { |
35 std::unique_ptr<cricket::VideoFrame> _videoFrame; | 35 std::unique_ptr<cricket::VideoFrame> _videoFrame; |
36 } | 36 } |
37 | 37 |
38 - (NSUInteger)width { | 38 - (NSUInteger)width { |
39 return _videoFrame->width(); | 39 return _videoFrame->width(); |
40 } | 40 } |
41 | 41 |
42 - (NSUInteger)height { | 42 - (NSUInteger)height { |
(...skipping 48 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
91 } | 91 } |
92 | 92 |
93 @end | 93 @end |
94 | 94 |
95 @implementation RTCI420Frame (Internal) | 95 @implementation RTCI420Frame (Internal) |
96 | 96 |
97 - (instancetype)initWithVideoFrame:(cricket::VideoFrame*)videoFrame { | 97 - (instancetype)initWithVideoFrame:(cricket::VideoFrame*)videoFrame { |
98 if (self = [super init]) { | 98 if (self = [super init]) { |
99 // Keep a shallow copy of the video frame. The underlying frame buffer is | 99 // Keep a shallow copy of the video frame. The underlying frame buffer is |
100 // not copied. | 100 // not copied. |
101 _videoFrame.reset(new cricket::WebRtcVideoFrame( | 101 _videoFrame.reset(videoFrame->Copy()); |
102 videoFrame->video_frame_buffer(), | |
103 videoFrame->rotation(), | |
104 videoFrame->timestamp_us())); | |
105 } | 102 } |
106 return self; | 103 return self; |
107 } | 104 } |
108 | 105 |
109 @end | 106 @end |
OLD | NEW |