raccy / obs-rtmp-nicolive

ニコニコ生放送用 OBS Studio プラグイン
MIT License
57 stars 8 forks source link

チャンネル生放送での使用について(xml現物とパスは送れます) #15

Open tanosimi opened 7 years ago

tanosimi commented 7 years ago

各種解説ブログなどでチャンネルだと使えない(使わない)と書いてあったので 調査の結果不可能かも知れませんが、 チャンネル放送でもOBSStudioを自枠の自動検知で使用したいのでお願いします 作成に必要な情報があれば教えて下さい https://twitter.com/Tanosimi3500

raccy commented 7 years ago

v2.1.0-preで新配信(β)に対応しています。もしかしたら、チャンネル配信も一緒に対応できているかも知れません。試せるようであれば、一度お試しください。

tanosimi commented 7 years ago

ココに書けば返信になるのかな? 最新のpreじゃない方のプラグインでチャンネルで自枠を自動検知することは出来ませんでした 新配信βではエラー一度も起きてないので rtmpの後ろが通常、新配信、チャンネルと違うからでしょうね ストリームキーはlvなんたらかんたらでチャンネルも表記は一緒っぽいです 「rtmp://~~なんたらかんたら」のところをコピペしたり xml現物を送って差し上げたいのですが どうでしょうか

raccy commented 7 years ago

XMLをそのままここの返答で貼り付けていただければと思います。貼り付ける時は放送が終わったものや一部の文字を伏せ字にしてください。

