Lưu ý rằng đối với điều này, bạn nên luôn luôn sử dụng phiên bản ffmpeg mới nhất và tốt nhất là tự biên dịch nó . Điều này cho phép bạn truy cập vào libx265 và libfdk-aac gần đây nhất để mã hóa âm thanh.
Ngoài ra, việc tiết kiệm tốc độ dữ liệu sẽ khá quyết liệt nếu bạn chuyển từ DVD ~ 10 MBit / s sang khoảng 1 CÁ2 MBit / giây cho video H.264 và 0,5 đùa1 MBit / giây cho video H.265. Thay đổi chất lượng trong các bước dưới đây có thể ảnh hưởng đến bitrate, nhưng vẫn giảm đáng kể dữ liệu.
H.264
Đối với kiểm soát chất lượng / tốc độ, bạn muốn sử dụng chế độ CRF trong libx264 thay vì tốc độ bit không đổi. Sử dụng CRF đảm bảo rằng chất lượng trung bình được giữ nguyên, không phụ thuộc vào độ phân giải video gốc hoặc độ phức tạp của nó. Tốc độ bit không đổi chỉ thực sự hữu ích nếu bạn bị hạn chế bởi phương tiện truyền (ví dụ: tốc độ ổ cứng, thông lượng Internet).
Chọn giá trị CRF là phần khó khăn. Nó đòi hỏi bạn phải nhìn vào đầu ra. Mặc định cho libx264 (23) cung cấp sự đánh đổi khá tốt giữa kích thước và chất lượng. Nhưng do nguồn gốc của bạn đã được nén (và không có chất lượng rất tốt so với Blu-ray), bạn có thể muốn thay đổi CRF thấp hơn một chút, chẳng hạn như 20. Điều này sẽ tăng tốc độ bit cần thiết lên khoảng một phần ba .
Chọn cài đặt trước theo thời gian bạn muốn chờ đợi. slow
có vẻ như một giá trị tốt ở đây
ffmpeg -i input \
-c:v libx264 -crf 20 -pix_fmt yuv420p \
-x264-params keyint=240:min-keyint=20 \
-preset:v slow -profile:v baseline -level 3.0 \
-c:a libfdk_aac -vbr 4 \
output.mp4
Bộ mã hóa AAC ffmpeg tích hợp có thể được sử dụng nếu libfdk-aac không khả dụng. Sử dụng -c:a aac -strict experimental -b:a 128k
thay vì -c:a libfdk_aac -vbr 4
.
H.265
Nghiên cứu cho thấy rằng sử dụng HEVC sẽ giúp tiết kiệm bitrate tới 74% so với H.264. Điều này dựa trên dữ liệu xem chủ quan của các chuỗi Ultra-HD. Tất nhiên, nó phụ thuộc vào độ phức tạp theo thời gian của nội dung nguồn và lượng dữ liệu được lưu sẽ không cao đối với các chuỗi khó mã hóa. Dù bằng cách nào bạn cũng có thể nói rằng giảm 50% dữ liệu là hoàn toàn có thể.
CRF mặc định cho libx265 là 28. Sử dụng cùng một nội dung nguồn, nó dẫn đến khoảng một nửa tốc độ bit so với libx264 tại CRF 23. Điều này không liên quan đến bitrate thực tế, tức là, nếu phiên bản H.264 mất 1,5 MBit / s, sau đó H.265 sẽ sử dụng khoảng 750 kBit / s, nhưng đó là 750 kBit / s so với 350 kBit / s cho một chuỗi khác. Tôi đã chạy nó trên một vài chuỗi ở độ phân giải DVD-PAL và không thể nói sự khác biệt về chất lượng.
ffmpeg -i input \
-c:v libx265 -pix_fmt yuv420p \
-x265-params crf=28:keyint=240:min-keyint=20 \
-preset:v slow \
-c:a libfdk_aac -vbr 4 \
output.mp4
Để biết thêm thông tin, đây là các tài nguyên có liên quan: