[Support] ich777 - Jellyfin AMD/Intel/Nvidia [DEPRECATED]


Recommended Posts

23 hours ago, ich777 said:

Have you yet tried if HW transcoding is working with my Jellyfin container?

Im having an odd problem. When i start the webpage it takes me to a lgoin in screen insteall of asking me to setup an account. I have changed ports, so it shouldnt be directing me to my old jellyfin. That is turned off at the moment as well.

Link to comment
13 hours ago, Macleod76 said:

I am still having Transcoding issues with your container as well.

Can you try to transcode a file for 30 seconds or so and then send me the log, you'll find the logs in the Server Dashbaord -> at the bottom Logs and then it should start with FFmpeg...

 

What is set at Playback in the Jellyfin settings? Do you set it to NVENC? Also did you start over completely fresh or do you still use your old folder structure?

 

Do you now use my container?

image.png.5abcc4c6c41b4a063f1a24e74902251c.png

Link to comment
10 hours ago, ich777 said:

Can you try to transcode a file for 30 seconds or so and then send me the log, you'll find the logs in the Server Dashbaord -> at the bottom Logs and then it should start with FFmpeg...

 

What is set at Playback in the Jellyfin settings? Do you set it to NVENC? Also did you start over completely fresh or do you still use your old folder structure?

 

Do you now use my container?

image.png.5abcc4c6c41b4a063f1a24e74902251c.png

I am using your Jellyfin container. It has its own file structure under my current appdata folder. Here is a sample of my log file. The entire file is pretty big, but it just keeps repeating this.

    Last message repeated 2 times
[hevc @ 0x55ddc9429040] No decoder surfaces left
[hevc @ 0x55ddc9429040] decoder->cvdl->cuvidDecodePicture(decoder->decoder, &ctx->pic_params) failed -> CUDA_ERROR_INVALID_VALUE: invalid argument
[hevc @ 0x55ddc9429040] hardware accelerator failed to decode picture
[hevc @ 0x55ddc9439a80] Could not find ref with POC 113
[hevc @ 0x55ddc9439a80] No decoder surfaces left
[hevc @ 0x55ddc9439a80] decoder->cvdl->cuvidDecodePicture(decoder->decoder, &ctx->pic_params) failed -> CUDA_ERROR_INVALID_VALUE: invalid argument
[hevc @ 0x55ddc9439a80] hardware accelerator failed to decode picture
[hevc @ 0x55ddc944a4c0] Could not find ref with POC 114
Error while decoding stream #0:0: Generic error in an external library
[hevc @ 0x55ddc9418600] No decoder surfaces left
[hevc @ 0x55ddc9418600] decoder->cvdl->cuvidDecodePicture(decoder->decoder, &ctx->pic_params) failed -> CUDA_ERROR_INVALID_VALUE: invalid argument
[hevc @ 0x55ddc9418600] hardware accelerator failed to decode picture
Error while decoding stream #0:0: Generic error in an external library
[hevc @ 0x55ddc9429040] Could not find ref with POC 128
[hevc @ 0x55ddc9429040] No decoder surfaces left
[hevc @ 0x55ddc9429040] decoder->cvdl->cuvidDecodePicture(decoder->decoder, &ctx->pic_params) failed -> CUDA_ERROR_INVALID_VALUE: invalid argument
[hevc @ 0x55ddc9429040] hardware accelerator failed to decode picture
[hevc @ 0x55ddc9439a80] Could not find ref with POC 129
[hevc @ 0x55ddc9439a80] No decoder surfaces left
[hevc @ 0x55ddc9439a80] decoder->cvdl->cuvidDecodePicture(decoder->decoder, &ctx->pic_params) failed -> CUDA_ERROR_INVALID_VALUE: invalid argument
[hevc @ 0x55ddc9439a80] hardware accelerator failed to decode picture
[hevc @ 0x55ddc944a4c0] Could not find ref with POC 130
Error while decoding stream #0:0: Generic error in an external library
    Last message repeated 2 times
[hevc @ 0x55ddc9429040] No decoder surfaces left
[hevc @ 0x55ddc9429040] decoder->cvdl->cuvidDecodePicture(decoder->decoder, &ctx->pic_params) failed -> CUDA_ERROR_INVALID_VALUE: invalid argument
[hevc @ 0x55ddc9429040] hardware accelerator failed to decode picture
[hevc @ 0x55ddc9439a80] Could not find ref with POC 145
[hevc @ 0x55ddc9439a80] No decoder surfaces left
[hevc @ 0x55ddc9439a80] decoder->cvdl->cuvidDecodePicture(decoder->decoder, &ctx->pic_params) failed -> CUDA_ERROR_INVALID_VALUE: invalid argument
[hevc @ 0x55ddc9439a80] hardware accelerator failed to decode picture
[hevc @ 0x55ddc944a4c0] Could not find ref with POC 146
Error while decoding stream #0:0: Generic error in an external library
    Last message repeated 1 times
