iT邦幫忙

0

javascript mediarecoder api錄製影片丟失影片長度?

mediaRecoder api
錄製下來的影片沒有時間長度
但是檔案本身是正常可以播的

因為沒有時間長度
所以某些影片播放器(比如windows內建的播放器)
無法拖動播放進度條
所以如果要跳到後面觀看
必須要等待全部影片播放完畢

有沒有純粹可以在前端解決這個問題的方法?

已經看過一些解決方式但都不是很完美....
有方法還是用ffmpeg去copy檔案

1 個回答

0
浩瀚星空
iT邦超人 1 級 ‧ 2020-09-18 16:17:42

大多數來說,會發生這樣的事大多數都是本身影片檔的問題居多。
影片本身也包含了一些類似索引的資料。
時間長度也是儲存在那邊。一但有損壞或是不存在的情況下。(也有可能是故意調整的)

大多數的處理方式就是重建了。

「ffmpeg去copy檔案」其實就算是重建索引的一招。

類似索引的資料是類似像file header那樣的東西嗎

fillano iT邦超人 1 級 ‧ 2020-09-18 19:13:58 檢舉

https://www.webmproject.org/docs/container/

看一下Muxer那一段,他強調不能有audio的keyframe以降低大小,這樣恐怕天生就影音無法同步。

froce iT邦大師 1 級 ‧ 2020-09-18 21:02:44 檢舉

瀏覽器的影音錄製很多應用情境是用UDP傳輸,你不能保證串流出來結果一定都不會掉包,所以會這樣蠻正常的。

我要發表回答

立即登入回答