¿Cómo puedo crear un cue FLAC+ a partir de varios archivos FLAC?

¿Cómo puedo crear un cue FLAC+ a partir de varios archivos FLAC?

Intenté buscar en Google pero solo puedo encontrar guías al revés.

Tengo algunos archivos flac de un álbum, todos correctamente etiquetados. Me gustaría convertirlos en un único archivo flac con una hoja de referencia automáticamente (es decir, sin pegarlos en Audacity y crear el Cue yo mismo).

es posible?

Respuesta1

Usarherramienta, una herramienta de línea de comandos multipropósito y multiformato para manipular archivos de audio sin pérdidas.

shntool join -o flac *.flac

Esto genera un archivo joined.flacque contiene el contenido de audio de cada uno de los archivos en formato *.flac. Tenga en cuenta que es posible que desee especificar los nombres de los archivos FLAC, en lugar de dejarlos en *.flac. Esto le permite asegurarse de que los archivos estén unidos en el orden correcto y de que no se incluyan archivos FLAC no deseados.

shntool cue *.flac > joined.cue

Esto genera un archivo CUE joined.cue, un archivo de texto simple que enumera pistas y tiempos. Se aplica la misma precaución al especificar nombres de archivos FLAC. (Si está probando estos comandos en orden, joined.flacahora uno de los archivos estará atrapado en *.flac.)

Respuesta2

Cuetoolsdebería permitirle hacer esto: puede seleccionar toda la carpeta en la que se encuentran los archivos y seleccionar "Incrustado" para el modo (incrustado se refiere a la carátula del álbum, no al archivo flac. Seleccione imagen+cue para una imagen de carátula del álbum separada) y "Codificar". " Para acción. Seleccione flac para el tipo de archivo y libflake para el codificador

ingrese la descripción de la imagen aquí

Esto abrirá una ventana que tendrá varios conjuntos de datos para la hoja de referencia: el primero se basa en sus datos, los otros en freedb y otros sitios.

ingrese la descripción de la imagen aquí

Esto debería proporcionarle un único archivo flac con un archivo cue.

Respuesta3

Probé la ruta foobar2000, pero desafortunadamente no imprimió con precisión la variable INDEX para cada pista. Tampoco pude hacer funcionar las otras soluciones. Hice muchas pruebas y errores (con gran ayuda de ChatGPT) y escribí un script bash que hace exactamente esto.

#!/bin/bash

#if this doesn't work, you may need to install flac:
#sudo apt install flac
#written with significant help from ChatGPT

#INSTRUCTIONS: 1) Save this code as create_cue.sh
#                           2) Place it in the same folder as the .flac files you want to create a .cue sheet for
#                           3) Run the bash script (you may need to mark it as executable)
#                           4) Voila! Instant .cue file. Enjoy

# Get the first FLAC file in the directory
flac_file=$(ls *.flac | head -n 1)

# Get the header information from the FLAC file
PERFORMER=$(metaflac --show-tag=ARTIST "$flac_file" | cut -d= -f2)
TITLE=$(metaflac --show-tag=ALBUM "$flac_file" | cut -d= -f2)
DATE=$(metaflac --show-tag=DATE "$flac_file" | cut -d= -f2)
COMMENT=$(metaflac --show-tag=COMMENT "$flac_file" | cut -d= -f2)

# Set variables for the cue file
CUEFILE="$PERFORMER - $TITLE.cue"

# Initialize variables for cumulative time
HOURS=0
MINUTES=0
SECONDS=0

# Start writing cue file
echo "REM DATE $DATE" >> "$CUEFILE"
echo "REM COMMENT $COMMENT" >> "$CUEFILE"
echo "PERFORMER \"$PERFORMER\"" >> "$CUEFILE"
echo "TITLE \"$TITLE\"" >> "$CUEFILE"

# Loop through each flac file in the current directory
for flacfile in *.flac; do
    
    # Get track number, performer, and title from file tags
    TRACK=$(metaflac --show-tag=TRACKNUMBER "$flacfile" | sed 's/.*=//')
    PERFORMER=$(metaflac --show-tag=ARTIST "$flacfile" | sed 's/.*=//')
    TITLE=$(metaflac --show-tag=TITLE "$flacfile" | sed 's/.*=//')

    # Write track info to cue file
    printf "FILE \"$flacfile\" WAVE \n" >> "$CUEFILE"
    printf "  TRACK %02d AUDIO\n" "$TRACK" >> "$CUEFILE"
    printf "    TITLE \"%s\"\n" "$TITLE" >> "$CUEFILE"
    printf "    PERFORMER \"%s\"\n" "$PERFORMER" >> "$CUEFILE"
    printf "    INDEX 01 %02d:%02d:%02d\n" "$HOURS" "$MINUTES" "$SECONDS" >> "$CUEFILE"

    # Get length of track in seconds
    LENGTH=$(metaflac --show-total-samples "$flacfile")
    LENGTH=$((LENGTH/44100))

    # Update cumulative time
    SECONDS=$((SECONDS+LENGTH))
    if [ $SECONDS -ge 60 ]; then
        MINUTES=$((MINUTES+SECONDS/60))
        SECONDS=$((SECONDS%60))
    fi
    if [ $MINUTES -ge 60 ]; then
        HOURS=$((HOURS+MINUTES/60))
        MINUTES=$((MINUTES%60))
    fi

done

Respuesta4

Eche un vistazo a Foobar2000. Puede crear un solo archivo con una hoja de referencia incrustada y también puede incrustar obras de arte y reproducir el archivo resultante. http://www.foobar2000.org/

información relacionada