[hls @ 0x55ddc8cd3b00] Opening '/config/transcodes/501e85d68ab58a85c4bb1976e1460ed059.ts' for writing
[hls @ 0x55ddc8cd3b00] Opening '/config/transcodes/501e85d68ab58a85c4bb1976e1460ed060.ts' for writing
frame= 4326 fps=287 q=19.0 Lsize=N/A time=00:02:59.64 bitrate=N/A dup=676 drop=0 speed=11.9x    
video:156294kB audio:2759kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: unknown

 

Link to comment
4 minutes ago, Macleod76 said:

That got it. You are the man. Do you know if there is a way i can import my user accounts to your container from my old container? After all your great help and support i would like to continue using your docker.

I don't know if that's possible the easy way.

If you find a way to do it, let me know.

 

Stick to the linuxserver container if it's also working there. 😉

Link to comment
2 hours ago, Macleod76 said:

Any thoughts on a setting that could free up the spotty freezing?

Does this happen on all devices or just on one device?

 

What does exactly freeze? Audio, Video or both?

Maybe try to create a screen capture or something like that and send me a PM with the capture.

 

Does this happen with all media, h264, h265, h265 HDR?

Link to comment

Newbie here,

I had the official Jellyfin docker and LiveTV from HDHomeRun worked. The official docker doesn't seem to have hardware transcoding (QuickSync) so I switched to this one. I got the hardware transcoding to work but not on Live videos. Clients that can handle the MPEG2 .TS play Live TV but but phones and web browsers do not. I did see that network must be set to Host for HDHomeRun and I did. Here is some logs when I attempt to play in Edge:
 

