音声波形を表示する showspectrum, showwaves の使い方

showspectrum の使い方


入力した音声をスペクトラムとして映像表示する。出力フォーマットは yuv444p。

ffmpeg_showspectrum_sample.jpg


ffmpeg -i input -filter_complex showspectrum=size=640x512:slide=1:mode=separate:color=intensity:
scale=sqrt:saturation=1 output
ffplay -f lavfi -i "amovie=input,asplit[out0],showspectrum[out1]"

>>続きを読む

音声エンコーダの遅延問題

複数のエンコーダを使ってそれぞれの遅延の有無と、音声時間の変動を調べた。

まとめ


可逆圧縮は時間は変わらず、Fraunhofer_mp3, lame, speex だけ音声が短くなり、それ以外の全ては時間が長くなった。AAC では特に fdk_aac_he, fdk_aac_he_v2 で大きな遅延が見られ、nero_aac は 1pass と 2pass を比較しても遅延が発生しなかった。AAC では LC よりも HE, HE よりも HE_v2 の方が遅延や時間が長くなったが、aacplus だけ、HE と HE_v2 の長さが一致した。

AAC 以外のエンコードについては opus は優秀であるが動画投稿向けではない。ローカル環境の保存として x264/opus MKV や、音楽ファイルとして有効に使える。また歌ってみたなどで MIX を依頼するときに無圧縮の音声ファイルである WAV を送ってくださいと言われるのは、無劣化であるというのもあるが、この遅延問題も大きな理由である。

関連記事
AviUtl で出力したときにどのような場合に音がずれるのか

>>続きを読む

ユーザー生放送のTSの仕様について

保存できない人は IP を変えるか、rtmpdump の -N で渡す部分をソースコードから書き換えることで保存ができるみたい。IP を変えて保存ができたときに ffmpeg と ffplay でも確認したところ、ffmpeg では rtmpdump と同程度かやや速い速度で、ffplay では普通ならシークできるところが、シークするとエラーになって映像が止まってしまった。

ユーザーIDの後ろにつく数値はそのファイルパスの再生開始時間を表す。なので 0 ならば、最初から、30 ならば30秒からの動画を参照している。簡単配信や H.263 で配信した場合にファイルが flv になり、ファイルパスには flv が含まれないのは以前からの仕様。H.264 で配信した場合に f4v を付けないとダメなのも仕様。

ffplay で倍速プレビューしながら、保存もして kakoroku で保存したコメントをオーバーレイするという荒業もできなくはない。
【librtmp】 ffmplay で rtmp を入力ソースにする
ニコ生の配信データを保存する rtmpdump のコマンド内容のまとめ
commenomi

ニコ生用の rtmpdump のソースコード
taonico/rtmpdump-nico-live · GitHub
git://github.com/taonico/rtmpdump-nico-live.git

タイポを直す必要がある
https://github.com/taonico/rtmpdump-nico-live/blob/nicolive/rtmpdump.c#L858

-{"nlpalypath", 1, NULL, 'N'},
+{"nlplaypath", 1, NULL, 'N'},



別のニコ生対応の rtmpdump。タイポを直す必要が無い。
meronpan3419/rtmpdump_nicolive

Androidアプリでユーザー生放送のTSだけ非対応なのは、TSの再生には Flash が必要だからだろうか。
Androidアプリ「niconico」がタイムシフト&有料公式生放送の視聴に対応!‐ニコニコインフォ

ニコ生の録画方法 まとめ:ニコラボチャンネル のブログ

以下、2ちゃんねるのまとめ

>>続きを読む

ffmpeg(libx264) のエンコードログの見方

これらを参考にし、というか猫科研究所の記事を大いに参考にしました。

>>続きを読む

I-frame の品質を決める ip_ratio とは

拡張 x264 出力(GUI)の設定項目とその機能について - ニコニコ動画まとめwiki より確かめてみた。

I-Pフレーム間QP係数(%):40【--ipratio 1.4】
IフレームとPフレームの量子化値換算係数。Pフレームを基準に、Iフレームの品質をどれくらいまで上げてよいかを指定する。
値を小さくするとIフレームとPフレームのQP係数は近くなる。ビットレート指定でのエンコードでは、大きくするとPフレームのQPがやたら高くなりがちで平均画質が下がるので、上げすぎはお奨めしない。また、下げすぎるとIフレームの質が低下する。デフォルトのままで問題なし。

>>続きを読む

3月のアクセス数

2013_03_access.png

ブログ以外のことが忙しくて更新数が減った3月。規約の記事が更新できるはずが返信が滞っているのでまだ未定。今月は ffmpeg の記事をいくつかの更新を予定しています。

3月の記事をピックアップ

ニコニコチャンネル始めました
ニコラボチャンネル
スポンサード リンク
新着記事と追記・編集記事
スポンサード リンク
ブログ内検索
プロフィール

Author:ロベルト
お問い合わせはこちらまで
robelt2525[at]gmail.com

中の人 @nico_lab
ブログ更新用 @blo_nico_lab

詳しいプロフィールはこちら

カテゴリ
アクセスの多い記事
記事アーカイブ

最新コメント
リンク
ニコニコ静画
アニメカテゴリ毎時ランキング
免責事項
当ブログはリンクフリーです。記事によりトラブルが生じた場合でも、当ブログ管理人は一切の責任を負いません。 当ブログに記載されている情報の正誤や利用は、ご自身の判断でお願いします。 紹介したアプリケーションに関する問い合わせは作者に問い合わせてください。ニコニコ動画に関する質問はまずは公式掲示板、2ch、各Q&Aサイトを参照ください。
ブログの読者になる(RSS)
アクセス数