#author("2020-06-21T18:09:01+09:00","default:nobuoki","nobuoki")
#author("2020-06-21T18:10:17+09:00","default:nobuoki","nobuoki")
* rfriends で録音した m4a ファイルを ffmpeg で mp3 に変換するあれこれ [#j6b9ac38]

ラジコプレミアムユーザーの私は rfriends という録音ツールを永いこと愛用させてもらってます

- [[rfriendsでラジオ録音>https://rfriends.hatenablog.com/]] ←作者に感謝

デフォルトで m4a 形式で保存してくれるので、そこから様々な機器や用途(倍速再生とかとか)に合わせて ffmpeg でファイル変換するのが好みです

** 普通に mp3 変換する(とワーニングが出るので消す) [#l9af4415]
  ffmpeg -i 旅ラジ_20200530.m4a 旅ラジ_20200530.jpg

これでも全く問題無いですが、ワーニングが出ます
#pre{{{
ffmpeg version 4.2.2 Copyright (c) 2000-2019 the FFmpeg developers
  built with gcc 10 (GCC)
(略)
Stream mapping:
  Stream #0:1 -> #0:0 (mjpeg (native) -> png (native))
  Stream #0:0 -> #0:1 (aac (native) -> mp3 (libmp3lame))
Press [q] to stop, [?] for help
[swscaler @ 0x5650834f3080] deprecated pixel format used, make sure you did set range correctly ★ココ
[mp3 @ 0x5650833bd740] Frame rate very high for a muxer not efficiently supporting it.          ★ココ
Please consider specifying a lower framerate, a different muxer or -vsync 2                     ★ココ
Output #0, mp3, to '旅ラジ_20200530.mp3':
  Metadata:
    major_brand     : M4A
    minor_version   : 512
    compatible_brands: isomiso2
    TIT2            : 旅ラジ-出発進行!_20200530_0530
    TPE1            : 茅野正昌
    TPE2            : RKB
    TALB            : 旅ラジ-出発進行!
    comment         : multi:旅ラジ-出発進行
    TCON            : timefree
    TDRC            : 2020-05-30
    TRCK            : 22
    TSSE            : Lavf58.29.100
    Stream #0:0: Video: png, rgb24(progressive), 480x300 [SAR 1:1 DAR 8:5], q=2-31, 200 kb/s, 90k fps, 90k tbn, 90k tbc (attached pic)
}}}

ワーニングを消すには  -vsync 2 を追加します
  ffmpeg -i 旅ラジ_20200530.m4a -vsync 2 旅ラジ_20200530.jpg

** アートワークを jpeg 形式に変換する [#r229f71c]
上記で変換した mp3 ファイルのアートワークは png 形式になっています
#pre{{{
$ ffprobe 旅ラジ_20200530.mp3
ffprobe version 4.2.2 Copyright (c) 2007-2019 the FFmpeg developers
  built with gcc 10 (GCC)
(略)
  Duration: 00:15:00.05, start: 0.023021, bitrate: 129 kb/s
    Stream #0:0: Audio: mp3, 48000 Hz, stereo, fltp, 128 kb/s
    Metadata:
      encoder         : Lavc58.54
    Stream #0:1: Video: png, rgb24(pc), 480x300 [SAR 1:1 DAR 8:5], 90k tbr, 90k tbn, 90k tbc (attached pic) ★ココ
    Metadata:
      comment         : Other
}}}

アプリケーションによっては jpeg 形式でないと都合が悪いものもあるようで、そんなときは -c:v mjpeg オプションを追加します
  ffmpeg -i 旅ラジ_20200530.m4a -vsync 2 -c:v mjpeg 旅ラジ_20200530.mp3

変換後のファイルを ffprobe で見てみると
#pre{{{
(略)
  Duration: 00:15:00.05, start: 0.023021, bitrate: 128 kb/s
    Stream #0:0: Audio: mp3, 48000 Hz, stereo, fltp, 128 kb/s
    Metadata:
      encoder         : Lavc58.54
    Stream #0:1: Video: mjpeg (Baseline), yuvj420p(pc, bt470bg/unknown/unknown), 480x300 [SAR 96:96 DAR 8:5], 90k tbr, 90k tbn, 90k tbc (attached pic) ★ココ
    Metadata:
      comment         : Other
}}}

mp3tag で見るとこうです
#ref(tabi-01.png)


** 音声トラックのみを取り出す [#s7066a04]
map で音声トラックのみを変換対象に指定します
画像を含まない(変換しない)ので -vsync 2 や -c:v mjpeg オプションは不要です
  ffmpeg -i 旅ラジ_20200530.m4a -map 0:0 旅ラジ_20200530.mp3

ファイルサイズを小さくしたい場合には良いかもしれません

** 参考情報 [#q70d8ffc]
- [[mp4, mp3, flacにカバーアートを付ける | ニコラボ>https://nico-lab.net/adding_cover-art_pic_with_ffmpeg/]]
- [[それFFmpegで出来るよ! - Qiita>https://qiita.com/cha84rakanal/items/e84fe4eb6fbe2ae13fd8]]


** 旅ラジって何? [#d7047bda]
RKBラジオ(福岡)の鉄道をテーマにした15分番組です
- [[******茅野 正昌******>https://rkb.jp/announcers/archives/2209/]]
- [[旅ラジ 出発進行! - Wikipedia>https://ja.wikipedia.org/wiki/%E6%97%85%E3%83%A9%E3%82%B8_%E5%87%BA%E7%99%BA%E9%80%B2%E8%A1%8C!]]

県外のかたはラジコプレミアムでお楽しみ下さい
県外のかたは、めちゃめちゃ感度の良いアンテナを使うか、ラジコプレミアムでお楽しみ頂くのが良いと思います

** 動作確認した環境 [#l0f8ebe8]
fedora 32 です
#pre{{{
$ uname -a; ffmpeg -version | head -n1
Linux e130 5.6.13-300.fc32.x86_64 #1 SMP Thu May 14 22:51:37 UTC 2020 x86_64 x86_64 x86_64 GNU/Linux
ffmpeg version 4.2.2 Copyright (c) 2000-2019 the FFmpeg developers
}}}

トップ   編集 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS