日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

使用wowza和xuggler将RTMP转换为RTSP

發(fā)布時間:2023/12/3 编程问答 53 豆豆
生活随笔 收集整理的這篇文章主要介紹了 使用wowza和xuggler将RTMP转换为RTSP 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
注意:這是我們的“ Xuggler開發(fā)教程 ”系列的一部分。

大家好!

    在過去的三個月中,我們一直在進行電話會議項目。 我們認為,使用諸如Flex之類的技術的基于Web的應用程序將是此類要求苛刻的項目的最佳方法。 隨著軟件的復雜性和電信提供商的需求增加,我們面臨的挑戰(zhàn)值得注意。 一個挑戰(zhàn)是要求從使用我們的軟件的代理向其RTSP服務器提供實時視頻。 我們面臨的問題是, Flex在視頻和音頻傳輸中使用了RTMP協(xié)議,我們需要快速進行一些重新流處理而又無需重新發(fā)明輪子的事情。

    在本文中,我們將嘗試提供足夠的信息來解決一個復雜的問題,即實時流的RTMP到RTSP的重新流傳輸。 我們的解決方案基于同時支持RTMP和RTSP的 wowza流服務器以及xuggler ,后者在Java應用程序中帶來了FFMPEG的強大功能。

    Wowza支持將H.264實時流從RTMP轉換為RTSP ,但不支持H.263 。 默認情況下,從ActionScript Camera對象捕獲的視頻是H.263編碼的。 我們將提供基于xuggler的代碼,該代碼可實時將H.263轉換為H.264 ,并將H.264流發(fā)布到Wowza 。

    首先,我們需要設置xuggler 。 我們需要最新版本的FFMPEG和H.264,因此有必要從svn存儲庫中檢出xuggler 。

    svn checkout http://xuggle.googlecode.com/svn/trunk/java/xuggle-xuggler xuggle-xuggler

    然后我們必須設置一些環(huán)境參數(shù)。

    的Linux

    export XUGGLE_HOME=/usr/local/xuggler export PATH=$XUGGLE_HOME/bin:$PATH export LD_LIBRARY_PATH=$XUGGLE_HOME/lib:$LD_LIBRARY_PATH

    蘋果電腦

    export XUGGLE_HOME=/usr/local/xuggler export PATH=$XUGGLE_HOME/bin:$PATH export DYLD_LIBRARY_PATH=$XUGGLE_HOME/lib:$DYLD_LIBRARY_PATH

    視窗

    • 將XUGGLE_HOME設置為您選擇的目錄(確保該目錄在磁盤上)。 生成時,必須確保XUGGLE_HOME在C:驅動器上,并且在路徑中沒有空格。 抱歉。 如果使用安裝程序,則此限制不適用。
    • 添加%XUGGLE_HOME%\ bin ; 到PATH環(huán)境變量的開頭。
    • (可選)將%XUGGLE_REPO%設置到您希望螞蟻安裝已發(fā)布的常春藤jar的目錄(如果未設置,則默認在構建目錄中為dist / ivy)。

    然后,我們必須構建并安裝xuggler 。

    ant run-tests sudo ant install

    現(xiàn)在你已經(jīng)xuggler安裝在$ XUGGLE_HOME

    完成安裝后,我們必須編寫完成此技巧的代碼。

    package com.javacodegeeks.xuggler;import org.apache.commons.cli.CommandLine; import org.apache.commons.cli.Options; import org.apache.commons.cli.ParseException;import com.xuggle.xuggler.Converter;public class Transcoder {/*** @param args*/public static void main(String[] args) {String inputStream = "rtmp://wowzahost/live/streamLive3H.263";String outputStream = "rtmp://wowzahost/live/streamLive3H.264";String[] parameters = new String[] { "--acodec", "libfaac", "--vcodec","libx264", "--vpreset","/usr/local/xuggler/share/ffmpeg/libx264-ultrafast.ffpreset",inputStream, outputStream };Converter converter = new Converter();Options options = converter.defineOptions();CommandLine cmdLine;try {cmdLine = converter.parseOptions(options, parameters);converter.run(cmdLine);System.out.println("Finish!!!");} catch (ParseException e) {// TODO Auto-generated catch blocke.printStackTrace();}}}

    注意事項。

    • 在$ XUGGLE_HOME / share / ffmpeg目錄中,您會找到所有x264可用的預設。更好的質量意味著更多的延遲。 您將必須選擇適合您的需求。
    • 您將不必更改acodec和vcodec
    • FFMPEG的最新版本可以讀取和寫入RTMP流。

    示例項目在此處可用。

    感謝您的時間。 希望您會發(fā)現(xiàn)本文有趣。

    最好的祝福
    。/拍


    翻譯自: https://www.javacodegeeks.com/2010/05/rtmp-to-rtsp-re-stream-using-wowza-and.html

    總結

    以上是生活随笔為你收集整理的使用wowza和xuggler将RTMP转换为RTSP的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。