ffmpeg를 사용하여 컨테이너에서 오디오 추출


2

사용하는 방법이 있나요 -acodec copy-vn로는 :

  • mp4와 같은 컨테이너에서 오디오 스트림 추출
  • 없이 미리 오디오 코덱을 알고
  • 그리고 적절한 확장자를 가진 오디오 파일로 저장하십시오

2
"적절한 확장"이란 무엇입니까? Matroska (.mka) 또는 NUT (.nut)를 대부분의 오디오 형식과 함께 사용할 수 있지만 원하는 것이 아닌 것 같습니다.
llogan

답변:


0

이것이 ffmpeg에서 간단한 옵션이 아닌 이유는 출력에 사용할 컨테이너를 결정하는 방법이 필요하기 때문입니다.

각 코덱에 사용할 파일 확장자를 결정하고 해당 확장자를 가진 파일 이름을 지정한 경우 ffmpeg는 출력 파일을 올바른 컨테이너에 작성합니다. 내가 생각할 수있는 가장 불행한 방법은 Python 2 스크립트입니다.

import re
import subprocess
import sys

EXTENSIONS_BY_CODEC = {'mp3': '.mp3', 'aac': '.m4a'}
# Add more codecs as desired

_, infile, outfile = sys.argv
_, detect_data = subprocess.Popen(('ffmpeg', '-i', infile),
                                  stderr=subprocess.PIPE).communicate()
codec = re.search(r'Audio: ([^,]+),', detect_data).group(1)
if codec in EXTENSIONS_BY_CODEC:
    sys.exit(subprocess.call(('ffmpeg', '-i', infile, '-acodec', 'copy', '-vn',
                              outfile + EXTENSIONS_BY_CODEC[codec])))
else:
    print >>sys.stderr, 'Extension not found for codec:', codec
    sys.exit(2)

-4

커맨드 라인 (및 명령) 출력이있는 ffmpeg에 대한 핸드 브레이크, GUI를 살펴보십시오 (어떤 종류의 스크립트로 이식하려는 경우)


2
이것이 어떻게 도움이됩니까? 그것은 OP가 요구하는 것이 아닌 gui와 함께 ffmpeg와 동일한 작업을 수행합니다.
Lily Hahn
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.