Converta FLAC para AIFF enquanto salva tags/metadados

Converta FLAC para AIFF enquanto salva tags/metadados

Preciso de uma ferramenta de linha de comando para converter vários XXX.flacarquivos XXX.aiffenquanto preserva as tags (artista, título, álbum, etc.). Nenhuma das ferramentas que experimentei (ffmpeg, sox, flac) parece funcionar bem. Aqui está um exemplo:

ygabuev@core:~/Music/2019 Sun Ra - Crystal Spears [FLAC]$ ffmpeg -loglevel info -i "01 - Crystal Spears.flac" -map_metadata 0 -id3v2_version 3 out.aiff
ffmpeg version 3.4.6-0ubuntu0.18.04.1 Copyright (c) 2000-2019 the FFmpeg developers
  built with gcc 7 (Ubuntu 7.3.0-16ubuntu3)
  configuration: --prefix=/usr --extra-version=0ubuntu0.18.04.1 --toolchain=hardened --libdir=/usr/lib/x86_64-linux-gnu --incdir=/usr/include/x86_64-linux-gnu --enable-gpl --disable-stripping --enable-avresample --enable-avisynth --enable-gnutls --enable-ladspa --enable-libass --enable-libbluray --enable-libbs2b --enable-libcaca --enable-libcdio --enable-libflite --enable-libfontconfig --enable-libfreetype --enable-libfribidi --enable-libgme --enable-libgsm --enable-libmp3lame --enable-libmysofa --enable-libopenjpeg --enable-libopenmpt --enable-libopus --enable-libpulse --enable-librubberband --enable-librsvg --enable-libshine --enable-libsnappy --enable-libsoxr --enable-libspeex --enable-libssh --enable-libtheora --enable-libtwolame --enable-libvorbis --enable-libvpx --enable-libwavpack --enable-libwebp --enable-libx265 --enable-libxml2 --enable-libxvid --enable-libzmq --enable-libzvbi --enable-omx --enable-openal --enable-opengl --enable-sdl2 --enable-libdc1394 --enable-libdrm --enable-libiec61883 --enable-chromaprint --enable-frei0r --enable-libopencv --enable-libx264 --enable-shared
  libavutil      55. 78.100 / 55. 78.100
  libavcodec     57.107.100 / 57.107.100
  libavformat    57. 83.100 / 57. 83.100
  libavdevice    57. 10.100 / 57. 10.100
  libavfilter     6.107.100 /  6.107.100
  libavresample   3.  7.  0 /  3.  7.  0
  libswscale      4.  8.100 /  4.  8.100
  libswresample   2.  9.100 /  2.  9.100
  libpostproc    54.  7.100 / 54.  7.100
Input #0, flac, from '01 - Crystal Spears.flac':
  Metadata:
    ARTIST          : Sun Ra
    ALBUM           : Crystal Spears
    DATE            : 2019
    album_artist    : Sun Ra
    LABEL           : Modern Harmonic
    UPC             : 0090771808226
    GENRE           : Jazz
    disc            : 1
    track           : 01
    TRACKTOTAL      : 04
    ISRC            : USCWY1800460
    TITLE           : Crystal Spears
    DISCTOTAL       : 1
  Duration: 00:06:09.07, start: 0.000000, bitrate: 750 kb/s
    Stream #0:0: Audio: flac, 44100 Hz, stereo, s16
    Stream #0:1: Video: mjpeg, yuvj420p(pc, bt470bg/unknown/unknown), 600x600 [SAR 96:96 DAR 1:1], 90k tbr, 90k tbn, 90k tbc
    Metadata:
      comment         : Cover (front)
Stream mapping:
  Stream #0:1 -> #0:0 (mjpeg (native) -> png (native))
  Stream #0:0 -> #0:1 (flac (native) -> pcm_s16be (native))
Press [q] to stop, [?] for help
[swscaler @ 0x55bc89a85c40] deprecated pixel format used, make sure you did set range correctly
[aiff @ 0x55bc8999bc00] 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, aiff, to 'out.aiff':
  Metadata:
    ARTIST          : Sun Ra
    ALBUM           : Crystal Spears
    DATE            : 2019
    album_artist    : Sun Ra
    LABEL           : Modern Harmonic
    UPC             : 0090771808226
    GENRE           : Jazz
    disc            : 1
    track           : 01
    TRACKTOTAL      : 04
    ISRC            : USCWY1800460
    TITLE           : Crystal Spears
    DISCTOTAL       : 1
    encoder         : Lavf57.83.100
    Stream #0:0: Video: png, rgb24(progressive), 600x600 [SAR 1:1 DAR 1:1], q=2-31, 200 kb/s, 90k fps, 90k tbn, 90k tbc
    Metadata:
      comment         : Cover (front)
      encoder         : Lavc57.107.100 png
    Stream #0:1: Audio: pcm_s16be (NONE / 0x454E4F4E), 44100 Hz, stereo, s16, 1411 kb/s
    Metadata:
      encoder         : Lavc57.107.100 pcm_s16be
frame=    1 fps=0.0 q=-0.0 Lsize=   63578kB time=00:06:09.06 bitrate=1411.2kbits/s speed= 796x    
video:579kB audio:63578kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: unknown


(base) ygabuev@core:~/Music/2019 Sun Ra - Crystal Spears [FLAC]$ ffprobe out.aiff 
ffprobe version 3.4.6-0ubuntu0.18.04.1 Copyright (c) 2007-2019 the FFmpeg developers
  built with gcc 7 (Ubuntu 7.3.0-16ubuntu3)
  configuration: --prefix=/usr --extra-version=0ubuntu0.18.04.1 --toolchain=hardened --libdir=/usr/lib/x86_64-linux-gnu --incdir=/usr/include/x86_64-linux-gnu --enable-gpl --disable-stripping --enable-avresample --enable-avisynth --enable-gnutls --enable-ladspa --enable-libass --enable-libbluray --enable-libbs2b --enable-libcaca --enable-libcdio --enable-libflite --enable-libfontconfig --enable-libfreetype --enable-libfribidi --enable-libgme --enable-libgsm --enable-libmp3lame --enable-libmysofa --enable-libopenjpeg --enable-libopenmpt --enable-libopus --enable-libpulse --enable-librubberband --enable-librsvg --enable-libshine --enable-libsnappy --enable-libsoxr --enable-libspeex --enable-libssh --enable-libtheora --enable-libtwolame --enable-libvorbis --enable-libvpx --enable-libwavpack --enable-libwebp --enable-libx265 --enable-libxml2 --enable-libxvid --enable-libzmq --enable-libzvbi --enable-omx --enable-openal --enable-opengl --enable-sdl2 --enable-libdc1394 --enable-libdrm --enable-libiec61883 --enable-chromaprint --enable-frei0r --enable-libopencv --enable-libx264 --enable-shared
  libavutil      55. 78.100 / 55. 78.100
  libavcodec     57.107.100 / 57.107.100
  libavformat    57. 83.100 / 57. 83.100
  libavdevice    57. 10.100 / 57. 10.100
  libavfilter     6.107.100 /  6.107.100
  libavresample   3.  7.  0 /  3.  7.  0
  libswscale      4.  8.100 /  4.  8.100
  libswresample   2.  9.100 /  2.  9.100
  libpostproc    54.  7.100 / 54.  7.100
Input #0, aiff, from 'out.aiff':
  Metadata:
    title           : Crystal Spears
  Duration: 00:06:09.07, start: 0.000000, bitrate: 1411 kb/s
    Stream #0:0: Audio: pcm_s16be, 44100 Hz, 2 channels, s16, 1411 kb/s

Pode-se observar que após a conversão a única tag restante é “título”.

Posso fazer o trabalho apenas com ffmpeg ou sox? Ou devo usar outras ferramentas de conversão/etiquetagem? O que você pode recomendar?

Minha configuração: Ubuntu 18.04.3, ffmpeg 3.4.6, sox v14.4.2.

Responder1

Adicionar -write_id3v2 1opção de saída. Isso está desativado por padrão para o muxer AIFF. Ver ffmpeg -h muxer=aiff.

ffmpeg -i input.flac -write_id3v2 1 -c:v copy output.aiff

informação relacionada