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

RTMP: Support enhanced RTMP specification for HEVC. v6.0.42 #3495

Merged
merged 9 commits into from
Apr 8, 2023

Conversation

winlinvip
Copy link
Member

@winlinvip winlinvip commented Apr 2, 2023

Enhanced RTMP specification: https://github.com/veovera/enhanced-rtmp

First, start SRS v6.0.42+ with HTTP-TS support:

./objs/srs -c conf/http.ts.live.conf

Then, you can use OBS 29.1+ to push HEVC via RTMP.
Start OBS with the following settings in the Settings > Stream tab:

  • Server: rtmp://localhost/live
  • Stream Key: livestream
  • Encoder: Please select the HEVC hardware encoder.

image

image

Finally, open the player http://localhost:8080/players/srs_player.html?stream=livestream.ts

Or use VLS or ffplay to play http://localhost:8080/live/livestream.ts

@winlinvip winlinvip linked an issue Apr 2, 2023 that may be closed by this pull request
@winlinvip
Copy link
Member Author

winlinvip commented Apr 4, 2023

Tested OBS streaming with HEVC encoding, and played TS files using H5.

  • When using hardware encoding, the video may have some shaking. Fixed by OBS 29.1 beta3.
  • When playing FLV files, if playing first and then streaming, it works fine. But if streaming first and then playing, it fails. This issue is likely related to Sequence caching. Fixed by OBS 29.1 beta3.
  • When using software encoding, it becomes very laggy, with noticeable stuttering.
  • When using software encoding, playing works successfully initially, but subsequent attempts to play fail.
  • When using software encoding, ffplay fails to play and displays the error message PPS id out of range: 0.

I checked with Junqin, and it seems that the issue with HEVC software encoding might be due to insufficient encoding performance. It works fine on his machine, so we can ignore this for now.

We need to update mpegts.js to version 1.7.3 in order to support the new specifications.

TRANS_BY_GPT3

@flying1314

This comment was marked as outdated.

@winlinvip winlinvip changed the title RTMP: Support enhanced RTMP specification for HEVC. RTMP: Support enhanced RTMP specification for HEVC. v6.0.42 Apr 8, 2023
@winlinvip winlinvip merged commit 26aabe4 into ossrs:develop Apr 8, 2023
@winlinvip winlinvip mentioned this pull request Jul 18, 2023
@winlinvip winlinvip added the TransByAI Translated by AI/GPT. label Jul 29, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
TransByAI Translated by AI/GPT.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Is it possible to support OBS publish HEVC stream over rtmp ?
3 participants