mpv如何使用benchmark功能
-
- 帖子: 197
- 注册时间: 2015-12-23 16:20
- 系统: ubuntu 16.04
mpv如何使用benchmark功能
最近发现,ffmpeg有benchmark功能,随后用来测试了一下解码速度。
经常使用mpv-media-player,于是
mpv --list-options|grep benchmark
返回
--benchmark removed [deprecated]
说明以前是有这个功能的,谁知道现在如何使用benchmark功能。
经常使用mpv-media-player,于是
mpv --list-options|grep benchmark
返回
--benchmark removed [deprecated]
说明以前是有这个功能的,谁知道现在如何使用benchmark功能。
- astolia
- 论坛版主
- 帖子: 6513
- 注册时间: 2008-09-18 13:11
Re: mpv如何使用benchmark功能
--untimed=yes --video-sync=display-desync --audio=no --vulkan-swap-mode=immediate --opengl-swapinterval=0 --osd-msg1='${estimated-display-fps}'
-
- 帖子: 197
- 注册时间: 2015-12-23 16:20
- 系统: ubuntu 16.04
Re: mpv如何使用benchmark功能
经过实际的使用发现,这个东西能够测出来的其实是显示器的显示上限。比如我的显示器是60fps的,那么就只能显示到60fps,然而其实这个解码器是能够解码到300fps以上的。
有办法测试出解码器的解码上限?
其实若是能够写出来,那不就是我另外一个帖子里面的占满100%解码器的功能。哈。
我在北京,昨天的论坛忽然无法登录了。
是论坛出问题了,还是哪里出问题了。
- astolia
- 论坛版主
- 帖子: 6513
- 注册时间: 2008-09-18 13:11
Re: mpv如何使用benchmark功能
太感谢您了!没有您的指点,我都不知道公司的办公电脑竟然配了这么高端的显示器,我还一直以为是杂牌呢
-
- 帖子: 197
- 注册时间: 2015-12-23 16:20
- 系统: ubuntu 16.04
Re: mpv如何使用benchmark功能
我刚刚又到Ubuntu里面试了下,
这个脚本还真能测试解码器的能力。
上回那个测试结果是我正好在Windows里面使用的mpv,
换回Ubuntu之后我也解码出好几百帧的帧率。
为了弄清具体的参数的作用,我试了下,
在不加入
--opengl-swapinterval=0
指令的时候,Ubuntu里面显示的是60帧。
但是Windows里面最高只能显示60帧。同时按住i查看OSD信息,发现Dropped Frames里面都写的是0。
不知道是哪里出了问题。根据我自己的了解可能是Windows里面默认使用的是d3d11va,Windows里面能使用opengl?
按说,我的Windows版本的比起Ubuntu其实要高些。
那么有办法能够打印mpv的默认参数配置,用来对比Windows版本和Ubuntu版本的区别吗?
- astolia
- 论坛版主
- 帖子: 6513
- 注册时间: 2008-09-18 13:11
Re: mpv如何使用benchmark功能
你学习方法的缺陷在这里再次体现出来了。明明有详尽的手册不去查,非要来搞黑盒测试,永远流于表象,碰不到底层机制。yubinalice 写了: ↑2023-10-09 22:48 为了弄清具体的参数的作用,我试了下,
在不加入
--opengl-swapinterval=0
指令的时候,Ubuntu里面显示的是60帧。
这种帧率和显示器刷新率一致的问题,稍微有点经验的人一听就知道是vsync的事。就算你在影音方面混了这么多年也没听说过这东西,一查manpage里--opengl-swapinterval的说明,也写得明明白白的。再搜一下manpage里其他vsync出现的地方,各种相关的参数也都找得到,包括适用于d3d11的。
-
- 帖子: 197
- 注册时间: 2015-12-23 16:20
- 系统: ubuntu 16.04
Re: mpv如何使用benchmark功能
我刚刚试验过了,当不加入vsync的时候,无法显示帧率,但是仍然是满速度播放的。astolia 写了: ↑2023-10-10 15:17你学习方法的缺陷在这里再次体现出来了。明明有详尽的手册不去查,非要来搞黑盒测试,永远流于表象,碰不到底层机制。yubinalice 写了: ↑2023-10-09 22:48 为了弄清具体的参数的作用,我试了下,
在不加入
--opengl-swapinterval=0
指令的时候,Ubuntu里面显示的是60帧。
这种帧率和显示器刷新率一致的问题,稍微有点经验的人一听就知道是vsync的事。就算你在影音方面混了这么多年也没听说过这东西,一查manpage里--opengl-swapinterval的说明,也写得明明白白的。再搜一下manpage里其他vsync出现的地方,各种相关的参数也都找得到,包括适用于d3d11的。
然后我在U盘Windows里面也试验了。这个指令在另一个Windows里面也无法超过60。可能是Windows的某些机制。
而且,不加入no-audio的话,audio是不变速的。有办法让他的声音也同步变速?
而且很奇怪呀,untime这个选项是用来干什么的。我是在grep benchmark的时候以外碰上的。不加这个参数,也能够测出解码速度。
刚才又查了下untime这个关键字,
mpv --list-options|grep untime
--ao-null-untimed Flag (default: no)
--untimed Flag (default: no)
manual.pdf里面搜索了,这个应该就是您之前说的文档了。untim只查到一个runtime。这个东西应该在哪个文档里?
- astolia
- 论坛版主
- 帖子: 6513
- 注册时间: 2008-09-18 13:11
Re: mpv如何使用benchmark功能
又在想当然了。你觉得我说的vsync就是指video-sync?这句话你是一点都听不进去啊。
算了,我把你拉黑了,懒得再管你这些破事了
-
- 帖子: 197
- 注册时间: 2015-12-23 16:20
- 系统: ubuntu 16.04
Re: mpv如何使用benchmark功能
不要拉黑我,我虽然技术不是很厉害,但是对于播放器的了解和Ubuntu的了解还是比一般的新手要厉害的。
我发现之前Windows里面哪个manual.pdf应该就是 man mpv 里面的内容,之前是快捷键设置问题,搜了半天没搜到。
现在发现,Windows下面使用
--d3d11-sync-interval=0
替代
--opengl-swapinterval=0
就能实现同样的功能。
但是,奇怪的是,
Windows全屏模式下最高帧率只能到120fps,窗口模式却能到2400fps,
Ubuntu下,全屏会出现严重的画面撕裂,窗口也有1800多fps。
但是问题是,
我设置的是hwdec,
据我所知,显卡的硬解码最多只能硬解码4K60fps。
那么这个2400多fps的1080分辨率的帧率是咋来的呢?
总不能是一部分使用CPU一部分使用GPU。我设定的是使用GPU解码。
这个机器明显没这么强大的解码能力呀。
然而,我在Windows里面查看任务管理器GPU选项,发现
GPU的占用不到70%。
相比这里面的原理非常的复杂。不是一般人看得懂的。
-
- 帖子: 197
- 注册时间: 2015-12-23 16:20
- 系统: ubuntu 16.04
Re: mpv如何使用benchmark功能
不要拉黑我,我虽然技术不是很厉害,但是对于播放器的了解和Ubuntu的了解还是比一般的新手要厉害的。
我发现之前Windows里面哪个manual.pdf应该就是 man mpv 里面的内容,之前是快捷键设置问题,搜了半天没搜到。
现在发现,Windows下面使用
--d3d11-sync-interval=0
替代
--opengl-swapinterval=0
就能实现同样的功能。
但是,奇怪的是,
Windows全屏模式下最高帧率只能到120fps,窗口模式却能到2400fps,
Ubuntu下,全屏会出现严重的画面撕裂,窗口也有1800多fps。
但是问题是,
我设置的是hwdec,
据我所知,显卡的硬解码最多只能硬解码4K60fps。
那么这个2400多fps的1080分辨率的帧率是咋来的呢?
总不能是一部分使用CPU一部分使用GPU。我设定的是使用GPU解码。
这个机器明显没这么强大的解码能力呀。
然而,我在Windows里面查看任务管理器GPU选项,发现
GPU的占用不到70%。
相比这里面的原理非常的复杂。不是一般人看得懂的。