2013-05-31 71 views
0
  1. 我有一個帶有聲音的視頻。
  2. 我提取了它的音頻。
  3. 我提取從該音頻這樣的土磚試聽一個cutlist:關於從視頻中刪除靜音

    開始: 00:00:12:00

    結束: 00:00:13:00

    這些是沉默的部分,要被刪除。

  4. 我將它們轉換爲幀數爲25fps的視頻文件。

  5. 我創建一個文件的AviSynth這樣的:

    AVISource( 「20130531_1303_46.avi」)

    作物(2,0,852,480)

    TRIM(0,4-1)++修剪(50 + 1,0)

    TRIM(0,34-1)++修剪(82 + 1,0)

    ....

    每行包含開始(第一個修剪)減去(前一個結束和開始之間的所有差異的總和)和結束(第二個修剪)減去(前一個結束和開始之間的所有差異的總和) - 幀。

  6. 我加載到virtualdub。

  7. 我在試聽時根據剪輯清單刪除所有沉默並保存爲mp3
  8. 我將mp3加載到virtualdub中。

問題:它在整個視頻中不同步,即它在同步時開始並在一段時間後沿正方向漂移(我必須輸入負值-3000ms才能同步在中間,也經常被切掉)

意味着有些事情是錯的。我猜想所有差異的總和。

要理解這一點:

當您選擇在VirtualDub中的一部分,將其刪除,幀的總數是幀的總數減去幀的部分有量。

示例:

刪除了框架2-5。所以基本上1-6-7-8 -...離開了。根據一個原始的時間框架關係,我會從7開始,但是7現在是3,而這加起來就越多。

所以我想:如果我使用幀數減去所有以前刪除的幀的總和,我應該在正確的位置切割。

我似乎忘記了什麼,它是什麼?

回答

0

我找到了解決方案。如果我使用開始= 4和尾= 50,然後我需要一步

End - Start + 1 

向前看,而不是

End - Start 

但儘管如此,在25fps的分辨率太低,有時音頻部分被砍掉。