Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 93eb48d39b70248c062e90fceb4630a312e46b0d
      
https://github.com/WebKit/WebKit/commit/93eb48d39b70248c062e90fceb4630a312e46b0d
  Author: Byungseon(Sun) Shin <sun.s...@webkit.org>
  Date:   2023-09-06 (Wed, 06 Sep 2023)

  Changed paths:
    M Source/ThirdParty/libwebrtc/Configurations/libwebrtc.xcconfig
    M Source/ThirdParty/libwebrtc/Source/webrtc/api/video/video_codec_type.h
    M Source/ThirdParty/libwebrtc/Source/webrtc/api/video_codecs/video_codec.cc
    M Source/ThirdParty/libwebrtc/Source/webrtc/api/video_codecs/video_codec.h
    M 
Source/ThirdParty/libwebrtc/Source/webrtc/api/video_codecs/video_decoder_software_fallback_wrapper.cc
    M 
Source/ThirdParty/libwebrtc/Source/webrtc/api/video_codecs/video_encoder.cc
    M Source/ThirdParty/libwebrtc/Source/webrtc/api/video_codecs/video_encoder.h
    M Source/ThirdParty/libwebrtc/Source/webrtc/call/rtp_payload_params.cc
    M Source/ThirdParty/libwebrtc/Source/webrtc/common_video/h265/h265_common.cc
    M Source/ThirdParty/libwebrtc/Source/webrtc/common_video/h265/h265_common.h
    M 
Source/ThirdParty/libwebrtc/Source/webrtc/common_video/h265/h265_pps_parser.cc
    M 
Source/ThirdParty/libwebrtc/Source/webrtc/common_video/h265/h265_pps_parser.h
    M 
Source/ThirdParty/libwebrtc/Source/webrtc/common_video/h265/h265_sps_parser.cc
    M 
Source/ThirdParty/libwebrtc/Source/webrtc/common_video/h265/h265_sps_parser.h
    M 
Source/ThirdParty/libwebrtc/Source/webrtc/common_video/h265/h265_vps_parser.cc
    M 
Source/ThirdParty/libwebrtc/Source/webrtc/common_video/h265/h265_vps_parser.h
    M 
Source/ThirdParty/libwebrtc/Source/webrtc/logging/rtc_event_log/rtc_event_log_parser.cc
    M Source/ThirdParty/libwebrtc/Source/webrtc/media/base/media_constants.cc
    M Source/ThirdParty/libwebrtc/Source/webrtc/media/base/media_constants.h
    M 
Source/ThirdParty/libwebrtc/Source/webrtc/media/engine/internal_decoder_factory.cc
    M 
Source/ThirdParty/libwebrtc/Source/webrtc/modules/rtp_rtcp/source/create_video_rtp_depacketizer.cc
    M 
Source/ThirdParty/libwebrtc/Source/webrtc/modules/rtp_rtcp/source/rtp_format.cc
    M 
Source/ThirdParty/libwebrtc/Source/webrtc/modules/rtp_rtcp/source/rtp_format_h265.cc
    M 
Source/ThirdParty/libwebrtc/Source/webrtc/modules/rtp_rtcp/source/rtp_format_h265.h
    M 
Source/ThirdParty/libwebrtc/Source/webrtc/modules/rtp_rtcp/source/rtp_sender_video.cc
    M 
Source/ThirdParty/libwebrtc/Source/webrtc/modules/rtp_rtcp/source/rtp_video_header.h
    A 
Source/ThirdParty/libwebrtc/Source/webrtc/modules/rtp_rtcp/source/video_rtp_depacketizer_h265.cc
    A 
Source/ThirdParty/libwebrtc/Source/webrtc/modules/rtp_rtcp/source/video_rtp_depacketizer_h265.h
    M 
Source/ThirdParty/libwebrtc/Source/webrtc/modules/video_coding/codecs/h265/include/h265_globals.h
    M 
Source/ThirdParty/libwebrtc/Source/webrtc/modules/video_coding/encoded_frame.cc
    M 
Source/ThirdParty/libwebrtc/Source/webrtc/modules/video_coding/h265_vps_sps_pps_tracker.cc
    M 
Source/ThirdParty/libwebrtc/Source/webrtc/modules/video_coding/h265_vps_sps_pps_tracker.h
    M 
Source/ThirdParty/libwebrtc/Source/webrtc/modules/video_coding/include/video_codec_interface.h
    M 
Source/ThirdParty/libwebrtc/Source/webrtc/modules/video_coding/packet_buffer.cc
    M 
Source/ThirdParty/libwebrtc/Source/webrtc/rtc_base/experiments/min_video_bitrate_experiment.cc
    M 
Source/ThirdParty/libwebrtc/Source/webrtc/sdk/objc/components/video_codec/nalu_rewriter.cc
    M 
Source/ThirdParty/libwebrtc/Source/webrtc/sdk/objc/components/video_codec/nalu_rewriter.h
    M Source/ThirdParty/libwebrtc/Source/webrtc/test/scenario/video_stream.cc
    M Source/ThirdParty/libwebrtc/Source/webrtc/test/video_codec_settings.h
    M 
Source/ThirdParty/libwebrtc/Source/webrtc/video/config/video_encoder_config.cc
    M 
Source/ThirdParty/libwebrtc/Source/webrtc/video/config/video_encoder_config.h
    M 
Source/ThirdParty/libwebrtc/Source/webrtc/video/encoder_overshoot_detector.cc
    M 
Source/ThirdParty/libwebrtc/Source/webrtc/video/rtp_video_stream_receiver2.cc
    M 
Source/ThirdParty/libwebrtc/Source/webrtc/video/rtp_video_stream_receiver2.h
    M Source/ThirdParty/libwebrtc/Source/webrtc/video/send_statistics_proxy.cc
    M Source/ThirdParty/libwebrtc/Source/webrtc/video/video_stream_encoder.cc
    M Source/ThirdParty/libwebrtc/libwebrtc.xcodeproj/project.pbxproj

  Log Message:
  -----------
  WebRTC HEVC RFC 7798 RTP Payload Format Implementation
https://bugs.webkit.org/show_bug.cgi?id=258794

Reviewed by Youenn Fablet.

The current WebRTC HEVC is using generic packetization instead of RFC 7789 
Packetization.
So this is about implementing the RFC 7798 Packetization.

Fix HEVC depacketizer issues. (#185)
Enalbing low latency mode for RTC (#169)
Enable HEVC support. (#165)
Fix out-of-bounds write in H265VpsSpsPpsTracker (#163)
Apply fix bitstream logic to RtpVideoStreamReceiver2 (#142)
Add missing CODEC_H265 switch case (#136)
Add HEVC support for iOS/Android (#68)
H265 packetization_mode setting fix (#53)
Add H.265 QP parsing logic (#47)

This patch is extracted from following Open WebRTC Toolkit code changes:
<https://github.com/open-webrtc-toolkit/owt-deps-webrtc/pull/185>
<https://github.com/open-webrtc-toolkit/owt-deps-webrtc/pull/169>
<https://github.com/open-webrtc-toolkit/owt-deps-webrtc/pull/165>
<https://github.com/open-webrtc-toolkit/owt-deps-webrtc/pull/163>
<https://github.com/open-webrtc-toolkit/owt-deps-webrtc/pull/142>
<https://github.com/open-webrtc-toolkit/owt-deps-webrtc/pull/136>
<https://github.com/open-webrtc-toolkit/owt-deps-webrtc/pull/68>
<https://github.com/open-webrtc-toolkit/owt-deps-webrtc/pull/53>
<https://github.com/open-webrtc-toolkit/owt-deps-webrtc/pull/47>

co-authoured by:
taste1981 <jianlin....@intel.com>
jianjunz <jianjun....@intel.com>
Cyril Lashkevich <noto...@gmail.com>
Piasy <xz4...@gmail.com>
ShiJinCheng <874042...@qq.com>
Andreas Unterhuber <andreas.unterhu...@keepinmind.info>
dong-heun <63987238+dong-h...@users.noreply.github.com>

* Source/ThirdParty/libwebrtc/Configurations/libwebrtc.xcconfig:
* Source/ThirdParty/libwebrtc/Source/webrtc/api/video/video_codec_type.h:
* Source/ThirdParty/libwebrtc/Source/webrtc/api/video_codecs/video_codec.cc:
* Source/ThirdParty/libwebrtc/Source/webrtc/api/video_codecs/video_codec.h:
(webrtc::VideoCodecH265::operator!= const):
* 
Source/ThirdParty/libwebrtc/Source/webrtc/api/video_codecs/video_decoder_software_fallback_wrapper.cc:
* Source/ThirdParty/libwebrtc/Source/webrtc/api/video_codecs/video_encoder.cc:
* Source/ThirdParty/libwebrtc/Source/webrtc/api/video_codecs/video_encoder.h:
* Source/ThirdParty/libwebrtc/Source/webrtc/call/rtp_payload_params.cc:
* Source/ThirdParty/libwebrtc/Source/webrtc/common_video/h265/h265_common.cc:
* Source/ThirdParty/libwebrtc/Source/webrtc/common_video/h265/h265_common.h:
* 
Source/ThirdParty/libwebrtc/Source/webrtc/common_video/h265/h265_pps_parser.cc:
* Source/ThirdParty/libwebrtc/Source/webrtc/common_video/h265/h265_pps_parser.h:
* 
Source/ThirdParty/libwebrtc/Source/webrtc/common_video/h265/h265_sps_parser.cc:
* Source/ThirdParty/libwebrtc/Source/webrtc/common_video/h265/h265_sps_parser.h:
* 
Source/ThirdParty/libwebrtc/Source/webrtc/common_video/h265/h265_vps_parser.cc:
* Source/ThirdParty/libwebrtc/Source/webrtc/common_video/h265/h265_vps_parser.h:
* 
Source/ThirdParty/libwebrtc/Source/webrtc/logging/rtc_event_log/rtc_event_log_parser.cc:
* Source/ThirdParty/libwebrtc/Source/webrtc/media/base/media_constants.cc:
* Source/ThirdParty/libwebrtc/Source/webrtc/media/base/media_constants.h:
* 
Source/ThirdParty/libwebrtc/Source/webrtc/media/engine/internal_decoder_factory.cc:
* 
Source/ThirdParty/libwebrtc/Source/webrtc/modules/rtp_rtcp/source/create_video_rtp_depacketizer.cc:
* 
Source/ThirdParty/libwebrtc/Source/webrtc/modules/rtp_rtcp/source/rtp_format.cc:
* 
Source/ThirdParty/libwebrtc/Source/webrtc/modules/rtp_rtcp/source/rtp_format_h265.cc:
* 
Source/ThirdParty/libwebrtc/Source/webrtc/modules/rtp_rtcp/source/rtp_format_h265.h:
(webrtc::RtpPacketizerH265::PacketUnit::PacketUnit):
(webrtc::VideoRtpDepacketizerH265::~VideoRtpDepacketizerH265): Deleted.
* 
Source/ThirdParty/libwebrtc/Source/webrtc/modules/rtp_rtcp/source/rtp_sender_video.cc:
* 
Source/ThirdParty/libwebrtc/Source/webrtc/modules/rtp_rtcp/source/rtp_video_header.h:
* 
Source/ThirdParty/libwebrtc/Source/webrtc/modules/video_coding/codecs/h265/include/h265_globals.h:
* 
Source/ThirdParty/libwebrtc/Source/webrtc/modules/video_coding/encoded_frame.cc:
* 
Source/ThirdParty/libwebrtc/Source/webrtc/modules/video_coding/h265_vps_sps_pps_tracker.cc:
* 
Source/ThirdParty/libwebrtc/Source/webrtc/modules/video_coding/h265_vps_sps_pps_tracker.h:
* 
Source/ThirdParty/libwebrtc/Source/webrtc/modules/video_coding/include/video_codec_interface.h:
* 
Source/ThirdParty/libwebrtc/Source/webrtc/modules/video_coding/packet_buffer.cc:
* 
Source/ThirdParty/libwebrtc/Source/webrtc/rtc_base/experiments/min_video_bitrate_experiment.cc:
* 
Source/ThirdParty/libwebrtc/Source/webrtc/sdk/objc/components/video_codec/nalu_rewriter.cc:
* 
Source/ThirdParty/libwebrtc/Source/webrtc/sdk/objc/components/video_codec/nalu_rewriter.h:
* Source/ThirdParty/libwebrtc/Source/webrtc/test/scenario/video_stream.cc:
* Source/ThirdParty/libwebrtc/Source/webrtc/test/video_codec_settings.h:
(webrtc::test::CodecSettings):
* 
Source/ThirdParty/libwebrtc/Source/webrtc/video/config/video_encoder_config.cc:
* Source/ThirdParty/libwebrtc/Source/webrtc/video/config/video_encoder_config.h:
* Source/ThirdParty/libwebrtc/Source/webrtc/video/encoder_overshoot_detector.cc:
* Source/ThirdParty/libwebrtc/Source/webrtc/video/rtp_video_stream_receiver2.cc:
* Source/ThirdParty/libwebrtc/Source/webrtc/video/rtp_video_stream_receiver2.h:
* Source/ThirdParty/libwebrtc/Source/webrtc/video/send_statistics_proxy.cc:
* Source/ThirdParty/libwebrtc/Source/webrtc/video/video_stream_encoder.cc:
* Source/ThirdParty/libwebrtc/libwebrtc.xcodeproj/project.pbxproj:

Canonical link: https://commits.webkit.org/267677@main


_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to