mirror of
https://github.com/jellyfin/jellyfin.git
synced 2026-05-04 18:09:12 +03:00
VAAPI ffmpeg failure from mobile applications (Android, Chromecast) #540
Reference in New Issue
Block a user
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Originally created by @joshuaboniface on GitHub (Mar 24, 2019).
Describe the bug
When trying to play video from the Android app or via Chromecast, while VAAPI is enabled, the generated ffmpeg arguments are invalid. This results in "no compatible streams are available". Only testing large 1080p x264 files.
To Reproduce
Expected behavior
The ffmpeg should have a valid output setting under VAAPI for the target.
Logs
FFMPEG output error when run manually:
Screenshots
N/A
System (please complete the following information):
Additional context
I have a rough workaround that needs review, will PR shortly.Quick fix attempt was a quick addition of
-f mpegtsto the output options inEncodingHelper.cs, but this doesn't seem to work - playback fails to start (doesn't even load the playback screen).@joshuaboniface commented on GitHub (Mar 24, 2019):
As discussed on Riot this might be because b frames are off, which isn't supported with VAAPI. Will try out some options there.
@cvium commented on GitHub (Mar 24, 2019):
For reference: https://github.com/GPUOpen-LibrariesAndSDKs/AMF/issues/8
Newer AMD GPUs don't support B-frames. They can be disabled with
-bf 0.Some threads also seem to indicate a need for
-profile:v 578(constrained baseline). Not sure what the consequence is.@joshuaboniface commented on GitHub (Mar 25, 2019):
So it doesn't look like it's any of those things. The
-bf 0eliminates the warning about bframes not being supported, andprofile:v 578does nothing. In either case the underlying errorInvalid data found when processing inputis still present. All my research seemed to point to-f mpegtsas the right solution to this particular issue, and my manual run confirms that, but this output format just isn't compatible with the mobile apps. I'll keep trying to find another.Found
-f mpegalso works, but similarly fails in the mobile app. So it looks like we need to know what that end is actually expecting. Or we direct play it somehow and bypass this entirely - maybe the logs offer a clue there.@stale[bot] commented on GitHub (Jul 30, 2019):
Issues go stale after 60d of inactivity. Mark the issue as fresh by adding a comment or commit. Stale issues close after an additional 7d of inactivity. If this issue is safe to close now please do so. If you have any questions you can reach us on Matrix or Social Media.
@openlives commented on GitHub (Oct 30, 2019):
however In Release 10.4.0,VAAPI ffmpeg still failure from mobile applications for the Newer AMD GPUs
@bandita00 commented on GitHub (Jan 22, 2020):
10.4.3, VAAPI with Intel GPU fails as well
@JustAMan commented on GitHub (Jan 23, 2020):
Some VAAPI issues are fixed in master, wait till 10.5.0 release and check (or verify using nightlies).
@zkvsky commented on GitHub (Jan 24, 2020):
@JustAMan Nigthlies are broken, at least for Linux, been for some time, can't access web interface or via anything
@dkanada commented on GitHub (Jan 24, 2020):
I have only heard that the portable installation is broken for nightlies. Is that the case for you as well?
@zkvsky commented on GitHub (Jan 24, 2020):
@dkanada Yes, portable nightlies are broken for me, I'm on Linux. Neither docker or standalone is an option for me
@marys1234 commented on GitHub (Jan 25, 2020):
Confirming that on 10.4.3, VAAPI with Intel GPU fails on mobile app.
Assuming waiting for 10.5.0 is needed...