Ruby – NLE(Niconico Live Encoder)はどうやって配信用URLを取得しているのか? – Qiita よりこれを上手く使えば放送を開始してニコ生へコマンド一つで ffmpeg などのコマンドラインから起動できるツールで配信できる。

ニコ生の getplayerstatus のエラーコードまとめ
Vita のコミュニティAPI アクセスにユーザーセッションが必要になる

ログイン

最初に現在時間を unixtime で取得する
curl http://live.nicovideo.jp/api/getservertimeレスポンス:servertime=1432471973

取得した servertime と mail_addoress、password を記入する
curl -A 'nicoliveenc/2.0.7' -d mail="mail_addoress" -d password="password" -d site=nicolive_encoder -d time=1432471973 https://account.nicovideo.jp/api/v1/loginレスポンス:nicolive_encoder_10進数の数字

配信情報取得

curl -A 'nicoliveenc/2.0.7' -d ticket=nicolive_encoder_10進数の数字 -d accept-multi=0 http://live.nicovideo.jp/api/getpublishstatus/lv番号レスポンス:XML が Qiita にあるように返ってくる。

コメントサーバの情報にアクセスする

getplayerstatus にアクセスするにはログインしたユーザーセッションが必要
curl -v -d mail="mail_addoress" -d password="password" https://account.nicovideo.jp/api/v1/login -c nico.cookie

curl http://live.nicovideo.jp/api/getplayerstatus/lv放送番号 -b nico.cookieまたは
curl http://live.nicovideo.jp/api/getplayerstatus/lv放送番号 -b user_session=user_session_アカウントID_16進数の文字列放送を開始していればこれでもよい
curl http://live.nicovideo.jp/api/getplayerstatus/co|ch番号 -b user_session=user_session_アカウントID_16進数の文字列レスポンス:getplayerstatus の XML が返ってくる

配信者 なら getthreads も同様に取得できる。
curl http://live.nicovideo.jp/api/getthreads?v=lv放送番号 -b user_session=user_session_アカウントID_16進数の文字列レスポンス:getthreads の XML が返ってくる

追記
2015年5月25日、getplayerstatus で不要なコマンドを削除して、co|ch番号でも取得できる。getthreads の取得方法も追加。
2015年7月5日、getpublishstatus で放送番号をつけないと notfound になるのを直した。

コメントを残す

メールアドレスが公開されることはありません。

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)