2017-09-13 89 views
0

爲什麼AVAsset音軌對於相同的視頻文件有不同的timeRanges?爲什麼AVAsset曲目對於相同的視頻文件有不同的timeRange?

我已經完全加載了媒體文件AVAsset。我打印此類的屬性並接收此信息。

▿ 2 elements 
    - 0 : <AVAssetTrack: 0x17000fed0, trackID = 1, mediaType = vide> 
    - 1 : <AVAssetTrack: 0x17000fe90, trackID = 2, mediaType = soun> 

所以我有一個視頻和一個聲音AVAssetTrack相同的媒體文件。

所以我打印每個AVAssetTrack的timeRange。

所以對於視頻:

▿ CMTimeRange 
    ▿ start : CMTime 
    - value : 0 
    - timescale : 1000 
    ▿ flags : CMTimeFlags 
     - rawValue : 1 
    - epoch : 0 
    ▿ duration : CMTime 
    - value : 5000 
    - timescale : 1000 
    ▿ flags : CMTimeFlags 
     - rawValue : 1 
    - epoch : 0 

而對於聲音。

▿ CMTimeRange 
    ▿ start : CMTime 
    - value : 0 
    - timescale : 1000 
    ▿ flags : CMTimeFlags 
     - rawValue : 1 
    - epoch : 0 
    ▿ duration : CMTime 
    - value : 5002 
    - timescale : 1000 
    ▿ flags : CMTimeFlags 
     - rawValue : 1 
    - epoch : 0 

那麼爲什麼聲音AVAssetTrack的持續時間比視頻長?這是相同的視頻文件。

回答

0

請問這個文件從哪裏來?也許它是由合成後的音軌和視頻軌道合併後分別進行編輯的用戶創建的。編輯文件時,他創造了這個小小的差異。一般來說,通過AVMutableComposition你可以合併你想要的任何資產,時間範圍不一定是相同的。所以我不會感到驚訝得到你的發現。

相關問題