截取一張352x240尺寸大小的,格式為jpg的圖片:
ffmpeg -i test.asf -y -f image2 -t 0.001 -s 352x240 a.jpg
把視頻的前30幀轉(zhuǎn)換成一個Animated Gif :
ffmpeg -i test.asf -vframes 30 -y -f gif a.gif
目前還沒有找到截取任意一幀為圖片的方法。
另外,由于Flash在線錄制的視頻格式為Flv格式,F(xiàn)lash能播放的視頻格式也僅為Flv格式,所以從Flv到其它視頻如avi,mpeg,rm,asf,wmv之間的轉(zhuǎn)換就是一個問題,今天試了一下FFmpeg可以在命令行做到Flv到其它視頻格式的互轉(zhuǎn)。那么在Server-side程序中使用WSH即可實現(xiàn)web在線轉(zhuǎn)換視頻格式及視頻截圖的功能,目前沒有實踐,但理論上可行,明天就試一下。
說到利用FFmpeg從視頻截圖的命令,那天在找從視頻截取指定幀的圖片的辦法,這么多天沒有進展,原來我從網(wǎng)上找的關(guān)于FFmpeg的參數(shù)命令列表并不全,少了-ss這么一個參數(shù).于是這個問題也到現(xiàn)在才解決.
??? 今天利用FFmpeg -h > ffmpeg.txt,把FFmpeg的命令打印出來后,才發(fā)現(xiàn)了這一參數(shù):
-ss time_off set the start time offset
使用-ss參數(shù),可以從指定的時間開始處理轉(zhuǎn)換任務(wù).如:
ffmpeg -i test2.asf -y -f image2 -ss 08.010 -t 0.001 -s 352x240 b.jpg
那么從任意一幀截圖的問題也就解決了.只要-ss后的時間參數(shù)是隨機產(chǎn)生,并且在視頻的有效時間內(nèi),就可以了.
?另外,-ss后跟的時間單位為秒。