Please can someone help me to get an ffmpeg batch file working (an amateur radio application)? I am trying to take the video/audio output of OBS Virtual Cam plug-in and compress it to H.265 using the computer's on-board Nvidia GTX1650 Super GPU card. For test purposes only I am trying to send the output to VLC as a UDP stream (ultimately it will be sent to an Adalm Pluto SDR).
By all accounts others have succeeded with this batch file but it certainly does not work for me. I am attaching the batch file and a screen print of the output. Very grateful for any help! Russ.
+ Reply to Thread
Results 1 to 7 of 7
-
-
More information: I have since found that there was a change around ffmpeg v4.3.0 whereby the commands for hevc_nvenc were changed. Therefore, I installed ffmpeg v4.2.3 (29/5/20) and my batch file worked just fine!
I am not happy with using old versions of programs and it would be nice to update the batch file to work with the latest ffmpeg.
Is there someone out there with the skill to update my batch file. please? (as attached to my first post) -
I don't have a nvidia card to test with. But it looks like it doesn't like the combination of the preset and rc mode. Try changing or removing one. Beyond that I suggest you start by using as simple a command line as possible, then add options one by one until you find what's causing the problem.
ffmpeg -? encoder=hevc_nvenc
Code:Encoder hevc_nvenc [NVIDIA NVENC hevc encoder]: General capabilities: delay hardware Threading capabilities: none Supported hardware devices: cuda cuda d3d11va d3d11va Supported pixel formats: yuv420p nv12 p010le yuv444p p016le yuv444p16le bgr0 rgb0 cuda d3d11 hevc_nvenc AVOptions: -preset <int> E..V...... Set the encoding preset (from 0 to 11) (default medium) default 0 E..V...... slow 1 E..V...... hq 2 passes medium 2 E..V...... hq 1 pass fast 3 E..V...... hp 1 pass hp 4 E..V...... hq 5 E..V...... bd 6 E..V...... ll 7 E..V...... low latency llhq 8 E..V...... low latency hq llhp 9 E..V...... low latency hp lossless 10 E..V...... lossless losslesshp 11 E..V...... lossless hp -profile <int> E..V...... Set the encoding profile (from 0 to 4) (default main) main 0 E..V...... main10 1 E..V...... rext 2 E..V...... -level <int> E..V...... Set the encoding level restriction (from 0 to 186) (default auto) auto 0 E..V...... 1 30 E..V...... 1.0 30 E..V...... 2 60 E..V...... 2.0 60 E..V...... 2.1 63 E..V...... 3 90 E..V...... 3.0 90 E..V...... 3.1 93 E..V...... 4 120 E..V...... 4.0 120 E..V...... 4.1 123 E..V...... 5 150 E..V...... 5.0 150 E..V...... 5.1 153 E..V...... 5.2 156 E..V...... 6 180 E..V...... 6.0 180 E..V...... 6.1 183 E..V...... 6.2 186 E..V...... -tier <int> E..V...... Set the encoding tier (from 0 to 1) (default main) main 0 E..V...... high 1 E..V...... -rc <int> E..V...... Override the preset rate-control (from -1 to INT_MAX) (default -1) constqp 0 E..V...... Constant QP mode vbr 1 E..V...... Variable bitrate mode cbr 2 E..V...... Constant bitrate mode vbr_minqp 8388612 E..V...... Variable bitrate mode with MinQP (deprecated) ll_2pass_quality 8388616 E..V...... Multi-pass optimized for image quality (deprecated) ll_2pass_size 8388624 E..V...... Multi-pass optimized for constant frame size (deprecated) vbr_2pass 8388640 E..V...... Multi-pass variable bitrate mode (deprecated) cbr_ld_hq 8 E..V...... Constant bitrate low delay high quality mode cbr_hq 16 E..V...... Constant bitrate high quality mode vbr_hq 32 E..V...... Variable bitrate high quality mode -rc-lookahead <int> E..V...... Number of frames to look ahead for rate-control (from 0 to INT_MAX) (default 0) -surfaces <int> E..V...... Number of concurrent surfaces (from 0 to 64) (default 0) -cbr <boolean> E..V...... Use cbr encoding mode (default false) -2pass <boolean> E..V...... Use 2pass encoding mode (default auto) -gpu <int> E..V...... Selects which NVENC capable GPU to use. First GPU is 0, second is 1, and so on. (from -2 to INT_MAX) (default any) any -1 E..V...... Pick the first device available list -2 E..V...... List the available devices -delay <int> E..V...... Delay frame output by the given amount of frames (from 0 to INT_MAX) (default INT_MAX) -no-scenecut <boolean> E..V...... When lookahead is enabled, set this to 1 to disable adaptive I-frame insertion at scene cuts (default false) -forced-idr <boolean> E..V...... If forcing keyframes, force them as IDR frames. (default false) -spatial_aq <boolean> E..V...... set to 1 to enable Spatial AQ (default false) -spatial-aq <boolean> E..V...... set to 1 to enable Spatial AQ (default false) -temporal_aq <boolean> E..V...... set to 1 to enable Temporal AQ (default false) -temporal-aq <boolean> E..V...... set to 1 to enable Temporal AQ (default false) -zerolatency <boolean> E..V...... Set 1 to indicate zero latency operation (no reordering delay) (default false) -nonref_p <boolean> E..V...... Set this to 1 to enable automatic insertion of non-reference P-frames (default false) -strict_gop <boolean> E..V...... Set 1 to minimize GOP-to-GOP rate fluctuations (default false) -aq-strength <int> E..V...... When Spatial AQ is enabled, this field is used to specify AQ strength. AQ strength scale is from 1 (low) - 15 (aggressive) (from 1 to 15) (default 8) -cq <float> E..V...... Set target quality level (0 to 51, 0 means automatic) for constant quality mode in VBR rate control (from 0 to 51) (default 0) -aud <boolean> E..V...... Use access unit delimiters (default false) -bluray-compat <boolean> E..V...... Bluray compatibility workarounds (default false) -init_qpP <int> E..V...... Initial QP value for P frame (from -1 to 51) (default -1) -init_qpB <int> E..V...... Initial QP value for B frame (from -1 to 51) (default -1) -init_qpI <int> E..V...... Initial QP value for I frame (from -1 to 51) (default -1) -qp <int> E..V...... Constant quantization parameter rate control method (from -1 to 51) (default -1) -weighted_pred <int> E..V...... Set 1 to enable weighted prediction (from 0 to 1) (default 0) -b_ref_mode <int> E..V...... Use B frames as references (from 0 to 2) (default disabled) disabled 0 E..V...... B frames will not be used for reference each 1 E..V...... Each B frame will be used for reference middle 2 E..V...... Only (number of B frames)/2 will be used for reference -dpb_size <int> E..V...... Specifies the DPB size used for encoding (0 means automatic) (from 0 to INT_MAX) (default 0)
Last edited by jagabo; 4th Apr 2021 at 07:17.
-
Thank you, Jagabo. That comprehensive list will be invaluable.
-
The help doc says -preset slow is for 2-pass encoding. Try -preset medium instead. or llhq.
-
Be sure to write back when you find out what works. It will help the next person with the problem.
Similar Threads
-
Why is the NVIDIA GTX 1660 faster in 8K hevc encoding than the RTX 3070 ?
By Video Grain in forum Video ConversionReplies: 14Last Post: 25th Nov 2020, 17:16 -
Create batch file for ffmpeg to increment the file output
By Bassquake in forum Video ConversionReplies: 2Last Post: 25th Nov 2019, 05:03 -
nvenc encoding on nvidia 2060 Super vs 2070 Super
By hydra3333 in forum Newbie / General discussionsReplies: 12Last Post: 20th Nov 2019, 20:29 -
WARNING: NVidia GTX 1650 doesn't have the Turing encoder's B-Frames support
By hiroo in forum Video ConversionReplies: 4Last Post: 25th Apr 2019, 15:10 -
Performance problems with 4K H.264 playback on NVIDIA GTX 770
By dfischer in forum Software PlayingReplies: 5Last Post: 18th Mar 2017, 12:14