rockcarry / fanplayer

A portable video player based on ffmpeg for windows and android platform.
GNU Lesser General Public License v3.0
606 stars 161 forks source link

音视频同步问题 #52

Open meowlgmee opened 2 years ago

meowlgmee commented 2 years ago

开启垂直同步, 输出帧率小于视频文件帧率的时候, 没有丢帧去追赶音频, 会导致视频画面滞后, 音视频不同步

rockcarry commented 2 years ago

你是自己修改了代码吗?

meowlgmee commented 2 years ago

我移植到了Linux上, 视频画面作为我整体输出的一部分, 整体输出由egl/openGL ES控制输出, 开启垂直同步,输出模式是1080i50, 即25fps/s, 视频帧率为30; 我的初步想法是 av_sync_and_complete函数返回avdiff, 而不是直接avsleep, 且av_sync_and_complete函数在render_video之前, 先判断avdiff是否过大, 如果过大, 就不render了,直接丢弃; 如果在范围内,则执行av_sleep; 这是初步想法, 还没有验证 :p

TuringApple73 commented 1 year ago

@yunkernel 请问,你是怎么把fanplay移植到Linux的?我最近也在做这个事情,想弄一个Linux版的贡献一下