2012年12月30日星期日

利用 VLC 及 JTVLC 於 Justin.tv 進行廣播

桌面廣播相信不是一種新技術,不少軟件亦已經做到
需要刻意在桌面播廣上規劃範圍來播放影片好似比較麻煩
如果可以直接將影片經串流在廣播網站如 Justin.tv 上廣播相信會更方便

為何會提及 VLC ?
因為 VLC 是跨平台多媒體播放器,不論任何系統都能夠操作
而 JTVLC 是 Justin.tv 所開發,能收集由 VLC 串流的資訊,並在 Justin.tv 上廣播的軟件
VLC 可以到 http://www.videolan.org/vlc/ 下載
Windows 亦可以使用由 Portableapps.com 所提供的 免安裝VLC
使用 RPM 的 Linux 可以輸入
yum install vlc
安裝
使用 DEB 的 Linux 可以輸入
sudo apt-get install vlc
安裝
而 JTVLC 到
Linux 版 http://apiwiki.justin.tv/mediawiki/images/2/24/Jtvlc-lin-0.41.tar.gz
Windows 版 http://apiwiki.justin.tv/mediawiki/images/3/36/Jtvlc-win-0.41.zip
Mac 版 http://apiwiki.justin.tv/mediawiki/images/2/2d/Jtvlc-mac-0.41.zip
下載
解壓縮後便可以使用
連結有機會因為版本更新而變動

先使用 VLC 進行串流播放
Linux 或 Mac 輸入
vlc "video" \
-vvv input_stream \
--sout="#duplicate{dst='transcode{venc=x264{keyint=60,idrint=2},vcodec=h264,vb=300,acodec=mp4a,ab=128,channels=2,samplerate=44100}:rtp{dst=127.0.0.1,port=1234,sdp=file:///tmp/vlc.sdp}'}"
Windows 輸入
vlc "video" -vvv -I rc --sout="#duplicate{dst=display,dst='transcode{venc=x264{keyint=60,idrint=2},vcodec=h264,vb=300,acodec=mp4a,ab=128,channels=2,samplerate=44100}:rtp{dst=127.0.0.1,port=1234,sdp=file:///%TEMP%\vlc.sdp}'}"

完成後,會創建一個 vlc.sdp 的檔案於目標目錄

然後利用 JTVLC
Linux 或 Mac 輸入
jtvlc username stream_key file:///tmp/vlc.sdp
Windows 輸入
jtvlc username stream_key %TEMP%\vlc.sdp

完成後,便可以在 Justin.tv 進行廣播
Linux 的結果

Windows 的結果


留意
使用任何系統都需要設定 PATH 才能直接使用指令如 vlc 及 jtvlc
若果沒有設定 PATH 便需要使用絕對路徑對相對路徑執行指令

/usr/bin/vlc
亦建議使用 Batch File 或 Shell Script ,將設定資料保存,避免經常編寫指令

Linux 或 Mac 編寫 Shell Script
#!/bin/sh
vlc "${1}" \
-vvv input_stream \
--sout="#duplicate{dst='transcode{venc=x264{keyint=60,idrint=2},vcodec=h264,vb=300,acodec=mp4a,ab=128,channels=2,samplerate=44100}:rtp{dst=127.0.0.1,port=1234,sdp=file:///tmp/vlc.sdp}'}"
儲存為 vlc-stream.sh
#!/bin/sh
jtvlc username stream_key file:///tmp/vlc.sdp
儲存為 jtvlc-stream.sh

Windows 編寫 Batch File
vlc "%1%" -vvv -I rc --sout="#duplicate{dst=display,dst='transcode{venc=x264{keyint=60,idrint=2},vcodec=h264,vb=300,acodec=mp4a,ab=128,channels=2,samplerate=44100}:rtp{dst=127.0.0.1,port=1234,sdp=file:///%TEMP%\vlc.sdp}'}"
儲存為 vlc-stream.bat
jtvlc username stream_key %TEMP%\vlc.sdp
儲存為 jtvlc-stream.bat

這樣便只需要輸入 vlc-stream video
而 jtvlc-stream 的 username 及 stream_key 可以直接輸入自己的 Justin.tv 的帳戶名及 Stream Key
自己便不需要再記下長篇大論的 Stream Key

留意 Windows
vlc 指令的 file:// 後還有 1 個 / ,連續 3 個 /
jtvlc 指令是不需要使用 file://

沒有留言 :

發佈留言