2013-02-01 50 views
1

我一直在搜索網絡,以便在上傳文件後從後臺的quicktime電影中提取設置的海報圖像。有沒有一種有效的方法來做到這一點?或者有沒有辦法像視覺一樣抓住特定的框架?我會想象一個腳本可以梳理文件的特定屬性值對和圖像內容,不是嗎?任何有關這個問題的幫助將不勝感激。從quicktime電影中提取海報圖片?有沒有更容易的格式來做到這一點?

謝謝!

+0

你有沒有參考quicktime電影格式?從中我們可以提取這個海報框架。我會認爲它有某種標籤,表明哪個框架是海報框架。 – mmgp

+0

我剛剛搜索了一個API,發現這個:http://heroinewarrior.com/quicktime/對於Linux ...也許這將做的伎倆? – rodenbushdesign

+0

您很可能需要閱讀XMP標籤:http://www.sno.phy.queensu.ca/~phil/exiftool/TagNames/XMP.html – mmgp

回答

2

如果海報框始終是.mov視頻的一部分,則可以先抽取exif標記PosterTime開始。該標籤的值指示海報幀在視頻中的位置,默認情況下它在時間0(即,第一幀)。然後你可以通過一些瞭解這種視頻格式的程序來提取幀,ffmpeg是一個很好的這樣的程序。

作爲示例,我們可以使用exiftool來提取標籤PosterTime的值。我手動改變了一些視頻我周圍的海報幀,然後使用exiftool作爲

exiftool -PosterTime -b somevideo.mov 

我得到:

0.013333333333333 

這意味着海報幀可以在第二〜0.013中找到(即,如果不清楚,則在第二個0和第二個1之間)。現在我們可以使用ffmpeg提取當時的單幀:

ffmpeg -ss 00:00:00.013 -i somevideo.mov -frames 1 posterframe.jpg 

現在,請注意,在http://www.sno.phy.queensu.ca/~phil/exiftool/TagNames/QuickTime.html你會看到還有一個名爲PreviewPICT標籤。這似乎表明可能有其他內容代表海報框架,但我不確定此標籤是否實際用於此目的。

+0

謝謝你這個優秀的答案!我會想象'PreviewPICT'將用於在quicktime player(pro)中由用戶完成的手動圖像文件插入。這很棒。對於服務器上的文件資源信息管理,xmp支持看起來也是一種很好的方法。 – rodenbushdesign

相關問題