Jump to content

unRAID Transcoding


Recommended Posts

Babatom
Posted

I'm having problems with transcoding; playback stutters after about a minute when I set transcoding to 720p-3MP on my iPhone, for example. I'm using QSV with an i5-13500, and the transcoding path is in RAM with 8GB. When I start playback, I see in the dashboard that the iGPU is being used, but only very briefly. CPU load is at 3-4%. In the Emby admin dashboard, I've only enabled transcoding and set the cache path to /transcode. Does anyone have any idea what the problem could be?

ianmcleish
Posted

Assuming you do have a Premiere licence firstly? I recall you need one to do transcoding. Which image, version, or which docker container are you using. And what is it running on? I was presuming Unraid, but I'm not sure why I was!

If it is on Unraid and if you are using the Binhex version, transcoding doesn't seem to work. I used the Binhex and failed forever until I swapped to the official container.

But, not sure if anything I mentioned is in any way relevant.

Neminem
Posted
14 hours ago, Babatom said:

transcoding path is in RAM with 8GB

Does this mean you use RAM drive as your Transcoding drive?

Babatom
Posted (edited)

@Neminemi use RAM for "Transcoding temporary path"

 

@ianmcleishyeah i have premiere..i'm using the LS Container.

Edited by Babatom
Neminem
Posted
10 minutes ago, Babatom said:

i use RAM for "Transcoding temporary path"

Whats the usage when you encounter issues.

Is it full?

Need server logs and ffmpeg logs.

Neminem
Posted
22 hours ago, Babatom said:

transcoding path is in RAM with 8GB.

17 minutes ago, Babatom said:

nope there are approximately 20GB free.

Then this does not make sense.

But anyway try with VAAPI only, and see if that helps.

Babatom
Posted

My server has 32GB of RAM, I've allocated 8GB to Emby for transcoding... in the container settings, under extra parameters, I set: --mount type=tmpfs,destination=/transcode,tmpfs-size=8G

Babatom
Posted
8 minutes ago, Neminem said:

But anyway try with VAAPI only, and see if that helps

Are there any known issues with Emby and QSV? Jellyfin works perfectly on the same server.

Neminem
Posted
5 minutes ago, Babatom said:

/transcode

How much space is left in that, when it starts to studder?

I just want to rule out, that your RAM drive is not too small 🤷‍♂️

1 minute ago, Babatom said:

Are there any known issues with Emby and QSV? Jellyfin works perfectly on the same server.

I seam to have the same iGPU as you.

Here is my transcoding settings.

I never have had much luck with QSV.

image.png.d4c4dde412be8ed7b7bd38369dbb0fb6.png

image.png.242b33508937ef5a3f64612394e04ecb.png

Q-Droid
Posted

From the ffmpeg log:

14:09:37.023 [segment @ 0x14000c0] Opening '/config/transcoding-temp/0D5DB1/0D5DB1_s6_727.vtt.tmp' for writing
14:09:37.064 [segment @ 0x1324800] Opening '/config/transcoding-temp/0D5DB1/0D5DB1.m3u8.tmp' for writing
14:09:37.064 SegmentComplete=video:0 Index=726 Start=2178.426189 End=2181.429189 Duration=3.003000 offset_pts=0 start_pts=2178426189 Frames=72 filename=0D5DB1_726.ts
14:09:37.064 [segment @ 0x1324800] Opening '/config/transcoding-temp/0D5DB1/0D5DB1_727.ts.tmp' for writing
14:09:37.165 Too many packets buffered for output stream 1:1.
14:09:37.196 Conversion failed!
14:09:37.196 EXIT

 

Babatom
Posted
22 minutes ago, Q-Droid said:
Opening '/config/transcoding-temp/

That means RAM isn't being used, right? It doesn't fill up even when I start playback.

SCR-20260130-noym.png

Q-Droid
Posted (edited)

You're focusing on the wrong thing. Ffmpeg is choking on the stream.

14:09:37.165 Too many packets buffered for output stream 1:1.
14:09:37.196 Conversion failed!

 

Edited by Q-Droid
  • Like 1
Neminem
Posted

Hmm yes there is 41 subs in that stream.

Babatom
Posted

Okay, I removed the RAM transcoding, restarted the container, and set it up again. Now it seems to be working; I can see it filling up in the terminal and in the logs:

[segment @ 0x11c4500] Opening '/transcode/transcoding-temp/C60130/C60130_s7.m3u8.tmp' for writing

I've played it for about 6 minutes now and it hasn't stopped.

 

Now my question remains: why did Emby automatically change the transcoding path from /transcode to /config?

And regarding transcoding in general, does it work like this: I start playback, the iGPU transcodes the entire movie, writes it to RAM, and then stops working?

SCR-20260130-nsqt.png

Neminem
Posted
11 minutes ago, Babatom said:

why did Emby automatically change the transcoding path from /transcode to /config?

That's the default location, I use a toss away SSD for transcoding.

13 minutes ago, Babatom said:

I start playback, the iGPU transcodes the entire movie,

Did you tick this option.

image.png.335c209979f5f10169aba83c6d576ce3.png

14 minutes ago, Babatom said:

I've played it for about 6 minutes now and it hasn't stopped.

New transcoding logs.

Q-Droid
Posted
6 minutes ago, Babatom said:

Okay, I removed the RAM transcoding, restarted the container, and set it up again. Now it seems to be working; I can see it filling up in the terminal and in the logs:

[segment @ 0x11c4500] Opening '/transcode/transcoding-temp/C60130/C60130_s7.m3u8.tmp' for writing

I've played it for about 6 minutes now and it hasn't stopped.

Now my question remains: why did Emby automatically change the transcoding path from /transcode to /config?

And regarding transcoding in general, does it work like this: I start playback, the iGPU transcodes the entire movie, writes it to RAM, and then stops working?

 

That's strange unless for some reason the RAM mount you created didn't work and/or the server couldn't access that path. But now if "/transcode" is not mapped to a host path it would be writing those segments into the container itself. The Emby server log that includes startup could shed some light on this.

Transcoding works on the portion you're watching (playback position) plus a buffer. Generally a moving two minute window unless throttling is not enabled then it will keep running the conversion to the end and save the work as segment files in the transcoding path. You want throttling enabled because it's more efficient overall.

 

  • Like 1
Neminem
Posted

Does it work with at movie that does not have embedded subs?

Babatom
Posted
Just now, Neminem said:

That's the default location, I use a toss away SSD for transcoding

yes, but I set the RAM as the path...

 

1 minute ago, Neminem said:

Did you tick this option

No, my CPU load is very low

 

3 minutes ago, Neminem said:

New transcoding logs

it has started to stall again 🙄

15:55:25.695 Too many packets buffered for output stream 1:1.
15:55:25.712 Conversion failed!
15:55:25.712 EXIT
 

 

Neminem
Posted

image.png.c8ed58a0b3ce042629f85742c50c7539.png

This also works with GPU, even though its not worded like that.

  • Like 2
Neminem
Posted
7 minutes ago, Babatom said:

it has started to stall again

 

10 minutes ago, Neminem said:

Does it work with at movie that does not have embedded subs?

 

Babatom
Posted

Okay, I just have to deactivate subtitles and it runs smoothly

  • Like 1
Neminem
Posted

Ok so its the 41 embedded subs that causes issues.

I use Tdarr to process my media, and have that strip out subs.

 

  • Like 2
Posted

Hi, do you by any chance have a file with only one embedded subrip? Does it happen with that?

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...