◆ はじめに

このプログラムは WMV配信 についての試験目的で作成されたもので、
様々な環境での動作確認を得るために WEB で公開しています。

このプログラムを利用する場合、以下のご協力をお願いします。

このプログラムを積極的に利用し、不具合の発見に努める。
不具合を発見した場合、作者と連絡を取り不具合の解消に協力する。
可能であればソースを解読し、より良い処理方法について提案を行う。

◆ 試験準備

OBSでHEVC配信が出来るobs-tsukasaプラグインを下のサイトからダウンロードしてインストールします
https://tsukasa.client.jp/

次に「services.json」の編集をします
キーボードの「Windows」キーを押しながら「R」キーを押すと「ファイル名を指定して実行」が開くのでそこに

%APPDATA%\obs-studio\plugin_config\rtmp-services

を入れるとエクスプローラーが開くので「services.json」をメモ帳などで開きます
4行目に
        {
            "name": "tsukasa_hevc",
            "common": true,
            "servers": [
                {
                    "name": "rtmp://127.0.0.1:1935/live",
                    "url": "rtmp://127.0.0.1:1935/live"
                }
            ],
            "recommended": {
                "output": "tx265_rtmp_output",
                "bframes": 0
            }
        },
        {
            "name": "tsukasa_h264",
            "common": true,
            "servers": [
                {
                    "name": "rtmp://127.0.0.1:1935/live",
                    "url": "rtmp://127.0.0.1:1935/live"
                }
            ],
            "recommended": {
                "output": "rtmp_output",
                "bframes": 0
            }
        },
を入れて上書き保存します

次に「package.json」をメモ帳などで開きます
Ctrl+aで全選択してDeleteで削除した後に
{
	"url": "https://obsproject.com/obs2_update/rtmp-services",
	"version": 2147483647,
	"files": [
		{
			"name": "services.json",
			"version": 2147483647
		}
	]
}
を入れて上書き保存します
package.jsonを編集するのはservices.jsonの自動アップデートを無効化するためです

◆ HEVC配信の試験設定

OBS Studioを起動して設定の配信のサービスからtsukasa_hevcを選び
ストリームキーは「livestream」に設定します
OBSの「設定」の「出力」から「出力モード」を「詳細」を選択します
「エンコーダ」から「TX265」と書いてるものを選択します

◆ H264配信の試験設定

OBS Studioを起動して設定の配信のサービスからtsukasa_h264を選び
ストリームキーは「livestream」に設定します
OBSの「設定」の「出力」から「出力モード」を「詳細」を選択します
「エンコーダ」から「TX265」と書いてるもの以外を選択します

◆Kagamin2向けの試験方法

Kagamin2をダウンロードして
http://tsukasa.client.jp/

Kagamin2の圧縮ファイルを解凍する
Kagamin2の設定で「Push配信有効」にチェックを入れる
Kagamin2の設定で「使用ポートの登録」を8080にする

Kagamin2を起動してURLを入れるテキストボックスを空欄にして接続ボタンを押す※IM状態が待機中になれば成功
tsukasaのbatファイルを実行したあとにOBSを起動して配信開始で配信が出来ます※IM状態が正常になれば成功

tsukasa-hevc.batはHEVC配信用です
tsukasa-h264.batはH264配信用です

◆PeerCastStation向けの試験方法

PeerCastStationの「配信」からソースを「HTTP Push Source」タイプを「ASF(WMV or WMA)」で配信開始して下さい
peercastのbatファイルを実行したあとにOBSを起動して配信開始で配信が出来ます

peercast-hevc.batはHEVC配信用です
peercast-h264.batはH264配信用です

◆ 試験で得られた知識

OBSのWMV配信をWMPで再生するにはhttp://やmms://ではなくhttpt://もしくはhttpu://で再生が出来ます

OBSのWMV配信をVLCで再生するにはhttp://ではなくmmsh://もしくはmms://で再生が出来ます

WMV配信でBフレームを使うとWMPと古いVLCで再生する時にカクつくのでBフレームを使ってはいけない※HEVCとH264どっちも

◆ ビルド方法

FLV(HEVC+AAC)をWMV(HEVC+AAC)に変換できる改造したffmpegをビルドする方法です

ffmpegをダウンロードします
https://ffmpeg.org/

tsukasaのフォルダの中にあるtsukasa.patchをffmpegのフォルダにコピーします

MSYSをダウンロードします
https://mpc-be.org/MSYS/

MSYSフォルダの中にあるmsys.batを実行します
cdコマンド、lsコマンド、pwdコマンドなどを駆使してffmpegフォルダに移動します

次にパッチを当てます
patch -p1 < tsukasa.patch
を実行するとffmpegにパッチが当たります

そしてffmpegのフォルダに移動してビルドコマンドを実行します※下のコマンドは最小構成でビルドします
./configure --disable-all --enable-avcodec --enable-avformat --enable-avfilter --enable-ffmpeg --enable-decoder=aac,hevc,mp3,h264 --enable-demuxer=flv --enable-muxer=asf_stream --enable-protocol=http,rtmp --enable-bsf=h264_mp4toannexb,hevc_mp4toannexb
make

◆ 一次配布元と連絡先のサイト

http://tsukasa.client.jp/
