乳ろぐ

ゲームがメインのblogです。
PeCa配信Twitchもよろしくです。
カレンダー

08 | 2017/09 | 10
- - - - - 1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30

カテゴリー

最近の記事

最近のコメント

月別アーカイブ

スポンサーサイト
上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。


記事拡散やコメントして貰えると悦びます:D
OBSで複数サイト同時配信
以前、似たような記事を書いた事があるんですが、
もう少し情報量多目かつ丁寧にまとめておこうと言う趣旨。
1エンコ分の負荷でmulti streamingする為の記事です。
また、私は同時配信の際にTwitchで問題が多発したので、
その点も含めてまとめてみようと思います。

■OBS+nginxで同時配信■
OBS → nginx → (TCPrelay) → 各配信サイト
nginxはRTMPサーバとして動作。特に問題が発生しないなら一番楽。
1. RTMPモジュールが組み込まれたバイナリ(Rar-fileの最新版)をDL
2. 同時配信用cfgと起動batをDL&展開してインストールフォルダにコピー
3. confフォルダのnginx.confをテキストエディタで開き、配信サイトに合わせて設定
4. OBSの放送設定をSSの通りに記述する

5. nginx.batを実行してnginxを起動
6. 各サイトに合わせた開始方法で配信開始
私の場合はTwitchで配信する時に再生バッファが酷かったり録画に不具合があった。
詳しい打開方法はこの記事の末尾に書いておく。

■OBS+ffmpegで同時配信■
OBS → FlazrDumper → ffmpeg → (TCPrelay) → 各配信サイト
FlazrDumperでローカル配信化し、その配信データをffmpegで各サイトに流す感じ。
nginxだとTwitchの録画に不具合がある場合はこの手法でも解決できる。
この手法だとPeCaはrtmpじゃなくてhttp://localhost:8888で配信となる。
1. FlazrDumperをDL(動作にJavaが必要)
2. Git版のffmpegをDL
3. ffmpeg.exeがある場所にffmpeg.txtを作成し下記赤文字のように入力保存→拡張子をffmpeg.batに変える
start /high ffmpeg -re -i http://localhost:8888 -vcodec copy -acodec copy -f flv "rtmp://配信サイト1/app/ストリームキー" -vcodec copy -acodec copy -f flv "rtmp://配信サイト2/app/ストリームキー" -nostats
 上記例では2サイト同時ですが3サイト以上同時配信も可能です
 配信サイトとストリームキーは配信サイトに合わせて内容を変えてください
 具体的にTwitchとCavetubeで同時配信する場合の例を下記に示すと
start /high ffmpeg -re -i http://localhost:8888 -vcodec copy -acodec copy -f flv "rtmp://live-sin-backup.twitch.tv/app/live_ストリームキー" -vcodec copy -acodec copy -f flv "rtmp://cavestream.net/live/ストリームキー" -nostats
4. OBSの放送設定をSSの通りに記述する

5. FlazrDumperを起動した状態+各サイトに合わせた開始方法で配信開始
6. ffmpeg.batを起動
ffmpegが不安定で落ちやすい人は下記を試してみてください。
・64bit版で安定しない人は32bit版を試す
・優先度や使用コア数を弄るのも安定度が上がる
 起動batのffmpegの後に『-threads コア数』を追記すると良いかも
・TwitchやUstreamの人はTCPrelayを使う(後述参照)
・Twitchならシンガポールやアメリカ西部あたりで落ちないサーバを探す
 live-sin-backup.twitch.tv / live-lax.twitch.tv / live.twitch.tv
 ただし時間帯によってもコネロスする場合があるっぽいので注意

■TCPrelayで中継する■
TwitchやUstreamのように海外のサービスに接続する場合、
ツールによって勝手に帯域を絞られてしまう事があるようで、
速度は足りているはずなのに、やたら配信がカクカクしてしまう事があります。
TCPrelayと言うツールを使えばコレを解決する事が出来ます。
投稿時現在の最新版(0.4 alpha1)で説明します。
OSのbit数に応じたversionを落とします。(動作に.NET4が必要)
TCPRelay.exeを起動しSSのようにTarget URI(送信するサーバ)とListen Portを設定します。

Startボタンを押せば待機完了。後はOBS、nginx、ffmpeg等から配信データを送るだけ。
SSの設定だと『rtmp://localhost:1937』に送られてきたデータをTarget URIに流すので、
OBS→TCPrelay→Twitchの場合はOBSのFMS URLを下記のように設定する。
 rtmp://localhost:1937/app/live_ストリームキー
OBS→ffmpeg→TCPrelay→Twitch+Cavetube同時の場合の例は、
 start /high ffmpeg -re -i http://localhost:8888 -vcodec copy -acodec copy -f flv "rtmp://localhost:1937/app/live_ストリームキー" -vcodec copy -acodec copy -f flv "rtmp://cavestream.net/live/ストリームキー" -nostats
と言った感じで設定する。ストリームキーは各自で指定。
この場合TwitchはTCPrelayで中継してCavetubeはffmpegから直接繋いでます。
OBS→nginxでTCPrelayを使いたい場合はコレのnginx.confの中身を見て下さい。
ちなみに、TCPrelayのGUIが邪魔だと言う人はコマンドプロンプト起動も可能です。
TCPRelayC.exeの方に下記のコマンドライン指定で同様の動作をします。
 -th:live-lax.justin.tv -p:1937

■Twitch諸問題■
オマケでOBSでTwitchに同時配信する際のトラブルシューティング。
私がCavetubeから移行する際に結構グダったので参考になればと思います。

