-Crf được sử dụng để làm gì trong ffmpeg


19

Khi chuyển đổi một mảng jpeg thành tệp video (định dạng ogg) tôi đã sử dụng tùy chọn -crf. Phạm vi hợp lệ cho -crf là ​​gì? Hiện tại tôi đang sử dụng 23.

Tôi không thể tìm thấy dấu trang mà tôi đã đọc để biết lá cờ này làm gì và tôi đã dành thời gian để đi vòng quanh.

Đây là những đối số tôi đang sử dụng tại thời điểm này:

-f image2 -r 10 -i " + _sourcePath + @"\img%05d.jpg -crf 18  -y -r 10 " + _destPath + "\\" + _filename + ".ogg"

1
Tôi không biết bất cứ điều gì về lệnh này, nhưng nó được ghi lại rất rõ ở đây: ffmpeg.org/ffmpeg.html .
Ben Plont

1
Bạn đang sử dụng libx264 (cho video H.264) hay libvpx (cho video VP8)? Vui lòng hiển thị lệnh ffmpeg của bạn và đầu ra giao diện điều khiển hoàn chỉnh.
llogan

Xin chào, xin lỗi vì sự chậm trễ. Phải dắt chó đi dạo. Tôi sẽ sửa đổi câu hỏi của tôi. Cảm ơn
Andrew Simpson

1
Vì vậy, câu hỏi là nếu bạn muốn giữ câu hỏi này khá chung chung với CRF, hoặc nếu bạn có một vấn đề cụ thể, bạn cần trợ giúp. Trong trường hợp sau, chúng ta cần lấy đầu ra dòng lệnh đầy đủ (nghĩa là mọi thứ từ "phiên bản ffmpeg" đến bit cuối cùng) và lệnh thực tế bạn đang sử dụng, nhưng không may làm cho các câu trả lời hiện có trở nên vô dụng. Bạn có thể muốn hỏi một câu hỏi mới nếu bạn đang đối mặt với một vấn đề cụ thể.
slhck

@slhck Xin chào, bạn hoàn toàn đúng. Tôi cần phải học cách cụ thể và toàn diện hơn trong tương lai. Vì đó là câu trả lời của bạn phù hợp với nhu cầu của tôi hơn những người khác nhưng những người khác cũng có nhiều thông tin. Tôi sẽ bước đi cẩn thận hơn trong tương lai :) Cảm ơn bạn đã dành thời gian. Nhiều đánh giá cao.
Andrew Simpson

Câu trả lời:


18

Điều đó đề cập đến yếu tố tỷ lệ không đổi ( crf).

Như những người khác đã chỉ ra (Cảm ơn tất cả), các giá trị sẽ phụ thuộc vào bộ mã hóa mà bạn đang sử dụng.

Đối với x264, phạm vi hợp lệ của bạn là 0-51:

Phạm vi của thang đo lượng tử hóa là 0-51: trong đó 0 là lossless, 23 là mặc định và 51 là tồi tệ nhất có thể. Một thấp hơn giá trị là một chất lượng cao hơn và một loạt lành mạnh một cách chủ quan là 18-28. Xem xét 18 là tổn thất trực quan hoặc gần như vậy: nó sẽ trông giống hoặc gần giống với đầu vào nhưng về mặt kỹ thuật thì không mất mát.

Đối với vpx , phạm vi là 4-63(như @ sebastian-hoffner đã trả lời):

Theo mặc định, giá trị CRF có thể từ 4 Hay63 và 10 là điểm khởi đầu tốt. Giá trị thấp hơn có nghĩa là chất lượng tốt hơn.

Trong cả hai trường hợp, thấp hơn là tốt hơn . Theo kinh nghiệm của tôi, tôi thấy x264 thường xuyên hơn nhiều.

Liên kết không biết xấu hổ của Slhck (một mod SU) có vẻ như nó có một số thông tin tốt.


Phạm vi cho VPX là từ 0-63 chứ không phải 4-63, tỷ lệ được đề xuất là 15-30
Suhayb

3

Cờ crf đảm bảo tốc độ bit thay đổi cho chất lượng không đổi, nếu tôi hiểu trang được liên kết bên dưới một cách chính xác. Phạm vi mặc định là từ 4 đến 63, nhưng nó có thể được điều chỉnh thêm.

Hãy xem https://trac.ffmpeg.org/wiki/vpxEncodingGuide để biết thêm thông tin.


Tôi hơi bối rối vì điều này, cả hai chúng tôi liên kết đến cùng một trang và mỗi trang nói điều gì đó hơi khác nhau (phạm vi, đó là). Trong mọi trường hợp, cả hai đều hợp pháp với tôi, vì vậy tôi hơi bối rối vì điều này.
nerdwaller

chào, cảm ơn vì điều đó Tôi đang tìm cách cải thiện chất lượng của luồng video để một crf thấp sẽ làm điều đó?
Andrew Simpson
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.