4
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

ニコニコ動画の新配信形式はどうなっているのか

Last updated at Posted at 2023-12-03

11月頃から新サーバに移行しはじめてたり戻ったりしてるニコニコの配信形式ですが、どうやら以前のhls形式とは違った形式での配信が行われているようです。

三行で説明しろ

  • 基本的にm3u8の形式に沿った配信がなされている
  • 所定のファイルをすべてダウンロード後m3u8ファイルを書き換えることでffmpegで変換できる
  • 単純にすごくめんどくさいので拙作のnico downloaderを使ってくれると嬉しい

API

  • API叩いたらここでもA/Bテストしているっぽくて泣きそうになった
  • 安定してないのでここはかけない

m3u8の安直な取得方法

  • 前と同様にシステムメッセージに書いてある
動画の読み込みを開始しました。(https://delivery.domand.nicovideo.jp/hlsbid/~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ )

っていうところに書いてます
API叩いたらこのURL出せたけどAPIの挙動が読めないのでオワリ

m3u8ファイルが3つになった!

  • 音声と動画部分が分かれて配信されるようになった
  • TS形式ではなくCMAFで配信されるようになった
  • Keyは#EXT-X-KEYに置いてあるURIが書いてある
  • init01.cmfvとかinit01.cmfaは結合するために必要

ffmpegで結合する方法

  • m3u8ファイルを3つ用意する

    1. システムメッセージに書いてあるm3u8
    2. 1に書いてあるURIから持ってきたvideo-h264-XXXp.m3u8(XXXpは画質)
    3. 1に書いてあるURIから持ってきたaudio-h264-XXXkbps.m3u8(XXXkbpsは音質)
  • 上記2と3に記載されているファイルをすべて保存する

  • 中身をすべて書き換える

    • URIをどうやらファイル名だけにするとよいようだ
  • ffmpegで結合する

    ffmpeg -allowed_extensions ALL -i システムメッセージに書いてある.m3u8 -c copy 出力動画名.mp4
    

これで一応再生できるh264のmp4が出来上がるはず

めんどくさい方へ

この作業を自動でやってくれる拙作のChrome拡張機能 nico downloader があるのでぜひ使ってください。

ぐちゃぐちゃなコードで良ければ参考に

4
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
4
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?