解决ffmpeg使用screen-capture-recorder录屏,有屏幕缩放的情况下录不全的问题

1、起因

        使用ffmpeg做录屏功能,开启自带的gdigrab录屏时,鼠标指针闪烁严重,录屏电脑性能较低时甚至看不清鼠标。我受安排解决鼠标闪烁问题,解决方案较多,但考虑性价比与通用性(下到XP上到WIN11),使用现成且技术较为成熟的screen-capture-recorder.dll较为合适,但使用此dll录屏时,若屏幕有缩放,会导致录像无法录全整个屏幕,而我们无法控制用户行为,只能解决此问题。

2、问题所在

        screen-capture-recorder.dll处理了屏幕缩放的问题,而ffmpeg同样处理了,这导致,如果屏幕有125%的缩放,ffmpeg裁剪一次录屏区域,screen-capture-recorder.dll裁剪一次录屏区域,导致了录不全屏幕的现象出现。

3、解决方式

去除两次缩放中的一次即可,考虑性价比,我们选择在ffmpeg.exe上禁用高DPI缩放,个人用户可右键→属性→兼容性→更改高DPI设置→替代高DPI缩放行为,而如果想自动给用户设置,可通过bat脚本,集成在自动安装中,附上bat脚本代码,脚本改自 百度用户:依梦琴瑶 的脚本,去除了输入选项,改为直接修改同目录下ffmpeg的属性。因对bat脚本语言不熟悉,修改的并不优雅,见谅。

4、bat脚本代码

新建txt,粘入代码,另存为所有类型,后缀.bat即可使用

@echo off 
::设置ffmpeg.exe的完整路径
set App_path= %~dp0ffmpeg.exe

:Mai
  • 2
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值