Re: [問題] 播放影片時 以audio為主的sync
自問自答一下
最後還是用一個外部時鐘去對
這個時鐘在audio開始的時候啟動 video會去對它
沒有管叫它播audio到真的播audio中的delay
不過目前看不出誤差 (只試過少數幾個影片)
qt回傳的audio播放時間實在太不準了 (函數名還敢叫us 一開始還以為精度超高)
不管怎麼調 甚至再加一個校正時鐘上去 還是會對不準
所以還是用外部時鐘...
※ 引述《Arton0306 (Ar藤)》之銘言:
: 最近用ffmpeg設計播放器時遇到問題
: 目前video和audio的同步 我採用以audio時間為主的sync方式 (感謝q大!)
: 我先取得目前audio播放的時間
: 以及抓取下一個video frame的present time
: 若兩者小於error 就renew video frame
: 若大於等於error 而且present time落後 就drop
: 否則不動作
: (照理說 不可能drop 因為我檢查renew是每1msec就檢查一次 而error是20msec左右)
: 但在播放影片時 若注意看會發現影片有一點點跳格
: 追查原因 我發現qt(我用qt做gui)取得audio播放時間並非平滑的
: 而是以大約40ms在遞增
: 造成我有些frame會被drop掉
: 也有人問這個問題
: https://bugreports.qt-project.org/browse/QTBUG-22592
: https://bugreports.qt-project.org/browse/QTBUG-10759
: 但官方回答是很難抓到audio device真正的時間
: 我想問 是否每個framework都是這樣?還是只有qt抓不準?
: 如果都抓不準 有沒有什麼好方法解決上面問題?
: 感謝
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 114.42.50.185
※ 編輯: Arton0306 來自: 114.42.50.185 (06/12 22:03)
※ 編輯: Arton0306 來自: 114.42.50.185 (06/12 22:04)
※ 編輯: Arton0306 來自: 114.42.50.185 (06/12 22:05)
※ 編輯: Arton0306 來自: 114.42.50.185 (06/12 22:06)
討論串 (同標題文章)
本文引述了以下文章的的內容:
完整討論串 (本文為第 2 之 2 篇):