截取一張352x240尺寸大小的,格式為jpg的圖片:

ffmpeg -i test.asf -y -f image2 -t 0.001 -s 352x240 a.jpg

把視頻的前30幀轉換成一個Animated Gif :

ffmpeg -i test.asf -vframes 30 -y -f gif a.gif

目前還沒有找到截取任意一幀為圖片的方法。

另外,由于Flash在線錄制的視頻格式為Flv格式,Flash能播放的視頻格式也僅為Flv格式,所以從Flv到其它視頻如avi,mpeg,rm,asf,wmv之間的轉換就是一個問題,今天試了一下FFmpeg可以在命令行做到Flv到其它視頻格式的互轉。那么在Server-side程序中使用WSH即可實現web在線轉換視頻格式及視頻截圖的功能,目前沒有實踐,但理論上可行,明天就試一下。

說到利用FFmpeg從視頻截圖的命令,那天在找從視頻截取指定幀的圖片的辦法,這么多天沒有進展,原來我從網上找的關于FFmpeg的參數命令列表并不全,少了-ss這么一個參數.于是這個問題也到現在才解決.

??? 今天利用FFmpeg -h > ffmpeg.txt,把FFmpeg的命令打印出來后,才發現了這一參數:

-ss time_off set the start time offset

使用-ss參數,可以從指定的時間開始處理轉換任務.如:

ffmpeg -i test2.asf -y -f image2 -ss 08.010 -t 0.001 -s 352x240 b.jpg

那么從任意一幀截圖的問題也就解決了.只要-ss后的時間參數是隨機產生,并且在視頻的有效時間內,就可以了.

?另外,-ss后跟的時間單位為秒。