閱讀448 返回首頁    go 技術社區[雲棲]


視頻站點的搭建

  挺久沒動筆寫blog了,換了新工作比較忙是一個原因。最近的工作是做一個素材管理的係統,其中有個要求做視頻預覽,將用戶上傳的視頻轉換並在網頁上預覽。在網頁上看視頻,現在大多數視頻網站都是采用flv流媒體文件,用flash做的播放器播放,我們也采用了這種方式。流程大概主要:用戶上傳文件->後台轉換文件成flv格式->flv播放器調用flv文件。
    轉換視頻、音頻文件到flv格式可以使用mencoder或者ffmpeg,我們采用了mencoder,在linux上的安裝參考這裏,安裝結束後記的設置環境變量:export LD_LIBRARY_PATH=/usr/local/lib:LD_LIBRARY_PATH
    java調用的話就是通過Process:
 Process process = runtime.exec(cmd);


mencoder轉換視頻音頻成flv命令:
mencoder 源文件 -o 目標文件.flv -of lavf    -lavfopts i_certify_that_my_video_stream_does_not_use_b_frames -oac mp3lame -lameopts abr:br=56 -ovc lavc -lavcopts vcodec=flv:vbitrate=400:mbd=2:mv0:trell:v4mv:cbp:last_pred=3:dia=4:cmp=6:vb_strategy=1 -vf scale=200:-3 -ofps 12 -srate 22050

取視頻元信息命令(視頻比特率、長寬等信息):
mplayer -identify 文件名 -ao null -vo null -frames 0

切割視頻命令:
mencoder -ss 開始時間 -oac copy -ovc copy -endpos 終止時間 文件名 -o 目標文件名

    操作flv文件(給視頻打上信息、切割之類)可以采用flvtool2
   
    需要注意的是通過java調用的話,一定要處理標準輸出和標準錯誤輸出,不然進程會掛在那結束不了,可以開個線程取處理。在網頁播放的話,可以考慮用這個播放器,具體參數看它的說明。最後一個問題,IE6的flash控件需要激活,這個問題的解決可以采用swfobject.js
    有興趣的老大們可以考慮自己搭個“土豆網”,說不定哪天拿了風投.....浮雲

文章轉自莊周夢蝶  ,原文發布時間2007-12-19

最後更新:2017-05-17 17:01:58

  上一篇:go  PPT轉圖片(更新)
  下一篇:go  聯通沃雲聯手阿裏雲推混合雲解決方案 打造共贏雲生態