2014-04-28 26 views
11

Potrzebuję konwertować plik flac do pliku WAV bez zmiany częstotliwości próbkowania i bitowej głębokości. O ile wiem, zmiana tych właściwości może zniekształcić dźwięk, więc jak mogę je określić, aby nie były zmieniane?ffmpeg do konwersji z flac do wav

Czy istnieje również sposób zapobiegania zapisywaniu metadanych w pliku wyjściowym?

+1

ffmpeg -i output.wav może pracować dla ciebie – rogerdpack

Odpowiedz

13

Jak rogerdpack skomentował wiersza poleceń:

ffmpeg -i inputfile.flac output.wav 

powinien robić dokładnie to, co chcesz.

Rozwiązując problemy związane z utrzymaniem wynikowego dźwięku w nienaruszonym stanie, FLAC jest formatem bezstratnym, a dekodowanie go do surowego PCM przechowywanego w pliku WAV zachowuje doskonałą wierność. Jedyne, co może Cię niepokoić, to to, czy twój plik FLAC ma wyższą niż normalną głębię bitową, jak 24, 32 lub 64 bity na próbkę, czy ma szaloną wielokanałową konfigurację. Nie sprawdzałem, czy FFmpeg obsługuje wszystkie te kombinacje. Jednak większość plików FLAC to tylko 16-bitowe, 44,1 kHz pliki audio, więc nie powinno to stanowić problemu.

Informacje o szorowaniu metadanych, sprawdź to Superuser question.

+0

Dzięki za odpowiedź, ale już zrozumiałem, że głębia bitowa konwertuje do 16 bitów z wyższych, więc muszę ustawić ją ręcznie. – user3580089

+0

Jaki jest pomysł jakiej wersji PCM używa ffmpeg? (np. 'pcm_s16le',' pcm_f64le') – themihai

+0

Zależy od tego, jakiego formatu chcesz użyć; jeśli nie, wykorzystuje to, co jest właściwe, na podstawie danych wejściowych i wyjściowych. –

4
sox infile.flac outfile.wav 

powinien zrobić dokładnie to, bez kopiowania metadanych.

Użyłem go do przekonwertowania dźwięku, którego uchwyt został przekonwertowany z wav na flac i otrzymał dokładnie taki sam plik, jak oryginalny WAV.