:02:13] [INF] [35] Jellyfin.Api.Helpers.MediaInfoHelper: User policy for Ss. EnablePlaybackRemuxing: True EnableVideoPlaybackTranscoding: True EnableAudioPlaybackTranscoding: True
[22:02:13] [INF] [35] Jellyfin.Api.Helpers.MediaInfoHelper: Profile: Unknown Profile, Path: http://192.168.1.174, isEligibleForDirectPlay: True, isEligibleForDirectStream: True
[22:02:13] [INF] [35] Jellyfin.Api.Helpers.MediaInfoHelper: Profile: Unknown Profile, No video direct play profiles found for http://192.168.1.174 with codec mpeg2video
[22:02:13] [INF] [35] Emby.Server.Implementations.LiveTv.LiveTvManager: Opening channel stream from Emby, external channel Id: hdhr_5.1
[22:02:13] [INF] [35] Emby.Server.Implementations.LiveTv.EmbyTV.EmbyTV: Streaming Channel hdhr_5.1
[22:02:13] [INF] [35] Emby.Server.Implementations.LiveTv.EmbyTV.EmbyTV: Live stream native_ff80f93c46e0a0b178f0c4d61a5abab3_817fff89363aee3f4e96e0f5f780648b consumer count is now 2
[22:02:13] [INF] [35] Emby.Server.Implementations.Library.MediaSourceManager: Live tv media info probe took 0.0004457 seconds
[22:02:13] [INF] [35] Emby.Server.Implementations.Library.MediaSourceManager: Live stream opened: {"Protocol":"Http","Id":"native_ff80f93c46e0a0b178f0c4d61a5abab3_817fff89363aee3f4e96e0f5f780648b","Path":"http://127.0.0.1:8096/LiveTv/LiveStreamFiles/08f990be3b7947aea65112332dadf229/stream.ts","Type":"Default","Container":"mpegts","IsRemote":false,"ReadAtNativeFramerate":false,"IgnoreDts":true,"IgnoreIndex":false,"GenPtsInput":false,"SupportsTranscoding":true,"SupportsDirectStream":true,"SupportsDirectPlay":false,"IsInfiniteStream":true,"RequiresOpening":true,"RequiresClosing":true,"LiveStreamId":"a17c75760a04e99b68cf766e11316e1c_09efa0d56b934a82adec00a87b837fb0_native_ff80f93c46e0a0b178f0c4d61a5abab3_817fff89363aee3f4e96e0f5f780648b","BufferMs":0,"RequiresLooping":false,"SupportsProbing":true,"MediaStreams":[{"Codec":"mpeg2video","ColorRange":"tv","TimeBase":"1/90000","VideoRange":"SDR","DisplayTitle":"1080i MPEG2VIDEO SDR","IsInterlaced":true,"BitRate":20000000,"RefFrames":1,"IsDefault":false,"IsForced":false,"Height":1080,"Width":1920,"AverageFrameRate":29.97003,"RealFrameRate":29.97003,"Profile":"Main","Type":"Video","AspectRatio":"16:9","Index":-1,"IsExternal":false,"IsTextSubtitleStream":false,"SupportsExternalStream":false,"PixelFormat":"yuv420p","Level":4,"IsAnamorphic":false},{"Codec":"ac3","TimeBase":"1/90000","DisplayTitle":"Dolby Digital - 5.1","IsInterlaced":false,"ChannelLayout":"5.1","BitRate":384000,"Channels":6,"SampleRate":48000,"IsDefault":false,"IsForced":false,"Type":"Audio","Index":-1,"IsExternal":false,"IsTextSubtitleStream":false,"SupportsExternalStream":false,"Level":0}],"MediaAttachments":[],"Formats":[],"Bitrate":20384000,"RequiredHttpHeaders":{},"AnalyzeDurationMs":3000}
[22:02:13] [INF] [35] Jellyfin.Api.Helpers.MediaInfoHelper: User policy for Ss. EnablePlaybackRemuxing: True EnableVideoPlaybackTranscoding: True EnableAudioPlaybackTranscoding: True
[22:02:13] [INF] [35] Jellyfin.Api.Helpers.MediaInfoHelper: Profile: Unknown Profile, Path: http://127.0.0.1:8096/LiveTv/LiveStreamFiles/08f990be3b7947aea65112332dadf229/stream.ts, isEligibleForDirectPlay: True, isEligibleForDirectStream: True
[22:02:13] [INF] [35] Jellyfin.Api.Helpers.MediaInfoHelper: Profile: Unknown Profile, No video direct play profiles found for http://127.0.0.1:8096/LiveTv/LiveStreamFiles/08f990be3b7947aea65112332dadf229/stream.ts with codec mpeg2video
[22:02:13] [INF] [35] Jellyfin.Api.Helpers.MediaInfoHelper: Profile: Unknown Profile, Path: http://127.0.0.1:8096/LiveTv/LiveStreamFiles/08f990be3b7947aea65112332dadf229/stream.ts, isEligibleForDirectPlay: True, isEligibleForDirectStream: True
[22:02:13] [INF] [35] Jellyfin.Api.Helpers.MediaInfoHelper: Profile: Unknown Profile, No video direct play profiles found for http://127.0.0.1:8096/LiveTv/LiveStreamFiles/08f990be3b7947aea65112332dadf229/stream.ts with codec mpeg2video
[22:02:13] [INF] [51] Jellyfin.Api.Helpers.TranscodingJobHelper: /usr/lib/jellyfin-ffmpeg/ffmpeg -analyzeduration 3000000 -fflags +igndts -c:v mpeg2_qsv -hwaccel qsv -i "http://127.0.0.1:8096/LiveTv/LiveStreamFiles/08f990be3b7947aea65112332dadf229/stream.ts" -map_metadata -1 -map_chapters -1 -threads 0 -sn -codec:v:0 h264_qsv -preset 7 -look_ahead 0 -b:v 20000000 -maxrate 20000000 -bufsize 40000000 -profile:v:0 high -level 41 -g:v:0 90 -keyint_min:v:0 90 -sc_threshold:v:0 0 -vf "vpp_qsv=format=nv12:deinterlace=1" -start_at_zero -flags -global_header -vsync cfr -codec:a:0 aac -ac 6 -ab 640000 -copyts -avoid_negative_ts disabled -max_muxing_queue_size 2048 -f hls -max_delay 5000000 -hls_time 3 -hls_segment_type mpegts -start_number 0 -hls_base_url "hls/8feefa770eb6f3cd2c7eac8c28aaf783/" -hls_playlist_type event -hls_segment_filename "/config/transcodes/8feefa770eb6f3cd2c7eac8c28aaf783%d.ts" -y "/config/transcodes/8feefa770eb6f3cd2c7eac8c28aaf783.m3u8"

 

Link to comment
1 hour ago, OrdinaryButt said:

The official docker doesn't seem to have hardware transcoding (QuickSync)

You have to use VAAPI, this is nearpy the same as QuickSync and will work just fine.

 

1 hour ago, OrdinaryButt said:

Clients that can handle the MPEG2 .TS play Live TV but but phones and web browsers do not. I did see that network must be set to Host for HDHomeRun and I did. Here is some logs when I attempt to play in Edge

How long did you wait for the stream to start?

On my instance, using TVHeadend in combination with Jellyfin with TVHeadend as xml TV source and not the plugin, sometimes it takes about 20 to 30 seconds that streams are starting in the browser and on devices that not support native playback from ts streams.

Link to comment
7 hours ago, ich777 said:

How long did you wait for the stream to start?

On my instance, using TVHeadend in combination with Jellyfin with TVHeadend as xml TV source and not the plugin, sometimes it takes about 20 to 30 seconds that streams are starting in the browser and on devices that not support native playback from ts streams.

