Jump to content

Hardware acceleration for transcoding


aballim

Recommended Posts

aballim

Hi all

 

I've put emby server onto my new machine for the family. It's got an i7.7700K, 32gb of DDR4-2400, a samsung evo 960 M.2 512gb as the system disk, and a GTX 950 for graphics.

 

Can anyone suggest if I'm better off using QuickSync or NVenc for transcoding? What are the trade offs?

 

Thanks in advance

Edited by aballim
Link to comment
Share on other sites

Guest asrequested

Quick sync. It's the most supported and that CPU/GPU (I have one) is really good. Is this your HTPC, too, or just the server?

Link to comment
Share on other sites

aballim

Just the server. 

I tried Quick Sync but some of my videos didn't work, so I switched to nvenc and they worked. I'll have to look at the logs to see what happened

Link to comment
Share on other sites

Swynol

defo use quicksync. with NVenc your limited to 2 transcodes. For QuickSync to work do you have a custom FFMPEG? i use zeranoe FFMPEG

Link to comment
Share on other sites

Guest asrequested

Just the server. 

I tried Quick Sync but some of my videos didn't work, so I switched to nvenc and they worked. I'll have to look at the logs to see what happened

 

There may be conflict between the two. The iGPU may not work with the GTX 950, plugged in. You BIOS may be disabling one in favor of the other

Edited by Doofus
Link to comment
Share on other sites

CBers

I've put emby server onto my new machine for the family. It's got an i7.7700K, 32gb of DDR4-2400, a samsung evo 960 M.2 512gb as the system disk, and a GTX 950 for graphics.

 

 

That's a nice cheap rig, not :)

Link to comment
Share on other sites

aballim

There may be conflict between the two. The iGPU may not work with the GTX 950, plugged in. You BIOS may be disabling one in favor of the other

That's interesting. I'm using the GTX 950 to drive my screen. Maybe I'll see if I can activate multi screen in bios, and see if that allows quick sync to work.

Link to comment
Share on other sites

aballim

OK, activated multi monitor support in bios, and using zeranoe ffmpeg. Still didn't work.

Changed the transcoding temporary path from my ramdisk to the C. drive, and lo and behold, success.

Link to comment
Share on other sites

Guest asrequested

OK, activated multi monitor support in bios, and using zeranoe ffmpeg. Still didn't work.

Changed the transcoding temporary path from my ramdisk to the C. drive, and lo and behold, success.

 

Now you can enjoy the wonders of your i7 7700k, utilizing the full power of the Death Star... I mean HD 630 GPU :)

Link to comment
Share on other sites

Happy2Play

OK, activated multi monitor support in bios, and using zeranoe ffmpeg. Still didn't work.

Changed the transcoding temporary path from my ramdisk to the C. drive, and lo and behold, success.

 

So is there a permissions issue one the Ramdisk?

Link to comment
Share on other sites

aballim

So is there a permissions issue one the Ramdisk?

Can't really tell. Maybe it's too small (1 GB). Here's the log extract:

[AVHWDeviceContext @ 00000000012ba160] Failed to create Direct3D device

[h264_qsv @ 00000000012aeee0] Warning in encoder initialization: incompatible video parameters (5)

Output #0, segment, to 'B:\emby\transcoding-temp\a199fbe4f87df32c8589e82fa090ab82%d.ts':

Metadata:

encoder : Lavf57.72.101

Stream #0:0: Video: h264 (h264_qsv), nv12, 1920x1080 [sAR 1:1 DAR 16:9], q=2-31, 3633 kb/s, 25 fps, 90k tbn, 25 tbc (default)

Metadata:

encoder : Lavc57.93.100 h264_qsv

Side data:

cpb: bitrate max/min/avg: 3633182/0/3633182 buffer size: 7266364 vbv_delay: -1

Stream #0:1: Audio: aac (LC), 48000 Hz, 5.1, fltp, 384 kb/s (default)

Metadata:

encoder : Lavc57.93.100 aac

[h264_qsv @ 00000000012aeee0] Error during encoding: device failed (-17)

 

Switched to the Samsung 960 Evo instead, and no issues.

Link to comment
Share on other sites

Happy2Play

Can't really tell. Maybe it's too small (1 GB). Here's the log extract:

[AVHWDeviceContext @ 00000000012ba160] Failed to create Direct3D device

[h264_qsv @ 00000000012aeee0] Warning in encoder initialization: incompatible video parameters (5)

Output #0, segment, to 'B:\emby\transcoding-temp\a199fbe4f87df32c8589e82fa090ab82%d.ts':

Metadata:

encoder : Lavf57.72.101

Stream #0:0: Video: h264 (h264_qsv), nv12, 1920x1080 [sAR 1:1 DAR 16:9], q=2-31, 3633 kb/s, 25 fps, 90k tbn, 25 tbc (default)

Metadata:

encoder : Lavc57.93.100 h264_qsv

Side data:

cpb: bitrate max/min/avg: 3633182/0/3633182 buffer size: 7266364 vbv_delay: -1

Stream #0:1: Audio: aac (LC), 48000 Hz, 5.1, fltp, 384 kb/s (default)

Metadata:

encoder : Lavc57.93.100 aac

[h264_qsv @ 00000000012aeee0] Error during encoding: device failed (-17)

 

Switched to the Samsung 960 Evo instead, and no issues.

 

Well 1GB is barely large enough for a SD tv show.  The transcode path has to be larger than the file you are attempting to play.  Emby maintains the entire transcode until the media is stopped, and sometimes a little longer.

Link to comment
Share on other sites

aballim

Well 1GB is barely large enough for a SD tv show.  The transcode path has to be larger than the file you are attempting to play.  Emby maintains the entire transcode until the media is stopped, and sometimes a little longer.

Thanks

I'll refrain from using the ramdisk then. I'm sure the 960 evo is sufficient for my needs. 

Link to comment
Share on other sites

dthurston

My server is running on linux on a celeron N2930. I installed ffmpeg, but not the zeranoe version mentioned above. I'm not clear on how to know if quicksync is working, but I assume it's not if it doesn't seem to make much difference. It's not crashing either though. How much load should I expect it to take off the processor during on the fly transcoding? Emby no longer has an option after install for ffmpeg location, so I'm not sure how to change it if I were to install the custom version. Is there a ffmpeg version recommended for emby on linux?

Link to comment
Share on other sites

mastrmind11

My server is running on linux on a celeron N2930. I installed ffmpeg, but not the zeranoe version mentioned above. I'm not clear on how to know if quicksync is working, but I assume it's not if it doesn't seem to make much difference. It's not crashing either though. How much load should I expect it to take off the processor during on the fly transcoding? Emby no longer has an option after install for ffmpeg location, so I'm not sure how to change it if I were to install the custom version. Is there a ffmpeg version recommended for emby on linux?

Quicksync isn't really supported on Linux unless you can find a custom kernel.  I think the only flavor that supports it is CentOS.  So chances are, it's not working, even if you point to an ffmpeg version that supports it.

Link to comment
Share on other sites

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...