貼り付けは、下記のように```で囲ってください。

XMLの内容
tanosimi commented 7 years ago

囲みが成功してるか初挑戦ですが 個人的なユーザーIDとか放送番号、複数あることが確定している ところだけ伏せ字にします

<?xml version="1.0" encoding="UTF-8"?>
<flashmedialiveencoder_profile>
    <preset>
        <name>Custom</name>
        <description></description>
    </preset>
    <capture>
        <video>
        <device></device>
        <crossbar_input>0</crossbar_input>
        <frame_rate>24.00</frame_rate>
        <size>
            <width>640</width>
            <height>480</height>
        </size>
        </video>
        <audio>
        <device></device>
        <crossbar_input>0</crossbar_input>
        <sample_rate>44100</sample_rate>
        <channels>2</channels>
        <input_volume>78</input_volume>
        </audio>
    </capture>
    <process>
        <video>
        <preserve_aspect></preserve_aspect>
        </video>
    </process>
    <encode>
        <video>
        <format>H.264</format>
        <datarate>250;</datarate>
        <outputsize>320x240;</outputsize>
        <advanced>
            <profile>Main</profile>
            <level>3.0</level>
            <keyframe_frequency>5 Seconds</keyframe_frequency>
        </advanced>
        <autoadjust>
            <enable>false</enable>
            <maxbuffersize>1</maxbuffersize>
            <dropframes>
            <enable>false</enable>
            </dropframes>
            <degradequality>
            <enable>false</enable>
            <minvideobitrate></minvideobitrate>
            <preservepfq>false</preservepfq>
            </degradequality>
        </autoadjust>
        </video>
        <audio>
        <format>MP3</format>
        <datarate>96</datarate>
        </audio>
    </encode>
    <restartinterval>
        <days></days>
        <hours></hours>
        <minutes></minutes>
    </restartinterval>
    <reconnectinterval>
        <attempts>1</attempts>
        <interval>5</interval>
    </reconnectinterval>
    <output>
        <rtmp>
        <url>rtmp://chnl03(枠取得ごとに1~3で不規則に変わる).ep.live.nicovideo.jp:1935/publicorigin/161113_01_1?枠を取ったユーザーID:lv放送番号:4:1478966464:0:1478966404:d758562b000f1ca4</url>
        <backup_url></backup_url>
        <stream>lv上と同じ放送番号</stream>
        </rtmp>
    </output>
    <metadata></metadata>
    <preview>
        <video>
        <input>
            <zoom>50%</zoom>
        </input>
        <output>
            <zoom>50%</zoom>
        </output>
        </video>
        <audio></audio>
    </preview>
</flashmedialiveencoder_profile>
raccy commented 7 years ago

これってニコニコ側が出しているXMLでしょうか…うーん、通常の生放送と全く違うので、すぐに対応とかは難しいですね…。取得するURLって、http://live.nicovideo.jp/api/getpublishstatusでしょうか?そこから違っているような気がして、そうなると、根本からフラグで分けないと難しいかも。

chajka commented 7 years ago

これは放送ページからダウンロードしてFMLEに喰わせるための設定ファイルですね。

On Nov 14, 2016, at 18:43, らっしー(raccy) notifications@github.com wrote:

これってニコニコ側が出しているXMLでしょうか…うーん、通常の生放送と全く違うので、すぐに対応とかは難しいですね…。取得するURLって、http://live.nicovideo.jp/api/getpublishstatus http://live.nicovideo.jp/api/getpublishstatusでしょうか?そこから違っているような気がして、そうなると、根本からフラグで分けないと難しいかも

— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub https://github.com/raccy/obs-rtmp-nicolive/issues/15#issuecomment-260290284, or mute the thread https://github.com/notifications/unsubscribe-auth/AAu2e9hpbFvawNWAgbHRUVF81zBFiU4Bks5q-C0sgaJpZM4KiJ0J.

chajka commented 7 years ago

Tannosimiさん、obs-rtmpプラグインが参考にしているのは

http://watch.live.nicovideo.jp/api/getpublishstatus?v=[ http://watch.live.nicovideo.jp/api/getpublishstatus?v=%5B放送番号]

というURLを参照して得られる情報なんです。放送を始めた時に、上のURLの[放送番号]の部分を 自分が放送を始めたチャネル放送の放送番号に書き替えて、ブラウザーでそのURLを開いて、 そのブラウザーの内容をこのメーリングリストに貼り付けて下さい。

On Nov 14, 2016, at 19:08, Чайка Я mellanie335@gmail.com wrote:

これは放送ページからダウンロードしてFMLEに喰わせるための設定ファイルですね。

On Nov 14, 2016, at 18:43, らっしー(raccy) <notifications@github.com mailto:notifications@github.com> wrote:

これってニコニコ側が出しているXMLでしょうか…うーん、通常の生放送と全く違うので、すぐに対応とかは難しいですね…。取得するURLって、http://live.nicovideo.jp/api/getpublishstatus http://live.nicovideo.jp/api/getpublishstatusでしょうか?そこから違っているような気がして、そうなると、根本からフラグで分けないと難しいかも

— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub https://github.com/raccy/obs-rtmp-nicolive/issues/15#issuecomment-260290284, or mute the thread https://github.com/notifications/unsubscribe-auth/AAu2e9hpbFvawNWAgbHRUVF81zBFiU4Bks5q-C0sgaJpZM4KiJ0J.

tanosimi commented 7 years ago

上の長いURL全てをそのまま入力したらエラーになりました URLが被っている様に見えるので 一つ削って

http://watch.live.nicovideo.jp/api/getpublishstatus?v=lv放送番号

これでなんだか意味がありそうな文字が出てきたのでソレを貼ります 間違っていたらすいません

<getpublishstatus status="ok" time="1479198451">
<stream>
<id>lv放送番号</id>
<token>713b01e9b0d8bc93052e8fdb2b77a2282b9c7ac8</token>
<exclude>1</exclude>
<provider_type>channel</provider_type>
<base_time>1479197746</base_time>
<open_time>1479197746</open_time>
<start_time>1479197746</start_time>
<end_time>1479199546</end_time>
<allow_vote>1</allow_vote>
<disable_adaptive_bitrate>1</disable_adaptive_bitrate>
<is_reserved>0</is_reserved>
<is_chtest>1</is_chtest>
<for_mobile>1</for_mobile>
<editstream_language>1</editstream_language>
<test_extend_enabled>1</test_extend_enabled>
<category>一般(その他)</category>
</stream>
<user>
<nickname>ユーザーIDに紐付けられた放送者名いわゆるハンネ</nickname>
<is_premium>1</is_premium>
<user_id>枠を取得したユーザーID</user_id>
<NLE>1</NLE>
</user>
<rtmp is_fms="1">
<url>
rtmp://chnl01.ep.live.nicovideo.jp:1935/publicorigin/161115_17_1
</url>
<stream>lv放送番号</stream>
<ticket>
ユーザーID:lv放送番号:4:1479198451:0:1479197746:51811d32776328e0
</ticket>
<bitrate>1024</bitrate>
</rtmp>
</getpublishstatus>
raccy commented 7 years ago

プラグインが見に行っているのは http://live.nicovideo.jp/api/getpublishstatus です。今の仕組みでは放送番号を事前に知る方法がないため、ここから取得しています。ここで取得できないとすぐの対応はちょっと無理です。 XMLは見る限り普通のユーザー生放送と同じですので、なぜできないのかはちょっとわかりません。このXMLを上のURLで取得できれば、放送できるはずなのですが。

tanosimi commented 7 years ago

まだチャンネルが本格始動していない為 自分以外誰も見られないテスト配信モードしか使えませんが

http://live.nicovideo.jp/api/getpublishstatus だけだと表示されませんでした(新旧ユーザー放送は見える)

http://live.nicovideo.jp/api/getpublishstatus/lv放送番号 だと情報が出ました

他のチャンネル稼働済みの人に本配信中に開いて試してもらいますが、 ソレがダメだと難しそうですかね

生を弄っているドワンゴの中の人とかに聞けるチャンスがあったら 今後の開発のためにコレを絶対聞いてくれみたいなポイントはありますか?

raccy commented 7 years ago

NLEでうまく配信できるのであれば、getpublishstatusに複数取得モード(accept-multi:1)でアクセスしたときだけ、放送枠の情報が取れるのかも知れません。複数取得しても選択できないので、今は常に単独取得なんですよね。

tanosimi commented 7 years ago

おー私には知識が無くてわかりませんが 今シンプルに見に行ってるところを複雑にいじると 行けそうな雰囲気は今の時点でもあるということなのかな? 因みにNLEはチャンネルで生放送枠を取って チャンネル用のアカウントでログインして配信開始ボタン押すだけで 今のラッシーさんの作ったプラグインみたいに全て自動取得して始まります