ネットラジオを通勤で聞いてみる – 動画から音声を取り出す

ネットラジオを通勤で聞いてみるで、ストリーミングをダウンロードして、それを通勤で聞く事には成功。

でも、ほかのストリーミングだと「動画」だったりして、ファイルサイズがでかい上に意味もなくプレーヤーの電池も消費する。あまりうれしくない状況。しかも、動画とはいえ、出ている映像は番組名だけだったり、喋っている場所がひたすら垂れ流されているだけで情報としては不要だったりもする。これ。どうにかならんかな?

しかも、mp4形式の動画だと、iTunesで管理できなかったりとかの問題もあって面倒…

動画から音声だけ取り出す

動画から音声だけの取り出しは色々な方法がありますが、せっかくLibAVをダウンロードしてavconv.exeを使ったので、それを使ってストリップします。

方法は簡単で、FLVからM4Aに返還した時とほぼ同じ。ちょっとオプションを付けただけ。

C:\>avconv.exe -i input.mp4 -vn -acodec copy output.m4a
avconv version v11.7, Copyright (c) 2000-2016 the Libav developers
  built on Jun  1 2016 09:59:57 with gcc 4.8.3 (Gentoo 4.8.3 p1.1, pie-0.5.9)
[mov,mp4,m4a,3gp,3g2,mj2 @ 029a95e0] multiple edit list entries, a/v desync might occur, patch welcome
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'input.mp4':
  Metadata:
    major_brand     : isom
    minor_version   : 512
    compatible_brands: isomiso2avc1mp41
    title           : うだうだムービー
    album           : ほげほげ
    encoder         : Lavf58.20.100
  Duration: 00:57:30.14, start: 0.000000, bitrate: 155 kb/s
    Stream #0.0(und): Video: h264 (High), yuv420p, 320x180 [PAR 1:1 DAR 16:9], 113 kb/s, 10 fps, 10k tbn, 19.98 tbc (default)
    Stream #0.1(und): Audio: aac, 24000 Hz, stereo, fltp, 39 kb/s (default)
[ipod @ 02c6f020] Codec for stream 0 does not use global headers but container format requires global headers
Output #0, ipod, to 'output.m4a':
  Metadata:
    major_brand     : isom
    minor_version   : 512
    compatible_brands: isomiso2avc1mp41
    title           : うだうだムービー
    album           : ほげほげ
    encoder         : Lavf56.1.0
    Stream #0.0(und): Audio: libvo_aacenc, 24000 Hz, stereo, 39 kb/s (default)
Stream mapping:
  Stream #0:1 -> #0:0 (copy)
Press ctrl-c to stop encoding
size=   16890kB time=3450.06 bitrate=  40.1kbits/s
video:0kB audio:16573kB other streams:0kB global headers:0kB muxing overhead: 1.911197%

と、こんな感じで変換する際に-vnと付けてあげるだけ。-vnは”disable video”という事で、動画を無効にというオプション。まぁ、そのままですね。

実際に、変換などがうまく行ったかどうかに関しては、”-i”オプションを付けて確認。

C:\>avconv.exe -i output.m4a
avconv version v11.7, Copyright (c) 2000-2016 the Libav developers
  built on Jun  1 2016 09:59:57 with gcc 4.8.3 (Gentoo 4.8.3 p1.1, pie-0.5.9)
[mov,mp4,m4a,3gp,3g2,mj2 @ 026e4ae0] multiple edit list entries, a/v desync might occur, patch welcome
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'output.m4a':
  Metadata:
    major_brand     : M4A
    minor_version   : 512
    compatible_brands: isomiso2
    title           : うだうだムービー
    album           : ほげほげ
    encoder         : Lavf56.1.0
  Duration: 00:57:30.07, start: 0.032000, bitrate: 40 kb/s
    Stream #0.0(und): Audio: aac, 24000 Hz, stereo, fltp, 39 kb/s (default)
At least one output file must be specified

major_brand : M4Aとなっていて、ちゃんとm4aとなっているのが確認できます。また、ファイルサイズもかなり小さくなるので、ファイルサイズからの確認でもよさそう。実際、今回サンプルで使用したファイルは60MBだったものが16MBまで小さくなりました。

ポータブルプレーヤーで、ネットラジオ。聞いていると映像を見ないと盛り上がれないこともなくはないけれど、大半は映像は不要な状況。そう考えれば、こういうので容量節約もありかな。

コメント