C#:獲取視頻某一幀的縮略圖


讀取方式:使用ffmpeg讀取,所以需要先下載ffmpeg。網上資源有很多。

原理是通過ffmpeg執行一條命令獲取視頻某一幀的縮略圖。

首先,需要獲取視頻的幀高度和幀寬度,這樣獲取的縮略圖才不會變形。

獲取視頻的幀高度和幀寬度可以http://www.zhoumy.cn/?id=9通過查看。

獲取到視頻的幀高度和幀寬度后,還需要獲取縮略圖的高度和寬度,這是按比例縮放的。

比如你存放縮略圖的區域的最大寬度和最大高度是100,縮略圖的高度也應縮放到對應大小。

 

接下來通過執行一條命令就可以獲取到視頻某一幀的縮略圖:

 

string command = string.Format("\"{0}\" -i \"{1}\" -ss {2} -vframes 1 -r 1 -ac 1 -ab 2 -s {3}*{4} -f image2 \"{5}\"", ffmpegPath, oriVideoPath, frameIndex, thubWidth, thubHeight, thubImagePath);

執行命令的方法可以查看:http://www.zhoumy.cn/?id=9

其中:

ffmpegPath為ffmpeg的全路徑
oriVideoPath為視頻的全路徑
 
frameIndex為幀處在的秒數
 
thubWidth為縮略圖的寬度
thubHeight為縮略圖的高度
thubImagePath為生成的縮略圖所在的路徑(jpg,bmp好像都可以,具體可以自己嘗試)



轉載聲明:本文轉載自:http://www.zhoumy.cn/,原文鏈接:http://www.zhoumy.cn/?id=10


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM