[WebRTC][GS] Port upstream H265 packetizer and depacketizer 75/311775/3
authorMichal Jurkiewicz <m.jurkiewicz@samsung.com>
Fri, 24 May 2024 10:08:31 +0000 (12:08 +0200)
committerBot Blink <blinkbot@samsung.com>
Tue, 28 May 2024 13:09:08 +0000 (13:09 +0000)
commit6ae47f3a67c22df7f140a235d0ffe9a9c51cf94f
treef5dbcc5d02855808d652bf3289620b59160ddcfb
parent42413285f88cf32cc2d22d6bf46db0efa0dacd77
[WebRTC][GS] Port upstream H265 packetizer and depacketizer

Port of the following upstream patches:
* Add rtp packetizer for H265
  https://webrtc-review.googlesource.com/c/src/+/318005
* Add CopyOnWriteBuffer::empty accessor
  https://webrtc-review.googlesource.com/c/src/+/328382
* Fix fuzzing issue for h265 bitstream parser
  https://webrtc-review.googlesource.com/c/src/+/333942
* Add RTP depacketizer for H265
  https://webrtc-review.googlesource.com/c/src/+/325660
* Fix H.265 bitstream parser incorrect PPS reference.
  https://webrtc-review.googlesource.com/c/src/+/337080
* Export h.265 bitstream parser APIs.
  https://webrtc-review.googlesource.com/c/src/+/340004
* Remove wrong range check for CurrRpsIdx and fix its naming.
  https://webrtc-review.googlesource.com/c/src/+/347764

Bug: https://jira-eu.sec.samsung.net/browse/VDGAME-494
Change-Id: Id94522a354921868628d85331c4af9d12da86dae
Signed-off-by: Michal Jurkiewicz <m.jurkiewicz@samsung.com>
21 files changed:
third_party/webrtc/common_video/h265/h265_bitstream_parser.cc
third_party/webrtc/common_video/h265/h265_bitstream_parser.h
third_party/webrtc/common_video/h265/h265_common.h
third_party/webrtc/common_video/h265/h265_pps_parser.h
third_party/webrtc/common_video/h265/h265_sps_parser.h
third_party/webrtc/common_video/h265/h265_vps_parser.h
third_party/webrtc/modules/rtp_rtcp/BUILD.gn
third_party/webrtc/modules/rtp_rtcp/source/create_video_rtp_depacketizer.cc
third_party/webrtc/modules/rtp_rtcp/source/rtp_format.cc
third_party/webrtc/modules/rtp_rtcp/source/rtp_packet_h265_common.h [new file with mode: 0644]
third_party/webrtc/modules/rtp_rtcp/source/rtp_packetizer_h265.cc [new file with mode: 0644]
third_party/webrtc/modules/rtp_rtcp/source/rtp_packetizer_h265.h [new file with mode: 0644]
third_party/webrtc/modules/rtp_rtcp/source/rtp_packetizer_h265_unittest.cc [new file with mode: 0644]
third_party/webrtc/modules/rtp_rtcp/source/video_rtp_depacketizer_h265.cc [new file with mode: 0644]
third_party/webrtc/modules/rtp_rtcp/source/video_rtp_depacketizer_h265.h [new file with mode: 0644]
third_party/webrtc/modules/rtp_rtcp/source/video_rtp_depacketizer_h265_unittest.cc [new file with mode: 0644]
third_party/webrtc/rtc_base/copy_on_write_buffer.h
third_party/webrtc/rtc_base/copy_on_write_buffer_unittest.cc
third_party/webrtc/test/fuzzers/BUILD.gn
third_party/webrtc/test/fuzzers/h265_depacketizer_fuzzer.cc [new file with mode: 0644]
third_party/webrtc/video/rtp_video_stream_receiver2.cc