Minutes.

Quote

You have to use VAAPI, this is nearpy the same as QuickSync and will work just fine.

Thanks. That did it (for this docker). Before I uninstall and install the official one (assuming it will work with VAAPI), what are the advantages of using this one?

EDIT:

Oops. I just realized you are the developer, didn't mean to offend you. However, my head is spinning, primarily of poor documentation (lack of guides) of many of the Dockers for beginners. Not necessarily yours. 

Edited by OrdinaryButt
Link to comment
45 minutes ago, OrdinaryButt said:

Thanks. That did it (for this docker). Before I uninstall and install the official one (assuming it will work with VAAPI), what are the advantages of using this one?

If you are using this container with Intel not much I think, the official one should also work with VAAPI but I'm not to sure if the official one also supports if you have HDR content.

 

This container supports AMD/Intel and Nvidia for HW transcoding.

 

50 minutes ago, OrdinaryButt said:

Oops. I just realized you are the developer, didn't mean to offend you.

I'm not really the developer from Jellyfin, I've only made a container that has the necessary dependencies built in so that it works OOB with nearly all cards/iGPUs and included a description that should be self explaining if you want to use HW transcoding.

Link to comment
16 minutes ago, ich777 said:

If you are using this container with Intel not much I think, the official one should also work with VAAPI but I'm not to sure if the official one also supports if you have HDR content.

 

This container supports AMD/Intel and Nvidia for HW transcoding.

 

I'm not really the developer from Jellyfin, I've only made a container that has the necessary dependencies built in so that it works OOB with nearly all cards/iGPUs and included a description that should be self explaining if you want to use HW transcoding.

Ok, you way want to add in the first post to chose VAAPI instead of QuickSync if HDHR tunner will be used for future reference.

Link to comment

I would like to save space and convert my media to AV1 it is less than half the size, a 336mb movie clip file converted to 144mb, wow right! of HEVC and the next generation of codec. Is this really supported, I tested converting a file. Jellyfin is supposed to support AV1 but when I scanned the test file into my media library it doesnt appear. Is there anything I need to know about AV1 media and adding it to jellyfin, 10 .6 is supposed to support it but I cant locate the file in the menu anywhere after the library scan.

How can I make it play the AV1 files? Is it even possible to play them?

Edited by RYZEN5000
Link to comment
16 minutes ago, RYZEN5000 said:

I would like to save space and convert my media to AV1 it is less than half the size, a 336mb movie clip file converted to 144mb, wow right! of HEVC and the next generation of codec. Is this really supported, I tested converting a file. Jellyfin is supposed to support AV1 but when I scanned the test file into my media library it doesnt appear. Is there anything I need to know about AV1 media and adding it to jellyfin, 10 .6 is supposed to support it but I cant locate the file in the menu anywhere after the library scan.

How can I make it play the AV1 files? Is it even possible to play them?

Not sure if it is possible or not but the main issue will be - does your client hardware (TVs, phones etc) support the AV1 decoder. If it doesn't, that you will be transcoding everything taxing your server more. You may already be aware of this, just wanted to pointed out. We probably need another year for the AV1 to become more common. 

  • Like 1
Link to comment
Just now, OrdinaryButt said:

@ich777 I went to the official build - it uses less resources. 5-9% with a single Live stream transcode on the official and 10-15% with this one. VAAPI for both, Core i7 6700t

Where does it use less resources in terms of CPU or GPU?

Please keep in mind I really can't imagine that the official one uses less resources than mine since I don't do amything different than the official one my contianer only has everything for AMD, Nvidia and HDR decoding on board.

Keep in mind I don't do anything special or custom in my build, I even user their version from FFmpeg because I try to leave it as stock as possible...

 

Are you really sure that this is maybe not caused by the stream and fluctuating bitrates?

Link to comment
5 minutes ago, ich777 said:

Where does it use less resources in terms of CPU or GPU?

Please keep in mind I really can't imagine that the official one uses less resources than mine since I don't do amything different than the official one my contianer only has everything for AMD, Nvidia and HDR decoding on board.

Keep in mind I don't do anything special or custom in my build, I even user their version from FFmpeg because I try to leave it as stock as possible...

 

Are you really sure that this is maybe not caused by the stream and fluctuating bitrates?

On the Docker Tab, CPU and Memory column (advanced view toggled).

I am sure. Single stream, single client, no library scanning in the background. Again, this is with 6700T CPU only (VAAPI enabled). The official has a newer "last updated" date - perhaps they modified something.

 

Let me know if you want we to test something for you. Otherwise I am all good.

Link to comment
  • ich777 changed the title to [Support] ich777 - Jellyfin AMD/Intel/Nvidia [DEPRECATED]
  • ich777 locked this topic
Guest
This topic is now closed to further replies.