orency

Results 8 comments of orency

> log里看不出什么原因,加上环境变量MDK_LOG_STATUS=1会打印时间信息。用DecodeFps.exe -c:v MFT:d3d=11 ...可以看看解码能达到多少。mft的软解性能很差,会卡不意外。你可以找个libdav1d.dll放进来然后-c:v dav1d看看解码效果。potplayer是用硬解吗? 环境变量不知设置在哪里,无论设置在系统还是主程序都没看见什么时间信息 DecodeFps.exe 不知为什么只能看见cpu占用提高,并不能显示出什么信息 potplayer应该是软解,我的显卡并不支持硬解av1 拿vlc的libdav1d.dll来用会直接闪退 [logdav1d.txt](https://github.com/wang-bin/mdk-sdk/files/7891445/logdav1d.txt) 不设置解码器的情况下24帧率文件卡顿较轻微肉眼不易察觉,60帧率文件依旧肉眼可见卡顿. 并且主动设置解码器为FFmpeg会直接崩溃.崩溃日志如下 [log10.txt](https://github.com/wang-bin/mdk-sdk/files/7890662/log10.txt) ffplay正常日志 [ffplay.log](https://github.com/wang-bin/mdk-sdk/files/7891333/ffplay.log) 测试用的4k av1 60帧视频下载自https://www.youtube.com/watch?v=xmESOGcXjmI 这种剧烈运动的视频与potplayer对比卡顿尤为明显

> 最新的包支持不设置解码器时自动回退到dav1d(libdav1d.dll要存在) 经测试``MDK 0.13.0 (git ba413b6)`` 不设置时仍旧是有人眼能感知到的跳帧感 [log13.txt](https://github.com/wang-bin/mdk-sdk/files/7896125/log13.txt) 日志中两个Error也不知有没有联系 但主动将解码器设置为dav1d时则完全流畅,毫无卡顿跳帧感 日志也能看到是直接调用dav1d而非ffmpeg 且cpu与gpu占用均比不设置解码器时低10-20个百分点 decodefps.exe确实毫无信息,只能看见它把cpu占高了,但framereader.exe有fps跳动的信息,不清楚是不是平台的原因

> 从log看并没有调用dav1d也没解码出画面,log发错了? 是发错了,那个是主动设置解码器为FFMPEG时日志,只有声音没有画面 不设置解码器的日志 [01-19 19-58-14.txt](https://github.com/wang-bin/mdk-sdk/files/7896849/01-19.19-58-14.txt)

显卡是Radeon Graphics(Renoir),amd的核显.测下来不支持av1硬解 ``测试程序是qt示例qmdkplay,qt msvc 6.2.2,win11`` dav1d解码 decoded: 13844/1, elapsed: 164122, fps: 84.4/207.8 decoded: 13844/1, elapsed: 159769, fps: 86.7/227.0 MFT:d3d=11解码 decoded: 13844/1, elapsed: 208358, fps: 66.4/146.8 MFT:d3d=0解码 decoded: 13844/1, elapsed: 195266,...

-c:v D3D11 无法播放,它的MFT:d3d=11 播放能力确认来自AV1 Video Extension ,把这个插件卸载后MFT:d3d=11也无法播放 gpu占用只有12% ,cpu却达到60%,是软解无疑 d3d11渲染感觉差别不大,仍旧有轻微跳帧感,特别是有移动镜头长画面时,dav1d解码明显是连贯顺畅的,MFT:d3d=11则有些许不连贯跳帧感,但谈不上严重卡顿 但dxvachecker调用AV1 Video Extension的av1decodermft_store.dll播放,则很顺滑与glfwplay调dav1d表现相同.

> glfwplay加上参数`-fps -1`会以最快的速度解码和渲染,你看看有没有卡顿,如果没有的话应该是我音视频同步的问题 在MDK 0.13.0 (git 8f7983f)测试, MFT:d3d=11加这个参数反而加剧了这种现象,且音频完全不同步了 后来意识到之前表述其实是不准确的,其实是一种帧率略快而跳帧的快进感而非卡顿感 因为dav1d加上这个参数与MFT:d3d=11现象是类似的 奇怪的是MFT:d3d=11下player_->mediaInfo().video[0].codec.frame_rate得到的帧率也是正确的 更怪的是手动setFrameRate()为该文件正确帧率,没有快进感了,但画面速度反而过慢了,当然音频也不同步了 另外问下为何mediainfo要播放几秒才能获取,setmedia之后立即获取,它的几个属性值均为0?

> 你用最新的dll再发个完整log ``MDK 0.14.0 (git f7623f2) `` [logs.txt](https://github.com/wang-bin/mdk-sdk/files/8145348/logm.txt) 这版本MFT:d3d=11音视频完全不同步了😎画面比声音慢好多

其实cloudfront和akamai也可以这么玩,把默认的ntt线路垃圾ipv4替换成香港或东京的cn2线路ipv4,可以达到起飞的效果,ipv6更佳. 唯一问题是akaimai没做全证书绑定,会显示证书错误,需要手动忽略