C# ラジコ録音

C#初心者の覚書

VS CODE でffmpeg

RadikoPodというEXEはffmpegがhiddenになってないので、ログがみえる。

Stream Audio:aac(HE-AAC), 48000Hz, stereo, fltp, 45 kb/s

Output Audio:aac(HE-AAC)(mp4a / 0x6134706D), 48000Hz, stereo, 45 kb/s

 

自分のはOutputがAudio:aac(LC)になっている所がまず違うのでそれを合わせてみる

 

→ やってみたけど、スピードは1倍のまま

 

コマンドの意味が分かってきたので試している。

どれを試したか記録した方がいい。

 

-Thread 使用するスレッドの数を指定

-c copy または -c:a copy オーディオをエンコードしない

-cオプションはコーデックを指定するオプションです。音声なら:a、映像なら:vの後にコーデックを指定します。これにcopyを指定するととすると入力がデコードエンコードを経由せずに出力されます。

-codec:a  または -acodec

音声コーデックを指定します。指定しない場合は入力ファイルと同じコーデックになります

 -acodec libmp3lame  MP3でエンコード

 -acodec libfdk_aac AACエンコード

 -acodec codec オーディオのコーデックを codec に強制します。未加工のコーデックデータ をありのままコピーするには copy という特別な値を使ってください。 

 

-vn 映像の録画を無効にします

-ac 2 音声のチャンネル数を指定します(ステレオをモノラルにしたい場合は -ac 1 を指定するとモノラルになる)

-ar 44100 サンプリング周波数を指定 (既定値は44100Hz)

-ab 256k オーディオビットレートをbit/sで設定します(既定値は64k)

-f mp3 フォーマットを強制します。

-profile:a aac_he

 

-bsf:a aac-adTStoasc

オプション内にある:aは(Audio)、:vは(Video)に限定して適用させています。bsfではaudioに対しbitstreamフィルタを指定しています。
aac_adtstoascは公式の解説によると「MPEG-2/4 ADTSヘッダ」から「MPEG-4音声設定」を作成し「MPEG-2/4 ADTSヘッダ」を除去するものです。

 

VS CODEffmpegを使えるようにしてみる