Jump to content

NVENC experimental


cptbstd

Recommended Posts

jscoys

Yeah it's very Weird the "video engine load" goes above 0% for several seconds and then stops. It has enough time to transcode about 4 to 5 minutes of the movie thought...

Link to comment
Share on other sites

jscoys

Ok I have more elements : @@Luke if I unselect "Enabling throtling" the video ungine remain between 2% and 4% and continue transco no matter where I am positionned into the current playback. So I think that the throttling is not currently well adapted to NVENC decoding.

 

Today it's not ideal considering that it will transcode all the movie, even if I play only 5 minutes of it...

Edited by jscoys
Link to comment
Share on other sites

jscoys

In the next release, it will no longer throttle when using hardware encoding.

It's a radical decision. Is it really technically impossible to make HW decoding work with throttling?

 

 

Sent from my iPhone using Tapatalk

Link to comment
Share on other sites

It might be but at the moment i don't know what the issue is, and having playback work is the most important thing. Keep in mind your assessment of transcoding the whole movie just to watch 5 minutes is not really true. Chances are your machine will not complete transcoding the entire thing in 5 minutes. It's more realistic that the transcoding position would probably be at the 10 or 15 minute mark.

  • Like 1
Link to comment
Share on other sites

jscoys

Ok great hope you will be able to repair throttling soon with HW decoding, it' sa nice feature! Remain at your disposal when you'll work on this again.

 

 

Sent from my iPhone using Tapatalk

Link to comment
Share on other sites

robertp221

In the next release, it will no longer throttle when using hardware encoding.

If we disable throttling will that have the same affect in the current release? I think i did notice that problem when watching SD channels because as soon as i disabled throttling it was able to play SD channels just fine(HD of course had the issue with 7 seconds of playback).

Link to comment
Share on other sites

robertp221

Yes, same effect.

 

I know i posted in the other NVENC thread, but is there anything in the logs that i posted that show an issue with the features ffmpeg is compiled with? This weekend i went ahead and tried the banner security build script and had the same issue as the precompiled ffmpeg i got. So i don't think throttling is the root of my issue.

Link to comment
Share on other sites

jscoys

If we disable throttling will that have the same affect in the current release? I think i did notice that problem when watching SD channels because as soon as i disabled throttling it was able to play SD channels just fine(HD of course had the issue with 7 seconds of playback).

Hello Robert, little question.

 

I have a weird phenomenon : when the transco starts it uses the video decoding capabilities of my video card. I have a 750ti like you I remember [emoji3]

 

This video decoding process turns around 2% and 5% of usage. It would be ok if it doesn't loop often. I don't know why but often the movie come 2 or 3 minutes back at the first playback, like it doesn't transco as fast as the playback and the next files were not generated by ffmpeg which is late... Weird situation because it uses a maximum of 5% of my video decoding capabilities... Did you notice this problem?

 

 

Sent from my iPhone using Tapatalk

Edited by jscoys
Link to comment
Share on other sites

HDHomeRun live tv does not work with this option enabled, i get an error saying there was a problem playing 

I have an HD Homerun Connect and no issues with this option enabled.

 

ERIC

Link to comment
Share on other sites

I have an HD Homerun Connect and no issues with this option enabled.

 

ERIC

 

Thanks for the feedback.

Link to comment
Share on other sites

  • 2 weeks later...
jscoys

In the next release, it will no longer throttle when using hardware encoding.

Hello @@Luke, with Version 3.1.6086.13780 problem still there...

Link to comment
Share on other sites

Hello @@Luke, with Version 3.1.6086.13780 problem still there...

 

Ok, it is not throttling though. If you are still having an issue, remember this is experimental, and we will not always have the answers, so you might need to roll up your sleeves a little and help find the problem. Thanks.

Link to comment
Share on other sites

jscoys

Just to remember the status of my tests : if throttling is enabled, when it send the signal to pause the transco it can't start it again and when the playback arrive to the same position of what FFMPEG was able to transco, the video stops. It arrives only if throttling is checked, so YES it's a throttling problem with NVENC. Maybe there is a part of optimization to accomplish to make it work properly with Zeranoe builds.

 

My config is an athlon 8350 with a GeForce 750ti. I remain at your disposal for further tests and I would appreciate that other people bring us their own test results to see if it is a configuration problem or environment problem or an Emby pb or à Zeranoe pb...

 

Would like to help you but I haven't tools at my disposal to help, so I'm really limited in my diagnostics. Asking in the past to be introduced as a developper to help Emby by reporting at least detailed diagnostics but no answer...

 

Anyway I Will try to help you. I Will do further tests and give you logs.

 

 

Sent from my iPhone using Tapatalk

Link to comment
Share on other sites

  • 1 month later...
Smokescry

