나는 통해 갔다 문서 와 나는 추출 할 수 있습니다 wav
에서 파일을 mp4
명령으로 파일 :
ffmpeg -i my_video.mp4 output_audio.wav
그러나 wav
파일 의 품질을 어떻게 제어 할 수 있습니까? (예 : 가능한 한 원본 오디오의 품질을 유지하고 싶다고 말하십시오)
나는 통해 갔다 문서 와 나는 추출 할 수 있습니다 wav
에서 파일을 mp4
명령으로 파일 :
ffmpeg -i my_video.mp4 output_audio.wav
그러나 wav
파일 의 품질을 어떻게 제어 할 수 있습니까? (예 : 가능한 한 원본 오디오의 품질을 유지하고 싶다고 말하십시오)
답변:
wav
파일은 일반적으로 압축되지 않은 오디오를 포함하며을 wav
사용하여 파일을 생성 할 때의 기본값 ffmpeg
입니다. 따라서 품질을 줄이기 위해 손실 압축 (또는 모든 종류의 압축)이 없으므로 명령이 이미 최대 품질을 유지합니다.
원본 오디오가 압축되었다고 가정하면 비디오없이 원본 오디오를 새 mp4
파일로 복사하여 압축되지 않은 오디오에 필요한 큰 파일 크기없이 동일한 품질을 유지할 수 있습니다 .
ffmpeg -i my_video.mp4 -c copy -map 0:a output_audio.mp4
다시 인코딩하거나 다른 오디오 코덱으로 변환 할 수도 있지만 해당 코덱에서 손실 압축을 사용하면 품질이 떨어집니다.
wav
파일 의 비트 전송률 은 단순히 샘플 속도 × 샘플 크기 × 채널 수입니다 . 품질을 줄이려면 ffmpeg
낮은 속도로 다시 샘플링하거나 8 비트 PCM으로 변경하거나 모노로 다운 믹스하도록 요청할 수 있지만 기본적으로는 그렇지 않습니다.
-acodec copy
하는 시스템에서 대신 대신 사용해야 했습니다-c copy -map 0:a
비디오에서 무손실 / 손실 오디오 추출 ( flv / mp4 to wav / flac / mp3
) ffmpeg
Ubuntu 14.04에서 버전 2.3.1 사용
방문 : http://howto-pages.org/ffmpeg/
우선 소스에서 기본 데이터를 찾으십시오. VLC Player에서 비디오를 엽니 다. 로 이동
> Tools > Codec Information
> Stream 0 (Video/ Codec/ Resolution/ Frame rate)
> Stream 1 (Audio/ Codec/ Channel/ Sample rate)
입력 파일 ( -i
) input.mp4
또는 기타 파일 ( )을 고려하십시오 flv, avi, ...
. 부호있는 16 비트, 리틀 엔디안 ( ) 샘플과 2 채널 (스테레오) ( )로 변조 된 펄스 코드에서 44100Hz -vn
( output.wav
)의 샘플 속도로 비디오 ( ) 를 제거하고 압축되지 않은 ( ) 오디오를 꺼내 려면 다음 명령을 사용하십시오.-ar 44100
-acodec pcm_s16le
-ac 2
ffmpeg -i input.mp4 -vn -acodec pcm_s16le -ar 44100 -ac 2 output.wav
다른 -acodec
옵션은 mp3 flac m4a
입니다.
-acode flac
24 비트 파일로 변환합니다. 16 비트 샘플링의 경우
ffmpeg -i input.mp4 -acodec flac -bits_per_raw_sample 16 -ar 44100 output.flac
wav 및 flac 파일이 mp4 파일보다 큽니다.
ac3
변환은 -acodec 3F2R/LFE -ac 6
Audacity에서 확인한 것처럼 4 개의 더미 트랙 과 함께 작동 합니다.
mp3 변환의 경우 간단히
ffmpeg -i input.mp4 -vn -acodec mp3 -ab 320k -ar 44100 -ac 2 output.mp3
터미널의 명령 줄에서 얻은 목록에서 시도하여 입력 및 출력 모두에 대해 더 많은 옵션을 얻을 수 있습니다
$ ffmpeg -help
Unknown encoder 'pcm_s161e'
이 문제를 해결하는 방법에 대해 조언하십시오.