為了生成截幀圖,下面這個自定義模塊可以實(shí)時地為直播流創(chuàng)建了一個只有一個幀的FLV文件,然后利用FFMPEG等工具將這個FLV文件轉(zhuǎn)成一個圖片。下面也給出了一個在Flash程序中調(diào)用接口創(chuàng)建這個截幀圖的例子。
你可以在Wowza Module Collection中找到一個編譯好的版本。

配置
要啟動這個模塊,需要在你的應(yīng)用中添加下面的Module。在這里Configure modules 你可以得到更多配置Module的細(xì)節(jié)。
|
Name |
Description |
Fully Qualified Class Name |
|
createSnapshot |
Create FLV Snapshot. |
com.wowza.wms.plugin.collection.module.ModuleCreateSnapshot |
Flash客戶端調(diào)用的例子
注:這個Module為直播流和點(diǎn)播流的截圖分別提供2個不同的接口。
直播流
對于直播流,你可以獲得當(dāng)前最新的關(guān)鍵幀的截圖:
Code:
varresultObj:Object = new Object();
resultObj.onResult= function(fileName: String)
{
trace("result: "+fileName);
}
nc.call("createSnapshotLive",resultObj, "myStream");
VOD對于VOD點(diǎn)播流,你可以設(shè)定一個截圖的時間位置。這個時間以毫秒為單位,截的圖是離這個時間點(diǎn)最近的關(guān)鍵幀的圖像。
Code:
varresultObj:Object = new Object();
resultObj.onResult= function(fileName:String)
{
trace("result: "+fileName);
}
nc.call("createSnapshotVOD",resultObj, "sample.mp4", 30000); // 30 seconds into the video
注意: 盡管這個例子用的是sample.mp4點(diǎn)播文件,但是生成的依然是單幀的Flv文件。這個文件被命名為sample.mp4_30000.flv。
這個FLV文件被存儲在應(yīng)用的內(nèi)容目錄下。你可以從這里下載并繼續(xù)用FFMPEG等工具來處理它。
用FFMPEG將FLV轉(zhuǎn)為圖片
FFMPEG 可以將flv文件轉(zhuǎn)化為一個PNG圖片。
Code:
ffmpeg -imyStream.flv -vcodec png -vframes 1 -an -f rawvideo -s 320x240 myStream.png
注意:隨著FFMPEG的版本變化,這里的命令行可能會變化,因此請參考http://www.ffmpeg.org/獲得最新的命令行參數(shù)資料。
Wowza Streaming Engine 4是業(yè)界功能強(qiáng)大、API接口豐富的流媒體Server產(chǎn)品,采用它作為流媒體服務(wù)器產(chǎn)品的案例很多,直播、在線教育、IPTV都有它的用武之地。
京ICP備09015132號-996 | 違法和不良信息舉報電話:4006561155
© Copyright 2000-2026 北京哲想軟件有限公司版權(quán)所有 | 地址:北京市海淀區(qū)西三環(huán)北路50號豪柏大廈C2座11層1105室
北京哲想軟件集團(tuán)旗下網(wǎng)站:哲想軟件 | 哲想動畫