2017年6月13日火曜日

FFmpegを使用して一定時間ごとにぶつ切りにする方法

リアルタイムでストリームをキャプチャしつつ、
一定秒数ごとに切り出す必要があったので色々調べた結果、以下の方法でできることが判明。
※Windows環境

まず以下のURLからFFmpegバイナリをダウンロード
http://ffmpeg.zeranoe.com/builds/

ダウンロードしたアーカイブを適当なところに展開します。
c:\ffmpegとか環境に合わせて。

https://www.ffmpeg.org/ffmpeg-devices.html#dshow
上記に記載されてますがとりあえずコマンドラインで以下を実行。

ffmpeg -list_devices true -f dshow -i dummy
dshowで使用できるデバイスを確認します。 なお、文字化けする場合はテキストファイルにリダイレクトしておきます。

ffmpeg -list_devices true -f dshow -i dummy 2> memo.txt
こんな感じ。

デバイスが判明したら録音レベルを合わせてあとはキャプチャするだけです。
ffmpeg -f dshow -i audio="マイク" output.mp3

とこのままではぶつ切りにならないので以下のようにします。
ffmpeg -f dshow -i audio="マイク" -f segment -segment_time 30 output%02d.mp3
これで30秒区切りでファイルができていきます。

segmentに関しては以下を参照。

ちなみにオーディオに関してLinuxでリアルタイムに取りたい場合、
ALSAを使うことになるかと思います。

0 件のコメント:

コメントを投稿

壊れたテレビもメルカリで売れる

 先々月に壊れたテレビ。処分するにも金がかかる。 液晶以外は大丈夫そうとのことでメルカリに出したら即売れた。おそらく1時間以内。 ひょっとして安すぎた?とか思いつつも処分手数料が浮いたばかりか利益も出た。 問題になるのは配送ですが、メルカリには 梱包・発送たのメル便 というのがあ...