Bug 258794 - WebRTC HEVC RFC 7798 RTP Payload Format Implementation
Summary: WebRTC HEVC RFC 7798 RTP Payload Format Implementation
Status: RESOLVED FIXED
Alias: None
Product: WebKit
Classification: Unclassified
Component: WebRTC (show other bugs)
Version: Safari 16
Hardware: Unspecified Unspecified
: P2 Normal
Assignee: Diego Pino
URL:
Keywords: InRadar
Depends on:
Blocks: 263935 264019 264021 264300
  Show dependency treegraph
 
Reported: 2023-07-03 00:20 PDT by Byungseon(Sun) Shin
Modified: 2023-11-06 15:50 PST (History)
6 users (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Byungseon(Sun) Shin 2023-07-03 00:20:13 PDT
The current WebRTC HEVC is using generic packetization instead of RFC 7789 Packetization.
So this is about implementing the RFC 7798 Packetization.
Comment 1 Byungseon(Sun) Shin 2023-07-03 00:33:11 PDT
Pull request: https://github.com/WebKit/WebKit/pull/15494
Comment 2 Radar WebKit Bug Importer 2023-07-10 00:21:20 PDT
<rdar://problem/112001659>
Comment 3 Byungseon(Sun) Shin 2023-07-25 11:19:54 PDT
Related task in webrtc official repo.
- https://bugs.chromium.org/p/webrtc/issues/detail?id=13485
Comment 4 EWS 2023-09-06 09:48:32 PDT
Committed 267677@main (93eb48d39b70): <https://commits.webkit.org/267677@main>

Reviewed commits have been landed. Closing PR #15494 and removing active labels.
Comment 5 Diego Pino 2023-09-11 02:58:53 PDT
The bot WPE-Linux-64bit-Release-Packaging-Nightly-Ubuntu2004 stopped working after this commit landed.

https://build.webkit.org/#/builders/2/builds/8487/steps/10/logs/stdio

Stderr:

```
In file included from ../../Source/ThirdParty/libwebrtc/Source/third_party/abseil-cpp/absl/types/variant.h:79,
                 from ../../Source/ThirdParty/libwebrtc/Source/webrtc/modules/rtp_rtcp/source/rtp_video_header.h:18,
                 from ../../Source/ThirdParty/libwebrtc/Source/webrtc/modules/video_coding/h265_vps_sps_pps_tracker.h:21,
                 from ../../Source/ThirdParty/libwebrtc/Source/webrtc/modules/video_coding/h265_vps_sps_pps_tracker.cc:10:
../../Source/ThirdParty/libwebrtc/Source/third_party/abseil-cpp/absl/types/internal/variant.h: In instantiation of ‘struct absl::variant_internal::IndexOfMeta<webrtc::RTPVideoHeaderH265, absl::monostate, webrtc::RTPVideoHeaderVP8, webrtc::RTPVideoHeaderVP9, webrtc::RTPVideoHeaderH264, webrtc::RTPVideoHeaderLegacyGeneric>’:
../../Source/ThirdParty/libwebrtc/Source/third_party/abseil-cpp/absl/types/internal/variant.h:788:7:   required by substitution of ‘template<class Expected, class ... Types> using IndexOf = typename absl::variant_internal::IndexOfMeta::type [with Expected = webrtc::RTPVideoHeaderH265; Types = {absl::monostate, webrtc::RTPVideoHeaderVP8, webrtc::RTPVideoHeaderVP9, webrtc::RTPVideoHeaderH264, webrtc::RTPVideoHeaderLegacyGeneric}]’
../../Source/ThirdParty/libwebrtc/Source/third_party/abseil-cpp/absl/types/variant.h:302:47:   required from ‘constexpr T& absl::get(absl::variant<Tail ...>&) [with T = webrtc::RTPVideoHeaderH265; Types = {absl::monostate, webrtc::RTPVideoHeaderVP8, webrtc::RTPVideoHeaderVP9, webrtc::RTPVideoHeaderH264, webrtc::RTPVideoHeaderLegacyGeneric}]’
../../Source/ThirdParty/libwebrtc/Source/webrtc/modules/video_coding/h265_vps_sps_pps_tracker.cc:43:68:   required from here
../../Source/ThirdParty/libwebrtc/Source/third_party/abseil-cpp/absl/types/internal/variant.h:781:53: error: static assertion failed: Attempted to access a variant by specifying a type that does not match any alternative.
  781 |   static_assert(Results::MatchedIndexFromEnd::value != 0,
      |                                               ~~~~~~^~~~
```
Comment 6 Diego Pino 2023-09-11 03:03:22 PDT
Re-opening for pull request https://github.com/webkit/webkit/pull/17646
Comment 7 EWS 2023-09-11 07:34:51 PDT
Committed 267862@main (dc87e7c704ec): <https://commits.webkit.org/267862@main>

Reviewed commits have been landed. Closing PR #17646 and removing active labels.