|
mpeg-ts视频播放速度过快,音频速率正常。这bug到ubuntu12.04也没解决啊?哎‘’‘’‘’‘’‘’‘’‘’‘’‘’‘’‘’‘’‘’‘’‘’‘’‘’
最终在这里找到了解决方法:
有些视频文件(主要是 flv 文件)由于编码的问题,会给 MPlayer 带来音频/视频同步的麻烦。这有两种可能情况:
* MPlayer 会尝试修复,但同步问题却更遭。 * MPlayer 会尝试修复那些正确的,因此没有必要同步。
对于第一种情况,你应当让 MPlayer 努力修复同步问题: mplayer -autosync 30 -mc 2.0
而对于第二种情况,你不应当允许 MPlayer 去修复同步问题: mplayer -autosync 0 -mc 0
将上述命令中的 autosync 设置为正值就会让 MPlayer 逐渐调整音频/视频的同步。值越高,MPlayer 越快地修复它。mc 选项指定 MPlayer 纠正每帧要多少秒。值越高,MPlayer 越认为接近修复音频/视频同步。设置为 0 则阻止 MPlayer 修复。
关于这两个参数的功能和设置可以看这里。
−autosync <因子>
基于音频延迟的检测逐步调整A/V同步. 设定−autosync 0, 也就是默 认 值, 将导致帧记时完全基于音频延迟的检测. 设定−autosync 1也是一 样, 但将会微妙的改变所使用的A/V修正算法. 设置大于1的值对那些 视 频 帧速率不均匀, 但用−nosound可以正常播放的电影一般会有帮助. 这 个值越大, 记时方法越接近于−nosound. 对于没有好的音频延迟检测功能的声卡驱动试试用−autosync 30来平滑这个问题. 使用这个值时, 如 果出现大的A/V同步偏移, 只需要1或2秒就可以摆平. 对于任何声卡 驱 动, 打开这个选项的唯一缺点就是对于突然的A/V偏移的反应延迟时间.
−mc <每帧秒数>
每帧的最大A-V同步修正(以秒为单位).
在我的系统中用
mplayer -autosync 1 -mc 1.0
才使得音视频同步,当然也可以把这两个参数写入配置文件~/.mplayer/config。
autosync=30 mc=2.0
|