FRESH by AbemaTV をもう一度眺めた(仕様改変に対応する) - rencontRe Lab

スポンサーサイト

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

FRESH by AbemaTV をもう一度眺めた(仕様改変に対応する)

179abd5d6b0564f3c107ab7891532fa9_04821dbfa30ab550496be9622eaf5f13.png


前回記事を書いてから2ヶ月。
FRESH by AbemaTV を眺めた
http://nyarudiary.blog.fc2.com/blog-entry-102.html


1月の「AmebaFRESH!」サービス開始から8ヶ月。
4月にAbemaTVと統合して「FRESH by AbemaTV」と名称を変えてから5ヶ月。

いつもの様にアーカイブを保存しようとすると404。
マスタープレイリストファイル(マニフェストファイル)の命名規則が変わっていました。

正確にはわかりませんが、9月放送分から変わったのかな?

生放送中の録画、放送後のアーカイブの録画・保存向けにどうぞ。



○前提条件
番組IDは、配信ページのURLの末尾。
同じチャンネルでも番組IDは毎回変わります。
1/28放送のmc1242の場合、番組URLは
https://abemafresh.tv/mcplus1242/35340
ですので、IDは”35340”。
以下、番組IDは青で示します。

○生放送中
・解像度の定義|マスタープレイリスト
https://movie.abemafresh.tv/manifest/35340/live.m3u8

これを展開すると以下のようになっています。

#EXTM3U
#EXT-X-VERSION:3
#EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=220000,CODECS="avc1.77.31,mp4a.40.2",RESOLUTION=256x144
/playlist/122889.m3u8
#EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=730000,CODECS="avc1.77.31,mp4a.40.2",RESOLUTION=512x288
/playlist/122890.m3u8
#EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=1600000,CODECS="avc1.77.31,mp4a.40.2",RESOLUTION=768x432
/playlist/122891.m3u8
#EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=2760000,CODECS="avc1.77.31,mp4a.40.2",RESOLUTION=1024x576
/playlist/122892.m3u8


・配信ストリームの定義|メディアプレイリスト
https://movie.abemafresh.tv/playlist/122892.m3u8
というわけでメディアプレイリストのURLが大変短くなりました。
生放送中ならこれをVLCなりffmpegに入力すれば良いことになります。

○アーカイブ
・解像度の定義|マスタープレイリスト
https://movie.abemafresh.tv/manifest/35340/archive.m3u8

#EXTM3U
#EXT-X-VERSION:3
#EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=220000,CODECS="avc1.77.31,mp4a.40.2",RESOLUTION=256x144
/playlist/122893.m3u8
#EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=730000,CODECS="avc1.77.31,mp4a.40.2",RESOLUTION=512x288
/playlist/122894.m3u8
#EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=1600000,CODECS="avc1.77.31,mp4a.40.2",RESOLUTION=768x432
/playlist/122895.m3u8
#EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=2760000,CODECS="avc1.77.31,mp4a.40.2",RESOLUTION=1024x576
/playlist/122896.m3u8


・配信ストリームの定義|メディアプレイリスト
https://movie.abemafresh.tv/playlist/122896.m3u8
アーカイブの録画ならこれを。
メディアプレイリストがLive~Archiveで連番になったことで、予測は楽になりましたね。

以上です。

2016/11/20
11月頃よりサーバーがhttps://movie.freshlive.tv/に変わりました。
ex:
https://movie.freshlive.tv/manifest/35340/live.m3u8
https://movie.freshlive.tv/manifest/35340/archive.m3u8
https://movie.freshlive.tv/playlist/122896.m3u8
関連記事

