mirror of
https://github.com/jellyfin/jellyfin.git
synced 2026-05-04 18:09:12 +03:00
No playback on Chromecast with HDHomeRun device #1000
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 @mooninite on GitHub (Oct 20, 2019).
Media Info of the file
MPEG2 TS stream from HDHomeRun HDHR4-US.
Logs
I have 3 command lines in the following gist:
https://gist.github.com/mooninite/3bf4c1c3151254ad9eb36673433f1fcb
The first two command lines are from Jellyfin 10.4.0. The first is the failing line used with Jellyfin and Chromecast. The second line successfully transcodes and plays in a Chrome browser. The third line is from Emby that successfully plays on a Chromecast.
Stats for Nerds Screenshots
Server System (please complete the following information):
Client System (please complete the following information):
@stevehayles commented on GitHub (Oct 26, 2019):
For me trying to transcode (VAAPI or QuickSync) to either the Android app or a Chromecast device failed. This was from a DVB-T stream from the HDHomeRun as described in this issue.
It seems to be an incompatibility around the matroska container format and the use of headers in key frames vs extended data. I haven't issued a pull request because I am new to the codebase and don't feel confident it's the correct fix but removing the 'global_header' flag for any mkv stream seems to solve it for all my test cases
Before the flag gets added within MediaBrowser.Controller\MediaEncoding\EncodingHelper.cs I simply check for an mkv container and don't add the flag in that case
Hope it helps point in the right direction
@JustAMan commented on GitHub (Nov 19, 2019):
First line uses some non-HLS transport.
It might be better to deprecate it and migrate all clients to use HLS one (clients include Chromecast).
paging @cvium who's the last one who touched Chromecast IIRC, feel free to tag other relevant people
@mooninite commented on GitHub (Dec 31, 2019):
@stevehayles has the correct fix - works here. @stevehayles would you be willing to provide a patch?
@JustAMan commented on GitHub (Jan 10, 2020):
This still doesn't look completely fine, as I would say the real issue is somewhere else.
Though I'm fine with workarounding this as shown above, as it actually "only" enables
global_header, as probably Chromecast decoder cannot handle mkv with data in-band (i.e. without global header).@stale[bot] commented on GitHub (Jun 19, 2020):
This issue has gone 120 days without comment. To avoid abandoned issues, it will be closed in 21 days if there are no new comments.
If you're the original submitter of this issue, please comment confirming if this issue still affects you in the latest release or nightlies, or close the issue if it has been fixed. If you're another user also affected by this bug, please comment confirming so. Either action will remove the stale label.
This bot exists to prevent issues from becoming stale and forgotten. Jellyfin is always moving forward, and bugs are often fixed as side effects of other changes. We therefore ask that bug report authors remain vigilant about their issues to ensure they are closed if fixed, or re-confirmed - perhaps with fresh logs or reproduction examples - regularly. If you have any questions you can reach us on Matrix or Social Media.