自動取出和取代影片音軌的小程式

3月 16, 2019
Hello 大家好,我是Denny,今天來聊聊一個我在處理現場演出混音的小程式。

這是一支一陣子以前寫來方便我處理現場錄影音軌取出和放回的小程式:
Toucan Video Parser (link to github)



這隻小程式在不重新對影像編碼和自動批次的前提下做二件事情:
1. 將指定的影片檔案的聲音軌道取出,放到指定的資料夾內
2. 將指定的影片檔案的聲音軌道用指定資料夾內相同檔名的wav檔取代,並自動調整音軌相對於影像的時間軸保持同步。

針對2.需要調整時間軸的部分考慮二點
a. 如果metadata內有"delay relative to video"欄位,則以這個欄位的值放回音軌
b. 如果錄影來自DJI的機器,則自動套用-0.1的itsoffset值(將聲音提前0.1秒),原因請見 - 對齊聲音和影像不同步的現場錄影 - 以DJI Osmo Pocket為例

這是一支基於Python的GUI,使用ffmpeg, mediainfo和在Python下對應的ffmpy, pymediainfo模組,加上負責GUI的tkinter而成。

這支程式的背景可參考我以前寫過的(已經有點過時)的文章 - 如何快速替換錄影檔案中的聲音,基本上的需求是在不對影片重新編碼的情況下取出或替換影片內的檔案,不重新編碼可以避免需要投注大量的時間讓電腦運算。

使用的方式很簡單,從左到右
1. 指定要處理的影片
2. 指定一個資料夾,either是要放取出的聲音的資料夾,或是放有對應影片檔名的wav檔的資料夾
3. 從最右邊的二個選項選擇要取出影片的聲音或是取代影片的聲音
4. 執行的進度會顯示在中間的地方,完成這次的批次處理後會出現"Done!"。

大致上是這樣,如果這個程式對你有幫助或有任何想法想要分享,歡迎留言告訴我,祝大家混音愉快!

沒有留言:

技術提供:Blogger.