iPad / iPhone / iPod 용 비디오를 변환하는 ffmpeg 명령은 무엇입니까?


24

현재 비디오를 변환하기 위해 다음과 같은 수동 브레이크 명령 줄을 실행하는 배치 파일을 사용하고 있습니다.

HandBrakeCLI.exe -v0 --input "D:\input.mkv" --preset="Universal" --ipod-atom -t 1 --angle 1 --gain 0 --output="D:\output.mp4"

이것은 몇 년 동안 나에게 잘 어울려서 원본보다 작은 비디오 파일을 생성했습니다 (16Gb 장치 만 사용할 때 좋습니다).

그러나 시간이 지남에 따라 handbrakecli는 점점 더 많은 비디오를 대안을 찾아야 할 시점으로 변환하려고 애 쓰고 있습니다. 로그가 충돌 원인에 대한 정보를 전혀 제공하지 않는다는 사실은 도움이되지 않습니다. 예를 들어,이 비디오는 전환을 통해 71 %에서 충돌했으며 마지막 4 줄입니다.

AC3 Passthru requested and input codec is not compatible for track 2, using AC3 encoder
x264 [info]: using SAR=9593/9600
x264 [info]: using cpu capabilities: MMX2 SSE2Fast SSSE3 SSE4.2 AVX
x264 [info]: profile Constrained Baseline, level 3.0

별로 도움이되지 않습니다.

대안으로 ffmpeg를 사용하는 것을 보았지만 인터넷에서 본 모든 예제는 다음 중 하나 이상을 수행합니다.

  1. 작동하지 않습니다 (명령 줄 옵션이 인식되지 않음)-일반적입니다!
  2. 원본보다 큰 파일이 생성됩니다. 매우 일반적입니다!
  3. 특히 예기치 않은 비디오 크기가 변환 될 때 사진이 왜곡됩니다 (예 : 와이드 스크린이 아닌 PAL).
  4. 오디오를 제거
  5. iPhone, iPod 또는 iPad가 재생되지 않는 비디오를 만듭니다

괜찮은 다용도 ffmepg 명령 줄이 있습니까? 모든 Apple 장치에서 비디오를 즐겁게 실행하고 파일 크기를 줄일 수 있습니까?

720p 이상의 비디오를 축소 (왜곡하지는 않음)하면 보너스 포인트가 적용됩니다.


핸드 브레이크 클리를 마지막으로 업그레이드 한시기는 언제입니까?
유전자

충돌 버그가 수정되기를 바랍니다. 현재 0.10.2 (2015060900)-MinGW x86_64를 실행하고 있습니다.
Richard

나는 iOS에서 작업을 거부 MP4 비디오가 있고, 이것은 내가 그것을 고정 된 것을 연상 할 수있는 가장 짧은 명령했다 :는 FFmpeg -i broken_video.mp4 -pix_fmt yuv420p working_video.mp4
Bemmu

답변:


30

여기에 내가 가져 가라. 나는 아이폰 4 이상 (모든 아이 패드 포함)을 목표로 삼겠다 : H.264 메인 프로파일, 레벨 3.1

ffmpeg -i input.mp4 -vcodec libx264 -profile:v main -level 3.1 -preset medium -crf 23 -x264-params ref=4 -acodec copy -movflags +faststart output.mp4

자유롭게 변경할 수있는 값 :

  • -crf 23: 일정한 품질 설정. 값이 높을수록 품질이 낮고 파일이 작습니다. 낮음 = 품질이 좋아지고 파일이 커집니다. Sane 값은 [18-24]입니다.
  • -preset medium: 너무 느리면 더 빠른 사전 설정을 사용하십시오. 인내심이 있다면 느린 것을 사용하십시오. 자세한 내용은 여기 를 참조하십시오.
  • -acodec copy: 오디오 트랙을 MP4 컨테이너로 복사하려고 시도합니다. 복사 할 수 없으면 AAC / MP3 / AC3으로 다시 인코딩해야합니다. 예 :-acodec libmp3lame

비디오가 720p보다 큰 경우 입력 뒤에 다음을 추가하십시오.

-vf "scale=-2:720:flags=lanczos"

그러면 비디오가 720p로 줄어들고 종횡비가 유지됩니다. 사용되는 스케일링 알고리즘은 기본값보다 훨씬 낫기 때문에 lanczos입니다.


3
-vf "scale=-2:720:flags=lanczos"대신 사용할 수 있습니다 . -movflags +faststart브라우저에서와 같이 점진적 다운로드를 통해 파일을 볼 경우 (그리고 옵션이 확실히 아프지 않은 경우) 추가하는 것이 좋습니다.
llogan

내가 사용하는 Zeranoe 빌드는을 지원하지 않습니다 x264-params. 직접 빌드하는 것 보다이 문제를 해결할 수있는 방법이 있습니까?
Richard

나는 Zeranoe 빌드를 직접 사용하고 -x264-params잘 작동합니다. 당신이 뭔가를 놓치지 않았습니까? 이 옵션은 주로 구형 디코더에서 처리 할 수없는 4 개 이상의 참조 프레임이 없도록하는 안전입니다.
엘리

-acodec libmp3lame나를 위해 작동하지 않습니다. iPad Mini에서 오디오를 활성화하려면 변형 된 코드를 사용 ffmpeg하여 재구성 했습니다 . nonfreelibfdk_aac
Vitaly S.

0

이것은 기본이지만 iPad 3에서 바로 작동했습니다.

ffmpeg -i inputfile outputfile.m4v
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.