<配信バッファが酷い>
Twitchは他の配信媒体と違って推奨設定が存在し、
配信者側の設定によって再生がカクカクする原因になります。
以下が正しく設定されているかチェックしてください。
・ビットレートが高すぎない(3000Kbps未満推奨?)
・CBR有効
・キーフレームが2秒 (3秒も良いらしい)
・x264のエンコードプロファイルがmain
上記設定でも直らない場合は帯域制限が考えられるのでTCPrelayの項を参照。
視聴側の問題の可能性もあるので念のため対策を記しておきます。
・ブラウザ再起動or変更
・広告blockを使っていれば止める
・ハードウェアアクセラレーションのON/OFF(配信画面右クリ→設定)
Adobe Flash Playerを最新版にする
Tardsplayaを試す

<録画の記録時間が変&録画のシークができない>
1時間しか配信していないのに録画の記録時間が2~3時間となっていたり、
録画再生後30~60分程度で録画が失敗していたり、
録画再生時にシークが出来ない場合はRTMPサーバのせいかもしれません。
私はnginxを使用していましたがLiveは正常なのに録画に不具合がありました。
ffmpegを試すとLiveも録画も正常にできました。詳しい使い方はffmpegの項を参照。
投稿後コメント欄で教えて頂いたのですが、nginxで録画に不具合がある場合、
nginx.confの「meta copy;」の部分を「meta off;」にすると直るみたいです。
私の場合はmeta情報をoffにするとPeCa配信で不具合が起こったので、
PeCa用とTwitch用にnginxを多重起動して解決しました。
OBS → nginx①(meta copy;用) → PeCa等
      └ nginx②(meta off;用) → Twitch
nginx②のListen(port)を1945、applicationをtwitchにして、
①から『push rtmp://localhost:1945/twitch』で②に送って強引に打開。
②を使わないでも同様の動作が可能かもしれないですが、
色々試したものの、私にはconfの記述がよく分かりませんでしたxD

記事拡散やコメントして貰えると悦びます:D
この記事に対するコメント
管理人のみ閲覧できます
このコメントは管理人のみ閲覧できます
【2014/09/25 22:36】 | # [ 編集]

管理人のみ閲覧できます
このコメントは管理人のみ閲覧できます
【2014/09/26 00:55】 | # [ 編集]


それめっちゃ有力な情報ですねlol
私の苦労は一体なんだったんだってレベル・・・w
記事の方に追記させて頂きました
情報ありがとうございました
【2014/09/26 11:00】 URL | みるく #U6M1AWu2 [ 編集]

管理人のみ閲覧できます
このコメントは管理人のみ閲覧できます
【2014/09/30 00:46】 | # [ 編集]


おk
【2014/09/30 06:49】 URL | みるく #U6M1AWu2 [ 編集]


今更だけど
FlazrDumperでhttp化するのって何かデメリットある?
pecaとcaveで同時配信したいんだけど,nginxでcaveに上手くつながってくれない.
配信開始→即終了みたいな感じになってる.でも,pecaは連続的にちゃんと配信できてて...
FlazrDumperとffmpegつかえば問題なくできるからいいんだけど,FlazrDumper使うデメリットか何か知ってれば教えて欲しいどす
【2014/12/01 02:46】 URL | ホモ #- [ 編集]


>ホモさん
・CPU負荷が少しだけnginxよりもかかる
・portを知られると直接再生される可能性がある
・ffmpegが環境によって不安定
強引に挙げるならこのくらいかな? 無視って良いLv。
問題が無いならFlazrDumperでも良いと思います。
【2014/12/01 04:01】 URL | みるく #U6M1AWu2 [ 編集]


同じくngnix単体で壁つべが配信即終了になってしまうんですが、単体で配信できてる方設定どんなカンジでしょうか?
【2014/12/15 19:13】 URL | TEST #- [ 編集]


壁つべって確かpush rtmp://cavestream.net/live/~~~~;の形に対応していなくて、
配信開始ボタン押した後に出てくるリストから指定と他のサイトに比べて少し特殊でしたよね。
即終了してしまうのはそのせいかもしれませんね。
私も過去壁つべでやってた時はffmpegを安定させる方向で頑張ってました。
【2014/12/15 19:40】 URL | みるく #U6M1AWu2 [ 編集]


えっそうなんですか~!

rtmp://skr7.cavelis.net/ app=live playpath=◯◯
ってかんじで設定してますが、やっぱり即配信終了してしまいますね。。ngnix単体では動かない感じなのかなあ。
【2014/12/15 19:47】 URL | #- [ 編集]


本来ならrtmp://cavestream.net/ app=live playpath=◯◯で自動的に割り振りされるはずの所を、
サイト側が非対応らしいので直接指定しているんですが、
そのせいで不安定になってしまうのかもしれませんね。
【2014/12/15 19:57】 URL | みるく #U6M1AWu2 [ 編集]

管理人のみ閲覧できます
このコメントは管理人のみ閲覧できます
【2015/12/28 11:26】 | # [ 編集]


この記事に対するコメントの投稿














管理者にだけ表示を許可する


プロフィール


中の人 : MiRUKU(みるくま)
SNS : Steam / Twitter
Config : ET / L4D2
その他 : 環境&設定 / 糞動画
配信 : / 避難所 / Twitch /

アフィリエイト

 いまだにアフィってくれてる方
 本当にありがとうございます・・・


楽天市場で購入
楽天で探す
楽天市場

リンク (相互歓迎!)

上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。