Can anyone post a how to for NVENC and Emby for Windows? I feel like I am really close but I am missing a step.

 

Thanks in advance.

Link to comment
Share on other sites

Nequit

1, Download static ffmpeg from https://ffmpeg.zeranoe.com/builds/

2. Extract it somewhere

3. In playback->transcoding set custom ffmpeg path with the address of ffmpeg.exe from zeranoe

4. Change hardware acceleration to NVENC

 

And that's all you need to do.

I have a GTX 970 and some high bitrate HVENC files fails to transcode, but it still works with the rest 95% of the files.

  • Like 1
Link to comment
Share on other sites

  • 3 weeks later...
moviefan

What happens if it fails to transcode?

 

I had enabled this setting before and assumed it was working, but noticed today that my CPU was still heavily being used by ffmpeg during transcoding and started investigating a bit more and came across this thread.

 

After pointing to zeranoe ffmpeg the videos never play.

 

Attaching a log.  Not sure what the issue is.  

 

Any suggestions for troubleshooting?

Link to comment
Share on other sites

Waldonnis

What happens if it fails to transcode?

 

I had enabled this setting before and assumed it was working, but noticed today that my CPU was still heavily being used by ffmpeg during transcoding and started investigating a bit more and came across this thread.

 

After pointing to zeranoe ffmpeg the videos never play.

 

Attaching a log.  Not sure what the issue is.  

 

Any suggestions for troubleshooting?

 

I'm not seeing any overt errors in the transcode log provided, but it's not showing it's even starting the encode (the log looks like it's truncated for some reason).  Is there an error in the server log related to ffmpeg exiting prematurely, or maybe a transcode log that shows an ffmpeg error from a different attempt?  Glancing at the command line, the ffmpeg command looks okay, though, and it seems to be detecting the streams properly - and they seem to fall within the constraints of the encoder, so barring a driver versioning conflict (unlikely), it should be working.

 

Also, what model of card is it?

Link to comment
Share on other sites

moviefan

I went to test some more this morning and restarted the server so I could get a clean server log after applying the setting.  This allowed it to work afterwards.  So I guess maybe a server restart is required after changing this setting for it to properly work.  CPU for ffmpeg maxed out at 8% with it working.

 

I've heard people complain about the quality of NVENC and I did notice pretty quickly that some of the scenes in the files I was testing with were pretty ugly/blocky.

 

Will probably disable this setting for now because of that.  

 

Does QuickSync suffer the same issue?  Was reading how Kaby Lake is going to be doing lots of stuff in hardware so might try again once they are released and i upgrade my CPU if it is any better.

 

I have a GTX 760 btw.

Link to comment
Share on other sites

Waldonnis

I went to test some more this morning and restarted the server so I could get a clean server log after applying the setting.  This allowed it to work afterwards.  So I guess maybe a server restart is required after changing this setting for it to properly work.  CPU for ffmpeg maxed out at 8% with it working.

 

I've heard people complain about the quality of NVENC and I did notice pretty quickly that some of the scenes in the files I was testing with were pretty ugly/blocky.

 

Will probably disable this setting for now because of that.  

 

Does QuickSync suffer the same issue?  Was reading how Kaby Lake is going to be doing lots of stuff in hardware so might try again once they are released and i upgrade my CPU if it is any better.

 

I have a GTX 760 btw.

 

Glad it's working!  Quality-wise, QuickSync can offer better quality, but it's still not great.  Since quality perception is rather subjective, it's worth trying on your own to see if it's acceptable for you.  Some generations of Intel processors offer more options and somewhat better quality than others.  Kaby Lake brings hardware en/decoding of HEVC (10bit) and HDCP 2.2 support (for playback), if that's important to you, but I don't think the h.264 encoder has changed significantly compared to prior generations (could be wrong, though).

 

I'm still running an older Ivy Bridge and frequently use QuickSync encodes to quickly test-encode some files.  I do software encoding with x264/libx264 for the final encodes for better quality, but when checking a short clip to make sure I didn't do something stupid editing-wise, the speed is nice.  The video quality doesn't matter much in those cases anyway.  I avoid NVENC for these because the encoder's a bit too limiting at times, and I've seen some odd output in some specific circumstances.

 

NVENC can do better quality than what I generally see, but requires a little tweaking of the command line (note: it still isn't good if you have a discerning eye, have difficult source material, or are just picky about artifacts and macroblocking like I am).  Since we can't really tweak the command line Emby uses at this stage, it's a bit of a moot point, but if you're curious to see what you can get out of it for other uses, I highly recommend looking over the options for the NVENC encoder in ffmpeg and toying around with it.  Just remember that many transcodes will, by nature, be of lower quality than the original source regardless (barring lossless->lossless conversions).  It's all about finding the right balance for you of quality and bitrate (and file size, when doing file->file transcoding) for the source material and your use case.

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