Conversión sin pérdidas de wav de 24 bits a flac

Conversión sin pérdidas de wav de 24 bits a flac

¿Es posible realizar una conversión sin pérdidas de un archivo wav Stream #0:0: Audio: pcm_s24le ([1][0][0][0] / 0x0001), 48000 Hz, 1 channels, s32, 1152 kb/sa un archivo wav?

Intenté usar ffmpeg: ffmpeg -y -i KEEP_01.wav -acodec flac output.flac pero aparece esta advertencia: Conversion will not be lossless. Incompatible sample format 's32' for codec 'flac', auto-selecting format 's16'

También usé sox pero no recibí ninguna advertencia, así que no sé si la conversión fue sin pérdidas o no.

Además, realmente no entiendo la diferencia entre sample_format y bits_per_sample en mi salida de ffprobe:

"streams": [ { "index": 0, "codec_name": "pcm_s24le", "codec_long_name": "PCM signed 24-bit little-endian", "codec_type": "audio", "codec_time_base": "1/48000", "codec_tag_string": "[1][0][0][0]", "codec_tag": "0x0001", "sample_fmt": "s32", "sample_rate": "48000", "channels": 1, "bits_per_sample": 24, "r_frame_rate": "0/0", "avg_frame_rate": "0/0", "time_base": "1/48000", "duration": "0.810667", "bit_rate": "1152000" } ]

Respuesta1

Me di cuenta de que estaba usando una versión antigua de ffmpeg.

Probé con uno más reciente y funcionó bien.

Respuesta2

Su PCM son muestras de 24 bits en una tienda de 32 bits, pero el WAV no parece haberlo marcado correctamente.

Pruebe estos dos pasos:

ffmpeg -i KEEP_01.wav -c copy out.wav

ffmpeg -i out.wav output.flac

El codificador FLAC de FFmpeg solo codifica en formatos de muestra de 16 o 24 bits. Este último se almacena en 32 bits, al igual que su entrada.

información relacionada