Selur's Little Message Board

Full Version: NVEnc on 2020.08.02.1 gives black video
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
Pages: 1 2
Hi 

Windows 10 64bit
Nvidia 1060  451.77

After upgrading Hybrid from Hybrid_2020.06.21.1 to 2020.08.02.1 NVEnc (both h264 and h265) stopped working properly. Output video is black. Audio is OK. Size of the output file seens to be OK. I returned to 2020.06.21 and it works again. 

I use ENEnc to archive my videos from GoPro using h265 and Constant Quality 35

Thanks
Tom
Since x264, x265 and NVEnc all fail my guess would be that it's a problem with the decoding.
In case you use Avisynth or Vapoursynth it might be a bug in the SourceFilter if you don't use either of them then it might be a problem with the libav or ffmpeg. In case hardware decoding is used, it might also be a problem with the drivers (complete deinstallation and a clean install might help then).
1. Would need a debug output to see what the decoder call and potentially used scripts looks like.
2. Would need a small sample with which you can reproduce the problem so I can see if I can reproduce this problem here.

Cu Selur
(16.08.2020, 12:33)Selur Wrote: [ -> ]Since x264, x265 and NVEnc all fail my guess would be that it's a problem with the decoding.
In case you use Avisynth or Vapoursynth it might be a bug in the SourceFilter if you don't use either of them then it might be a problem with the libav or ffmpeg. In case hardware decoding is used, it might also be a problem with the drivers (complete deinstallation and a clean install might help then).
1. Would need a debug output to see what the decoder call and potentially used scripts looks like.
2. Would need a small sample with which you can reproduce the problem so I can see if I can reproduce this problem here.

Cu Selur


Thank you for your quick reply. 

I don't use Avisynth  or Vapoursynth. I just need to reduce size of the video files. I've sent you link to input file and two output files:
1. Encoded with x264. No debug file
2. Encoded with NVEnc (h265) together with debudg file. 

Version 2020.06.21 still works well. 

Regards
Tom
Audio extraction call:
Code:
"C:\Program Files\Hybrid\64bit\ffmpeg.exe" -y -threads 8 -i "F:\HybridVideoFolders\TEMP\iId_1_aid_0_lang_en_DELAY_-43ms_2020-08-16@21_29_32_4610_01.aac" -c:a aac -strict -2 -b:a 128k -ar 48000 -channel_layout stereo "F:\HybridVideoFolders\TEMP\iId_1_aid_0_lang_en_DELAY_-43ms_2020-08-16@21_29_32_4610_02.aac"
->
Code:
created F:\HybridVideoFolders\TEMP\iId_1_aid_0_lang_en_DELAY_-43ms_2020-08-16@21_29_32_4610_02.aac (0.438584 MB)

Video encoding call:
Code:
"C:\Program Files\Hybrid\64bit\ffmpeg.exe" -y -loglevel fatal -noautorotate -nostdin -threads 8 -i "H:\GoPro (Media)\2020.06.28 Spin Moto East Cork\GH010053.MP4" -map 0:0 -an -sn -vf  scale=out_range=pc -pix_fmt yuv420p -vsync 0  -f yuv4mpegpipe - | "C:\Program Files\Hybrid\64bit\NVEncC.exe" --y4m -i - --fps 59.940 --codec h265 --profile main --level auto --tier high --sar 1:1 --lookahead 16 --output-depth 8 --vbrhq 0 --vbr-quality 35.00 --max-bitrate 240000 --gop-len 0 --ref 3 --bframes 0 --no-b-adapt --mv-precision Q-pel --cu-max 32 --cu-min 8 --preset quality --colormatrix bt709 --cuda-schedule sync --output "F:\HybridVideoFolders\TEMP\NVEnc(h265)_2020-08-16@21_29_32_4610_04.265"
->
Code:
created F:\HybridVideoFolders\TEMP\NVEnc(h265)_2020-08-16@21_29_32_4610_04.265 (21.939 MB)
Muxing call:
Code:
"C:\Program Files\Hybrid\64bit\MP4Box.exe" -add "F:\HybridVideoFolders\TEMP\NVEnc(h265)_2020-08-16@21_29_32_4610_04.265"#video:fps=59.940:delay=43:xps_inband:name="GoPro AVC":lang="en" -brand hvc1 -add "F:\HybridVideoFolders\TEMP\iId_1_aid_0_lang_en_ms_2020-08-16@21_29_32_4610_02.aac"#audio:name="GoPro AAC":lang="en" -mpeg4 -itags tool="Hybrid 2020.08.02.1" -tmp "F:\HybridVideoFolders\TEMP" -new "G:\Hybrid Test\2020-08-16@21_29_32_4610__06.mp4"
->
Code:
created G:\Hybrid Test\2020-08-16@21_29_32_4610__06.mp4 (22.3819 MB)
renamed G:\Hybrid Test\2020-08-16@21_29_32_4610__06.mp4 to G:\Hybrid Test\NVEnc(h265).mp4

all ran through without any errors.


I first reencoded just the video and everything worked fine, but when I added the audio the video wasn't visible any more.
-> So, yes I can reproduce the issue.
Strange thing is this also happens when using another audio encoder (like NeroAACEnc, FHG or Qaac)
Okay, it seems to be an issue with current MP4Box, using FFmpeg as muxer (Config->Output->Container settings->Mp4 Settings->FFmpeg instead of MP4Box), does seem to fix the issue.

-> Okay so as a workaround you can use FFmpeg for muxing. I also could reproduce this with another video source.
I'll look into it some more today after work and look into a proper fix. My guess is that the gpac folks (mp4box developers) broke something, so I'll try to figure out when and where they broke it and report it to them.

Cu Selur

Ps.: did have time to look into when the gpac folks broke it, but I created a issue entry in their bug tracker: https://github.com/gpac/gpac/issues/1576
Thank you very detailed description. For me the best workaround it to use version 2020.06.21

Regards
Tom
Do what you want, but be aware, that I only help with support for the latest version. Smile
You could also simply copy the MP4Box.exe from the 2020.06.21 build and copy it into the 2020.08.02.1 build.

Cu Selur
Enabling "Config->Output->Mp4 Settings->Force HEVC tag" and setting it to hvc1 seems to work for me too.
So this might be a bug in libav and not in MP4Box, using '-brand hev1' works using '-brand hvc1' doesn't.

Cu Selur
Will send you a link to a dev version via PM (in a few minutest) which by default will use 'hvc1' as brand which should help with the issue.

Cu Selur
(17.08.2020, 16:40)Selur Wrote: [ -> ]Will send you a link to a dev version via PM (in a few minutest) which by default will use 'hvc1' as brand which should help with the issue.

Cu Selur


OK, I Understand. Is there any downside of using FFmpeg instead of MP4Box?
Some NLEs like MP4Box and some like FFmpeg generated MP4 files more.

Cu Selur
Pages: 1 2