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 530 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
541 unsigned char numberOfTemporalLayers; | 541 unsigned char numberOfTemporalLayers; |
542 bool denoisingOn; | 542 bool denoisingOn; |
543 bool frameDroppingOn; | 543 bool frameDroppingOn; |
544 int keyFrameInterval; | 544 int keyFrameInterval; |
545 bool adaptiveQpMode; | 545 bool adaptiveQpMode; |
546 bool automaticResizeOn; | 546 bool automaticResizeOn; |
547 unsigned char numberOfSpatialLayers; | 547 unsigned char numberOfSpatialLayers; |
548 bool flexibleMode; | 548 bool flexibleMode; |
549 }; | 549 }; |
550 | 550 |
| 551 // TODO(magjed): Move this and other H264 related classes out to their own file. |
| 552 namespace H264 { |
| 553 |
| 554 enum Profile { |
| 555 kProfileConstrainedBaseline, |
| 556 kProfileBaseline, |
| 557 kProfileMain, |
| 558 kProfileConstrainedHigh, |
| 559 kProfileHigh, |
| 560 }; |
| 561 |
| 562 } // namespace H264 |
| 563 |
551 // H264 specific. | 564 // H264 specific. |
552 struct VideoCodecH264 { | 565 struct VideoCodecH264 { |
553 bool frameDroppingOn; | 566 bool frameDroppingOn; |
554 int keyFrameInterval; | 567 int keyFrameInterval; |
555 // These are NULL/0 if not externally negotiated. | 568 // These are NULL/0 if not externally negotiated. |
556 const uint8_t* spsData; | 569 const uint8_t* spsData; |
557 size_t spsLen; | 570 size_t spsLen; |
558 const uint8_t* ppsData; | 571 const uint8_t* ppsData; |
559 size_t ppsLen; | 572 size_t ppsLen; |
| 573 H264::Profile profile; |
560 }; | 574 }; |
561 | 575 |
562 // Video codec types | 576 // Video codec types |
563 enum VideoCodecType { | 577 enum VideoCodecType { |
564 kVideoCodecVP8, | 578 kVideoCodecVP8, |
565 kVideoCodecVP9, | 579 kVideoCodecVP9, |
566 kVideoCodecH264, | 580 kVideoCodecH264, |
567 kVideoCodecI420, | 581 kVideoCodecI420, |
568 kVideoCodecRED, | 582 kVideoCodecRED, |
569 kVideoCodecULPFEC, | 583 kVideoCodecULPFEC, |
(...skipping 309 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
879 enum class RtcpMode { kOff, kCompound, kReducedSize }; | 893 enum class RtcpMode { kOff, kCompound, kReducedSize }; |
880 | 894 |
881 enum NetworkState { | 895 enum NetworkState { |
882 kNetworkUp, | 896 kNetworkUp, |
883 kNetworkDown, | 897 kNetworkDown, |
884 }; | 898 }; |
885 | 899 |
886 } // namespace webrtc | 900 } // namespace webrtc |
887 | 901 |
888 #endif // WEBRTC_COMMON_TYPES_H_ | 902 #endif // WEBRTC_COMMON_TYPES_H_ |
OLD | NEW |