androidx / media

Jetpack Media3 support libraries for media use cases, including ExoPlayer, an extensible media player for Android
Apache License 2.0
1.37k stars 322 forks source link

missing attribute fmtp #1456

Open Don0429 opened 3 weeks ago

Don0429 commented 3 weeks ago

Version

Media3 1.3.1

More version details

How to fix this bug: image image

Devices that reproduce the issue

看上面的图

Devices that do not reproduce the issue

No response

Reproducible in the demo app?

No

Reproduction steps

看上面的图

Expected result

看上面的图

Actual result

看上面的图

Media

看上面的图

Bug Report

microkatz commented 3 weeks ago

The reason why this fails is that your RTSP Describe Response does not contain the fmtp attribute required for decoding H265 for RTSP. For ExoPlayer in streaming H265 via RTSP, it requires the information contained in the sprop-vps, sprop_pps, and sprop-pps parameters sets. Exoplayer currently requires these parameters in the Describe Response and does not read them further down the pipeline when handling the stream.

This is similar to the request to read sprop values from within the H264 bitstream. https://github.com/google/ExoPlayer/issues/10971

If you would like to test reading them from the stream, you can clone the repo and try the following changes.

If you are successful, you are more than welcome to make a contribution to Exoplayer with these changes. We consider high quality pull requests. These should merge into the main branch. Before a pull request can be accepted you must submit a Contributor License Agreement.

I'll leave this open as an enhancement but please feel free to comment back with questions.