OLD | NEW |
1 /* | 1 /* |
2 * Copyright (c) 2012 The WebRTC project authors. All Rights Reserved. | 2 * Copyright (c) 2012 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 241 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
252 // that will be used. When we know the payload type insert the correct | 252 // that will be used. When we know the payload type insert the correct |
253 // sps/pps into the tracker. | 253 // sps/pps into the tracker. |
254 if (packet.payloadType != last_payload_type_) { | 254 if (packet.payloadType != last_payload_type_) { |
255 last_payload_type_ = packet.payloadType; | 255 last_payload_type_ = packet.payloadType; |
256 InsertSpsPpsIntoTracker(packet.payloadType); | 256 InsertSpsPpsIntoTracker(packet.payloadType); |
257 } | 257 } |
258 | 258 |
259 switch (tracker_.CopyAndFixBitstream(&packet)) { | 259 switch (tracker_.CopyAndFixBitstream(&packet)) { |
260 case video_coding::H264SpsPpsTracker::kRequestKeyframe: | 260 case video_coding::H264SpsPpsTracker::kRequestKeyframe: |
261 keyframe_request_sender_->RequestKeyFrame(); | 261 keyframe_request_sender_->RequestKeyFrame(); |
262 RTC_FALLTHROUGH(); | 262 FALLTHROUGH(); |
263 case video_coding::H264SpsPpsTracker::kDrop: | 263 case video_coding::H264SpsPpsTracker::kDrop: |
264 return 0; | 264 return 0; |
265 case video_coding::H264SpsPpsTracker::kInsert: | 265 case video_coding::H264SpsPpsTracker::kInsert: |
266 break; | 266 break; |
267 } | 267 } |
268 | 268 |
269 } else { | 269 } else { |
270 uint8_t* data = new uint8_t[packet.sizeBytes]; | 270 uint8_t* data = new uint8_t[packet.sizeBytes]; |
271 memcpy(data, packet.dataPtr, packet.sizeBytes); | 271 memcpy(data, packet.dataPtr, packet.sizeBytes); |
272 packet.dataPtr = data; | 272 packet.dataPtr = data; |
(...skipping 402 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
675 return; | 675 return; |
676 | 676 |
677 if (!sprop_decoder.DecodeSprop(sprop_base64_it->second.c_str())) | 677 if (!sprop_decoder.DecodeSprop(sprop_base64_it->second.c_str())) |
678 return; | 678 return; |
679 | 679 |
680 tracker_.InsertSpsPpsNalus(sprop_decoder.sps_nalu(), | 680 tracker_.InsertSpsPpsNalus(sprop_decoder.sps_nalu(), |
681 sprop_decoder.pps_nalu()); | 681 sprop_decoder.pps_nalu()); |
682 } | 682 } |
683 | 683 |
684 } // namespace webrtc | 684 } // namespace webrtc |
OLD | NEW |