2017-03-01 24 views
2

저는 Android 애플리케이션을 개발 중이며 파일 변환에는 ffmpeg를 사용하고 있습니다.
많은 입력 형식과 출력 형식이 없기 때문에 이진 파일을 최대한 슬림하게 만들고 싶습니다. 내 작업은 상당히 기본입니다. 물론 APK를 부 풀리지 않아야합니다.FFmpeg - Aux 오디오 스트림을 저장하려면 어떤 muxer가 필요합니까?

내 프로그램에서 ffmpeg가 파일을 받고 오디오 스트림 (-acodec copy)을 복사하면 오디오 스트림은 항상 aac (mp4a)가됩니다. 내가 필요한 건 스트림을 파일로 저장하는거야.
내 명령은 다음과 같습니다 : ffmpeg -i {Input} -vn -acodec copy output.aac.

aux 파일을 muxing하기 위해 필요한 muxer는 무엇입니까? 나는 flv,mp3,mov을 시도했지만 항상
Unable to find a suitable output format for 'output.aac'을 얻었으므로 이러한 옵션이 잘못되었습니다.
스트림 복사를 위해 인코더가 필요하지 않습니다. btw.

사이드 노트 :이 명령은 ffmpeg의 전체 설치에서 완벽하게 작동하지만 어떤 멀티플렉서가 사용되는지 알지 못합니다. 그것이 정규 ffmpeg에서 실행하는 muxer를 출력하는 방법이 있다면, 역시 작동 할 것입니다.

+2

꽤 이상합니다. .aac은 adts 헤더가있는 raw aac 프레임입니다. Ffmpeg에서 처리 할 수 ​​있어야합니다. -f raw 또는 -r adts를 시도하십시오. – szatmary

+4

당신은 adts muxer가 필요합니다 :'-f adts' – Mulvya

+1

그 것이 효과가 있었기 때문에 답을 추가해 주시면 받아 들일 것입니다. –

답변

0

AAC의 일반적인 파일 형식은 BMFF/MOV/MP4/M4A입니다. m4a 파일 확장자를 지정하면 FFmpeg가 처리합니다. Mulvya가 제안

ffmpeg -i {input} -vn -acodec copy output.m4a 

그냥 원시 AAC를 원하는 경우

, 당신은 종류의 경량 컨테이너로 ADTS를 사용할 수 있습니다.

ffmpeg -i {input} -vn -acodec copy -f adts output.aac