Sử dụng ffmpeg để mã hóa video thô sang định dạng H.264


10

Trên Ubuntu 10.04, tôi đang cố mã hóa video thô (định dạng YUV) thành video được mã hóa H.264 bằng cách sử dụng các lệnh ffmpeg bên dưới:

ffmpeg -i input.mp4 output.h264

nhưng tôi gặp lỗi khi nói

Codec không được hỗ trợ cho luồng đầu ra # 0,0

Sau đó, khi tôi thử tùy chọn này:

ffmpeg -i input.mp4 -formats h264 output.h264

nó vẫn không mã hóa.

Bây giờ tôi đã hiểu rằng ffmpeg sử dụng libx264 để mã hóa sang định dạng H.264. Bây giờ tôi có gói x264 - bộ mã hóa H.264 nhanh được cài đặt trên Ubuntu này.

Những câu hỏi của tôi:

  1. Có bất kỳ mối quan hệ giữa libx264 này mà ffmpeg cần và chương trình x264 không?
  2. Làm cách nào để cài đặt libx264 và làm cho ffmpeg sử dụng điều này để cho phép tôi mã hóa video sang định dạng H.264?

Những gì về câu hỏi trước đây của bạn, không được giải quyết? sử dụng ffmpeg để mã hóa video sang định dạng codec H264
slhck

@slhck - Cảm ơn nhưng, khi tôi sử dụng: - ffmpeg -s 352x240 -i 352x240_420.yuv -vcodec libx264 out.mp4. Nó đã báo lỗi - "Bộ mã hóa không xác định 'libx264'". Bất kỳ con trỏ hơn nữa. Là libx264 giống như thư viện x264 hay cái gì khác.
Goldenmean

Về việc biên dịch ffmpeg và x264 trên Linux, xem tại đây: ffmpeg.org/trac/ffmpeg/wiki/Ub UbuntuCompilationGuide
slhck

Câu trả lời:


11

Trước hết, những lệnh bạn sử dụng trông không chính xác về mặt cú pháp. Để có ffmpeg sử dụng x264, bạn cần cung cấp -c:v libx264đối số.

Bây giờ, nếu bạn có tệp YUV thô, bạn cần cho ffmpeg biết định dạng pixel nào, kích thước nào, v.v. được sử dụng:

ffmpeg -f rawvideo -pix_fmt yuv420p -s:v 1920x1080 -r 25 -i input.yuv \
-c:v libx264 output.mp4

Thay đổi chúng theo thông số kỹ thuật của tệp YUV của bạn. Hãy xem ffmpeg -pix_fmtsdanh sách các định dạng pixel được hỗ trợ. Fourcc.org cũng là một tài nguyên tốt về điều đó.

Nếu bạn chỉ muốn dòng bit H.264 thô trong một .264tệp:

ffmpeg -f rawvideo -pix_fmt yuv420p -s:v 1920x1080 -r 25 -i input.yuv \
-c:v libx264 -f rawvideo output.264

-1

ffmpeg -f rawvideo -pix_fmt yuv420p -s: v 1920x1080 -r 23.976 -i raw_i420_1920_1080 -vcodec libx264 -f đầu ra rawvideo.264

-vcodecnói với nó rằng sử dụng codec. man ffmpegsẽ giúp bạn tìm hiểu thêm.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.