如何使用FFMpeg截屏实现与Geforce Experience相同的性能

如何使用FFMpeg截屏实现与Geforce Experience相同的性能

我有一张 NVidia 显卡,目前使用 Geforce Experience 进行屏幕捕获。GE 性能非常出色,即使我以 4K、60 FPS 和高比特率录制视频,也不会遇到任何性能下降的情况。视频也有完整的 FPS。

因为我需要以 96kHz 采样率录制未压缩的音频,所以我遇到了问题,GE 没有任何选项可以调整音频格式或采样率。我猜 AAC 不接受高于 48kHz 的任何内容,并且 AAC 是默认的音频编解码器。GE 设置中没有选项可以更改任何内容。

我尝试运行 FFMpeg,在其中我可以加载 NVidia 编解码器并调整编解码器,但性能远不及使用 GE 所能达到的性能。我想知道这样的性能是否可能实现,如果可以,您会推荐哪些设置。目前,我尝试了以下方法:

ffmpeg -y -hide_banner `
 -f gdigrab -framerate 60 -video_size 3840x2160 ` -i desktop `
 -f dshow -i audio="Stereo Mix (Realtek High Definition Audio)" `
 -map 0:v -map 1:a `
 -c:a pcm_s24le -ar 96000 `
 -c:v h264_nvenc -preset p6 -tune hq -cq 10 -bufsize 5M `
 -qmin 0 -g 250 -bf 3 -b_ref_mode middle -temporal-aq 1 -rc-lookahead 30 -i_qfactor 0.75 -b_qfactor 1.1 `
 stream.mkv

FFMpeg 的部分设置复制自将 FFmpeg 与 NVIDIA GPU 硬件加速结合使用

干杯!

PS. 解决方法是运行 Geforce Experience 并通过 Audacity 和 Sound Mix 分别录制音频,然后使用 FFMpeg 对两个通道进行后期处理,这种方法可行,但我想知道是否可以使用纯 FFMpeg 来实现这一点。

相关内容