Comment

  • 2016/09/16 (Fri) 13:28
    # -
    管理人のみ閲覧できます

    このコメントは管理人のみ閲覧できます

  • 2016/09/16 (Fri) 14:57
    minolabo #- - URL
    Re: 教えてください

    > https://abemafresh.tv/mcplus1242/39551
    > このアーカイブを保存したくこちらを参考にさせていただいたのですが
    > m3u8探し、URLを変換しffmpegに下記のどちらも追加してみたのでしがエラーが出てしまいます
    >
    > ffmpeg -c copy "ameba" -i "https://movie.abemafresh.tv/manifest/40738\/archive.m3u8"
    > ffmpeg -c copy "ameba" -i "https://movie.abemafresh.tv/playlist/40738.m3u8"
    >
    > URLまたはコマンドが間違っていますか?
    > ffmpegも初めて使うので根本的に間違えていたらすみません。

    番組IDは"39551"なので、アクセスするべきURLが違います。
    ブラウザで
    https://movie.abemafresh.tv/manifest/39551/archive.m3u8
    にアクセスして、プレイリストを一旦PCに保存してください

    次にそのプレイリストをメモ帳で開くと、166990.m3u8~166993.m3u8までの解像度別メディアプレイリストが記述されているので、
    それをffmpegに引数として加えます。

    一番好解像度のものを保存するならば、
    https://movie.abemafresh.tv/playlist/166993.m3u8
    が適切です。

    ffmpegの引数についてですが、Fresh by AbemaTVのHLS(セグメント化されたMPEG2-TS)をそのままコピーした場合、シークに失敗することが多々合ったので、私はmp4コンテナに変換しています。

    注意点として、MPEG2-TSからMP4へただコピーするだけ[-vcodec copy -acodec copy]ですと、
    「Malformed AAC bitstream detected: use the audio bitstream filter 'aac_adtstoasc' to fix it ('-bsf:a aac_adtstoasc' option with ffmpeg)」
    オプション付けろと怒られますので、

    [-vcodec copy -acodec copy -bsf aac_adtstoasc]とするか、
    入力元のビットレートに合わせて音声のみ再エンコード(AbemafreshはVBR 90kbpsなので)
    [-vcodec copy -ab 96k]とすると良いかと思います。

    参考までに。
    [ffmpeg.exe -i "https://movie.abemafresh.tv/playlist/166993.m3u8" -vcodec copy -acodec copy -bsf aac_adtstoasc out.mp4]

  • 2016/09/16 (Fri) 15:21
    #- - URL
    No title

    理解できました!
    とてもわかりやすく、すぐに教えて頂きありがとうございました。

  • 2016/10/09 (Sun) 23:47
    # -
    管理人のみ閲覧できます

    このコメントは管理人のみ閲覧できます

  • 2016/10/10 (Mon) 00:03
    minolabo #- - URL
    Re: 基本的な部分の質問ですみません

    > https://abemafresh.tv/ichigekiya/47052
    > こちらの動画を保存するのに参考にさせていただいたのですが、
    > どうしてもエラーになってしまいます。
    > ( https://movie.abemafresh.tv/manifest/47052/archive.m3u8 )
    >
    > IDは合っていると思うのですが、どこか違うのでしょうか。
    > もしくは対応していなかったりするのでしょうか。
    > すみません、よろしくお願いします。

    少し調べてみましたが、生放送限定公開でもデータがサーバーに残るもの、残らないものがあるようです。
    お役に立てずすみません。

  • 2016/10/10 (Mon) 01:00
    nanashi #- - URL
    No title

    そうだったんですね……!
    お手数おかけしてすみません。ありがとうございます。

  • 2016/11/20 (Sun) 18:04
    #- - URL
    No title

    ○生放送中
    ・解像度の定義|マスタープレイリスト

    仕様かわってません?

  • 2016/11/20 (Sun) 21:17
    minolabo #- - URL
    Re: No title

    > ○生放送中
    > ・解像度の定義|マスタープレイリスト
    >
    > 仕様かわってません?

    若干変わりましたね。
    cloudfrontから見れば迷惑なアクセスですし。
    構成は同じです。

Leave a Reply


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

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