ffmpeg でクロマキー合成

ffmpeg にcolorkeyフィルタが取り込まれたことにより、クロマキー合成や特定色に個別のフィルタを当てられるようになった。

ffmpeg 2.7.1 以降でcolorkeyフィルタが使える。
avfilter/vf_colorkey: Add colorkey video filter

colorkeyは指定した色の部分をアルファチャンネルにして、それ以外を RGB の BGRA で出力する。指定する色は16進数の rrggbb 形式か、色名を指定する。入力映像が RGB の方が YUV よりも処理が早い。

YUVA で処理するchromakeyフィルタはこちら:ffmpeg でクロマキー合成 その2

16進数と色の説明:FFmpeg Utilities Documentation :: Color

Continue reading “ffmpeg でクロマキー合成”

ニコ動の SWF 投稿が出来なくなる

2015年6月18日の14時過ぎにニコるとスピードチェッカーも一緒に SWFファイルが投稿できるサービスは終了した。ニコられると動画右のコメント欄が黒く、よりニコられると赤くなる仕様だったが押し間違いや、押したことによるアカウント通知機能がうまくいかずに終了したことになる。

最後の魚拓:ニコるってイイね!|niconico

SWFファイルは Flash Player 依存の動画で、それに依存しない再生環境を揃えるためだと思う。SWF の映像には VP6 か H.263 が用いられるが、H.264 に再エンコードした場合に画質の劣化がどうしても起きるので、再エンコード後の再生の互換性と保守の面から仕方ない判断である。

【一部機能の提供終了に関するお知らせ】swfファイルでの動画投稿/ニコる/スピードチェッカー‐ニコニコインフォ

最後の SWF 動画
cry.swf – ニコニコ動画:GINZA

この方法Icy Cellar 3 – ニコニコ動画 – SWF形式のアップロードについてで従来は投稿できたが、ニコニコムービーメーカー経由でなくても投稿できなくなった。

SWF を投稿するとこのエラーが返ってくる

ffmpeg で OpenCV フィルタを使う

同じ効果のフィルタがネイティブフィルタに取り入れられた。
avfilter: add erosion, dilation, deflate & inflate filter · FFmpeg/FFmpeg@3001558

さらに処理の速いmorphoフィルタも実装された。
avfilter: add morpho filter · FFmpeg/FFmpeg@b2ec4ed

Windows向けのFFmpegにはOpenCVが有効になっていないのでこれを有効にして使える3つのフィルタについて。

Continue reading “ffmpeg で OpenCV フィルタを使う”

ffmpeg で使える frei0r フィルタの使い方

いろいろなエフェクトが使えるも、予めモジュールのDLLを読み込ませないと使えないfrei0rフィルタの使い方。

MPlayer/FFMpeg on Windows (win32/win64)の一番下からfrei0r-pluginsを使うOSに合わせて保存し展開する。最新版はmedia-autobuild_suiteからビルドできる。

Continue reading “ffmpeg で使える frei0r フィルタの使い方”

cURL で getpublishstatus と getplayerstatus を取得する

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

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

Continue reading “cURL で getpublishstatus と getplayerstatus を取得する”

Youtube Live の HTML5 で 60fps 視聴が可能に

YouTube Creator Blog: 60fps Live Streaming on YouTube in HTML5より

720p60, 1080p60 で配信すると Youtube側でトランスコードされて HTML5 対応ブラウザで 60fps の配信を見ることができる。ただし全てのユーザーに開放されているわけではないので、もう数週間待って欲しいとのこと。

さらにうれしいことに 1.5倍と 2.0倍の追っかけ再生もでき、途中から見始めても倍速再生で生配信の映像に追いつくことができる。

倍速再生や追っかけ再生はニコ生で昔から要望があるが PC では Flash依存の RTMP配信なのでこれを実現することは技術的に出来ない。その他にもタイムシフト公開を放送終了から30分待たなければならないのもタイムシフト開始当初から改善されていない。

#ライブ – YouTube

訂正 2015年5月21日22時04分
タイトルの配信から視聴に変更した。

ニコ生の配信データを保存する rtmpdump のコマンド内容のまとめ

現在のニコ生の録画方法は以下を参照。
ニコ生の新配信と録画方法について

以下の記事は旧配信向けで、現在の Flash Player を使わない HTML5 の HLS はこの方法とは異なる。そして、2019年5月23日のメンテナンス以降の配信では使えなくなった。

WebSocket 経由の rtmpならまだ取得できたが、2019年5月30日より視聴期限未定で公開されている過去の公式生放送と現在放送中の公式生放送以外 WebSocket 経由の rtmp は受信できなくなった。

2019年5月23日のメンテナンス以降の配信で getedgestatus で調べられる rtmp は廃止された模様。
ニコ生の録画と配信方法の歴史

2018年12月11日以降に rtmpdump で保存する方法の解説。
タイムシフトを Flash で再生して kakorokuR で保存する

一般的にニコ生と言っても配信者は公式、チャンネル、ユーザーの3タイプと、ライブとタイムシフト(TS)を組み合わせた6種類ある。その中で特殊なコマンド -N が必要になるのは、ユーザー生放送のライブとタイムシフト、チャンネル生放送のライブである。さらに -N を使う場合データはリアルタイム(等速)でしか取得できないので、ユーザー生放送のタイムシフトは放送時間分だけ時間が掛かることになる。Windows 環境では namarokuR, kakorokuR が主流になっているが、現在開発が活発ではないので今後の仕様変更に対応できるかどうかは不明である。

Continue reading “ニコ生の配信データを保存する rtmpdump のコマンド内容のまとめ”

2015年4月のニコ生統計

集計期間は週間のニコ生統計の4月分である。2015年の1月の2週目から取得漏れの R-18 放送を含めて Vita API で取得し始めたのでそれ以前と比べて取得放送数が増えている。

Continue reading “2015年4月のニコ生統計”

PHP でニコ生アラートコメントサーバに接続する

2019年9月4日(水)12時30分頃をもってサービスの提供が終了した。
【9/4追記】「ニコ生アラート(本家)」のご利用について|ニコニコインフォ

みゆっき氏の gist からサーバの接続先をアラートサーバに変更しただけ。
Niconico Comment Getter

Continue reading “PHP でニコ生アラートコメントサーバに接続する”

アドレス入力でニコ生のコメントを表示する

アドレス入力だけでニコ生のコメントを表示する方法とその応用について。

前回記事ニコ生の公式とチャンネルのコメントサーバの仕様についてより、アドレスとポート番号の一覧を書いたがこれを応用してブラウザから直接コメントサーバにアクセスしてコメントを見る方法。

現在はこの方法ではユーザー生放送の msg, 公式、チャンネル生放送の omsg のホストともに 87ポート番号にアクセスできないのでコメントが表示できない。

この方法の他にjkcommentviewerの直接接続からTSのコメントや、TS視聴期間が過ぎたコメントを取得することができる。視聴できるTSコメントなら該当アカウントでログインして放送アドレスを入力すれば取得できる。TS期間が過ぎたコメントは getplayerstatus より入力欄の上から順に addr, port, thread, user_id, start_time を指定すれば 87ポート番号に対応したポート番号の放送コメントも取得できる。

Continue reading “アドレス入力でニコ生のコメントを表示する”