Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

add h265 payloader #286

Closed
wants to merge 1 commit into from
Closed

add h265 payloader #286

wants to merge 1 commit into from

Conversation

z1rachl
Copy link

@z1rachl z1rachl commented Dec 25, 2024

Description

Add h265 payloader support, that allows to split large h265 packets to FUs not bigger than requested mtu. It is mostly based on h264 payloader with rtp headers generation changes according to RFC 7798

Copy link

codecov bot commented Dec 25, 2024

Codecov Report

Attention: Patch coverage is 93.75000% with 4 lines in your changes missing coverage. Please review.

Project coverage is 83.96%. Comparing base (cd52e6b) to head (feba4d2).
Report is 2 commits behind head on master.

Files with missing lines Patch % Lines
codecs/h265_packet.go 93.75% 3 Missing and 1 partial ⚠️
Additional details and impacted files
@@            Coverage Diff             @@
##           master     #286      +/-   ##
==========================================
+ Coverage   83.71%   83.96%   +0.25%     
==========================================
  Files          24       24              
  Lines        2450     2514      +64     
==========================================
+ Hits         2051     2111      +60     
- Misses        340      343       +3     
- Partials       59       60       +1     
Flag Coverage Δ
go 83.96% <93.75%> (+0.25%) ⬆️
wasm 83.29% <93.75%> (+0.27%) ⬆️

Flags with carried forward coverage won't be shown. Click here to find out more.

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

@Sean-Der
Copy link
Member

This looks perfect! I will fix linter and merge tonight :)

excited to use ir

@y-kawawa
Copy link
Contributor

y-kawawa commented Jan 7, 2025

Thanks for the PR. It would be helpful to have a payloader implementation for H.265. However, I prefer #165 because it has a fragment aggregation packet implementation and can transmit more efficiently.

@z1rachl
Copy link
Author

z1rachl commented Jan 7, 2025

Thanks for the PR. It would be helpful to have a payloader implementation for H.265. However, I prefer #165 because it has a fragment packet implementation and can transmit more efficiently.

Thanks for the comment. I actually missed #165, when started working on my payloader. However it looks pretty stalled on the test adding stage. And this one already has tests and is confirmed to work in browser (see attach).
I can see 3 options here:

  1. Merge this one
  2. Close this PR, so Add H265 payloader and depacketizer #165 can be finished and merged
  3. I can try to move some missing features from Add H265 payloader and depacketizer #165 to this one

So, I guess its up to @Sean-Der to decide :)

Screenshot from 2024-12-24 09-57-59

@y-kawawa
Copy link
Contributor

y-kawawa commented Jan 9, 2025

@z1rachl
Thanks for the response. I have confirmed that I can play it in Safari using #287 with minor bug fixes from #165, Chrome is still checking. (I am checking which future flag to enable).

I have confirmed that it works on chrome . So functionality and whether #165 still has the motivation to move forward with PR will be the determining factor.
スクリーンショット 2025-01-09 12 56 01

@y-kawawa y-kawawa mentioned this pull request Jan 9, 2025
2 tasks
@JoeTurki
Copy link
Member

JoeTurki commented Jan 10, 2025

Hello! We’re working on updating the linters[1], Sorry I caused conflicts on your branch, Would you like me to fix the conflicts and fix the lint issues on your branch?

Thank you so much for your work! <3

#288

@JoeTurki
Copy link
Member

Closed in favor of #287

@JoeTurki JoeTurki closed this Jan 12, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants