ローカルネットワーク内で映像や音声を配信できる FFTsServer

FFTsServer は Java で作られた、http のローカル配信環境を手軽に構築できるアプリケーションである。配信形式は MPEG-TS に限られる。

FFTsServer の配布先:Releases · niwakazoider/peercaststation · GitHub

コマンドプロンプトから起動する。
java -jar FFTsServer.jar 8080

解凍した FFTsServer.bat を FFTsServer.jar と同じフォルダ内に移動してダブルクリックで起動できる
バッチファイルの配布先:Dropbox - FFTsServer.zip

これで出力先に http://localhost:8080 とファイル名で配信できるようになり、ローカルネットワークで受信するには http://localhost:8080 とファイル名を指定することでデータを受信できる。
前回記事 の gdigrab を使ったコマンドに出力先を localhost に変えて配信するコマンド。フォーマットは mpegts を指定
ffmpeg -f gdigrab -draw_mouse 1 -show_region 1 -framerate 30 -video_size 640x360 -offset_x 10 -offset_y 20 -i desktop -vcodec libx264 -pix_fmt yuv420p -f mpegts "http://localhost:8080/test.ts"

負荷を減らすには映像コーデックに mpeg2video とビットレートを指定する
ffmpeg -f gdigrab -draw_mouse 1 -show_region 1 -framerate 30 -video_size 640x360 -offset_x 10 -offset_y 20 -i desktop -vcodec mpeg2video -b:v 8000k -pix_fmt yuv420p -f mpegts "http://localhost:8080/test.ts"

VLC などで受信するコマンドは Ctrl + V で「http://localhost:8080/test.ts」を取り込む

localhost:8080 に配信と受信することになるので同一ネットワーク内にあれば PC のほかに VLC などを使うことで Android や iOS でも受信することができる。

画面を共有するほかに動画や音声ファイルも共有することができる。ただし、mpegts で取り込めるコーデックであることが前提になることと、L-PCM でうまく音が流れない。入力ファイルの前に -re を忘れないこと。

使えるコーデック
H.264, MPEG2, MP3, AC3, AAC

.ts動画を共有するコマンド。同様に mp4 動画なども共有できる
ffmpeg -re -i input.ts -c copy -f mpegts "http://localhost:8080/test.ts"

.mp4 の動画の場合は -bsf:v h264_mp4toannexb を付ける
ffmpeg -re -i input.mp4 -c copy -bsf:v h264_mp4toannexb -f mpegts "http://localhost:8080/test.ts"

.mp3音声を共有するコマンド
ffmpeg -re -i input.mp3 -c copy -f mpegts "http://localhost:8080/test.ts"

音声ファイルの圧縮形式が wav や flac, alac などの場合は mp3 の 320k 配信に変える
ffmpeg -re -i input.wav -acodec libmp3lame -v:a 320k -f mpegts "http://localhost:8080/test.ts"

ffmpeg 配信の詳しい記事:Windows の ffmpeg で生放送する方法
関連記事

コメント

非公開コメント

プロフィール

ロベルト

お問い合わせはこちらまで
robelt2525[at]gmail.com

中の人 @nico_lab

広告リンク
Amazon
楽天市場

ブログ更新用 @blo_nico_lab

詳しいプロフィールはこちら

当ブログは、Amazonアソシエイトに参加しています。