Tiếng AnhTiếng PhápTiếng Tây Ban Nha

Ad


Biểu tượng yêu thích OnWorks

ffplay-all - Trực tuyến trên đám mây

Chạy ffplay-all trong nhà cung cấp dịch vụ lưu trữ miễn phí OnWorks qua Ubuntu Online, Fedora Online, trình giả lập trực tuyến Windows hoặc trình mô phỏng trực tuyến MAC OS

Đây là lệnh ffplay-all có thể chạy trong nhà cung cấp dịch vụ lưu trữ miễn phí OnWorks bằng cách sử dụng một trong nhiều máy trạm trực tuyến miễn phí của chúng tôi như Ubuntu Online, Fedora Online, trình giả lập trực tuyến Windows hoặc trình giả lập trực tuyến MAC OS

CHƯƠNG TRÌNH:

TÊN


ffplay - trình phát đa phương tiện FFplay

SYNOPSIS


ffplay [lựa chọn] [tập tin đầu vào]

MÔ TẢ


FFplay là một trình phát đa phương tiện rất đơn giản và di động sử dụng các thư viện FFmpeg và SDL
thư viện. Nó chủ yếu được sử dụng làm thử nghiệm cho các API FFmpeg khác nhau.

LỰA CHỌN


Tất cả các tùy chọn số, nếu không được chỉ định khác, hãy chấp nhận một chuỗi đại diện cho
số dưới dạng đầu vào, có thể được theo sau bởi một trong các tiền tố đơn vị SI, ví dụ: 'K',
'M' hoặc 'G'.

Nếu 'i' được thêm vào tiền tố đơn vị SI, tiền tố hoàn chỉnh sẽ được hiểu là
tiền tố đơn vị cho bội số nhị phân, dựa trên lũy thừa của 1024 thay vì lũy thừa của
1000. Việc thêm 'B' vào tiền tố đơn vị SI nhân giá trị với 8. Điều này cho phép sử dụng,
ví dụ: 'KB', 'MiB', 'G' và 'B' làm hậu tố số.

Các tùy chọn không nhận đối số là các tùy chọn boolean và đặt giá trị tương ứng
thành sự thật. Chúng có thể được đặt thành false bằng cách thêm "no" vào trước tên tùy chọn. Ví dụ
sử dụng "-nofoo" sẽ đặt tùy chọn boolean với tên "foo" thành false.

Sông chuyên gia
Một số tùy chọn được áp dụng cho mỗi luồng, ví dụ: tốc độ bit hoặc codec. Bộ chỉ định luồng được sử dụng để
chỉ định chính xác (các) luồng mà một tùy chọn nhất định thuộc về.

Bộ chỉ định luồng là một chuỗi thường được nối vào tên tùy chọn và được phân tách khỏi nó
bằng dấu hai chấm. Ví dụ: "-codec: a: 1 ac3" chứa mã định nghĩa luồng "a: 1", phù hợp với
luồng âm thanh thứ hai. Do đó, nó sẽ chọn codec ac3 cho luồng âm thanh thứ hai.

Công cụ xác định luồng có thể khớp với một số luồng, do đó tùy chọn được áp dụng cho tất cả
họ. Ví dụ: công cụ chỉ định luồng trong "-b: a 128k" khớp với tất cả các luồng âm thanh.

Bộ chỉ định luồng trống phù hợp với tất cả các luồng. Ví dụ: "-codec copy" hoặc "-codec:
copy "sẽ sao chép tất cả các luồng mà không cần mã hóa lại.

Các dạng chỉ định luồng có thể có là:

luồng_index
Đối sánh luồng với chỉ mục này. Ví dụ: "-threads: 1 4" sẽ đặt số lượng chuỗi cho
luồng thứ hai đến 4.

luồng_type[:luồng_index]
luồng_type là một trong các loại sau: "v" hoặc "V" đối với video, "a" đối với âm thanh, "s" đối với
phụ đề, 'd' cho dữ liệu và 't' cho tệp đính kèm. 'v' khớp với tất cả các luồng video, 'V'
chỉ khớp với các luồng video không phải là hình ảnh, hình thu nhỏ hoặc bìa video đính kèm
nghệ thuật. Nếu như luồng_index được đưa ra, sau đó nó khớp với số luồng luồng_index này
kiểu. Nếu không, nó khớp với tất cả các luồng thuộc loại này.

p:chương trình_id[:luồng_index]
If luồng_index được đưa ra, sau đó nó khớp với luồng với số luồng_index trong
chương trình với id chương trình_id. Nếu không, nó khớp với tất cả các luồng trong chương trình.

#luồng_id or i:luồng_id
Khớp luồng theo id luồng (ví dụ: PID trong vùng chứa MPEG-TS).

m:chính[:giá trị]
Đối sánh các luồng với thẻ siêu dữ liệu chính có giá trị được chỉ định. Nếu như giá trị không phải là
đã cho, khớp các luồng chứa thẻ đã cho với bất kỳ giá trị nào.

u Đối sánh các luồng với cấu hình có thể sử dụng, codec phải được xác định và điều cần thiết
phải có thông tin như kích thước video hoặc tốc độ mẫu âm thanh.

Lưu ý rằng trong ffmpeg, đối sánh theo siêu dữ liệu sẽ chỉ hoạt động bình thường đối với các tệp đầu vào.

Chung lựa chọn
Các tùy chọn này được chia sẻ giữa các công cụ ff *.

-L Hiển thị giấy phép.

-NS, - ?, -Cứu giúp, --Cứu giúp [arg]
Hiển thị trợ giúp. Một tham số tùy chọn có thể được chỉ định để in trợ giúp về một mặt hàng cụ thể.
Nếu không có đối số nào được chỉ định, chỉ các tùy chọn công cụ cơ bản (không nâng cao) mới được hiển thị.

Giá trị có thể có của arg là:

Dài
In các tùy chọn công cụ nâng cao ngoài các tùy chọn công cụ cơ bản.

Full
In danh sách đầy đủ các tùy chọn, bao gồm các tùy chọn chia sẻ và riêng tư cho bộ mã hóa,
bộ giải mã, bộ tách dòng, bộ trộn, bộ lọc, v.v.

bộ giải mã =tên bộ giải mã
In thông tin chi tiết về bộ giải mã có tên tên bộ giải mã. Sử dụng -bộ giải mã
tùy chọn để nhận danh sách tất cả các bộ giải mã.

bộ mã hóa =tên bộ mã hóa
In thông tin chi tiết về bộ mã hóa có tên tên bộ mã hóa. Sử dụng -bộ mã hóa
tùy chọn để nhận danh sách tất cả các bộ mã hóa.

demuxer =demuxer_name
In thông tin chi tiết về demuxer có tên demuxer_name. Sử dụng -định dạng
tùy chọn để nhận danh sách tất cả các demuxer và muxers.

muxer =muxer_name
In thông tin chi tiết về muxer có tên muxer_name. Sử dụng -định dạng
tùy chọn để nhận danh sách tất cả các muxers và demuxers.

bộ lọc =tên bộ lọc
In thông tin chi tiết về tên bộ lọc tên bộ lọc. Sử dụng -bộ lọc
tùy chọn để nhận danh sách tất cả các bộ lọc.

-phiên bản
Hiển thị phiên bản.

-định dạng
Hiển thị các định dạng có sẵn (bao gồm cả thiết bị).

những điều cần thiết
Hiển thị các thiết bị có sẵn.

-codec
Hiển thị tất cả các codec được biết đến với libavcodec.

Lưu ý rằng thuật ngữ 'codec' được sử dụng trong toàn bộ tài liệu này như một phím tắt cho
cái được gọi một cách chính xác hơn là định dạng dòng bit đa phương tiện.

-bộ giải mã
Hiển thị các bộ giải mã có sẵn.

-bộ mã hóa
Hiển thị tất cả các bộ mã hóa có sẵn.

-bsfs
Hiển thị các bộ lọc dòng bit có sẵn.

-giao thức
Hiển thị các giao thức có sẵn.

-bộ lọc
Hiển thị các bộ lọc libavfilter có sẵn.

-pix_fmts
Hiển thị các định dạng pixel có sẵn.

-sample_fmts
Hiển thị các định dạng mẫu có sẵn.

-lớp phát
Hiển thị tên kênh và bố cục kênh tiêu chuẩn.

-màu sắc
Hiển thị tên màu được công nhận.

-nguồn thiết bị[,chọn1=Val1[,chọn2=Val2] ...]
Hiển thị các nguồn được phát hiện tự động của thiết bị đầu vào. Một số thiết bị có thể cung cấp hệ thống-
tên nguồn phụ thuộc không thể tự động phát hiện. Danh sách trả về không được
giả định là luôn hoàn thành.

ffmpeg -sources xung, máy chủ = 192.168.0.4

-chìm thiết bị[,chọn1=Val1[,chọn2=Val2] ...]
Hiển thị các điểm chìm được phát hiện tự động của thiết bị đầu ra. Một số thiết bị có thể cung cấp hệ thống-
các tên chìm phụ thuộc không thể tự động phát hiện. Danh sách trả về không thể được giả định
để luôn luôn hoàn chỉnh.

ffmpeg -sinks xung, máy chủ = 192.168.0.4

-mức đăng nhập [lặp lại +]mức độ đăng nhập | -v [lặp lại +]mức độ đăng nhập
Đặt cấp độ ghi nhật ký được sử dụng bởi thư viện. Thêm "repeat +" cho biết rằng lặp lại
đầu ra nhật ký không được nén xuống dòng đầu tiên và thông báo "Tin nhắn cuối cùng được lặp lại n
times "dòng sẽ bị bỏ qua." repeat "cũng có thể được sử dụng một mình. Nếu" repeat "được sử dụng
một mình, và không có thiết lập loglevel nào trước đó, loglevel mặc định sẽ được sử dụng. Nếu nhiều
tham số loglevel được đưa ra, sử dụng 'repeat' sẽ không thay đổi loglevel. mức độ đăng nhập
là một chuỗi hoặc một số có chứa một trong các giá trị sau:

Yên tĩnh, -8
Không hiển thị gì cả; im lặng.

hoảng loạn, 0
Chỉ hiển thị các lỗi nghiêm trọng có thể dẫn đến sự cố quy trình, chẳng hạn như và xác nhận
thất bại. Điều này hiện không được sử dụng cho bất cứ điều gì.

gây tử vong, 8
Chỉ hiển thị các lỗi nghiêm trọng. Đây là những lỗi mà sau đó quá trình hoàn toàn không thể
tiếp tục sau.

lỗi, 16
Hiển thị tất cả các lỗi, bao gồm cả những lỗi có thể được khôi phục.

cảnh báo, 24
Hiển thị tất cả các cảnh báo và lỗi. Bất kỳ thông báo nào liên quan đến có thể không chính xác hoặc
sự kiện bất ngờ sẽ được hiển thị.

thông tin, 32
Hiển thị các tin nhắn thông tin trong quá trình xử lý. Điều này bổ sung cho các cảnh báo và
các lỗi. Đây là giá trị mặc định.

dài dòng, 40
Giống như "thông tin", ngoại trừ dài dòng hơn.

gỡ lỗi, 48
Hiển thị mọi thứ, bao gồm cả thông tin gỡ lỗi.

dấu vết, 56

Theo mặc định, chương trình ghi vào stderr, nếu màu được hỗ trợ bởi thiết bị đầu cuối,
màu sắc được sử dụng để đánh dấu lỗi và cảnh báo. Màu nhật ký có thể bị tắt cài đặt
biến môi trường AV_LOG_FORCE_NOCOLOR or KHÔNG MÀUhoặc có thể buộc phải thiết lập
biến môi trường AV_LOG_FORCE_COLOR. Việc sử dụng biến môi trường KHÔNG MÀU
không được dùng nữa và sẽ bị loại bỏ trong phiên bản FFmpeg sau.

-báo cáo
Kết xuất toàn bộ dòng lệnh và đầu ra bảng điều khiển vào một tệp có tên
"chương trình-YYYYMMDD-HHMMSS.log " trong thư mục hiện tại. Tệp này có thể hữu ích cho
báo cáo lỗi. Nó cũng ngụ ý "-loglevel verbose".

Đặt biến môi trường BÁO CÁO đến bất kỳ giá trị nào cũng có tác dụng như nhau. Nếu
value là một chuỗi ':' - key = value được phân tách, các tùy chọn này sẽ ảnh hưởng đến báo cáo;
các giá trị tùy chọn phải được thoát nếu chúng chứa các ký tự đặc biệt hoặc các tùy chọn
dấu phân cách ':' (xem phần `` Trích dẫn và thoát '' trong hướng dẫn sử dụng ffmpeg-utils).

Các tùy chọn sau được công nhận:

hồ sơ
đặt tên tệp để sử dụng cho báo cáo; % p được mở rộng thành tên của
chương trình,% t được mở rộng thành dấu thời gian, "%%" được mở rộng thành "%" đơn giản

cấp
đặt mức độ chi tiết của nhật ký bằng cách sử dụng một giá trị số (xem "-loglevel").

Ví dụ: để xuất báo cáo ra tệp có tên ffreport.log sử dụng cấp độ nhật ký là 32
(bí danh cho "thông tin" cấp nhật ký):

FFREPORT = file = ffreport.log: level = 32 ffmpeg -i đầu ra đầu vào

Các lỗi phân tích cú pháp biến môi trường không nghiêm trọng và sẽ không xuất hiện trong
báo cáo.

-hide_banner
Loại bỏ biểu ngữ in ấn.

Tất cả các công cụ FFmpeg thường sẽ hiển thị thông báo bản quyền, các tùy chọn xây dựng và thư viện
các phiên bản. Tùy chọn này có thể được sử dụng để ngăn chặn việc in thông tin này.

-cpuflags cờ (toàn cầu)
Cho phép thiết lập và xóa cờ cpu. Tùy chọn này được dùng để thử nghiệm. Không được dùng
nó trừ khi bạn biết mình đang làm gì.

ffmpeg -cpuflags -sse + mmx ...
ffmpeg -cpuflags mmx ...
ffmpeg -cpuflags 0 ...

Các cờ có thể có cho tùy chọn này là:

x86
mmx
mmxext
sse
sse2
sse2chậm
sse3
sse3chậm
sse3
nguyên tử
sse4.1
sse4.2
trung bình
avx2
xộp
fma3
fma4
3dnow
3dnext
chỉ số bmi1
chỉ số bmi2
cmov
ARM
armv5te
cánh tayv6
cánh tayv6t2
vfp
vfpv3
neon
thiết lập
AAArch64
cánh tayv8
vfp
neon
PowerPC
alivec
Riêng Bộ vi xử lý
pentium2
pentium3
pentium4
k6
k62
Athlon
thể thao
k8
-opencl_bench
Tùy chọn này được sử dụng để đánh giá tất cả các thiết bị OpenCL hiện có và in kết quả.
Tùy chọn này chỉ khả dụng khi FFmpeg đã được biên dịch bằng "--enable-opencl".

Khi FFmpeg được định cấu hình bằng "--enable-opencl", các tùy chọn cho OpenCL toàn cầu
bối cảnh được thiết lập thông qua -opencl_options. Xem phần "Tùy chọn OpenCL" trong ffmpeg-
hướng dẫn sử dụng utils cho danh sách đầy đủ các tùy chọn được hỗ trợ. Trong số những người khác, các tùy chọn này
bao gồm khả năng chọn một nền tảng và thiết bị cụ thể để chạy mã OpenCL
trên. Theo mặc định, FFmpeg sẽ chạy trên thiết bị đầu tiên của nền tảng đầu tiên. Trong khi
các tùy chọn cho ngữ cảnh OpenCL toàn cầu cung cấp sự linh hoạt cho người dùng trong việc lựa chọn
Thiết bị OpenCL do họ lựa chọn, hầu hết người dùng có thể muốn chọn thiết bị nhanh nhất
Thiết bị OpenCL cho hệ thống của họ.

Tùy chọn này hỗ trợ việc lựa chọn cấu hình hiệu quả nhất bằng cách xác định
thiết bị thích hợp cho hệ thống của người dùng. Điểm chuẩn tích hợp được chạy trên tất cả
Các thiết bị OpenCL và hiệu suất được đo cho từng thiết bị. Các thiết bị trong
danh sách kết quả được sắp xếp dựa trên hiệu suất của chúng với thiết bị nhanh nhất được liệt kê
đầu tiên. Người dùng sau đó có thể gọi ffmpeg sử dụng thiết bị được coi là nhiều nhất
thích hợp thông qua -opencl_options để đạt được hiệu suất tốt nhất cho OpenCL
mã tăng tốc.

Cách sử dụng điển hình để sử dụng thiết bị OpenCL nhanh nhất bao gồm các bước sau.

Chạy lệnh:

ffmpeg -opencl_bench

Ghi lại ID nền tảng (pidx) và ID thiết bị (đã làm) của thiết bị đầu tiên tức là nhanh nhất
trong danh sách. Chọn nền tảng và thiết bị bằng lệnh:

ffmpeg -opencl_options platform_idx = : device_idx = ...

-opencl_options lựa chọn (toàn cầu)
Đặt tùy chọn môi trường OpenCL. Tùy chọn này chỉ khả dụng khi FFmpeg đã được
được biên dịch bằng "--enable-opencl".

lựa chọn phải là một danh sách của chính=giá trị các cặp tùy chọn được phân tách bằng ':'. Xem phần `` OpenCL
Phần Options '' trong sổ tay ffmpeg-utils để biết danh sách các tùy chọn được hỗ trợ.

TRÁNH
Các tùy chọn này được cung cấp trực tiếp bởi libavformat, libavdevice và libavcodec
các thư viện. Để xem danh sách AVOptions có sẵn, hãy sử dụng -Cứu giúp Lựa chọn. họ đang
được tách thành hai loại:

chủng loại
Các tùy chọn này có thể được đặt cho bất kỳ vùng chứa, codec hoặc thiết bị nào. Các tùy chọn chung là
được liệt kê trong tùy chọn AVFormatContext cho vùng chứa / thiết bị và trong AVCodecContext
tùy chọn cho codec.

riêng
Các tùy chọn này dành riêng cho vùng chứa, thiết bị hoặc codec nhất định. Tùy chọn riêng tư
được liệt kê trong vùng chứa / thiết bị / codec tương ứng của chúng.

Ví dụ: để ghi tiêu đề ID3v2.3 thay vì ID3v2.4 mặc định vào tệp MP3, hãy sử dụng
các id3v2_version tùy chọn riêng của máy muxer MP3:

ffmpeg -i input.flac -id3v2_version 3 out.mp3

Tất cả codec AVOptions đều là mỗi luồng và do đó, một công cụ chỉ định luồng phải được đính kèm vào
Chúng.

Lưu ý: -không có tùy chọn cú pháp không thể được sử dụng cho boolean AVOptions, sử dụng -Lựa chọn 0/-Lựa chọn 1.

Lưu ý: cách cũ không có tài liệu để chỉ định AVOptions trên mỗi luồng bằng cách thêm v / a / s vào
tên tùy chọn hiện đã lỗi thời và sẽ sớm bị xóa.

Chủ yếu lựa chọn
-x chiều rộng
Buộc hiển thị chiều rộng.

-y cao
Lực lượng hiển thị chiều cao.

-s kích thước
Đặt kích thước khung hình (WxH hoặc chữ viết tắt), cần thiết cho các video không chứa tiêu đề
với kích thước khung như YUV thô. Tùy chọn này đã không còn được dùng nữa để chuyển sang chế độ riêng tư
tùy chọn, hãy thử -video_size.

-fs Bắt đầu ở chế độ toàn màn hình.

-một Vô hiệu hóa âm thanh.

-vn Tắt video.

-sn Tắt phụ đề.

-NS gửi
Tìm kiếm gửi. Lưu ý rằng trong hầu hết các định dạng, không thể tìm kiếm chính xác, vì vậy ffplay
sẽ tìm kiếm điểm tìm kiếm gần nhất để gửi.

gửi phải là một đặc điểm kỹ thuật về khoảng thời gian, hãy xem các Thời gian thời gian phần in các
ffmpeg-utils(1) nhãn hiệu.

-t thời gian
Play thời gian giây của âm thanh / video.

thời gian phải là một đặc điểm kỹ thuật về khoảng thời gian, hãy xem các Thời gian thời gian phần in các
ffmpeg-utils(1) nhãn hiệu.

-byte
Tìm kiếm từng byte.

-nút
Tắt hiển thị đồ họa.

-f fmt
Định dạng buộc.

-tiêu đề cửa sổ tiêu đề
Đặt tiêu đề cửa sổ (mặc định là tên tệp đầu vào).

-vòng con số
Vòng lặp phát lại phim lần. 0 nghĩa là mãi mãi.

-showmode chế độ
Đặt chế độ hiển thị để sử dụng. Các giá trị có sẵn cho chế độ là:

0, video
chiếu video

1, sóng biển
hiển thị sóng âm thanh

2, rdft
hiển thị dải tần âm thanh bằng cách sử dụng RDFT ((Đảo ngược) Real Discrete Fourier Transform)

Giá trị mặc định là "video", nếu video không có hoặc không thể phát thì "rdft" là
được chọn tự động.

Bạn có thể chuyển đổi tương tác qua các chế độ hiển thị có sẵn bằng cách nhấn phím w.

-vf bộ lọc
Tạo sơ đồ bộ lọc được chỉ định bởi bộ lọc và sử dụng nó để lọc luồng video.

bộ lọc là mô tả của sơ đồ bộ lọc để áp dụng cho luồng và phải có
một đầu vào video duy nhất và một đầu ra video duy nhất. Trong đồ thị bộ lọc, đầu vào là
được liên kết với nhãn "in" và đầu ra cho nhãn "out". Xem ffmpeg-
thủ công bộ lọc để biết thêm thông tin về cú pháp biểu đồ lọc.

Bạn có thể chỉ định tham số này nhiều lần và chuyển qua các
đồ thị bộ lọc cùng với các chế độ hiển thị bằng cách nhấn phím w.

-af bộ lọc
bộ lọc là mô tả của bộ lọc để áp dụng cho âm thanh đầu vào. Sử dụng
tùy chọn "-bộ lọc" để hiển thị tất cả các bộ lọc có sẵn (bao gồm cả nguồn và bộ lọc chìm).

-i tập tin đầu vào
Đọc tập tin đầu vào.

Nâng cao lựa chọn
-pix_fmt định dạng
Đặt định dạng pixel. Tùy chọn này đã không được chấp nhận thay vì các tùy chọn riêng tư, hãy thử
-pixel_format.

-số liệu thống kê
In một số thống kê phát lại, cụ thể là hiển thị thời lượng phát trực tiếp, codec
thông số, vị trí hiện tại trong luồng và đồng bộ hóa âm thanh / video
trôi dạt. Nó được bật theo mặc định, để tắt nó một cách rõ ràng, bạn cần chỉ định "-nostats".

-Nhanh
Tối ưu hóa không tuân thủ thông số kỹ thuật.

-chuyên đề
Tạo pts.

-đồng bộ hóa kiểu
Đặt đồng hồ chính thành âm thanh ("type = audio"), video ("type = video") hoặc bên ngoài
("type = ext"). Mặc định là âm thanh. Đồng hồ chính được sử dụng để điều khiển âm thanh-video
sự đồng bộ hóa. Hầu hết các trình phát đa phương tiện sử dụng âm thanh làm đồng hồ chính, nhưng trong một số trường hợp
(phát trực tuyến hoặc phát chất lượng cao) thì cần phải thay đổi điều đó. Tùy chọn này là
chủ yếu được sử dụng cho mục đích gỡ lỗi.

-ast audio_stream_specifier
Chọn luồng âm thanh mong muốn bằng cách sử dụng công cụ chỉ định luồng nhất định. Dòng chảy
đặc tả được mô tả trong Sông chuyên gia chương. Nếu tùy chọn này không
đã chỉ định, luồng âm thanh "tốt nhất" được chọn trong chương trình của
dòng video.

-vst video_stream_specifier
Chọn luồng video mong muốn bằng cách sử dụng công cụ chỉ định luồng nhất định. Dòng chảy
đặc tả được mô tả trong Sông chuyên gia chương. Nếu tùy chọn này không
đã chỉ định, luồng video "tốt nhất" được chọn.

-sst subtitle_stream_specifier
Chọn luồng phụ đề mong muốn bằng cách sử dụng công cụ chỉ định luồng đã cho. Dòng chảy
đặc tả được mô tả trong Sông chuyên gia chương. Nếu tùy chọn này không
đã chỉ định, dòng phụ đề "tốt nhất" được chọn trong chương trình của
luồng video hoặc âm thanh đã chọn.

-tự động thoát
Thoát khi video phát xong.

-exitonekeydown
Thoát nếu bất kỳ phím nào được nhấn.

-exitonmousedown
Thoát nếu bất kỳ nút chuột nào được nhấn.

-codec:media_specifier codec_name
Buộc triển khai bộ giải mã cụ thể cho luồng được xác định bởi media_specifier,
có thể giả định các giá trị "a" (âm thanh), "v" (video) và "s" phụ đề.

-codec codec_name
Buộc một bộ giải mã âm thanh cụ thể.

-vcodec codec_name
Buộc một bộ giải mã video cụ thể.

-codec codec_name
Buộc một bộ giải mã phụ đề cụ thể.

-tự động xoay
Tự động xoay video theo siêu dữ liệu tệp. Được bật theo mặc định, sử dụng
-noautorotate để vô hiệu hóa nó.

-khung hình
Bỏ khung hình video nếu video không đồng bộ. Được bật theo mặc định nếu đồng hồ chính là
không được đặt thành video. Sử dụng tùy chọn này để bật giảm khung hình cho tất cả đồng hồ chính
nguồn, sử dụng -noframedrop để vô hiệu hóa nó.

-infbuf
Không giới hạn kích thước bộ đệm đầu vào, đọc càng nhiều dữ liệu từ đầu vào càng tốt
sớm nhất có thể. Được bật theo mặc định cho các luồng thời gian thực, nơi dữ liệu có thể bị xóa
nếu không đọc trong thời gian. Sử dụng tùy chọn này để bật bộ đệm vô hạn cho tất cả các đầu vào, sử dụng
-noinfbuf để vô hiệu hóa nó.

Trong khi chơi
q, ESC
Bỏ đi.

f Bật chế độ toàn màn hình.

p, Toà án nhân dân tối cao
Tạm ngừng.

a Chuyển kênh âm thanh trong chương trình hiện tại.

v Kênh video chu kỳ.

t Chuyển kênh phụ đề trong chương trình hiện tại.

c Chương trình chu kỳ.

w Xoay vòng các bộ lọc video hoặc các chế độ hiển thị.

s Bước sang khung tiếp theo.

Tạm dừng nếu luồng chưa bị tạm dừng, hãy chuyển sang khung video tiếp theo và tạm dừng.

trái phải
Tìm kiếm lùi / tiến 10 giây.

xuống lên
Tìm kiếm lùi / tiến 1 phút.

trang xuống / trang up
Tìm kiếm chương trước / sau. hoặc nếu không có chương Tìm kiếm lùi / chuyển tiếp
10 phút.

chuột Nhấp chuột
Tìm kiếm tỷ lệ phần trăm trong tệp tương ứng với phần chiều rộng.

TỔNG HỢP


Phần này ghi lại cú pháp và định dạng được sử dụng bởi các thư viện và công cụ FFmpeg.

Trích dẫn thoát
FFmpeg thông qua cơ chế trích dẫn và thoát sau đây, trừ khi được chỉ định rõ ràng.
Các quy tắc sau được áp dụng:

· '\ là các ký tự đặc biệt (tương ứng được sử dụng để trích dẫn và thoát). Trong
ngoài chúng, có thể có các ký tự đặc biệt khác tùy thuộc vào
cú pháp nơi thoát và trích dẫn được sử dụng.

· Một ký tự đặc biệt được thoát ra bằng cách thêm tiền tố \.

· Tất cả các ký tự nằm giữa '' được bao gồm theo nghĩa đen trong chuỗi đã phân tích cú pháp. Các
trích dẫn nhân vật ' bản thân nó không thể được trích dẫn, vì vậy bạn có thể cần phải đóng phần trích dẫn và
thoát khỏi nó.

· Các khoảng trắng ở đầu và cuối, trừ khi được thoát ra hoặc được trích dẫn, sẽ bị xóa khỏi
chuỗi phân tích cú pháp.

Lưu ý rằng bạn có thể cần thêm cấp thoát thứ hai khi sử dụng dòng lệnh hoặc
script, phụ thuộc vào cú pháp của ngôn ngữ shell được sử dụng.

Hàm "av_get_token" được xác định trong libavutil / avstring.h có thể được sử dụng để phân tích cú pháp mã thông báo
được trích dẫn hoặc thoát theo các quy tắc được xác định ở trên.

Công cụ tools / ffescape trong cây nguồn FFmpeg có thể được sử dụng để tự động trích dẫn hoặc
thoát một chuỗi trong một tập lệnh.

Các ví dụ

· Thoát chuỗi "Crime d'Amour" có chứa ký tự đặc biệt "":

Tội ác của bạn

· Chuỗi ở trên chứa một dấu ngoặc kép, vì vậy "'" cần phải được thoát ra khi trích dẫn nó:

'Tội ác d' \ '' Tình yêu '

· Bao gồm các khoảng trắng đầu hoặc cuối bằng cách sử dụng trích dẫn:

'chuỗi này bắt đầu và kết thúc bằng khoảng trắng'

· Thoát và trích dẫn có thể được trộn lẫn với nhau:

'Chuỗi' \ 'chuỗi \' 'là một chuỗi'

· Để bao gồm một chữ \ bạn có thể sử dụng thoát hoặc trích dẫn:

'c: \ foo' có thể được viết thành c: \\ foo

Ngày
Cú pháp được chấp nhận là:

[(YYYY-MM-DD | YYYYMMDD) [T | t | ]] ((HH: MM: SS [.m ...]]]) | (HHMMSS [.m ...]]])) [Z]
tại

Nếu giá trị là "bây giờ" thì nó sẽ là thời gian hiện tại.

Giờ là giờ địa phương trừ khi Z được thêm vào, trong trường hợp đó, nó được hiểu là UTC. Nếu
phần năm-tháng-ngày không được chỉ định, nó lấy năm-tháng-ngày hiện tại.

Thời gian thời gian
Có hai cú pháp được chấp nhận để thể hiện khoảng thời gian.

[-] [ :] : [. ...]

HH thể hiện số giờ, MM số phút cho tối đa 2 chữ số và
SS số giây có tối đa 2 chữ số. Các m ở cuối thể hiện số thập phân
giá trị cho SS.

or

[-] + [. ...]

S thể hiện số giây, với phần thập phân tùy chọn m.

Trong cả hai biểu thức, tùy chọn - cho biết thời lượng âm.

Các ví dụ

Các ví dụ sau đây đều là khoảng thời gian hợp lệ:

55 55 giây

12:03:45
12 giờ, 03 phút và 45 giây

23.189
23.189 giây

Video kích thước
Chỉ định kích thước của video có nguồn gốc, nó có thể là một chuỗi của biểu mẫu chiều rộngxcao, Hoặc
tên của một chữ viết tắt kích thước.

Các chữ viết tắt sau được công nhận:

ntsc
720x480

làm bạn 720x576

qntsc
352x240

qpal
352x288

snsc
640x480

spal
768x576

phim ảnh
352x240

ntsc-phim
352x240

sqcif
128x96

qcif
176x144

cif 352x288

4cif
704x576

16cif
1408x1152

qqvga
160x120

qvga
320x240

vga 640x480

svga
800x600

xga 1024x768

uxga
1600x1200

qxga
2048x1536

sxga
1280x1024

qsxga
2560x2048

hsxga
5120x4096


852x480

wxga
1366x768

wsxga
1600x1024

vũ nữ
1920x1200

chó sói
2560x1600

wqsxga
3200x2048

wquxga
3840x2400

cái quái gì thế
6400x4096

ôi trời
7680x4800

cga 320x200

EGA 640x350

hd480
852x480

hd720
1280x720

hd1080
1920x1080

2k 2048x1080

2kphẳng
1998x1080

2 cái kính
2048x858

4k 4096x2160

4kphẳng
3996x2160

4 cái kính
4096x1716

nhd 640x360

hqvga
240x160

wqvga
400x240

fwqvga
432x240

hvga
480x320

qhd 960x540

2kdci
2048x1080

4kdci
4096x2160

uhd2160
3840x2160

uhd4320
7680x4320

Video tỷ lệ
Chỉ định tốc độ khung hình của video, được biểu thị bằng số khung hình được tạo mỗi giây.
Nó phải là một chuỗi ở định dạng frame_rate_num/frame_rate_den, một số nguyên, a
số thực hoặc từ viết tắt tốc độ khung hình video hợp lệ.

Các chữ viết tắt sau được công nhận:

ntsc
30000/1001

làm bạn 25/1

qntsc
30000/1001

qpal
25/1

snsc
30000/1001

spal
25/1

phim ảnh
24/1

ntsc-phim
24000/1001

Tỷ lệ
Một tỷ lệ có thể được biểu thị dưới dạng một biểu thức hoặc dưới dạng tử số:mẫu số.

Lưu ý rằng tỷ lệ có vô hạn (1/0) hoặc giá trị âm được coi là hợp lệ, vì vậy bạn nên
kiểm tra giá trị trả về nếu bạn muốn loại trừ các giá trị đó.

Giá trị không xác định có thể được biểu thị bằng chuỗi "0: 0".

Màu
Nó có thể là tên của một màu như được định nghĩa bên dưới (đối sánh không phân biệt chữ hoa chữ thường) hoặc
Chuỗi "[0x | #] RRGGBB [AA]", có thể theo sau là @ và một chuỗi đại diện cho alpha
thành phần.

Thành phần alpha có thể là một chuỗi được tạo bởi "0x" theo sau là số thập lục phân hoặc
một số thập phân từ 0.0 đến 1.0, đại diện cho giá trị độ mờ (0x00 or 0.0
có nghĩa là hoàn toàn minh bạch, 0xff or 1.0 hoàn toàn không trong suốt). Nếu thành phần alpha là
không được chỉ định sau đó 0xff được giả định.

Chuỗi ngẫu nhiên sẽ dẫn đến một màu ngẫu nhiên.

Các tên màu sau đây được nhận dạng:

AliceBlue
0xF0F8FF

Đồ cổ
0xFAEBD7

Aqua
0x00FFFF

Lục ngọc
0x7FFFD4

Azure
0xF0FFFF

Be
0xF5F5DC

Bisque
0xFFE4C4

Đen
0x000000

BlanchedAlmond
0xFFEBCD

Màu xanh da trời
0x0000FF

Màu XanhTím
0x8A2BE2

nâu
0xA52A2A

Gỗ lớn
0xDEB887

Xanh chói
0x5F9EA0

Mèo lông xám
0x7FFF00

Sô cô la
0xD2691E

San hô
0xFF7F50

Màu xanh hoa ngô đồng
0x6495ED

Cornsilk
0xFFF8DC

đỏ thắm
0xDC143C

Cyan
0x00FFFF

Xanh đậm
0x00008B

DarkCyan
0x008B8B

TốiVàngThanh
0xB8860B

Màu xám đen
0xA9A9A9

Màu xanh lá cây đậm
0x006400

Vải kaki màu thẫm
0xBDB76B

Màu đỏ tươi tối
0x8B008B

DarkOliveGreen
0x556B2F

Màu cam đậm
0xFF8C00

DarkOrchid
0x9932CC

Đỏ sẫm
0x8B0000

DarkSalmon
0xE9967A

DarkSeaGreen
0x8FBC8F

DarkSlateBlue
0x483D8B

DarkSlateGray
0x2F4F4F

DarkTurerald
0x00CED1

Màu tím đậm
0x9400D3

Màu hồng đậm
0xFF1493

Bầu trời xanh thẳm
0x00BFF

DimGray
0x696969

DodgerBlue
0x1E90FF

gạch lửa
0xB22222

Hoa
0xFFFFAF0

Rừng xanh
0x228B22

Cây khoa vản anh
0xFF00FF

Gainsboro
0xDCDCDC

GhostWhite
0xF8F8FF

Gói Vàng
0xFFD700

thanh vàng
0xDAA520

màu xám
0x808080

màu xanh lá
0x008000

Màu xanh lá cây
0xADFF2F

mật ong
0xF0FFF0

HotPink
0xFF69B4

Ấn Độ
0xCD5C5C

chàm
0x4B0082

Ngà voi
0xFFFFFF0

Khaki
0xF0E68C

Hoa oải hương
0xE6E6FA

Hoa oải hương
0xFFF0F5

Cỏ xanh
0x7CFC00

LemonChiền
0xFFFACD

LightBlue
0xADD8E6

LightCoral
0xF08080

LightCyan
0xE0FFFF

Ánh SángVàngThanhVàng
0xFAFAD2

Màu xanh lợt
0x90EE90

LightGrey
0xD3D3D3

Màu hồng nhạt
0xFFB6C1

Ánh SángCá ​​Hồi
0xFFA07A

LightSeaGreen
0x20B2AA

LightSkyBlue
0x87CEFA

LightSlateGray
0x778899

LightSteelBlue
0xB0C4DE

ánh sángVàng
0xFFFFFE0

Vôi
0x00FF00

LimeGreen
0x32CD32

Lanh
0xFAF0E6

Magenta
0xFF00FF

làm biếng
0x800000

Trung bìnhThủy sản
0x66CDAA

Xanh nhẹ
0x0000CD

Trung bình
0xBA55D3

MediumPurple
0x9370D8

MediumSeaGreen
0x3CB371

MediumSlateBlue
0x7B68EE

VừaMùa XuânXanh
0x00FA9A

MediumTurerald
0x48D1CC

MediumVioletRed
0xC71585

Màu xanh nửa đêm
0x191970

Bạc hà
0xF5FFFA

MistyRose
0xFFE4E1

giày da đanh
0xFFE4B5

Navajo
0xFFDEAD

Hải quân
0x000080

OldLace
0xFDF5E6

Ôliu
0x808000

Màu xám ô liu
0x6B8E23

trái cam
0xFFA500

Cam
0xFF4500

cây lan
0xDA70D6

NhạtVàngThanh
0xEEE8AA

Màu nhạt
0x98FB98

PaleTurerald
0xAFEEEE

PaleVioletRed
0xD87093

Đu đủ
0xFFEFD5

Quả đào
0xFFDAB9

Peru
0xCD853F

Hồng
0xFFC0CB

Nho khô
0xDDA0DD

Bột màu
0xB0E0E6

Màu tím
0x800080

đỏ 0xFF0000

RosyBrown
0xBC8F8F

Xanh đậm
0x4169E1

Yên xe màu nâu
0x8B4513

Cá hồi
0xFA8072

SandyBrown
0xF4A460

Biển xanh
0x2E8B57

vỏ sò
0xFFF5EE

Sienna
0xA0522D

Gói Bạc
0xC0C0C0

Trời xanh
0x87CEEB

Màu xanh đá phiến
0x6A5ACD

Phiến đá xám
0x708090

Tuyết Rơi
0xFFFAFA

Xuân xanh
0x00FF7F

Màu xanh thép
0x4682B4

Tân 0xD2B48C

con le le
0x008080

một loại cây gai
0xD8BFD8

Cà chua
0xFF6347

ngọc lam
0x40E0D0

màu tím
0xEE82EE

Wheat
0xF5DEB3

trắng
0xFFFFFF

Khói trắng
0xF5F5F5

Màu vàng
0xFFFF00

Màu vàng
0x9ACD32

Kênh Bố trí
Bố cục kênh chỉ định bố trí không gian của các kênh trong đa kênh
luồng âm thanh. Để chỉ định bố cục kênh, FFmpeg sử dụng một cú pháp đặc biệt.

Các kênh riêng lẻ được xác định bằng một id, như bảng dưới đây đưa ra:

FL phía trước bên trái

FR phía trước bên phải

FC trung tâm phía trước

L.F.E. tần số thấp

BL quay lại bên trái

BR lưng bên phải

FLC phía trước bên trái của trung tâm

FRC phía trước bên phải của trung tâm

BC trung tâm trở lại

SL bên trái

SR bên phải

TC Trung tâm hàng đầu

TFL trên cùng bên trái

TFC phía trước trung tâm

TFR phía trên bên phải

TBL trên cùng bên trái

TBC trung tâm trên cùng

TBR trên cùng bên phải

DL downmix trái

DR downmix phải

WL rộng bên trái

WR rộng bên phải

SDL bao quanh trực tiếp bên trái

SDR bao quanh trực tiếp bên phải

LFE2
tần số thấp 2

Bố cục kênh tiêu chuẩn có thể được chỉ định bằng cách sử dụng các số nhận dạng sau:

mono
FC

âm thanh nổi
FL + FR

2.1 FL + FR + LFE

3.0 FL + FR + FC

3.0 (trở lại)
FL + FR + BC

4.0 FL + FR + FC + BC

quad
FL + FR + BL + BR

quad (bên)
FL + FR + SL + SR

3.1 FL + FR + FC + LFE

5.0 FL + FR + FC + BL + BR

5.0 (bên)
FL + FR + FC + SL + SR

4.1 FL + FR + FC + LFE + BC

5.1 FL + FR + FC + LFE + BL + BR

5.1 (bên)
FL + FR + FC + LFE + SL + SR

6.0 FL + FR + FC + BC + SL + SR

6.0(mặt trước)
FL + FR + FLC + FRC + SL + SR

lục giác
FL + FR + FC + BL + BR + BC

6.1 FL + FR + FC + LFE + BC + SL + SR

6.1 FL + FR + FC + LFE + BL + BR + BC

6.1(mặt trước)
FL + FR + LFE + FLC + FRC + SL + SR

7.0 FL + FR + FC + BL + BR + SL + SR

7.0(mặt trước)
FL + FR + FC + FLC + FRC + SL + SR

7.1 FL + FR + FC + LFE + BL + BR + SL + SR

7.1 (rộng)
FL + FR + FC + LFE + BL + BR + FLC + FRC

7.1 (cạnh rộng)
FL + FR + FC + LFE + FLC + FRC + SL + SR

bát giác
FL + FR + FC + BL + BR + BC + SL + SR

trộn lẫn
DL + DR

Bố cục kênh tùy chỉnh có thể được chỉ định dưới dạng một chuỗi các thuật ngữ, được phân tách bằng dấu '+' hoặc '|'.
Mỗi thuật ngữ có thể là:

· Tên của bố cục kênh tiêu chuẩn (ví dụ: mono, âm thanh nổi, 4.0, quad, 5.0, Vv)

· Tên của một kênh duy nhất (ví dụ: FL, FR, FC, L.F.E., Vv)

· Một số kênh, ở dạng thập phân, theo sau là 'c' tùy chọn, mang lại giá trị mặc định
bố cục kênh cho số kênh đó (xem chức năng
"av_get_default_channel_layout")

· Mặt nạ bố cục kênh, ở hệ thập lục phân bắt đầu bằng "0x" (xem macro "AV_CH_ *" trong
libavutil / channel_layout.h.

Bắt đầu từ phiên bản libavutil 53, ký tự theo sau "c" để chỉ định một số
các kênh sẽ được yêu cầu, trong khi mặt nạ bố cục kênh cũng có thể được chỉ định là
số thập phân (nếu và chỉ khi không được theo sau bởi "c").

Xem thêm hàm "av_get_channel_layout" được định nghĩa trong libavutil / channel_layout.h.

CÁCH DIỄN ĐẠT ĐÁNH GIÁ


Khi đánh giá một biểu thức số học, FFmpeg sử dụng một trình đánh giá công thức nội bộ,
được thực hiện thông qua libavutil / eval.h diệnngười dùng.

Một biểu thức có thể chứa toán tử đơn phân, nhị phân, hằng số và hàm.

Hai biểu thức expr1expr2 có thể được kết hợp để tạo thành một biểu thức khác "expr1;expr2".
expr1expr2 được đánh giá lần lượt và biểu thức mới đánh giá giá trị của
expr2.

Các toán tử nhị phân sau có sẵn: "+", "-", "*", "/", "^".

Các toán tử một ngôi sau khả dụng: "+", "-".

Các chức năng sau có sẵn:

abs (x)
Tính giá trị tuyệt đối của x.

acos (x)
Tính toán arccosine của x.

asin (x)
Tính arcsine của x.

atan (x)
Tính toán arctangent của x.

giữa (x, tối thiểu tối đa)
Trả về 1 nếu x là lớn hơn hoặc bằng phút và nhỏ hơn hoặc bằng tối đa, 0
nếu không thì.

bitand (x, y)
bitor (x, y)
Tính toán bitwise và / hoặc hoạt động trên xy.

Kết quả đánh giá xy được chuyển đổi thành số nguyên trước khi thực thi
hoạt động bitwise.

Lưu ý rằng cả chuyển đổi thành số nguyên và chuyển đổi trở lại dấu phẩy động đều có thể
mất độ chính xác. Cẩn thận với các kết quả không mong muốn đối với số lượng lớn (thường là 2 ^ 53 và
lớn hơn).

ceil (expr)
Làm tròn giá trị của biểu thức thể hiện lên đến số nguyên gần nhất. Ví dụ,
"ceil (1.5)" là "2.0".

clip (x, tối thiểu tối đa)
Trả lại giá trị của x kẹp giữa phúttối đa.

cos (x)
Tính cosin của x.

cosh (x)
Tính cosin hyperbolic của x.

eq (x, y)
Trả về 1 nếu xy là tương đương, 0 thì ngược lại.

exp (x)
Tính theo cấp số nhân của x (với cơ số "e", số của Euler).

tầng (expr)
Làm tròn giá trị của biểu thức thể hiện xuống số nguyên gần nhất. Ví dụ,
"floor (-1.5)" là "-2.0".

gauss (x)
Tính toán hàm Gauss của x, tương ứng với "exp (-x * x / 2) / sqrt (2 * PI)".

gcd (x, y)
Trả về ước số chung lớn nhất của xy. Nếu cả hai xy là 0 hoặc một trong hai hoặc cả hai
nhỏ hơn XNUMX thì hành vi là không xác định.

gt (x, y)
Trả về 1 nếu x lớn hơn y, 0 nếu không.

gte (x, y)
Trả về 1 nếu x là lớn hơn hoặc bằng y, 0 nếu không.

giả thuyết (x, y)
Hàm này tương tự như hàm C có cùng tên; nó trả về "sqrt (x*x +
y*y) ", độ dài cạnh huyền của tam giác vuông với độ dài các cạnh xy,
hoặc khoảng cách của điểm (x, y) từ nguồn gốc.

nếu (x, y)
Đánh giá xvà nếu kết quả là khác XNUMX thì trả về kết quả của việc đánh giá y,
trả về 0 nếu không.

nếu (x, y, z)
Đánh giá xvà nếu kết quả là khác XNUMX, trả về kết quả đánh giá của y, Nếu không
kết quả đánh giá của z.

ifnot (x, y)
Đánh giá xvà nếu kết quả bằng XNUMX thì trả về kết quả đánh giá của y, trở về
0 nếu không.

ifnot (x, y, z)
Đánh giá xvà nếu kết quả bằng XNUMX thì trả về kết quả đánh giá là y, nếu không
kết quả đánh giá của z.

isinf (x)
Trả về 1.0 nếu x là +/- INFINITY, ngược lại là 0.0.

isnan (x)
Trả về 1.0 nếu x là NAN, ngược lại là 0.0.

ld (var)
Tải giá trị của biến nội bộ với số , đã được lưu trữ trước đây
với st (, thể hiện). Hàm trả về giá trị đã tải.

nhật ký (x)
Tính logarit tự nhiên của x.

lt (x, y)
Trả về 1 nếu x nhỏ hơn y, 0 nếu không.

lte (x, y)
Trả về 1 nếu x nhỏ hơn hoặc bằng y, 0 nếu không.

tối đa (x, y)
Trả lại mức tối đa giữa xy.

tối thiểu (x, y)
Trả lại mức tối đa giữa xy.

mod (x, y)
Tính phần còn lại của phép chia x by y.

không (expr)
Trả về 1.0 nếu thể hiện bằng 0.0, ngược lại là XNUMX.

pow (x, y)
Tính toán sức mạnh của x cao y, nó tương đương với "(x) ^ (y) ".

in (t)
in (t, l)
In giá trị của biểu thức t với loglevel l. Nếu l không được chỉ định thì là mặc định
mức nhật ký được sử dụng. Trả về giá trị của biểu thức được in.

In t với loglevel l

ngẫu nhiên (x)
Trả về giá trị giả ngẫu nhiên trong khoảng từ 0.0 đến 1.0. x là chỉ số của nội bộ
biến sẽ được sử dụng để lưu hạt giống / trạng thái.

root (expr, tối đa)
Tìm một giá trị đầu vào mà hàm được đại diện cho thể hiện với lý lẽ ld(0) is
0 trong khoảng 0..tối đa.

Biểu thức trong thể hiện phải biểu thị một hàm liên tục hoặc kết quả là không xác định.

ld(0) được sử dụng để đại diện cho giá trị đầu vào của hàm, có nghĩa là
biểu thức sẽ được đánh giá nhiều lần với các giá trị đầu vào khác nhau mà
biểu thức có thể truy cập thông qua ld(0). Khi biểu thức đánh giá là 0 thì
giá trị đầu vào tương ứng sẽ được trả về.

tội lỗi (x)
Tính sin của x.

sinh (x)
Tính sin hyperbolic của x.

sqrt (expr)
Tính căn bậc hai của thể hiện. Điều này tương đương với "(thể hiện) ^. 5 ".

squish (x)
Tính biểu thức "1 / (1 + exp (4 * x))".

st (var, kinh nghiệm)
Lưu trữ giá trị của biểu thức thể hiện trong một biến nội bộ. chỉ định
số của biến nơi lưu trữ giá trị và nó là một giá trị nằm trong khoảng từ 0 đến
9. Hàm trả về giá trị được lưu trữ trong biến nội bộ. Lưu ý, các biến
hiện không được chia sẻ giữa các biểu thức.

tan (x)
Tính tiếp tuyến của x.

tanh (x)
Tính tiếp tuyến hypebol của x.

taylor (expr, x)
taylor (expr, x, Tôi)
Đánh giá một chuỗi Taylor tại x, đưa ra một biểu thức đại diện cho "ld (id)" - th
đạo hàm của một hàm số tại 0.

Khi chuỗi không hội tụ kết quả là không xác định.

tôi đã làm) được sử dụng để đại diện cho thứ tự phái sinh trong thể hiện, có nghĩa là
biểu thức sẽ được đánh giá nhiều lần với các giá trị đầu vào khác nhau mà
biểu thức có thể truy cập thông qua "ld (id)". Nếu như id không được chỉ định thì 0 được giả định.

Lưu ý, khi bạn có các đạo hàm tại y thay vì 0, "taylor (expr, xy)" có thể là
đã sử dụng.

thời gian(0)
Trả về thời gian hiện tại (đồng hồ treo tường) tính bằng giây.

trunc (expr)
Làm tròn giá trị của biểu thức thể hiện về phía XNUMX đến số nguyên gần nhất. Ví dụ,
"trunc (-1.5)" là "-1.0".

while (chung cư, kinh nghiệm)
Đánh giá biểu hiện thể hiện trong khi biểu thức chung cư khác XNUMX và trả về giá trị
Cuối cùng thể hiện đánh giá hoặc NAN nếu chung cư luôn luôn sai.

Các hằng số sau có sẵn:

PI diện tích của đĩa đơn vị, khoảng 3.14

E exp(1) (Số của Euler), xấp xỉ 2.718

PHI tỷ lệ vàng (1+câu hỏi(5)) / 2, xấp xỉ 1.618

Giả sử rằng một biểu thức được coi là "đúng" nếu nó có giá trị khác XNUMX, hãy lưu ý rằng:

"*" hoạt động giống như AND

"+" hoạt động giống như HOẶC

Ví dụ cấu trúc:

nếu (A VÀ B) thì C

tương đương với:

nếu (A * B, C)

Trong mã C của bạn, bạn có thể mở rộng danh sách các hàm đơn phân và nhị phân, đồng thời xác định
các hằng số được công nhận, để chúng có sẵn cho các biểu thức của bạn.

Người đánh giá cũng nhận ra các tiền tố đơn vị Hệ thống Quốc tế. Nếu 'i' được thêm vào
sau tiền tố, các tiền tố nhị phân được sử dụng, dựa trên lũy thừa của 1024 thay vì
lũy thừa 1000. Hậu tố 'B' nhân giá trị với 8 và có thể được thêm vào sau
tiền tố đơn vị hoặc được sử dụng một mình. Điều này cho phép sử dụng ví dụ như 'KB', 'MiB', 'G' và 'B' là
số bưu điện.

Danh sách các tiền tố Hệ thống Quốc tế có sẵn sau đây, với dấu hiệu của
lũy thừa tương ứng của 10 và của 2.

y 10 ^ -24 / 2 ^ -80

z 10 ^ -21 / 2 ^ -70

a 10 ^ -18 / 2 ^ -60

f 10 ^ -15 / 2 ^ -50

p 10 ^ -12 / 2 ^ -40

n 10 ^ -9 / 2 ^ -30

u 10 ^ -6 / 2 ^ -20

m 10 ^ -3 / 2 ^ -10

c 10 ^ -2

d 10 ^ -1

h 10 ^ 2

k 10 ^ 3/2 ^ 10

K 10 ^ 3/2 ^ 10

M 10 ^ 6/2 ^ 20

G 10 ^ 9/2 ^ 30

T 10 ^ 12/2 ^ 40

P 10 ^ 15/2 ^ 40

E 10 ^ 18/2 ^ 50

Z 10 ^ 21/2 ^ 60

Y 10 ^ 24/2 ^ 70

MỞ LỰA CHỌN


Khi FFmpeg được định cấu hình bằng "--enable-opencl", có thể đặt các tùy chọn cho
bối cảnh OpenCL toàn cầu.

Danh sách các tùy chọn được hỗ trợ như sau:

tùy chọn xây dựng
Đặt các tùy chọn xây dựng được sử dụng để biên dịch các hạt nhân đã đăng ký.

Xem tài liệu tham khảo "Phiên bản đặc điểm kỹ thuật OpenCL: 1.2 chương 5.6.4".

platform_idx
Chọn chỉ mục của nền tảng để chạy mã OpenCL.

Chỉ mục được chỉ định phải là một trong các chỉ mục trong danh sách thiết bị có thể
lấy được bằng "ffmpeg -opencl_bench" hoặc "av_opencl_get_device_list ()".

thiết bị_idx
Chọn chỉ mục của thiết bị được sử dụng để chạy mã OpenCL.

Chỉ mục được chỉ định phải là một trong các chỉ mục trong danh sách thiết bị có thể
lấy được bằng "ffmpeg -opencl_bench" hoặc "av_opencl_get_device_list ()".

CODEC LỰA CHỌN


libavcodec cung cấp một số tùy chọn chung chung, có thể được đặt trên tất cả các bộ mã hóa và
bộ giải mã. Ngoài ra, mỗi codec có thể hỗ trợ cái gọi là tùy chọn riêng tư, cụ thể
cho một codec nhất định.

Đôi khi, một tùy chọn chung có thể chỉ ảnh hưởng đến một loại codec cụ thể và có thể
vô nghĩa hoặc bị người khác bỏ qua, vì vậy bạn cần biết ý nghĩa của
tùy chọn. Ngoài ra, một số tùy chọn chỉ dành cho giải mã hoặc mã hóa.

Các tùy chọn có thể được thiết lập bằng cách chỉ định -tùy chọn giá trị trong các công cụ FFmpeg hoặc bằng cách thiết lập
giá trị rõ ràng trong các tùy chọn "AVCodecContext" hoặc sử dụng libavutil / opt.h API cho
sử dụng có lập trình.

Danh sách các tùy chọn được hỗ trợ như sau:

b số nguyên (mã hóa, âm thanh, video)
Đặt tốc độ bit theo bit / s. Giá trị mặc định là 200K.

ab số nguyên (mã hóa, âm thanh)
Đặt tốc độ bit âm thanh (tính bằng bit / s). Giá trị mặc định là 128K.

bt số nguyên (mã hóa, video)
Đặt dung sai tốc độ bit của video (tính bằng bit / s). Trong chế độ 1 lần, dung sai tốc độ bit chỉ định
ratecontrol sẵn sàng lệch bao xa so với giá trị tốc độ bit trung bình mục tiêu. Cái này
không liên quan đến tốc độ bit tối thiểu / tối đa. Giảm khả năng chịu đựng quá nhiều sẽ có tác dụng phụ
về chất lượng.

cờ cờ (giải mã / mã hóa, âm thanh, video, phụ đề)
Đặt cờ chung.

Những giá trị khả thi:

mv4 Sử dụng bốn vectơ chuyển động bằng macroblock (mpeg4).

qpel
Sử dụng bù chuyển động 1/4 viên.

vòng lặp
Sử dụng bộ lọc vòng lặp.

thang đo q
Sử dụng qscale cố định.

gmc Sử dụng gmc.

mv0 Luôn thử một mb với mv = <0,0>.

input_preserve
pass1
Sử dụng kiểm soát chuột 2pass nội bộ trong chế độ vượt qua đầu tiên.

pass2
Sử dụng kiểm soát chuột 2pass nội bộ ở chế độ vượt qua thứ hai.

màu xám
Chỉ giải mã / mã hóa thang độ xám.

emu_edge
Không vẽ các cạnh.

psnr
Đặt biến lỗi [?] Trong quá trình mã hóa.

cắt ngắn
Naq Bình thường hóa lượng tử hóa thích ứng.

con nít
Sử dụng DCT xen kẽ.

độ trễ thấp
Bắt buộc độ trễ thấp.

toàn cầu_header
Đặt các tiêu đề chung trong ngoại dữ liệu thay vì mọi khung hình chính.

cắnxact
Chỉ viết dữ liệu nền tảng, xây dựng và độc lập về thời gian. (trừ (I) DCT). Cái này
đảm bảo rằng tổng kiểm tra của tệp và dữ liệu có thể tái tạo và khớp giữa các nền tảng.
Công dụng chính của nó là để kiểm tra hồi quy.

aic Áp dụng dự đoán mã hóa nội bộ nâng cao H263 / mpeg4 ac.

cbp Không được dùng nữa, hãy sử dụng các tùy chọn riêng tư của mpegvideo.

qprd
Không được dùng nữa, hãy sử dụng các tùy chọn riêng tư của mpegvideo.

vòng
Áp dụng ước lượng chuyển động xen kẽ.

cgộp
Sử dụng gop đóng.

phương thức tôi số nguyên (mã hóa, video)
Đặt phương pháp ước lượng chuyển động.

Những giá trị khả thi:

không
ước tính chuyển động bằng không (nhanh nhất)

Full
ước tính chuyển động đầy đủ (chậm nhất)

epz
Ước tính chuyển động EPZS (mặc định)

esa ước tính chuyển động esa (bí danh cho đầy đủ)

Tesa
ước tính chuyển động tesa

ngày ước tính chuyển động dia (bí danh cho epz)

đăng nhập ước tính chuyển động nhật ký

phod
ước tính chuyển động phods

x1 Ước tính chuyển động X1

hex ước tính chuyển động hex

ừm ước tính chuyển động umh

lặp đi lặp lại
ước tính chuyển động iter

extradata_size số nguyên
Đặt kích thước ngoại dữ liệu.

cơ sở thời gian hợp lý con số
Đặt cơ sở thời gian codec.

Đây là đơn vị cơ bản của thời gian (tính bằng giây) liên quan đến dấu thời gian của khung hình
đại diện. Đối với nội dung có khung hình / giây cố định, cơ sở thời gian phải là "1 / frame_rate" và dấu thời gian
gia số phải giống nhau 1.

g số nguyên (mã hóa, video)
Đặt nhóm kích thước hình ảnh. Giá trị mặc định là 12.

ar số nguyên (giải mã / mã hóa, âm thanh)
Đặt tốc độ lấy mẫu âm thanh (tính bằng Hz).

ac số nguyên (giải mã / mã hóa, âm thanh)
Đặt số kênh âm thanh.

xẻ ra số nguyên (mã hóa, âm thanh)
Đặt băng thông giới hạn.

kích thước khung hình số nguyên (mã hóa, âm thanh)
Đặt kích thước khung âm thanh.

Mỗi khung đã gửi ngoại trừ khung cuối cùng phải chứa chính xác các mẫu frame_size cho mỗi
kênh. Có thể là 0 khi codec được đặt CODEC_CAP_VARIABLE_FRAME_SIZE, trong trường hợp đó
kích thước khung không bị hạn chế. Nó được thiết lập bởi một số bộ giải mã để chỉ ra hằng số
kích thước khung.

khung_số số nguyên
Đặt số khung.

chậm trễ số nguyên
qcomp phao (mã hóa, video)
Đặt nén tỷ lệ bộ định lượng video (VBR). Nó được sử dụng như một hằng số trong
phương trình ratecontrol. Phạm vi đề xuất cho rc_eq mặc định: 0.0-1.0.

qblur phao (mã hóa, video)
Đặt làm mờ tỷ lệ bộ định lượng video (VBR).

qmin số nguyên (mã hóa, video)
Đặt thang đo lượng tử video tối thiểu (VBR). Phải được bao gồm từ -1 đến 69, giá trị mặc định
là 2.

qmax số nguyên (mã hóa, video)
Đặt thang đo lượng tử video tối đa (VBR). Phải được bao gồm từ -1 đến 1024, mặc định
giá trị là 31.

qdiff số nguyên (mã hóa, video)
Đặt chênh lệch tối đa giữa thang đo lượng tử (VBR).

bf số nguyên (mã hóa, video)
Đặt số lượng khung B tối đa giữa các khung hình không phải B.

Phải là một số nguyên từ -1 đến 16. 0 có nghĩa là khung B bị vô hiệu hóa. Nếu một giá trị
-1 được sử dụng, nó sẽ chọn một giá trị tự động tùy thuộc vào bộ mã hóa.

Giá trị mặc định là 0.

b_qfactor phao (mã hóa, video)
Đặt hệ số qp giữa khung P và B.

rc_chiến lược số nguyên (mã hóa, video)
Đặt phương pháp kiểm soát chuột.

b_chiến lược số nguyên (mã hóa, video)
Đặt chiến lược để chọn giữa các khung I / P / B.

ps số nguyên (mã hóa, video)
Đặt kích thước tải trọng RTP theo byte.

mv_bit số nguyên
tiêu đề_bit số nguyên
i_tex_bits số nguyên
p_tex_bits số nguyên
tôi đếm số nguyên
p_count số nguyên
bỏ qua_count số nguyên
linh_bit số nguyên
frame_bit số nguyên
codec_tag số nguyên
lỗi cờ (giải mã, video)
Cách giải quyết không tự động phát hiện lỗi bộ mã hóa.

Những giá trị khả thi:

Phát hiện tự động
old_msmpeg4
một số tệp msmpeg4v3 được tạo bằng lavc cũ (không tự động phát hiện)

xvid_ilace
Lỗi xen kẽ Xvid (tự động phát hiện nếu bốncc == XVIX)

u4
(tự động phát hiện nếu bốncc == UMP4)

Không đệm
lỗi đệm (tự động phát hiện)

amv
ac_vlc
lỗi vlc bất hợp pháp (tự động phát hiện trên mỗi bốncc)

qpel_chroma
std_qpel
qpel tiêu chuẩn cũ (tự động phát hiện trên bốncc / phiên bản)

qpel_chroma2
direct_blocksize
lỗi direct-qpel-blocksize (tự động phát hiện trên bốncc / phiên bản)

cạnh
lỗi đệm cạnh (tự động phát hiện trên bốncc / phiên bản)

hpel_chroma
dc_clip
ms Giải quyết các lỗi khác nhau trong bộ giải mã bị hỏng của microsoft.

cắt ngắn
khung phân nhánh

lelim số nguyên (mã hóa, video)
Đặt ngưỡng loại bỏ hệ số đơn cho độ sáng (cả giá trị âm
xét hệ số DC).

celim số nguyên (mã hóa, video)
Đặt ngưỡng loại bỏ hệ số đơn cho độ sắc (cũng có giá trị âm
xem xét hệ số dc)

khắt khe số nguyên (giải mã / mã hóa, âm thanh, video)
Chỉ định cách tuân thủ nghiêm ngặt các tiêu chuẩn.

Những giá trị khả thi:

rất
tuân thủ nghiêm ngặt phiên bản cũ hơn nghiêm ngặt hơn của thông số kỹ thuật hoặc phần mềm tham chiếu

khắt khe
tuân thủ nghiêm ngặt tất cả những điều trong thông số kỹ thuật cho dù có hậu quả gì

bình thường
không chính thức
cho phép các phần mở rộng không chính thức

thử nghiệm
cho phép những thứ thử nghiệm không được tiêu chuẩn hóa, thử nghiệm (chưa hoàn thành / làm việc trong
tiến độ / chưa được kiểm tra tốt) bộ giải mã và bộ mã hóa. Lưu ý: bộ giải mã thử nghiệm có thể
gây ra rủi ro bảo mật, không sử dụng điều này để giải mã đầu vào không đáng tin cậy.

b_qoffset phao (mã hóa, video)
Đặt độ lệch QP giữa khung P và B.

phát hiện lỗi cờ (giải mã, âm thanh, video)
Đặt cờ phát hiện lỗi.

Những giá trị khả thi:

kiểm tra kỹ càng
xác minh CRC được nhúng

dòng bit
phát hiện độ lệch đặc điểm kỹ thuật dòng bit

đệm
phát hiện độ dài dòng bit không phù hợp

phát nổ
hủy giải mã khi phát hiện lỗi nhỏ

bỏ qua_err
bỏ qua lỗi giải mã và tiếp tục giải mã. Điều này rất hữu ích nếu bạn muốn
phân tích nội dung của video và do đó muốn mọi thứ được giải mã bất kể
Cái gì. Tùy chọn này sẽ không tạo ra video dễ xem trong trường hợp
lỗi.

cẩn thận
coi những thứ vi phạm thông số kỹ thuật và chưa được xem là lỗi

compliant
coi tất cả các thông số kỹ thuật không tuân thủ là lỗi

tích cực
coi những thứ mà một bộ mã hóa lành mạnh không nên làm như một lỗi

has_b_frames số nguyên
khối_align số nguyên
mpeg_quant số nguyên (mã hóa, video)
Sử dụng bộ định lượng MPEG thay vì H.263.

qsquish phao (mã hóa, video)
Cách giữ bộ định lượng giữa qmin và qmax (0 = clip, 1 = sử dụng có thể phân biệt
chức năng).

rc_qmod_amp phao (mã hóa, video)
Đặt điều chế lượng tử thử nghiệm.

rc_qmod_freq số nguyên (mã hóa, video)
Đặt điều chế lượng tử thử nghiệm.

rc_override_count số nguyên
rc_eq chuỗi (mã hóa, video)
Đặt phương trình kiểm soát tỷ lệ. Khi tính toán biểu thức, ngoài tiêu chuẩn
các chức năng được định nghĩa trong phần 'Đánh giá Biểu hiện', các chức năng sau là
có sẵn: bits2qp (bit), qp2bits (qp). Ngoài ra, các hằng số sau cũng có sẵn:
iTex pTex tex mv fCode iCount mcVar var isI isP isB avgQP qComp avgIITex avgPITex
avgPPTex avgBPTex avgTex.

tỷ lệ tối đa số nguyên (mã hóa, âm thanh, video)
Đặt dung sai tốc độ bit tối đa (tính bằng bit / s). Yêu cầu bufsize được thiết lập.

tốc độ tối thiểu số nguyên (mã hóa, âm thanh, video)
Đặt dung sai tốc độ bit tối thiểu (tính bằng bit / s). Hữu ích nhất trong việc thiết lập mã hóa CBR. Nó là
ít sử dụng ngược lại.

tăng kích thước số nguyên (mã hóa, âm thanh, video)
Đặt kích thước bộ đệm ratecontrol (tính bằng bit).

rc_buf_aggressivity phao (mã hóa, video)
Hiện tại vô dụng.

i_qfactor phao (mã hóa, video)
Đặt hệ số QP giữa khung P và I.

i_qoffset phao (mã hóa, video)
Đặt độ lệch QP giữa khung P và I.

RC_init_cplx phao (mã hóa, video)
Đặt độ phức tạp ban đầu cho mã hóa 1 lần.

dct số nguyên (mã hóa, video)
Đặt thuật toán DCT.

Những giá trị khả thi:

tự động
tự động chọn một cái tốt (mặc định)

khó hiểu
số nguyên nhanh

int số nguyên chính xác

mmx
alivec
phaan
dấu chấm động AAN DCT

lumi_mask phao (mã hóa, video)
Nén vùng sáng mạnh hơn vùng sáng trung bình.

tcplx_mask phao (mã hóa, video)
Đặt mặt nạ phức tạp theo thời gian.

scplx_mask phao (mã hóa, video)
Đặt mặt nạ phức tạp không gian.

p_mask phao (mã hóa, video)
Đặt mặt nạ liên tục.

mặt nạ bóng tối phao (mã hóa, video)
Nén các vùng tối mạnh hơn các vùng trung bình.

nhận dạng số nguyên (giải mã / mã hóa, video)
Chọn triển khai IDCT.

Những giá trị khả thi:

tự động
int
đơn giản
đơn giản
tự động đơn giản
Tự động chọn IDCT tương thích với IDCT đơn giản

tay
alivec
sh4
bình thường
đơn giảnarmv5te
đơn giảnarmv6
đơn giản
đơn giản
ipp
xvidmmx
món faani
dấu chấm động AAN IDCT

Slice_count số nguyên
ec cờ (giải mã, video)
Đặt chiến lược che giấu lỗi.

Những giá trị khả thi:

đoán_mv
Tìm kiếm vectơ chuyển động lặp lại (MV) (chậm)

gỡ lỗi
sử dụng bộ lọc gỡ lỗi mạnh cho các MB bị hỏng

favour_inter
ưu tiên dự đoán từ khung trước thay vì hiện tại

bit_per_coded_sample số nguyên
trước số nguyên (mã hóa, video)
Đặt phương pháp dự đoán.

Những giá trị khả thi:

trái
máy bay
trung vị
khía cạnh hợp lý con số (mã hóa, video)
Đặt tỷ lệ khung hình mẫu.

gỡ lỗi cờ (giải mã / mã hóa, âm thanh, video, phụ đề)
In thông tin gỡ lỗi cụ thể.

Những giá trị khả thi:

hình ảnh
thông tin hình ảnh

rc kiểm soát tỷ lệ

dòng bit
mb_type
loại macroblock (MB)

qp tham số lượng tử hóa mỗi khối (QP)

mv vector chuyển động

dct_coeff
siêu dữ liệu xanh
hiển thị siêu dữ liệu về độ phức tạp cho khung sắp tới, GoP hoặc trong một khoảng thời gian nhất định.

bỏ qua
mã bắt đầu
Điểm
er Tìm lỗi trong

mmco
hoạt động kiểm soát quản lý bộ nhớ (H.264)

lỗi
vis_qp
trực quan hóa tham số lượng tử hóa (QP), QP thấp hơn được tô màu xanh hơn

vis_mb_type
hình dung các loại khối

bộ đệm
phân bổ bộ đệm hình ảnh

thread_ops
hoạt động phân luồng

danh nghĩa
bỏ qua bù chuyển động

vismv số nguyên (giải mã, video)
Hình dung vectơ chuyển động (MV).

Tùy chọn này không được dùng nữa, hãy xem bộ lọc codecview để thay thế.

Những giá trị khả thi:

pf chuyển tiếp các MV dự đoán về khung hình P

bf chuyển tiếp các MV dự đoán về khung hình B

bb các MV dự đoán lùi về khung hình B

CMP số nguyên (mã hóa, video)
Đặt đầy đủ chức năng so sánh pel me.

Những giá trị khả thi:

buồn tổng chênh lệch tuyệt đối, nhanh (mặc định)

sse tổng sai số bình phương

satd
tổng của sự khác biệt đã chuyển đổi Hadamard tuyệt đối

dct tổng của chênh lệch chuyển đổi DCT tuyệt đối

psnr
tổng các lỗi lượng tử hóa bình phương (tránh, chất lượng thấp)

bit số lượng bit cần thiết cho khối

rd tỷ lệ biến dạng tối ưu, chậm

không
0

vsad
tổng của sự khác biệt theo chiều dọc tuyệt đối

so sánh
tổng của sự khác biệt theo chiều dọc bình phương

nse
tiếng ồn bảo toàn tổng của sự khác biệt bình phương

w53 5/3 wavelet, chỉ sử dụng trong tuyết

w97 9/7 wavelet, chỉ sử dụng trong tuyết

dctmax
sắc độ
cmp phụ số nguyên (mã hóa, video)
Đặt chức năng so sánh sub pel me.

Những giá trị khả thi:

buồn tổng chênh lệch tuyệt đối, nhanh (mặc định)

sse tổng sai số bình phương

satd
tổng của sự khác biệt đã chuyển đổi Hadamard tuyệt đối

dct tổng của chênh lệch chuyển đổi DCT tuyệt đối

psnr
tổng các lỗi lượng tử hóa bình phương (tránh, chất lượng thấp)

bit số lượng bit cần thiết cho khối

rd tỷ lệ biến dạng tối ưu, chậm

không
0

vsad
tổng của sự khác biệt theo chiều dọc tuyệt đối

so sánh
tổng của sự khác biệt theo chiều dọc bình phương

nse
tiếng ồn bảo toàn tổng của sự khác biệt bình phương

w53 5/3 wavelet, chỉ sử dụng trong tuyết

w97 9/7 wavelet, chỉ sử dụng trong tuyết

dctmax
sắc độ
mbcmp số nguyên (mã hóa, video)
Đặt chức năng so sánh macroblock.

Những giá trị khả thi:

buồn tổng chênh lệch tuyệt đối, nhanh (mặc định)

sse tổng sai số bình phương

satd
tổng của sự khác biệt đã chuyển đổi Hadamard tuyệt đối

dct tổng của chênh lệch chuyển đổi DCT tuyệt đối

psnr
tổng các lỗi lượng tử hóa bình phương (tránh, chất lượng thấp)

bit số lượng bit cần thiết cho khối

rd tỷ lệ biến dạng tối ưu, chậm

không
0

vsad
tổng của sự khác biệt theo chiều dọc tuyệt đối

so sánh
tổng của sự khác biệt theo chiều dọc bình phương

nse
tiếng ồn bảo toàn tổng của sự khác biệt bình phương

w53 5/3 wavelet, chỉ sử dụng trong tuyết

w97 9/7 wavelet, chỉ sử dụng trong tuyết

dctmax
sắc độ
ildctcmp số nguyên (mã hóa, video)
Đặt chức năng so sánh dct xen kẽ.

Những giá trị khả thi:

buồn tổng chênh lệch tuyệt đối, nhanh (mặc định)

sse tổng sai số bình phương

satd
tổng của sự khác biệt đã chuyển đổi Hadamard tuyệt đối

dct tổng của chênh lệch chuyển đổi DCT tuyệt đối

psnr
tổng các lỗi lượng tử hóa bình phương (tránh, chất lượng thấp)

bit số lượng bit cần thiết cho khối

rd tỷ lệ biến dạng tối ưu, chậm

không
0

vsad
tổng của sự khác biệt theo chiều dọc tuyệt đối

so sánh
tổng của sự khác biệt theo chiều dọc bình phương

nse
tiếng ồn bảo toàn tổng của sự khác biệt bình phương

w53 5/3 wavelet, chỉ sử dụng trong tuyết

w97 9/7 wavelet, chỉ sử dụng trong tuyết

dctmax
sắc độ
đường kính số nguyên (mã hóa, video)
Đặt loại và kích thước kim cương để ước tính chuyển động.

Last_pred số nguyên (mã hóa, video)
Đặt số lượng dự đoán chuyển động từ khung trước đó.

tiền đề số nguyên (mã hóa, video)
Đặt ước tính trước chuyển động.

làm trước số nguyên (mã hóa, video)
Đặt chức năng so sánh ước tính chuyển động trước.

Những giá trị khả thi:

buồn tổng chênh lệch tuyệt đối, nhanh (mặc định)

sse tổng sai số bình phương

satd
tổng của sự khác biệt đã chuyển đổi Hadamard tuyệt đối

dct tổng của chênh lệch chuyển đổi DCT tuyệt đối

psnr
tổng các lỗi lượng tử hóa bình phương (tránh, chất lượng thấp)

bit số lượng bit cần thiết cho khối

rd tỷ lệ biến dạng tối ưu, chậm

không
0

vsad
tổng của sự khác biệt theo chiều dọc tuyệt đối

so sánh
tổng của sự khác biệt theo chiều dọc bình phương

nse
tiếng ồn bảo toàn tổng của sự khác biệt bình phương

w53 5/3 wavelet, chỉ sử dụng trong tuyết

w97 9/7 wavelet, chỉ sử dụng trong tuyết

dctmax
sắc độ
pre_dia_size số nguyên (mã hóa, video)
Đặt loại và kích thước kim cương để chuyển trước ước tính chuyển động.

subq số nguyên (mã hóa, video)
Đặt chất lượng ước tính chuyển động của sub pel.

dtg_active_format số nguyên
tôi_phạm vi số nguyên (mã hóa, video)
Đặt phạm vi vectơ chuyển động giới hạn (1023 cho trình phát DivX).

cò quăm số nguyên (mã hóa, video)
Đặt thiên vị lượng tử trong.

thiên vị số nguyên (mã hóa, video)
Đặt độ lệch liên lượng tử.

color_table_id số nguyên
global_chất lượng số nguyên (mã hóa, âm thanh, video)
lập trình viên số nguyên (mã hóa, video)
Những giá trị khả thi:

vlc coder độ dài thay đổi / coder huffman

ac người lập trình số học

nguyên thô (không có mã hóa)

vòng tròn lập trình viên thời gian chạy

xì hơi
người lập trình dựa trên giảm phát

bối cảnh số nguyên (mã hóa, video)
Đặt mô hình ngữ cảnh.

Slice_flags số nguyên
tăng tốc xvmc_acceleration số nguyên
mbd số nguyên (mã hóa, video)
Đặt thuật toán quyết định macroblock (chế độ chất lượng cao).

Những giá trị khả thi:

đơn giản
sử dụng mbcmp (mặc định)

bit
sử dụng ít bit nhất

rd sử dụng biến dạng tỷ lệ tốt nhất

luồng_codec_tag số nguyên
ngưỡng sc_threshold số nguyên (mã hóa, video)
Đặt ngưỡng thay đổi cảnh.

tôi số nguyên (mã hóa, video)
Đặt hệ số lagrange tối thiểu (VBR).

tối đa số nguyên (mã hóa, video)
Đặt hệ số lagrange tối đa (VBR).

nr số nguyên (mã hóa, video)
Đặt giảm tiếng ồn.

RC_init_occupancy số nguyên (mã hóa, video)
Đặt số lượng bit cần được tải vào bộ đệm rc trước khi bắt đầu giải mã.

cờ2 cờ (giải mã / mã hóa, âm thanh, video)
Những giá trị khả thi:

Rychle
Cho phép các thủ thuật tăng tốc không tuân thủ thông số kỹ thuật.

sàm sỡ
Không được dùng nữa, hãy sử dụng các tùy chọn riêng tư của mpegvideo.

buổi trưa
Bỏ qua mã hóa dòng bit.

bỏ qua
Bỏ qua thông tin cắt xén từ sp.

local_header
Đặt các tiêu đề chung ở mọi khung hình chính thay vì trong ngoại dữ liệu.

miếng, mảnh nhỏ
Dữ liệu khung có thể được chia thành nhiều phần.

hiển thị tất cả
Hiển thị tất cả các khung hình trước khung hình chính đầu tiên.

bỏ qua
Không được dùng nữa, hãy sử dụng các tùy chọn riêng tư của mpegvideo.

xuất_mvs
Xuất vectơ chuyển động thành dữ liệu bên khung (xem "AV_FRAME_DATA_MOTION_VECTORS")
cho codec hỗ trợ nó. Xem thêm doc / example / export_mvs.c.

lôi số nguyên (mã hóa, video)
qns số nguyên (mã hóa, video)
Không được dùng nữa, hãy sử dụng các tùy chọn riêng tư của mpegvideo.

chủ đề số nguyên (giải mã / mã hóa, video)
Những giá trị khả thi:

tự động
phát hiện một số lượng tốt các chủ đề

ngưỡng tôi số nguyên (mã hóa, video)
Đặt ngưỡng ước tính chuyển động.

mb_threshold số nguyên (mã hóa, video)
Đặt ngưỡng macroblock.

dc số nguyên (mã hóa, video)
Đặt intra_dc_pre precision.

nssew số nguyên (mã hóa, video)
Đặt trọng lượng nsse.

bỏ qua số nguyên (giải mã, video)
Đặt số lượng hàng macroblock ở trên cùng được bỏ qua.

bỏ qua_bottom số nguyên (giải mã, video)
Đặt số lượng hàng macroblock ở dưới cùng được bỏ qua.

Hồ sơ số nguyên (mã hóa, âm thanh, video)
Những giá trị khả thi:

không xác định
aac_main
aac_thấp
aac_ssr
aac_ltp
aac_he
aac_he_v2
aac_ld
aac_eld
mpeg2_aac_low
mpeg2_aac_he
mpeg4_sp
mpeg4_core
mpeg4_main
mpeg4_asp
dts
dts_es
dts_96_24
dts_hd_hra
dts_hd_ma
cấp số nguyên (mã hóa, âm thanh, video)
Những giá trị khả thi:

không xác định
hình quay chậm số nguyên (giải mã, âm thanh, video)
Giải mã ở độ phân giải 1 = 1/2, 2 = 1/4, 3 = 1/8.

bỏ qua số nguyên (mã hóa, video)
Đặt ngưỡng bỏ qua khung.

bỏ qua_ yếu tố số nguyên (mã hóa, video)
Đặt hệ số bỏ qua khung.

bỏ qua_exp số nguyên (mã hóa, video)
Đặt số mũ bỏ qua khung. Các giá trị âm hoạt động giống hệt với giá trị tương ứng
tích cực, ngoại trừ điểm được chuẩn hóa. Các giá trị tích cực tồn tại chủ yếu
vì lý do tương thích và không quá hữu ích.

bỏ qua số nguyên (mã hóa, video)
Đặt chức năng so sánh bỏ qua khung.

Những giá trị khả thi:

buồn tổng chênh lệch tuyệt đối, nhanh (mặc định)

sse tổng sai số bình phương

satd
tổng của sự khác biệt đã chuyển đổi Hadamard tuyệt đối

dct tổng của chênh lệch chuyển đổi DCT tuyệt đối

psnr
tổng các lỗi lượng tử hóa bình phương (tránh, chất lượng thấp)

bit số lượng bit cần thiết cho khối

rd tỷ lệ biến dạng tối ưu, chậm

không
0

vsad
tổng của sự khác biệt theo chiều dọc tuyệt đối

so sánh
tổng của sự khác biệt theo chiều dọc bình phương

nse
tiếng ồn bảo toàn tổng của sự khác biệt bình phương

w53 5/3 wavelet, chỉ sử dụng trong tuyết

w97 9/7 wavelet, chỉ sử dụng trong tuyết

dctmax
sắc độ
biên giới_mask phao (mã hóa, video)
Tăng bộ định lượng cho macroblock gần với đường viền.

mblmin số nguyên (mã hóa, video)
Đặt yếu tố lagrange macroblock tối thiểu (VBR).

mblmax số nguyên (mã hóa, video)
Đặt hệ số lagrange macroblock tối đa (VBR).

máy tính số nguyên (mã hóa, video)
Đặt bù phạt tốc độ bit ước tính chuyển động (1.0 = 256).

bỏ qua_loop_filter số nguyên (giải mã, video)
bỏ qua_idct số nguyên (giải mã, video)
via_frame số nguyên (giải mã, video)
Thực hiện xử lý loại bỏ bộ giải mã tùy thuộc vào loại khung được tùy chọn chọn
giá trị.

bỏ qua_loop_filter bỏ qua lọc vòng lặp khung, bỏ qua_idct bỏ qua khung
IDCT / dequantization, via_frame bỏ qua giải mã.

Những giá trị khả thi:

không ai
Loại bỏ không có khung.

mặc định
Loại bỏ các khung vô dụng như khung có kích thước 0.

noref
Bỏ tất cả các hệ không tham chiếu.

giá thầu
Loại bỏ tất cả các khung hai chiều.

không cần thiết
Loại bỏ tất cả các khung ngoại trừ khung chính.

tất cả các Bỏ tất cả các khung.

Giá trị mặc định là mặc định.

bidir_refine số nguyên (mã hóa, video)
Tinh chỉnh hai vectơ chuyển động được sử dụng trong macroblock hai chiều.

brd_scale số nguyên (mã hóa, video)
Giảm tỷ lệ khung cho quyết định khung B động.

keyint_min số nguyên (mã hóa, video)
Đặt khoảng thời gian tối thiểu giữa các khung IDR.

giới thiệu số nguyên (mã hóa, video)
Đặt hệ quy chiếu để xem xét bù chuyển động.

bù màu số nguyên (mã hóa, video)
Đặt bù sắc độ qp từ luma.

lưới mắt cáo số nguyên (mã hóa, âm thanh, video)
Đặt lượng tử hóa tối ưu tốc độ biến dạng.

sc_factor số nguyên (mã hóa, video)
Đặt giá trị nhân với qscale cho mỗi khung hình và thêm vào scene_change_score.

mv0_threshold số nguyên (mã hóa, video)
b_sens nhạy số nguyên (mã hóa, video)
Điều chỉnh độ nhạy của b_frame_strategy 1.

nén_level số nguyên (mã hóa, âm thanh, video)
min_prediction_order số nguyên (mã hóa, âm thanh)
max_prediction_order số nguyên (mã hóa, âm thanh)
timecode_frame_start số nguyên (mã hóa, video)
Đặt số bắt đầu khung mã thời gian GOP, ở định dạng không thả khung.

request_channels số nguyên (giải mã, âm thanh)
Đặt số lượng kênh âm thanh mong muốn.

bit_per_raw_sample số nguyên
kênh_layout số nguyên (giải mã / mã hóa, âm thanh)
Những giá trị khả thi:

request_channel_layout số nguyên (giải mã, âm thanh)
Những giá trị khả thi:

rc_max_vbv_use phao (mã hóa, video)
RC_min_vbv_use phao (mã hóa, video)
tick_per_frame số nguyên (giải mã / mã hóa, âm thanh, video)
màu_sơ bộ số nguyên (giải mã / mã hóa, video)
màu_trc số nguyên (giải mã / mã hóa, video)
không gian màu số nguyên (giải mã / mã hóa, video)
dải màu số nguyên (giải mã / mã hóa, video)
Nếu được sử dụng làm tham số đầu vào, nó đóng vai trò như một gợi ý cho bộ giải mã, color_range
đầu vào có.

sắc độ_sample_location số nguyên (giải mã / mã hóa, video)
log_level_offset số nguyên
Đặt độ lệch mức nhật ký.

lát số nguyên (mã hóa, video)
Số lát cắt, được sử dụng trong mã hóa song song.

Loại sợi cờ (giải mã / mã hóa, video)
Chọn các phương pháp đa luồng để sử dụng.

sử dụng khung sẽ tăng độ trễ giải mã lên một khung hình trên mỗi luồng, vì vậy các ứng dụng khách
không thể cung cấp khung trong tương lai không nên sử dụng nó.

Những giá trị khả thi:

lát
Giải mã nhiều phần của một khung hình cùng một lúc.

Đa luồng sử dụng các lát chỉ hoạt động khi video được mã hóa bằng các lát.

khung
Giải mã nhiều khung cùng một lúc.

Giá trị mặc định là lát + khung.

audio_service_type số nguyên (mã hóa, âm thanh)
Đặt loại dịch vụ âm thanh.

Những giá trị khả thi:

ma Dịch vụ âm thanh chính

ef Effects

vi Khiếm thị

hi Khiếm thính

di Đối thoại

co Bình luận

em Trường hợp khẩn cấp

vo Voice Over

ka Karaoke

request_sample_fmt mẫu_fmt (giải mã, âm thanh)
Đặt bộ giải mã âm thanh định dạng mẫu nên thích hơn. Giá trị mặc định là "không".

pkt_timebase hợp lý con số
sub_charenc mã hóa (giải mã, phụ đề)
Đặt mã hóa ký tự phụ đề đầu vào.

trường_thứ tự trường_thứ tự (video)
Đặt / ghi đè thứ tự trường của video. Những giá trị khả thi:

tiến bộ
Video tiến bộ

tt Video xen kẽ, trường trên cùng được mã hóa và hiển thị đầu tiên

bb Video xen kẽ, trường dưới cùng được mã hóa và hiển thị đầu tiên

tb Video xen kẽ, trên cùng được mã hóa trước, dưới cùng hiển thị trước

bt Video xen kẽ, dưới cùng được mã hóa trước, trên cùng hiển thị trước

bỏ qua số nguyên (giải mã, video)
Đặt thành 1 để tắt alpha xử lý (độ trong suốt). Điều này hoạt động giống như màu xám cờ trong
các cờ tùy chọn bỏ qua thông tin về sắc độ thay vì alpha. Mặc định là 0.

codec_danh sách trắng (đầu vào)
"," phân tách Danh sách các bộ giải mã được phép. Theo mặc định, tất cả đều được phép.

dump_separator chuỗi (đầu vào)
Dấu phân tách được sử dụng để phân tách các trường được in trên dòng lệnh về Luồng
thông số. Ví dụ để phân tách các trường bằng dòng mới và thụt lề:

ffprobe -dump_separator "
" -tôi ~ / videos / matrixbench_mpeg2.mpg

NGƯỜI GỬI HÀNG


Bộ giải mã là các phần tử được cấu hình trong FFmpeg cho phép giải mã các luồng đa phương tiện.

Khi bạn định cấu hình bản dựng FFmpeg của mình, tất cả các bộ giải mã gốc được hỗ trợ sẽ được bật bởi
vỡ nợ. Bộ giải mã yêu cầu thư viện bên ngoài phải được kích hoạt theo cách thủ công thông qua
tùy chọn "--enable-lib" tương ứng. Bạn có thể liệt kê tất cả các bộ giải mã có sẵn bằng cách sử dụng
cấu hình tùy chọn "--list-decoders".

Bạn có thể tắt tất cả các bộ giải mã bằng tùy chọn cấu hình "--disable-decoders" và
bật / tắt có chọn lọc các bộ giải mã đơn với các tùy chọn "--enable-decoder =NGƯỜI GỬI " /
"--disable-decoder =NGƯỜI GỬI ".

Tùy chọn "-decoders" của các công cụ ff * sẽ hiển thị danh sách các bộ giải mã được bật.

Thêm bài này vào danh sách Video của bạn Download bài này NGƯỜI GỬI HÀNG


Sau đây là mô tả về một số bộ giải mã video hiện có.

hevc
Bộ giải mã HEVC / H.265.

Lưu ý: bỏ qua_loop_filter tùy chọn chỉ có hiệu lực ở cấp độ "tất cả".

video thô
Bộ giải mã video thô.

Bộ giải mã này giải mã các luồng video thô.

Các lựa chọn

hàng đầu top_field_first
Chỉ định loại trường giả định của video đầu vào.

-1 video được giả định là tiến bộ (mặc định)

0 trường dưới cùng đầu tiên được giả định

1 top-field-đầu tiên được giả định

AUDIO NGƯỜI GỬI HÀNG


Sau đây là mô tả về một số bộ giải mã âm thanh hiện có.

ac3
Bộ giải mã âm thanh AC-3.

Bộ giải mã này thực hiện một phần của ATSC A / 52: 2010 và ETSI TS 102 366, cũng như
RealAudio 3 không có giấy tờ (hay còn gọi là dnet).

AC-3 decoder Các lựa chọn

-drc_scale giá trị
Hệ số quy mô dải động. Yếu tố áp dụng cho các giá trị dải động từ AC-3
dòng. Yếu tố này được áp dụng theo cấp số nhân. Có 3 yếu tố quy mô đáng chú ý
các dãy:

drc_scale == 0
DRC bị vô hiệu hóa. Tạo ra âm thanh toàn dải.

0 < drc_scale <= 1
DRC đã được bật. Áp dụng một phần nhỏ của giá trị DRC của luồng. Tái tạo âm thanh là
giữa dải đầy đủ và nén đầy đủ.

drc_scale > 1
DRC đã được bật. Áp dụng drc_scale không đối xứng. Âm thanh lớn được nén hoàn toàn.
Âm thanh nhẹ nhàng được tăng cường.

flac
Bộ giải mã âm thanh FLAC.

Bộ giải mã này nhằm thực hiện đặc tả FLAC hoàn chỉnh từ Xiph.

FLAC decoder lựa chọn

-use_buggy_lpc
Bộ mã hóa lavc FLAC được sử dụng để tạo ra các luồng lỗi có giá trị lpc cao (như
giá trị mặc định). Tùy chọn này giúp bạn có thể giải mã các luồng như vậy một cách chính xác bằng cách
sử dụng logic lpc lỗi cũ của lavc để giải mã.

ffwavesynth
Bộ tổng hợp sóng bên trong.

Bộ giải mã này tạo ra các mẫu sóng theo các trình tự được xác định trước. Việc sử dụng nó hoàn toàn là
nội bộ và định dạng dữ liệu mà nó chấp nhận không được ghi lại công khai.

nói dối
trình bao bọc bộ giải mã libcelt.

libcelt cho phép libavcodec giải mã codec âm thanh có độ trễ cực thấp Xiph CELT. Đòi hỏi
sự hiện diện của các tiêu đề và thư viện libcelt trong quá trình cấu hình. Bạn cần phải
định cấu hình rõ ràng bản dựng với "--enable-libcelt".

thư viện
trình bao bọc bộ giải mã libgsm.

libgsm cho phép libavcodec giải mã codec âm thanh tốc độ đầy đủ GSM. Yêu cầu sự hiện diện của
các tiêu đề và thư viện libgsm trong quá trình cấu hình. Bạn cần định cấu hình rõ ràng
xây dựng bằng "--enable-libgsm".

Bộ giải mã này hỗ trợ cả GSM thông thường và biến thể của Microsoft.

libilbc
trình bao bọc bộ giải mã libilbc.

libilbc cho phép libavcodec giải mã codec âm thanh Internet Low Bitrate Codec (iLBC).
Yêu cầu sự hiện diện của các tiêu đề và thư viện libilbc trong quá trình cấu hình. Bạn cần phải
định cấu hình rõ ràng bản dựng với "--enable-libilbc".

Các lựa chọn

Tùy chọn sau được hỗ trợ bởi trình bao bọc libilbc.

nâng cao
Bật tính năng nâng cao âm thanh được giải mã khi được đặt thành 1. Giá trị mặc định là 0
(tàn tật).

libopencore-amrnb
trình bao bọc bộ giải mã libopencore-amrnb.

libopencore-amrnb cho phép libavcodec giải mã âm thanh Băng hẹp đa tốc độ thích ứng
codec. Việc sử dụng nó yêu cầu sự hiện diện của các tiêu đề và thư viện libopencore-amrnb trong
cấu hình. Bạn cần định cấu hình rõ ràng bản dựng với
"--enable-libopencore-amrnb".

Có một bộ giải mã gốc FFmpeg cho AMR-NB, vì vậy người dùng có thể giải mã AMR-NB mà không cần
thư viện.

libopencore-amrwb
trình bao bọc bộ giải mã libopencore-amrwb.

libopencore-amrwb cho phép libavcodec giải mã âm thanh băng rộng đa tỷ lệ thích ứng
codec. Sử dụng nó yêu cầu sự hiện diện của tiêu đề và thư viện libopencore-amrwb trong
cấu hình. Bạn cần định cấu hình rõ ràng bản dựng với
"--enable-libopencore-amrwb".

Có một bộ giải mã gốc FFmpeg cho AMR-WB, vì vậy người dùng có thể giải mã AMR-WB mà không cần điều này
thư viện.

cây libop
trình bao bọc bộ giải mã libopus.

libopus cho phép libavcodec giải mã Bộ mã âm thanh tương tác Opus. Yêu cầu
sự hiện diện của các tiêu đề và thư viện libopus trong quá trình cấu hình. Bạn cần phải rõ ràng
định cấu hình bản dựng bằng "--enable-libopus".

Có một bộ giải mã gốc FFmpeg cho Opus, vì vậy người dùng có thể giải mã Opus mà không cần thư viện này.

TIỂU TIỂU NGƯỜI GỬI HÀNG


dvbsub
Các lựa chọn

tính_clut
-1 Tính toán ly hợp nếu không có CLUT phù hợp trong luồng.

0 Không bao giờ tính CLUT

1 Luôn tính CLUT và ghi đè CLUT được cung cấp trong luồng.

dvb_substream
Chọn luồng phụ dvb hoặc tất cả các luồng phụ nếu -1 là mặc định.

dvdsub
Codec này giải mã phụ đề bitmap được sử dụng trong DVD; phụ đề tương tự cũng có thể được tìm thấy
trong các cặp tệp VobSub và trong một số tệp Matroska.

Các lựa chọn

palette
Chỉ định bảng màu chung được sử dụng bởi các bitmap. Khi được lưu trữ trong VobSub, bảng màu
thường được chỉ định trong tệp chỉ mục; trong Matroska, bảng màu được lưu trữ trong codec
dữ liệu bổ sung ở định dạng giống như trong VobSub. Trong DVD, bảng màu được lưu trữ trong IFO
và do đó không khả dụng khi đọc từ các tệp VOB được kết xuất.

Định dạng cho tùy chọn này là một chuỗi chứa 16 số thập lục phân 24 bit
(không có tiền tố 0x) được phân tách bằng dấu phẩy, ví dụ: "0d00ee, ee450d, 101010, eaeaea,
0ce60b, ec14ed, ebff0b, 0d617a, 7b7b7b, d1d1d1, 7b2a0e, 0d950c, 0f007b, cf0dec,
cfa80c, 7c127b ".

ifo_palette
Chỉ định tệp IFO mà từ đó có được bảng màu chung. (thực nghiệm)

buộc_mặt_chỉ
Chỉ giải mã các mục phụ đề được đánh dấu là bị ép buộc. Một số tiêu đề có bắt buộc và không bắt buộc
phụ đề trong cùng một bản nhạc. Đặt cờ này thành 1 sẽ chỉ giữ cho sự bắt buộc
phụ đề. Giá trị mặc định là 0.

libzvbi-teletext
Libzvbi cho phép libavcodec giải mã các trang DVB teletext và phụ đề DVB teletext.
Yêu cầu sự hiện diện của tiêu đề và thư viện libzvbi trong quá trình cấu hình. Bạn cần phải
định cấu hình rõ ràng bản dựng bằng "--enable-libzvbi".

Các lựa chọn

txt_trang
Danh sách số trang teletext cần giải mã. Bạn có thể sử dụng chuỗi * đặc biệt để khớp với tất cả
các trang. Các trang không phù hợp với danh sách được chỉ định sẽ bị loại bỏ. Giá trị mặc định là *.

txt_chop_top
Bỏ dòng teletext trên cùng. Giá trị mặc định là 1.

txt_format
Chỉ định định dạng của phụ đề được giải mã. Bộ giải mã teletext có khả năng
giải mã các trang teletext thành bitmap hoặc văn bản đơn giản, bạn nên sử dụng "bitmap" cho
các trang teletext, bởi vì một số hình ảnh và màu sắc nhất định không thể được thể hiện đơn giản
chữ. Bạn có thể sử dụng "văn bản" cho phụ đề dựa trên teletext nếu ứng dụng của bạn có thể xử lý
phụ đề dựa trên văn bản đơn giản. Giá trị mặc định là bitmap.

txt_left
X offset của bitmap được tạo, mặc định là 0.

txt_top
Độ lệch Y của các bitmap được tạo, mặc định là 0.

txt_chop_spaces
Cắt các khoảng trống ở đầu và cuối và xóa các dòng trống khỏi văn bản đã tạo.
Tùy chọn này hữu ích cho phụ đề dựa trên teletext nơi có thể có khoảng trống
ở đầu hoặc cuối dòng hoặc các dòng trống có thể xuất hiện giữa
dòng phụ đề vì các đặc điểm của văn bản viễn thông có kích thước gấp đôi. Giá trị mặc định là 1.

txt_duration
Đặt thời lượng hiển thị của các trang hoặc phụ đề teletext được giải mã tính bằng mili giây.
Giá trị mặc định là 30000 là 30 giây.

txt_transparent
Buộc nền trong suốt của bitmap teletext đã tạo. Giá trị mặc định là 0
có nghĩa là nền mờ đục (đen).

DÒNG BIT LỌC


Khi bạn định cấu hình bản dựng FFmpeg của mình, tất cả các bộ lọc dòng bit được hỗ trợ sẽ được bật bởi
vỡ nợ. Bạn có thể liệt kê tất cả những cái có sẵn bằng cách sử dụng tùy chọn cấu hình "--list-bsfs".

Bạn có thể tắt tất cả các bộ lọc dòng bit bằng cách sử dụng tùy chọn cấu hình "--disable-bsfs" và
bật chọn lọc bất kỳ bộ lọc dòng bit nào bằng cách sử dụng tùy chọn "--enable-bsf = BSF", hoặc bạn có thể
tắt một bộ lọc dòng bit cụ thể bằng cách sử dụng tùy chọn "--disable-bsf = BSF".

Tùy chọn "-bsfs" của các công cụ ff * sẽ hiển thị danh sách tất cả các dòng bit được hỗ trợ
bộ lọc có trong bản dựng của bạn.

Các công cụ ff * có tùy chọn -bsf được áp dụng cho mỗi luồng, lấy một danh sách được phân tách bằng dấu phẩy
bộ lọc, có các tham số theo tên bộ lọc sau dấu '='.

ffmpeg -i INPUT -c: v copy -bsf: v filter1 [= opt1 = str1 / opt2 = str2] [, filter2] OUTPUT

Dưới đây là mô tả về các bộ lọc dòng bit hiện có, với
các tham số, nếu có.

aac_adtstoasc
Chuyển đổi MPEG-2/4 AAC ADTS sang bộ lọc dòng bit Cấu hình âm thanh cụ thể MPEG-4.

Bộ lọc này tạo MPEG-4 AudioSpecificConfig từ tiêu đề MPEG-2/4 ADTS và loại bỏ
tiêu đề ADTS.

Điều này là bắt buộc, chẳng hạn khi sao chép một luồng AAC từ một vùng chứa ADTS AAC thô sang một
FLV hoặc tệp MOV / MP4.

nhai
Loại bỏ không đệm ở cuối gói.

dump_extra
Thêm dữ liệu bổ sung vào đầu các gói đã lọc.

Đối số bổ sung chỉ định gói nào nên được lọc. Nó chấp nhận
các giá trị:

a thêm dữ liệu bổ sung vào tất cả các gói chính, nhưng chỉ khi local_header được thiết lập trong cờ2 giải mã
trường ngữ cảnh

k thêm dữ liệu bổ sung vào tất cả các gói chính

e thêm dữ liệu bổ sung vào tất cả các gói

Nếu không được chỉ định thì nó được giả định là k.

Ví dụ như sau ffmpeg lệnh buộc một tiêu đề chung (do đó vô hiệu hóa từng
tiêu đề gói) trong các gói H.264 do bộ mã hóa "libx264" tạo ra, nhưng sửa chúng
bằng cách thêm tiêu đề được lưu trữ trong ngoại dữ liệu vào các gói khóa:

ffmpeg -i INPUT -map 0 -flags: v + global_header -c: v libx264 -bsf: v dump_extra out.ts

h264_mp4toannexb
Chuyển đổi dòng bit H.264 từ chế độ tiền tố độ dài sang chế độ bắt đầu mã tiền tố (như
được định nghĩa trong Phụ lục B của thông số kỹ thuật ITU-T H.264).

Điều này được yêu cầu bởi một số định dạng phát trực tuyến, thường là định dạng luồng truyền tải MPEG-2
("mpegts").

Ví dụ: chuyển đổi tệp MP4 có chứa luồng H.264 sang định dạng mpegts với ffmpeg,
bạn có thể sử dụng lệnh:

ffmpeg -i INPUT.mp4 -codec copy -bsf: v h264_mp4toannexb OUTPUT.ts

imxdump
Sửa đổi dòng bit để phù hợp với MOV và có thể sử dụng được bởi bộ giải mã Final Cut Pro. Cái này
bộ lọc chỉ áp dụng cho codec mpeg2video và có thể không cần thiết cho Final Cut Pro 7
và mới hơn với -tag: v.

Ví dụ: để chuyển đổi NTSC IMX 30 MB / giây sang MOV:

ffmpeg -i input.mxf -c copy -bsf: v imxdump -tag: v mx3n output.mov

mjpeg2jpeg
Chuyển đổi các gói MJPEG / AVI1 thành các gói JPEG / JFIF đầy đủ.

MJPEG là một codec video trong đó mỗi khung hình video về cơ bản là một hình ảnh JPEG. Các
các khung riêng lẻ có thể được trích xuất mà không bị mất, ví dụ như bằng cách

ffmpeg -i ../some_mjpeg.avi -c: v sao chép khung_% d.jpg

Thật không may, những phần này là hình ảnh JPEG không hoàn chỉnh, vì chúng thiếu phân đoạn DHT
cần thiết để giải mã. Trích dẫn từ
<http://www.digitalpreservation.gov/formats/fdd/fdd000063.shtml>:

Avery Lee, viết trong nhóm tin rec.video.desktop vào năm 2001, nhận xét rằng "MJPEG, hoặc
ít nhất MJPEG trong AVI có MJPG bốncc, bị hạn chế JPEG với một cố định - và
* bỏ qua * - Bảng Huffman. JPEG phải là không gian màu YCbCr, nó phải là 4: 2: 2 và nó
phải sử dụng mã hóa Huffman cơ bản, không phải số học hoặc lũy tiến. . . . Bạn thực sự có thể
trích xuất các khung MJPEG và giải mã chúng bằng bộ giải mã JPEG thông thường, nhưng bạn phải
thêm đoạn DHT cho chúng, nếu không bộ giải mã sẽ không biết cách giải nén
dữ liệu. Bảng chính xác cần thiết được cung cấp trong thông số kỹ thuật OpenDML. "

Bộ lọc dòng bit này vá phần đầu của các khung được trích xuất từ ​​luồng MJPEG
(mang ID tiêu đề AVI1 và thiếu phân đoạn DHT) để tạo JPEG đủ điều kiện
hình ảnh.

ffmpeg -i mjpeg-movie.avi -c: v copy -bsf: v mjpeg2jpeg frame_% d.jpg
khung exiftran -i -9 * .jpg
ffmpeg -i frame_% d.jpg -c: v copy rotated.avi

mjpega_dump_header
phim phụ
mp3_header_decompress
mpeg4_unpack_bframes
Giải nén khung B đóng gói theo phong cách DivX.

Khung B đóng gói theo kiểu DivX không phải là MPEG-4 hợp lệ và chỉ là một giải pháp thay thế cho lỗi bị hỏng
Video dành cho hệ thống con của Windows. Chúng sử dụng nhiều dung lượng hơn, có thể gây ra các vấn đề nhỏ về đồng bộ hóa AV, yêu cầu
nhiều sức mạnh CPU hơn để giải mã (trừ khi người chơi có một số hàng đợi hình ảnh được giải mã để bù đắp
2,0,2,0 khung cho mỗi kiểu gói) và gây ra rắc rối nếu được sao chép vào một vùng chứa tiêu chuẩn
như mp4 hoặc mpeg-ps / ts, vì bộ giải mã MPEG-4 có thể không giải mã được chúng, vì chúng
không phải là MPEG-4 hợp lệ.

Ví dụ: sửa tệp AVI chứa luồng MPEG-4 với khung B đóng gói kiểu DivX
sử dụng ffmpeg, bạn có thể sử dụng lệnh:

ffmpeg -i INPUT.avi -codec copy -bsf: v mpeg4_unpack_bframes OUTPUT.avi

tiếng ồn
Làm hỏng nội dung của gói mà không làm hỏng hộp chứa. Có thể được sử dụng để làm mờ hoặc
kiểm tra khả năng phục hồi / che giấu lỗi.

Tham số: Một chuỗi số, có giá trị liên quan đến tần suất các byte đầu ra sẽ là
đã sửa đổi. Do đó, các giá trị nhỏ hơn hoặc bằng 0 bị cấm và càng thấp thì càng
byte thường xuyên sẽ được sửa đổi, với 1 nghĩa là mỗi byte đều được sửa đổi.

ffmpeg -i INPUT -c copy -bsf noise [= 1] output.mkv

áp dụng sửa đổi cho mỗi byte.

xóa_thêm

FORMAT LỰA CHỌN


Thư viện libavformat cung cấp một số tùy chọn chung chung, có thể được đặt trên tất cả các
muxers và demuxers. Ngoài ra, mỗi muxer hoặc demuxer có thể hỗ trợ cái gọi là riêng tư
tùy chọn cụ thể cho thành phần đó.

Các tùy chọn có thể được thiết lập bằng cách chỉ định -tùy chọn giá trị trong các công cụ FFmpeg hoặc bằng cách thiết lập
giá trị rõ ràng trong các tùy chọn "AVFormatContext" hoặc sử dụng libavutil / opt.h API cho
sử dụng có lập trình.

Danh sách các tùy chọn được hỗ trợ như sau:

avioflags cờ (đầu ra đầu vào)
Những giá trị khả thi:

trực tiếp
Giảm bộ đệm.

thăm dò số nguyên (đầu vào)
Đặt kích thước thăm dò theo byte, tức là kích thước dữ liệu cần phân tích để nhận luồng
thông tin. Giá trị cao hơn sẽ cho phép phát hiện nhiều thông tin hơn trong trường hợp
phân tán vào luồng, nhưng sẽ làm tăng độ trễ. Phải là một số nguyên không nhỏ hơn
hơn 32. Nó là 5000000 theo mặc định.

gói tin số nguyên (đầu ra)
Đặt kích thước gói.

lá cờ cờ (đầu ra đầu vào)
Đặt cờ định dạng.

Những giá trị khả thi:

đánh lửa
Bỏ qua chỉ mục.

tìm nhanh
Cho phép tìm kiếm nhanh nhưng không chính xác cho một số định dạng.

quý tộc
Tạo PTS.

nofillin
Không điền vào các giá trị còn thiếu có thể được tính toán chính xác.

không phân biệt
Tắt AVParsers, điều này cũng cần "+ nofillin".

đánh lửa
Bỏ qua DTS.

hủy hoại
Loại bỏ các khung bị hỏng.

sắp xếp
Cố gắng xen kẽ các gói đầu ra bằng DTS.

canh giữ
Không hợp nhất dữ liệu bên.

vĩ độ
Bật tải trọng RTP MP4A-LATM.

không đệm
Giảm độ trễ do lưu vào bộ đệm tùy chọn

cắnxact
Chỉ viết dữ liệu nền tảng, xây dựng và độc lập về thời gian. Điều này đảm bảo rằng tệp
và tổng kiểm tra dữ liệu có thể tái tạo và khớp giữa các nền tảng. Công dụng chính của nó
là để kiểm tra hồi quy.

tìm kiếm2any số nguyên (đầu vào)
Cho phép tìm kiếm những khung hình không phải chính ở cấp demuxer khi được hỗ trợ nếu được đặt thành 1. Mặc định
là 0.

sự phân tích số nguyên (đầu vào)
Chỉ định bao nhiêu micro giây được phân tích để thăm dò đầu vào. Giá trị cao hơn sẽ
cho phép phát hiện thông tin chính xác hơn, nhưng sẽ làm tăng độ trễ. Nó mặc định là
5,000,000 micro giây = 5 giây.

tiền điện tử thập lục phân chuỗi (đầu vào)
Đặt khóa giải mã.

chỉ mục số nguyên (đầu vào)
Đặt bộ nhớ tối đa được sử dụng cho chỉ mục dấu thời gian (mỗi luồng).

rtbufsize số nguyên (đầu vào)
Đặt bộ nhớ tối đa được sử dụng để lưu vào bộ đệm các khung thời gian thực.

fdebug cờ (đầu ra đầu vào)
In thông tin gỡ lỗi cụ thể.

Những giá trị khả thi:

ts
độ trễ tối đa số nguyên (đầu ra đầu vào)
Đặt độ trễ trộn hoặc giảm luồng tối đa tính bằng micro giây.

thăm dò khung hình/giây số nguyên (đầu vào)
Đặt số khung hình được sử dụng để thăm dò fps.

âm thanh_preload số nguyên (đầu ra)
Đặt micro giây mà các gói âm thanh sẽ được xen kẽ trước đó.

chunk_duration số nguyên (đầu ra)
Đặt micro giây cho mỗi đoạn.

chunk_size số nguyên (đầu ra)
Đặt kích thước theo byte cho mỗi đoạn.

phát hiện lỗi, f_err_ detect cờ (đầu vào)
Đặt cờ phát hiện lỗi. "f_err_detect" không được dùng nữa và chỉ nên được sử dụng qua
các ffmpeg công cụ.

Những giá trị khả thi:

kiểm tra kỹ càng
Xác minh các CRC được nhúng.

dòng bit
Phát hiện độ lệch đặc điểm kỹ thuật dòng bit.

đệm
Phát hiện độ dài dòng bit không phù hợp.

phát nổ
Hủy giải mã khi phát hiện lỗi nhỏ.

cẩn thận
Hãy xem xét những thứ vi phạm thông số kỹ thuật và chưa được nhìn thấy trong tự nhiên như
lỗi.

compliant
Hãy coi tất cả các thông số kỹ thuật không tuân thủ là lỗi.

tích cực
Hãy xem xét những thứ mà một bộ mã hóa lành mạnh không nên làm như một lỗi.

max_interleave_delta số nguyên (đầu ra)
Đặt thời lượng đệm tối đa để xen kẽ. Thời lượng được biểu thị bằng
micro giây và mặc định là 1000000 (1 giây).

Để đảm bảo tất cả các luồng được xen kẽ một cách chính xác, libavformat sẽ đợi cho đến khi
có ít nhất một gói cho mỗi luồng trước khi thực sự ghi bất kỳ gói nào vào
tệp đầu ra. Khi một số luồng "thưa thớt" (tức là có khoảng cách lớn giữa
các gói liên tiếp), điều này có thể dẫn đến bộ đệm quá mức.

Trường này chỉ định sự khác biệt lớn nhất giữa dấu thời gian của dấu thời gian đầu tiên và
gói cuối cùng trong hàng đợi muxing, trên đó libavformat sẽ xuất ra một gói
bất kể nó đã xếp hàng đợi một gói cho tất cả các luồng hay chưa.

Nếu được đặt thành 0, libavformat sẽ tiếp tục lưu vào bộ đệm các gói cho đến khi nó có một gói cho
mỗi luồng, bất kể chênh lệch dấu thời gian tối đa giữa các vùng được lưu vào bộ đệm
gói tin.

use_wallclock_as_timestamps số nguyên (đầu vào)
Sử dụng đồng hồ treo tường làm dấu thời gian.

tránh_negative_ts số nguyên (đầu ra)
Những giá trị khả thi:

make_non_âm
Thay đổi dấu thời gian để làm cho chúng không âm. Cũng lưu ý rằng điều này chỉ ảnh hưởng đến
dấu thời gian phủ định dẫn đầu và không phải dấu thời gian âm không đơn điệu.

make_zero
Chuyển dấu thời gian để dấu thời gian đầu tiên bằng 0.

tự động (Default)
Cho phép chuyển đổi khi định dạng đích yêu cầu.

bị vô hiệu hóa
Tắt chuyển dấu thời gian.

Khi bật tính năng dịch chuyển, tất cả các dấu thời gian đầu ra đều được dịch chuyển cùng một lượng. Âm thanh,
video và phân tách phụ đề và sự khác biệt tương đối về dấu thời gian được giữ nguyên
so với cách họ sẽ có được nếu không có sự thay đổi.

bỏ qua_initial_bytes số nguyên (đầu vào)
Đặt số byte cần bỏ qua trước khi đọc tiêu đề và khung nếu được đặt thành 1. Mặc định là
0.

đúng_ts_overflow số nguyên (đầu vào)
Sửa lỗi tràn dấu thời gian đơn lẻ nếu được đặt thành 1. Mặc định là 1.

tuôn ra_gói số nguyên (đầu ra)
Xả luồng I / O bên dưới sau mỗi gói. Mặc định 1 cho phép nó và có
hiệu quả của việc giảm độ trễ; 0 vô hiệu hóa nó và có thể tăng một chút hiệu suất trong
một số trường hợp.

đầu ra_ts_offset bù đắp (đầu ra)
Đặt độ lệch thời gian đầu ra.

bù đắp phải là một đặc điểm kỹ thuật về khoảng thời gian, hãy xem các Thời gian thời gian phần in các
ffmpeg-utils(1) nhãn hiệu.

Phần bù được bộ trộn thêm vào dấu thời gian đầu ra.

Chỉ định một độ lệch dương có nghĩa là các luồng tương ứng bị trì hoãn bởi
khoảng thời gian được chỉ định trong bù đắp. Giá trị mặc định là 0 (có nghĩa là không có bù đắp
đã áp dụng).

định dạng_danh sách trắng (đầu vào)
"," được phân tách Danh sách các demuxer được phép. Theo mặc định, tất cả đều được phép.

dump_separator chuỗi (đầu vào)
Dấu phân tách được sử dụng để phân tách các trường được in trên dòng lệnh về Luồng
thông số. Ví dụ để phân tách các trường bằng dòng mới và thụt lề:

ffprobe -dump_separator "
" -tôi ~ / videos / matrixbench_mpeg2.mpg

Định dạng dòng chuyên gia
Định dạng chỉ định luồng cho phép lựa chọn một hoặc nhiều luồng phù hợp với các luồng cụ thể
tài sản.

Các dạng chỉ định luồng có thể có là:

luồng_index
Đối sánh luồng với chỉ mục này.

luồng_type[:luồng_index]
luồng_type là một trong các loại sau: 'v' cho video, 'a' cho âm thanh, 's' cho phụ đề, 'd'
cho dữ liệu và 't' cho tệp đính kèm. Nếu như luồng_index được đưa ra, sau đó nó khớp với
số luồng luồng_index thuộc loại này. Nếu không, nó khớp với tất cả các luồng này
kiểu.

p:chương trình_id[:luồng_index]
If luồng_index được đưa ra, sau đó nó khớp với luồng với số luồng_index trong
chương trình với id chương trình_id. Nếu không, nó khớp với tất cả các luồng trong chương trình.

#luồng_id
Khớp luồng theo ID định dạng cụ thể.

Ngữ nghĩa chính xác của các từ chỉ định luồng được xác định bởi
Hàm "avformat_match_stream_specifier ()" được khai báo trong libavformat / avformat.h
tiêu đề.

NHÂN VIÊN


Demuxers là các phần tử được cấu hình trong FFmpeg có thể đọc các luồng đa phương tiện từ một
loại tệp cụ thể.

Khi bạn định cấu hình bản dựng FFmpeg của mình, tất cả các demuxer được hỗ trợ đều được bật theo mặc định.
Bạn có thể liệt kê tất cả những cái có sẵn bằng cách sử dụng tùy chọn cấu hình "--list-demuxers".

Bạn có thể vô hiệu hóa tất cả các demuxer bằng cách sử dụng tùy chọn cấu hình "--disable-demuxers", và
kích hoạt một cách chọn lọc một demuxer duy nhất với tùy chọn "--enable-demuxer =DEMUXER "hoặc vô hiệu hóa
nó với tùy chọn "--disable-demuxer =DEMUXER ".

Tùy chọn "-formats" của các công cụ ff * sẽ hiển thị danh sách các demuxer được bật.

Sau đây là mô tả về một số demuxer hiện có sẵn.

aa
Định dạng Audible 2, 3 và 4 demuxer.

Demuxer này được sử dụng để tách các tệp định dạng Audible 2, 3 và 4 (.aa).

quả táo http
Trình demuxer phát trực tiếp HTTP của Apple.

Demuxer này trình bày tất cả các AVStream từ tất cả các luồng biến thể. Trường id được đặt thành
số chỉ số biến thể tốc độ bit. Bằng cách đặt cờ loại bỏ trên AVStreams (bằng cách nhấn 'a'
hoặc 'v' trong ffplay), người gọi có thể quyết định luồng biến thể nào sẽ thực sự nhận được. Các
tổng tốc độ bit của biến thể mà luồng thuộc về có sẵn trong khóa siêu dữ liệu
được đặt tên là "variant_bitrate".

apng
Demuxer đồ họa mạng di động hoạt hình.

Demuxer này được sử dụng để tách các tệp APNG. Tất cả các tiêu đề, trừ chữ ký PNG, cho đến (nhưng
không bao gồm) đoạn fcTL đầu tiên được truyền dưới dạng dữ liệu bổ sung. Các khung hình sau đó được chia nhỏ
như là tất cả các phần giữa hai fcTL hoặc giữa các phần cuối cùng của fcTL và IEND.

-ignore_loop bool
Bỏ qua biến vòng lặp trong tệp nếu được đặt.

-max_fps int
Tốc độ khung hình tối đa trong khung hình trên giây (0 cho không giới hạn).

-default_fps int
Tốc độ khung hình mặc định tính theo khung hình / giây khi không có gì được chỉ định trong tệp (0 nghĩa là
nhanh nhất có thể).

asf
Trình giải mã định dạng hệ thống nâng cao.

Demuxer này được sử dụng để tách các tệp ASF và các luồng mạng MMS.

-no_resync_search bool
Đừng cố gắng đồng bộ hóa lại bằng cách tìm kiếm một mã bắt đầu tùy chọn nhất định.

concat
Trình demuxer tập lệnh nối ảo.

Trình demuxer này đọc danh sách các tệp và các lệnh khác từ tệp văn bản và giải mã chúng
cái này đến cái khác, như thể tất cả gói tin của họ đã được trộn với nhau.

Dấu thời gian trong tệp được điều chỉnh để tệp đầu tiên bắt đầu từ 0 và mỗi tệp tiếp theo
tệp bắt đầu khi tệp trước đó kết thúc. Lưu ý rằng nó được thực hiện trên toàn cầu và có thể gây ra
khoảng trống nếu tất cả các luồng không có cùng độ dài chính xác.

Tất cả các tệp phải có cùng luồng (cùng codec, cùng cơ sở thời gian, v.v.).

Thời lượng của mỗi tệp được sử dụng để điều chỉnh dấu thời gian của tệp tiếp theo: nếu
thời lượng không chính xác (vì nó được tính bằng tốc độ bit hoặc vì tệp
chẳng hạn như bị cắt ngắn), nó có thể gây ra hiện tượng tạo tác. Chỉ thị "thời lượng" có thể được sử dụng để
ghi đè thời lượng được lưu trữ trong mỗi tệp.

cú pháp

Tập lệnh là một tệp văn bản trong ASCII mở rộng, với một chỉ thị trên mỗi dòng. Dòng trống,
các dấu cách và dòng bắt đầu bằng '#' bị bỏ qua. Chỉ thị sau là
được công nhận:

"tập tin con đường"
Đường dẫn đến một tệp để đọc; các ký tự đặc biệt và dấu cách phải được thoát bằng dấu gạch chéo ngược
hoặc các dấu ngoặc kép.

Tất cả các lệnh tiếp theo liên quan đến tệp đều áp dụng cho tệp đó.

"ffconcat phiên bản 1.0 "
Xác định loại và phiên bản tập lệnh. Nó cũng đặt an toàn tùy chọn 1 nếu nó là
-1 mặc định của nó.

Để làm cho FFmpeg tự động nhận dạng định dạng, chỉ thị này phải xuất hiện chính xác
như vậy (không có khoảng trắng thừa hoặc dấu thứ tự byte) trên dòng đầu tiên của tập lệnh.

"khoảng thời gian cứng"
Thời lượng của tệp. Thông tin này có thể được chỉ định từ tệp; xác định nó
ở đây có thể hiệu quả hơn hoặc trợ giúp nếu thông tin từ tệp không có sẵn
hoặc chính xác.

Nếu thời lượng được đặt cho tất cả các tệp, thì có thể tìm kiếm trong toàn bộ
video nối.

"trong điểm dấu thời gian"
Trong điểm của tệp. Khi trình demuxer mở tệp, nó ngay lập tức tìm kiếm
dấu thời gian được chỉ định. Tìm kiếm được thực hiện để tất cả các luồng có thể được trình bày thành công
tại điểm.

Lệnh này hoạt động tốt nhất với codec trong khung, vì đối với các codec không phải trong khung
bạn thường sẽ nhận được các gói bổ sung trước điểm Trong thực tế và nội dung được giải mã
rất có thể sẽ chứa các khung trước In point.

Đối với mỗi tệp, các gói trước tệp Tại điểm sẽ có dấu thời gian nhỏ hơn
dấu thời gian bắt đầu được tính toán của tệp (âm trong trường hợp tệp đầu tiên) và
thời lượng của tệp (nếu không được chỉ định bởi chỉ thị "thời lượng") sẽ bị giảm
dựa trên điểm Trong được chỉ định của họ.

Do các gói tiềm ẩn trước điểm Trong được chỉ định, dấu thời gian gói có thể
chồng chéo giữa hai tệp được nối.

"outpoint dấu thời gian"
Điểm ra của tập tin. Khi trình giải mã đạt đến dấu thời gian giải mã được chỉ định trong
bất kỳ luồng nào, nó sẽ xử lý nó như một điều kiện kết thúc tệp và bỏ qua
và tất cả các gói còn lại từ tất cả các luồng.

Out point là độc quyền, có nghĩa là demuxer sẽ không xuất ra các gói có
dấu thời gian giải mã lớn hơn hoặc bằng Out point.

Chỉ thị này hoạt động tốt nhất với codec và định dạng trong khung, nơi tất cả các luồng đều
đan xen chặt chẽ. Đối với codec không phải của khung nội bộ, bạn thường sẽ nhận được thêm
các gói có dấu thời gian trình bày sau Out point do đó nội dung được giải mã sẽ
rất có thể chứa các khung sau điểm Out. Nếu luồng của bạn không chặt chẽ
xen kẽ, bạn có thể không nhận được tất cả các gói từ tất cả các luồng trước khi Out point và bạn
có thể chỉ có thể giải mã luồng sớm nhất cho đến khi Kết thúc.

Thời lượng của tệp (nếu không được chỉ định bởi chỉ thị "thời lượng") sẽ là
giảm dựa trên Out Point được chỉ định của họ.

"file_packet_metadata key = giá trị"
Siêu dữ liệu của các gói của tệp. Siêu dữ liệu được chỉ định sẽ được đặt cho từng tệp
gói tin. Bạn có thể chỉ định chỉ thị này nhiều lần để thêm nhiều siêu dữ liệu
mục.

"dòng"
Giới thiệu một luồng trong tệp ảo. Tất cả các chỉ thị liên quan đến luồng tiếp theo
áp dụng cho luồng được giới thiệu cuối cùng. Một số thuộc tính luồng phải được đặt để
cho phép xác định các luồng phù hợp trong các tiểu phân. Nếu không có luồng nào được xác định trong
tập lệnh, các luồng từ tệp đầu tiên được sao chép.

"precision_stream_id id"
Đặt id của luồng. Nếu chỉ thị này được đưa ra, chuỗi có
id tương ứng trong các tệp con sẽ được sử dụng. Điều này đặc biệt hữu ích cho MPEG-PS
(VOB) các tệp, trong đó thứ tự của các luồng không đáng tin cậy.

Các lựa chọn

Demuxer này chấp nhận tùy chọn sau:

an toàn
Nếu được đặt thành 1, hãy từ chối các đường dẫn tệp không an toàn. Đường dẫn tệp được coi là an toàn nếu nó không
chứa một đặc tả giao thức và là tương đối và tất cả các thành phần chỉ chứa
các ký tự từ bộ ký tự di động (chữ cái, chữ số, dấu chấm, dấu gạch dưới và
gạch nối) và không có dấu chấm ở đầu thành phần.

Nếu được đặt thành 0, bất kỳ tên tệp nào cũng được chấp nhận.

Giá trị mặc định là -1, nó tương đương với 1 nếu định dạng được tự động thăm dò và 0
nếu không thì.

tự động chuyển đổi
Nếu được đặt thành 1, hãy cố gắng thực hiện chuyển đổi tự động trên dữ liệu gói để tạo luồng
có thể nối. Giá trị mặc định là 1.

Hiện tại, chuyển đổi duy nhất là thêm bộ lọc dòng bit h264_mp4toannexb vào
Các luồng H.264 ở định dạng MP4. Điều này là cần thiết đặc biệt nếu có giải pháp
thay đổi.

flv
Trình giải mã định dạng video Adobe Flash.

Demuxer này được sử dụng để giải mã các tệp FLV và các luồng mạng RTMP.

-flv_metadata bool
Phân bổ các luồng theo nội dung mảng onMetaData.

libgme
Thư viện Game Music Emu là một bộ sưu tập các trình giả lập tệp tin trò chơi điện tử.

Nhìn thấyhttp://code.google.com/p/game-music-emu/> để biết thêm thông tin.

Một số tệp có nhiều bản nhạc. Demuxer sẽ chọn bản nhạc đầu tiên theo mặc định. Các
track_index tùy chọn có thể được sử dụng để chọn một bản nhạc khác. Chỉ số theo dõi bắt đầu từ 0.
demuxer xuất số lượng bản nhạc dưới dạng bài hát nhập dữ liệu meta.

Đối với các tệp rất lớn, kích thước tối đa tùy chọn có thể phải được điều chỉnh.

thư viện
Phát phương tiện từ các dịch vụ Internet bằng dự án quvi.

Demuxer chấp nhận một định dạng tùy chọn để yêu cầu một chất lượng cụ thể. Theo mặc định, nó được đặt thành
tốt.

Nhìn thấyhttp://quvi.sourceforge.net/> để biết thêm thông tin.

FFmpeg cần được xây dựng với "--enable-libquvi" để có thể kích hoạt trình demuxer này.

gif
Demuxer GIF động.

Nó chấp nhận các tùy chọn sau:

phút_delay
Đặt độ trễ hợp lệ tối thiểu giữa các khung hình tính bằng phần trăm giây. Phạm vi từ 0 đến
6000. Giá trị mặc định là 2.

max_gif_delay
Đặt độ trễ hợp lệ tối đa giữa các khung hình tính bằng phần trăm giây. Phạm vi từ 0 đến
65535. Giá trị mặc định là 65535 (gần mười một phút), giá trị tối đa được cho phép bởi
các đặc điểm kỹ thuật.

mặc định_delay
Đặt độ trễ mặc định giữa các khung hình tính bằng phần trăm giây. Phạm vi là 0 đến 6000.
Giá trị mặc định là 10.

bỏ qua_loop
Tệp GIF có thể chứa thông tin lặp lại một số lần nhất định (hoặc vô hạn).
If bỏ qua_loop được đặt thành 1, sau đó cài đặt vòng lặp từ đầu vào sẽ bị bỏ qua và
vòng lặp sẽ không xảy ra. Nếu được đặt thành 0, thì vòng lặp sẽ xảy ra và sẽ xoay vòng số
của thời gian theo GIF. Giá trị mặc định là 1.

Ví dụ: với bộ lọc lớp phủ, hãy đặt một GIF lặp lại vô hạn trên một video khác:

ffmpeg -i input.mp4 -ignore_loop 0 -i input.gif -filter_complex overlay = short = 1 out.mkv

Lưu ý rằng trong ví dụ trên, tùy chọn ngắn nhất cho bộ lọc lớp phủ được sử dụng để kết thúc
đầu ra video ở độ dài của tệp đầu vào ngắn nhất, trong trường hợp này là đầu vào.mp4 as
GIF trong ví dụ này lặp lại vô hạn.

image2
Demuxer tệp hình ảnh.

Demuxer này đọc từ danh sách các tệp hình ảnh được chỉ định bởi một mẫu. Cú pháp và
ý nghĩa của mẫu được chỉ định bởi tùy chọn kiểu_mẫu.

Mẫu có thể chứa một hậu tố được sử dụng để tự động xác định định dạng của
các hình ảnh có trong các tệp.

Kích thước, định dạng pixel và định dạng của mỗi hình ảnh phải giống nhau cho tất cả
các tệp trong trình tự.

Demuxer này chấp nhận các tùy chọn sau:

Framerate
Đặt tốc độ khung hình cho luồng video. Nó mặc định là 25.

vòng lặp
Nếu được đặt thành 1, lặp qua đầu vào. Giá trị mặc định là 0.

kiểu_mẫu
Chọn loại mẫu được sử dụng để diễn giải tên tệp được cung cấp.

kiểu_mẫu chấp nhận một trong các giá trị sau.

không ai
Tắt tính năng đối sánh mẫu, do đó video sẽ chỉ chứa các
hình ảnh. Bạn nên sử dụng tùy chọn này nếu bạn không muốn tạo chuỗi từ
nhiều hình ảnh và tên tệp của bạn có thể chứa các ký tự mẫu đặc biệt.

trình tự
Chọn một loại mẫu trình tự, được sử dụng để chỉ định một chuỗi các tệp được lập chỉ mục bởi
số thứ tự.

Mẫu trình tự có thể chứa chuỗi "% d" hoặc "% 0Nd ", chỉ định
vị trí của các ký tự đại diện cho một số thứ tự trong mỗi tên tệp
phù hợp với mô hình. Nếu dạng "% d0Nd "được sử dụng, chuỗi đại diện cho
số trong mỗi tên tệp là 0 đệm và N là tổng số chữ số có đệm 0
đại diện cho số lượng. Ký tự chữ '%' có thể được chỉ định trong mẫu
với chuỗi "%%".

Nếu mẫu trình tự chứa "% d" hoặc "% 0Nd ", tên tệp đầu tiên của tệp
danh sách được chỉ định bởi mẫu phải chứa một số bao gồm giữa
số_bắt đầusố_bắt đầu+phạm vi_số_bắt đầu-1 và tất cả các số sau
phải tuần tự.

Ví dụ: mẫu "img-% 03d.bmp" sẽ khớp với một chuỗi tên tệp của
hình thức img-001.bmp, img-002.bmp, ..., img-010.bmp, Vân vân.; mô hình
"i %% m %% g-% d.jpg" loading = "lazy" sẽ khớp với một chuỗi tên tệp của biểu mẫu i% m% g-1.jpg,
i% m% g-2.jpg, ..., i% m% g-10.jpg, Vv

Lưu ý rằng mẫu không nhất thiết phải chứa "% d" hoặc "% 0Nd ", chẳng hạn để
chuyển đổi một tệp hình ảnh duy nhất img.jpeg bạn có thể sử dụng lệnh:

ffmpeg -i img.jpeg img.png

toàn cầu
Chọn một loại mẫu ký tự đại diện hình cầu.

Mẫu này được hiểu giống như một mẫu "hình cầu ()". Điều này chỉ có thể chọn nếu
libavformat đã được biên dịch với sự hỗ trợ của Globbing.

global_sequence (không dùng nữa, sẽ be loại bỏ)
Chọn một mẫu chuỗi / ký tự đại diện toàn cầu hỗn hợp.

Nếu phiên bản libavformat của bạn được biên dịch với sự hỗ trợ toàn cầu và
mẫu đã cung cấp chứa ít nhất một ký tự meta toàn cầu trong số "% *? [] {}" nghĩa là
đứng trước "%" không thoát, mẫu được hiểu giống như mẫu "cầu nối ()",
nếu không thì nó được hiểu giống như một mẫu trình tự.

Tất cả các ký tự đặc biệt toàn cầu "% *? [] {}" Phải có tiền tố là "%". Để thoát khỏi một
chữ "%" bạn sẽ sử dụng "%%".

Ví dụ: mẫu "foo -% *. Jpeg" sẽ khớp với tất cả các tên tệp có tiền tố là
"foo-" và kết thúc bằng ".jpeg" và "foo -%?%?% ?. jpeg" sẽ khớp với tất cả các
tên tệp có tiền tố là "foo-", theo sau là một chuỗi ba ký tự và
kết thúc bằng ".jpeg".

Loại mẫu này không được dùng nữa để thay thế cho toàn cầutrình tự.

Giá trị mặc định là global_sequence.

pixel_format
Đặt định dạng pixel của hình ảnh để đọc. Nếu không được chỉ định, định dạng pixel là
đoán từ tệp hình ảnh đầu tiên trong chuỗi.

số_bắt đầu
Đặt chỉ mục của tệp phù hợp với mẫu tệp hình ảnh để bắt đầu đọc từ đó.
Giá trị mặc định là 0.

phạm vi_số_bắt đầu
Đặt phạm vi khoảng thời gian lập chỉ mục để kiểm tra khi tìm kiếm tệp hình ảnh đầu tiên trong
trình tự, bắt đầu từ số_bắt đầu. Giá trị mặc định là 5.

ts_from_file
Nếu được đặt thành 1, sẽ đặt dấu thời gian của khung thành thời gian sửa đổi của tệp hình ảnh. Lưu ý rằng
đơn nguyên của dấu thời gian không được cung cấp: hình ảnh đi theo thứ tự như không có dấu thời gian
Lựa chọn. Giá trị mặc định là 0. Nếu được đặt thành 2, sẽ đặt dấu thời gian của khung thành sửa đổi
thời gian của tệp hình ảnh với độ chính xác nano giây.

kích thước video
Đặt kích thước video của hình ảnh để đọc. Nếu không được chỉ định, kích thước video sẽ được đoán
từ tệp hình ảnh đầu tiên trong chuỗi.

Các ví dụ

· Sử dụng ffmpeg để tạo video từ các hình ảnh trong chuỗi tệp img-001.jpeg,
img-002.jpeg, ..., giả sử tốc độ khung hình đầu vào là 10 khung hình / giây:

ffmpeg -framerate 10 -i 'img-% 03d.jpeg' out.mkv

· Như trên, nhưng bắt đầu bằng cách đọc từ tệp có chỉ mục 100 theo trình tự:

ffmpeg -framerate 10 -start_number 100 -i 'img-% 03d.jpeg' out.mkv

· Đọc hình ảnh khớp với mẫu hình cầu "* .png" loading = "lazy", đó là tất cả các tệp kết thúc bằng
hậu tố ".png" loading = "lazy":

ffmpeg -framerate 10 -pattern_type global -i "* .png" loading = "lazy" out.mkv

mov / mp4 / 3gp / Quicktme
Bộ giải mã Quicktime / MP4.

Demuxer này chấp nhận các tùy chọn sau:

kích hoạt_drefs
Cho phép tải các tuyến đường bên ngoài, bị tắt theo mặc định. Kích hoạt điều này có thể
về mặt lý thuyết làm rò rỉ thông tin trong một số trường hợp sử dụng.

use_absolute_path
Cho phép tải các bản nhạc bên ngoài qua đường dẫn tuyệt đối, bị tắt theo mặc định. Cho phép
điều này gây ra rủi ro bảo mật. Nó chỉ nên được bật nếu nguồn được biết là không phải
độc hại.

mpeg
Bộ tách dòng truyền tải MPEG-2.

Demuxer này chấp nhận các tùy chọn sau:

đồng bộ lại kích thước
Đặt giới hạn kích thước để tìm kiếm đồng bộ hóa mới. Giá trị mặc định là 65536.

fix_teletext_pts
Ghi đè các giá trị PTS và DTS của gói teletext bằng các dấu thời gian được tính toán từ
PCR của chương trình đầu tiên mà luồng teletext là một phần và không bị loại bỏ.
Giá trị mặc định là 1, hãy đặt tùy chọn này thành 0 nếu bạn muốn gói tin teletext PTS và DTS của mình
giá trị không bị ảnh hưởng.

ts_packetsize
Tùy chọn đầu ra mang kích thước gói thô tính bằng byte. Hiển thị gói thô được phát hiện
kích thước, không thể được thiết lập bởi người dùng.

quét_all_pmts
Quét và kết hợp tất cả các PMT. Giá trị là một số nguyên có giá trị từ -1 đến 1 (-1 có nghĩa là
cài đặt tự động, 1 có nghĩa là được bật, 0 có nghĩa là bị vô hiệu hóa). Giá trị mặc định là -1.

video thô
Demuxer video thô.

Demuxer này cho phép một người đọc dữ liệu video thô. Vì không có tiêu đề chỉ định
các tham số video giả định, người dùng phải chỉ định chúng để có thể giải mã
dữ liệu một cách chính xác.

Demuxer này chấp nhận các tùy chọn sau:

Framerate
Đặt tốc độ khung hình video đầu vào. Giá trị mặc định là 25.

pixel_format
Đặt định dạng pixel video đầu vào. Giá trị mặc định là "yuv420p".

kích thước video
Đặt kích thước video đầu vào. Giá trị này phải được chỉ định rõ ràng.

Ví dụ để đọc một tệp rawvideo đầu vào.raw với ffplay, giả sử định dạng pixel của
"rgb24", kích thước video "320x240" và tốc độ khung hình 10 hình ảnh mỗi giây, hãy sử dụng
chỉ huy:

ffplay -f rawvideo -pixel_format rgb24 -video_size 320x240 -framerate 10 input.raw

sbg
Trình giải mã tập lệnh SBaGen.

Demuxer này đọc ngôn ngữ script được SBaGen sử dụnghttp://uazu.net/sbagen/> đến
tạo các phiên nhịp đập hai tai. Tập lệnh SBG trông giống như sau:

-NẾU
a: 300-2.5/3 440+4.5/0
b: 300-2.5/0 440+4.5/3
tắt: -
NGAY BÂY GIỜ == a
+0: ​​07: 00 == b
+0: ​​14: 00 == a
+0: ​​21: 00 == b
+0: ​​30: 00 tắt

Tập lệnh SBG có thể kết hợp dấu thời gian tuyệt đối và tương đối. Nếu tập lệnh chỉ sử dụng
dấu thời gian tuyệt đối (bao gồm cả thời gian bắt đầu tập lệnh) hoặc chỉ những dấu thời gian tương đối, sau đó
bố cục được cố định và quá trình chuyển đổi diễn ra đơn giản. Mặt khác, nếu kịch bản
kết hợp cả hai loại dấu thời gian, sau đó NOW tham chiếu cho dấu thời gian tương đối sẽ là
được lấy từ thời điểm hiện tại trong ngày tại thời điểm tập lệnh được đọc và bố cục tập lệnh
sẽ được đóng băng theo tham chiếu đó. Điều đó có nghĩa là nếu tập lệnh trực tiếp
đã phát, thời gian thực tế sẽ khớp với dấu thời gian tuyệt đối cho đến bộ điều khiển âm thanh
độ chính xác của đồng hồ, nhưng nếu người dùng bằng cách nào đó tạm dừng phát lại hoặc tìm kiếm, mọi lúc sẽ
dịch chuyển tương ứng.

chú thích
Phụ đề JSON được sử dụng chohttp://www.ted.com/>.

TED không cung cấp liên kết đến phụ đề, nhưng chúng có thể được đoán từ trang. Các
hồ sơ tools / bookmarklets.html từ cây nguồn FFmpeg chứa một bookmarklet để hiển thị
Chúng.

Demuxer này chấp nhận tùy chọn sau:

thời gian bắt đầu
Đặt thời gian bắt đầu cuộc nói chuyện TED, tính bằng mili giây. Giá trị mặc định là 15000 (15 giây). Nó là
được sử dụng để đồng bộ hóa phụ đề với video có thể tải xuống vì chúng bao gồm 15 giây
phần giới thiệu.

Ví dụ: chuyển đổi phụ đề sang định dạng mà hầu hết người chơi hiểu:

ffmpeg -i http://www.ted.com/talks/subtitles/id/1/lang/en talk1-en.srt

METADATA


FFmpeg có thể kết xuất siêu dữ liệu từ các tệp phương tiện thành một văn bản giống như INI được mã hóa UTF-8 đơn giản
và sau đó tải lại bằng siêu dữ liệu muxer / demuxer.

Định dạng tệp như sau:

1. Một tệp bao gồm tiêu đề và một số thẻ siêu dữ liệu được chia thành các phần, mỗi phần
trên dòng riêng của nó.

2. Tiêu đề là một ; FFMETADATA chuỗi, theo sau là số phiên bản (bây giờ là 1).

3. Thẻ siêu dữ liệu có dạng key = giá trị

4. Ngay sau tiêu đề theo sau siêu dữ liệu chung

5. Sau siêu dữ liệu toàn cục, có thể có các phần có siêu dữ liệu mỗi luồng / mỗi chương.

6. Một phần bắt đầu bằng tên phần bằng chữ hoa (tức là STREAM hoặc CHƯƠNG) trong
dấu ngoặc ([, ]) và kết thúc bằng phần tiếp theo hoặc phần cuối của tệp.

7. Ở phần đầu của một phần chương, có thể có một cơ sở thời gian tùy chọn được sử dụng để
giá trị bắt đầu / kết thúc. Nó phải ở dạng THỜI GIAN =num/ngày, Nơi numngày là các số nguyên.
Nếu cơ sở thời gian bị thiếu thì thời gian bắt đầu / kết thúc được giả định bằng mili giây.

Tiếp theo, một phần chương phải có biểu mẫu thời gian bắt đầu và kết thúc chương START =num,
HẾT =num, Nơi num là một số nguyên dương.

8. Dòng trống và dòng bắt đầu bằng ; or # bị bỏ qua.

9. Các khóa hoặc giá trị siêu dữ liệu có chứa các ký tự đặc biệt (=, ;, #, \ và một dòng mới) phải
được thoát bằng một dấu gạch chéo ngược \.

10. Lưu ý rằng khoảng trắng trong siêu dữ liệu (ví dụ: foo = thanh) được coi là một phần của
thẻ (trong ví dụ trên, khóa là foo , giá trị là
thanh).

Tệp ffmetadata có thể trông giống như sau:

; FFMETADATA1
title = xe đạp \\ nhà kho
; đây là một bình luận
artist = FFmpeg troll team

[CHƯƠNG]
THỜI GIAN = 1/1000
START = 0
#chapter kết thúc lúc 0:01:00
HẾT = 60000
title = chương \ # 1
[DÒNG]
title = multi \
hàng

Bằng cách sử dụng muxer ffmetadata và demuxer, có thể trích xuất siêu dữ liệu từ đầu vào
tệp sang tệp ffmetadata, sau đó chuyển mã tệp thành tệp đầu ra với
đã chỉnh sửa tệp ffmetadata.

Giải nén tệp ffmetadata với ffmpeg như sau:

ffmpeg -i INPUT -f ffmetadata FFMETADATAFILE

Việc chèn lại thông tin siêu dữ liệu đã chỉnh sửa từ tệp FFMETADATAFILE có thể được thực hiện như sau:

ffmpeg -i INPUT -i FFMETADATAFILE -map_metadata 1 -codec sao chép OUTPUT

BẢO VỆ


Giao thức là các phần tử được định cấu hình trong FFmpeg cho phép truy cập vào các tài nguyên yêu cầu
các giao thức cụ thể.

Khi bạn định cấu hình bản dựng FFmpeg của mình, tất cả các giao thức được hỗ trợ đều được bật theo mặc định.
Bạn có thể liệt kê tất cả những cái có sẵn bằng cách sử dụng tùy chọn cấu hình "--list-protocols".

Bạn có thể tắt tất cả các giao thức bằng cách sử dụng tùy chọn cấu hình "--disable-protocols" và
bật một cách chọn lọc một giao thức bằng cách sử dụng tùy chọn "--enable-protocol =BẢO VỆ", hoặc bạn có thể
vô hiệu hóa một giao thức cụ thể bằng cách sử dụng tùy chọn "--disable-protocol =BẢO VỆ".

Tùy chọn "-protocols" của các công cụ ff * sẽ hiển thị danh sách các giao thức được hỗ trợ.

Sau đây là mô tả về các giao thức hiện có sẵn.

không đồng bộ
Trình bao bọc lấp đầy dữ liệu không đồng bộ cho luồng đầu vào.

Điền dữ liệu vào một luồng nền, để tách hoạt động I / O khỏi luồng demux.

không đồng bộ:
không đồng bộ:http://host/resource
async: cache:http://host/resource

làm mờ
Đọc danh sách phát BluRay.

Các tùy chọn được chấp nhận là:

góc
Góc BluRay

chương
Bắt đầu chương (1 ... N)

danh sách
Danh sách phát để đọc (BDMV / PLAYLIST / ?????. Mpls)

Ví dụ:

Đọc danh sách phát dài nhất từ ​​BluRay được gắn vào / mnt / bluray:

bluray: / mnt / bluray

Đọc góc 2 của danh sách phát 4 từ BluRay được gắn vào / mnt / bluray, bắt đầu từ chương 2:

-playlist 4 -angle 2 -chapter 2 bluray: / mnt / bluray

bộ nhớ cache
Trình bao bọc bộ nhớ đệm cho luồng đầu vào.

Lưu trữ luồng đầu vào vào tệp tạm thời. Nó mang lại khả năng tìm kiếm cho các luồng trực tiếp.

bộ nhớ đệm:

concat
Giao thức nối vật lý.

Đọc và tìm kiếm từ nhiều tài nguyên theo trình tự như thể chúng là một tài nguyên duy nhất.

URL được giao thức này chấp nhận có cú pháp:

kết hợp: | | ... |

Ở đâu URL1, URL2, ..., URLN là các url của tài nguyên sẽ được nối với nhau, mỗi url
có thể chỉ định một giao thức riêng biệt.

Ví dụ để đọc một chuỗi các tệp chia1.mpeg, chia2.mpeg, chia3.mpeg với ffplay
sử dụng lệnh:

ffplay concat: split1.mpeg \ | split2.mpeg \ | split3.mpeg

Lưu ý rằng bạn có thể cần phải thoát khỏi ký tự "|" mà là đặc biệt cho nhiều vỏ.

Crypto
Giao thức đọc luồng được mã hóa AES.

Các tùy chọn được chấp nhận là:

chính Đặt khối nhị phân khóa giải mã AES từ biểu diễn thập lục phân đã cho.

iv Đặt khối nhị phân vectơ khởi tạo giải mã AES từ hệ thập lục phân đã cho
sự đại diện.

Các định dạng URL được chấp nhận:

tiền điện tử:
tiền điện tử +

dữ liệu
Dữ liệu nội dòng trong URI. Nhìn thấyhttp://en.wikipedia.org/wiki/Data_URI_scheme>.

Ví dụ: để chuyển đổi một tệp GIF được cung cấp nội dòng với ffmpeg:

ffmpeg -i "data:image/gif;base64,R0lGODdhCAAIAMIEAAAAAAAA//8AAP//AP///////////////ywAAAAACAAIAAADF0gEDLojDgdGiJdJqUX02iB4E8Q9jUMkADs=" smiley.png

hồ sơ
Giao thức truy cập tệp.

Đọc từ hoặc ghi vào một tệp.

URL tệp có thể có dạng:

tập tin:

Ở đâu tên tập tin là đường dẫn của tệp để đọc.

URL không có tiền tố giao thức sẽ được coi là URL tệp. Phụ thuộc vào
bản dựng, một URL trông giống như một đường dẫn Windows với ký tự ổ đĩa ở đầu
cũng sẽ được giả định là một URL tệp (thường không phải như vậy trong các bản dựng dành cho unix-like
hệ thống).

Ví dụ để đọc từ một tệp đầu vào.mpeg với ffmpeg sử dụng lệnh:

tệp ffmpeg -i: input.mpeg output.mpeg

Giao thức này chấp nhận các tùy chọn sau:

cắt bớt
Cắt bớt các tệp hiện có khi ghi, nếu được đặt thành 1. Giá trị 0 ngăn việc cắt ngắn.
Giá trị mặc định là 1.

kích thước khối
Đặt kích thước khối tối đa của hoạt động I / O, tính bằng byte. Giá trị mặc định là "INT_MAX",
dẫn đến không giới hạn kích thước khối được yêu cầu. Đặt giá trị này thấp hợp lý
cải thiện thời gian phản hồi yêu cầu chấm dứt của người dùng, điều này có giá trị đối với các tệp chậm
Trung bình.

ftp
FTP (Giao thức truyền tệp).

Đọc từ hoặc ghi vào tài nguyên từ xa bằng giao thức FTP.

Cú pháp sau là bắt buộc.

ftp: // [user [: password] @] server [: port] /path/to/remote/resource.mpeg

Giao thức này chấp nhận các tùy chọn sau.

thời gian chờ
Đặt thời gian chờ tính bằng micro giây của các hoạt động I / O socket được sử dụng bởi mức thấp bên dưới
hoạt động. Theo mặc định, nó được đặt thành -1, có nghĩa là thời gian chờ không được chỉ định.

ftp-nặc danh-mật khẩu
Mật khẩu được sử dụng khi đăng nhập với tư cách người dùng ẩn danh. Thông thường, một địa chỉ e-mail phải là
đã sử dụng.

ftp-ghi-có thể tìm kiếm
Kiểm soát khả năng tìm kiếm của kết nối trong quá trình mã hóa. Nếu được đặt thành 1, tài nguyên là
được cho là có thể tìm kiếm được, nếu được đặt thành 0 thì nó được cho là không thể tìm kiếm được. Giá trị mặc định
là 0.

LƯU Ý: Giao thức có thể được sử dụng làm đầu ra, nhưng không nên làm điều đó, trừ khi đặc biệt
cẩn thận (kiểm tra, cấu hình máy chủ tùy chỉnh, v.v.). Các máy chủ FTP khác nhau hoạt động
theo cách khác nhau trong quá trình hoạt động tìm kiếm. công cụ ff * có thể tạo ra nội dung không đầy đủ do
hạn chế của máy chủ.

chuột túi má
Giao thức Gopher.

hls
Đọc luồng được phân đoạn tuân thủ Apple HTTP Live Streaming như một luồng thống nhất. M3U8
danh sách phát mô tả các phân đoạn có thể là tài nguyên HTTP từ xa hoặc tệp cục bộ, được truy cập
sử dụng giao thức tệp tiêu chuẩn. Giao thức lồng nhau được khai báo bằng cách chỉ định "+do đó"
sau tên lược đồ URI hls, trong đó do đó là "tệp" hoặc "http".

hls +http://host/path/to/remote/resource.m3u8
hls + tệp: //path/to/local/resource.m3u8

Việc sử dụng giao thức này không được khuyến khích - trình demuxer hls cũng nên hoạt động (nếu không,
vui lòng báo cáo các vấn đề) và hoàn thiện hơn. Để sử dụng demuxer hls thay thế, chỉ cần
sử dụng các URL trực tiếp đến các tệp m3u8.

http
HTTP (Giao thức truyền siêu văn bản).

Giao thức này chấp nhận các tùy chọn sau:

có thể tìm kiếm
Kiểm soát khả năng tìm kiếm của kết nối. Nếu được đặt thành 1, tài nguyên được cho là
có thể tìm kiếm được, nếu được đặt thành 0, nó được cho là không thể tìm kiếm được, nếu được đặt thành -1, nó sẽ cố gắng
tự động phát hiện nếu nó có thể tìm kiếm được. Giá trị mặc định là -1.

chunked_post
Nếu được đặt thành 1, hãy sử dụng Mã hóa chuyển theo khối cho các bài đăng, mặc định là 1.

nội dung_type
Đặt một loại nội dung cụ thể cho các tin nhắn ĐĂNG.

tiêu đề
Đặt tiêu đề HTTP tùy chỉnh, có thể ghi đè tiêu đề mặc định được tích hợp sẵn. Giá trị phải là
mã hóa chuỗi tiêu đề.

nhiều_request
Sử dụng kết nối liên tục nếu được đặt thành 1, mặc định là 0.

dữ liệu bài đăng
Đặt dữ liệu bài đăng HTTP tùy chỉnh.

user-agent
đại lý người dùng
Ghi đè tiêu đề Tác nhân người dùng. Nếu không được chỉ định, giao thức sẽ sử dụng một chuỗi
mô tả bản dựng libavformat. ("Lavf / ")

thời gian chờ
Đặt thời gian chờ tính bằng micro giây của các hoạt động I / O socket được sử dụng bởi mức thấp bên dưới
hoạt động. Theo mặc định, nó được đặt thành -1, có nghĩa là thời gian chờ không được chỉ định.

mime_type
Xuất loại MIME.

băng giá Nếu được đặt thành 1 yêu cầu siêu dữ liệu ICY (SHOUTcast) từ máy chủ. Nếu máy chủ hỗ trợ
điều này, siêu dữ liệu phải được ứng dụng truy xuất bằng cách đọc
icy_metadata_headersicy_metadata_packet tùy chọn. Giá trị mặc định là 1.

icy_metadata_headers
Nếu máy chủ hỗ trợ siêu dữ liệu ICY, siêu dữ liệu này chứa phản hồi HTTP dành riêng cho ICY
tiêu đề, được phân tách bằng ký tự dòng mới.

icy_metadata_packet
Nếu máy chủ hỗ trợ siêu dữ liệu ICY và băng giá đã được đặt thành 1, điều này chứa cuối cùng không phải
gói siêu dữ liệu trống do máy chủ gửi. Nó nên được thăm dò định kỳ bởi
các ứng dụng quan tâm đến cập nhật siêu dữ liệu giữa luồng.

bánh quy
Đặt cookie sẽ được gửi trong các yêu cầu trong tương lai. Định dạng của mỗi cookie đều giống nhau
dưới dạng giá trị của trường phản hồi HTTP Set-Cookie. Nhiều cookie có thể được phân định bằng
một ký tự dòng mới.

bù đắp
Đặt độ lệch byte ban đầu.

end_offset
Cố gắng giới hạn yêu cầu ở các byte trước phần bù này.

phương pháp
Khi được sử dụng như một tùy chọn máy khách, nó sẽ đặt phương thức HTTP cho yêu cầu.

Khi được sử dụng như một tùy chọn máy chủ, nó đặt phương thức HTTP sẽ được mong đợi từ
(các) khách hàng. Nếu phương thức HTTP mong đợi và đã nhận không khớp với máy khách
sẽ nhận được phản hồi Yêu cầu Không hợp lệ. Khi bỏ đặt, phương thức HTTP không được kiểm tra
hiện nay. Điều này sẽ được thay thế bằng tính năng tự động phát hiện trong tương lai.

nghe
Nếu được đặt thành 1 sẽ bật máy chủ HTTP thử nghiệm. Điều này có thể được sử dụng để gửi dữ liệu khi được sử dụng
như một tùy chọn đầu ra hoặc đọc dữ liệu từ một ứng dụng khách với HTTP POST khi được sử dụng làm đầu vào
Lựa chọn. Nếu được đặt thành 2, sẽ bật máy chủ HTTP mutli-client thử nghiệm. Điều này vẫn chưa
được triển khai trong ffmpeg.c hoặc ffserver.c và do đó không được sử dụng như một dòng lệnh
tùy chọn.

# Phía máy chủ (đang gửi):
ffmpeg -i somefile.ogg -c copy -listen 1 -f ogg http: // :

# Phía khách hàng (nhận):
ffmpeg -i http: // : -c sao chép somefile.ogg

# Ứng dụng khách cũng có thể được thực hiện với wget:
truy cập http: // : -O somefile.ogg

# Phía máy chủ (nhận):
ffmpeg -listen 1 -i http: // : -c sao chép somefile.ogg

# Phía khách hàng (đang gửi):
ffmpeg -i somefile.ogg -chunked_post 0 -c copy -f ogg http: // :

# Ứng dụng khách cũng có thể được thực hiện với wget:
wget --post-file = somefile.ogg http: // :

HTTP Cookies

Một số yêu cầu HTTP sẽ bị từ chối trừ khi các giá trị cookie được chuyển cùng với yêu cầu. Các
bánh quy tùy chọn cho phép các cookie này được chỉ định. Ít nhất, mỗi cookie phải
chỉ định một giá trị cùng với một đường dẫn và miền. Yêu cầu HTTP phù hợp với cả miền
và đường dẫn sẽ tự động bao gồm giá trị cookie trong trường tiêu đề Cookie HTTP.
Nhiều cookie có thể được phân tách bằng một dòng mới.

Cú pháp bắt buộc để phát luồng chỉ định cookie là:

ffplay -cookies "nlqptid = nltid = tsn; path = /; domain = somedomain.com;" http://somedomain.com/somestream.m3u8

Icecast
Giao thức Icecast (truyền trực tuyến đến máy chủ Icecast)

Giao thức này chấp nhận các tùy chọn sau:

thể loại băng
Đặt thể loại luồng.

tên băng
Đặt tên luồng.

băng_description
Đặt mô tả luồng.

Ice_url
Đặt URL trang web luồng.

băng_công khai
Đặt xem luồng có nên công khai hay không. Giá trị mặc định là 0 (không công khai).

đại lý người dùng
Ghi đè tiêu đề Tác nhân người dùng. Nếu không được chỉ định một chuỗi có dạng "Lavf / "
sẽ được sử dụng.

mật khẩu
Đặt mật khẩu điểm gắn kết Icecast.

nội dung_type
Đặt loại nội dung luồng. Điều này phải được đặt nếu nó khác với audio / mpeg.

inherit_icecast
Điều này cho phép hỗ trợ các phiên bản Icecast <2.4.0, không hỗ trợ HTTP PUT
phương pháp nhưng là phương pháp NGUỒN.

icecast: // [ [: ] @] : /

mmt
Giao thức MMS (Microsoft Media Server) qua TCP.

ừm
Giao thức MMS (Microsoft Media Server) qua HTTP.

Cú pháp bắt buộc là:

mmsh: // [: ] [/ ] [/ ]

md5
Giao thức đầu ra MD5.

Tính toán băm MD5 của dữ liệu sẽ được ghi và khi đóng thì ghi dữ liệu này vào
đầu ra được chỉ định hoặc stdout nếu không có sản phẩm nào được chỉ định. Nó có thể được sử dụng để kiểm tra muxers mà không cần
viết một tập tin thực tế.

Một số ví dụ sau đây.

# Ghi băm MD5 của tệp AVI được mã hóa vào tệp output.avi.md5.
ffmpeg -i input.flv -f avi -y md5: output.avi.md5

# Ghi băm MD5 của tệp AVI được mã hóa vào stdout.
ffmpeg -i input.flv -f avi -y md5:

Lưu ý rằng một số định dạng (thường là MOV) yêu cầu giao thức đầu ra có thể tìm kiếm được, vì vậy chúng
sẽ không thành công với giao thức đầu ra MD5.

đường ống
Giao thức truy cập đường ống UNIX.

Đọc và ghi từ các đường ống UNIX.

Cú pháp được chấp nhận là:

đường ống:[ ]

con số là số tương ứng với bộ mô tả tệp của đường ống (ví dụ: 0 cho stdin, 1
cho stdout, 2 cho stderr). Nếu như con số không được chỉ định, theo mặc định là tệp stdout
bộ mô tả sẽ được sử dụng để viết, stdin để đọc.

Ví dụ để đọc từ stdin với ffmpeg:

cat test.wav | ống ffmpeg -i: 0
# ... điều này giống với ...
cat test.wav | ống ffmpeg -i:

Để viết lách với ffmpeg:

ffmpeg -i test.wav -f avi pipe: 1 | cat> test.avi
# ... điều này giống với ...
ffmpeg -i test.wav -f avi pipe: | cat> test.avi

Giao thức này chấp nhận các tùy chọn sau:

kích thước khối
Đặt kích thước khối tối đa của hoạt động I / O, tính bằng byte. Giá trị mặc định là "INT_MAX",
dẫn đến không giới hạn kích thước khối được yêu cầu. Đặt giá trị này thấp hợp lý
cải thiện thời gian phản hồi yêu cầu chấm dứt của người dùng, điều này có giá trị nếu dữ liệu
đường truyền chậm.

Lưu ý rằng một số định dạng (thường là MOV), yêu cầu giao thức đầu ra có thể tìm kiếm được, vì vậy
chúng sẽ không thành công với giao thức đầu ra đường ống.

rtmp
Giao thức nhắn tin thời gian thực.

Giao thức Nhắn tin Thời gian Thực (RTMP) được sử dụng để truyền trực tuyến nội dung đa phương tiện qua một
Mạng TCP / IP.

Cú pháp bắt buộc là:

rtmp: // [ : @] [: ] [/ ] [/ ] [/ ]

Các thông số được chấp nhận là:

tên truy nhập
Tên người dùng tùy chọn (chủ yếu để xuất bản).

mật khẩu
Mật khẩu tùy chọn (chủ yếu để xuất bản).

máy chủ
Địa chỉ của máy chủ RTMP.

cổng
Số cổng TCP sẽ sử dụng (theo mặc định là 1935).

ứng dụng Nó là tên của ứng dụng để truy cập. Nó thường tương ứng với đường dẫn mà
ứng dụng được cài đặt trên máy chủ RTMP (ví dụ: / ondemand /, / flash / live /, Vv).
Bạn cũng có thể ghi đè giá trị được phân tích cú pháp từ URI thông qua tùy chọn "rtmp_app".

đường chơi
Đây là đường dẫn hoặc tên của tài nguyên để phát tham chiếu đến ứng dụng
quy định tại ứng dụng, có thể có tiền tố là "mp4:". Bạn có thể ghi đè giá trị được phân tích cú pháp từ
cả URI thông qua tùy chọn "rtmp_playpath".

nghe
Hoạt động như một máy chủ, lắng nghe kết nối đến.

thời gian chờ
Thời gian tối đa để chờ kết nối đến. Ngụ ý lắng nghe.

Ngoài ra, các tham số sau có thể được đặt thông qua các tùy chọn dòng lệnh (hoặc trong mã qua
"AVOption" s):

rtmp_app
Tên ứng dụng để kết nối trên máy chủ RTMP. Tùy chọn này ghi đè tham số
được chỉ định trong URI.

rtmp_buffer
Đặt thời gian đệm của máy khách tính bằng mili giây. Giá trị mặc định là 3000.

rtmp_conn
Các tham số kết nối AMF tùy ý bổ sung, được phân tích cú pháp từ một chuỗi, ví dụ như "B: 1
S: authMe O: 1 NN: mã: 1.23 NS: flag: ok O: 0 ". Mỗi giá trị được bắt đầu bởi một giá trị duy nhất
ký tự biểu thị kiểu, B cho Boolean, N cho số, S cho chuỗi, O cho đối tượng,
hoặc Z cho null, theo sau là dấu hai chấm. Đối với Booleans, dữ liệu phải là 0 hoặc 1 cho
FALSE hoặc TRUE, tương ứng. Tương tự như vậy đối với Đối tượng, dữ liệu phải là 0 hoặc 1 để kết thúc hoặc
bắt đầu một đối tượng, tương ứng. Các mục dữ liệu trong subobjects có thể được đặt tên, bằng cách thêm tiền tố
nhập với 'N' và chỉ định tên trước giá trị (tức là "NB: myFlag: 1"). Cái này
tùy chọn có thể được sử dụng nhiều lần để tạo chuỗi AMF tùy ý.

rtmp_flashver
Phiên bản của plugin Flash được sử dụng để chạy trình phát SWF. Mặc định là LNX 9,0,124,2.
(Khi xuất bản, mặc định là FMLE / 3.0 (tương thích; ).)

rtmp_flush_interval
Số lượng gói được gửi trong cùng một yêu cầu (chỉ RTMPT). Giá trị mặc định là 10.

rtmp_live
Chỉ định rằng phương tiện là một luồng trực tiếp. Không tiếp tục hoặc tìm kiếm trong luồng trực tiếp là
khả thi. Giá trị mặc định là "bất kỳ", có nghĩa là người đăng ký lần đầu tiên thử chơi
luồng trực tiếp được chỉ định trong playpath. Nếu không tìm thấy luồng trực tiếp có tên đó,
nó phát luồng đã ghi. Các giá trị có thể có khác là "trực tiếp" và "được ghi lại".

rtmp_pageurl
URL của trang web mà phương tiện được nhúng. Theo mặc định, không có giá trị nào được gửi.

rtmp_playpath
Dòng nhận dạng để phát hoặc để xuất bản. Tùy chọn này ghi đè thông số được chỉ định
trong URI.

rtmp_subscribe
Tên của luồng trực tiếp để đăng ký. Theo mặc định, không có giá trị nào được gửi. Nó chỉ là
được gửi nếu tùy chọn được chỉ định hoặc nếu rtmp_live được đặt thành hoạt động.

rtmp_swfhash
Hàm băm SHA256 của tệp SWF được giải nén (32 byte).

rtmp_swfsize
Kích thước của tệp SWF được giải nén, cần thiết cho SWFVerification.

rtmp_swfurl
URL của trình phát SWF cho phương tiện. Theo mặc định, không có giá trị nào được gửi.

rtmp_swfxác minh
URL tới tệp swf của trình phát, tự động tính toán băm / kích thước.

rtmp_tcurl
URL của luồng mục tiêu. Mặc định là proto: // host [: port] / app.

Ví dụ để đọc với ffplay tài nguyên đa phương tiện có tên "mẫu" từ ứng dụng
"vod" từ máy chủ RTMP "myserver":

ffplay rtmp: // myserver / vod / sample

Để xuất bản lên máy chủ được bảo vệ bằng mật khẩu, hãy chuyển playpath và tên ứng dụng riêng biệt:

ffmpeg -re -i -f flv -rtmp_playpath some / long / path -rtmp_app long / app / name rtmp: // username: password @ myserver /

rtmpe
Giao thức nhắn tin thời gian thực được mã hóa.

Giao thức nhắn tin thời gian thực được mã hóa (RTMPE) được sử dụng để phát trực tuyến đa phương tiện
nội dung trong các nguyên thủy mật mã tiêu chuẩn, bao gồm khóa Diffie-Hellman
trao đổi và HMACSHA256, tạo ra một cặp khóa RC4.

rtmp
Giao thức nhắn tin thời gian thực qua kết nối SSL an toàn.

Giao thức nhắn tin thời gian thực (RTMPS) được sử dụng để truyền trực tuyến nội dung đa phương tiện qua
một kết nối được mã hóa.

rtmpt
Giao thức nhắn tin thời gian thực thông qua HTTP.

Giao thức nhắn tin thời gian thực được truyền qua HTTP (RTMPT) được sử dụng để phát trực tuyến
nội dung đa phương tiện trong các yêu cầu HTTP để vượt qua tường lửa.

rtmpte
Giao thức nhắn tin thời gian thực được mã hóa thông qua HTTP.

Giao thức nhắn tin thời gian thực được mã hóa thông qua HTTP (RTMPTE) được sử dụng cho
phát trực tuyến nội dung đa phương tiện trong các yêu cầu HTTP tới tường lửa xuyên qua.

rtmpt
Giao thức nhắn tin thời gian thực thông qua HTTPS.

Giao thức nhắn tin thời gian thực được truyền qua HTTPS (RTMPTS) được sử dụng để phát trực tuyến
nội dung đa phương tiện trong HTTPS yêu cầu vượt qua tường lửa.

libsmbclient
libsmbclient cho phép một người thao tác tài nguyên mạng CIFS / SMB.

Cú pháp sau là bắt buộc.

smb: // [[domain:] người dùng [: password @]] server [/ share [/ path [/ file]]]

Giao thức này chấp nhận các tùy chọn sau.

thời gian chờ
Đặt thời gian chờ tính bằng mili giây của các hoạt động I / O socket được sử dụng bởi mức thấp cơ bản
hoạt động. Theo mặc định, nó được đặt thành -1, có nghĩa là thời gian chờ không được chỉ định.

cắt bớt
Cắt bớt các tệp hiện có khi ghi, nếu được đặt thành 1. Giá trị 0 ngăn việc cắt ngắn.
Giá trị mặc định là 1.

nhóm làm việc
Đặt nhóm làm việc được sử dụng để tạo kết nối. Theo mặc định nhóm làm việc không được chỉ định.

Để biết thêm thông tin, hãy xem:http://www.samba.org/>.

libsh
Giao thức truyền tệp an toàn qua libssh

Đọc từ hoặc ghi vào tài nguyên từ xa bằng giao thức SFTP.

Cú pháp sau là bắt buộc.

sftp: // [user [: password] @] server [: port] /path/to/remote/resource.mpeg

Giao thức này chấp nhận các tùy chọn sau.

thời gian chờ
Đặt thời gian chờ của các hoạt động I / O của ổ cắm được sử dụng bởi hoạt động cấp thấp bên dưới. Qua
mặc định nó được đặt thành -1, có nghĩa là thời gian chờ không được chỉ định.

cắt bớt
Cắt bớt các tệp hiện có khi ghi, nếu được đặt thành 1. Giá trị 0 ngăn việc cắt ngắn.
Giá trị mặc định là 1.

khóa_riêng
Chỉ định đường dẫn của tệp chứa khóa cá nhân để sử dụng trong quá trình ủy quyền. Qua
libssh mặc định tìm kiếm các khóa trong ~ / .ssh / thư mục.

Ví dụ: Phát một tệp được lưu trữ trên máy chủ từ xa.

ffplay sftp: // người dùng: password @ server_address: 22 / home / user / resource.mpeg

librtmp rtmp, rtmpe, rtmp, rtmpt, rtmpte
Giao thức nhắn tin thời gian thực và các biến thể của nó được hỗ trợ thông qua librtmp.

Yêu cầu sự hiện diện của tiêu đề librtmp và thư viện trong quá trình cấu hình. Bạn cần phải
định cấu hình rõ ràng bản dựng bằng "--enable-librtmp". Nếu được kích hoạt, điều này sẽ thay thế
giao thức RTMP bản địa.

Giao thức này cung cấp hầu hết các chức năng máy khách và một vài chức năng máy chủ cần thiết để hỗ trợ
RTMP, RTMP được đào trong HTTP (RTMPT), RTMP được mã hóa (RTMPE), RTMP qua SSL / TLS (RTMPS) và
các biến thể đường hầm của các loại mã hóa này (RTMPTE, RTMPTS).

Cú pháp bắt buộc là:

: // [: ] [/ ] [/ ]

Ở đâu rtmp_proto là một trong các chuỗi "rtmp", "rtmpt", "rtmpe", "rtmps", "rtmpte",
"rtmpts" tương ứng với từng biến thể RTMP và máy chủ, cổng, ứng dụngđường chơi
cùng ý nghĩa như được chỉ định cho giao thức gốc RTMP. lựa chọn chứa danh sách không gian-
các tùy chọn riêng biệt của biểu mẫu chính=val.

Xem trang hướng dẫn sử dụng librtmp (man 3 librtmp) để biết thêm thông tin.

Ví dụ: để truyền một tệp trong thời gian thực tới máy chủ RTMP bằng cách sử dụng ffmpeg:

ffmpeg -re -i myfile -f flv rtmp: // myserver / live / mystream

Để phát cùng một luồng bằng cách sử dụng ffplay:

ffplay "rtmp: // myserver / live / mystream live = 1"

rtp
Giao thức vận tải thời gian thực.

Cú pháp bắt buộc cho URL RTP là: rtp: //hostname[:cổng] [?tùy chọn=val...]

cổng chỉ định cổng RTP để sử dụng.

Các tùy chọn URL sau được hỗ trợ:

ttl =n
Đặt giá trị TTL (Time-To-Live) (chỉ dành cho phát đa hướng).

rtcpport =n
Đặt cổng RTCP từ xa thành n.

localrtpport =n
Đặt cổng RTP cục bộ thành n.

localrtcpport =n'
Đặt cổng RTCP cục bộ thành n.

pkt_size =n
Đặt kích thước gói tối đa (tính bằng byte) thành n.

kết nối = 0 | 1
Thực hiện "kết nối ()" trên ổ cắm UDP (nếu được đặt thành 1) hoặc không (nếu đặt thành 0).

nguồn =ip[,ip]
Liệt kê các địa chỉ IP nguồn được phép.

khối =ip[,ip]
Liệt kê các địa chỉ IP nguồn không được phép (bị chặn).

write_to_source = 0 | 1
Gửi các gói đến địa chỉ nguồn của gói nhận được mới nhất (nếu được đặt thành 1) hoặc đến một
địa chỉ từ xa mặc định (nếu được đặt thành 0).

localport =n
Đặt cổng RTP cục bộ thành n.

Đây là một tùy chọn không được dùng nữa. Thay thế, localrtpport nên được sử dụng.

Ghi chú quan trọng:

1. Nếu rtcpport không được đặt cổng RTCP sẽ được đặt thành giá trị cổng RTP cộng với 1.

2. Nếu localrtpport (cổng RTP cục bộ) không được đặt, bất kỳ cổng nào có sẵn sẽ được sử dụng cho
các cổng RTP và RTCP cục bộ.

3. Nếu localrtcpport (cổng RTCP cục bộ) không được đặt, nó sẽ được đặt thành cổng RTP cục bộ
giá trị cộng 1.

rtsp
Giao thức phát trực tuyến thời gian thực.

Về mặt kỹ thuật, RTSP không phải là một trình xử lý giao thức trong libavformat, nó là một trình xử lý dữ liệu (demuxer) và trình xử lý dữ liệu (muxer). Các
demuxer hỗ trợ cả RTSP bình thường (với dữ liệu được truyền qua RTP; điều này được sử dụng bởi ví dụ
Apple và Microsoft) và Real-RTSP (với dữ liệu được truyền qua RDT).

Muxer có thể được sử dụng để gửi một luồng bằng RTSP ANNOUNCE đến một máy chủ hỗ trợ nó
(hiện tại Darwin Streaming Server và Mischa Spiegelmock's
<https://github.com/revmischa/rtsp-server>).

Cú pháp bắt buộc cho url RTSP là:

rtsp: // [: ] /

Các tùy chọn có thể được thiết lập trên ffmpeg/ffplay dòng lệnh hoặc đặt trong mã qua "AVOption" s hoặc trong
"avformat_open_input".

Các tùy chọn sau được hỗ trợ.

ban đầu_pause
Không bắt đầu phát luồng ngay lập tức nếu được đặt thành 1. Giá trị mặc định là 0.

rtsp_transport
Đặt giao thức truyền tải RTSP.

Nó chấp nhận các giá trị sau:

udp Sử dụng UDP làm giao thức truyền tải thấp hơn.

tcp Sử dụng TCP (xen kẽ trong kênh điều khiển RTSP) làm phương tiện truyền tải thấp hơn
giao thức.

udp_multicast
Sử dụng đa hướng UDP làm giao thức truyền tải thấp hơn.

http
Sử dụng đường hầm HTTP làm giao thức truyền tải thấp hơn, rất hữu ích cho việc chuyển
proxy.

Nhiều giao thức truyền tải thấp hơn có thể được chỉ định, trong trường hợp đó chúng được thử một
tại một thời điểm (nếu thiết lập không thành công, thiết lập tiếp theo sẽ được thử). Đối với muxer, chỉ có
tcpudp các tùy chọn được hỗ trợ.

rtsp_flags
Đặt cờ RTSP.

Các giá trị sau được chấp nhận:

bộ lọc_src
Chỉ chấp nhận các gói từ địa chỉ và cổng ngang hàng đã thương lượng.

nghe
Hoạt động như một máy chủ, lắng nghe kết nối đến.

thích_tcp
Trước tiên, hãy thử vận ​​chuyển TCP cho RTP, nếu TCP có sẵn dưới dạng truyền tải RTSP RTP.

Giá trị mặc định là không ai.

allow_media_types
Đặt loại phương tiện để chấp nhận từ máy chủ.

Các cờ sau được chấp nhận:

video
âm thanh
dữ liệu

Theo mặc định, nó chấp nhận tất cả các loại phương tiện.

cổng tối thiểu
Đặt cổng UDP cục bộ tối thiểu. Giá trị mặc định là 5000.

max_port
Đặt cổng UDP cục bộ tối đa. Giá trị mặc định là 65000.

thời gian chờ
Đặt thời gian chờ tối đa (tính bằng giây) để đợi các kết nối đến.

Giá trị -1 có nghĩa là vô hạn (mặc định). Tùy chọn này ngụ ý rtsp_flags đặt thành
nghe.

sắp xếp lại_queue_size
Đặt số lượng gói vào bộ đệm để xử lý các gói được sắp xếp lại.

kỳ quặc
Đặt thời gian chờ I / O socket TCP tính bằng micro giây.

user-agent
Ghi đè tiêu đề Tác nhân người dùng. Nếu không được chỉ định, nó sẽ mặc định là libavformat
chuỗi định danh.

Khi nhận dữ liệu qua UDP, trình giải mã sẽ cố gắng sắp xếp lại thứ tự các gói đã nhận (vì chúng
có thể đến không theo thứ tự, hoặc các gói có thể bị mất hoàn toàn). Điều này có thể được tắt bằng cách cài đặt
độ trễ giảm thông số tối đa bằng XNUMX (thông qua trường "max_delay" của AVFormatContext).

Khi xem các luồng Real-RTSP đa bit với ffplay, các luồng để hiển thị có thể
được chọn với "-vst" n và "-ast" n cho video và âm thanh tương ứng và có thể được bật
bay bằng cách nhấn "v" và "a".

Các ví dụ

Tất cả các ví dụ sau đây đều sử dụng ffplayffmpeg công cụ hơn nữa.

· Xem một luồng qua UDP, với độ trễ sắp xếp lại tối đa là 0.5 giây:

ffplay -max_delay 500000 -rtsp_transport udp rtsp: //server/video.mp4

· Xem một luồng được đào qua HTTP:

ffplay -rtsp_transport http rtsp: //server/video.mp4

· Gửi một luồng trong thời gian thực tới máy chủ RTSP để những người khác xem:

ffmpeg -re -i -f rtsp -muxdelay 0.1 rtsp: //server/live.sdp

· Nhận một luồng trong thời gian thực:

ffmpeg -rtsp_flags nghe -i rtsp: //ownaddress/live.sdp

sap
Giao thức thông báo phiên (RFC 2974). Về mặt kỹ thuật, đây không phải là một trình xử lý giao thức trong
libavformat, nó là một muxer và demuxer. Nó được sử dụng để báo hiệu các luồng RTP, bằng cách
thông báo SDP cho các luồng thường xuyên trên một cổng riêng biệt.

đàn bà

Cú pháp cho url SAP được cung cấp cho muxer là:

nhựa cây:// [: ] [? ]

Các gói RTP được gửi đến điểm đến trên cảng cổnghoặc đến cổng 5004 nếu không có cổng nào
được chỉ định. lựa chọn là một "&" - danh sách được phân tách. Các tùy chọn sau được hỗ trợ:

thông báo_addr =địa chỉ
Chỉ định địa chỉ IP đích để gửi thông báo tới. Nếu bị bỏ qua,
thông báo được gửi đến địa chỉ phát đa hướng thông báo SAP thường được sử dụng
224.2.127.254 (sap.mcast.net) hoặc ff0e :: 2: 7ffe nếu điểm đến là một địa chỉ IPv6.

tify_port =cổng
Chỉ định cổng để gửi thông báo, mặc định là 9875 nếu không được chỉ định.

ttl =ttl
Chỉ định thời gian tồn tại giá trị cho các thông báo và gói RTP, mặc định là 255.

same_port =0 | 1
Nếu được đặt thành 1, hãy gửi tất cả các luồng RTP trên cùng một cặp cổng. Nếu không (mặc định), tất cả
luồng được gửi trên các cổng duy nhất, với mỗi luồng trên một cổng cao hơn 2 số so với
Trước. VLC / Live555 yêu cầu điều này phải được đặt thành 1 để có thể nhận luồng.
Ngăn xếp RTP trong libavformat để nhận yêu cầu tất cả các luồng phải được gửi trên duy nhất
Cảng.

Các dòng lệnh ví dụ theo sau.

Để phát một luồng trên mạng con cục bộ, để xem trong VLC:

ffmpeg -re -i -f sap sap xep: //224.0.0.255? same_port = 1

Tương tự, để xem trong ffplay:

ffmpeg -re -i -f nhựa cây: //224.0.0.255

Và để xem trong ffplay, qua IPv6:

ffmpeg -re -i -f sap sap xep: // [ff0e :: 1: 2: 3: 4]

bộ giải mã

Cú pháp cho url SAP được cung cấp cho demuxer là:

nhựa cây://[ ] [: ]

địa chỉ là địa chỉ phát đa hướng để lắng nghe thông báo, nếu bị bỏ qua, là địa chỉ mặc định
224.2.127.254 (sap.mcast.net) được sử dụng. cổng là cổng được lắng nghe, 9875 nếu
bỏ qua.

Các demuxer lắng nghe các thông báo về địa chỉ và cổng đã cho. Một khi một
đã nhận được thông báo, nó sẽ cố gắng nhận luồng cụ thể đó.

Các dòng lệnh ví dụ theo sau.

Để phát lại luồng đầu tiên được thông báo trên địa chỉ phát đa hướng SAP thông thường:

ffplay sap: //

Để phát lại luồng đầu tiên được thông báo trên một địa chỉ phát đa hướng IPv6 SAP mặc định:

ffplay sap: // [ff0e :: 2: 7ffe]

sctp
Giao thức truyền điều khiển luồng.

Cú pháp URL được chấp nhận là:

sctp: // : [? ]

Giao thức chấp nhận các tùy chọn sau:

nghe
Nếu được đặt thành bất kỳ giá trị nào, hãy lắng nghe kết nối đến. Kết nối đi được thực hiện bởi
mặc định.

max_stream
Đặt số lượng luồng tối đa. Theo mặc định, không có giới hạn nào được thiết lập.

srtp
Giao thức truyền tải thời gian thực an toàn.

Các tùy chọn được chấp nhận là:

srtp_in_suite
srtp_out_suite
Chọn bộ mã hóa đầu vào và đầu ra.

Các giá trị được hỗ trợ:

AES_CM_128_HMAC_SHA1_80
SRTP_AES128_CM_HMAC_SHA1_80
AES_CM_128_HMAC_SHA1_32
SRTP_AES128_CM_HMAC_SHA1_32
srtp_in_params
srtp_out_params
Đặt các thông số mã hóa đầu vào và đầu ra, được thể hiện bằng mã hóa base64
biểu diễn của một khối nhị phân. 16 byte đầu tiên của khối nhị phân này được sử dụng làm
khóa chính, 14 byte sau được sử dụng làm muối chính.

hồ sơ con
Hầu như trích xuất một phân đoạn của một tệp hoặc một luồng khác. Luồng cơ bản phải là
có thể tìm kiếm được.

Các tùy chọn được chấp nhận:

Bắt đầu
Khoảng bù bắt đầu của phân đoạn được trích xuất, tính bằng byte.

cuối Phần bù cuối của phân đoạn được trích xuất, tính bằng byte.

Ví dụ:

Trích xuất một chương từ tệp DVD VOB (các khu vực bắt đầu và kết thúc được lấy từ bên ngoài và
nhân với 2048):

subfile ,, start, 153391104, end, 268142592 ,,: / media / dvd / VIDEO_TS / VTS_08_1.VOB

Phát tệp AVI trực tiếp từ kho lưu trữ TAR:

subfile ,, start, 183241728, end, 366490624 ,,: archive.tar

tcp
Giao thức điều khiển đường truyền.

Cú pháp bắt buộc cho url TCP là:

tcp: // : [? ]

lựa chọn chứa danh sách các tùy chọn & -separated của biểu mẫu chính=val.

Sau đây là danh sách các tùy chọn được hỗ trợ.

nghe =1 | 0
Nghe kết nối đến. Giá trị mặc định là 0.

thời gian chờ =micro giây
Đặt thời gian chờ lỗi tăng, được biểu thị bằng micro giây.

Tùy chọn này chỉ phù hợp trong chế độ đọc: nếu không có dữ liệu nào đến trong hơn thời gian này
khoảng thời gian, lỗi nâng cao.

nghe_timeout =mili giây
Đặt thời gian chờ nghe, được biểu thị bằng mili giây.

Ví dụ sau đây cho thấy cách thiết lập kết nối TCP lắng nghe với ffmpeg, Đó là
sau đó được truy cập bằng ffplay:

ffmpeg -i -NS tcp: // : ?nghe
ffplay tcp: // :

tls
Bảo mật lớp truyền tải (TLS) / Lớp cổng bảo mật (SSL)

Cú pháp bắt buộc cho url TLS / SSL là:

tls: // : [? ]

Các tham số sau có thể được đặt thông qua các tùy chọn dòng lệnh (hoặc trong mã thông qua "AVOption" s):

ca_file, cafile =tên tập tin
Tệp chứa các chứng chỉ gốc của tổ chức phát hành chứng chỉ (CA) để được coi là đáng tin cậy. Nếu như
thư viện TLS được liên kết chứa mặc định có thể không cần chỉ định cho
xác minh để hoạt động, nhưng không phải tất cả các thư viện và thiết lập đều có cài đặt mặc định.
tệp phải ở định dạng OpenSSL PEM.

tls_verify =1 | 0
Nếu được bật, hãy cố gắng xác minh đồng nghiệp mà chúng tôi đang giao tiếp. Lưu ý, nếu sử dụng
OpenSSL, điều này hiện chỉ đảm bảo rằng chứng chỉ ngang hàng được ký bởi một trong các
chứng chỉ gốc trong cơ sở dữ liệu CA, nhưng nó không xác thực rằng
chứng chỉ thực sự khớp với tên máy chủ mà chúng tôi đang cố gắng kết nối. (Với GnuTLS,
tên máy chủ cũng được xác thực.)

Điều này bị tắt theo mặc định vì nó yêu cầu cơ sở dữ liệu CA được cung cấp bởi
người gọi trong nhiều trường hợp.

chứng chỉ_file, cert =tên tập tin
Tệp có chứa chứng chỉ để sử dụng trong quá trình bắt tay với ngang hàng. (Khi nào
hoạt động như máy chủ, ở chế độ lắng nghe, điều này thường được đồng nghiệp yêu cầu nhiều hơn, trong khi
chứng chỉ ứng dụng khách chỉ được ủy quyền trong các thiết lập nhất định.)

tài liệu quan trọng, phím =tên tập tin
Tệp chứa khóa riêng tư cho chứng chỉ.

nghe =1 | 0
Nếu được bật, hãy lắng nghe các kết nối trên cổng được cung cấp và đảm nhận vai trò máy chủ trong
cái bắt tay thay vì vai trò khách hàng.

Các dòng lệnh ví dụ:

Để tạo máy chủ TLS / SSL phục vụ luồng đầu vào.

ffmpeg -i -NS tls: // : ? lắng nghe & cert = & key =

Để phát lại luồng từ máy chủ TLS / SSL bằng ffplay:

ffplay tls: // :

udp
Giao thức Datagram của Người dùng.

Cú pháp bắt buộc cho một URL UDP là:

udp: // : [? ]

lựa chọn chứa danh sách các tùy chọn & -separated của biểu mẫu chính=val.

Trong trường hợp luồng được bật trên hệ thống, một bộ đệm tròn được sử dụng để lưu trữ
dữ liệu đến, cho phép một trong những giảm mất dữ liệu do ghi đè bộ đệm ổ cắm UDP.
Sản phẩm Fifo_sizeoverrun_nonfatal các tùy chọn liên quan đến vùng đệm này.

Sau đây là danh sách các tùy chọn được hỗ trợ.

buffer_size =kích thước
Đặt kích thước bộ đệm ổ cắm tối đa UDP tính bằng byte. Điều này được sử dụng để đặt
nhận hoặc gửi kích thước bộ đệm, tùy thuộc vào ổ cắm được sử dụng để làm gì. Mặc định là
64KB. Xem thêm Fifo_size.

localport =cổng
Ghi đè cổng UDP cục bộ để liên kết với.

localaddr =địa chỉ
Chọn địa chỉ IP cục bộ. Điều này rất hữu ích, ví dụ: nếu gửi multicast và máy chủ có
nhiều giao diện, nơi người dùng có thể chọn giao diện để gửi
xác định địa chỉ IP của giao diện đó.

pkt_size =kích thước
Đặt kích thước tính bằng byte của gói UDP.

tái sử dụng =1 | 0
Cho phép hoặc không cho phép sử dụng lại ổ cắm UDP một cách rõ ràng.

ttl =ttl
Đặt thời gian thành giá trị trực tiếp (chỉ dành cho phát đa hướng).

kết nối =1 | 0
Khởi tạo ổ cắm UDP bằng "connect ()". Trong trường hợp này, địa chỉ đích
không thể thay đổi bằng ff_udp_set_remote_url sau này. Nếu địa chỉ đích không phải là
đã biết ngay từ đầu, tùy chọn này cũng có thể được chỉ định trong ff_udp_set_remote_url. Cái này
cho phép tìm ra địa chỉ nguồn cho các gói với getsockname và làm cho
ghi trả về bằng AVERROR (ECONNREFUSED) nếu nhận được "điểm đến không thể truy cập".
Đối với việc nhận, điều này mang lại lợi ích của việc chỉ nhận các gói từ
địa chỉ / cổng ngang hàng.

nguồn =địa chỉ[,địa chỉ]
Chỉ nhận các gói được gửi đến nhóm phát đa hướng từ một trong các IP người gửi được chỉ định
địa chỉ.

khối =địa chỉ[,địa chỉ]
Bỏ qua các gói được gửi đến nhóm phát đa hướng từ các địa chỉ IP của người gửi đã chỉ định.

Fifo_size =các đơn vị
Đặt kích thước bộ đệm tròn nhận UDP, được biểu thị bằng một số gói có kích thước
trên 188 byte. Nếu không được chỉ định, mặc định là 7 * 4096.

overrun_nonfatal =1 | 0
Sống sót trong trường hợp UDP nhận được tràn bộ đệm tròn. Giá trị mặc định là 0.

thời gian chờ =micro giây
Đặt thời gian chờ lỗi tăng, được biểu thị bằng micro giây.

Tùy chọn này chỉ phù hợp trong chế độ đọc: nếu không có dữ liệu nào đến trong hơn thời gian này
khoảng thời gian, lỗi nâng cao.

phát sóng =1 | 0
Cho phép hoặc không cho phép phát UDP một cách rõ ràng.

Xin lưu ý rằng tính năng phát sóng có thể không hoạt động bình thường trên các mạng đang có bão phát sóng
sự bảo vệ.

Các ví dụ

· Sử dụng ffmpeg để truyền trực tuyến qua UDP tới một điểm cuối từ xa:

ffmpeg -i -NS udp: // :

· Sử dụng ffmpeg phát trực tiếp ở định dạng mpegts qua UDP bằng cách sử dụng 188 gói UDP có kích thước, sử dụng
bộ đệm đầu vào lớn:

ffmpeg -i -f mpegts udp: // : ? pkt_size = 188 & buffer_size = 65535

· Sử dụng ffmpeg để nhận qua UDP từ một điểm cuối từ xa:

ffmpeg -i udp: // [ ]: ...

unix
Ổ cắm cục bộ Unix

Cú pháp bắt buộc cho URL ổ cắm Unix là:

unix: //

Các tham số sau có thể được đặt thông qua các tùy chọn dòng lệnh (hoặc trong mã thông qua "AVOption" s):

thời gian chờ
Thời gian chờ tính bằng mili giây.

nghe
Tạo ổ cắm Unix ở chế độ lắng nghe.

THIẾT BỊ LỰA CHỌN


Thư viện libavdevice cung cấp giao diện giống như libavformat. Cụ thể là một đầu vào
thiết bị được coi như một demuxer và một thiết bị đầu ra giống như một muxer và giao diện
và các tùy chọn thiết bị chung đều giống nhau do libavformat cung cấp (xem các định dạng ffmpeg
hướng dẫn sử dụng).

Ngoài ra, mỗi thiết bị đầu vào hoặc đầu ra có thể hỗ trợ cái gọi là tùy chọn riêng tư,
cụ thể cho thành phần đó.

Các tùy chọn có thể được thiết lập bằng cách chỉ định -tùy chọn giá trị trong các công cụ FFmpeg hoặc bằng cách thiết lập
giá trị rõ ràng trong các tùy chọn "AVFormatContext" của thiết bị hoặc sử dụng libavutil / opt.h API
để sử dụng có lập trình.

ĐẦU VÀO THIẾT BỊ


Thiết bị đầu vào là các phần tử được định cấu hình trong FFmpeg cho phép truy cập dữ liệu đến
từ một thiết bị đa phương tiện được gắn vào hệ thống của bạn.

Khi bạn định cấu hình bản dựng FFmpeg của mình, tất cả các thiết bị đầu vào được hỗ trợ sẽ được bật bởi
vỡ nợ. Bạn có thể liệt kê tất cả những cái có sẵn bằng cách sử dụng tùy chọn cấu hình "--list-indv".

Bạn có thể tắt tất cả các thiết bị đầu vào bằng cách sử dụng tùy chọn định cấu hình "--disable-coevs" và
bật một cách chọn lọc thiết bị đầu vào bằng cách sử dụng tùy chọn "--enable-britv =ĐỘC QUYỀN", hoặc bạn có thể
vô hiệu hóa một thiết bị đầu vào cụ thể bằng cách sử dụng tùy chọn "--disable-britv =ĐỘC QUYỀN".

Tùy chọn "-devices" của các công cụ ff * sẽ hiển thị danh sách các thiết bị đầu vào được hỗ trợ.

Dưới đây là mô tả về các thiết bị đầu vào hiện có sẵn.

trỗi dậy
Thiết bị đầu vào ALSA (Advanced Linux Sound Architecture).

Để bật thiết bị đầu vào này trong khi cấu hình, bạn cần cài đặt libasound trên
hệ thống.

Thiết bị này cho phép chụp từ thiết bị ALSA. Tên của thiết bị cần chụp phải
là định danh thẻ ALSA.

Mã định danh ALSA có cú pháp:

hw: [, [, ]]

nơi KHỔNG LỒPHỤ KIỆN các thành phần là tùy chọn.

Ba đối số (theo thứ tự: CARD,KHỔNG LỒ,PHỤ KIỆN) chỉ định số thẻ hoặc mã định danh, thiết bị
số và số thiết bị con (-1 có nghĩa là bất kỳ).

Để xem danh sách các thẻ hiện được hệ thống của bạn nhận dạng, hãy kiểm tra tệp
/ proc / asound / card/ proc / asound / devices.

Ví dụ để chụp với ffmpeg từ thiết bị ALSA có id thẻ 0, bạn có thể chạy
chỉ huy:

ffmpeg -f alsa -i hw: 0 alsaout.wav

Để biết thêm thông tin, hãy xem:http://www.alsa-project.org/alsa-doc/alsa-lib/pcm.html>

Các lựa chọn

tỷ lệ mẫu
Đặt tốc độ lấy mẫu tính bằng Hz. Mặc định là 48000.

kênh
Đặt số lượng kênh. Mặc định là 2.

sự bào chữa
Thiết bị đầu vào AVFoundation.

AVFoundation là khung hiện tại được Apple khuyến nghị để phát trực tuyến trên OSX> =
10.7 cũng như trên iOS. Khung QTKit cũ hơn đã được đánh dấu là không dùng nữa kể từ OSX
phiên bản 10.7.

Tên tệp đầu vào phải được cung cấp theo cú pháp sau:

-i "[[VIDEO]: [AUDIO]]"

Mục nhập đầu tiên chọn đầu vào video trong khi mục sau chọn đầu vào âm thanh. Các
luồng phải được chỉ định bằng tên thiết bị hoặc chỉ mục thiết bị như được hiển thị bởi thiết bị
danh sách. Ngoài ra, thiết bị đầu vào video và / hoặc âm thanh có thể được chọn theo chỉ mục bằng cách sử dụng

B <-video_device_index E CHỈ SỐ >

và / hoặc

B <-audio_device_index E CHỈ SỐ >

, ghi đè bất kỳ tên thiết bị hoặc chỉ mục nào được cung cấp trong tên tệp đầu vào.

Tất cả các thiết bị hiện có có thể được liệt kê bằng cách sử dụng -list_devices đúng, liệt kê tất cả thiết bị
tên và các chỉ số tương ứng.

Có hai bí danh tên thiết bị:

"vỡ nợ"
Chọn thiết bị mặc định AVFoundation của loại tương ứng.

"không ai"
Không ghi lại loại phương tiện tương ứng. Điều này tương đương với việc chỉ định một sản phẩm trống
tên thiết bị hoặc chỉ mục.

Các lựa chọn

AVFoundation hỗ trợ các tùy chọn sau:

-list_devices
Nếu được đặt thành true, danh sách tất cả các thiết bị đầu vào khả dụng sẽ hiển thị tất cả thiết bị
tên và chỉ số.

-video_device_index
Chỉ định thiết bị video theo chỉ mục của nó. Ghi đè bất cứ thứ gì được cung cấp trong tên tệp đầu vào.

-audio_device_index
Chỉ định thiết bị âm thanh theo chỉ mục của nó. Ghi đè bất kỳ thứ gì được cung cấp trong tên tệp đầu vào.

-pixel_format
Yêu cầu thiết bị video sử dụng định dạng pixel cụ thể. Nếu định dạng được chỉ định là
không được hỗ trợ, danh sách các định dạng có sẵn được đưa ra và định dạng đầu tiên trong danh sách này là
được sử dụng thay thế. Các định dạng pixel có sẵn là: "monob, rgb555be, rgb555le, rgb565be,
rgb565le, rgb24, bgr24, 0rgb, bgr0, 0bgr, rgb0,
bgr48be, uyvy422, yuva444p, yuva444p16le, yuv444p, yuv422p16, yuv422p10, yuv444p10,
yuv420p, nv12, yuyv422, xám "

-tỷ lệ khung hình
Đặt tốc độ khung hình thu hút. Mặc định là "ntsc", tương ứng với tốc độ khung hình là
"30000/1001".

-kích thước video
Đặt kích thước khung hình video.

-capture_cursor
Chụp con trỏ chuột. Mặc định là 0.

-capture_mouse_clicks
Ghi lại các lần nhấp chuột trên màn hình. Mặc định là 0.

Các ví dụ

· In danh sách các thiết bị được hỗ trợ AVFoundation và thoát:

$ ffmpeg -f avfoundation -list_devices true -i ""

· Ghi video từ thiết bị video 0 và âm thanh từ thiết bị âm thanh 0 vào out.avi:

$ ffmpeg -f avfoundation -i "0: 0" out.avi

· Ghi video từ thiết bị video 2 và âm thanh từ thiết bị âm thanh 1 vào out.avi:

$ ffmpeg -f avfoundation -video_device_index 2 -i ": 1" out.avi

· Quay video từ thiết bị video mặc định của hệ thống bằng cách sử dụng định dạng pixel bgr0 và thực hiện
không ghi bất kỳ âm thanh nào vào out.avi:

$ ffmpeg -f avfoundation -pixel_format bgr0 -i "default: none" out.avi

bktr
Thiết bị đầu vào video BSD.

Các lựa chọn

Framerate
Đặt tốc độ khung hình.

kích thước video
Đặt kích thước khung hình video. Mặc định là "vga".

Tiêu chuẩn
Các giá trị có sẵn là:

làm bạn
ntsc
hết
bạn thân
lòng bàn tay
ntscj

decklink
Thiết bị đầu vào decklink cung cấp khả năng bắt cho các thiết bị Blackmagic DeckLink.

Để kích hoạt thiết bị đầu vào này, bạn cần có SDK Blackmagic DeckLink và bạn cần
định cấu hình bằng "--extra-cflags" và "--extra-ldflags" thích hợp. Trên Windows, bạn
cần chạy các tệp IDL thông qua mở rộng.

DeckLink rất kén các định dạng mà nó hỗ trợ. Định dạng pixel là uyvy422 hoặc v210,
tốc độ khung hình và kích thước video phải được xác định cho thiết bị của bạn với -list_formats 1. Âm thanh
tốc độ lấy mẫu luôn là 48 kHz và số kênh có thể là 2, 8 hoặc 16.

Các lựa chọn

danh sách_thiết bị
Nếu được đặt thành đúng, in danh sách các thiết bị và thoát. Mặc định là sai.

danh sách_formats
Nếu được đặt thành đúng, in danh sách các định dạng được hỗ trợ và thoát. Mặc định là sai.

bm_v210
Nếu được đặt thành 1, video được quay ở 10 bit v210 thay vì uyvy422. Không phải tất cả Blackmagic
thiết bị hỗ trợ tùy chọn này.

Các ví dụ

· Liệt kê các thiết bị đầu vào:

ffmpeg -f liên kết boong -list_devices 1 -i giả

· Liệt kê các định dạng được hỗ trợ:

ffmpeg -f decklink -list_formats 1 -i 'Intensity Pro'

· Quay video clip ở 1080i50 (định dạng 11):

ffmpeg -f decklink -i 'Intensity Pro @ 11' -acodec copy -vcodec copy output.avi

· Quay video clip ở 1080i50 10 bit:

ffmpeg -bm_v210 1 -f decklink -i 'UltraStudio Mini Recorder @ 11' -acodec copy -vcodec copy output.avi

dshow
Thiết bị đầu vào Windows DirectShow.

Hỗ trợ DirectShow được bật khi FFmpeg được xây dựng với dự án mingw-w64. Hiện tại
chỉ các thiết bị âm thanh và video được hỗ trợ.

Nhiều thiết bị có thể được mở dưới dạng đầu vào riêng biệt, nhưng chúng cũng có thể được mở trên cùng một
đầu vào, điều này sẽ cải thiện tính đồng bộ giữa chúng.

Tên đầu vào phải có định dạng:

= [: = ]

Ở đâu LOẠI có thể là một trong hai âm thanh or videoTÊN là tên của thiết bị hoặc thay thế
Tên..

Các lựa chọn

Nếu không có tùy chọn nào được chỉ định, các giá trị mặc định của thiết bị sẽ được sử dụng. Nếu thiết bị không
hỗ trợ các tùy chọn được yêu cầu, nó sẽ không mở được.

kích thước video
Đặt kích thước video trong video đã quay.

Framerate
Đặt tốc độ khung hình trong video đã quay.

tỷ lệ mẫu
Đặt tốc độ lấy mẫu (tính bằng Hz) của âm thanh thu được.

cỡ mẫu
Đặt kích thước mẫu (tính bằng bit) của âm thanh thu được.

kênh
Đặt số lượng kênh trong âm thanh thu được.

danh sách_thiết bị
Nếu được đặt thành đúng, in danh sách các thiết bị và thoát.

danh sách_options
Nếu được đặt thành đúng, in danh sách các tùy chọn của thiết bị đã chọn và thoát.

số_thiết_bị_video
Đặt số thiết bị video cho các thiết bị có cùng tên (bắt đầu từ 0, mặc định là 0).

số_thiết_bị_âm thanh
Đặt số thiết bị âm thanh cho các thiết bị có cùng tên (bắt đầu từ 0, mặc định là 0).

pixel_format
Chọn định dạng pixel sẽ được DirectShow sử dụng. Điều này chỉ có thể được đặt khi video
codec không được đặt hoặc được đặt thành rawvideo.

kích thước âm thanh_buffer_size
Đặt kích thước bộ đệm của thiết bị âm thanh tính bằng mili giây (có thể ảnh hưởng trực tiếp đến độ trễ,
tùy thuộc vào thiết bị). Mặc định sử dụng kích thước bộ đệm mặc định của thiết bị âm thanh
(thường là một số bội số của 500ms). Đặt giá trị này quá thấp có thể làm giảm chất lượng
màn biểu diễn. Xem thêm
<http://msdn.microsoft.com/en-us/library/windows/desktop/dd377582(v = so với 85) .aspx>

tên_pin_video
Chọn ghim quay video để sử dụng theo tên hoặc tên thay thế.

tên_pin_âm thanh
Chọn ghim ghi âm để sử dụng theo tên hoặc tên thay thế.

crossbar_video_input_pin_number
Chọn số pin đầu vào video cho thiết bị thanh ngang. Điều này sẽ được chuyển đến thanh ngang
chân đầu ra Bộ giải mã video của thiết bị. Lưu ý rằng việc thay đổi giá trị này có thể ảnh hưởng đến tương lai
lệnh gọi (đặt mặc định mới) cho đến khi khởi động lại hệ thống.

crossbar_audio_input_pin_number
Chọn số pin đầu vào âm thanh cho thiết bị thanh ngang. Điều này sẽ được chuyển đến thanh ngang
chân đầu ra Bộ giải mã âm thanh của thiết bị. Lưu ý rằng việc thay đổi giá trị này có thể ảnh hưởng đến tương lai
lệnh gọi (đặt mặc định mới) cho đến khi khởi động lại hệ thống.

show_video_device_dialog
Nếu được đặt thành đúng, trước khi bắt đầu chụp, bật lên một hộp thoại hiển thị cho người dùng cuối,
cho phép họ thay đổi các thuộc tính và cấu hình bộ lọc video theo cách thủ công. Ghi chú
đối với các thiết bị có thanh ngang, đôi khi có thể cần điều chỉnh các giá trị trong hộp thoại này để
chuyển đổi giữa tốc độ khung hình đầu vào PAL (25 khung hình / giây) và NTSC (29.97), kích thước, xen kẽ,
v.v ... Việc thay đổi các giá trị này có thể kích hoạt các tốc độ quét / tốc độ khung hình khác nhau và tránh
thanh màu xanh lục ở dưới cùng, dòng quét nhấp nháy, v.v. Lưu ý rằng với một số thiết bị,
việc thay đổi các thuộc tính này cũng có thể ảnh hưởng đến các lệnh gọi trong tương lai (đặt giá trị mặc định mới) cho đến khi
khởi động lại hệ thống xảy ra.

show_audio_device_dialog
Nếu được đặt thành đúng, trước khi bắt đầu chụp, bật lên một hộp thoại hiển thị cho người dùng cuối,
cho phép họ thay đổi các thuộc tính và cấu hình bộ lọc âm thanh theo cách thủ công.

show_video_crossbar_connection_dialog
Nếu được đặt thành đúng, trước khi bắt đầu chụp, bật lên một hộp thoại hiển thị cho người dùng cuối,
cho phép họ sửa đổi thủ công định tuyến ghim của thanh ngang khi nó mở một thiết bị video.

show_audio_crossbar_connection_dialog
Nếu được đặt thành đúng, trước khi bắt đầu chụp, bật lên một hộp thoại hiển thị cho người dùng cuối,
cho phép họ sửa đổi thủ công định tuyến ghim của thanh ngang khi nó mở một thiết bị âm thanh.

show_analog_tv_tuner_dialog
Nếu được đặt thành đúng, trước khi bắt đầu chụp, bật lên một hộp thoại hiển thị cho người dùng cuối,
cho phép họ sửa đổi các kênh và tần số TV theo cách thủ công.

show_analog_tv_tuner_audio_dialog
Nếu được đặt thành đúng, trước khi bắt đầu chụp, bật lên một hộp thoại hiển thị cho người dùng cuối,
cho phép họ sửa đổi âm thanh TV theo cách thủ công (như đơn âm so với âm thanh nổi, Ngôn ngữ A, B hoặc C).

âm thanh_device_load
Tải thiết bị lọc ghi âm từ tệp thay vì tìm kiếm theo tên. Nó có thể
cũng tải các thông số bổ sung, nếu bộ lọc hỗ trợ tuần tự hóa
thuộc tính để. Để sử dụng điều này, một nguồn thu âm thanh phải được chỉ định, nhưng nó có thể được
bất cứ thứ gì thậm chí là giả mạo.

audio_device_save
Lưu thiết bị bộ lọc thu âm thanh đang được sử dụng và các thông số của nó (nếu bộ lọc
hỗ trợ nó) vào một tệp. Nếu tệp có cùng tên tồn tại, tệp đó sẽ bị ghi đè.

video_device_load
Tải thiết bị lọc quay video từ tệp thay vì tìm kiếm theo tên. Nó có thể
cũng tải các thông số bổ sung, nếu bộ lọc hỗ trợ tuần tự hóa
thuộc tính để. Để sử dụng điều này, một nguồn quay video phải được chỉ định, nhưng nó có thể được
bất cứ thứ gì thậm chí là giả mạo.

video_device_save
Lưu thiết bị bộ lọc quay video đang được sử dụng và các thông số của nó (nếu bộ lọc
hỗ trợ nó) vào một tệp. Nếu tệp có cùng tên tồn tại, tệp đó sẽ bị ghi đè.

Các ví dụ

· In danh sách các thiết bị được hỗ trợ DirectShow và thoát:

$ ffmpeg -list_devices đúng -f dshow -i giả

· Mở thiết bị video Máy Chụp Hình:

$ ffmpeg -f dshow -i video = "Máy ảnh"

· Mở thiết bị video thứ hai với tên Máy Chụp Hình:

$ ffmpeg -f dshow -video_device_number 1 -i video = "Máy ảnh"

· Mở thiết bị video Máy Chụp Hình và thiết bị âm thanh Microphone:

$ ffmpeg -f dshow -i video = "Máy ảnh": audio = "Micrô"

· In danh sách các tùy chọn được hỗ trợ trong thiết bị đã chọn và thoát:

$ ffmpeg -list_options true -f dshow -i video = "Máy ảnh"

· Chỉ định tên pin để chụp theo tên hoặc tên thay thế, chỉ định thiết bị thay thế
tên:

$ ffmpeg -f dshow -audio_pin_name "Audio Out" -video_pin_name 2 -i video=video="@device_pnp_\\?\pci#ven_1a0a&dev_6200&subsys_62021461&rev_01#4&e2c7dd6&0&00e1#{65e8773d-8f56-11d0-a3b9-00a0c9223196}\{ca465100-deb0-4d59-818f-8c477184adf6}":audio="Microphone"

· Định cấu hình thiết bị xà ngang, chỉ định chân xà ngang, cho phép người dùng điều chỉnh video
nắm bắt các thuộc tính khi khởi động:

$ ffmpeg -f dshow -show_video_device_dialog true -crossbar_video_input_pin_number 0
-crossbar_audio_input_pin_number 3 -i video = "AVerMedia BDA Analog Capture": audio = "AVerMedia BDA Analog Capture"

dv1394
Thiết bị đầu vào Linux DV 1394.

Các lựa chọn

Framerate
Đặt tốc độ khung hình. Mặc định là 25.

Tiêu chuẩn
Các giá trị có sẵn là:

làm bạn
ntsc

Giá trị mặc định là "ntsc".

fbdev
Thiết bị đầu vào bộ đệm khung Linux.

Bộ đệm khung Linux là một lớp trừu tượng độc lập với phần cứng đồ họa để hiển thị đồ họa
trên màn hình máy tính, thường là trên bảng điều khiển. Nó được truy cập thông qua một thiết bị tệp
nút, thường là / dev / fb0.

Để biết thêm thông tin chi tiết, hãy đọc tệp Documentation / fb / framebuffer.txt được bao gồm trong
cây nguồn Linux.

Xem thêmhttp://linux-fbdev.sourceforge.net/>, và fbset(1).

Để ghi từ thiết bị bộ đệm khung / dev / fb0 với ffmpeg:

ffmpeg -f fbdev -framerate 10 -i / dev / fb0 out.avi

Bạn có thể chụp một ảnh màn hình bằng lệnh:

ffmpeg -f fbdev -framerate 1 -i / dev / fb0 -frames: v 1 screenshot.jpeg

Các lựa chọn

Framerate
Đặt tốc độ khung hình. Mặc định là 25.

gdigrab
Thiết bị chụp ảnh màn hình dựa trên Win32 GDI.

Thiết bị này cho phép bạn chụp một vùng của màn hình trên Windows.

Có hai tùy chọn cho tên tệp đầu vào:

máy tính để bàn

or

tiêu đề =

Tùy chọn đầu tiên sẽ chụp toàn bộ màn hình hoặc một vùng cố định của màn hình. Các
tùy chọn thứ hai thay vào đó sẽ nắm bắt nội dung của một cửa sổ, bất kể
vị trí trên màn hình.

Ví dụ: để lấy toàn bộ màn hình bằng cách sử dụng ffmpeg:

ffmpeg -f gdigrab -framerate 6 -i desktop out.mpg

Lấy vùng 640x480 ở vị trí "10,20":

ffmpeg -f gdigrab -framerate 6 -offset_x 10 -offset_y 20 -video_size vga -i desktop out.mpg

Lấy nội dung của cửa sổ có tên "Máy tính"

ffmpeg -f gdigrab -framerate 6 -i title = Máy tính out.mpg

Các lựa chọn

vẽ_mouse
Chỉ định xem có vẽ con trỏ chuột hay không. Sử dụng giá trị 0 để không vẽ con trỏ.
Giá trị mặc định là 1.

Framerate
Đặt tốc độ khung hình thu hút. Giá trị mặc định là "ntsc", tương ứng với tốc độ khung hình là
"30000/1001".

show_khu vực
Hiển thị vùng bị chộp trên màn hình.

If show_khu vực được chỉ định bằng 1, khi đó vùng lấy sẽ được chỉ định trên
màn. Với tùy chọn này, thật dễ dàng để biết những gì đang được lấy nếu chỉ một phần
của màn hình được nắm lấy.

Lưu ý rằng show_khu vực không tương thích với việc lấy nội dung của một cửa sổ.

Ví dụ:

ffmpeg -f gdigrab -show_khu vực 1 -framerate 6 -video_size cif -offset_x 10 -offset_y 20 -i desktop out.mpg

kích thước video
Đặt kích thước khung hình video. Mặc định là chụp toàn màn hình nếu máy tính để bàn is
đã chọn hoặc kích thước cửa sổ đầy đủ nếu title = window_title được chọn.

offset_x
Khi chụp một khu vực với kích thước video, đặt khoảng cách từ cạnh trái của
màn hình hoặc màn hình nền.

Lưu ý rằng tính toán bù đắp từ góc trên cùng bên trái của màn hình chính trên
Các cửa sổ. Nếu bạn có một màn hình được đặt ở bên trái của màn hình chính, bạn
sẽ cần phải sử dụng một phủ định offset_x giá trị để di chuyển vùng tới màn hình đó.

offset_y
Khi chụp một khu vực với kích thước video, đặt khoảng cách từ cạnh trên cùng của
màn hình hoặc màn hình nền.

Lưu ý rằng tính toán bù đắp từ góc trên cùng bên trái của màn hình chính trên
Các cửa sổ. Nếu bạn đặt một màn hình phía trên màn hình chính, bạn sẽ cần phải
sử dụng một tiêu cực offset_y giá trị để di chuyển vùng tới màn hình đó.

vâng61883
Thiết bị đầu vào FireWire DV / HDV sử dụng libiec61883.

Để kích hoạt thiết bị đầu vào này, bạn cần cài đặt libiec61883, Libiw1394 và libavc1394 trên
hệ thống của bạn. Sử dụng tùy chọn cấu hình "--enable-libiec61883" để biên dịch với thiết bị
kích hoạt.

Thiết bị chụp iec61883 hỗ trợ chụp từ thiết bị video được kết nối qua IEEE1394
(FireWire), sử dụng libiec61883 và ngăn xếp Linux FireWire mới (juju). Đây là mặc định
Phương thức nhập DV / HDV trong Linux Kernel 2.6.37 trở lên, vì ngăn xếp FireWire cũ là
loại bỏ.

Chỉ định cổng FireWire được sử dụng làm tệp đầu vào hoặc "tự động" để chọn cổng đầu tiên
kết nối.

Các lựa chọn

dvtype
Ghi đè tự động phát hiện DV / HDV. Điều này chỉ nên được sử dụng nếu tính năng tự động phát hiện không
làm việc, hoặc nếu việc sử dụng một loại thiết bị khác bị cấm. Điều trị một DV
thiết bị làm HDV (hoặc ngược lại) sẽ không hoạt động và dẫn đến hành vi không xác định. Các
giá trị tự động, dvhdv được hỗ trợ.

đĩa đệm
Đặt kích thước bộ đệm tối đa cho dữ liệu đến, trong khung. Đối với DV, đây là một chính xác
giá trị. Đối với HDV, nó không phải là khung chính xác, vì HDV không có một kích thước khung cố định.

dvguid
Chọn thiết bị chụp bằng cách chỉ định nó là GUID. Chụp sẽ chỉ được thực hiện
từ thiết bị được chỉ định và không thành công nếu không tìm thấy thiết bị nào có GUID đã cho. Đây là
hữu ích để chọn đầu vào nếu nhiều thiết bị được kết nối cùng một lúc. Nhìn
tại / sys / bus / firewire / devices để tìm hiểu các GUID.

Các ví dụ

· Lấy và hiển thị đầu vào của thiết bị FireWire DV / HDV.

ffplay -f iec61883 -i tự động

· Lấy và ghi lại đầu vào của thiết bị FireWire DV / HDV, sử dụng bộ đệm gói 100000
các gói nếu nguồn là HDV.

ffmpeg -f iec61883 -i auto -hdvbuffer 100000 out.mpg

jack
JACK thiết bị đầu vào.

Để bật thiết bị đầu vào này trong khi cấu hình, bạn cần cài đặt libjack trên
hệ thống.

Thiết bị đầu vào JACK tạo ra một hoặc nhiều ứng dụng khách có thể ghi JACK, một ứng dụng cho mỗi kênh âm thanh,
với tên tên khách hàng:đầu vào_N, Nơi tên khách hàng là tên được cung cấp bởi ứng dụng,
N là một số xác định kênh. Mỗi ứng dụng khách có thể ghi sẽ gửi
đã thu thập dữ liệu vào thiết bị đầu vào FFmpeg.

Khi bạn đã tạo một hoặc nhiều ứng dụng khách có thể đọc được JACK, bạn cần kết nối chúng với một
hoặc nhiều ứng dụng khách có thể ghi JACK.

Để kết nối hoặc ngắt kết nối các ứng dụng khách JACK, bạn có thể sử dụng jack_connectjack_ngắt kết nối
hoặc thực hiện thông qua giao diện đồ họa, chẳng hạn như với qjackctl.

Để liệt kê các máy khách JACK và các thuộc tính của chúng, bạn có thể gọi lệnh jack_lsp.

Làm theo một ví dụ cho thấy cách nắm bắt một ứng dụng khách có thể đọc được JACK với ffmpeg.

# Tạo một ứng dụng khách có thể ghi JACK với tên "ffmpeg".
$ ffmpeg -f jack -i ffmpeg -y out.wav

# Khởi động ứng dụng khách có thể đọc jack_metro mẫu.
$ jack_metro -b 120 -d 0.2 -f 4000

# Liệt kê các máy khách JACK hiện tại.
$ jack_lsp -c
system: capture_1
system: capture_2
hệ thống: phát lại_1
hệ thống: phát lại_2
ffmpeg: input_1
tàu điện ngầm: 120_bpm

# Kết nối tàu điện ngầm với ứng dụng khách có thể ghi ffmpeg.
$ jack_connect metro: 120_bpm ffmpeg: input_1

Để biết thêm thông tin, hãy đọc:http://jackaudio.org/>

Các lựa chọn

kênh
Đặt số lượng kênh. Mặc định là 2.

lavfi
Thiết bị ảo đầu vào Libavfilter.

Thiết bị đầu vào này đọc dữ liệu từ các tấm đệm đầu ra đang mở của bộ lọc libavfilter.

Đối với mỗi đầu ra mở đồ thị bộ lọc, thiết bị đầu vào sẽ tạo một luồng tương ứng
được ánh xạ tới đầu ra đã tạo. Hiện tại, chỉ dữ liệu video được hỗ trợ. Các
đồ thị bộ lọc được chỉ định thông qua tùy chọn đồ thị.

Các lựa chọn

đồ thị
Chỉ định đồ thị bộ lọc để sử dụng làm đầu vào. Mỗi đầu ra mở video phải được gắn nhãn
chuỗi duy nhất của biểu mẫu "outN", ở đâu N là một số bắt đầu từ 0 tương ứng với
luồng đầu vào được ánh xạ do thiết bị tạo ra. Đầu ra không có nhãn đầu tiên là
tự động được gán cho nhãn "out0", nhưng tất cả các nhãn khác cần được chỉ định
một cách rõ ràng.

Hậu tố "+ subcc" có thể được thêm vào nhãn đầu ra để tạo luồng bổ sung với
các gói phụ đề chi tiết được đính kèm với đầu ra đó (thử nghiệm; chỉ dành cho EIA-608 /
CEA-708 hiện tại). Các luồng phụ được tạo sau tất cả các luồng thông thường, trong
thứ tự của luồng tương ứng. Ví dụ: nếu có "out19 + subcc",
"out7 + subcc" và lên đến "out42", luồng # 43 là subcc cho luồng # 7 và luồng # 44
là subcc cho luồng # 19.

Nếu không được chỉ định, hãy đặt mặc định cho tên tệp được chỉ định cho thiết bị đầu vào.

tập tin đồ thị
Đặt tên tệp của sơ đồ lọc để được đọc và gửi đến các bộ lọc khác. Cú pháp
của đồ thị bộ lọc giống với đồ thị được chỉ định bởi tùy chọn đồ thị.

máy ghi chép
Bán đồ thị sang stderr.

Các ví dụ

· Tạo luồng video màu và phát lại bằng ffplay:

ffplay -f lavfi -graph "color = c = pink [out0]" dummy

· Như ví dụ trước, nhưng sử dụng tên tệp để chỉ định mô tả đồ thị, và
bỏ qua nhãn "out0":

ffplay -f lavfi color = c = màu hồng

· Tạo ba nguồn đã lọc thử nghiệm video khác nhau và phát chúng:

ffplay -f lavfi -graph "testsrc [out0]; testsrc, hflip [out1]; testsrc, negate [out2]" test3

· Đọc luồng âm thanh từ tệp bằng nguồn amovie và phát lại bằng ffplay:

ffplay -f lavfi "amovie = test.wav"

· Đọc một luồng âm thanh và một luồng video và phát lại với ffplay:

ffplay -f lavfi "movie = test.avi [out0]; amovie = test.wav [out1]"

· Kết xuất khung đã giải mã thành hình ảnh và phụ đề chi tiết vào một tệp (thử nghiệm):

ffmpeg -f lavfi -i "movie = test.ts [out0 + subcc]" -map v frame% 08d.png -map s -c copy -f rawvideo subcc.bin

libcdio
Thiết bị đầu vào Audio-CD dựa trên libcdio.

Để bật thiết bị đầu vào này trong khi cấu hình, bạn cần cài đặt libcdio trên
hệ thống. Nó yêu cầu tùy chọn cấu hình "--enable-libcdio".

Thiết bị này cho phép phát và lấy từ Audio-CD.

Ví dụ để sao chép với ffmpeg toàn bộ Audio-CD trong / dev / sr0, bạn có thể chạy lệnh:

ffmpeg -f libcdio -i / dev / sr0 cd.wav

Các lựa chọn

tốc độ
Đặt tốc độ đọc ổ đĩa. Giá trị mặc định là 0.

Tốc độ được chỉ định đơn vị tốc độ CD-ROM. Tốc độ được thiết lập thông qua libcdio
Hàm "cdio_cddap_speed_set". Trên nhiều ổ CD-ROM, chỉ định một giá trị quá lớn
sẽ dẫn đến việc sử dụng tốc độ nhanh nhất.

chế độ hoang tưởng
Đặt cờ chế độ khôi phục hoang tưởng. Nó chấp nhận một trong các giá trị sau:

vô hiệu hóa
xác minh
trùng lặp
không bao giờ bỏ qua
Full

Giá trị mặc định là vô hiệu hóa.

Để biết thêm thông tin về các chế độ khôi phục có sẵn, hãy tham khảo dự án hoang tưởng
tài liệu hướng dẫn.

libdc1394
Thiết bị đầu vào IIDC1394, dựa trên libdc1394 và Libd1394.

Yêu cầu tùy chọn cấu hình "--enable-libdc1394".

mở cửa
Thiết bị đầu vào OpenAL cung cấp khả năng thu âm thanh trên tất cả các hệ thống với OpenAL 1.1 đang hoạt động
thực hiện.

Để bật thiết bị đầu vào này trong khi cấu hình, bạn cần có tiêu đề và thư viện OpenAL
được cài đặt trên hệ thống của bạn và cần định cấu hình FFmpeg bằng "--enable-openal".

Tiêu đề và thư viện OpenAL phải được cung cấp như một phần của quá trình triển khai OpenAL của bạn, hoặc
dưới dạng tải xuống bổ sung (SDK). Tùy thuộc vào cài đặt của bạn, bạn có thể cần chỉ định
cờ bổ sung thông qua "--extra-cflags" và "--extra-ldflags" để cho phép xây dựng
hệ thống định vị tiêu đề và thư viện OpenAL.

Danh sách triển khai OpenAL không đầy đủ như sau:

Sáng tạo
Việc triển khai Windows chính thức, cung cấp khả năng tăng tốc phần cứng với hỗ trợ
dự phòng thiết bị và phần mềm. Nhìn thấyhttp://openal.org/>.

Công khai Mềm mại
Triển khai phần mềm di động, mã nguồn mở (LGPL). Bao gồm phụ trợ cho hầu hết
các API âm thanh phổ biến trên hệ điều hành Windows, Linux, Solaris và BSD. Nhìn thấy
<http://kcat.strangesoft.net/openal.html>.

Apple
OpenAL là một phần của Core Audio, giao diện chính thức của Mac OS X Audio. Nhìn thấy
<http://developer.apple.com/technologies/mac/audio-and-video.html>

Thiết bị này cho phép một người chụp từ một thiết bị đầu vào âm thanh được xử lý thông qua OpenAL.

Bạn cần chỉ định tên của thiết bị để chụp trong tên tệp được cung cấp. Nếu
chuỗi trống được cung cấp, thiết bị sẽ tự động chọn thiết bị mặc định. Bạn có thể
lấy danh sách các thiết bị được hỗ trợ bằng cách sử dụng tùy chọn danh sách_thiết bị.

Các lựa chọn

kênh
Đặt số lượng kênh trong âm thanh thu được. Chỉ các giá trị 1 (monaural) và 2
(âm thanh nổi) hiện đang được hỗ trợ. Mặc định là 2.

cỡ mẫu
Đặt kích thước mẫu (tính bằng bit) của âm thanh thu được. Chỉ các giá trị 816 đang
hiện được hỗ trợ. Mặc định là 16.

tỷ lệ mẫu
Đặt tốc độ lấy mẫu (tính bằng Hz) của âm thanh thu được. Mặc định là 44.1k.

danh sách_thiết bị
Nếu được đặt thành đúng, in danh sách các thiết bị và thoát. Mặc định là sai.

Các ví dụ

In danh sách các thiết bị được hỗ trợ OpenAL và thoát:

$ ffmpeg -list_devices true -f openal -i dummy out.ogg

Chụp từ thiết bị OpenAL DR-BT101 thông qua PulseAudio:

$ ffmpeg -f openal -i 'DR-BT101 qua PulseAudio' out.ogg

Chụp từ thiết bị mặc định (lưu ý chuỗi trống '' làm tên tệp):

$ ffmpeg -f openal -i '' out.ogg

Chụp từ hai thiết bị đồng thời, ghi vào hai tệp khác nhau, trong cùng một
ffmpeg chỉ huy:

$ ffmpeg -f openal -i 'DR-BT101 qua PulseAudio' out1.ogg -f openal -i 'ALSA Default' out2.ogg

Lưu ý: không phải tất cả các triển khai OpenAL đều hỗ trợ nhiều chụp đồng thời - hãy thử
OpenAL Soft mới nhất nếu cách trên không hoạt động.

Trung tâm
Mở thiết bị đầu vào Hệ thống âm thanh.

Tên tệp cần cung cấp cho thiết bị đầu vào là nút thiết bị đại diện cho đầu vào OSS
thiết bị và thường được đặt thành / dev / dsp.

Ví dụ để lấy từ / dev / dsp sử dụng ffmpeg sử dụng lệnh:

ffmpeg -f oss -i / dev / dsp /tmp/oss.wav

Để biết thêm thông tin về PMNM, xem:http://manuals.opensound.com/usersguide/dsp.html>

Các lựa chọn

tỷ lệ mẫu
Đặt tốc độ lấy mẫu tính bằng Hz. Mặc định là 48000.

kênh
Đặt số lượng kênh. Mặc định là 2.

xung
Thiết bị đầu vào PulseAudio.

Để kích hoạt thiết bị đầu ra này, bạn cần cấu hình FFmpeg bằng "--enable-libpulse".

Tên tệp cần cung cấp cho thiết bị đầu vào là thiết bị nguồn hoặc chuỗi "mặc định"

Để liệt kê các thiết bị nguồn PulseAudio và thuộc tính của chúng, bạn có thể gọi lệnh
hiệp ước nguồn.

Thông tin thêm về PulseAudio có thể được tìm thấy trênhttp://www.pulseaudio.org>.

Các lựa chọn

máy chủ
Kết nối với một máy chủ PulseAudio cụ thể, được chỉ định bởi một địa chỉ IP. Máy chủ mặc định
được sử dụng khi không được cung cấp.

tên
Chỉ định tên ứng dụng mà PulseAudio sẽ sử dụng khi hiển thị các ứng dụng khách đang hoạt động, bằng cách
mặc định nó là chuỗi "LIBAVFORMAT_IDENT".

tên_luồng
Chỉ định tên luồng mà PulseAudio sẽ sử dụng khi hiển thị các luồng đang hoạt động, theo mặc định
là "kỷ lục".

tỷ lệ mẫu
Chỉ định tốc độ lấy mẫu theo Hz, theo mặc định 48kHz được sử dụng.

kênh
Chỉ định các kênh đang sử dụng, theo mặc định 2 (âm thanh nổi) được đặt.

kích thước khung hình
Chỉ định số byte trên mỗi khung hình, theo mặc định, nó được đặt thành 1024.

phân mảnh
Chỉ định đoạn đệm tối thiểu trong PulseAudio, nó sẽ ảnh hưởng đến âm thanh
độ trễ. Theo mặc định, nó không được đặt.

Đồng hồ treo tường
Đặt PTS ban đầu bằng thời gian hiện tại. Mặc định là 1.

Các ví dụ

Ghi một luồng từ thiết bị mặc định:

ffmpeg -f xung -i mặc định /tmp/pulse.wav

qtkit
Thiết bị đầu vào QTKit.

Tên tệp được chuyển làm đầu vào được phân tích cú pháp để chứa tên thiết bị hoặc chỉ mục. Các
chỉ mục thiết bị cũng có thể được cung cấp bằng cách sử dụng -video_device_index. Một chỉ mục thiết bị nhất định sẽ
ghi đè bất kỳ tên thiết bị nhất định nào. Nếu thiết bị mong muốn chỉ bao gồm các số, hãy sử dụng
-video_device_index để xác định nó. Thiết bị mặc định sẽ được chọn nếu một chuỗi trống
hoặc tên thiết bị "mặc định" được đưa ra. Các thiết bị hiện có có thể được liệt kê bằng cách sử dụng
-list_thiết bị.

ffmpeg -f qtkit -i "0" out.mpg

ffmpeg -f qtkit -video_device_index 0 -i "" out.mpg

ffmpeg -f qtkit -i "default" out.mpg

ffmpeg -f qtkit -list_devices true -i ""

Các lựa chọn

tỷ lệ khung hình
Đặt tỷ lệ khung. Mặc định là 30.

danh sách_thiết bị
Nếu được đặt thành "true", hãy in danh sách thiết bị và thoát. Mặc định là "false".

video_device_index
Chọn thiết bị video theo chỉ mục cho các thiết bị có cùng tên (bắt đầu từ 0).

sndio
thiết bị đầu vào sndio.

Để bật thiết bị đầu vào này trong khi cấu hình, bạn cần cài đặt libsndio trên
hệ thống.

Tên tệp cần cung cấp cho thiết bị đầu vào là nút thiết bị đại diện cho sndio
thiết bị đầu vào và thường được đặt thành / dev / audio0.

Ví dụ để lấy từ / dev / audio0 sử dụng ffmpeg sử dụng lệnh:

ffmpeg -f sndio -i / dev / audio0 /tmp/oss.wav

Các lựa chọn

tỷ lệ mẫu
Đặt tốc độ lấy mẫu tính bằng Hz. Mặc định là 48000.

kênh
Đặt số lượng kênh. Mặc định là 2.

video4linux2, v4l2
Thiết bị video đầu vào Video4Linux2.

"v4l2" có thể được sử dụng làm bí danh cho "video4linux2".

Nếu FFmpeg được xây dựng với hỗ trợ v4l-utils (bằng cách sử dụng cấu hình "--enable-libv4l2"
tùy chọn), có thể sử dụng nó với tùy chọn thiết bị đầu vào "-use_libv4l2".

Tên của thiết bị cần lấy là một nút thiết bị tệp, thông thường các hệ thống Linux có xu hướng
tự động tạo các nút như vậy khi thiết bị (ví dụ: webcam USB) được cắm vào
hệ thống và có tên thuộc loại / dev / videoN, Nơi N là một số liên quan đến
thiết bị.

Thiết bị Video4Linux2 thường hỗ trợ một số chiều rộngxcao kích thước và tốc độ khung hình.
Bạn có thể kiểm tra cái nào được hỗ trợ bằng cách sử dụng -list_formats tất cả các cho các thiết bị Video4Linux2. Một vài
các thiết bị, chẳng hạn như thẻ TV, hỗ trợ một hoặc nhiều tiêu chuẩn. Có thể liệt kê tất cả các
các tiêu chuẩn được hỗ trợ sử dụng -list_tiêu chuẩn tất cả các.

Cơ sở thời gian cho các dấu thời gian là 1 micro giây. Tùy thuộc vào phiên bản hạt nhân và
cấu hình, các dấu thời gian có thể bắt nguồn từ đồng hồ thời gian thực (nguồn gốc tại Unix
Epoch) hoặc đồng hồ monotonic (nguồn gốc thường ở thời điểm khởi động, không bị ảnh hưởng bởi NTP hoặc thủ công
thay đổi đối với đồng hồ). Các -dấu thời gian abs or -t abs tùy chọn có thể được sử dụng để buộc
chuyển đổi thành đồng hồ thời gian thực.

Một số ví dụ sử dụng của thiết bị video4linux2 với ffmpegffplay:

· Liệt kê các định dạng được hỗ trợ cho thiết bị video4linux2:

ffplay -f video4linux2 -list_formats all / dev / video0

· Lấy và hiển thị đầu vào của thiết bị video4linux2:

ffplay -f video4linux2 -framerate 30 -video_size hd720 / dev / video0

· Lấy và ghi lại đầu vào của thiết bị video4linux2, giữ nguyên tốc độ khung hình và kích thước
trước đó đã đặt:

ffmpeg -f video4linux2 -input_format mjpeg -i / dev / video0 out.mpeg

Để biết thêm thông tin về Video4Linux, hãy kiểm trahttp://linuxtv.org/>.

Các lựa chọn

Tiêu chuẩn
Thiết lập tiêu chuẩn. Phải là tên của tiêu chuẩn được hỗ trợ. Để có được một danh sách
các tiêu chuẩn được hỗ trợ, sử dụng danh sách_tiêu chuẩn tùy chọn.

kênh
Đặt số kênh đầu vào. Mặc định thành -1, có nghĩa là sử dụng
kênh.

kích thước video
Đặt kích thước khung hình video. Đối số phải là một chuỗi trong biểu mẫu Chiều rộngxChiều cao hoặc một
chữ viết tắt kích thước hợp lệ.

pixel_format
Chọn định dạng pixel (chỉ hợp lệ cho đầu vào video thô).

định dạng đầu vào
Đặt định dạng pixel ưa thích (cho video thô) hoặc tên codec. Tùy chọn này cho phép
một để chọn định dạng đầu vào, khi có một số định dạng.

Framerate
Đặt tốc độ khung hình video ưa thích.

danh sách_formats
Liệt kê các định dạng có sẵn (định dạng pixel được hỗ trợ, codec và kích thước khung hình) và thoát.

Các giá trị có sẵn là:

tất cả các Hiển thị tất cả các định dạng có sẵn (nén và không nén).

nguyên Chỉ hiển thị các định dạng video thô (không nén).

nén
Chỉ hiển thị các định dạng nén.

danh sách_tiêu chuẩn
Liệt kê các tiêu chuẩn được hỗ trợ và thoát.

Các giá trị có sẵn là:

tất cả các Hiển thị tất cả các tiêu chuẩn được hỗ trợ.

dấu thời gian, ts
Đặt loại dấu thời gian cho các khung được chụp.

Các giá trị có sẵn là:

mặc định
Sử dụng dấu thời gian từ hạt nhân.

abs Sử dụng dấu thời gian tuyệt đối (đồng hồ treo tường).

mono2abs
Buộc chuyển đổi từ đơn âm sang dấu thời gian tuyệt đối.

Giá trị mặc định là "default".

sử dụng_libv4l2
Sử dụng các hàm chuyển đổi libv4l2 (v4l-utils). Mặc định là 0.

vfwcap
Thiết bị đầu vào chụp VfW (Video dành cho Windows).

Tên tệp được chuyển làm đầu vào là số trình điều khiển chụp, nằm trong khoảng từ 0 đến 9. Bạn có thể
sử dụng "danh sách" làm tên tệp để in danh sách trình điều khiển. Mọi tên tệp khác sẽ được giải thích
như số thiết bị 0.

Các lựa chọn

kích thước video
Đặt kích thước khung hình video.

Framerate
Đặt tốc độ khung hình thu hút. Giá trị mặc định là "ntsc", tương ứng với tốc độ khung hình là
"30000/1001".

x11lấy
Thiết bị đầu vào video X11.

Để bật thiết bị đầu vào này trong khi cấu hình, bạn cần cài đặt libxcb trên hệ thống của mình.
Nó sẽ tự động được phát hiện trong quá trình cấu hình.

Ngoài ra, tùy chọn cấu hình --enable-x11grab tồn tại cho người dùng Xlib cũ.

Thiết bị này cho phép người ta chụp một vùng của màn hình X11.

Tên tệp được chuyển làm đầu vào có cú pháp:

[ ]: . [+ , ]

hostname:số_màn hình.số_màn hình chỉ định tên hiển thị X11 của màn hình để lấy
từ. hostname có thể được bỏ qua và mặc định là "localhost". Biến môi trường
DISPLAY chứa tên hiển thị mặc định.

x_offsety_offset chỉ định các khoảng lệch của khu vực được nắm lấy đối với phía trên bên trái
viền màn hình X11. Họ mặc định là 0.

Kiểm tra tài liệu X11 (ví dụ: người đàn ông X) để biết thêm thông tin chi tiết.

Sử dụng xdpyinfo chương trình để nhận thông tin cơ bản về các thuộc tính của X11 của bạn
hiển thị (ví dụ: grep cho "tên" hoặc "kích thước").

Ví dụ để lấy từ : 0.0 sử dụng ffmpeg:

ffmpeg -f x11grab -framerate 25 -video_size cif -i: 0.0 out.mpg

Lấy ở vị trí "10,20":

ffmpeg -f x11grab -framerate 25 -video_size cif -i: 0.0 + 10,20 out.mpg

Các lựa chọn

vẽ_mouse
Chỉ định xem có vẽ con trỏ chuột hay không. Giá trị 0 chỉ định không vẽ
con trỏ. Giá trị mặc định là 1.

theo_chuột
Làm cho khu vực bị tóm theo con chuột. Đối số có thể được "căn giữa" hoặc một số
pixels PIXELS.

Khi nó được chỉ định bằng "center", vùng lấy theo con trỏ chuột
và giữ con trỏ ở tâm vùng; nếu không, khu vực chỉ theo sau khi
con trỏ chuột chạm vào bên trong PIXELS (lớn hơn XNUMX) đến rìa của vùng.

Ví dụ:

ffmpeg -f x11grab -follow_mouse center -framerate 25 -video_size cif -i: 0.0 out.mpg

Để chỉ theo dõi khi con trỏ chuột đạt đến cạnh trong vòng 100 pixel:

ffmpeg -f x11grab -follow_mouse 100 -framerate 25 -video_size cif -i: 0.0 out.mpg

Framerate
Đặt tốc độ khung hình thu hút. Giá trị mặc định là "ntsc", tương ứng với tốc độ khung hình là
"30000/1001".

show_khu vực
Hiển thị vùng bị chộp trên màn hình.

If show_khu vực được chỉ định bằng 1, khi đó vùng lấy sẽ được chỉ định trên
màn. Với tùy chọn này, thật dễ dàng để biết những gì đang được lấy nếu chỉ một phần
của màn hình được nắm lấy.

vùng_biên giới
Đặt độ dày đường viền vùng nếu -show_khu vực 1 Được sử dụng. Phạm vi là 1 đến 128 và
mặc định là 3 (chỉ x11grab dựa trên XCB).

Ví dụ:

ffmpeg -f x11grab -show_region 1 -framerate 25 -video_size cif -i: 0.0 + 10,20 out.mpg

Với theo_chuột:

ffmpeg -f x11grab -follow_mouse centered -show_region 1 -framerate 25 -video_size cif -i: 0.0 out.mpg

kích thước video
Đặt kích thước khung hình video. Giá trị mặc định là "vga".

sử dụng_shm
Sử dụng phần mở rộng MIT-SHM cho bộ nhớ dùng chung. Giá trị mặc định là 1. Nó có thể cần thiết
để tắt nó cho các màn hình từ xa (chỉ dành cho x11grab cũ).

lấy_x lấy_y AVTùy chọn

Cú pháp là:

-grab_x -grab_y

Đặt tọa độ vùng lấy. Chúng được thể hiện dưới dạng độ lệch từ góc trên cùng bên trái
của cửa sổ X11. Giá trị mặc định là 0.

CÂU TRẢ LỜI LỰA CHỌN


Trình lấy mẫu lại âm thanh hỗ trợ các tùy chọn được đặt tên sau.

Các tùy chọn có thể được thiết lập bằng cách chỉ định -tùy chọn giá trị trong các công cụ FFmpeg, tùy chọn=giá trị cho
bộ lọc aresample, bằng cách đặt giá trị một cách rõ ràng trong các tùy chọn "SwrContext" hoặc sử dụng
libavutil / opt.h API để sử dụng có lập trình.

tôi, in_channel_count
Đặt số lượng kênh đầu vào. Giá trị mặc định là 0. Đặt giá trị này không
bắt buộc nếu bố cục kênh tương ứng in_channel_layout được thiết lập.

ồ, out_channel_count
Đặt số lượng kênh đầu ra. Giá trị mặc định là 0. Đặt giá trị này không
bắt buộc nếu bố cục kênh tương ứng out_channel_layout được thiết lập.

ừm, đã sử dụng_channel_count
Đặt số lượng kênh đầu vào đã sử dụng. Giá trị mặc định là 0. Tùy chọn này chỉ được sử dụng
để ánh xạ lại đặc biệt.

là, in_sample_rate
Đặt tỷ lệ mẫu đầu vào. Giá trị mặc định là 0.

osr, out_sample_rate
Đặt tỷ lệ mẫu đầu ra. Giá trị mặc định là 0.

là, in_sample_fmt
Chỉ định định dạng mẫu đầu vào. Nó được đặt theo mặc định là "không có".

osf, out_sample_fmt
Chỉ định định dạng mẫu đầu ra. Nó được đặt theo mặc định là "không có".

tsf, nội_mẫu_fmt
Đặt định dạng mẫu nội bộ. Giá trị mặc định là "không". Điều này sẽ tự động
được chọn khi nó không được đặt rõ ràng.

icl, in_channel_layout
ocl, out_channel_layout
Đặt bố cục kênh đầu vào / đầu ra.

Xem các Kênh Bố trí phần in các ffmpeg-utils(1) nhãn hiệu cho cú pháp bắt buộc.

khe hở, center_mix_level
Đặt mức trộn trung tâm. Nó là một giá trị được biểu thị bằng deciBel và phải nằm trong
khoảng [-32,32].

quay lén, bao quanh_mix_level
Đặt mức trộn âm thanh vòm. Nó là một giá trị được biểu thị bằng deciBel và phải nằm trong
khoảng [-32,32].

lfe_mix_level
Đặt hỗn hợp LFE thành mức không LFE. Nó được sử dụng khi có đầu vào LFE nhưng không có LFE
đầu ra. Nó là một giá trị được biểu thị bằng deciBel và phải nằm trong khoảng [-32,32].

rmvol, rematrix_volume
Đặt âm lượng rematrix. Giá trị mặc định là 1.0.

rematrix_maxval
Đặt giá trị đầu ra tối đa cho kết nối lại. Điều này có thể được sử dụng để ngăn chặn việc cắt xén vs.
ngăn chặn giảm âm lượng Giá trị 1.0 ngăn cản việc cắt xén.

cờ, swr_flags
Đặt cờ được sử dụng bởi bộ chuyển đổi. Giá trị mặc định là 0.

Nó hỗ trợ các cờ riêng lẻ sau:

res buộc lấy lại mẫu, cờ này buộc sử dụng lấy lại mẫu ngay cả khi đầu vào và
tỷ lệ mẫu đầu ra phù hợp.

hoà sắc_scale
Đặt thang độ hòa sắc. Giá trị mặc định là 1.

hoà sắc_phương thức
Đặt phương pháp hòa sắc. Giá trị mặc định là 0.

Các giá trị được hỗ trợ:

hình chữ nhật
chọn hòa sắc hình chữ nhật

hình tam giác
chọn hòa sắc tam giác

Tam_hp
chọn hòa sắc tam giác với đường chuyền cao

hát nhép
chọn hòa sắc tạo hình tiếng ồn lipshitz

shibata
chọn hòa sắc tạo hình tiếng ồn shibata

low_shibata
chọn hòa sắc tạo hình tiếng ồn shibata thấp

cao_shibata
chọn hòa sắc tạo hình tiếng ồn shibata cao

f_weighted
chọn hòa sắc định hình nhiễu có trọng số f

mod_e_weighted
chọn hòa sắc định hình nhiễu có trọng số điện tử đã sửa đổi

cải thiện_e_weighted
chọn hòa sắc định hình tiếng ồn có trọng số điện tử được cải thiện

người lấy mẫu lại
Đặt công cụ lấy mẫu lại. Giá trị mặc định là swr.

Các giá trị được hỗ trợ:

swr chọn Trình lấy mẫu lại SW gốc; tùy chọn bộ lọc độ chính xác và cheby không
áp dụng trong trường hợp này.

soxr
chọn SoX Resampler (nếu có); các tùy chọn bồi thường và bộ lọc
filter_size, phase_shift, filter_type & kaiser_beta, không áp dụng trong này
trường hợp.

kích thước bộ lọc
Chỉ đối với swr, hãy đặt kích thước bộ lọc lấy mẫu lại, giá trị mặc định là 32.

pha_shift
Chỉ đối với swr, hãy đặt dịch chuyển pha lấy mẫu lại, giá trị mặc định là 10 và phải nằm trong
khoảng [0,30].

tuyến tính
Sử dụng Nội suy tuyến tính nếu được đặt thành 1, giá trị mặc định là 0.

xẻ ra
Đặt tần số cắt (điểm swr: 6dB; điểm soxr: 0dB); phải là một giá trị thực
giữa 0 và 1. Giá trị mặc định là 0.97 với swr và 0.91 với soxr (với
tỷ lệ mẫu là 44100, bảo toàn toàn bộ dải âm thanh đến 20kHz).

chính xác
Chỉ đối với soxr, độ chính xác theo từng bit mà tín hiệu được lấy mẫu lại sẽ được tính toán.
Giá trị mặc định là 20 (với cách phối màu phù hợp, thích hợp cho một
độ sâu bit đích là 16) mang lại 'Chất lượng cao' của SoX; giá trị 28 mang lại cho SoX's
'Chất lượng rất cao'.

cheby
Chỉ đối với soxr, chọn không có cuộn băng thông (Chebyshev) và độ chính xác cao hơn
xấp xỉ cho các tỷ lệ 'không hợp lý'. Giá trị mặc định là 0.

không đồng bộ
Chỉ dành cho swr, đồng bộ hóa âm thanh 1 tham số đơn giản với dấu thời gian bằng cách sử dụng kéo, bóp,
điền và cắt tỉa. Đặt giá trị này thành 1 sẽ cho phép điền và cắt, lớn hơn
các giá trị đại diện cho số lượng tối đa trong các mẫu mà dữ liệu có thể được kéo dài hoặc
vắt trong mỗi giây. Giá trị mặc định là 0, do đó không có khoản bồi thường nào được áp dụng để thực hiện
các mẫu phù hợp với dấu thời gian âm thanh.

điểm đầu tiên
Chỉ đối với swr, giả sử pts đầu tiên phải là giá trị này. Đơn vị thời gian là 1 / mẫu
tỷ lệ. Điều này cho phép đệm / cắt khi bắt đầu luồng. Theo mặc định, không
giả định được thực hiện về pts dự kiến ​​của khung hình đầu tiên, do đó, không có phần đệm hoặc cắt xén
xong. Ví dụ: giá trị này có thể được đặt thành 0 để mở đầu bằng dấu lặng nếu
luồng âm thanh bắt đầu sau luồng video hoặc để cắt bất kỳ mẫu nào có điểm pts âm
do sự chậm trễ của bộ mã hóa.

min_comp
Chỉ đối với swr, hãy đặt chênh lệch tối thiểu giữa dấu thời gian và dữ liệu âm thanh (trong
giây) để kích hoạt kéo dài / ép / lấp đầy hoặc cắt bớt dữ liệu để tạo ra
khớp với các dấu thời gian. Mặc định là kéo dài / ép / làm đầy và cắt tỉa là
Vô hiệu hóa (min_comp = "FLT_MAX").

min_hard_comp
Chỉ đối với swr, hãy đặt chênh lệch tối thiểu giữa dấu thời gian và dữ liệu âm thanh (trong
giây) để kích hoạt thêm / bớt mẫu để làm cho nó khớp với dấu thời gian. Cái này
tùy chọn hiệu quả là một ngưỡng để chọn giữa cứng (cắt / lấp đầy) và mềm
(ép / căng) bù. Lưu ý rằng tất cả bồi thường bị vô hiệu hóa theo mặc định
thông qua min_comp. Giá trị mặc định là 0.1.

thời gian tính toán
Chỉ đối với swr, hãy đặt thời lượng (tính bằng giây) mà dữ liệu được kéo dài / ép chặt để thực hiện
nó khớp với dấu thời gian. Phải là giá trị float kép không âm, giá trị mặc định là
1.0.

max_soft_comp
Chỉ đối với swr, hãy đặt hệ số tối đa theo đó dữ liệu được kéo giãn / ép chặt để làm cho dữ liệu khớp
dấu thời gian. Phải là giá trị float kép không âm, giá trị mặc định là 0.

ma trận_encoding
Chọn mã hóa âm thanh nổi có ma trận.

Nó chấp nhận các giá trị sau:

không ai
không chọn

Dolby
chọn Dolby

dplii
chọn Dolby Pro Logic II

Giá trị mặc định là "không".

tuýt lọc
Chỉ đối với swr, hãy chọn loại bộ lọc lấy mẫu lại. Điều này chỉ ảnh hưởng đến hoạt động lấy mẫu lại.

Nó chấp nhận các giá trị sau:

khối
chọn khối

người da đen_nuttall
chọn Blackman Nuttall Windowed Sinc

kaiser
chọn Kaiser Windowed Sinc

kaiser_beta
Chỉ dành cho swr, hãy đặt giá trị Kaiser Window Beta. Phải là một số nguyên trong khoảng [2,16],
giá trị mặc định là 9.

đầu ra_sample_bits
Chỉ đối với swr, đặt số lượng bit mẫu đầu ra được sử dụng để phối màu. Phải là số nguyên
trong khoảng [0,64], giá trị mặc định là 0, có nghĩa là nó không được sử dụng.

NGƯỜI LỪA ĐẢO LỰA CHỌN


Trình điều chỉnh tỷ lệ video hỗ trợ các tùy chọn được đặt tên sau.

Các tùy chọn có thể được thiết lập bằng cách chỉ định -tùy chọn giá trị trong các công cụ FFmpeg. Để sử dụng có lập trình,
chúng có thể được đặt rõ ràng trong các tùy chọn "SwsContext" hoặc thông qua libavutil / opt.h API.

sws_flags
Đặt cờ tỷ lệ. Điều này cũng được sử dụng để thiết lập thuật toán chia tỷ lệ. Chỉ một chiếc duy nhất
thuật toán nên được chọn.

Nó chấp nhận các giá trị sau:

fast_song tuyến tính
Chọn thuật toán tỷ lệ song tuyến tính nhanh.

song tuyến tính
Chọn thuật toán tỷ lệ song tuyến tính.

lưỡng tính
Chọn thuật toán chia tỷ lệ bicubic.

thử nghiệm
Lựa chọn thuật toán chia tỷ lệ thử nghiệm.

hàng xóm
Chọn thuật toán thay đổi tỷ lệ láng giềng gần nhất.

khu vực
Chọn thuật toán thay đổi tỷ lệ khu vực tính trung bình.

nhị phân
Chọn thuật toán chia tỷ lệ lưỡng cực cho thành phần luma, song tuyến tính cho sắc độ
các thành phần.

gauss
Chọn thuật toán thay đổi tỷ lệ Gaussian.

chân thành
Chọn thuật toán thay đổi tỷ lệ sinc.

lanczos
Chọn thuật toán thay đổi tỷ lệ lanczos.

lươi gà
Chọn thuật toán thay đổi tỷ lệ đường trục bicubic tự nhiên.

print_info
Bật tính năng in / ghi nhật ký gỡ lỗi.

chính xác
Cho phép làm tròn chính xác.

đầy đủ sắc_int
Bật nội suy sắc độ đầy đủ.

đầy đủ sắc_inp
Chọn đầu vào sắc độ đầy đủ.

cắnxact
Bật đầu ra cắnxact.

srcw
Đặt chiều rộng nguồn.

xéo
Đặt chiều cao nguồn.

dstw
Đặt chiều rộng đích.

dsth
Đặt độ cao đích.

src_format
Đặt định dạng pixel nguồn (phải được biểu thị dưới dạng số nguyên).

dst_format
Đặt định dạng pixel đích (phải được biểu thị dưới dạng số nguyên).

src_range
Chọn dải nguồn.

dst_range
Chọn phạm vi đích.

thông số0, param1
Đặt thông số thuật toán chia tỷ lệ. Các giá trị được chỉ định là cụ thể của một số tỷ lệ
thuật toán và bị người khác bỏ qua. Các giá trị được chỉ định là số dấu phẩy động
các giá trị.

sws_dither
Đặt thuật toán phối màu. Chấp nhận một trong các giá trị sau. Giá trị mặc định là
tự động.

tự động
sự lựa chọn tự động

không ai
không hòa sắc

bayer
hòa sắc bayer

ed hòa sắc khuếch tán lỗi

a_điên
hòa sắc số học, dựa trên việc sử dụng phép cộng

x_điên
hòa sắc số học, dựa trên sử dụng xor (mẫu ngẫu nhiên hơn / ít rõ ràng hơn
a_điên).

bảng chữ cái
Đặt kết hợp alpha để sử dụng khi đầu vào có alpha nhưng đầu ra thì không.
Giá trị mặc định là không ai.

màu_màu đồng phục
Trộn thành một màu nền đồng nhất

bàn cờ
Trộn lên bàn cờ

không ai
Không pha trộn

LỌC GIỚI THIỆU


Lọc trong FFmpeg được kích hoạt thông qua thư viện libavfilter.

Trong libavfilter, một bộ lọc có thể có nhiều đầu vào và nhiều đầu ra. Để minh họa
chúng tôi xem xét sơ đồ lọc sau.

[chủ yếu]
đầu vào -> tách ---------------------> lớp phủ -> đầu ra
| ^
| [tmp] [lật] |
+ -----> cắt -> vflip ------- +

Sơ đồ bộ lọc này chia luồng đầu vào thành hai luồng, sau đó gửi một luồng qua
bộ lọc cắt xén và bộ lọc vflip, trước khi hợp nhất lại với luồng khác bằng cách
phủ nó lên trên. Bạn có thể sử dụng lệnh sau để đạt được điều này:

ffmpeg -i INPUT -vf "split [main] [tmp]; [tmp] crop = iw: ih / 2: 0: 0, vflip [flip]; [main] [flip] overlay = 0: H / 2" OUTPUT

Kết quả sẽ là nửa trên của video được phản chiếu với nửa dưới của
đầu ra video.

Các bộ lọc trong cùng một chuỗi tuyến tính được phân tách bằng dấu phẩy và các chuỗi tuyến tính riêng biệt của
các bộ lọc được phân tách bằng dấu chấm phẩy. Trong ví dụ của chúng tôi, crop, vflip nằm trong một chuỗi tuyến tính,
chiaphủ là riêng biệt trong khác. Các điểm mà các chuỗi tuyến tính tham gia là
được gắn nhãn bằng tên được đặt trong dấu ngoặc vuông. Trong ví dụ, bộ lọc tách tạo ra
hai đầu ra được liên kết với các nhãn [chủ yếu][tmp].

Luồng được gửi đến đầu ra thứ hai của chia, được gắn nhãn là [tmp], được xử lý thông qua
cây trồng bộ lọc, cắt bỏ phần nửa dưới của video, sau đó cắt theo chiều dọc
bị lật. Các phủ bộ lọc nhận đầu vào là đầu ra không thay đổi đầu tiên của bộ lọc tách
(được gắn nhãn là [chủ yếu]), và phủ lên nửa dưới của nó so với đầu ra được tạo ra bởi
crop, vflip chuỗi bộ lọc.

Một số bộ lọc nhận đầu vào một danh sách các tham số: chúng được chỉ định sau tên bộ lọc
và một dấu bằng, và được phân tách với nhau bằng dấu hai chấm.

Có tồn tại cái gọi là nguồn bộ lọc không có đầu vào âm thanh / video và bồn rửa
bộ lọc sẽ không có đầu ra âm thanh / video.

HÌNH ẢNH


Sản phẩm đồ thị2dot chương trình bao gồm trong FFmpeg công cụ thư mục có thể được sử dụng để phân tích cú pháp
mô tả đồ thị bộ lọc và đưa ra một biểu diễn văn bản tương ứng trong dấu chấm
ngôn ngữ.

Gọi lệnh:

đồ thị2dot -h

để xem cách sử dụng đồ thị2dot.

Sau đó, bạn có thể chuyển mô tả dấu chấm cho dot chương trình (từ bộ graphviz của
chương trình) và có được một biểu diễn đồ họa của đồ thị bộ lọc.

Ví dụ chuỗi lệnh:

tiếng vang | \
tools / graph2dot -o graph.tmp && \
dot -Tpng graph.tmp -o graph.png && \
hiển thị graph.png

có thể được sử dụng để tạo và hiển thị hình ảnh đại diện cho biểu đồ được mô tả bởi
GRAPH_DESCRIPTION dây. Lưu ý rằng chuỗi này phải là một biểu đồ hoàn chỉnh,
với các đầu vào và đầu ra của nó được xác định rõ ràng. Ví dụ: nếu dòng lệnh của bạn là
hình thức:

ffmpeg -i infile -vf scale = 640: 360 outfile

qua một vài thao tác đơn giản về GRAPH_DESCRIPTION chuỗi sẽ cần có dạng:

nullsrc, scale = 640: 360, nullsink

bạn cũng có thể cần đặt nullsrc các tham số và thêm một định dạng lọc để
mô phỏng một tệp đầu vào cụ thể.

LỌC ĐỊA LÝ MÔ TẢ


Đồ thị bộ lọc là một đồ thị có hướng gồm các bộ lọc được kết nối. Nó có thể chứa các chu kỳ, và ở đó
có thể là nhiều liên kết giữa một cặp bộ lọc. Mỗi liên kết có một bàn phím nhập ở một bên
kết nối nó với một bộ lọc mà từ đó nó lấy đầu vào và một bàn phím đầu ra ở bên kia
bên kết nối nó với một bộ lọc chấp nhận đầu ra của nó.

Mỗi bộ lọc trong một đồ thị bộ lọc là một phiên bản của một lớp bộ lọc được đăng ký trong
ứng dụng, xác định các tính năng và số lượng đầu vào và đầu ra của
lọc.

Bộ lọc không có miếng đệm đầu vào được gọi là "nguồn" và bộ lọc không có miếng đệm đầu ra là
được gọi là "bồn rửa".

Bộ lọc cú pháp
Một đồ thị bộ lọc có biểu diễn dạng văn bản, được công nhận bởi -bộ lọc/-vf/-af
-filter_complex tùy chọn trong ffmpeg-vf/-af in ffplayvà bởi
Hàm "avfilter_graph_parse_ptr ()" được xác định trong libavfilter / avfilter.h.

Chuỗi bộ lọc bao gồm một chuỗi các bộ lọc được kết nối, mỗi bộ lọc được kết nối với
trước đó trong trình tự. Chuỗi bộ lọc được biểu thị bằng danh sách "," - được phân tách
lọc mô tả.

Một đồ thị bộ lọc bao gồm một chuỗi các dãy bộ lọc. Một chuỗi các bộ lọc là
được đại diện bởi danh sách ";" - mô tả chuỗi bộ lọc được phân tách.

Bộ lọc được biểu thị bằng một chuỗi có dạng:
[trong_link_1] ... [trong_link_N]tên bộ lọc=đối số[out_link_1] ... [out_link_M]

tên bộ lọc là tên của lớp bộ lọc mà bộ lọc được mô tả là một thể hiện
của, và phải là tên của một trong các lớp bộ lọc được đăng ký trong chương trình. Các
tên của lớp bộ lọc được theo sau bởi một chuỗi "=đối số".

đối số là một chuỗi chứa các tham số được sử dụng để khởi tạo bộ lọc
ví dụ. Nó có thể có một trong hai dạng:

· A ':' - danh sách được phân tách của key = giá trị cặp.

· A ':' - danh sách được phân tách của giá trị. Trong trường hợp này, các phím được giả định là tùy chọn
tên theo thứ tự chúng được khai báo. Ví dụ: bộ lọc "mờ dần" khai báo ba tùy chọn trong
thứ tự này -- kiểu, khung bắt đầunb_frames. Sau đó, danh sách tham số trong: 0: 30 có nghĩa
đó là giá trị in được chỉ định cho tùy chọn kiểu, 0 đến khung bắt đầu30 đến
nb_frames.

· A ':' - danh sách tách biệt của trực tiếp hỗn hợp giá trị và dài key = giá trị cặp. Trực tiếp giá trị
phải đứng trước key = giá trị các cặp và tuân theo cùng một thứ tự ràng buộc của
điểm trước đó. Sau key = giá trị các cặp có thể được đặt theo bất kỳ thứ tự ưu tiên nào.

Nếu bản thân giá trị tùy chọn là một danh sách các mục (ví dụ: bộ lọc "định dạng" lấy một danh sách
định dạng pixel), các mục trong danh sách thường được phân tách bằng |.

Danh sách các đối số có thể được trích dẫn bằng ký tự ' làm dấu đầu và dấu kết thúc, và
nhân vật \ để thoát các ký tự trong văn bản được trích dẫn; nếu không thì đối số
chuỗi được coi là kết thúc khi ký tự đặc biệt tiếp theo (thuộc tập
[] = ;,) gặp phải.

Tên và các đối số của bộ lọc được đặt trước và theo sau bởi danh sách
liên kết các nhãn. Nhãn liên kết cho phép người ta đặt tên cho một liên kết và liên kết nó với đầu ra của bộ lọc
hoặc bảng nhập liệu. Các nhãn trước trong_link_1 hữu ích. Cảm ơn ! trong_link_N, được liên kết với bộ lọc
miếng đệm đầu vào, các nhãn sau out_link_1 hữu ích. Cảm ơn ! out_link_M, được liên kết với đầu ra
miếng đệm lót.

Khi hai nhãn liên kết có cùng tên được tìm thấy trong biểu đồ lọc, một liên kết giữa
bảng đầu vào và đầu ra tương ứng được tạo.

Nếu một bảng đầu ra không được gắn nhãn, nó được liên kết theo mặc định với đầu vào không có nhãn đầu tiên
pad của bộ lọc tiếp theo trong chuỗi bộ lọc. Ví dụ trong chuỗi bộ lọc

nullsrc, phân tách [L1], lớp phủ [L2], nullsink

phiên bản bộ lọc tách có hai miếng đệm đầu ra và phiên bản bộ lọc lớp phủ có hai đầu vào
miếng đệm lót. Vùng đầu ra đầu tiên của phần tách được gắn nhãn "L1", vùng đầu vào đầu tiên của lớp phủ là
được gắn nhãn "L2" và vùng phân tách đầu ra thứ hai được liên kết với vùng đầu vào thứ hai của
lớp phủ, cả hai đều không có nhãn.

Trong mô tả bộ lọc, nếu nhãn đầu vào của bộ lọc đầu tiên không được chỉ định, thì "in" là
giả định; nếu nhãn đầu ra của bộ lọc cuối cùng không được chỉ định, "out" được giả định.

Trong một chuỗi bộ lọc hoàn chỉnh, tất cả các miếng đệm đầu vào và đầu ra của bộ lọc không được dán nhãn phải
được kết nối. Đồ thị bộ lọc được coi là hợp lệ nếu tất cả các đầu vào và đầu ra của bộ lọc
tất cả các bộ lọc được kết nối.

Libavfilter sẽ tự động chèn tỉ lệ bộ lọc mà chuyển đổi định dạng là bắt buộc.
Có thể chỉ định cờ swscale cho những tỷ lệ được chèn tự động bằng cách
thêm trước "sws_flags =cờ; " vào mô tả đồ thị bộ lọc.

Đây là mô tả BNF về cú pháp đồ thị bộ lọc:

:: = chuỗi ký tự chữ và số và '_'
:: = "[" "]"
:: = [ ]
:: = chuỗi ký tự (có thể được trích dẫn)
:: = [ ] ["=" ] [ ]
:: = [, ]
:: = [sws_flags = ;] [; ]

Chú ý on bộ lọc thoát
Thành phần mô tả biểu đồ lọc đòi hỏi một số cấp độ thoát. Nhìn thấy các "Trích dẫn
trốn thoát " phần in các ffmpeg-utils(1) nhãn hiệu để biết thêm thông tin về
thủ tục thoát được sử dụng.

Thoát cấp đầu tiên ảnh hưởng đến nội dung của từng giá trị tùy chọn bộ lọc, có thể chứa
ký tự đặc biệt ":" được sử dụng để phân tách các giá trị hoặc một trong các ký tự thoát "\ '".

Thoát cấp thứ hai ảnh hưởng đến toàn bộ mô tả bộ lọc, có thể chứa
ký tự thoát "\ '" hoặc ký tự đặc biệt "[],;" được sử dụng bởi bộ lọc
sự miêu tả.

Cuối cùng, khi bạn chỉ định một biểu đồ lọc trên dòng lệnh shell, bạn cần thực hiện
cấp độ thứ ba thoát cho các ký tự đặc biệt của trình bao chứa trong nó.

Ví dụ: hãy coi chuỗi sau được nhúng vào bản vẽ lọc
Mô tả văn bản giá trị:

đây là một 'chuỗi': có thể chứa một hoặc nhiều ký tự đặc biệt

Chuỗi này chứa ký tự thoát đặc biệt "'" và ký tự đặc biệt ":", vì vậy
nó cần được thoát theo cách này:

text = đây là một \ 'string \' \: có thể chứa một hoặc nhiều ký tự đặc biệt

Cấp thoát thứ hai là bắt buộc khi nhúng mô tả bộ lọc trong
mô tả đồ thị bộ lọc, để thoát khỏi tất cả các ký tự đặc biệt của đồ thị bộ lọc. Như vậy
ví dụ trên trở thành:

drawtext = text = this is a \\\ 'string \\\' \\: có thể chứa một \, hoặc nhiều \, ký tự đặc biệt

(lưu ý rằng ngoài các ký tự đặc biệt thoát "\ '", còn có "," cần phải
trốn thoát).

Cuối cùng, cần thêm một mức thoát khi viết mô tả sơ đồ lọc
trong một lệnh shell, tùy thuộc vào các quy tắc thoát của shell được thông qua. Ví dụ,
giả sử rằng "\" là đặc biệt và cần được thoát bằng một "\" khác, chuỗi trước đó
cuối cùng sẽ dẫn đến:

-vf "drawtext = text = this is a \\\\\\ 'string \\\\\\\' \\\\: có thể chứa một \\ hoặc nhiều \\, các ký tự đặc biệt"

THỜI HẠN Chỉnh sửa


Một số bộ lọc hỗ trợ chung cho phép Lựa chọn. Đối với các bộ lọc hỗ trợ chỉnh sửa dòng thời gian,
tùy chọn này có thể được đặt thành một biểu thức được đánh giá trước khi gửi một khung đến
lọc. Nếu đánh giá khác XNUMX, bộ lọc sẽ được bật, nếu không thì khung
sẽ được gửi không thay đổi đến bộ lọc tiếp theo trong biểu đồ lọc.

Biểu thức chấp nhận các giá trị sau:

t dấu thời gian được biểu thị bằng giây, NAN nếu dấu thời gian đầu vào không xác định

n số thứ tự của khung đầu vào, bắt đầu từ 0

gửi vị trí trong tệp của khung đầu vào, NAN nếu không xác định

w
h chiều rộng và chiều cao của khung đầu vào nếu video

Ngoài ra, các bộ lọc này hỗ trợ một cho phép lệnh có thể được sử dụng để xác định lại
biểu hiện.

Giống như bất kỳ tùy chọn lọc nào khác, cho phép tùy chọn tuân theo các quy tắc tương tự.

Ví dụ: để bật bộ lọc mờ (người thông minh) từ 10 giây đến 3 phút, và a
đường cong bộ lọc bắt đầu từ 3 giây:

smartblur = enable = 'between (t, 10,3 * 60)',
Curve = enable = 'gte (t, 3)': preset = cross_process

AUDIO LỌC


Khi bạn định cấu hình bản dựng FFmpeg của mình, bạn có thể tắt bất kỳ bộ lọc hiện có nào bằng cách sử dụng
"--disable-filter". Đầu ra cấu hình sẽ hiển thị các bộ lọc âm thanh có trong
xây dựng.

Dưới đây là mô tả về các bộ lọc âm thanh hiện có sẵn.

vượt qua
Áp dụng giảm âm chéo từ một luồng âm thanh đầu vào cho một luồng âm thanh đầu vào khác. Cây thánh giá
mờ dần được áp dụng trong khoảng thời gian cụ thể gần cuối luồng đầu tiên.

Bộ lọc chấp nhận các tùy chọn sau:

nb_samples, ns
Chỉ định số lượng mẫu mà hiệu ứng mờ dần phải kéo dài. Cuối cùng
của hiệu ứng mờ dần âm thanh đầu vào đầu tiên sẽ hoàn toàn im lặng. Mặc định là
44100.

thời hạn, d
Chỉ định thời lượng của hiệu ứng mờ dần. Nhìn thấy các Thời gian thời gian phần in các
ffmpeg-utils(1) nhãn hiệu cho cú pháp được chấp nhận. Theo mặc định, thời lượng được xác định
by nb_samples. Nếu được đặt, tùy chọn này được sử dụng thay vì nb_samples.

chồng chéo lên nhau, o
Có nên kết thúc luồng đầu tiên trùng lặp với bắt đầu luồng thứ hai. Mặc định được bật.

đường cong1
Đặt đường cong cho quá trình chuyển đổi mờ dần cho luồng đầu tiên.

đường cong2
Đặt đường cong cho quá trình chuyển đổi mờ dần cho luồng thứ hai.

Để biết mô tả về các loại đường cong có sẵn, hãy xem đi xa mô tả bộ lọc.

Các ví dụ

· Làm mờ chéo từ đầu vào này sang đầu vào khác:

ffmpeg -i first.flac -i second.flac -filter_complex crossfade = d = 10: c1 = exp: c2 = exp output.flac

· Làm mờ chéo từ đầu vào này sang đầu vào khác nhưng không chồng chéo:

ffmpeg -i first.flac -i second.flac -filter_complex crossfade = d = 10: o = 0: c1 = exp: c2 = exp output.flac

một sự trì hoãn
Trì hoãn một hoặc nhiều kênh âm thanh.

Các mẫu trong kênh bị trễ được lấp đầy bởi sự im lặng.

Bộ lọc chấp nhận tùy chọn sau:

sự chậm trễ
Đặt danh sách độ trễ tính bằng mili giây cho mỗi kênh được phân tách bằng dấu '|'. Ít nhất một
độ trễ lớn hơn 0 nên được cung cấp. Sự chậm trễ không được sử dụng sẽ được bỏ qua một cách im lặng. Nếu như
số lần trễ nhất định nhỏ hơn số kênh mà tất cả các kênh còn lại sẽ
không bị trì hoãn.

Các ví dụ

· Trì hoãn kênh đầu tiên 1.5 giây, kênh thứ ba 0.5 giây và rời khỏi
kênh thứ hai (và bất kỳ kênh nào khác có thể có mặt) không thay đổi.

adelay = 1500 | 0 | 500

tiếng vang
Áp dụng tiếng vọng cho âm thanh đầu vào.

Tiếng vang là âm thanh phản xạ và có thể xảy ra tự nhiên giữa các ngọn núi (và đôi khi lớn
các tòa nhà) khi nói chuyện hoặc la hét; hiệu ứng tiếng vang kỹ thuật số mô phỏng hành vi này và
thường được sử dụng để giúp điền vào âm thanh của một nhạc cụ hoặc giọng hát. Sự khác biệt thời gian
giữa tín hiệu ban đầu và phản xạ là "độ trễ" và độ lớn của
tín hiệu phản xạ là "phân rã". Nhiều tiếng vang có thể có độ trễ và độ trễ khác nhau.

Sau đây là mô tả về các tham số được chấp nhận.

in_gain
Đặt độ lợi đầu vào của tín hiệu phản xạ. Mặc định là 0.6.

out_gain
Đặt độ lợi đầu ra của tín hiệu phản xạ. Mặc định là 0.3.

sự chậm trễ
Đặt danh sách các khoảng thời gian tính bằng mili giây giữa tín hiệu gốc và phản xạ
cách nhau bởi '|'. Phạm vi được phép cho mỗi "độ trễ" là "(0 - 90000.0]". Mặc định là 1000.

sự thối rữa
Đặt danh sách độ lớn của tín hiệu phản xạ được phân tách bằng dấu '|'. Phạm vi được phép cho mỗi
"phân rã" là "(0 - 1.0]". Mặc định là 0.5.

Các ví dụ

· Làm cho âm thanh như thể có gấp đôi số nhạc cụ đang chơi thực sự:

aecho = 0.8: 0.88: 60: 0.4

· Nếu độ trễ rất ngắn, thì nó giống như một robot (kim loại) đang phát nhạc:

aecho = 0.8: 0.88: 6: 0.4

· Thời gian trễ lâu hơn sẽ giống như một buổi hòa nhạc ngoài trời trên núi:

aecho = 0.8: 0.9: 1000: 0.3

· Tương tự như trên nhưng có thêm một ngọn núi:

aecho=0.8:0.9:1000|1800:0.3|0.25

đánh giá
Sửa đổi tín hiệu âm thanh theo các biểu thức được chỉ định.

Bộ lọc này chấp nhận một hoặc nhiều biểu thức (một biểu thức cho mỗi kênh), được đánh giá
và được sử dụng để sửa đổi tín hiệu âm thanh tương ứng.

Nó chấp nhận các tham số sau:

exp
Đặt danh sách biểu thức phân tách '|' cho từng kênh riêng biệt. Nếu số lượng
các kênh đầu vào lớn hơn số lượng biểu thức, được chỉ định cuối cùng
biểu thức được sử dụng cho các kênh đầu ra còn lại.

kênh_layout, c
Đặt bố cục kênh đầu ra. Nếu không được chỉ định, bố cục kênh được chỉ định bởi
số biểu thức. Nếu được đặt thành tương tự, theo mặc định, nó sẽ sử dụng cùng một kênh đầu vào
bố trí.

Mỗi biểu thức trong exp có thể chứa các hằng số và hàm sau:

ch số kênh của biểu thức hiện tại

n số lượng mẫu được đánh giá, bắt đầu từ 0

s tỷ lệ mẫu

t thời gian của mẫu được đánh giá tính bằng giây

nb_in_channels
nb_out_channels
đầu vào và đầu ra số kênh

val (CH)
giá trị của kênh đầu vào với số CH

Lưu ý: bộ lọc này chậm. Để xử lý nhanh hơn, bạn nên sử dụng bộ lọc chuyên dụng.

Các ví dụ

· Một nửa âm lượng:

aeval = val (ch) / 2: c = giống nhau

· Giai đoạn đảo ngược của kênh thứ hai:

aeval =val(0) | -val(1)

đi xa
Áp dụng hiệu ứng mờ dần vào / ra cho âm thanh đầu vào.

Sau đây là mô tả về các tham số được chấp nhận.

kiểu, t
Chỉ định loại hiệu ứng, có thể là "vào" để làm mờ dần hoặc "ra" để làm mờ dần
tác dụng. Mặc định là "trong".

mẫu_bắt đầu, ss
Chỉ định số lượng mẫu bắt đầu để bắt đầu áp dụng hiệu ứng mờ dần. Vỡ nợ
là 0.

nb_samples, ns
Chỉ định số lượng mẫu mà hiệu ứng mờ dần phải kéo dài. Vào cuối
hiệu ứng mờ dần âm thanh đầu ra sẽ có cùng âm lượng với âm thanh đầu vào, tại
kết thúc quá trình chuyển đổi mờ dần, âm thanh đầu ra sẽ im lặng. Mặc định là 44100.

thời gian bắt đầu, st
Chỉ định thời gian bắt đầu của hiệu ứng mờ dần. Mặc định là 0. Giá trị phải được chỉ định
như một khoảng thời gian; Thấy chưa các Thời gian thời gian phần in các ffmpeg-utils(1) nhãn hiệu cho
cú pháp được chấp nhận. Nếu được đặt, tùy chọn này được sử dụng thay vì mẫu_bắt đầu.

thời hạn, d
Chỉ định khoảng thời gian của hiệu ứng mờ dần. Nhìn thấy các Thời gian thời gian phần in các
ffmpeg-utils(1) nhãn hiệu cho cú pháp được chấp nhận. Vào cuối hiệu ứng mờ dần,
âm thanh đầu ra sẽ có cùng âm lượng với âm thanh đầu vào, ở cuối âm thanh mờ dần
chuyển đổi âm thanh đầu ra sẽ im lặng. Theo mặc định, thời lượng được xác định bởi
nb_samples. Nếu được đặt, tùy chọn này được sử dụng thay vì nb_samples.

đường cong
Đặt đường cong cho quá trình chuyển đổi mờ dần.

Nó chấp nhận các giá trị sau:

tri chọn hình tam giác, độ dốc tuyến tính (mặc định)

qsin
chọn một phần tư sóng sin

hsin
chọn một nửa của sóng sin

cảm hứng
chọn sóng sin theo cấp số nhân

đăng nhập chọn lôgarit

ipar
chọn parabol ngược

đây chọn bậc hai

hình lập phương chọn khối

đội chọn căn bậc hai

cbr chọn căn bậc ba

mệnh chọn parabol

exp chọn hàm mũ

iqsin
chọn một phần tư sóng sin đảo ngược

ihsin
chọn một nửa ngược của sóng sin

muốn
chọn chỗ ngồi gấp đôi theo cấp số nhân

Desi
chọn sigmoid kép theo cấp số nhân

Các ví dụ

· Làm mờ dần âm thanh trong 15 giây đầu tiên:

afade = t = in: ss = 0: d = 15

· Làm mờ dần 25 giây cuối cùng của âm thanh 900 giây:

afade = t = out: st = 875: d = 25

định dạng
Đặt các ràng buộc định dạng đầu ra cho âm thanh đầu vào. Khuôn khổ sẽ thương lượng nhiều nhất
định dạng thích hợp để giảm thiểu chuyển đổi.

Nó chấp nhận các tham số sau:

sample_fmts
Danh sách định dạng mẫu được yêu cầu được phân tách bằng dấu '|'.

tỷ lệ mẫu
Danh sách tỷ lệ mẫu được yêu cầu được phân tách bằng dấu '|'.

kênh_layouts
Danh sách bố cục kênh được yêu cầu được phân tách bằng dấu '|'.

Xem các Kênh Bố trí phần in các ffmpeg-utils(1) nhãn hiệu cho cú pháp bắt buộc.

Nếu một tham số bị bỏ qua, tất cả các giá trị đều được phép.

Buộc đầu ra thành âm thanh nổi 8-bit hoặc 16-bit không dấu có dấu

aformat = sample_fmts = u8 | s16: channel_layouts = stereo

vượt qua
Áp dụng bộ lọc tất cả hai cực với tần số trung tâm (tính bằng Hz) tần sốvà bộ lọc-
chiều rộng chiều rộng. Bộ lọc tất cả thay đổi tần số của âm thanh thành mối quan hệ pha
mà không thay đổi tần số của nó thành mối quan hệ biên độ.

Bộ lọc chấp nhận các tùy chọn sau:

tần số, f
Đặt tần số tính bằng Hz.

chiều rộng_type
Đặt phương thức để chỉ định độ rộng băng tần của bộ lọc.

h Hz

q Hệ số Q

o bát cú

s độ dốc

chiều rộng, w
Chỉ định độ rộng băng tần của bộ lọc theo đơn vị width_type.

kết hợp
Hợp nhất hai hoặc nhiều luồng âm thanh thành một luồng đa kênh.

Bộ lọc chấp nhận các tùy chọn sau:

đầu vào
Đặt số lượng đầu vào. Mặc định là 2.

Nếu bố cục kênh của các đầu vào là rời rạc và do đó tương thích, thì kênh
bố cục của đầu ra sẽ được đặt cho phù hợp và các kênh sẽ được sắp xếp lại như
cần thiết. Nếu bố cục kênh của các đầu vào không rời rạc, thì đầu ra sẽ có tất cả
các kênh của đầu vào đầu tiên rồi đến tất cả các kênh của đầu vào thứ hai, theo thứ tự đó,
và bố cục kênh của đầu ra sẽ là giá trị mặc định tương ứng với tổng
số kênh.

Ví dụ: nếu đầu vào đầu tiên là 2.1 (FL + FR + LF) và đầu vào thứ hai là FC + BL + BR,
thì đầu ra sẽ ở dạng 5.1, với các kênh theo thứ tự sau: a1, a2, b1, a3,
b2, b3 (a1 là kênh đầu tiên của đầu vào đầu tiên, b1 là kênh đầu tiên của đầu vào thứ hai
đầu vào).

Mặt khác, nếu cả hai đầu vào đều ở dạng âm thanh nổi, các kênh đầu ra sẽ ở chế độ mặc định
thứ tự: a1, a2, b1, b2 và bố cục kênh sẽ được đặt tùy ý thành 4.0, có thể hoặc
có thể không phải là giá trị mong đợi.

Tất cả các đầu vào phải có cùng tỷ lệ mẫu và định dạng.

Nếu đầu vào không có cùng thời lượng, đầu ra sẽ dừng với thời lượng ngắn nhất.

Các ví dụ

· Hợp nhất hai tệp đơn âm thành một luồng âm thanh nổi:

amovie = left.wav [l]; amovie = right.mp3 [r]; [l] [r] tình yêu

· Nhiều hợp nhất giả sử 1 luồng video và 6 luồng âm thanh trong đầu vào.mkv:

ffmpeg -i input.mkv -filter_complex "[0: 1] [0: 2] [0: 3] [0: 4] [0: 5] [0: 6] amerge = input = 6" -c: a pcm_s16le output.mkv

trộn
Trộn nhiều đầu vào âm thanh thành một đầu ra duy nhất.

Lưu ý rằng bộ lọc này chỉ hỗ trợ các mẫu float ( kết hợppan bộ lọc âm thanh
hỗ trợ nhiều định dạng). Nếu trộn đầu vào có các mẫu số nguyên sau đó là mẫu sẽ được
tự động được chèn để thực hiện chuyển đổi sang các mẫu nổi.

Ví dụ

ffmpeg -i INPUT1 -i INPUT2 -i INPUT3 -filter_complex amix = đầu vào = 3: thời lượng = đầu tiên: bỏ_transition = 3 ĐẦU RA

sẽ trộn 3 luồng âm thanh đầu vào thành một đầu ra duy nhất với cùng thời lượng như luồng đầu tiên
đầu vào và thời gian chuyển tiếp bỏ học là 3 giây.

Nó chấp nhận các tham số sau:

đầu vào
Số lượng đầu vào. Nếu không được chỉ định, nó mặc định là 2.

thời gian
Cách xác định cuối luồng.

dài nhất
Thời lượng của đầu vào dài nhất. (vỡ nợ)

ngắn nhất
Thời lượng của đầu vào ngắn nhất.

Thành phố điện khí hóa phía tây dãy núi Rocky đầu tiên
Khoảng thời gian của đầu vào đầu tiên.

dropout_transition
Thời gian chuyển đổi, tính bằng giây, để tái chuẩn hóa âm lượng khi luồng đầu vào kết thúc.
Giá trị mặc định là 2 giây.

tàn lụi
Chuyển nguồn âm thanh không thay đổi đến đầu ra.

cái áo khoác
Tạo khoảng lặng ở cuối luồng âm thanh.

Điều này có thể được sử dụng cùng với ffmpeg -mới nhất để mở rộng luồng âm thanh đến cùng độ dài
dưới dạng luồng video.

Sau đây là mô tả về các tùy chọn được chấp nhận.

pack_size
Đặt kích thước gói im lặng. Giá trị mặc định là 4096.

pad_len
Đặt số lượng mẫu khoảng lặng để thêm vào cuối. Sau khi đạt đến giá trị,
luồng bị kết thúc. Tùy chọn này loại trừ lẫn nhau với toàn_len.

toàn_len
Đặt tổng số mẫu tối thiểu trong luồng âm thanh đầu ra. Nếu giá trị là
dài hơn thời lượng âm thanh đầu vào, khoảng lặng được thêm vào cuối, cho đến khi giá trị là
đạt. Tùy chọn này loại trừ lẫn nhau với pad_len.

Nếu không pad_len cũng không phải toàn_len được đặt, bộ lọc sẽ thêm dấu lặng cho
cuối luồng đầu vào vô thời hạn.

Các ví dụ

· Thêm 1024 mẫu khoảng lặng vào cuối đầu vào:

apad = pad_len = 1024

· Đảm bảo rằng đầu ra âm thanh sẽ chứa ít nhất 10000 mẫu, đệm đầu vào bằng
im lặng nếu được yêu cầu:

apad = whole_len = 10000

· Sử dụng ffmpeg để tạo khoảng lặng cho đầu vào âm thanh, để luồng video luôn
kết quả ngắn nhất và sẽ được chuyển đổi cho đến cuối trong tệp đầu ra khi sử dụng
các ngắn nhất tùy chọn:

ffmpeg -i VIDEO -i AUDIO -filter_complex "[1: 0] apad" -shortest OUTPUT

người nói chuyện
Thêm hiệu ứng phân kỳ cho âm thanh đầu vào.

Một bộ lọc phaser tạo ra một loạt các đỉnh và đáy trong phổ tần số. Các
vị trí của các đỉnh và đáy được điều chỉnh để chúng thay đổi theo thời gian, tạo ra
hiệu ứng quét.

Sau đây là mô tả về các tham số được chấp nhận.

in_gain
Đặt mức tăng đầu vào. Mặc định là 0.4.

out_gain
Đặt mức tăng đầu ra. Mặc định là 0.74

chậm trễ
Đặt độ trễ tính bằng mili giây. Mặc định là 3.0.

sâu
Đặt phân rã. Mặc định là 0.4.

tốc độ
Đặt tốc độ điều chế tính bằng Hz. Mặc định là 0.5.

kiểu
Đặt kiểu điều chế. Mặc định là hình tam giác.

Nó chấp nhận các giá trị sau:

hình tam giác, t
hình sin, s

là mẫu
Lấy mẫu lại âm thanh đầu vào theo các thông số được chỉ định, sử dụng thư viện libswresample. Nếu như
không có gì được chỉ định thì bộ lọc sẽ tự động chuyển đổi giữa đầu vào của nó và
đầu ra.

Bộ lọc này cũng có thể kéo dài / ép dữ liệu âm thanh để làm cho dữ liệu âm thanh khớp với dấu thời gian
hoặc để chèn im lặng / cắt bỏ âm thanh để làm cho âm thanh khớp với dấu thời gian, hãy thực hiện kết hợp
cả hai hoặc không.

Bộ lọc chấp nhận cú pháp [tỷ lệ mẫu:]bộ lấy mẫu lại_options, Nơi tỷ lệ mẫu bày tỏ
một tỷ lệ mẫu và bộ lấy mẫu lại_options là một danh sách chính=giá trị các cặp, được phân tách bằng ":". Nhìn thấy
hướng dẫn ffmpeg-resampler cho danh sách đầy đủ các tùy chọn được hỗ trợ.

Các ví dụ

· Lấy mẫu lại âm thanh đầu vào thành 44100Hz:

aresample = 44100

· Kéo dài / ép mẫu đến các dấu thời gian nhất định, với tối đa 1000 mẫu mỗi
bồi thường thứ hai:

aresample = async = 1000

asetsamples
Đặt số lượng mẫu cho mỗi khung âm thanh đầu ra.

Gói đầu ra cuối cùng có thể chứa một số lượng mẫu khác nhau, vì bộ lọc sẽ tuôn ra
tất cả các mẫu còn lại khi âm thanh đầu vào báo hiệu kết thúc.

Bộ lọc chấp nhận các tùy chọn sau:

nb_out_samples, n
Đặt số lượng khung hình cho mỗi khung âm thanh đầu ra. Con số được dự định là
số lượng mẫu mỗi mỗi kênh. Giá trị mặc định là 1024.

tập giấy, p
Nếu được đặt thành 1, bộ lọc sẽ đệm khung âm thanh cuối cùng bằng các số XNUMX, sao cho khung âm thanh cuối cùng
khung sẽ chứa cùng một số lượng mẫu như những cái trước đó. Giá trị mặc định là
1.

Ví dụ: để đặt số lượng mẫu trên mỗi khung hình thành 1234 và tắt đệm cho
khung cuối cùng, sử dụng:

asetnsamples = n = 1234: p = 0

làm vững chắc
Đặt tốc độ lấy mẫu mà không làm thay đổi dữ liệu PCM. Điều này sẽ dẫn đến thay đổi tốc độ
và cao độ.

Bộ lọc chấp nhận các tùy chọn sau:

tỷ lệ mẫu, r
Đặt tỷ lệ mẫu đầu ra. Mặc định là 44100 Hz.

ashowinfo
Hiển thị một dòng chứa nhiều thông tin khác nhau cho mỗi khung âm thanh đầu vào. Âm thanh đầu vào là
không sửa đổi.

Dòng hiển thị chứa một chuỗi các cặp khóa / giá trị của biểu mẫu chính:giá trị.

Các giá trị sau được hiển thị trong đầu ra:

n Số (tuần tự) của khung đầu vào, bắt đầu từ 0.

Điểm Dấu thời gian trình bày của khung đầu vào, theo đơn vị cơ sở thời gian; cơ sở thời gian
phụ thuộc vào đệm đầu vào của bộ lọc và thường là 1 /tỷ lệ mẫu.

pts_time
Dấu thời gian trình bày của khung đầu vào tính bằng giây.

gửi vị trí của khung trong luồng đầu vào, -1 nếu thông tin này không có sẵn
và / hoặc vô nghĩa (ví dụ: trong trường hợp âm thanh tổng hợp)

fmt Định dạng mẫu.

lớp lót
Bố cục kênh.

tỷ lệ
Tỷ lệ mẫu cho khung âm thanh.

nb_samples
Số lượng mẫu (mỗi kênh) trong khung.

checksum
Tổng kiểm tra Adler-32 (được in dưới dạng thập lục phân) của dữ liệu âm thanh. Đối với âm thanh phẳng,
dữ liệu được xử lý như thể tất cả các mặt phẳng đã được nối với nhau.

mặt phẳng_checksums
Danh sách các tổng kiểm tra Adler-32 cho mỗi mặt phẳng dữ liệu.

số liệu thống kê
Hiển thị thông tin thống kê miền thời gian về các kênh âm thanh. Thống kê là
được tính toán và hiển thị cho từng kênh âm thanh và, nếu có, một con số tổng thể
cũng được đưa ra.

Nó chấp nhận tùy chọn sau:

chiều dài
Độ dài cửa sổ ngắn tính bằng giây, được sử dụng để đo RMS đỉnh và đáy. Mặc định là
0.05 (50 mili giây). Phạm vi được phép là "[0.1 - 10]".

siêu dữ liệu
Đặt chèn siêu dữ liệu. Tất cả các khóa siêu dữ liệu đều có tiền tố là "lavfi.astats.X",
trong đó "X" là số kênh bắt đầu từ 1 hoặc chuỗi "Tổng thể". Mặc định bị tắt.

Các khóa khả dụng cho mỗi kênh là: DC_offset Min_level Max_level Min_difference
Max_difference Trung bình_difference Peak_level RMS_peak RMS_trough Crest_factor Flat_factor
Đỉnh_đếm Bit_độ sâu

và cho Tổng thể: DC_offset Min_level Max_level Min_difference Max_difference
Trung bình_chênh lệch Đỉnh_cấp RMS_cấp RMS_đỉnh RMS_trough Flat_factor Peak_count
Số lượng_độ sâu bit_mẫu

Ví dụ: khóa đầy đủ trông giống như thế này "lavfi.astats.1.DC_offset" hoặc thế này
"lavfi.astats.Oosystem.Peak_count".

Để biết mô tả ý nghĩa của từng phím, hãy đọc bên dưới.

thiết lập lại
Đặt số lượng khung hình mà sau đó số liệu thống kê sẽ được tính toán lại. Mặc định là
tàn tật.

Mô tả của từng tham số được hiển thị như sau:

DC bù đắp
Biên độ dịch chuyển trung bình từ không.

min cấp
Mức mẫu tối thiểu.

Max cấp
Mức mẫu tối đa.

min sự khác biệt
Chênh lệch tối thiểu giữa hai mẫu liên tiếp.

Max sự khác biệt
Chênh lệch tối đa giữa hai mẫu liên tiếp.

Nghĩa là sự khác biệt
Sự khác biệt trung bình giữa hai mẫu liên tiếp. Trung bình của mỗi sự khác biệt
giữa hai mẫu liên tiếp.

Đỉnh cấp dB
RMS cấp dB
Mức đỉnh và RMS tiêu chuẩn được đo bằng dBFS.

RMS đỉnh dB
RMS máng dB
Giá trị đỉnh và giá trị đáy cho mức RMS được đo qua một cửa sổ ngắn.

huy chương yếu tố
Tỷ lệ tiêu chuẩn của mức đỉnh so với mức RMS (lưu ý: không tính bằng dB).

Bằng phẳng yếu tố
Độ phẳng (tức là các mẫu liên tiếp có cùng giá trị) của tín hiệu tại đỉnh của nó
cấp độ (tức là một trong hai min cấp or Max cấp).

Đỉnh tính
Số lần (không phải số mẫu) mà tín hiệu đạt được min
cấp or Max cấp.

Một chút chiều sâu
Độ sâu bit tổng thể của âm thanh. Số lượng bit được sử dụng cho mỗi mẫu.

astreamsync
Chuyển tiếp hai luồng âm thanh và kiểm soát thứ tự các bộ đệm được chuyển tiếp.

Bộ lọc chấp nhận các tùy chọn sau:

kinh nghiệm, e
Đặt biểu thức quyết định luồng nào sẽ được chuyển tiếp tiếp theo: nếu kết quả là
âm, luồng đầu tiên được chuyển tiếp; nếu kết quả là dương hoặc không, thứ hai
luồng được chuyển tiếp. Nó có thể sử dụng các biến sau:

b1 b2
số lượng bộ đệm được chuyển tiếp cho đến nay trên mỗi luồng

s1 s2
số lượng mẫu được chuyển tiếp cho đến nay trên mỗi luồng

t1 t2
dấu thời gian hiện tại của mỗi luồng

Giá trị mặc định là "t1-t2", có nghĩa là luôn chuyển tiếp luồng có
dấu thời gian nhỏ hơn.

Các ví dụ

Kiểm tra căng thẳng "amerge" bằng cách gửi ngẫu nhiên bộ đệm trên đầu vào sai, đồng thời tránh
nhiều của một quá trình giải đồng bộ hóa:

amovie = file.ogg [a]; amovie = file.mp3 [b];
[a] [b] astreamsync = (2 *ngẫu nhiên(1))-1+tanh(5*(t1-t2)) [a2] [b2] ;
[a2] [b2] tình yêu

không đồng bộ
Đồng bộ hóa dữ liệu âm thanh với dấu thời gian bằng cách bóp / kéo dài nó và / hoặc thả
mẫu / thêm khoảng lặng khi cần thiết.

Bộ lọc này không được tạo theo mặc định, vui lòng sử dụng là mẫu để thực hiện ép / duỗi.

Nó chấp nhận các tham số sau:

đền bù
Cho phép kéo dài / ép dữ liệu để làm cho dữ liệu khớp với dấu thời gian. Bị vô hiệu hóa bởi
vỡ nợ. Khi bị vô hiệu hóa, khoảng cách thời gian được bao phủ bởi sự im lặng.

min_delta
Chênh lệch tối thiểu giữa dấu thời gian và dữ liệu âm thanh (tính bằng giây) để kích hoạt
thêm / bớt mẫu. Giá trị mặc định là 0.1. Nếu bạn nhận được một bản đồng bộ không hoàn hảo với
bộ lọc này, hãy thử đặt thông số này thành 0.

max_comp
Mức bù tối đa tính bằng mẫu mỗi giây. Chỉ có liên quan với phần bù = 1. Các
giá trị mặc định là 500.

điểm đầu tiên
Giả sử rằng PTS đầu tiên phải là giá trị này. Cơ sở thời gian là 1 / tỷ lệ mẫu. Cái này
cho phép đệm / cắt khi bắt đầu luồng. Theo mặc định, không có giả định nào là
được thực hiện về PTS dự kiến ​​của khung hình đầu tiên, vì vậy không có phần đệm hoặc cắt tỉa nào được thực hiện. Vì
ví dụ, điều này có thể được đặt thành 0 để mở đầu bằng dấu lặng nếu một luồng âm thanh
bắt đầu sau luồng video hoặc để cắt bất kỳ mẫu nào có PTS tiêu cực do
bộ mã hóa chậm trễ.

nhịp điệu
Điều chỉnh nhịp độ âm thanh.

Bộ lọc chấp nhận chính xác một tham số, nhịp độ âm thanh. Nếu không được chỉ định thì
bộ lọc sẽ giả định nhịp độ 1.0 danh nghĩa. Tốc độ phải nằm trong phạm vi [0.5, 2.0].

Các ví dụ

· Giảm tốc độ âm thanh xuống 80%:

atempo = 0.8

· Để tăng tốc độ âm thanh lên 125% nhịp độ:

atempo = 1.25

tâm nhĩ
Cắt đầu vào để đầu ra chứa một phần con liên tục của đầu vào.

Nó chấp nhận các tham số sau:

Bắt đầu
Dấu thời gian (tính bằng giây) của phần bắt đầu phần cần lưu giữ. Tức là mẫu âm thanh với
dấu thời gian Bắt đầu sẽ là mẫu đầu tiên trong đầu ra.

cuối Chỉ định thời gian của mẫu âm thanh đầu tiên sẽ bị loại bỏ, tức là mẫu âm thanh
ngay trước cái có dấu thời gian cuối sẽ là mẫu cuối cùng trong
đầu ra.

điểm bắt đầu
Giống như Bắt đầu, ngoại trừ tùy chọn này đặt dấu thời gian bắt đầu trong các mẫu thay vì
giây.

end_pts
Giống như cuối, ngoại trừ tùy chọn này đặt dấu thời gian kết thúc ở dạng mẫu thay vì giây.

thời gian
Thời lượng tối đa của đầu ra tính bằng giây.

mẫu_bắt đầu
Số lượng mẫu đầu tiên sẽ được xuất ra.

mẫu_cuối
Số lượng mẫu đầu tiên cần được loại bỏ.

Bắt đầu, cuốithời gian được thể hiện dưới dạng thông số kỹ thuật về khoảng thời gian; Thấy chưa các Thời gian
thời gian phần in các ffmpeg-utils(1) nhãn hiệu.

Lưu ý rằng hai tập hợp đầu tiên của các tùy chọn bắt đầu / kết thúc và thời gian tùy chọn nhìn vào
dấu thời gian khung, trong khi tùy chọn _sample chỉ đếm các mẫu đi qua
lọc. Vì vậy, start / end_pts và start / end_sample sẽ cho các kết quả khác nhau khi
dấu thời gian sai, không chính xác hoặc không bắt đầu từ XNUMX. Cũng lưu ý rằng bộ lọc này không
sửa đổi dấu thời gian. Nếu bạn muốn có dấu thời gian đầu ra bắt đầu từ XNUMX, hãy chèn
bộ lọc asetpts sau bộ lọc atrim.

Nếu nhiều tùy chọn bắt đầu hoặc kết thúc được đặt, bộ lọc này sẽ cố gắng tham lam và giữ tất cả
mẫu phù hợp với ít nhất một trong các ràng buộc được chỉ định. Để chỉ giữ lại phần
khớp với tất cả các ràng buộc cùng một lúc, chuỗi nhiều bộ lọc tạm thời.

Các giá trị mặc định được giữ nguyên. Vì vậy, có thể đặt ví dụ: chỉ
giá trị kết thúc để giữ mọi thứ trước thời gian quy định.

Ví dụ:

· Bỏ tất cả mọi thứ ngoại trừ phút thứ hai của đầu vào:

ffmpeg -i INPUT -af atrim = 60: 120

· Chỉ giữ lại 1000 mẫu đầu tiên:

ffmpeg -i INPUT -af atrim = end_sample = 1000

dải thông
Áp dụng bộ lọc thông dải Butterworth hai cực với tần số trung tâm tần số
(3dB-point) chiều rộng dải tần. Các Csg tùy chọn chọn mức tăng váy không đổi (mức tăng tối đa =
Q) thay vì mặc định: độ lợi đỉnh 0dB không đổi. Bộ lọc cuộn tắt ở 6dB mỗi quãng tám
(20dB mỗi thập kỷ).

Bộ lọc chấp nhận các tùy chọn sau:

tần số, f
Đặt tần số trung tâm của bộ lọc. Mặc định là 3000.

Csg Tăng váy không đổi nếu được đặt thành 1. Giá trị mặc định là 0.

chiều rộng_type
Đặt phương thức để chỉ định độ rộng băng tần của bộ lọc.

h Hz

q Hệ số Q

o bát cú

s độ dốc

chiều rộng, w
Chỉ định độ rộng băng tần của bộ lọc theo đơn vị width_type.

ban nhạc
Áp dụng bộ lọc loại bỏ băng tần Butterworth hai cực với tần số trung tâm tần số
(3dB-point) dải rộng chiều rộng. Bộ lọc hoạt động ở mức 6dB mỗi quãng tám (20dB mỗi thập kỷ).

Bộ lọc chấp nhận các tùy chọn sau:

tần số, f
Đặt tần số trung tâm của bộ lọc. Mặc định là 3000.

chiều rộng_type
Đặt phương thức để chỉ định độ rộng băng tần của bộ lọc.

h Hz

q Hệ số Q

o bát cú

s độ dốc

chiều rộng, w
Chỉ định độ rộng băng tần của bộ lọc theo đơn vị width_type.

âm bass
Tăng hoặc cắt tần số âm trầm (thấp hơn) của âm thanh bằng cách sử dụng bộ lọc giá đỡ hai cực
với phản hồi tương tự như phản hồi của điều khiển âm sắc hi-fi tiêu chuẩn. Điều này còn được gọi là
cân bằng giá đỡ (EQ).

Bộ lọc chấp nhận các tùy chọn sau:

đạt được, g
Cho mức tăng ở 0 Hz. Phạm vi hữu ích của nó là khoảng -20 (đối với vết cắt lớn) đến +20 (đối với
tăng lớn). Cẩn thận với việc cắt bớt khi sử dụng mức tăng tích cực.

tần số, f
Đặt tần số trung tâm của bộ lọc và do đó, có thể được sử dụng để mở rộng hoặc giảm
dải tần số được tăng cường hoặc cắt giảm. Giá trị mặc định là 100 Hz.

chiều rộng_type
Đặt phương thức để chỉ định độ rộng băng tần của bộ lọc.

h Hz

q Hệ số Q

o bát cú

s độ dốc

chiều rộng, w
Xác định độ dốc của quá trình chuyển đổi kệ của bộ lọc.

song mã
Áp dụng bộ lọc IIR biquad với các hệ số đã cho. Ở đâu b0, b1, b2a0, a1, a2
lần lượt là hệ số tử số và mẫu số.

bs2b
Chuyển đổi âm thanh nổi Bauer sang hai tai, giúp cải thiện khả năng nghe âm thanh nổi của tai nghe
bản ghi âm.

Nó chấp nhận các tham số sau:

Hồ sơ
Mức giao thoa được xác định trước.

mặc định
Mức mặc định (fcut = 700, feed = 50).

con chó
Mạch Chu Moy (fcut = 700, feed = 60).

jmeier
Mạch Jan Meier (fcut = 650, feed = 95).

cắt xén
Tần số cắt (tính bằng Hz).

nuôi
Mức cấp dữ liệu (tính bằng Hz).

sơ đồ kênh
Remap các kênh đầu vào sang vị trí mới.

Nó chấp nhận các tham số sau:

kênh_layout
Bố cục kênh của luồng đầu ra.

bản đồ Ánh xạ các kênh từ đầu vào đến đầu ra. Đối số là một danh sách ánh xạ được phân tách bằng '|',
mỗi người trong "in_channel-out_channel " or trong_kênh hình thức. trong_kênh có thể là
tên của kênh đầu vào (ví dụ: FL ở phía trước bên trái) hoặc chỉ số của nó trong kênh đầu vào
bố trí. kênh ngoài là tên của kênh đầu ra hoặc chỉ số của nó trong đầu ra
bố cục kênh. Nếu như kênh ngoài không được đưa ra thì nó hoàn toàn là một chỉ mục, bắt đầu
bằng XNUMX và tăng một cho mỗi ánh xạ.

Nếu không có ánh xạ nào, bộ lọc sẽ ánh xạ ngầm các kênh đầu vào đến đầu ra
các kênh, bảo toàn các chỉ số.

Ví dụ: giả sử tệp MOV đầu vào 5.1 + downmix,

ffmpeg -i in.mov -filter 'channelmap = map = DL-FL | DR-FR' out.wav

sẽ tạo một tệp WAV đầu ra được gắn thẻ là âm thanh nổi từ các kênh downmix của đầu vào.

Để khắc phục một 5.1 WAV được mã hóa không đúng theo thứ tự kênh gốc của AAC

ffmpeg -i in.wav -filter 'channelmap = 1 | 2 | 0 | 5 | 3 | 4: 5.1' out.wav

tách kênh
Tách mỗi kênh từ luồng âm thanh đầu vào thành một luồng đầu ra riêng biệt.

Nó chấp nhận các tham số sau:

kênh_layout
Bố cục kênh của luồng đầu vào. Mặc định là "âm thanh nổi".

Ví dụ: giả sử một tệp MP3 đầu vào âm thanh nổi,

ffmpeg -i in.mp3 -filter_complex channelplit out.mkv

sẽ tạo một tệp Matroska đầu ra với hai luồng âm thanh, một luồng chỉ chứa bên trái
kênh khác và kênh bên phải.

Tách tệp WAV 5.1 thành các tệp trên mỗi kênh:

ffmpeg -i in.wav -filter_complex
'channelsplit = channel_layout = 5.1 [FL] [FR] [FC] [LFE] [SL] [SR]'
-map '[FL]' front_left.wav -map '[FR]' front_right.wav -map '[FC]'
front_center.wav -map '[LFE]' lfe.wav -map '[SL]' side_left.wav -map '[SR]'
side_right.wav

Điệp khúc
Thêm hiệu ứng điệp khúc vào âm thanh.

Có thể tạo ra âm thanh đơn lẻ giống như một đoạn điệp khúc, nhưng cũng có thể được áp dụng cho nhạc cụ.

Chorus giống hiệu ứng tiếng vang với độ trễ ngắn, nhưng ngược lại với tiếng vang, độ trễ là
không đổi, với điệp khúc, nó rất đa dạng bằng cách sử dụng điều chế hình sin hoặc tam giác. Các
độ sâu điều chế xác định phạm vi độ trễ điều chế được phát trước hoặc sau
trì hoãn. Do đó âm thanh bị trễ sẽ nghe chậm hơn hoặc nhanh hơn, đó là âm thanh bị trễ
được điều chỉnh xung quanh bản gốc, giống như trong một đoạn điệp khúc trong đó một số giọng hát hơi lạc giọng.

Nó chấp nhận các tham số sau:

in_gain
Đặt mức tăng đầu vào. Mặc định là 0.4.

out_gain
Đặt mức tăng đầu ra. Mặc định là 0.4.

sự chậm trễ
Đặt độ trễ. Độ trễ điển hình là khoảng 40ms đến 60ms.

sự thối rữa
Đặt phân rã.

tốc độ
Đặt tốc độ.

độ sâu
Đặt độ sâu.

Các ví dụ

· Một sự chậm trễ duy nhất:

chorus=0.7:0.9:55:0.4:0.25:2

· Hai sự chậm trễ:

chorus=0.6:0.9:50|60:0.4|0.32:0.25|0.4:2|1.3

· Hợp xướng âm thanh đầy đủ hơn với ba độ trễ:

chorus=0.5:0.9:50|60|40:0.4|0.32|0.3:0.25|0.4|0.3:2|2.3|1.3

biên dịch
Nén hoặc mở rộng dải động của âm thanh.

Nó chấp nhận các tham số sau:

các cuộc tấn công
sự thối rữa
Danh sách thời gian tính bằng giây cho mỗi kênh trong đó mức tức thời của
tín hiệu đầu vào được tính trung bình để xác định âm lượng của nó. các cuộc tấn công đề cập đến sự gia tăng khối lượng
sự thối rữa đề cập đến việc giảm khối lượng. Đối với hầu hết các tình huống, thời gian tấn công
(phản hồi khi âm thanh to hơn) phải ngắn hơn thời gian giảm dần, bởi vì
Tai người nhạy cảm hơn với âm thanh lớn đột ngột hơn là âm thanh nhỏ đột ngột. Khác biệt
giá trị cho đòn tấn công là 0.3 giây và giá trị tiêu biểu cho mục tiêu phân rã là 0.8 giây. Nếu như
số lần tấn công & phân rã được chỉ định thấp hơn số kênh, nhóm cuối cùng
tấn công / phân rã sẽ được sử dụng cho tất cả các kênh còn lại.

điểm
Danh sách các điểm cho chức năng truyền, được chỉ định bằng dB so với mức tối đa
biên độ tín hiệu có thể. Mỗi danh sách điểm chính phải được xác định bằng cách sử dụng sau
cú pháp: "x0 / y0 | x1 / y1 | x2 / y2 | ...." hoặc "x0 / y0 x1 / y1 x2 / y2 ...."

Các giá trị đầu vào phải theo thứ tự tăng dần nhưng hàm truyền
không phải tăng đơn điệu. Điểm "0/0" được giả định nhưng có thể bị ghi đè
(bởi "0 / out-dBn"). Các giá trị điển hình cho hàm truyền là "-70 / -70 | -60 / -20".

đầu gối mềm
Đặt bán kính đường cong tính bằng dB cho tất cả các khớp. Nó mặc định là 0.01.

thu được
Đặt mức tăng thêm tính bằng dB sẽ được áp dụng tại tất cả các điểm trên chức năng truyền.
Điều này cho phép dễ dàng điều chỉnh mức tăng tổng thể. Nó mặc định là 0.

khối lượng
Đặt âm lượng ban đầu, tính bằng dB, được giả định cho mỗi kênh khi bắt đầu lọc.
Điều này cho phép người dùng cung cấp mức danh nghĩa ban đầu, vì vậy, ví dụ:
độ lợi rất lớn không được áp dụng cho các mức tín hiệu ban đầu trước khi quá trình biên dịch có
bắt đầu hoạt động. Giá trị điển hình cho âm thanh ban đầu yên tĩnh là -90 dB. Nó
mặc định là 0.

chậm trễ
Đặt thời gian trễ, tính bằng giây. Âm thanh đầu vào được phân tích ngay lập tức, nhưng âm thanh bị trễ
trước khi được đưa vào bộ điều chỉnh âm lượng. Chỉ định độ trễ xấp xỉ bằng
thời gian tấn công / phân rã cho phép bộ lọc hoạt động hiệu quả trong dự đoán thay vì
chế độ phản ứng. Nó mặc định là 0.

Các ví dụ

· Tạo ra âm nhạc với cả những đoạn yên tĩnh và ồn ào, phù hợp để nghe ở nơi ồn ào
Môi trường:

compand=.3|.3:1|1:-90/-60|-60/-40|-40/-30|-20/-20:6:0:-90:0.2

Một ví dụ khác cho âm thanh có phần thì thầm và tiếng nổ:

compand=0|0:1|1:-90/-900|-70/-70|-30/-9|0/-3:6:0:0:0

· Một cổng chống ồn khi tiếng ồn ở mức thấp hơn tín hiệu:

compand=.1|.1:.2|.2:-900/-900|-50.1/-900|-50/-50:.01:0:-90:.1

· Đây là một cổng tiếng ồn khác, lần này là khi tiếng ồn ở mức cao hơn
signal (làm cho nó, theo một số cách, tương tự như squelch):

compand=.1|.1:.1|.1:-45.1/-45.1|-45/-900|0/-900:.01:45:-90:.1

dịch chuyển dc
Áp dụng sự thay đổi DC cho âm thanh.

Điều này có thể hữu ích để loại bỏ độ lệch DC (có thể do sự cố phần cứng gây ra trong
chuỗi ghi âm) từ âm thanh. Ảnh hưởng của độ lệch DC làm giảm khoảng không và do đó
âm lượng. Các số liệu thống kê bộ lọc có thể được sử dụng để xác định xem tín hiệu có bù DC hay không.

thay đổi
Đặt dịch chuyển DC, phạm vi cho phép là [-1, 1]. Nó cho biết số tiền để thay đổi
Âm thanh.

giới hạn
Không bắt buộc. Nó phải có giá trị nhỏ hơn 1 (ví dụ: 0.05 hoặc 0.02) và được sử dụng để
ngăn chặn sự cắt xén.

động lực học
Bộ chuẩn hóa âm thanh động.

Bộ lọc này áp dụng một lượng khuếch đại nhất định cho âm thanh đầu vào để mang lại âm thanh đỉnh cao
độ lớn đến mức mục tiêu (ví dụ: 0 dBFS). Tuy nhiên, ngược lại với "đơn giản" hơn
thuật toán chuẩn hóa, Bộ chuẩn hóa âm thanh động * động * điều chỉnh lại mức tăng
yếu tố ảnh hưởng đến âm thanh đầu vào. Điều này cho phép áp dụng mức tăng thêm cho các phần "yên tĩnh" của
âm thanh trong khi tránh bị bóp méo hoặc cắt bớt các phần "lớn". Nói cách khác:
Bộ chuẩn hóa âm thanh động sẽ "tăng đều" âm lượng của các phần yên tĩnh và ồn ào, trong
cảm giác rằng khối lượng của mỗi phần được đưa đến cùng một mức mục tiêu. Lưu ý, tuy nhiên,
rằng Bộ chuẩn hóa âm thanh động đạt được mục tiêu này * mà không * áp dụng "dải động
đang nén ". Nó sẽ giữ lại 100% dải động * trong * mỗi phần của âm thanh
tập tin.

f Đặt độ dài khung hình tính bằng mili giây. Trong phạm vi từ 10 đến 8000 mili giây. Vỡ nợ
là 500 mili giây. Bộ chuẩn hóa âm thanh động xử lý âm thanh đầu vào ở mức nhỏ
khối, được gọi là khung. Điều này là bắt buộc, bởi vì cường độ cực đại không có
nghĩa là chỉ cho một giá trị mẫu duy nhất. Thay vào đó, chúng ta cần xác định đỉnh
độ lớn của một chuỗi giá trị mẫu liền nhau. Trong khi một bộ chuẩn hóa "tiêu chuẩn"
chỉ cần sử dụng cường độ cao nhất của tệp hoàn chỉnh, Bộ chuẩn hóa âm thanh động
xác định độ lớn đỉnh riêng lẻ cho từng khung hình. Chiều dài của khung là
được chỉ định bằng mili giây. Theo mặc định, Bộ chuẩn hóa âm thanh động sử dụng khung
độ dài 500 mili giây, được cho là cho kết quả tốt với hầu hết các tệp.
Lưu ý rằng độ dài khung chính xác, theo số lượng mẫu, sẽ được xác định
tự động, dựa trên tốc độ lấy mẫu của từng tệp âm thanh đầu vào.

g Đặt kích thước cửa sổ bộ lọc Gaussian. Trong phạm vi từ 3 đến 301, phải là số lẻ.
Mặc định là 31. Có lẽ là thông số quan trọng nhất của Bộ chuẩn hóa âm thanh động
là "kích thước cửa sổ" của bộ lọc làm mịn Gaussian. Kích thước cửa sổ của bộ lọc là
được chỉ định trong khung, căn giữa xung quanh khung hiện tại. Vì đơn giản,
đây phải là một số lẻ. Do đó, giá trị mặc định là 31 sẽ tính đến
khung hiện tại, cũng như 15 khung trước và 15 khung tiếp theo.
Sử dụng một cửa sổ lớn hơn dẫn đến hiệu ứng làm mịn mạnh hơn và do đó thu được ít hơn
biến thể, tức là thích ứng độ lợi chậm hơn. Ngược lại, sử dụng cửa sổ nhỏ hơn dẫn đến
một hiệu ứng làm mịn yếu hơn và do đó trong biến thể tăng ích nhiều hơn, tức là tăng nhanh hơn
sự thích nghi. Nói cách khác, bạn càng tăng giá trị này, thì động
Audio Normalizer sẽ hoạt động giống như một bộ lọc chuẩn hóa "truyền thống". Trên
ngược lại, bạn càng giảm giá trị này, Bộ chuẩn hóa âm thanh động càng
hoạt động như một máy nén dải động.

p Đặt giá trị đỉnh mục tiêu. Điều này chỉ định mức cường độ cho phép cao nhất đối với
đầu vào âm thanh chuẩn hóa. Bộ lọc này sẽ cố gắng tiếp cận độ lớn đỉnh mục tiêu
càng chặt chẽ càng tốt, nhưng đồng thời nó cũng đảm bảo rằng
tín hiệu sẽ không bao giờ vượt quá cường độ đỉnh. Hệ số khuếch đại cục bộ tối đa của khung là
được áp đặt trực tiếp bởi độ lớn đỉnh mục tiêu. Giá trị mặc định là 0.95 và do đó
để lại khoảng không 5% *. Nó không được khuyến khích để vượt quá giá trị này.

m Đặt hệ số khuếch đại tối đa. Trong phạm vi từ 1.0 đến 100.0. Mặc định là 10.0. Năng động
Bộ chuẩn hóa âm thanh xác định hệ số khuếch đại (cục bộ) tối đa có thể cho mỗi đầu vào
khung, nghĩa là hệ số khuếch đại tối đa không dẫn đến cắt hoặc biến dạng.
Hệ số khuếch đại tối đa được xác định bởi mẫu có độ lớn cao nhất của khung.
Tuy nhiên, Bộ chuẩn hóa âm thanh động cũng giới hạn mức tăng tối đa của khung
hệ số khuếch đại tối đa (toàn cục) xác định trước. Điều này được thực hiện để tránh
hệ số khuếch đại quá mức trong các khung hình "im lặng" hoặc gần như im lặng. Theo mặc định, mức tối đa
hệ số khuếch đại là 10.0, Đối với hầu hết các đầu vào, giá trị mặc định phải đủ và nó
thường không được khuyến khích để tăng giá trị này. Mặc dù vậy, đối với đầu vào với cực kỳ
mức âm lượng tổng thể thấp, có thể cần cho phép hệ số khuếch đại cao hơn nữa. Ghi chú,
tuy nhiên, Bộ chuẩn hóa âm thanh động không chỉ áp dụng ngưỡng "cứng"
(tức là cắt bỏ các giá trị trên ngưỡng). Thay vào đó, hàm ngưỡng "sigmoid"
sẽ được áp dụng. Bằng cách này, các hệ số khuếch đại sẽ tiếp cận dễ dàng ngưỡng
giá trị, nhưng không bao giờ vượt quá giá trị đó.

r Đặt RMS mục tiêu. Trong phạm vi từ 0.0 đến 1.0. Mặc định là 0.0 - bị vô hiệu hóa. Theo mặc định,
Bộ chuẩn hóa âm thanh động thực hiện chuẩn hóa "đỉnh". Điều này có nghĩa là
hệ số khuếch đại cục bộ tối đa cho mỗi khung được xác định (chỉ) bằng mức cao nhất của khung
độ lớn mẫu. Bằng cách này, các mẫu có thể được khuếch đại nhiều nhất có thể mà không
vượt quá mức tín hiệu tối đa, tức là không bị cắt. Tuy nhiên, theo tùy chọn,
Dynamic Audio Normalizer cũng có thể tính đến bình phương trung bình gốc của khung,
viết tắt RMS. Trong kỹ thuật điện, RMS thường được sử dụng để xác định
công suất của tín hiệu thay đổi theo thời gian. Do đó, người ta coi RMS là một
xấp xỉ "độ lớn cảm nhận được" thay vì chỉ nhìn vào mức cao nhất của tín hiệu
kích cỡ. Do đó, bằng cách điều chỉnh tất cả các khung thành giá trị RMS không đổi, đồng nhất
"độ lớn cảm nhận được" có thể được thiết lập. Nếu giá trị RMS mục tiêu đã được chỉ định,
hệ số khuếch đại cục bộ của khung được định nghĩa là yếu tố sẽ dẫn đến chính xác
Giá trị RMS. Tuy nhiên, lưu ý rằng hệ số khuếch đại cục bộ tối đa vẫn bị hạn chế bởi
mẫu có độ lớn cao nhất của khung, để tránh cắt.

n Bật khớp nối các kênh. Theo mặc định được bật. Theo mặc định, Âm thanh động
Bộ chuẩn hóa sẽ khuếch đại tất cả các kênh với cùng một lượng. Điều này có nghĩa là cùng một mức lợi
hệ số sẽ được áp dụng cho tất cả các kênh, tức là hệ số khuếch đại tối đa có thể là
được xác định bởi kênh "ồn ào nhất". Tuy nhiên, trong một số bản ghi, nó có thể xảy ra
âm lượng của các kênh khác nhau không đồng đều, ví dụ: một kênh có thể "yên tĩnh" hơn
(các) cái còn lại. Trong trường hợp này, tùy chọn này có thể được sử dụng để tắt kênh
khớp nối. Bằng cách này, hệ số khuếch đại sẽ được xác định độc lập cho mỗi kênh,
chỉ phụ thuộc vào mẫu cường độ cao nhất của kênh riêng lẻ. Điều này cho phép
hài hòa âm lượng của các kênh khác nhau.

c Bật sửa sai lệch DC. Theo mặc định bị tắt. Một tín hiệu âm thanh (trong thời gian
miền) là một chuỗi các giá trị mẫu. Trong Bộ chuẩn hóa âm thanh động, các mẫu này
các giá trị được thể hiện trong phạm vi -1.0 đến 1.0, bất kể đầu vào ban đầu là gì
định dạng. Thông thường, tín hiệu âm thanh, hoặc "dạng sóng", phải được tập trung xung quanh số XNUMX
chỉ trỏ. Điều đó có nghĩa là nếu chúng tôi tính toán giá trị trung bình của tất cả các mẫu trong một tệp hoặc trong một
khung đơn, thì kết quả phải là 0.0 hoặc ít nhất là rất gần với giá trị đó. Nếu như,
tuy nhiên, có một độ lệch đáng kể của giá trị trung bình từ 0.0, ở một trong hai
hướng dương hoặc âm, đây được gọi là độ lệch DC hoặc độ lệch DC. Từ một
Thiên vị DC rõ ràng là không mong muốn, Bộ chuẩn hóa âm thanh động cung cấp thiên vị DC tùy chọn
điều chỉnh. Với tính năng sửa sai lệch DC được bật, Bộ chuẩn hóa âm thanh động sẽ
xác định giá trị trung bình, hoặc độ lệch "hiệu chỉnh DC", của mỗi khung đầu vào và trừ đi
giá trị đó từ tất cả các giá trị mẫu của khung đảm bảo các mẫu đó
lại tập trung vào khoảng 0.0. Ngoài ra, để tránh "khoảng trống" ở ranh giới khung,
Các giá trị bù hiệu chỉnh DC sẽ được nội suy mượt mà giữa các khung lân cận.

b Bật chế độ ranh giới thay thế. Theo mặc định bị tắt. Âm thanh động
Bộ chuẩn hóa tính đến một vùng lân cận nhất định xung quanh mỗi khung hình. Điêu nay bao gôm
các khung trước cũng như các khung tiếp theo. Tuy nhiên, đối với "ranh giới"
khung, nằm ở đầu và cuối tệp âm thanh, không phải tất cả
khung lân cận có sẵn. Đặc biệt, đối với một số khung hình đầu tiên trong
tập tin âm thanh, các khung trước đó không được biết. Và, tương tự, đối với một số
các khung trong tệp âm thanh, các khung tiếp theo không được biết đến. Do đó, câu hỏi
phát sinh hệ số khuếch đại nào nên được giả định cho các khung bị thiếu trong "ranh giới"
khu vực. Bộ chuẩn hóa âm thanh động thực hiện hai chế độ để giải quyết tình huống này.
Chế độ ranh giới mặc định giả định hệ số khuếch đại chính xác là 1.0 cho các khung hình bị thiếu,
dẫn đến sự "mờ dần trong" và "mờ dần" ở đầu và cuối
đầu vào, tương ứng.

s Đặt hệ số nén. Trong phạm vi từ 0.0 đến 30.0. Mặc định là 0.0. Theo mặc định,
Dynamic Audio Normalizer không áp dụng kiểu nén "truyền thống". Điều này có nghĩa rằng
các đỉnh tín hiệu sẽ không bị cắt bớt và do đó toàn bộ dải động sẽ được giữ lại
trong mỗi vùng lân cận địa phương. Tuy nhiên, trong một số trường hợp, có thể mong muốn kết hợp
thuật toán chuẩn hóa Dynamic Audio Normalizer với "truyền thống" hơn
nén. Với mục đích này, Bộ chuẩn hóa âm thanh động cung cấp tùy chọn
chức năng nén (tạo ngưỡng). Nếu (và chỉ khi) tính năng nén là
được bật, tất cả các khung đầu vào sẽ được xử lý bởi chức năng ngưỡng đầu gối mềm trước đó
đến quá trình chuẩn hóa thực tế. Nói một cách đơn giản, chức năng ngưỡng sẽ
cắt bỏ tất cả các mẫu có độ lớn vượt quá một giá trị ngưỡng nhất định. Tuy nhiên,
Dynamic Audio Normalizer không chỉ áp dụng một giá trị ngưỡng cố định. Thay vào đó,
giá trị ngưỡng sẽ được điều chỉnh cho từng khung riêng lẻ. Nói chung, nhỏ hơn
các tham số dẫn đến nén mạnh hơn và ngược lại. Giá trị dưới 3.0 không
được khuyến nghị, vì có thể xuất hiện hiện tượng méo âm thanh.

ráy tai
Giúp âm thanh dễ nghe hơn trên tai nghe.

Bộ lọc này thêm `` tín hiệu '' vào âm thanh nổi 44.1kHz (tức là định dạng CD âm thanh) để khi
nghe trên tai nghe, hình ảnh âm thanh nổi sẽ được di chuyển từ bên trong đầu bạn (tiêu chuẩn cho
tai nghe) ra bên ngoài và trước mặt người nghe (tiêu chuẩn cho loa).

Được chuyển từ SoX.

equalizer
Áp dụng bộ lọc cân bằng đỉnh hai cực (EQ). Với bộ lọc này, mức tín hiệu ở
và xung quanh một tần số đã chọn có thể được tăng hoặc giảm, trong khi (không giống như dải thông và
bộ lọc băng tần) mà ở tất cả các tần số khác là không thay đổi.

Để tạo ra các đường cong cân bằng phức tạp, bộ lọc này có thể được cung cấp nhiều lần,
mỗi tần số trung tâm khác nhau.

Bộ lọc chấp nhận các tùy chọn sau:

tần số, f
Đặt tần số trung tâm của bộ lọc bằng Hz.

chiều rộng_type
Đặt phương thức để chỉ định độ rộng băng tần của bộ lọc.

h Hz

q Hệ số Q

o bát cú

s độ dốc

chiều rộng, w
Chỉ định độ rộng băng tần của bộ lọc theo đơn vị width_type.

đạt được, g
Đặt mức tăng hoặc độ suy giảm cần thiết theo dB. Cẩn thận cắt bớt khi sử dụng dương bản
đạt được.

Các ví dụ

· Giảm 10 dB ở tần số 1000 Hz, với băng thông 200 Hz:

bộ cân bằng = f = 1000: width_type = h: width = 200: g = -10

· Áp dụng mức tăng 2 dB ở 1000 Hz với Q 1 và giảm 5 dB ở 100 Hz với Q 2:

equalizer=f=1000:width_type=q:width=1:g=2,equalizer=f=100:width_type=q:width=2:g=-5

mặt bích
Áp dụng hiệu ứng gấp mép cho âm thanh.

Bộ lọc chấp nhận các tùy chọn sau:

chậm trễ
Đặt độ trễ cơ sở tính bằng mili giây. Phạm vi từ 0 đến 30. Giá trị mặc định là 0.

chiều sâu
Đặt độ trễ swep đã thêm tính bằng mili giây. Phạm vi từ 0 đến 10. Giá trị mặc định là 2.

regen
Đặt tỷ lệ phần trăm tái tạo (phản hồi tín hiệu bị trì hoãn). Phạm vi từ -95 đến 95. Mặc định
giá trị là 0.

chiều rộng
Đặt tỷ lệ phần trăm tín hiệu bị trễ trộn với tín hiệu gốc. Phạm vi từ 0 đến 100. Mặc định
giá trị là 71.

tốc độ
Đặt số lần quét trên giây (Hz). Phạm vi từ 0.1 đến 10. Giá trị mặc định là 0.5.

định hình
Đặt hình dạng sóng quét, có thể được hình tam giác or hình sin. Giá trị mặc định là hình sin.

giai đoạn
Đặt dịch chuyển phần trăm sóng quét cho đa kênh. Phạm vi từ 0 đến 100. Giá trị mặc định
là 25.

xen vào
Đặt nội suy đường trễ, tuyến tính or bậc hai. Mặc định là tuyến tính.

vượt qua cao
Áp dụng bộ lọc thông cao với tần số điểm 3dB. Bộ lọc có thể là một cực,
hoặc hai cực (mặc định). Bộ lọc cuộn ra ở 6dB mỗi cực mỗi quãng tám (20dB mỗi
cực mỗi thập kỷ).

Bộ lọc chấp nhận các tùy chọn sau:

tần số, f
Đặt tần số tính bằng Hz. Mặc định là 3000.

cực, p
Đặt số lượng cực. Mặc định là 2.

chiều rộng_type
Đặt phương thức để chỉ định độ rộng băng tần của bộ lọc.

h Hz

q Hệ số Q

o bát cú

s độ dốc

chiều rộng, w
Chỉ định độ rộng băng tần của bộ lọc theo đơn vị width_type. Chỉ áp dụng cho hai cực
lọc. Giá trị mặc định là 0.707q và đưa ra phản hồi Butterworth.

tham gia
Kết hợp nhiều luồng đầu vào thành một luồng đa kênh.

Nó chấp nhận các tham số sau:

đầu vào
Số lượng luồng đầu vào. Nó mặc định là 2.

kênh_layout
Bố cục kênh đầu ra mong muốn. Nó mặc định là âm thanh nổi.

bản đồ Ánh xạ các kênh từ đầu vào đến đầu ra. Đối số là danh sách ánh xạ được phân tách bằng '|',
mỗi người trong "input_idx.in_channel-out_channel " hình thức. đầu vào_idx là chỉ số dựa trên 0 của
luồng đầu vào. trong_kênh có thể là tên của kênh đầu vào (ví dụ: FL cho
phía trước bên trái) hoặc chỉ mục của nó trong luồng đầu vào được chỉ định. kênh ngoài là tên của
kênh đầu ra.

Bộ lọc sẽ cố gắng đoán các ánh xạ khi chúng không được chỉ định rõ ràng. Nó
làm như vậy bằng cách đầu tiên cố gắng tìm một kênh đầu vào phù hợp chưa được sử dụng và nếu điều đó không thành công thì
chọn kênh đầu vào không sử dụng đầu tiên.

Kết hợp 3 đầu vào (với bố cục kênh được đặt đúng cách):

ffmpeg -i INPUT1 -i INPUT2 -i INPUT3 -filter_complex join = input = 3 OUTPUT

Xây dựng đầu ra 5.1 từ 6 luồng đơn kênh:

ffmpeg -i fl -i fr -i fc -i sl -i sr -i lfe -filter_complex
'join=inputs=6:channel_layout=5.1:map=0.0-FL|1.0-FR|2.0-FC|3.0-SL|4.0-SR|5.0-LFE'
ra

muôi
Tải plugin LADSPA (API trình cắm đơn giản của nhà phát triển âm thanh Linux).

Để kích hoạt biên dịch bộ lọc này, bạn cần cấu hình FFmpeg bằng "--enable-ladspa".

tập tin, f
Chỉ định tên của thư viện plugin LADSPA để tải. Nếu biến môi trường
LADSPA_PATH được định nghĩa, plugin LADSPA được tìm kiếm trong từng thư mục
được chỉ định bởi danh sách được phân tách bằng dấu hai chấm trong LADSPA_PATH, nếu không thì trong LADSPA tiêu chuẩn
đường dẫn, theo thứ tự này: TRANG CHỦ / .ladspa / lib /, / usr / local / lib / ladspa /,
/ usr / lib / ladspa /.

plugin, p
Chỉ định plugin trong thư viện. Một số thư viện chỉ chứa một plugin, nhưng
những người khác chứa nhiều người trong số họ. Nếu điều này không được thiết lập, bộ lọc sẽ liệt kê tất cả các plugin có sẵn
trong thư viện được chỉ định.

điều khiển, c
Đặt dấu '|' danh sách điều khiển được phân tách có giá trị bằng XNUMX hoặc nhiều dấu phẩy động
xác định hành vi của plugin đã tải (ví dụ: độ trễ, ngưỡng hoặc
thu được). Các điều khiển cần được xác định bằng cú pháp sau:
c0 =giá trị0| c1 =giá trị1| c2 =giá trị2| ..., ở đâu giá trị là giá trị được đặt trên i-th kiểm soát.
If điều khiển được đặt thành "trợ giúp", tất cả các điều khiển có sẵn và phạm vi hợp lệ của chúng là
đã in.

tỷ lệ mẫu, s
Chỉ định tỷ lệ mẫu, mặc định là 44100. Chỉ được sử dụng nếu plugin không có đầu vào.

nb_samples, n
Đặt số lượng mẫu cho mỗi kênh trên mỗi khung đầu ra, mặc định là 1024. Chỉ
được sử dụng nếu plugin không có đầu vào.

thời hạn, d
Đặt thời lượng tối thiểu của âm thanh có nguồn gốc. Nhìn thấy các Thời gian thời gian phần in các
ffmpeg-utils(1) nhãn hiệu cho cú pháp được chấp nhận. Lưu ý rằng thời lượng kết quả có thể
lớn hơn thời lượng được chỉ định, vì âm thanh được tạo ra luôn bị cắt ở
kết thúc của một khung hoàn chỉnh. Nếu không được chỉ định hoặc thời lượng được biểu thị là số âm,
âm thanh được cho là sẽ được tạo ra mãi mãi. Chỉ được sử dụng nếu plugin không có đầu vào.

Các ví dụ

· Liệt kê tất cả các plugin có sẵn trong thư viện amp (plugin ví dụ LADSPA):

ladspa = file = amp

· Liệt kê tất cả các điều khiển có sẵn và phạm vi hợp lệ của chúng cho plugin "vcf_notch" từ "VCF"
thư viện:

ladspa = f = vcf: p = vcf_notch: c = help

· Mô phỏng thiết bị âm thanh chất lượng thấp bằng plugin "Bộ công cụ âm nhạc máy tính" (CMT)
thư viện:

ladspa=file=cmt:plugin=lofi:controls=c0=22|c1=12|c2=12

· Thêm độ vang cho âm thanh bằng TAP-plugins (các plugin Xử lý âm thanh của Tom):

ladspa = file = tap_reverb: tap_reverb

· Tạo ra tiếng ồn trắng, với biên độ 0.2:

ladspa = file = cmt: noise_source_white: c = c0 = .2

· Tạo 20 bpm nhấp chuột bằng cách sử dụng plugin "C * Click - Metronome" từ "C * Audio Plugin
Thư viện Suite "(CAPS):

ladspa = file = caps: Bấm: c = c1 = 20 '

· Áp dụng hiệu ứng "C * Eq10X2 - Bộ cân bằng âm thanh nổi 10 băng tần":

ladspa=caps:Eq10X2:c=c0=-48|c9=-24|c3=12|c4=2

Lệnh

Bộ lọc này hỗ trợ các lệnh sau:

cN Sửa đổi N-giá trị điều khiển thứ.

Nếu giá trị đã chỉ định không hợp lệ, nó sẽ bị bỏ qua và giá trị trước đó sẽ được giữ lại.

tầm thấp
Áp dụng bộ lọc thông thấp với tần số điểm 3dB. Bộ lọc có thể là một cực hoặc
hai cực (mặc định). Bộ lọc cuộn tắt ở 6dB mỗi cực mỗi quãng tám (20dB mỗi cực
mỗi thập kỷ).

Bộ lọc chấp nhận các tùy chọn sau:

tần số, f
Đặt tần số tính bằng Hz. Mặc định là 500.

cực, p
Đặt số lượng cực. Mặc định là 2.

chiều rộng_type
Đặt phương thức để chỉ định độ rộng băng tần của bộ lọc.

h Hz

q Hệ số Q

o bát cú

s độ dốc

chiều rộng, w
Chỉ định độ rộng băng tần của bộ lọc theo đơn vị width_type. Chỉ áp dụng cho hai cực
lọc. Giá trị mặc định là 0.707q và đưa ra phản hồi Butterworth.

pan
Trộn các kênh với mức tăng cụ thể. Bộ lọc chấp nhận bố cục kênh đầu ra
theo sau là một tập hợp các định nghĩa kênh.

Bộ lọc này cũng được thiết kế để ánh xạ lại các kênh của luồng âm thanh một cách hiệu quả.

Bộ lọc chấp nhận các tham số của biểu mẫu: "l|vượt trội|vượt trội| ... "

l bố cục kênh đầu ra hoặc số lượng kênh

vượt trội
đặc điểm kỹ thuật kênh đầu ra, có dạng:
"out_name=[thu được*]in_name[+ [thu được*]in_name...] "

out_name
kênh đầu ra để xác định, tên kênh (FL, FR, v.v.) hoặc số kênh
(c0, c1, v.v.)

thu được
hệ số nhân cho kênh, 1 giữ nguyên âm lượng

in_name
kênh đầu vào để sử dụng, xem out_name để biết thêm chi tiết; không thể trộn lẫn tên và
các kênh đầu vào được đánh số

Nếu dấu `= 'trong đặc tả kênh được thay thế bằng dấu' <', thì lợi ích cho điều đó
đặc điểm kỹ thuật sẽ được chuẩn hóa lại để tổng số là 1, do đó tránh nhiễu cắt.

Trộn ví dụ

Ví dụ: nếu bạn muốn trộn giảm từ âm thanh nổi thành đơn âm, nhưng với hệ số lớn hơn cho
kênh bên trái:

pan=1c|c0=0.9*c0+0.1*c1

Một kết hợp âm thanh nổi tùy chỉnh thành âm thanh nổi hoạt động tự động cho 3, 4, 5 và 7 kênh
vây quanh:

pan = âm thanh nổi | FL <FL + 0.5 * FC + 0.6 * BL + 0.6 * SL | FR <FR + 0.5 * FC + 0.6 * BR + 0.6 * SR

Lưu ý rằng ffmpeg tích hợp một hệ thống trộn xuống (và trộn lên) mặc định phải
ưu tiên (xem tùy chọn "-ac") trừ khi bạn có nhu cầu rất cụ thể.

Ánh xạ ví dụ

Việc ánh xạ lại kênh sẽ hiệu quả nếu và chỉ khi:

*
*

Nếu tất cả các điều kiện này được thỏa mãn, bộ lọc sẽ thông báo cho người dùng ("Kênh thuần túy
ánh xạ được phát hiện ") và sử dụng phương pháp tối ưu hóa và không mất dữ liệu để thực hiện ánh xạ lại.

Ví dụ: nếu bạn có nguồn 5.1 và muốn có luồng âm thanh nổi bằng cách bỏ phần phụ
kênh truyền hình:

pan = "âm thanh nổi | c0 = FL | c1 = FR"

Với cùng một nguồn, bạn cũng có thể chuyển đổi kênh trước bên trái và phía trước bên phải và giữ
bố cục kênh đầu vào:

pan = "5.1 | c0 = c1 | c1 = c0 | c2 = c2 | c3 = c3 | c4 = c4 | c5 = c5"

Nếu đầu vào là luồng âm thanh nổi, bạn có thể tắt tiếng kênh phía trước bên trái (và vẫn giữ
bố cục kênh âm thanh nổi) với:

pan = "âm thanh nổi | c1 = c1"

Vẫn với đầu vào luồng âm thanh nổi, bạn có thể sao chép kênh bên phải ở cả phía trước bên trái
và phải:

pan = "âm thanh nổi | c0 = FR | c1 = FR"

chơi lại
Bộ lọc máy quét ReplayGain. Bộ lọc này lấy luồng âm thanh làm đầu vào và xuất ra
không thay đổi. Khi kết thúc quá trình lọc, nó hiển thị "track_gain" và "track_peak".

lấy lại mẫu
Chuyển đổi định dạng mẫu âm thanh, tỷ lệ mẫu và bố cục kênh. Nó không có nghĩa là
được sử dụng trực tiếp.

sidechainnén
Bộ lọc này hoạt động giống như máy nén thông thường nhưng có khả năng nén tín hiệu được phát hiện
sử dụng tín hiệu đầu vào thứ hai. Nó cần hai luồng đầu vào và trả về một luồng đầu ra.
Luồng đầu vào đầu tiên sẽ được xử lý tùy thuộc vào tín hiệu luồng thứ hai. Bộ lọc
tín hiệu sau đó có thể được lọc bằng các bộ lọc khác trong các giai đoạn xử lý sau. Nhìn thấy pan
kết hợp lọc.

Bộ lọc chấp nhận các tùy chọn sau:

ngưỡng
Nếu một tín hiệu của luồng thứ hai tăng lên trên mức này, nó sẽ ảnh hưởng đến việc giảm độ lợi
của luồng đầu tiên. Theo mặc định là 0.125. Phạm vi nằm trong khoảng từ 0.00097563 đến 1.

tỉ lệ
Đặt tỷ lệ mà tín hiệu bị giảm. 1: 2 có nghĩa là nếu mức tăng 4dB
trên ngưỡng, nó sẽ chỉ cao hơn 2dB sau khi giảm. Mặc định là 2.
Phạm vi từ 1 đến 20.

tấn công
Lượng mili giây tín hiệu phải tăng lên trên ngưỡng trước khi đạt được
giảm bắt đầu. Mặc định là 20. Phạm vi từ 0.01 đến 2000.

phát hành
Lượng mili giây tín hiệu phải giảm xuống dưới ngưỡng trước khi giảm là
lại giảm. Mặc định là 250. Phạm vi từ 0.01 đến 9000.

trang điểm
Đặt giá trị bằng mức tín hiệu sẽ được khuếch đại sau khi xử lý. Mặc định là 2.
Phạm vi là từ 1 và 64.

đầu gối
Cong đầu gối sắc nét quanh ngưỡng để vào giảm mức tăng nhẹ nhàng hơn.
Mặc định là 2.82843. Phạm vi từ 1 đến 8.

Link
Chọn xem mức "trung bình" giữa tất cả các kênh của luồng chuỗi bên hoặc
kênh to hơn ("tối đa") của luồng chuỗi bên ảnh hưởng đến việc giảm. Mặc định là
"Trung bình".

nhận diện
Nên lấy tín hiệu chính xác trong trường hợp "đỉnh" hoặc tín hiệu RMS trong trường hợp "rms".
Mặc định là "rms", chủ yếu là mượt mà hơn.

Các ví dụ

· Ví dụ ffmpeg đầy đủ lấy 2 đầu vào âm thanh, đầu vào đầu tiên được nén tùy thuộc vào
tín hiệu của đầu vào thứ 2 và tín hiệu nén sau đó sẽ được hợp nhất với đầu vào thứ 2:

ffmpeg -i main.flac -i sidechain.flac -filter_complex "[1: a] asplit = 2 [sc] [mix]; [0: a] [sc] sidechaincompress [compr]; [compr] [mix] amerge"

im lặng
Phát hiện khoảng lặng trong luồng âm thanh.

Bộ lọc này ghi lại thông báo khi phát hiện thấy âm lượng âm thanh đầu vào nhỏ hơn hoặc bằng
giá trị khả năng chịu tiếng ồn trong một khoảng thời gian lớn hơn hoặc bằng tiếng ồn tối thiểu được phát hiện
thời gian.

Thời gian và thời lượng in được tính bằng giây.

Bộ lọc chấp nhận các tùy chọn sau:

thời hạn, d
Đặt thời lượng im lặng cho đến khi có thông báo (mặc định là 2 giây).

tiếng ồn, n
Đặt khả năng chịu tiếng ồn. Có thể được chỉ định bằng dB (trong trường hợp "dB" được thêm vào
giá trị) hoặc tỷ số biên độ. Mặc định là -60dB hoặc 0.001.

Các ví dụ

· Phát hiện 5 giây im lặng với khả năng chịu tiếng ồn -50dB:

silencedetect = n = -50dB: d = 5

· Hoàn thành ví dụ với ffmpeg để phát hiện sự im lặng với khả năng chịu tiếng ồn 0.0001 trong
im lặng.mp3:

ffmpeg -i silence.mp3 -af silencedetect = noise = 0.0001 -f null -

sự im lặng
Bỏ khoảng lặng ở đầu, giữa hoặc cuối âm thanh.

Bộ lọc chấp nhận các tùy chọn sau:

thời gian bắt đầu
Giá trị này được sử dụng để cho biết liệu có nên cắt bớt âm thanh khi bắt đầu âm thanh hay không. MỘT
giá trị bằng XNUMX cho biết không có khoảng lặng nào nên được cắt bỏ ngay từ đầu. Khi nào
chỉ định một giá trị khác XNUMX, nó sẽ cắt âm thanh cho đến khi tìm thấy không im lặng. Thông thường,
khi cắt bớt khoảng lặng từ đầu âm thanh, thời gian bắt đầu sẽ là 1 nhưng nó có thể
được tăng lên các giá trị cao hơn để cắt tất cả âm thanh đến số lượng cụ thể của không im lặng
Chu kỳ. Giá trị mặc định là 0.

thời gian bắt đầu
Chỉ định khoảng thời gian mà tính năng không im lặng phải được phát hiện trước khi nó ngừng cắt
âm thanh. Bằng cách tăng thời lượng, các loạt tiếng ồn có thể được coi là im lặng và
tỉa. Giá trị mặc định là 0.

ngưỡng_bắt đầu
Điều này cho biết giá trị mẫu nào nên được coi là khoảng lặng. Đối với âm thanh kỹ thuật số, một
giá trị 0 có thể ổn nhưng đối với âm thanh được ghi từ analog, bạn có thể muốn tăng
giá trị tính cho tiếng ồn xung quanh. Có thể được chỉ định bằng dB (trong trường hợp "dB" là
được nối với giá trị được chỉ định) hoặc tỷ lệ biên độ. Giá trị mặc định là 0.

dừng_thời gian
Đặt số lượng để cắt bớt khoảng lặng khi kết thúc âm thanh. Để xóa im lặng khỏi
giữa tệp, chỉ định một dừng_thời gian đó là tiêu cực. Giá trị này sau đó được xử lý
dưới dạng giá trị dương và được sử dụng để chỉ ra hiệu ứng sẽ bắt đầu lại quá trình xử lý như
theo quy định của thời gian bắt đầu, làm cho nó phù hợp để loại bỏ khoảng thời gian im lặng trong
giữa âm thanh. Giá trị mặc định là 0.

dừng_duration
Chỉ định khoảng thời gian im lặng phải tồn tại trước khi âm thanh không được sao chép nữa. Qua
chỉ định thời lượng cao hơn, có thể để lại khoảng lặng mà bạn muốn trong âm thanh.
Giá trị mặc định là 0.

dừng_ngưỡng
Điều này cũng giống như ngưỡng_bắt đầu nhưng để cắt bớt khoảng lặng ở cuối âm thanh.
Có thể được chỉ định bằng dB (trong trường hợp "dB" được thêm vào giá trị được chỉ định) hoặc biên độ
tỉ lệ. Giá trị mặc định là 0.

left_silence
Điều này chỉ ra rằng dừng_duration độ dài của âm thanh nên được giữ nguyên ở
bắt đầu của mỗi khoảng thời gian im lặng. Ví dụ: nếu bạn muốn xóa các khoảng dừng dài
giữa các từ nhưng không muốn loại bỏ các tạm dừng hoàn toàn. Giá trị mặc định là 0.

Các ví dụ

· Ví dụ sau đây cho thấy cách bộ lọc này có thể được sử dụng để bắt đầu một bản ghi
không chứa độ trễ khi bắt đầu thường xảy ra giữa việc nhấn ghi
và bắt đầu màn trình diễn:

im lặng = 1: 5: 0.02

gấp ba
Tăng hoặc cắt tần số âm bổng (trên) của âm thanh bằng cách sử dụng bộ lọc giá đỡ hai cực với
phản hồi tương tự như phản hồi của điều khiển âm sắc hi-fi tiêu chuẩn. Điều này còn được gọi là
cân bằng giá đỡ (EQ).

Bộ lọc chấp nhận các tùy chọn sau:

đạt được, g
Đưa ra mức tăng tại giá trị nào thấp hơn của ~ 22 kHz và tần số Nyquist. Nó là
phạm vi hữu ích là khoảng -20 (đối với mức cắt giảm lớn) đến +20 (đối với mức tăng lớn). Coi chưng
cắt bớt khi sử dụng độ lợi tích cực.

tần số, f
Đặt tần số trung tâm của bộ lọc và do đó, có thể được sử dụng để mở rộng hoặc giảm
dải tần số được tăng cường hoặc cắt giảm. Giá trị mặc định là 3000 Hz.

chiều rộng_type
Đặt phương thức để chỉ định độ rộng băng tần của bộ lọc.

h Hz

q Hệ số Q

o bát cú

s độ dốc

chiều rộng, w
Xác định độ dốc của quá trình chuyển đổi kệ của bộ lọc.

khối lượng
Điều chỉnh âm lượng âm thanh đầu vào.

Nó chấp nhận các tham số sau:

khối lượng
Đặt biểu thức âm lượng.

Giá trị đầu ra được cắt thành giá trị lớn nhất.

Âm lượng âm thanh đầu ra được cho bởi mối quan hệ:

= *

Giá trị mặc định cho khối lượng là "1.0".

chính xác
Tham số này đại diện cho độ chính xác toán học.

Nó xác định định dạng mẫu đầu vào nào sẽ được phép, điều này ảnh hưởng đến độ chính xác
của tỷ lệ âm lượng.

cố định
8-bit điểm cố định; điều này giới hạn định dạng mẫu đầu vào ở U8, S16 và S32.

phao
Dấu phẩy động 32-bit; điều này giới hạn định dạng mẫu đầu vào đối với FLT. (vỡ nợ)

tăng gấp đôi
Dấu phẩy động 64-bit; điều này giới hạn định dạng mẫu đầu vào cho DBL.

chơi lại
Chọn hành vi khi gặp dữ liệu bên ReplayGain trong các khung đầu vào.

rơi vãi
Xóa dữ liệu bên ReplayGain, bỏ qua nội dung của nó (mặc định).

bỏ qua
Bỏ qua dữ liệu bên ReplayGain, nhưng để nó trong khung.

theo dõi
Ưu tiên mức tăng ca khúc, nếu có.

album
Ưu tiên tăng album, nếu có.

phát lạigain_preamp
Độ lợi tiền khuếch đại tính bằng dB để áp dụng cho độ lợi khuếch đại phát lại đã chọn.

Giá trị mặc định cho phát lạigain_preamp là 0.0.

đánh giá
Đặt khi biểu thức âm lượng được đánh giá.

Nó chấp nhận các giá trị sau:

hàng loạt
chỉ đánh giá biểu thức một lần trong quá trình khởi tạo bộ lọc hoặc khi khối lượng
lệnh được gửi

khung
đánh giá biểu thức cho mỗi khung hình đến

Giá trị mặc định là hàng loạt.

Biểu thức khối lượng có thể chứa các tham số sau.

n số khung (bắt đầu từ XNUMX)

nb_channels
số kênh

nb_consumed_samples
số lượng mẫu được tiêu thụ bởi bộ lọc

nb_samples
số lượng mẫu trong khung hiện tại

gửi vị trí khung ban đầu trong tệp

Điểm khung PTS

tỷ lệ mẫu
tỷ lệ mẫu

bắt đầu
PTS khi bắt đầu phát trực tiếp

sự khởi đầu
thời gian bắt đầu phát trực tiếp

t Khung thời gian

tb cơ sở thời gian dấu thời gian

khối lượng
giá trị âm lượng đặt cuối cùng

Lưu ý rằng khi đánh giá được thiết lập để hàng loạt chỉ tỷ lệ mẫutb các biến có sẵn,
tất cả các biến khác sẽ đánh giá thành NAN.

Lệnh

Bộ lọc này hỗ trợ các lệnh sau:

khối lượng
Sửa đổi biểu thức âm lượng. Lệnh chấp nhận cùng một cú pháp của
tùy chọn tương ứng.

Nếu biểu thức được chỉ định không hợp lệ, nó được giữ ở giá trị hiện tại.

replaygain_noclip
Ngăn chặn việc cắt bớt bằng cách giới hạn độ lợi được áp dụng.

Giá trị mặc định cho replaygain_noclip là 1.

Các ví dụ

· Giảm một nửa âm lượng âm thanh đầu vào:

volume = volume = 0.5
volume = volume = 1/2
volume = volume = -6.0206dB

Trong tất cả các ví dụ trên, khóa được đặt tên cho khối lượng có thể được bỏ qua, ví dụ như trong:

khối lượng = 0.5

· Tăng công suất âm thanh đầu vào lên 6 decibel bằng cách sử dụng độ chính xác điểm cố định:

volume = volume = 6dB: precision = fixed

· Giảm âm lượng sau thời gian 10 với khoảng thời gian hủy là 5 giây:

volume='if(lt(t,10),1,max(1-(t-10)/5,0))':eval=frame

phát hiện âm lượng
Phát hiện âm lượng của video đầu vào.

Bộ lọc không có tham số. Đầu vào không được sửa đổi. Thống kê về khối lượng sẽ
được in trong nhật ký khi đến cuối luồng đầu vào.

Đặc biệt, nó sẽ hiển thị âm lượng trung bình (bình phương căn bậc hai), âm lượng tối đa (trên một
cơ sở mẫu), và phần đầu của biểu đồ các giá trị khối lượng đã đăng ký (từ
giá trị lớn nhất đến 1/1000 tích lũy của các mẫu).

Tất cả âm lượng đều tính bằng decibel so với giá trị PCM tối đa.

Các ví dụ

Đây là một đoạn trích của đầu ra:

[Parsed_volume detect_0 0xa23120] âm lượng trung bình: -27 dB
[Parsed_volume detect_0 0xa23120] max_volume: -4 dB
[Parsed_volumedetect_0 0xa23120] biểu đồ_4db: 6
[Parsed_volumedetect_0 0xa23120] biểu đồ_5db: 62
[Parsed_volumedetect_0 0xa23120] biểu đồ_6db: 286
[Parsed_volumedetect_0 0xa23120] biểu đồ_7db: 1042
[Parsed_volumedetect_0 0xa23120] biểu đồ_8db: 2551
[Parsed_volumedetect_0 0xa23120] biểu đồ_9db: 4609
[Parsed_volumedetect_0 0xa23120] biểu đồ_10db: 8409

Nó có nghĩa là:

· Năng lượng bình phương trung bình là khoảng -27 dB, hoặc 10 ^ -2.7.

· Mẫu lớn nhất là -4 dB, hay chính xác hơn là từ -4 dB đến -5 dB.

· Có 6 mẫu ở -4 dB, 62 ở -5 dB, 286 ở -6 dB, v.v.

Nói cách khác, việc tăng âm lượng thêm +4 dB không gây ra bất kỳ đoạn nhạc nào, hãy tăng âm lượng lên +5
dB gây ra cắt cho 6 mẫu, v.v.

AUDIO NGUỒN


Dưới đây là mô tả về các nguồn âm thanh hiện có.

Một bộ đệm
Đệm khung âm thanh và cung cấp chúng cho chuỗi bộ lọc.

Nguồn này chủ yếu dành cho mục đích sử dụng có lập trình, cụ thể là thông qua giao diện
được định nghĩa trong libavfilter / asrc_abuffer.h.

Nó chấp nhận các tham số sau:

cơ sở thời gian
Cơ sở thời gian sẽ được sử dụng cho dấu thời gian của các khung đã gửi. Nó phải là một trong hai
một số dấu phẩy động hoặc trong tử số/mẫu số hình thức.

tỷ lệ mẫu
Tốc độ lấy mẫu của bộ đệm âm thanh đến.

mẫu_fmt
Định dạng mẫu của bộ đệm âm thanh đến. Tên định dạng mẫu hoặc tên định dạng
biểu diễn số nguyên tương ứng từ enum AVSampleFormat trong
libavutil / samplefmt.h

kênh_layout
Bố cục kênh của bộ đệm âm thanh đến. Tên bố cục kênh từ
channel_layout_map trong libavutil / channel_layout.c hoặc số nguyên tương ứng của nó
đại diện từ các macro AV_CH_LAYOUT_ * trong libavutil / channel_layout.h

kênh
Số kênh của bộ đệm âm thanh đến. Nếu cả hai kênh
kênh_layout được chỉ định, thì chúng phải nhất quán.

Các ví dụ

abuffer = sample_rate = 44100: sample_fmt = s16p: channel_layout = stereo

sẽ hướng dẫn nguồn chấp nhận âm thanh nổi có ký hiệu 16 bit phẳng ở 44100Hz. Kể từ khi
định dạng mẫu với tên "s16p" tương ứng với số 6 và bố cục kênh "âm thanh nổi"
tương ứng với giá trị 0x3, điều này tương đương với:

abuffer = sample_rate = 44100: sample_fmt = 6: channel_layout = 0x3

aevalrc
Tạo tín hiệu âm thanh được chỉ định bởi một biểu thức.

Nguồn này chấp nhận đầu vào một hoặc nhiều biểu thức (một biểu thức cho mỗi kênh),
được đánh giá và sử dụng để tạo tín hiệu âm thanh tương ứng.

Nguồn này chấp nhận các tùy chọn sau:

exp
Đặt danh sách biểu thức phân tách '|' cho từng kênh riêng biệt. Trong trường hợp
kênh_layout tùy chọn không được chỉ định, bố cục kênh đã chọn phụ thuộc vào
số biểu thức đã cho. Nếu không, biểu thức được chỉ định cuối cùng được áp dụng cho
các kênh đầu ra còn lại.

kênh_layout, c
Đặt bố cục kênh. Số lượng kênh trong bố cục được chỉ định phải bằng nhau
với số lượng biểu thức được chỉ định.

thời hạn, d
Đặt thời lượng tối thiểu của âm thanh có nguồn gốc. Nhìn thấy các Thời gian thời gian phần in các
ffmpeg-utils(1) nhãn hiệu cho cú pháp được chấp nhận. Lưu ý rằng thời lượng kết quả có thể
lớn hơn thời lượng được chỉ định, vì âm thanh được tạo ra luôn bị cắt ở
kết thúc của một khung hoàn chỉnh.

Nếu không được chỉ định hoặc thời lượng được biểu thị là âm, âm thanh sẽ được
được tạo ra mãi mãi.

nb_samples, n
Đặt số lượng mẫu cho mỗi kênh trên mỗi khung đầu ra, mặc định là 1024.

tỷ lệ mẫu, s
Chỉ định tỷ lệ mẫu, mặc định là 44100.

Mỗi biểu thức trong exp có thể chứa các hằng số sau:

n số lượng mẫu được đánh giá, bắt đầu từ 0

t thời gian của mẫu được đánh giá tính bằng giây, bắt đầu từ 0

s tỷ lệ mẫu

Các ví dụ

· Tạo ra sự im lặng:

aevalrc = 0

· Tạo tín hiệu sin với tần số 440 Hz, đặt tốc độ lấy mẫu thành 8000 Hz:

aevalrc = "/ sin (440 * 2 * PI * t): s = 8000"

· Tạo tín hiệu hai kênh, chỉ định bố cục kênh (Trung tâm phía trước + Mặt sau
Trung tâm) rõ ràng:

aevalrc = "/ sin (420 * 2 * PI * t) | cos (430 * 2 * PI * t): c = FC | BC"

· Tạo ra tiếng ồn trắng:

aevalrc = "/ - 2+ngẫu nhiên(0) "

· Tạo tín hiệu điều chế biên độ:

aevalsrc = "/ sin (10 * 2 * PI * t) * sin (880 * 2 * PI * t)"

· Tạo nhịp hai tai 2.5 Hz trên sóng mang 360 Hz:

aevalsrc="/0.1*sin(2*PI*(360-2.5/2)*t) | 0.1*sin(2*PI*(360+2.5/2)*t)"

anullsrc
Nguồn âm thanh rỗng, trả về các khung âm thanh chưa được xử lý. Nó chủ yếu hữu ích như một mẫu
và được sử dụng trong các công cụ phân tích / gỡ lỗi hoặc làm nguồn cho các bộ lọc
bỏ qua dữ liệu đầu vào (ví dụ: bộ lọc tổng hợp sox).

Nguồn này chấp nhận các tùy chọn sau:

kênh_layout, cl
Chỉ định bố cục kênh và có thể là một số nguyên hoặc một chuỗi đại diện cho
bố cục kênh. Giá trị mặc định của kênh_layout là "âm thanh nổi".

Kiểm tra định nghĩa channel_layout_map trong libavutil / channel_layout.c để lập bản đồ
giữa các chuỗi và các giá trị bố cục kênh.

tỷ lệ mẫu, r
Chỉ định tỷ lệ mẫu và mặc định là 44100.

nb_samples, n
Đặt số lượng mẫu cho mỗi khung được yêu cầu.

Các ví dụ

· Đặt tốc độ lấy mẫu thành 48000 Hz và bố cục kênh thành AV_CH_LAYOUT_MONO.

anullsrc = r = 48000: cl = 4

· Thực hiện thao tác tương tự với cú pháp rõ ràng hơn:

anullsrc = r = 48000: cl = mono

Tất cả các tham số cần được xác định rõ ràng.

con sáo
Tổng hợp giọng nói bằng thư viện libflite.

Để kích hoạt biên dịch bộ lọc này, bạn cần cấu hình FFmpeg với
"--enable-libflite".

Lưu ý rằng thư viện flite không an toàn theo chuỗi.

Bộ lọc chấp nhận các tùy chọn sau:

danh sách_voices
Nếu được đặt thành 1, hãy liệt kê tên của các giọng nói có sẵn và thoát ngay lập tức. Vỡ nợ
giá trị là 0.

nb_samples, n
Đặt số lượng mẫu tối đa cho mỗi khung hình. Giá trị mặc định là 512.

tệp văn bản
Đặt tên tệp chứa văn bản để nói.

văn bản
Đặt văn bản để nói.

tiếng nói, v
Đặt giọng nói để sử dụng cho tổng hợp giọng nói. Giá trị mặc định là "kal". Xem thêm
danh sách_voices tùy chọn.

Các ví dụ

· Đọc từ tệp lời nói.txt, và tổng hợp văn bản sử dụng giọng đọc flite chuẩn:

flite = textfile = speech.txt

· Đọc văn bản được chỉ định chọn giọng nói "slt":

flite = text = 'Vậy thì tốt thôi, con quỷ tội nghiệp của một Sub-Sub, mà tôi là bình luận viên': voice = slt

· Nhập văn bản vào ffmpeg:

ffmpeg -f lavfi -i flite = text = 'Vậy thì tốt thôi, tội nghiệp của một Sub-Sub, mà tôi là bình luận viên': voice = slt

· Chế tạo ffplay nói văn bản được chỉ định, sử dụng "flite" và thiết bị "lavfi":

ffplay -f lavfi flite = text = 'Không còn đau buồn vì điều bạn đã làm.'

Để biết thêm thông tin về libflite, hãy kiểm tra:http://www.speech.cs.cmu.edu/flite/>

sin
Tạo ra tín hiệu âm thanh có dạng sóng hình sin có biên độ 1/8.

Tín hiệu âm thanh chính xác đến từng bit.

Bộ lọc chấp nhận các tùy chọn sau:

tần số, f
Đặt tần số sóng mang. Mặc định là 440 Hz.

tiếng bíp_factor, b
Bật một tiếng bíp định kỳ mỗi giây với tần suất bíp_factor lần người vận chuyển
tần số. Mặc định là 0, nghĩa là tiếng bíp bị tắt.

tỷ lệ mẫu, r
Chỉ định tỷ lệ mẫu, mặc định là 44100.

thời hạn, d
Chỉ định thời lượng của luồng âm thanh đã tạo.

Sample_per_frame
Đặt số lượng mẫu cho mỗi khung đầu ra, mặc định là 1024.

Các ví dụ

· Tạo ra một sóng hình sin 440 Hz đơn giản:

sin

· Tạo ra sóng hình sin 220 Hz với tiếng bíp 880 Hz mỗi giây, trong 5 giây:

sin = 220: 4: d = 5
sin = f = 220: b = 4: d = 5
sine = tần số = 220: beep_factor = 4: thời lượng = 5

AUDIO CHÌM


Dưới đây là mô tả về các loại chìm âm thanh hiện có.

nước bọt
Đệm khung âm thanh và cung cấp chúng cho phần cuối của chuỗi bộ lọc.

Chậu rửa này chủ yếu được thiết kế để sử dụng theo chương trình, đặc biệt là thông qua giao diện
được định nghĩa trong libavfilter / buffersink.h hoặc hệ thống tùy chọn.

Nó chấp nhận một con trỏ tới cấu trúc AVABufferSinkContext, cấu trúc này xác định
định dạng bộ đệm, sẽ được chuyển dưới dạng tham số không rõ ràng cho "avfilter_init_filter" cho
khởi tạo.

sự hủy bỏ
Âm thanh chìm; hoàn toàn không làm gì với âm thanh đầu vào. Nó chủ yếu hữu ích như một
mẫu và để sử dụng trong các công cụ phân tích / gỡ lỗi.

Thêm bài này vào danh sách Video của bạn Download bài này LỌC


Khi bạn định cấu hình bản dựng FFmpeg của mình, bạn có thể tắt bất kỳ bộ lọc hiện có nào bằng cách sử dụng
"--disable-filter". Đầu ra cấu hình sẽ hiển thị các bộ lọc video có trong
xây dựng.

Dưới đây là mô tả về các bộ lọc video hiện có sẵn.

trích xuất bảng chữ cái
Trích xuất thành phần alpha từ đầu vào dưới dạng video thang độ xám. Điều này đặc biệt hữu ích
với bảng chữ cái lọc.

bảng chữ cái
Thêm hoặc thay thế thành phần alpha của đầu vào chính bằng giá trị thang độ xám của
đầu vào thứ hai. Điều này được thiết kế để sử dụng với trích xuất bảng chữ cái để cho phép truyền hoặc
lưu trữ chuỗi khung có alpha ở định dạng không hỗ trợ alpha
kênh.

Ví dụ: để tạo lại các khung hình đầy đủ từ một video được mã hóa YUV thông thường và một video riêng biệt
video được tạo bằng trích xuất bảng chữ cái, bạn có thể sử dụng:

phim = in_alpha.mkv [alpha]; [in] [alpha] alphamerge [out]

Vì bộ lọc này được thiết kế để tái tạo, nó hoạt động trên các chuỗi khung hình mà không
đang xem xét dấu thời gian và kết thúc khi một trong hai đầu vào đến cuối luồng. Điều này sẽ
gây ra sự cố nếu đường dẫn mã hóa của bạn giảm khung hình. Nếu bạn đang cố gắng áp dụng một hình ảnh
dưới dạng lớp phủ cho luồng video, hãy xem xét phủ bộ lọc thay thế.

ass
Giống như phụ đề bộ lọc, ngoại trừ việc nó không yêu cầu libavcodec và libavformat để
công việc. Mặt khác, nó bị giới hạn ở các tệp phụ đề ASS (Advanced Substation Alpha).

Bộ lọc này chấp nhận tùy chọn sau đây ngoài các tùy chọn phổ biến từ
phụ đề bộ lọc:

định hình
Đặt công cụ định hình

Các giá trị có sẵn là:

tự động
Công cụ định hình libass mặc định, là công cụ tốt nhất hiện có.

đơn giản
Trình định hình phông chữ nhanh, bất khả tri chỉ có thể thay thế

phức tạp
Máy định hình chậm hơn sử dụng OpenType để thay thế và định vị

Mặc định là "tự động".

mất tiếng ồn
Áp dụng Bộ khử nhiễu trung bình theo thời gian thích ứng cho đầu vào video.

Bộ lọc chấp nhận các tùy chọn sau:

0a Đặt ngưỡng A cho mặt phẳng thứ nhất. Mặc định là 1. Phạm vi hợp lệ là 0.02 đến 0.

0b Đặt ngưỡng B cho mặt phẳng thứ nhất. Mặc định là 1. Phạm vi hợp lệ là 0.04 đến 0.

1a Đặt ngưỡng A cho mặt phẳng thứ hai. Mặc định là 2. Phạm vi hợp lệ là 0.02 đến 0.

1b Đặt ngưỡng B cho mặt phẳng thứ hai. Mặc định là 2. Phạm vi hợp lệ là 0.04 đến 0.

2a Đặt ngưỡng A cho mặt phẳng thứ 3. Mặc định là 0.02. Phạm vi hợp lệ là 0 đến 0.3.

2b Đặt ngưỡng B cho mặt phẳng thứ 3. Mặc định là 0.04. Phạm vi hợp lệ là 0 đến 5.

Ngưỡng A được thiết kế để phản ứng với những thay đổi đột ngột trong tín hiệu đầu vào và ngưỡng B
được thiết kế để phản ứng với những thay đổi liên tục trong tín hiệu đầu vào.

s Đặt bộ lọc số khung hình sẽ sử dụng để lấy giá trị trung bình. Mặc định là 33. Phải là số lẻ
trong phạm vi [5, 129].

hộp thư
Tính toán hộp giới hạn cho các pixel không phải màu đen trong mặt phẳng độ chói của khung hình đầu vào.

Bộ lọc này tính toán hộp giới hạn chứa tất cả các pixel có giá trị độ chói
lớn hơn giá trị tối thiểu cho phép. Các tham số mô tả hộp giới hạn là
được in trên nhật ký bộ lọc.

Bộ lọc chấp nhận tùy chọn sau:

giá trị tối thiểu
Đặt giá trị độ chói tối thiểu. Mặc định là 16.

phát hiện đen
Phát hiện các khoảng video (gần như) hoàn toàn là màu đen. Có thể hữu ích để phát hiện chương
chuyển tiếp, quảng cáo hoặc bản ghi không hợp lệ. Các dòng đầu ra chứa thời gian cho
bắt đầu, kết thúc và thời lượng của khoảng đen được phát hiện được biểu thị bằng giây.

Để hiển thị các dòng đầu ra, bạn cần đặt mức logle ít nhất là
Giá trị AV_LOG_INFO.

Bộ lọc chấp nhận các tùy chọn sau:

đen_min_duration, d
Đặt thời lượng đen tối thiểu được phát hiện được biểu thị bằng giây. Nó phải là một
số dấu phẩy động âm.

Giá trị mặc định là 2.0.

hình_đen_tỷ lệ_th, bức ảnh thứ
Đặt ngưỡng xem ảnh là "đen". Thể hiện giá trị nhỏ nhất cho
tỉ lệ:

/

mà một hình ảnh được coi là màu đen. Giá trị mặc định là 0.98.

pixel_black_th, pix_th
Đặt ngưỡng xem xét pixel "đen".

Ngưỡng biểu thị giá trị độ chói của pixel tối đa mà pixel là
được coi là "đen". Giá trị đã cung cấp được chia tỷ lệ theo phương trình sau:

= + *

độ sáng_range_sizeđộ sáng_giá_trị_tối_thiểu phụ thuộc vào định dạng video đầu vào,
phạm vi là [0-255] đối với định dạng YUV toàn dải và [16-235] đối với YUV không phải toàn dải
định dạng.

Giá trị mặc định là 0.10.

Ví dụ sau đặt ngưỡng pixel tối đa thành giá trị nhỏ nhất và phát hiện
chỉ những khoảng đen từ 2 giây trở lên:

blackdetect = d = 2: pix_th = 0.00

khung đen
Phát hiện các khung (gần như) hoàn toàn màu đen. Có thể hữu ích để phát hiện chương
chuyển tiếp hoặc quảng cáo. Các dòng đầu ra bao gồm số khung hình được phát hiện
khung, phần trăm độ đen, vị trí trong tệp nếu đã biết hoặc -1 và
dấu thời gian tính bằng giây.

Để hiển thị các dòng đầu ra, bạn cần đặt mức logle ít nhất là
Giá trị AV_LOG_INFO.

Nó chấp nhận các tham số sau:

số lượng
Phần trăm pixel phải dưới ngưỡng; nó mặc định là 98.

ngưỡng, đập mạnh
Ngưỡng dưới đó giá trị pixel được coi là màu đen; nó mặc định là 32.

trộn, nói dối
Trộn hai khung hình video vào nhau.

Bộ lọc "pha trộn" nhận hai luồng đầu vào và xuất ra một luồng, đầu vào đầu tiên là
lớp "trên cùng" và đầu vào thứ hai là lớp "dưới cùng". Đầu ra kết thúc khi đầu vào ngắn nhất
chấm dứt.

Bộ lọc "tblend" (pha trộn thời gian) lấy hai khung hình liên tiếp từ một luồng duy nhất và
xuất ra kết quả thu được bằng cách trộn khung hình mới lên trên khung hình cũ.

Sau đây là mô tả về các tùy chọn được chấp nhận.

c0_mode
c1_mode
c2_mode
c3_mode
tất cả_mode
Đặt chế độ hòa trộn cho thành phần pixel cụ thể hoặc tất cả các thành phần pixel trong trường hợp
tất cả_mode. Giá trị mặc định là "bình thường".

Các giá trị có sẵn cho các chế độ thành phần là:

Ngoài ra

Trung bình cộng
ghi
làm tối
sự khác biệt
sự khác biệt128
phân chia
dodge
loại trừ
phát sáng
đèn rất sáng
hỗn hợp cứng
làm sáng
ánh sáng tuyến tính
nhân
sự từ chối
bình thường
or
phủ
phượng hoàng
đèn pin
phản ánh
màn
ánh sáng mềm mại
trừ
ánh sáng rực rỡ
xor
c0_opacity
c1_opacity
c2_opacity
c3_opacity
all_opacity
Đặt độ mờ pha trộn cho thành phần pixel cụ thể hoặc tất cả các thành phần pixel trong trường hợp
all_opacity. Chỉ được sử dụng kết hợp với các chế độ hòa trộn thành phần pixel.

c0_expr
c1_expr
c2_expr
c3_expr
all_expr
Đặt biểu thức kết hợp cho thành phần pixel cụ thể hoặc tất cả các thành phần pixel trong trường hợp
all_expr. Lưu ý rằng các tùy chọn chế độ liên quan sẽ bị bỏ qua nếu chúng được đặt.

Các biểu thức có thể sử dụng các biến sau:

N Số thứ tự của khung được lọc, bắt đầu từ 0.

X
Y tọa độ của mẫu hiện tại

W
H chiều rộng và chiều cao của mặt phẳng hiện được lọc

SW
SH Tỷ lệ chiều rộng và chiều cao tùy thuộc vào mặt phẳng hiện đang được lọc. Nó là tỷ lệ
giữa số pixel mặt phẳng luma tương ứng và số pixel trên mặt phẳng hiện tại.
Ví dụ: đối với YUV4: 2: 0, các giá trị là "1,1" cho mặt phẳng luma và "0.5,0.5" cho
các mặt phẳng sắc độ.

T Thời gian của khung hiện tại, tính bằng giây.

ĐỨNG ĐẦU, A
Giá trị của thành phần pixel ở vị trí hiện tại cho khung hình video đầu tiên (lớp trên cùng).

ĐÁY, B
Giá trị của thành phần pixel ở vị trí hiện tại cho khung hình video thứ hai (dưới cùng
lớp).

ngắn nhất
Buộc kết thúc khi đầu vào ngắn nhất kết thúc. Mặc định là 0. Tùy chọn này là
chỉ được xác định cho bộ lọc "pha trộn".

lặp lại
Tiếp tục áp dụng khung cuối cùng sau khi kết thúc luồng. Giá trị 0
tắt bộ lọc sau khi đến khung cuối cùng của lớp dưới cùng. Mặc định là 1.
Tùy chọn này chỉ được xác định cho bộ lọc "pha trộn".

Các ví dụ

· Áp dụng quá trình chuyển đổi từ lớp dưới cùng lên lớp trên cùng trong 10 giây đầu tiên:

blend=all_expr='A*(if(gte(T,10),1,T/10))+B*(1-(if(gte(T,10),1,T/10)))'

· Áp dụng hiệu ứng bàn cờ 1x1:

blend = all_expr = 'if (eq (mod (X, 2), mod (Y, 2)), A, B)'

· Áp dụng hiệu ứng bên trái khám phá:

blend = all_expr = 'if (gte (N * SW + X, W), A, B)'

· Áp dụng hiệu ứng khám phá:

blend = all_expr = 'if (gte (YN * SH, 0), A, B)'

· Áp dụng hiệu ứng phát hiện bên trái:

blend = all_expr = 'if (gte (T * SH * 40 + Y, H) * gte ((T * 40 * SW + X) * W / H, W), A, B)'

· Hiển thị sự khác biệt giữa khung hình hiện tại và khung hình trước đó:

tblend = all_mode = difference128

hộp mờ
Áp dụng thuật toán boxblur cho video đầu vào.

Nó chấp nhận các tham số sau:

bán kính luma_radius, lr
luma_power, lp
bán kính sắc độ, cr
sắc độ, cp
bán kính alpha, ar
alpha_power, ap

Sau đây là mô tả về các tùy chọn được chấp nhận.

bán kính luma_radius, lr
bán kính sắc độ, cr
bán kính alpha, ar
Đặt biểu thức cho bán kính hộp tính bằng pixel được sử dụng để làm mờ
mặt phẳng đầu vào.

Giá trị bán kính phải là một số không âm và không được lớn hơn giá trị
của biểu thức "min (w, h) / 2" cho mặt phẳng luma và alpha và của "min (cw, ch) / 2"
cho các mặt phẳng sắc độ.

Giá trị mặc định cho bán kính luma_radius là "2". Nếu không được chỉ định, bán kính sắc độbán kính alpha
mặc định thành giá trị tương ứng được đặt cho bán kính luma_radius.

Biểu thức có thể chứa các hằng số sau:

w
h Chiều rộng và chiều cao đầu vào tính bằng pixel.

cw
ch Chiều rộng và chiều cao của hình ảnh sắc độ đầu vào tính bằng pixel.

hsub
vsub
Các giá trị mẫu con sắc độ ngang và dọc. Ví dụ: đối với pixel
định dạng "yuv422p", hsub là 2 và vsub là 1.

luma_power, lp
sắc độ, cp
alpha_power, ap
Chỉ định số lần bộ lọc hình hộp được áp dụng cho mặt phẳng tương ứng.

Giá trị mặc định cho luma_power là 2. Nếu không được chỉ định, sức mạnh sắc độalpha_power
mặc định thành giá trị tương ứng được đặt cho luma_power.

Giá trị 0 sẽ vô hiệu hóa hiệu ứng.

Các ví dụ

· Áp dụng bộ lọc hình hộp với bán kính luma, chroma và alpha được đặt thành 2:

boxblur = luma_radius = 2: luma_power = 1
boxblur = 2: 1

· Đặt bán kính luma thành 2, và bán kính alpha và chroma thành 0:

boxblur = 2: 1: cr = 0: ar = 0

· Đặt bán kính luma và chroma thành một phần nhỏ của kích thước video:

boxblur = luma_radius = min (h \, w) / 10: luma_power = 1: chroma_radius = min (cw \, ch) / 10: chroma_power = 1

codecview
Trực quan hóa thông tin được xuất bởi một số codec.

Một số codec có thể xuất thông tin qua các khung bằng cách sử dụng dữ liệu bên hoặc các phương tiện khác. Vì
ví dụ, một số codec dựa trên MPEG xuất vectơ chuyển động thông qua xuất_mvs cờ trong
giải mã cờ2 tùy chọn.

Bộ lọc chấp nhận tùy chọn sau:

mv Đặt vectơ chuyển động để hình dung.

Cờ có sẵn cho mv là:

pf chuyển tiếp các MV dự đoán về khung hình P

bf chuyển tiếp các MV dự đoán về khung hình B

bb các MV dự đoán lùi về khung hình B

Các ví dụ

· Trực quan hóa các MV đa hướng từ P và B-Frames bằng cách sử dụng ffplay:

ffplay -flags2 + export_mvs input.mpg -vf codecview = mv = pf + bf + bb

cân bằng màu sắc
Sửa đổi cường độ của các màu cơ bản (đỏ, lục và lam) của các khung đầu vào.

Bộ lọc cho phép điều chỉnh khung đầu vào trong bóng tối, âm trung hoặc vùng sáng
các vùng cho cân bằng đỏ-lục lam, xanh lục-đỏ tươi hoặc xanh lam-vàng.

Giá trị điều chỉnh dương sẽ chuyển số dư sang màu chính, giá trị âm
hướng tới màu bổ sung.

Bộ lọc chấp nhận các tùy chọn sau:

rs
gs
bs Điều chỉnh bóng màu đỏ, xanh lá cây và xanh lam (điểm ảnh tối nhất).

rm
gm
bm Điều chỉnh các tông màu đỏ, xanh lục và xanh lam (điểm ảnh trung bình).

rh
gh
bh Điều chỉnh các điểm nổi bật màu đỏ, xanh lục và xanh lam (các điểm ảnh sáng nhất).

Phạm vi được phép cho các tùy chọn là "[-1.0, 1.0]". Giá trị mặc định là 0.

Các ví dụ

· Thêm màu đỏ truyền vào bóng tối:

cân bằng màu = rs = .3

màu sắc chính
Khóa màu không gian màu RGB.

Bộ lọc chấp nhận các tùy chọn sau:

màu sắc
Màu sẽ được thay thế bằng độ trong suốt.

sự giống nhau
Tỷ lệ phần trăm tương tự với màu chủ đạo.

0.01 chỉ khớp với màu chính xác của chính xác, trong khi 1.0 khớp với mọi thứ.

pha trộn
Tỷ lệ hỗn hợp.

0.0 làm cho pixel hoàn toàn trong suốt hoặc hoàn toàn không trong suốt.

Giá trị cao hơn dẫn đến pixel bán trong suốt, với độ trong suốt càng cao thì càng
tương tự màu pixel là màu chủ đạo.

Các ví dụ

· Làm cho mọi pixel màu xanh lá cây trong hình ảnh đầu vào trong suốt:

ffmpeg -i input.png -vf colorkey = green out.png

· Phủ một video màn hình xanh lên trên một hình nền tĩnh.

ffmpeg -i background.png -i video.mp4 -filter_complex "[1: v] colorkey = 0x3BBD1E: 0.3: 0.2 [ckout]; [0: v] [ckout] overlay [out]" -map "[out]" output.flv

cấp độ màu
Điều chỉnh khung hình đầu vào video bằng cách sử dụng các mức.

Bộ lọc chấp nhận các tùy chọn sau:

rimin
gimin
bim bim
mục tiêu
Điều chỉnh màu đỏ, xanh lá cây, xanh lam và điểm đen đầu vào alpha. Các phạm vi được phép cho các tùy chọn là
"[-1.0, 1.0]". Giá trị mặc định là 0.

rimax
gimax
bimax
aimax
Điều chỉnh màu đỏ, xanh lá cây, xanh lam và điểm trắng đầu vào alpha. Các phạm vi được phép cho các tùy chọn là
"[-1.0, 1.0]". Giá trị mặc định là 1.

Các mức đầu vào được sử dụng để làm sáng vùng sáng (tông sáng), làm tối vùng tối (tối
tông màu), thay đổi sự cân bằng của tông màu sáng và tối.

Romin
gomin
quả bom
aomin
Điều chỉnh điểm đen đầu ra màu đỏ, xanh lá cây, xanh lam và alpha. Các phạm vi được phép cho các tùy chọn là
"[0, 1.0]". Giá trị mặc định là 0.

romax
gomax
bomax
aomax
Điều chỉnh điểm trắng đầu ra màu đỏ, xanh lá cây, xanh lam và alpha. Các phạm vi được phép cho các tùy chọn là
"[0, 1.0]". Giá trị mặc định là 1.

Các mức đầu ra cho phép lựa chọn thủ công phạm vi mức đầu ra bị ràng buộc.

Các ví dụ

· Làm cho đầu ra video tối hơn:

colorlevels = rimin = 0.058: gimin = 0.058: bimin = 0.058

· Gia tăng sự tương phản:

colorlevels=rimin=0.039:gimin=0.039:bimin=0.039:rimax=0.96:gimax=0.96:bimax=0.96

· Làm cho đầu ra video nhẹ hơn:

colorlevels = rimax = 0.902: gimax = 0.902: bimax = 0.902

· Tăng độ sáng:

colorlevels = romin = 0.5: gomin = 0.5: bomin = 0.5

máy trộn kênh màu
Điều chỉnh khung hình đầu vào video bằng cách trộn lại các kênh màu.

Bộ lọc này sửa đổi kênh màu bằng cách thêm các giá trị được liên kết với các kênh khác
của các pixel giống nhau. Ví dụ: nếu giá trị cần sửa đổi là màu đỏ, giá trị đầu ra sẽ là:

= * + * + * + *

Bộ lọc chấp nhận các tùy chọn sau:

rr
rg
rb
ra Điều chỉnh đóng góp của các kênh đầu vào màu đỏ, xanh lá cây, xanh lam và alpha cho màu đỏ đầu ra
kênh. Mặc định là 1 cho rrvà 0 cho rg, rbra.

gr
gg
gb
ga Điều chỉnh đóng góp của các kênh đầu vào màu đỏ, xanh lá cây, xanh lam và alpha cho màu xanh lá cây đầu ra
kênh. Mặc định là 1 cho ggvà 0 cho gr, gbga.

br
bg
bb
ba Điều chỉnh đóng góp của các kênh đầu vào màu đỏ, xanh lá cây, xanh lam và alpha cho màu xanh lam đầu ra
kênh. Mặc định là 1 cho bbvà 0 cho br, bgba.

ar
ag
ab
aa Điều chỉnh đóng góp của các kênh đầu vào màu đỏ, xanh lá cây, xanh lam và alpha cho đầu ra alpha
kênh. Mặc định là 1 cho aavà 0 cho ar, agab.

Phạm vi được phép cho các tùy chọn là "[-2.0, 2.0]".

Các ví dụ

· Chuyển đổi nguồn sang thang độ xám:

colorchannelmixer=.3:.4:.3:0:.3:.4:.3:0:.3:.4:.3

· Mô phỏng tông màu nâu đỏ:

colorchannelmixer=.393:.769:.189:0:.349:.686:.168:0:.272:.534:.131

ma trận màu
Chuyển đổi ma trận màu.

Bộ lọc chấp nhận các tùy chọn sau:

src
dst Chỉ định ma trận màu nguồn và đích. Cả hai giá trị phải được chỉ định.

Các giá trị được chấp nhận là:

bt709
BT.709

bt601
BT.601

smpte240m
SMPTE-240M

Fcc FCC

Ví dụ để chuyển đổi từ BT.601 sang SMPTE-240M, hãy sử dụng lệnh:

colormatrix = bt601: smpte240m

bản sao
Sao chép nguồn đầu vào không thay đổi vào đầu ra. Điều này chủ yếu hữu ích cho các mục đích thử nghiệm.

cây trồng
Cắt video đầu vào theo các kích thước nhất định.

Nó chấp nhận các tham số sau:

w, ra_w
Chiều rộng của video đầu ra. Nó mặc định là "iw". Biểu thức này chỉ được đánh giá
một lần trong khi cấu hình bộ lọc hoặc khi w or ra_w lệnh được gửi.

h, ra_h
Chiều cao của video đầu ra. Nó được mặc định là "ih". Biểu thức này được đánh giá
chỉ một lần trong khi cấu hình bộ lọc hoặc khi h or ra_h lệnh được gửi.

x Vị trí nằm ngang, trong video đầu vào, của mép trái của video đầu ra. Nó
mặc định là "(in_w-out_w) / 2". Biểu thức này được đánh giá trên mỗi khung hình.

y Vị trí thẳng đứng, trong video đầu vào, của cạnh trên cùng của video đầu ra. Nó
mặc định là "(in_h-out_h) / 2". Biểu thức này được đánh giá trên mỗi khung hình.

giữ_khía cạnh
Nếu được đặt thành 1 sẽ buộc tỷ lệ khung hình hiển thị đầu ra giống với đầu vào, bằng cách
thay đổi tỷ lệ co của mẫu đầu ra. Nó mặc định là 0.

Sản phẩm ra_w, ra_h, x, y tham số là các biểu thức chứa các hằng số sau:

x
y Các giá trị được tính toán cho xy. Chúng được đánh giá cho mỗi khung hình mới.

trong W
trong_h
Chiều rộng và chiều cao đầu vào.

iw
ih Chúng giống như trong Wtrong_h.

ra_w
ra_h
Chiều rộng và chiều cao đầu ra (đã cắt).

ow
oh Chúng giống như ra_wra_h.

a giống như iw / ih

sar tỷ lệ khung hình mẫu đầu vào

dar tỷ lệ khung hình hiển thị đầu vào, nó giống như (iw / ih) * sar

hsub
vsub
các giá trị mẫu con sắc độ ngang và dọc. Ví dụ đối với định dạng pixel
"yuv422p" hsub là 2 và vsub là 1.

n Số khung đầu vào, bắt đầu từ 0.

gửi vị trí trong tệp của khung đầu vào, NAN nếu không xác định

t Dấu thời gian được biểu thị bằng giây. Đó là NAN nếu dấu thời gian đầu vào không xác định.

Biểu thức cho ra_w có thể phụ thuộc vào giá trị của ra_hvà biểu thức cho ra_h
có thể phụ thuộc vào ra_w, nhưng họ không thể phụ thuộc vào xy, Như xy được đánh giá sau khi
ra_wra_h.

Sản phẩm xy tham số chỉ định các biểu thức cho vị trí của góc trên bên trái của
vùng đầu ra (không cắt xén). Chúng được đánh giá cho từng khung hình. Nếu giá trị được đánh giá
không hợp lệ, nó được tính gần đúng với giá trị hợp lệ gần nhất.

Biểu thức cho x có thể phụ thuộc vào yvà biểu thức cho y có thể phụ thuộc vào x.

Các ví dụ

· Vùng cắt có kích thước 100x100 tại vị trí (12,34).

crop = 100: 100: 12: 34

Sử dụng các tùy chọn đã đặt tên, ví dụ trên sẽ trở thành:

crop = w = 100: h = 100: x = 12: y = 34

· Cắt vùng đầu vào trung tâm với kích thước 100x100:

crop = 100: 100

· Cắt vùng đầu vào trung tâm với kích thước 2/3 của video đầu vào:

crop = 2/3 * in_w: 2/3 * in_h

· Cắt hình vuông trung tâm video đầu vào:

crop = out_w = in_h
crop = in_h

· Phân cách hình chữ nhật với góc trên cùng bên trái được đặt ở vị trí 100: 100 và
góc dưới bên phải tương ứng với góc dưới bên phải của hình ảnh đầu vào.

crop = in_w-100: in_h-100: 100: 100

· Cắt 10 pixel từ viền trái và phải, và 20 pixel từ trên cùng và dưới cùng
biên giới

crop = in_w-2 * 10: in_h-2 * 20

· Chỉ giữ phần tư bên phải dưới cùng của hình ảnh đầu vào:

crop = in_w / 2: in_h / 2: in_w / 2: in_h / 2

· Chiều cao cây cắt để có được sự hài hòa của Hy Lạp:

crop = in_w: 1 / PHI * in_w

· Áp dụng hiệu ứng run rẩy:

crop=in_w/2:in_h/2:(in_w-out_w)/2+((in_w-out_w)/2)*sin(n/10):(in_h-out_h)/2 +((in_h-out_h)/2)*sin(n/7)

· Áp dụng hiệu ứng máy ảnh thất thường tùy thuộc vào dấu thời gian:

crop=in_w/2:in_h/2:(in_w-out_w)/2+((in_w-out_w)/2)*sin(t*10):(in_h-out_h)/2 +((in_h-out_h)/2)*sin(t*13)"

· Đặt x tùy thuộc vào giá trị của y:

crop=in_w/2:in_h/2:y:10+10*sin(n/10)

Lệnh

Bộ lọc này hỗ trợ các lệnh sau:

w, ra_w
h, ra_h
x
y Đặt chiều rộng / chiều cao của video đầu ra và vị trí ngang / dọc trong đầu vào
băng hình. Lệnh chấp nhận cùng một cú pháp của tùy chọn tương ứng.

Nếu biểu thức được chỉ định không hợp lệ, nó được giữ ở giá trị hiện tại.

cắt xén
Tự động phát hiện kích thước cắt.

Nó tính toán các thông số cắt xén cần thiết và in các thông số được đề xuất qua
hệ thống ghi nhật ký. Các kích thước được phát hiện tương ứng với vùng không đen của đầu vào
video.

Nó chấp nhận các tham số sau:

hạn chế
Đặt ngưỡng giá trị màu đen cao hơn, có thể được chỉ định tùy chọn từ không (0)
cho mọi thứ (255 cho các định dạng dựa trên 8bit). Một giá trị cường độ lớn hơn cho tập hợp
giá trị được coi là không đen. Nó mặc định là 24. Bạn cũng có thể chỉ định một giá trị
từ 0.0 đến 1.0 sẽ được chia tỷ lệ tùy thuộc vào độ sâu bit của pixel
định dạng.

tròn
Giá trị mà chiều rộng / chiều cao phải chia hết cho. Nó mặc định là 16. Phần bù
được tự động điều chỉnh để căn giữa video. Sử dụng 2 để chỉ nhận được các kích thước chẵn
(cần cho video 4: 2: 2). 16 là tốt nhất khi mã hóa thành hầu hết các codec video.

đặt lại_đếm, thiết lập lại
Đặt bộ đếm xác định sau bao nhiêu khung hình cắt xén sẽ đặt lại
vùng video lớn nhất đã phát hiện trước đó và bắt đầu lại để phát hiện vùng tối ưu hiện tại
vùng thu hoạch. Giá trị mặc định là 0.

Điều này có thể hữu ích khi biểu trưng kênh làm biến dạng vùng video. 0 cho biết 'không bao giờ
đặt lại 'và trả về khu vực lớn nhất gặp phải trong quá trình phát lại.

đường cong
Áp dụng các điều chỉnh màu sắc bằng cách sử dụng các đường cong.

Bộ lọc này tương tự như các công cụ đường cong của Adobe Photoshop và GIMP. Mỗi thành phần (màu đỏ,
xanh lá cây và xanh lam) có các giá trị của nó được xác định bởi N các điểm chính được ràng buộc với nhau bằng cách sử dụng
đường cong. Trục x đại diện cho các giá trị pixel từ khung đầu vào và trục y là giá trị mới
giá trị pixel được đặt cho khung đầu ra.

Theo mặc định, một đường cong thành phần được xác định bởi hai điểm (0; 0)(1; 1). Điều này tạo ra một
đường thẳng trong đó mỗi giá trị pixel ban đầu được "điều chỉnh" thành giá trị riêng của nó, có nghĩa là
không thay đổi hình ảnh.

Bộ lọc cho phép bạn xác định lại hai điểm này và thêm một số điểm khác. Một đường cong mới (sử dụng một
phép nội suy đường khối lập phương tự nhiên) sẽ được xác định để thông qua tất cả những điều mới này
tọa độ. Các điểm được xác định mới cần phải tăng lên một cách nghiêm ngặt theo trục x và
cung cấp their dịch xy giá trị phải nằm trong [0; 1] khoảng thời gian. Nếu các đường cong được tính toán xảy ra
bên ngoài không gian vectơ, các giá trị sẽ được cắt bớt tương ứng.

Nếu không có điểm chính nào được xác định trong "x = 0", bộ lọc sẽ tự động chèn (0; 0)
chỉ trỏ. Theo cách tương tự, nếu không có điểm chính nào được xác định trong "x = 1", bộ lọc sẽ
tự động chèn một (1; 1) điểm.

Bộ lọc chấp nhận các tùy chọn sau:

cài sẵn
Chọn một trong các cài đặt trước màu có sẵn. Tùy chọn này có thể được sử dụng ngoài
r, g, b thông số; trong trường hợp này, các tùy chọn sau được ưu tiên trên giá trị đặt trước
các giá trị. Các giá trị đặt trước có sẵn là:

không ai
màu_âm
xuyên suốt quá trình
tối hơn
gia tăng sự tương phản
nhẹ hơn
độ tương phản tuyến tính
độ tương phản trung bình
tiêu cực
mạnh_tương phản
cổ điển

Mặc định là "không".

bậc thầy, m
Đặt các điểm chính chính. Những điểm này sẽ xác định ánh xạ đường chuyền thứ hai. Nó là
đôi khi được gọi là ánh xạ "độ chói" hoặc "giá trị". Nó có thể được sử dụng với r, g, b or tất cả các
vì nó hoạt động giống như một LUT xử lý sau.

màu đỏ, r
Đặt các điểm chính cho thành phần màu đỏ.

xanh lá cây, g
Đặt các điểm chính cho thành phần màu xanh lá cây.

màu xanh da trời, b
Đặt các điểm chính cho thành phần màu xanh lam.

tất cả các Đặt các điểm chính cho tất cả các thành phần (không bao gồm chính). Có thể được sử dụng thêm
đến các tùy chọn thành phần các điểm chính khác. Trong trường hợp này, (các) thành phần chưa được đặt sẽ
dự phòng về điều này tất cả các thiết lập.

tập tin ps
Chỉ định tệp đường cong Photoshop (".asv") để nhập cài đặt từ đó.

Để tránh một số xung đột cú pháp đồ thị bộ lọc, mỗi danh sách điểm chính cần được xác định bằng cách sử dụng
cú pháp sau: "x0 / y0 x1 / y1 x2 / y2 ...".

Các ví dụ

· Tăng một chút mức độ giữa của màu xanh lam:

đường cong = blue = '0.5 / 0.58'

· Hiệu ứng cổ điển:

curves=r='0/0.11 .42/.51 1/0.95':g='0.50/0.48':b='0/0.22 .49/.44 1/0.8'

Ở đây chúng tôi có được các tọa độ sau cho từng thành phần:

đỏ "(0;0.11) (0.42;0.51) (1;0.95)"

màu xanh lá
"(0;0) (0.50;0.48) (1;1)"

màu xanh da trời
"(0;0.22) (0.49;0.44) (1;0.80)"

· Ví dụ trước cũng có thể đạt được với cài đặt trước tích hợp sẵn có liên quan:

Curve = preset = cổ điển

· Hoặc đơn giản:

đường cong = cổ điển

· Sử dụng cài đặt trước của Photoshop và xác định lại các điểm của thành phần màu xanh lá cây:

Curve = psfile = 'MyCurvesPresets / Purple.asv': green = '0.45 / 0.53'

dctdnoiz
Khử nhiễu khung bằng 2D DCT (lọc miền tần số).

Bộ lọc này không được thiết kế cho thời gian thực.

Bộ lọc chấp nhận các tùy chọn sau:

sigma, s
Đặt hằng số sigma tiếng ồn.

T sigma xác định ngưỡng cứng là "3 * sigma"; mọi hệ số DCT (tuyệt đối
giá trị) dưới ngưỡng này với bị loại bỏ.

Nếu bạn cần một bộ lọc nâng cao hơn, hãy xem thể hiện.

Mặc định là 0.

trùng lặp
Đặt số lượng pixel chồng lên nhau cho mỗi khối. Vì bộ lọc có thể chậm, bạn có thể
muốn giảm giá trị này, với chi phí của một bộ lọc kém hiệu quả hơn và rủi ro
đồ tạo tác khác nhau.

Nếu giá trị chồng chéo không cho phép xử lý toàn bộ chiều rộng hoặc chiều cao đầu vào, a
cảnh báo sẽ được hiển thị và theo đường viền sẽ không bị thay đổi.

Giá trị mặc định là kích thước khối-1, là cài đặt tốt nhất có thể.

kinh nghiệm, e
Đặt biểu thức hệ số.

Đối với mỗi hệ số của một khối DCT, biểu thức này sẽ được đánh giá là một cấp số nhân
giá trị cho hệ số.

Nếu tùy chọn này được đặt, sigma tùy chọn sẽ bị bỏ qua.

Giá trị tuyệt đối của hệ số có thể được truy cập thông qua c biến.

n Đặt kích thước khối sử dụng số lượng bit. "1 <n" định nghĩa kích thước khối, đó là
chiều rộng và chiều cao của các khối được xử lý.

Giá trị mặc định là 3 (8x8) và có thể được nâng lên 4 cho một kích thước khối 16x16. Ghi chú
rằng việc thay đổi cài đặt này có hậu quả rất lớn đối với quá trình xử lý tốc độ. Vừa là
kích thước khối lớn hơn không nhất thiết có nghĩa là khử nhiễu tốt hơn.

Các ví dụ

Áp dụng một biến tính với một sigma của 4.5:

dctdnoiz = 4.5

Hoạt động tương tự có thể đạt được bằng cách sử dụng hệ thống biểu thức:

dctdnoiz = e = 'gte (c, 4.5 * 3)'

Khử nhiễu bạo lực bằng cách sử dụng kích thước khối "16x16":

dctdnoiz = 15: n = 4

bỏ đi
Xóa tạo tác dải khỏi video đầu vào. Nó hoạt động bằng cách thay thế các pixel được dải bằng
giá trị trung bình của các pixel được tham chiếu.

Bộ lọc chấp nhận các tùy chọn sau:

thứ 1
thứ 2
thứ 3
thứ 4
Đặt ngưỡng phát hiện dải cho từng mặt phẳng. Mặc định là 0.02. Phạm vi hợp lệ là
0.00003 đến 0.5. Nếu sự khác biệt giữa pixel hiện tại và pixel tham chiếu nhỏ hơn
ngưỡng, nó sẽ được coi là dải.

phạm vi, r
Phạm vi phát hiện dải tính bằng pixel. Mặc định là 16. Nếu số dương, số ngẫu nhiên trong phạm vi
0 để đặt giá trị sẽ được sử dụng. Nếu âm, giá trị tuyệt đối chính xác sẽ được sử dụng. Các
phạm vi xác định hình vuông của bốn pixel xung quanh pixel hiện tại.

phương hướng, d
Đặt hướng tính bằng radian mà từ đó bốn pixel sẽ được so sánh. Nếu tích cực, ngẫu nhiên
hướng từ 0 đến hướng đã đặt sẽ được chọn. Nếu âm, chính xác của giá trị tuyệt đối
sẽ được chọn. Ví dụ: radian hướng 0, -PI hoặc -2 * PI sẽ chỉ chọn các pixel trên
cùng một hàng và -PI / 2 sẽ chỉ chọn các pixel trên cùng một cột.

blur
Nếu được bật, pixel hiện tại được so sánh với giá trị trung bình của cả bốn điểm xung quanh
điểm ảnh. Mặc định được bật. Nếu bị vô hiệu, pixel hiện tại sẽ được so sánh với cả bốn
các pixel xung quanh. Pixel được coi là dải nếu chỉ có tất cả bốn điểm khác biệt với
các pixel xung quanh nhỏ hơn ngưỡng.

phá huỷ phần lớn
Thả các khung hình trùng lặp vào các khoảng thời gian đều đặn.

Bộ lọc chấp nhận các tùy chọn sau:

chu kỳ
Đặt số lượng khung hình sẽ bị loại bỏ. Đặt cái này thành N nghĩa là một
khung trong mỗi lô N khung sẽ bị loại bỏ. Mặc định là 5.

trùng lặp
Đặt ngưỡng phát hiện trùng lặp. Nếu số liệu chênh lệch cho một khung là
nhỏ hơn hoặc bằng giá trị này, thì nó được khai báo là trùng lặp. Mặc định là 1.1

sthresh
Đặt ngưỡng thay đổi cảnh. Mặc định là 15.

khốix
khối
Đặt kích thước của các khối trục x và y được sử dụng trong quá trình tính toán số liệu. Lớn hơn
khối cung cấp khả năng khử nhiễu tốt hơn, nhưng cũng cung cấp khả năng phát hiện kém hơn các
sự di chuyển. Phải là một sức mạnh của hai. Mặc định là 32.

ppsrc
Đánh dấu đầu vào chính là đầu vào được xử lý trước và kích hoạt luồng đầu vào nguồn sạch. Cái này
cho phép đầu vào được xử lý trước với nhiều bộ lọc khác nhau để giúp các chỉ số
tính toán trong khi vẫn giữ cho lựa chọn khung hình không bị mất. Khi được đặt thành 1, giá trị đầu tiên
luồng dành cho đầu vào được xử lý trước và luồng thứ hai là nguồn sạch từ
nơi các khung được lưu giữ được chọn. Mặc định là 0.

sắc độ
Đặt xem sắc độ có được xem xét trong tính toán số liệu hay không. Mặc định là 1.

xì hơi
Áp dụng hiệu ứng xì hơi cho video.

Bộ lọc này thay thế pixel bằng địa phương(3x3) trung bình chỉ tính đến
giá trị thấp hơn pixel.

Nó chấp nhận các tùy chọn sau:

ngưỡng 0
ngưỡng 1
ngưỡng 2
ngưỡng 3
Giới hạn thay đổi tối đa cho mỗi mặt phẳng, mặc định là 65535. Nếu 0, mặt phẳng sẽ vẫn
không thay đổi.

máy làm mịn
Loại bỏ tiếng rung do nội dung truyền hình xen kẽ một phần.

Judder có thể được giới thiệu, ví dụ, bởi kéo lên lọc. Nếu nguồn ban đầu là
một phần nội dung truyền hình thì đầu ra của "pullup, dejudder" sẽ có một biến
tỷ lệ khung hình. Có thể thay đổi tốc độ khung hình đã ghi của vùng chứa. Bên cạnh sự thay đổi đó,
bộ lọc này sẽ không ảnh hưởng đến video tốc độ khung hình không đổi.

Tùy chọn có sẵn trong bộ lọc này là:

chu kỳ
Chỉ định độ dài của cửa sổ mà bộ rung lặp lại.

Chấp nhận bất kỳ số nguyên nào lớn hơn 1. Các giá trị hữu ích là:

4 Nếu bản gốc được truyền hình từ 24 đến 30 khung hình / giây (Phim sang NTSC).

5 Nếu bản gốc được truyền hình từ 25 đến 30 khung hình / giây (PAL đến NTSC).

20 Nếu một hỗn hợp của hai.

Mặc định là 4.

biểu tượng
Loại bỏ biểu trưng của đài truyền hình bằng một phép nội suy đơn giản của các pixel xung quanh. Chỉ cần đặt một
hình chữ nhật bao phủ logo và xem nó biến mất (và đôi khi còn xấu hơn
xuất hiện - số dặm của bạn có thể thay đổi).

Nó chấp nhận các tham số sau:

x
y Chỉ định tọa độ góc trên cùng bên trái của biểu trưng. Chúng phải được chỉ định.

w
h Chỉ định chiều rộng và chiều cao của biểu trưng để xóa. Chúng phải được chỉ định.

ban nhạc, t
Chỉ định độ dày của cạnh mờ của hình chữ nhật (được thêm vào wh). Các
giá trị mặc định là 4.

hiển thị
Khi được đặt thành 1, một hình chữ nhật màu xanh lá cây sẽ được vẽ trên màn hình để đơn giản hóa việc tìm kiếm quyền
x, y, wh thông số. Giá trị mặc định là 0.

Hình chữ nhật được vẽ trên các pixel ngoài cùng sẽ được thay thế (một phần) bằng
giá trị nội suy. Giá trị của các pixel tiếp theo ngay bên ngoài hình chữ nhật này
theo mỗi hướng sẽ được sử dụng để tính toán các giá trị pixel được nội suy bên trong
hình chữ nhật.

Các ví dụ

· Đặt một hình chữ nhật bao phủ khu vực có tọa độ góc trên cùng bên trái là 0,0 và kích thước
100x77 và dải kích thước 10:

delogo=x=0:y=0:w=100:h=77:band=10

làm tan chảy
Cố gắng sửa những thay đổi nhỏ trong chuyển dịch ngang và / hoặc dọc. Bộ lọc này giúp loại bỏ
rung máy khi cầm máy ảnh bằng tay, va đập vào chân máy, di chuyển trên xe, v.v.

Bộ lọc chấp nhận các tùy chọn sau:

x
y
w
h Chỉ định một khu vực hình chữ nhật để giới hạn tìm kiếm vectơ chuyển động. Nếu muốn
việc tìm kiếm vectơ chuyển động có thể được giới hạn trong một vùng hình chữ nhật của khung
được xác định bởi góc trên cùng bên trái, chiều rộng và chiều cao của nó. Các thông số này có cùng
nghĩa là bộ lọc hộp kéo có thể được sử dụng để hình dung vị trí của
hộp giới hạn.

Điều này rất hữu ích khi chuyển động đồng thời của các đối tượng trong khung hình có thể
nhầm lẫn với chuyển động của camera bởi tìm kiếm vectơ chuyển động.

Nếu có hoặc tất cả x, y, wh được đặt thành -1 thì toàn bộ khung hình được sử dụng. Điều này cho phép
các tùy chọn sau sẽ được đặt mà không chỉ định hộp giới hạn cho vectơ chuyển động
tìm kiếm.

Mặc định - tìm kiếm toàn bộ khung.

rx
ry Chỉ định mức độ chuyển động tối đa theo hướng x và y trong phạm vi 0-64 pixel.
Mặc định 16.

cạnh
Chỉ định cách tạo pixel để lấp đầy khoảng trống ở rìa khung. Có sẵn
giá trị là:

chỗ trống, 0
Điền các số XNUMX vào các vị trí trống

bản gốc, 1
Hình ảnh gốc tại các vị trí trống

kẹp, 2
Giá trị cạnh đùn tại các vị trí trống

gương, 3
Cạnh được phản chiếu tại các vị trí trống

Giá trị mặc định là gương.

kích thước khối
Chỉ định kích thước khối để sử dụng cho tìm kiếm chuyển động. Phạm vi 4-128 pixel, mặc định là 8.

Ngược lại
Chỉ định ngưỡng tương phản cho các khối. Chỉ các khối có nhiều hơn giá trị được chỉ định
độ tương phản (sự khác biệt giữa pixel tối nhất và sáng nhất) sẽ được xem xét. Phạm vi
1-255, mặc định 125.

Tìm kiếm
Chỉ định chiến lược tìm kiếm. Các giá trị có sẵn là:

đầy đủ, 0
Đặt tìm kiếm đầy đủ

ít hơn, 1
Đặt tìm kiếm ít đầy đủ hơn.

Giá trị mặc định là toàn diện.

tên tập tin
Nếu được đặt thì nhật ký chi tiết của việc tìm kiếm chuyển động sẽ được ghi vào tệp được chỉ định.

mởcl
Nếu được đặt thành 1, hãy chỉ định bằng cách sử dụng các khả năng OpenCL, chỉ khả dụng nếu FFmpeg là
được định cấu hình bằng "--enable-opencl". Giá trị mặc định là 0.

phát hiện
Áp dụng một phép nghịch đảo chính xác của hoạt động telecine. Nó yêu cầu một mẫu được xác định trước
được chỉ định bằng cách sử dụng tùy chọn mẫu phải giống với tùy chọn được truyền đến telecine
lọc.

Bộ lọc này chấp nhận các tùy chọn sau:

trường đầu tiên
hàng đầu, t
trường trên cùng đầu tiên

đáy, b
trường dưới cùng đầu tiên Giá trị mặc định là "trên cùng".

Belt Hold
Chuỗi số đại diện cho kiểu kéo xuống mà bạn muốn áp dụng. Mặc định
giá trị là 23.

khung bắt đầu
Một số đại diện cho vị trí của khung hình đầu tiên liên quan đến telecine
mẫu. Điều này sẽ được sử dụng nếu luồng bị cắt. Giá trị mặc định là 0.

sự giãn nở
Áp dụng hiệu ứng giãn nở cho video.

Bộ lọc này thay thế pixel bằng địa phương(3x3) tối đa.

Nó chấp nhận các tùy chọn sau:

ngưỡng 0
ngưỡng 1
ngưỡng 2
ngưỡng 3
Giới hạn thay đổi tối đa cho mỗi mặt phẳng, mặc định là 65535. Nếu 0, mặt phẳng sẽ vẫn
không thay đổi.

tọa độ
Cờ chỉ định pixel để tham chiếu. Mặc định là 255 tức là tất cả tám pixel là
đã sử dụng.

Gắn cờ cho bản đồ tọa độ 3x3 cục bộ như thế này:

1 2 3
4 5
6 7 8

hộp kéo
Vẽ một hộp màu trên hình ảnh đầu vào.

Nó chấp nhận các tham số sau:

x
y Các biểu thức chỉ định tọa độ góc trên cùng bên trái của hộp. Nó mặc định
để 0.

chiều rộng, w
Chiều cao, h
Các biểu thức chỉ định chiều rộng và chiều cao của hộp; nếu 0 thì họ là
được hiểu là chiều rộng và chiều cao đầu vào. Nó mặc định là 0.

màu sắc, c
Chỉ định màu của ô để viết. Để biết cú pháp chung của tùy chọn này, hãy kiểm tra
phần "Màu sắc" trong hướng dẫn sử dụng ffmpeg-utils. Nếu giá trị đặc biệt "invert" được sử dụng,
màu sắc cạnh hộp giống như video với luma đảo ngược.

độ dày, t
Biểu thức đặt độ dày của cạnh hộp. Giá trị mặc định là 3.

Xem bên dưới để biết danh sách các hằng số được chấp nhận.

Các tham số cho x, y, wht là các biểu thức có chứa các hằng số sau:

dar Tỷ lệ khung hình hiển thị đầu vào, nó giống như (w / h) * sar.

hsub
vsub
các giá trị mẫu con sắc độ ngang và dọc. Ví dụ đối với định dạng pixel
"yuv422p" hsub là 2 và vsub là 1.

trong_h, ih
trong W, iw
Chiều rộng và chiều cao đầu vào.

sar Tỷ lệ co của mẫu đầu vào.

x
y Tọa độ bù x và y nơi hộp được vẽ.

w
h Chiều rộng và chiều cao của hộp được vẽ.

t Chiều dày của hộp được vẽ.

Những hằng số này cho phép x, y, w, ht các biểu thức để tham khảo lẫn nhau, vì vậy bạn
Ví dụ có thể chỉ định "y = x / dar" hoặc "h = w / dar".

Các ví dụ

· Vẽ một hộp đen xung quanh cạnh của hình ảnh đầu vào:

hộp kéo

· Vẽ một hộp với màu đỏ và độ mờ 50%:

hộp kéo = 10: 20: 200: 60:[email được bảo vệ]

Ví dụ trước có thể được chỉ định là:

hộp vẽ = x = 10: y = 20: w = 200: h = 60: màu =[email được bảo vệ]

· Tô màu hồng vào ô:

hộp vẽ = x = 10: y = 10: w = 100: h = 100: màu =[email được bảo vệ]: t = tối đa

· Vẽ mặt nạ 2: 2.40 màu đỏ 1 pixel:

drawbox=x=-t:y=0.5*(ih-iw/2.4)-t:w=iw+t*2:h=iw/2.4+t*2:t=2:c=red

máy vẽ, bản vẽ
Vẽ biểu đồ bằng siêu dữ liệu video hoặc âm thanh đầu vào.

Nó chấp nhận các tham số sau:

m1 Đặt khóa siêu dữ liệu khung đầu tiên mà từ đó các giá trị siêu dữ liệu sẽ được sử dụng để vẽ biểu đồ.

fg1 Đặt biểu thức màu nền trước đầu tiên.

m2 Đặt khóa siêu dữ liệu khung thứ 2 mà từ đó các giá trị siêu dữ liệu sẽ được sử dụng để vẽ biểu đồ.

fg2 Đặt biểu thức màu nền trước thứ 2.

m3 Đặt khóa siêu dữ liệu khung thứ 3 mà từ đó các giá trị siêu dữ liệu sẽ được sử dụng để vẽ biểu đồ.

fg3 Đặt biểu thức màu nền trước thứ 3.

m4 Đặt khóa siêu dữ liệu khung thứ 4 mà từ đó các giá trị siêu dữ liệu sẽ được sử dụng để vẽ biểu đồ.

fg4 Đặt biểu thức màu nền trước thứ 4.

phút Đặt giá trị tối thiểu của giá trị siêu dữ liệu.

tối đa Đặt giá trị lớn nhất của giá trị siêu dữ liệu.

bg Đặt màu nền đồ thị. Mặc định là màu trắng.

chế độ
Đặt chế độ đồ thị.

Các giá trị có sẵn cho chế độ là:

thanh
dot
hàng

Mặc định là "dòng".

trượt
Đặt chế độ trượt.

Các giá trị có sẵn cho trang trình bày là:

khung
Vẽ khung mới khi đạt đến đường viền bên phải.

thay thế
Thay thế các cột cũ bằng những cột mới.

di chuyển
Di chuyển từ phải sang trái.

rsscroll
Di chuyển từ trái sang phải.

Mặc định là "khung".

kích thước
Đặt kích thước của video biểu đồ. Để biết cú pháp của tùy chọn này, hãy kiểm tra "Băng hình kích thước" phần
in các ffmpeg-utils nhãn hiệu. Giá trị mặc định là "900x256".

Biểu thức màu nền trước có thể sử dụng các biến sau:

MIN Giá trị tối thiểu của giá trị siêu dữ liệu.

MAX Giá trị tối đa của giá trị siêu dữ liệu.

VAL Giá trị khóa siêu dữ liệu hiện tại.

Màu được xác định là 0xAABBGGRR.

Ví dụ sử dụng siêu dữ liệu từ trạng thái tín hiệu bộ lọc:

signalstats, drawgraph = lavfi.signalstats.YAVG: min = 0: max = 255

Ví dụ sử dụng siêu dữ liệu từ ebur128 bộ lọc:

ebur128=metadata=1,adrawgraph=lavfi.r128.M:min=-120:max=5

lưới kéo
Vẽ lưới trên hình ảnh đầu vào.

Nó chấp nhận các tham số sau:

x
y Các biểu thức chỉ định tọa độ của một số điểm giao nhau giữa lưới
(có nghĩa là để cấu hình bù đắp). Cả hai đều mặc định là 0.

chiều rộng, w
Chiều cao, h
Các biểu thức chỉ định chiều rộng và chiều cao của ô lưới, nếu 0 thì chúng là
được hiểu là chiều rộng và chiều cao đầu vào, tương ứng, trừ đi "độ dày", vì vậy hình ảnh
được đóng khung. Mặc định là 0.

màu sắc, c
Chỉ định màu của lưới. Để biết cú pháp chung của tùy chọn này, hãy kiểm tra
Phần "Màu" trong sổ tay ffmpeg-utils. Nếu giá trị đặc biệt "invert" được sử dụng,
màu lưới giống như video với luma đảo ngược.

độ dày, t
Biểu thức đặt độ dày của đường lưới. Giá trị mặc định là 1.

Xem bên dưới để biết danh sách các hằng số được chấp nhận.

Các tham số cho x, y, wht là các biểu thức có chứa các hằng số sau:

dar Tỷ lệ khung hình hiển thị đầu vào, nó giống như (w / h) * sar.

hsub
vsub
các giá trị mẫu con sắc độ ngang và dọc. Ví dụ đối với định dạng pixel
"yuv422p" hsub là 2 và vsub là 1.

trong_h, ih
trong W, iw
Chiều rộng và chiều cao của ô lưới đầu vào.

sar Tỷ lệ co của mẫu đầu vào.

x
y Tọa độ x và y của một số điểm giao nhau giữa lưới (có nghĩa là để định cấu hình
bù lại).

w
h Chiều rộng và chiều cao của ô đã vẽ.

t Độ dày của ô đã vẽ.

Những hằng số này cho phép x, y, w, ht các biểu thức để tham khảo lẫn nhau, vì vậy bạn
Ví dụ có thể chỉ định "y = x / dar" hoặc "h = w / dar".

Các ví dụ

· Vẽ một lưới với ô 100x100 pixel, độ dày 2 pixel, với màu đỏ và một
độ mờ 50%:

drawgrid = width = 100: height = 100: thin = 2: color =[email được bảo vệ]

· Vẽ một lưới 3x3 màu trắng với độ mờ 50%:

drawgrid = w = iw / 3: h = ih / 3: t = 2: c =[email được bảo vệ]

bản vẽ
Vẽ một chuỗi văn bản hoặc văn bản từ một tệp được chỉ định trên đầu video, sử dụng libfreetype
thư viện.

Để kích hoạt biên dịch bộ lọc này, bạn cần định cấu hình FFmpeg với
"--enable-libfreetype". Để bật dự phòng phông chữ mặc định và font chữ tùy chọn bạn cần
cấu hình FFmpeg bằng "--enable-libfontconfig". Để kích hoạt định hình văn bản tùy chọn, bạn
cần cấu hình FFmpeg bằng "--enable-libfribidi".

cú pháp

Nó chấp nhận các tham số sau:

cái hộp Được sử dụng để vẽ một hộp xung quanh văn bản bằng cách sử dụng màu nền. Giá trị phải là 1
(bật) hoặc 0 (tắt). Giá trị mặc định của cái hộp là 0.

hộpbiên giới
Đặt chiều rộng của đường viền sẽ được vẽ xung quanh hộp bằng cách sử dụng màu hộp. Mặc định
giá trị của hộpbiên giới là 0.

màu hộp
Màu được sử dụng để vẽ hộp xung quanh văn bản. Để biết cú pháp của tùy chọn này, hãy kiểm tra
phần "Màu sắc" trong hướng dẫn sử dụng ffmpeg-utils.

Giá trị mặc định của màu hộp là màu trắng".

biên giới
Đặt chiều rộng của đường viền sẽ được vẽ xung quanh văn bản bằng cách sử dụng màu viền. Các
giá trị mặc định của biên giới là 0.

màu viền
Đặt màu được sử dụng để vẽ đường viền xung quanh văn bản. Đối với cú pháp của điều này
, hãy kiểm tra phần "Màu sắc" trong hướng dẫn sử dụng ffmpeg-utils.

Giá trị mặc định của màu viền là "đen".

mở rộng
Chọn cách văn bản được mở rộng. Có thể là "none", "strftime" (không dùng nữa) hoặc
"bình thường" (mặc định). Xem drawtext_expansion, bản văn mở rộng phần bên dưới cho
chi tiết.

fix_bounds
Nếu đúng, hãy kiểm tra và sửa các chuỗi văn bản để tránh cắt bớt.

màu phông chữ
Màu được sử dụng để vẽ phông chữ. Để biết cú pháp của tùy chọn này, hãy kiểm tra
Phần "Màu" trong sổ tay ffmpeg-utils.

Giá trị mặc định của màu phông chữ là "đen".

fontcolor_expr
Chuỗi được mở rộng giống như văn bản để có được động màu phông chữ giá trị. Qua
mặc định tùy chọn này có giá trị trống và không được xử lý. Khi tùy chọn này được đặt, nó
ghi đè màu phông chữ tùy chọn.

font chữ
Họ phông chữ được sử dụng để vẽ văn bản. Theo mặc định, Sans.

phông chữ
Tệp phông chữ được sử dụng để vẽ văn bản. Đường dẫn phải được bao gồm. Tham số này
là bắt buộc nếu hỗ trợ fontconfig bị tắt.

vẽ tranh
Tùy chọn này không tồn tại, vui lòng xem hệ thống dòng thời gian

alpha
Vẽ văn bản bằng cách áp dụng hòa trộn alpha. Giá trị có thể là một số giữa 0.0
và 1.0 Biểu thức chấp nhận các biến giống nhau x, y làm. Giá trị mặc định là 1.
Vui lòng xem fontcolor_expr

cỡ chữ
Kích thước phông chữ được sử dụng để vẽ văn bản. Giá trị mặc định của cỡ chữ là 16.

định hình văn bản
Nếu được đặt thành 1, hãy cố gắng định hình văn bản (ví dụ: đảo ngược thứ tự từ phải sang-
văn bản bên trái và nối các ký tự Ả Rập) trước khi vẽ nó. Nếu không, chỉ cần vẽ
văn bản chính xác như đã cho. Theo mặc định 1 (nếu được hỗ trợ).

ft_load_flags
Các cờ được sử dụng để tải các phông chữ.

Các cờ ánh xạ các cờ tương ứng được hỗ trợ bởi libfreetype và là sự kết hợp
trong số các giá trị sau:

mặc định
no_scale
không_gợi ý
sản lượng
no_bitmap
bố cục dọc
buộc_autohint
crop_bitmap
mô phạm
bỏ qua_global_advance_width
không_recurse
bỏ qua_transform
đơn sắc
thiết kế tuyến tính
không_tự động gợi ý

Giá trị mặc định là "default".

Để biết thêm thông tin, hãy tham khảo tài liệu về cờ FT_LOAD_ * libfreetype.

màu bóng
Màu được sử dụng để vẽ bóng phía sau văn bản đã vẽ. Đối với cú pháp của
tùy chọn này, hãy kiểm tra phần "Màu sắc" trong hướng dẫn sử dụng ffmpeg-utils.

Giá trị mặc định của màu bóng là "đen".

bóng tối
vong linh
Các hiệu số x và y cho vị trí bóng văn bản so với vị trí của
chữ. Chúng có thể là giá trị dương hoặc âm. Giá trị mặc định cho cả hai là
"0/XNUMX/XNUMX".

số_bắt đầu
Số khung bắt đầu cho biến n / frame_num. Giá trị mặc định là "0".

kích thước tab
Kích thước về số lượng khoảng trắng được sử dụng để hiển thị tab. Giá trị mặc định là 4.

timecode
Đặt biểu diễn mã thời gian ban đầu ở định dạng "hh: mm: ss [:;.] Ff". Nó có thể được sử dụng
có hoặc không có tham số văn bản. timecode_rate tùy chọn phải được chỉ định.

timecode_rate, tỷ lệ, r
Đặt tốc độ khung hình mã thời gian (chỉ dành cho mã thời gian).

văn bản
Chuỗi văn bản sẽ được vẽ. Văn bản phải là một chuỗi các ký tự được mã hóa UTF-8.
Tham số này là bắt buộc nếu không có tệp nào được chỉ định với tham số tệp văn bản.

tệp văn bản
Một tệp văn bản chứa văn bản được vẽ. Văn bản phải là một chuỗi được mã hóa UTF-8
ký tự.

Tham số này là bắt buộc nếu không có chuỗi văn bản nào được chỉ định với tham số văn bản.

Nếu cả hai văn bảntệp văn bản được chỉ định, một lỗi được ném ra.

tải lại
Nếu được đặt thành 1, tệp văn bản sẽ được tải lại trước mỗi khung hình. Hãy chắc chắn để cập nhật nó
về mặt nguyên tử, hoặc nó có thể được đọc một phần, hoặc thậm chí không thành công.

x
y Các biểu thức chỉ định các hiệu số mà văn bản sẽ được vẽ trong video
khung. Chúng có liên quan đến đường viền trên cùng / bên trái của hình ảnh đầu ra.

Giá trị mặc định của xy là "0".

Xem bên dưới để biết danh sách các hằng số và hàm được chấp nhận.

Các tham số cho xy là các biểu thức chứa các hằng số sau và
chức năng:

dar tỷ lệ khung hình hiển thị đầu vào, nó giống như (w / h) * sar

hsub
vsub
các giá trị mẫu con sắc độ ngang và dọc. Ví dụ đối với định dạng pixel
"yuv422p" hsub là 2 và vsub là 1.

dòng_h, lh
chiều cao của mỗi dòng văn bản

chính_h, h, H
chiều cao đầu vào

chính_w, w, W
chiều rộng đầu vào

max_glyph_a, đi lên
khoảng cách tối đa từ đường cơ sở đến tọa độ lưới cao nhất / trên được sử dụng để
đặt một điểm phác thảo glyph, cho tất cả các glyph được kết xuất. Đó là một giá trị dương, do
theo hướng của lưới với trục Y hướng lên.

max_glyph_d, hạ xuống
khoảng cách tối đa từ đường cơ sở đến tọa độ lưới thấp nhất được sử dụng để đặt một
điểm phác thảo glyph, cho tất cả các glyph được kết xuất. Đây là một giá trị âm, do
định hướng của lưới, với trục Y hướng lên.

max_glyph_h
chiều cao glyph tối đa, đó là chiều cao tối đa cho tất cả các glyph có trong
văn bản được kết xuất, nó tương đương với đi lên - hạ xuống.

max_glyph_w
chiều rộng glyph tối đa, đó là chiều rộng tối đa cho tất cả các glyph có trong
kết xuất văn bản

n số lượng khung hình đầu vào, bắt đầu từ 0

rand (tối thiểu, tối đa)
trả về một số ngẫu nhiên được bao gồm giữa phúttối đa

sar Tỷ lệ co của mẫu đầu vào.

t dấu thời gian được biểu thị bằng giây, NAN nếu dấu thời gian đầu vào không xác định

văn bản_h, th
chiều cao của văn bản được hiển thị

văn bản_w, tw
chiều rộng của văn bản được hiển thị

x
y tọa độ bù x và y nơi văn bản được vẽ.

Các thông số này cho phép xy các biểu thức để giới thiệu lẫn nhau, vì vậy bạn có thể
ví dụ chỉ định "y = x / dar".

bản văn mở rộng

If mở rộng được đặt thành "strftime", bộ lọc nhận ra strftime () trình tự trong
cung cấp văn bản và mở rộng chúng cho phù hợp. Kiểm tra tài liệu của strftime (). Điều này
tính năng không được dùng nữa.

If mở rộng được đặt thành "none", văn bản được in nguyên văn.

If mở rộng được đặt thành "bình thường" (là mặc định), cơ chế mở rộng sau
Được sử dụng.

Ký tự gạch chéo ngược \, theo sau là bất kỳ ký tự nào, luôn mở rộng đến ký tự thứ hai
nhân vật.

Chuỗi của dạng "% {...}" được mở rộng. Văn bản giữa các dấu ngoặc nhọn là một hàm
tên, có thể theo sau bởi các đối số được phân tách bằng ':'. Nếu các đối số chứa đặc biệt
ký tự hoặc dấu phân cách (':' hoặc '}'), chúng phải được thoát ra.

Lưu ý rằng chúng có thể cũng phải được thoát ra dưới dạng giá trị cho văn bản tùy chọn trong
chuỗi đối số bộ lọc và là đối số bộ lọc trong mô tả sơ đồ bộ lọc, và
cũng có thể đối với shell, tạo ra bốn cấp độ thoát; sử dụng một tệp văn bản
tránh những vấn đề này.

Các chức năng sau có sẵn:

kinh nghiệm, e
Kết quả đánh giá biểu thức.

Nó phải có một đối số chỉ định biểu thức được đánh giá, nó chấp nhận
các hằng số và chức năng giống như xy các giá trị. Lưu ý rằng không phải tất cả các hằng số đều nên
được sử dụng, chẳng hạn như kích thước văn bản không được biết khi đánh giá biểu thức, vì vậy
không thay đổi văn bản_wvăn bản_h sẽ có giá trị không xác định.

expr_int_format, nếu
Đánh giá giá trị và đầu ra của biểu thức dưới dạng số nguyên được định dạng.

Đối số đầu tiên là biểu thức được đánh giá, cũng như đối với thể hiện chức năng.
Đối số thứ hai chỉ định định dạng đầu ra. Các giá trị được phép là x, X, du.
Chúng được xử lý chính xác như trong hàm "printf". Tham số thứ ba là tùy chọn
và đặt số lượng vị trí được thực hiện bởi đầu ra. Nó có thể được sử dụng để thêm đệm
với các số không từ bên trái.

gmtime
Thời gian bộ lọc đang chạy, được biểu thị bằng UTC. Nó có thể chấp nhận một đối số:
a strftime () chuỗi định dạng.

giờ địa phương
Thời gian mà bộ lọc đang chạy, được biểu thị bằng múi giờ địa phương. Nó có thể
chấp nhận một đối số: a strftime () chuỗi định dạng.

siêu dữ liệu
Siêu dữ liệu khung. Nó phải có một đối số chỉ định khóa siêu dữ liệu.

n, số khung
Số khung, bắt đầu từ 0.

kiểu_tình_hình
Mô tả 1 ký tự của loại hình ảnh hiện tại.

Điểm Dấu thời gian của khung hiện tại. Nó có thể mất đến hai đối số.

Đối số đầu tiên là định dạng của dấu thời gian; nó mặc định là "flt" trong vài giây như
một số thập phân với độ chính xác micro giây; "hms" là viết tắt của một định dạng
[-] HH: MM: SS.mmm dấu thời gian với độ chính xác mili giây.

Đối số thứ hai là một phần bù được thêm vào dấu thời gian.

Các ví dụ

· Vẽ "Văn bản thử nghiệm" với phông chữ FreeSerif, sử dụng các giá trị mặc định cho tùy chọn
thông số.

drawtext = "fontfile = / usr / share / fonts / truetype / freefont / FreeSerif.ttf: text = 'Test Text'"

· Vẽ 'Văn bản Thử nghiệm' với phông chữ FreeSerif có kích thước 24 ở vị trí x = 100 và y = 50 (đếm
từ góc trên bên trái của màn hình), văn bản có màu vàng với một hộp màu đỏ xung quanh. Cả hai
văn bản và hộp có độ mờ 20%.

drawtext = "fontfile = / usr / share / fonts / truetype / freefont / FreeSerif.ttf: text = 'Test Text': \
x = 100: y = 50: fontize = 24: fontcolor =[email được bảo vệ]: box = 1: boxcolor =[email được bảo vệ]"

Lưu ý rằng dấu ngoặc kép là không cần thiết nếu không sử dụng dấu cách trong
danh sách tham số.

· Hiển thị văn bản ở giữa khung video:

drawtext = "fontsize = 30: fontfile = FreeSerif.ttf: text = 'hello world': x = (w-text_w) / 2: y = (h-text_h) / 2"

· Hiển thị một dòng văn bản trượt từ phải sang trái ở hàng cuối cùng của khung video. Các
hồ sơ LONG_LINE được giả định là chứa một dòng duy nhất không có dòng mới.

drawtext = "fontsize = 15: fontfile = FreeSerif.ttf: text = LONG_LINE: y = h-line_h: x = -50 * t"

· Hiển thị nội dung của tập tin TÍN ra khỏi cuối khung và cuộn lên.

drawtext = "fontsize = 20: fontfile = FreeSerif.ttf: textfile = CREDITS: y = h-20 * t"

· Vẽ một chữ cái màu xanh lá cây duy nhất "g", ở giữa video đầu vào. Đường cơ sở glyph
được đặt ở độ cao nửa màn hình.

drawtext = "fontsize = 60: fontfile = FreeSerif.ttf: fontcolor = green: text = g: x = (w-max_glyph_w) / 2: y = h / 2-ascent"

· Hiển thị văn bản trong 1 giây sau mỗi 3 giây:

drawtext = "fontfile = FreeSerif.ttf: fontcolor = white: x = 100: y = x / dar: enable = lt (mod (t \, 3) \, 1): text = 'flash'"

· Sử dụng fontconfig để đặt phông chữ. Lưu ý rằng dấu hai chấm cần phải được thoát ra.

drawtext = 'fontfile = Linux Libertine O-40 \: style = Semibold: text = FFmpeg'

· In ngày của mã hóa thời gian thực (xem thời gian căng thẳng(3)):

drawtext = 'fontfile = FreeSans.ttf: text =% {localtime \:% a% b% d% Y}'

· Hiển thị văn bản mờ dần trong và ngoài (xuất hiện / biến mất):

#!/ Bin / sh
DS = 1.0 # bắt đầu hiển thị
DE = 10.0 # cuối màn hình
FID = 1.5 # mờ dần trong thời gian
FOD = 5 # thời lượng mờ dần
ffplay -f lavfi "color, drawtext = text = TEST: fontsize = 50: fontfile = FreeSerif.ttf: fontcolor_expr = ff0000% {eif \\\\: clip (255 * (1 * giữa (t \\, $ DS + $ FID \\, $ DE - $ FOD) + ((t - $ DS) / $ FID) * giữa (t \\, $ DS \\, $ DS + $ FID) + (- (t - $ DE) / $ FOD) * giữa (t \\, $ DE - $ FOD \\, $ DE)) \\, 0 \\, 255) \\\\: x \\\\: 2} "

Để biết thêm thông tin về libfreetype, hãy kiểm tra:http://www.freetype.org/>.

Để biết thêm thông tin về fontconfig, hãy kiểm tra:
<http://freedesktop.org/software/fontconfig/fontconfig-user.html>.

Để biết thêm thông tin về libfribidi, hãy kiểm tra:http://fribidi.org/>.

phát hiện cạnh
Phát hiện và vẽ các cạnh. Bộ lọc sử dụng thuật toán Phát hiện cạnh Canny.

Bộ lọc chấp nhận các tùy chọn sau:

thấp
cao
Đặt các giá trị ngưỡng thấp và cao được sử dụng bởi thuật toán ngưỡng Canny.

Ngưỡng cao chọn các pixel cạnh "mạnh", sau đó được kết nối thông qua
8-kết nối với các pixel cạnh "yếu" được chọn bởi ngưỡng thấp.

thấpcao giá trị ngưỡng phải được chọn trong phạm vi [0,1] và thấp nên là
nhỏ hơn hoặc bằng cao.

Giá trị mặc định cho thấp là "20/255" và giá trị mặc định cho cao là "50/255".

chế độ
Xác định chế độ vẽ.

Dây điện
Vẽ dây màu trắng / xám trên nền đen.

phối màu
Trộn các màu để tạo hiệu ứng sơn / hoạt hình.

Giá trị mặc định là Dây điện.

Các ví dụ

· Phát hiện cạnh tiêu chuẩn với các giá trị tùy chỉnh cho ngưỡng trễ:

edgedetect = low = 0.1: high = 0.4

· Hiệu ứng sơn không có ngưỡng:

edgedetect = mode = colormix: high = 0

eq
Đặt độ sáng, độ tương phản, độ bão hòa và điều chỉnh gamma gần đúng.

Bộ lọc chấp nhận các tùy chọn sau:

Ngược lại
Đặt biểu thức tương phản. Giá trị phải là giá trị thực trong phạm vi "-2.0" đến 2.0.
Giá trị mặc định là "0".

độ sáng
Đặt biểu thức độ sáng. Giá trị phải là giá trị thực trong phạm vi "-1.0" đến 1.0.
Giá trị mặc định là "0".

bão hòa
Đặt biểu thức bão hòa. Giá trị phải là một số thực trong phạm vi từ 0.0 đến 3.0. Các
giá trị mặc định là "1".

gamma
Đặt biểu thức gamma. Giá trị phải là một số thực trong phạm vi từ 0.1 đến 10.0. Mặc định
giá trị là "1".

gamma_r
Đặt biểu thức gamma cho màu đỏ. Giá trị phải là một số thực trong phạm vi 0.1 đến 10.0. Các
giá trị mặc định là "1".

gamma_g
Đặt biểu thức gamma cho màu xanh lá cây. Giá trị phải là một số thực trong phạm vi 0.1 đến 10.0.
Giá trị mặc định là "1".

gamma_b
Đặt biểu thức gamma cho màu xanh lam. Giá trị phải là một số thực trong phạm vi 0.1 đến 10.0. Các
giá trị mặc định là "1".

gamma_weight
Đặt biểu thức trọng lượng gamma. Nó có thể được sử dụng để giảm ảnh hưởng của gamma cao
giá trị trên các khu vực hình ảnh sáng, ví dụ: giữ cho chúng không bị đơn giản hóa quá mức và đơn giản
trắng. Giá trị phải là một số thực trong phạm vi từ 0.0 đến 1.0. Giá trị 0.0 biến gamma
sự điều chỉnh hoàn toàn giảm xuống trong khi 1.0 giữ nguyên sức mạnh của nó. Mặc định là "1".

đánh giá
Đặt khi các biểu thức cho độ sáng, độ tương phản, độ bão hòa và biểu thức gamma
được đánh giá.

Nó chấp nhận các giá trị sau:

trong đó
chỉ đánh giá các biểu thức một lần trong quá trình khởi tạo bộ lọc hoặc khi một lệnh
được xử lý

khung
đánh giá biểu thức cho mỗi khung hình đến

Giá trị mặc định là trong đó.

Các biểu thức chấp nhận các tham số sau:

n số khung của khung đầu vào bắt đầu từ 0

gửi vị trí byte của gói tương ứng trong tệp đầu vào, NAN nếu không xác định

r tốc độ khung hình của video đầu vào, NAN nếu tốc độ khung hình đầu vào không xác định

t dấu thời gian được biểu thị bằng giây, NAN nếu dấu thời gian đầu vào không xác định

Lệnh

Bộ lọc hỗ trợ các lệnh sau:

Ngược lại
Đặt biểu thức tương phản.

độ sáng
Đặt biểu thức độ sáng.

bão hòa
Đặt biểu thức bão hòa.

gamma
Đặt biểu thức gamma.

gamma_r
Đặt biểu thức gamma_r.

gamma_g
Đặt biểu thức gamma_g.

gamma_b
Đặt biểu thức gamma_b.

gamma_weight
Đặt biểu thức gamma_weight.

Lệnh chấp nhận cùng một cú pháp của tùy chọn tương ứng.

Nếu biểu thức được chỉ định không hợp lệ, nó được giữ ở giá trị hiện tại.

xói mòn
Áp dụng hiệu ứng xói mòn cho video.

Bộ lọc này thay thế pixel bằng địa phương(3x3) tối thiểu.

Nó chấp nhận các tùy chọn sau:

ngưỡng 0
ngưỡng 1
ngưỡng 2
ngưỡng 3
Giới hạn thay đổi tối đa cho mỗi mặt phẳng, mặc định là 65535. Nếu 0, mặt phẳng sẽ vẫn
không thay đổi.

tọa độ
Cờ chỉ định pixel để tham chiếu. Mặc định là 255 tức là tất cả tám pixel là
đã sử dụng.

Gắn cờ cho bản đồ tọa độ 3x3 cục bộ như thế này:

1 2 3
4 5
6 7 8

máy bay giải nén
Trích xuất các thành phần kênh màu từ luồng video đầu vào thành video thang độ xám riêng biệt
dòng.

Bộ lọc chấp nhận tùy chọn sau:

máy bay
Đặt (các) mặt phẳng để giải nén.

Các giá trị có sẵn cho mặt phẳng là:

y
u
v
a
r
g
b

Việc chọn các mặt phẳng không có sẵn trong đầu vào sẽ dẫn đến lỗi. Đó có nghĩa là bạn
không thể chọn đồng thời các mặt phẳng "r", "g", "b" với các mặt phẳng "y", "u", "v".

Các ví dụ

· Trích xuất thành phần kênh màu luma, u và v từ khung hình video đầu vào thành 3 thang độ xám
kết quả đầu ra:

ffmpeg -i video.avi -filter_complex 'extractplanes = y + u + v [y] [u] [v]' -map '[y]' y.avi -map '[u]' u.avi -map '[ v] 'v.avi

cùi chỏ
Áp dụng hiệu ứng posterize bằng thuật toán ELBG (LBG nâng cao).

Đối với mỗi hình ảnh đầu vào, bộ lọc sẽ tính toán ánh xạ tối ưu từ đầu vào đến
đầu ra được cung cấp cho độ dài sách mã, đó là số lượng màu đầu ra riêng biệt.

Bộ lọc này chấp nhận các tùy chọn sau.

codebook_length, l
Đặt độ dài sách mã. Giá trị phải là một số nguyên dương và đại diện cho số
màu sắc đầu ra riêng biệt. Giá trị mặc định là 256.

nb_bước, n
Đặt số lần lặp tối đa để áp dụng cho việc tính toán ánh xạ tối ưu. Các
giá trị càng cao thì kết quả càng tốt và thời gian tính toán càng cao. Vỡ nợ
giá trị là 1.

hạt giống, s
Đặt một hạt giống ngẫu nhiên, phải là một số nguyên được bao gồm từ 0 đến UINT32_MAX. Nếu không
được chỉ định hoặc nếu được đặt rõ ràng thành -1, bộ lọc sẽ cố gắng sử dụng một hạt ngẫu nhiên tốt
trên cơ sở nỗ lực tốt nhất.

bạn8
Đặt định dạng pixel đầu ra pal8. Tùy chọn này không hoạt động với độ dài sách mã lớn hơn
hơn 256

phai
Áp dụng hiệu ứng mờ dần / mờ dần cho video đầu vào.

Nó chấp nhận các tham số sau:

kiểu, t
Loại hiệu ứng có thể là "vào" cho hiệu ứng mờ dần hoặc "ra" cho hiệu ứng mờ dần.
Mặc định là "trong".

start_frame, s
Chỉ định số lượng khung để bắt đầu áp dụng hiệu ứng mờ dần tại. Mặc định là 0.

nb_frames, n
Số lượng khung hình mà hiệu ứng mờ dần kéo dài. Vào cuối hiệu ứng mờ dần,
video đầu ra sẽ có cùng cường độ với video đầu vào. Vào cuối của sự mờ dần-
ngoài quá trình chuyển đổi, video đầu ra sẽ được lấp đầy bởi màu sắc. Mặc định là
25.

alpha
Nếu được đặt thành 1, chỉ làm mờ kênh alpha, nếu kênh này tồn tại trên đầu vào. Giá trị mặc định là 0.

thời gian bắt đầu, st
Chỉ định dấu thời gian (tính bằng giây) của khung để bắt đầu áp dụng hiệu ứng mờ dần. Nếu như
cả start_frame và start_time đều được chỉ định, quá trình mờ sẽ bắt đầu tùy theo điều kiện nào đến
Cuối cùng. Mặc định là 0.

thời hạn, d
Số giây mà hiệu ứng mờ dần phải kéo dài. Vào cuối của quá trình mờ dần
hiệu ứng video đầu ra sẽ có cùng cường độ với video đầu vào, ở cuối
quá trình chuyển đổi mờ dần, video đầu ra sẽ được lấp đầy bằng phần đã chọn màu sắc. Nếu
cả thời lượng và nb_frame đều được chỉ định, thời lượng được sử dụng. Mặc định là 0 (nb_frames
được sử dụng theo mặc định).

màu sắc, c
Chỉ định màu của sự mờ dần. Mặc định là "đen".

Các ví dụ

· Làm mờ trong 30 khung hình đầu tiên của video:

phai = in: 0: 30

Lệnh trên tương đương với:

phai = t = in: s = 0: n = 30

· Làm mờ 45 khung hình cuối cùng của video 200 khung hình:

phai = out: 155: 45
phai = type = out: start_frame = 155: nb_frames = 45

· Làm mờ dần 25 khung hình đầu tiên và làm mờ dần 25 khung hình cuối cùng của video 1000 khung hình:

fade = in: 0: 25, fade = out: 975: 25

· Làm cho 5 khung đầu tiên có màu vàng, sau đó mờ dần từ khung 5-24:

phai = in: 5: 20: color = yellow

· Làm mờ dần trong alpha trong 25 khung hình đầu tiên của video:

phai = in: 0: 25: alpha = 1

· Tạo màu đen 5.5 giây đầu tiên, sau đó mờ dần trong 0.5 giây:

phai = t = in: st = 5.5: d = 0.5

bộ lọc
Áp dụng các biểu thức tùy ý cho các mẫu trong miền tần số

dc_Y
Điều chỉnh giá trị dc (độ lợi) của mặt phẳng luma của hình ảnh. Bộ lọc chấp nhận một
giá trị nguyên trong phạm vi 0 đến 1000. Giá trị mặc định được đặt thành 0.

dc_U
Điều chỉnh giá trị dc (độ lợi) của mặt phẳng sắc độ đầu tiên của hình ảnh. Bộ lọc chấp nhận một
giá trị nguyên trong phạm vi 0 đến 1000. Giá trị mặc định được đặt thành 0.

dc_V
Điều chỉnh giá trị dc (độ lợi) của mặt phẳng sắc độ thứ 2 của hình ảnh. Bộ lọc chấp nhận một
giá trị nguyên trong phạm vi 0 đến 1000. Giá trị mặc định được đặt thành 0.

trọng lượng_Y
Đặt biểu thức trọng số miền tần số cho mặt phẳng luma.

trọng lượng_U
Đặt biểu thức trọng số miền tần số cho mặt phẳng sắc độ thứ nhất.

trọng lượng_V
Đặt biểu thức trọng số miền tần số cho mặt phẳng sắc độ thứ hai.

Bộ lọc chấp nhận các biến sau:

X
Y Tọa độ của mẫu hiện tại.

W
H Chiều rộng và chiều cao của hình ảnh.

Các ví dụ

· Vượt qua cao:

fftfilt = dc_Y = 128: weight_Y = 'squish (1- (Y + X) / 100)'

· Thông qua thấp:

fftfilt = dc_Y = 0: weight_Y = 'squish ((Y + X) / 100-1)'

· Làm sắc nét:

fftfilt = dc_Y = 0: weight_Y = '1 + squish (1- (Y + X) / 100)'

lĩnh vực
Trích xuất một trường đơn lẻ từ một hình ảnh xen kẽ bằng số học bước để tránh lãng phí
Thời gian của CPU. Các khung đầu ra được đánh dấu là không xen kẽ.

Bộ lọc chấp nhận các tùy chọn sau:

kiểu
Chỉ định trích xuất trường trên cùng (nếu giá trị là 0 hoặc "trên cùng") hay trường dưới cùng
(nếu giá trị là 1 hoặc "dưới cùng").

đấu trường
Bộ lọc đối sánh trường cho telecine nghịch đảo. Nó có nghĩa là để tái tạo lại sự tiến bộ
khung hình từ một luồng truyền hình. Bộ lọc không làm rơi các khung hình trùng lặp, do đó, để đạt được
một "fieldmatch" viễn thông nghịch đảo hoàn chỉnh cần phải được theo sau bởi một bộ lọc thập phân như vậy
as phá huỷ phần lớn trong đồ thị bộ lọc.

Sự tách biệt của đối sánh trường và số thập phân được thúc đẩy một cách đáng chú ý bởi
khả năng chèn dự phòng bộ lọc loại bỏ xen kẽ giữa hai bộ lọc. Nếu nguồn
có hỗn hợp nội dung truyền hình thực tế và nội dung xen kẽ, "fieldmatch" sẽ không thể khớp
trường cho các phần xen kẽ. Nhưng các khung còn lại được chải kỹ này sẽ được đánh dấu là
xen kẽ và do đó có thể được loại bỏ xen kẽ bởi một bộ lọc sau này, chẳng hạn như yadif trước
sự tàn lụi.

Ngoài các tùy chọn cấu hình khác nhau, "fieldmatch" có thể mất một giây tùy chọn
luồng, được kích hoạt thông qua ppsrc lựa chọn. Nếu được bật, việc xây dựng lại khung sẽ
dựa trên các trường và khung từ luồng thứ hai này. Điều này cho phép đầu vào đầu tiên là
được xử lý trước để giúp các thuật toán khác nhau của bộ lọc, trong khi vẫn giữ
đầu ra không mất dữ liệu (giả sử các trường được khớp đúng). Thông thường, một trường nhận biết
bộ khử nhiễu hoặc điều chỉnh độ sáng / độ tương phản có thể hữu ích.

Lưu ý rằng bộ lọc này sử dụng các thuật toán tương tự như TIVTC / TFM (dự án AviSynth) và
VIVTC / VFM (dự án VapourSynth). Sau đó là một bản sao nhẹ của TFM mà từ đó có "fieldmatch"
được dựa trên. Mặc dù ngữ nghĩa và cách sử dụng rất gần gũi, nhưng một số tên hành vi và tùy chọn
có thể khác nhau.

Sản phẩm phá huỷ phần lớn bộ lọc hiện chỉ hoạt động cho đầu vào tốc độ khung hình không đổi. Nếu đầu vào của bạn có
truyền hình hỗn hợp (30 khung hình / giây) và nội dung tiến bộ với tốc độ khung hình thấp hơn như 24 khung hình / giây sử dụng
sau chuỗi bộ lọc để tạo luồng cfr cần thiết:
"dejudder, fps = 30000/1001, fieldmatch, decimate".

Bộ lọc chấp nhận các tùy chọn sau:

gọi món
Chỉ định thứ tự trường giả định của luồng đầu vào. Các giá trị có sẵn là:

tự động
Tự động phát hiện chẵn lẻ (sử dụng giá trị chẵn lẻ nội bộ của FFmpeg).

bff Giả sử trường dưới cùng đầu tiên.

tff Giả sử trường trên cùng đầu tiên.

Lưu ý rằng đôi khi không nên tin tưởng vào độ chẵn lẻ mà luồng thông báo.

Giá trị mặc định là tự động.

chế độ
Đặt chế độ hoặc chiến lược phù hợp để sử dụng. pc chế độ là an toàn nhất theo nghĩa là nó
sẽ không có nguy cơ tạo ra hiện tượng giật do các khung hình trùng lặp khi có thể, nhưng nếu có
các chỉnh sửa xấu hoặc các trường kết hợp, nó sẽ kết thúc xuất ra các khung được lược bỏ khi kết hợp tốt
có thể thực sự tồn tại. Mặt khác, pcn_ub chế độ rủi ro nhất về
tạo ra hiện tượng giật, nhưng hầu như sẽ luôn tìm được khung hình tốt nếu có. Các
các giá trị khác đều nằm ở đâu đó giữa pcpcn_ub về mặt rủi ro giật cục
và tạo các khung hình trùng lặp so với việc tìm kiếm các khung hình phù hợp tốt trong các phần có các chỉnh sửa không tốt,
ruộng mồ côi, ruộng pha trộn, v.v.

Thông tin chi tiết về p / c / n / u / b có sẵn trong p / c / n / u / b có nghĩa là phần.

Các giá trị có sẵn là:

pc Khớp 2 chiều (p / c)

pc_n
Đối sánh 2 chiều và thử đối sánh thứ 3 nếu vẫn được kết hợp (p / c + n)

pc_u
Đối sánh 2 chiều và thử đối sánh thứ 3 (cùng thứ tự) nếu vẫn được kết hợp (p / c + u)

pc_n_ub
Đối sánh 2 chiều, thử đối sánh thứ 3 nếu vẫn được kết hợp và thử đối sánh thứ 4/5 nếu
vẫn được chải kỹ (p / c + n + u / b)

pcn Kết hợp 3 chiều (p / c / n)

pcn_ub
Đối sánh 3 chiều và thử đối sánh thứ 4/5 nếu cả 3 trận đấu ban đầu đều
được phát hiện là đã chải kỹ (p / c / n + u / b)

Dấu ngoặc đơn ở cuối cho biết các kết quả phù hợp sẽ được sử dụng cho chế độ đó
giả định gọi món=tff (Và lĩnh vực on tự động or hàng đầu).

Về tốc độ pc chế độ này cho đến nay là nhanh nhất và pcn_ub là chậm nhất.

Giá trị mặc định là pc_n.

ppsrc
Đánh dấu luồng đầu vào chính là đầu vào được xử lý trước và bật đầu vào phụ
dòng chảy như một nguồn sạch để chọn các cánh đồng từ đó. Xem phần giới thiệu bộ lọc cho
chi tiết hơn. Nó tương tự như clip2 tính năng từ VFM / TFM.

Giá trị mặc định là 0 (bị vô hiệu hóa).

lĩnh vực
Đặt trường để so khớp từ. Bạn nên đặt giá trị này thành giá trị giống như gọi món
trừ khi bạn gặp phải lỗi phù hợp với cài đặt đó. Trong những hoàn cảnh nhất định
thay đổi trường được sử dụng để đối sánh từ có thể có tác động lớn đến việc đối sánh
màn biểu diễn. Các giá trị có sẵn là:

tự động
Tự động (cùng giá trị với gọi món).

dưới cùng
Khớp từ trường dưới cùng.

hàng đầu Đối sánh từ trường trên cùng.

Giá trị mặc định là tự động.

đơn sắc
Đặt xem có bao gồm sắc độ hay không trong quá trình so sánh đối sánh. Trong hầu hết các trường hợp, nó
được khuyến khích để bật tính năng này. Bạn chỉ nên đặt giá trị này thành 0 nếu clip của bạn có
các vấn đề về sắc độ xấu chẳng hạn như mưa lớn hoặc các đồ tạo tác khác. Đặt giá trị này thành 0
cũng có thể được sử dụng để tăng tốc độ mọi thứ với cái giá phải trả là độ chính xác.

Giá trị mặc định là 1.

y0
y1 Những điều này xác định một dải loại trừ loại trừ các ranh giới giữa y0y1 từ hiện hữu
đưa vào quyết định đối sánh trường. Một dải loại trừ có thể được sử dụng để bỏ qua
phụ đề, biểu trưng hoặc những thứ khác có thể ảnh hưởng đến việc đối sánh. y0 thiết lập
dòng quét bắt đầu và y1 đặt dòng kết thúc; tất cả các dòng ở giữa y0y1
(Bao gồm cả y0y1) sẽ bị bỏ qua. Thiết lập y0y1 đến cùng một giá trị sẽ
tắt tính năng này. y0y1 mặc định là 0.

sthresh
Đặt ngưỡng phát hiện thay đổi cảnh dưới dạng phần trăm thay đổi tối đa trên luma
chiếc máy bay. Giá trị tốt nằm trong khoảng "[8.0, 14.0]". Chỉ phát hiện thay đổi cảnh
có liên quan trong trường hợp kết hợp=sc. Phạm vi cho sthresh là "[0.0, 100.0]".

Giá trị mặc định là 12.0.

kết hợp
Thời Gian kết hợp không phải là không ai, "fieldmatch" sẽ tính đến điểm tổng hợp của
các trận đấu khi quyết định sử dụng trận đấu nào làm trận đấu cuối cùng. Các giá trị có sẵn là:

không ai
Không có kết quả phù hợp cuối cùng dựa trên điểm số đã được tổng hợp.

sc Điểm số được đánh dấu chỉ được sử dụng khi phát hiện ra thay đổi cảnh.

Full
Sử dụng điểm số tổng hợp mọi lúc.

Mặc định là sc.

lượcbg
Buộc "fieldmatch" để tính toán các chỉ số được tổng hợp cho các kết quả phù hợp nhất định và in chúng.
Cài đặt này được gọi là micro trong từ vựng TFM / VFM. Các giá trị có sẵn là:

không ai
Không có tính toán gượng ép.

pcn Buộc p / c / n tính toán.

pcnub
Buộc các phép tính p / c / n / u / b.

Giá trị mặc định là không ai.

cthresh
Đây là ngưỡng chải kỹ khu vực được sử dụng để phát hiện khung được chải kỹ. Về cơ bản đây là
kiểm soát mức độ chải kỹ "mạnh" hoặc "hiển thị" phải được phát hiện. Giá trị lớn hơn có nghĩa là
lược phải hiển thị nhiều hơn và các giá trị nhỏ hơn có nghĩa là lược có thể ít nhìn thấy hơn hoặc
mạnh mẽ và vẫn bị phát hiện. Cài đặt hợp lệ là từ "-1" (mọi pixel sẽ là
được phát hiện là được chải kỹ) thành 255 (không có pixel nào được phát hiện là đã được chải kỹ). Về cơ bản đây là một
giá trị chênh lệch pixel. Phạm vi tốt là "[8, 12]".

Giá trị mặc định là 9.

sắc độ
Đặt xem sắc độ có được xem xét trong quyết định khung được chải kỹ hay không. Chỉ vô hiệu hóa
điều này nếu nguồn của bạn có vấn đề về sắc độ (cầu vồng, v.v.) đang gây ra sự cố
để phát hiện khung được chải kỹ có bật sắc độ. Trên thực tế, sử dụng sắc độ=0 is
thường đáng tin cậy hơn, ngoại trừ trường hợp chỉ có sắc độ chải trong
nguồn.

Giá trị mặc định là 0.

khốix
khối
Đặt kích thước trục x và trục y một cách tương ứng của cửa sổ được sử dụng trong khung được chải kỹ
sự phát hiện. Điều này liên quan đến kích thước của khu vực trong đó cái lược pixel là
yêu cầu được phát hiện là đã được chải kỹ đối với một khung được khai báo là đã được chải kỹ. Xem cái lược
mô tả thông số để biết thêm thông tin. Các giá trị có thể có là bất kỳ số nào là lũy thừa
trong số 2 bắt đầu từ 4 và tăng lên 512.

Giá trị mặc định là 16.

cái lược
Số lượng pixel được chải kỹ bên trong bất kỳ khối by khốix khối kích thước trên
khung để khung được phát hiện là đã được chải kỹ. Trong khi cthresh kiểm soát cách "hiển thị"
chải kỹ phải được, cài đặt này kiểm soát "bao nhiêu" chải phải có trong bất kỳ
khu vực được bản địa hóa (một cửa sổ được xác định bởi khốixkhối cài đặt) trên khung.
Giá trị nhỏ nhất là 0 và giá trị lớn nhất là "blocky x blockx" (tại thời điểm này, sẽ không có khung nào
bao giờ được phát hiện là đã chải kỹ). Cài đặt này được gọi là MI trong từ vựng TFM / VFM.

Giá trị mặc định là 80.

p / c / n / u / b có nghĩa là

p / c / n

Chúng tôi giả định luồng truyền hình sau:

Các trường hàng đầu: 1 2 2 3 4
Các trường dưới cùng: 1 2 3 4 4

Các số tương ứng với khung lũy ​​tiến mà các trường liên quan. Đây, hai cái đầu tiên
khung đang tăng dần, khung thứ 3 và thứ 4 được lược bỏ, v.v.

Khi "fieldmatch" được định cấu hình để chạy đối sánh từ dưới lên (lĩnh vực=dưới cùng) đây là cách
luồng đầu vào này được chuyển đổi:

Dòng đầu vào:
T 1 2 2 3 4
B 1 2 3 4 4 <- đối sánh tham chiếu

Trận đấu: ccnnc

Dòng đầu ra:
T 1 2 3 4 4
B 1 2 3 4 4

Kết quả của việc đối sánh trường, chúng ta có thể thấy rằng một số khung hình bị trùng lặp. Để thực hiện
một telecine nghịch đảo hoàn chỉnh, bạn cần phải dựa vào bộ lọc số thập phân sau thao tác này.
Xem ví dụ phá huỷ phần lớn lọc.

Thao tác tương tự hiện đang khớp từ các trường trên cùng (lĩnh vực=hàng đầu) trông như thế này:

Dòng đầu vào:
T 1 2 2 3 4 <- đối sánh tham chiếu
B 1 2 3 4 4

Trận đấu: ccppc

Dòng đầu ra:
T 1 2 2 3 4
B 1 2 2 3 4

Trong những ví dụ này, chúng ta có thể thấy những gì p, cn nghĩa là; về cơ bản, chúng tham chiếu đến khung và
trường ngang bằng ngược lại:

*<p khớp với trường có giá trị chẵn lẻ đối diện trong khung trước đó>
*<c khớp với trường có giá trị chẵn lẻ đối diện trong khung hiện tại>
*<n khớp với trường có giá trị chẵn lẻ đối diện trong khung tiếp theo>

u / b

Sản phẩm ub đối sánh có một chút đặc biệt theo nghĩa là chúng phù hợp với điều ngược lại
cờ chẵn lẻ. Trong các ví dụ sau, chúng tôi giả định rằng chúng tôi hiện đang khớp với
khung (Trên: 2, dưới cùng: 2). Theo trận đấu, dấu 'x' được đặt ở trên và dưới mỗi
các trường phù hợp.

Với kết hợp dưới cùng (lĩnh vực=dưới cùng):

Phù hợp: cpnbu

xxxxx
Đầu 1 2 2 1 2 2 1 2 2 1 2 2 1 2 2
Dưới cùng 1 2 3 1 2 3 1 2 3 1 2 3 1 2 3
xxxxx

Khung đầu ra:
2 1 2 2 2
2 2 2 1 3

Với kết hợp hàng đầu (lĩnh vực=hàng đầu):

Phù hợp: cpnbu

xxxxx
Đầu 1 2 2 1 2 2 1 2 2 1 2 2 1 2 2
Dưới cùng 1 2 3 1 2 3 1 2 3 1 2 3 1 2 3
xxxxx

Khung đầu ra:
2 2 2 1 2
2 1 3 2 2

Các ví dụ

IVTC đơn giản của luồng truyền hình đầu tiên của trường hàng đầu:

fieldmatch = order = tff: combmatch = none, decimate

IVTC nâng cao, có bật dự phòng yadif đối với khung vẫn chải kỹ:

fieldmatch = order = tff: combmatch = full, yadif = deint = interlaced, decimate

điền dã
Chuyển đổi thứ tự trường của video đầu vào.

Nó chấp nhận các tham số sau:

gọi món
Thứ tự trường đầu ra. Giá trị hợp lệ là tff cho trường trên cùng đầu tiên hoặc bff cho dưới cùng
lĩnh vực đầu tiên.

Giá trị mặc định là tff.

Việc chuyển đổi được thực hiện bằng cách chuyển nội dung hình ảnh lên hoặc xuống một dòng, và
điền nội dung tranh phù hợp vào dòng còn lại. Phương pháp này nhất quán
với hầu hết các bộ chuyển đổi thứ tự trường quảng bá.

Nếu video đầu vào không bị gắn cờ là bị xen kẽ hoặc video đã bị gắn cờ là
thứ tự trường đầu ra bắt buộc, thì bộ lọc này không làm thay đổi video đến.

Nó rất hữu ích khi chuyển đổi sang hoặc từ vật liệu PAL DV, trước tiên là trường dưới cùng.

Ví dụ:

ffmpeg -i in.vob -vf "fieldorder = bff" out.dv

năm mươi
Đệm hình ảnh đầu vào và gửi chúng khi chúng được yêu cầu.

Nó chủ yếu hữu ích khi được khung libavfilter chèn tự động.

Nó không nhận tham số.

tìm_chỉnh
Tìm một vật hình chữ nhật

Nó chấp nhận các tùy chọn sau:

vật
Đường dẫn tệp của hình ảnh đối tượng, cần có màu xám8.

ngưỡng
Ngưỡng phát hiện, mặc định là 0.5.

mipmap
Số lượng mipmap, mặc định là 3.

xmin, ymin, xmax, ymax
Chỉ định hình chữ nhật để tìm kiếm.

Các ví dụ

· Tạo bảng màu đại diện của một video nhất định bằng cách sử dụng ffmpeg:

ffmpeg -i file.ts -vf find_rect = newref.pgm, cover_rect = cover.jpg: mode = cover new.mkv

bìa_trực tràng
Che một vật hình chữ nhật

Nó chấp nhận các tùy chọn sau:

che
Đường dẫn tệp của ảnh bìa tùy chọn, cần phải ở yuv420.

chế độ
Đặt chế độ che phủ.

Nó chấp nhận các giá trị sau:

che
che nó bằng hình ảnh được cung cấp

blur
che nó bằng cách nội suy các pixel xung quanh

Giá trị mặc định là blur.

Các ví dụ

· Tạo bảng màu đại diện của một video nhất định bằng cách sử dụng ffmpeg:

ffmpeg -i file.ts -vf find_rect = newref.pgm, cover_rect = cover.jpg: mode = cover new.mkv

định dạng
Chuyển đổi video đầu vào sang một trong các định dạng pixel được chỉ định. Libavfilter sẽ cố gắng
chọn một cái phù hợp làm đầu vào cho bộ lọc tiếp theo.

Nó chấp nhận các tham số sau:

pix_fmts
Danh sách tên định dạng pixel được phân tách bằng '|', chẳng hạn như "pix_fmts = yuv420p | monow | rgb24".

Các ví dụ

· Chuyển đổi video đầu vào thành yuv420p định dạng

format = pix_fmts = yuv420p

Chuyển đổi video đầu vào sang bất kỳ định dạng nào trong danh sách

format = pix_fmts = yuv420p | yuv444p | yuv410p

fps
Chuyển đổi video thành tốc độ khung hình cố định được chỉ định bằng cách sao chép hoặc giảm khung hình dưới dạng
cần thiết.

Nó chấp nhận các tham số sau:

fps Tốc độ khung hình đầu ra mong muốn. Giá trị mặc định là 25.

tròn
Phương pháp làm tròn số.

Giá trị có thể là:

không
0 vòng về XNUMX

inf làm tròn từ 0

xuống
vòng về phía-vô cùng

up vòng về phía + vô cùng

ở gần
vòng đến gần nhất

Mặc định là "gần".

thời gian bắt đầu
Giả sử PTS đầu tiên phải là giá trị đã cho, tính bằng giây. Điều này cho phép
đệm / cắt khi bắt đầu phát trực tiếp. Theo mặc định, không có giả định nào được đưa ra về
PTS dự kiến ​​của khung hình đầu tiên, vì vậy không có phần đệm hoặc cắt xén nào được thực hiện. Ví dụ, điều này
có thể được đặt thành 0 để mở đầu bằng các bản sao của khung hình đầu tiên nếu video
luồng bắt đầu sau luồng âm thanh hoặc để cắt bất kỳ khung nào có PTS âm.

Ngoài ra, các tùy chọn có thể được chỉ định dưới dạng một chuỗi phẳng: fps[:tròn].

Xem thêm cài đặt lọc.

Các ví dụ

· Một cách sử dụng điển hình để đặt fps thành 25:

fps = fps = 25

· Đặt fps thành 24, sử dụng cách viết tắt và làm tròn để làm tròn đến gần nhất:

fps = fps = film: round = near

gói khung
Gói hai luồng video khác nhau thành một video lập thể, đặt siêu dữ liệu thích hợp vào
codec được hỗ trợ. Hai chế độ xem phải có cùng kích thước và tốc độ khung hình và quá trình xử lý
sẽ dừng khi video ngắn hơn kết thúc. Xin lưu ý rằng bạn có thể điều chỉnh chế độ xem một cách thuận tiện
thuộc tính với tỉ lệfps bộ lọc.

Nó chấp nhận các tham số sau:

định dạng
Định dạng đóng gói mong muốn. Các giá trị được hỗ trợ là:

Sbs Các khung nhìn nằm cạnh nhau (mặc định).

chuyển hướng Các khung nhìn nằm trên đầu trang của nhau.

dòng
Các lượt xem được đóng gói theo từng dòng.

cột
Các chế độ xem được đóng gói theo cột.

khung hình
Các chế độ xem được xen kẽ theo thời gian.

Vài ví dụ:

# Chuyển đổi chế độ xem trái và phải thành video tuần tự khung hình
ffmpeg -i LEFT -i RIGHT -filter_complex framepack = frameseq OUTPUT

# Chuyển các lượt xem thành video song song với cùng độ phân giải đầu ra với đầu vào
ffmpeg -i LEFT -i RIGHT -filter_complex [0: v] scale = w = iw / 2 [left], [1: v] scale = w = iw / 2 [right], [left] [right] framepack = sbs ĐẦU RA

Framerate
Thay đổi tốc độ khung hình bằng cách nội suy các khung hình đầu ra video mới từ các khung hình nguồn.

Bộ lọc này không được thiết kế để hoạt động chính xác với phương tiện xen kẽ. Nếu bạn muốn
thay đổi tốc độ khung hình của phương tiện xen kẽ, sau đó bạn bắt buộc phải khử xen kẽ trước khi
lọc và thay thế lại sau bộ lọc này.

Sau đây là mô tả về các tùy chọn được chấp nhận.

fps Chỉ định khung hình đầu ra mỗi giây. Tùy chọn này cũng có thể được chỉ định dưới dạng giá trị
một mình. Giá trị mặc định là 50.

interp_start
Chỉ định điểm bắt đầu của một phạm vi nơi khung đầu ra sẽ được tạo dưới dạng tuyến tính
nội suy của hai khung. Phạm vi là [0-255], mặc định là 15.

interp_end
Chỉ định phần cuối của một phạm vi nơi khung đầu ra sẽ được tạo dưới dạng tuyến tính
nội suy của hai khung. Phạm vi là [0-255], mặc định là 240.

bối cảnh
Chỉ định mức mà tại đó thay đổi cảnh được phát hiện dưới dạng giá trị từ 0 đến 100 đến
chỉ ra một cảnh mới; giá trị thấp phản ánh xác suất thấp để khung hiện tại
giới thiệu một cảnh mới, trong khi giá trị cao hơn có nghĩa là khung hiện tại có nhiều khả năng
trở thành một. Giá trị mặc định là 7.

cờ
Chỉ định các cờ ảnh hưởng đến quá trình lọc.

Giá trị có sẵn cho cờ là:

cảnh_change_detect, scd
Bật tính năng phát hiện thay đổi cảnh bằng cách sử dụng giá trị của tùy chọn bối cảnh. Lá cờ này là
được bật theo mặc định.

bước khung
Chọn một khung cho mỗi khung thứ N.

Bộ lọc này chấp nhận tùy chọn sau:

bước
Chọn khung sau mỗi khung "bước". Giá trị được phép là số nguyên dương cao hơn
hơn 0. Giá trị mặc định là 1.

miễn phí
Áp dụng hiệu ứng frei0r cho video đầu vào.

Để kích hoạt biên dịch bộ lọc này, bạn cần cài đặt tiêu đề frei0r và
cấu hình FFmpeg bằng "--enable-frei0r".

Nó chấp nhận các tham số sau:

tên bộ lọc
Tên của hiệu ứng frei0r cần tải. Nếu biến môi trường FREI0R_PATH is
được định nghĩa, hiệu ứng frei0r được tìm kiếm trong mỗi thư mục được chỉ định bởi
danh sách được phân tách bằng dấu hai chấm trong FREIOR_PATH. Nếu không, các đường dẫn frei0r tiêu chuẩn là
đã tìm kiếm, theo thứ tự này: TRANG CHỦ / .frei0r-1 / lib /, / usr / local / lib / frei0r-1 /,
/ usr / lib / frei0r-1 /.

filter_params
Danh sách các tham số được phân tách bằng '|' để chuyển cho hiệu ứng frei0r.

Tham số hiệu ứng frei0r có thể là boolean (giá trị của nó là "y" hoặc "n"), kép, a
màu sắc (được chỉ định là R/G/B, Nơi R, GB là các số dấu phẩy động từ 0.0 đến
1.0, bao gồm) hoặc theo mô tả màu được chỉ định trong phần "Màu" trong ffmpeg-
hướng dẫn sử dụng utils), một vị trí (được chỉ định là X/Y, Nơi XY là số dấu phẩy động)
và / hoặc một chuỗi.

Số lượng và các loại tham số phụ thuộc vào hiệu ứng được tải. Nếu một tham số hiệu ứng là
không được chỉ định, giá trị mặc định được đặt.

Các ví dụ

· Áp dụng hiệu ứng distort0r, thiết lập hai tham số kép đầu tiên:

frei0r = filter_name = distort0r: filter_params = 0.5 | 0.01

· Áp dụng hiệu ứng cân bằng màu, lấy màu làm tham số đầu tiên:

frei0r = colordistance: 0.2 / 0.3 / 0.4
frei0r = colordistance: violet
frei0r = colordistance: 0x112233

· Áp dụng hiệu ứng phối cảnh, chỉ định vị trí hình ảnh trên cùng bên trái và trên cùng bên phải:

frei0r=perspective:0.2/0.2|0.8/0.2

Để biết thêm thông tin, hãy xemhttp://frei0r.dyne.org>

fspp
Áp dụng xử lý hậu kỳ nhanh chóng và đơn giản. Nó là một phiên bản nhanh hơn của spp.

Nó chia (I) DCT thành các đường chuyền ngang / dọc. Không giống như xử lý hậu kỳ đơn giản
bộ lọc, một trong số chúng được thực hiện một lần trên mỗi khối, không phải trên mỗi pixel. Điều này cho phép nhiều
tốc độ cao hơn.

Bộ lọc chấp nhận các tùy chọn sau:

chất lượng
Đặt chất lượng. Tùy chọn này xác định số lượng cấp độ để tính trung bình. Nó chấp nhận một
số nguyên trong phạm vi 4-5. Giá trị mặc định là 4.

qp Bắt buộc một tham số lượng tử hóa không đổi. Nó chấp nhận một số nguyên trong phạm vi 0-63. Nếu không
, bộ lọc sẽ sử dụng QP từ luồng video (nếu có).

sức mạnh
Đặt cường độ bộ lọc. Nó chấp nhận một số nguyên trong phạm vi -15 đến 32. Giá trị thấp hơn có nghĩa là nhiều hơn
chi tiết nhưng cũng nhiều tạo tác hơn, trong khi giá trị cao hơn làm cho hình ảnh mượt mà hơn nhưng cũng
mờ hơn. Giá trị mặc định là 0 X PSNR tối ưu.

sử dụng_bframe_qp
Cho phép sử dụng QP từ Khung B nếu được đặt thành 1. Sử dụng tùy chọn này có thể gây ra
nhấp nháy vì Khung B thường có QP lớn hơn. Mặc định là 0 (không được kích hoạt).

bài toán
Bộ lọc chấp nhận các tùy chọn sau:

lum_expr, tùm lum
Đặt biểu thức độ chói.

cb_expr, cb
Đặt biểu thức màu xanh lam sắc độ.

cr_expr, cr
Đặt biểu thức sắc độ đỏ.

alpha_expr, a
Đặt biểu thức alpha.

red_expr, r
Đặt biểu thức màu đỏ.

xanh_expr, g
Đặt biểu thức màu xanh lá cây.

màu xanh_expr, b
Đặt biểu thức màu xanh lam.

Không gian màu được chọn theo các tùy chọn đã chỉ định. Nếu một trong những lum_expr,
cb_expr, hoặc là cr_expr các tùy chọn được chỉ định, bộ lọc sẽ tự động chọn một YCbCr
không gian màu. Nếu một trong những red_expr, green_expr, hoặc là blue_expr các tùy chọn được chỉ định, nó sẽ
chọn một không gian màu RGB.

Nếu một trong các biểu thức độ sáng không được xác định, nó sẽ rơi trở lại biểu thức còn lại. Nếu không
biểu thức alpha được chỉ định nó sẽ đánh giá thành giá trị không rõ ràng. Nếu không có sắc độ
biểu thức được chỉ định, chúng sẽ đánh giá biểu thức độ chói.

Các biểu thức có thể sử dụng các biến và hàm sau:

N Số thứ tự của khung được lọc, bắt đầu từ 0.

X
Y Tọa độ của mẫu hiện tại.

W
H Chiều rộng và chiều cao của hình ảnh.

SW
SH Tỷ lệ chiều rộng và chiều cao tùy thuộc vào mặt phẳng hiện đang được lọc. Nó là tỷ lệ
giữa số pixel mặt phẳng luma tương ứng và số pixel trên mặt phẳng hiện tại. Ví dụ
đối với YUV4: 2: 0, các giá trị là "1,1" cho mặt phẳng luma và "0.5,0.5" cho mặt phẳng sắc độ.

T Thời gian của khung hiện tại, tính bằng giây.

p (x, y)
Trả lại giá trị của pixel tại vị trí (x,y) của mặt phẳng hiện tại.

lum (x, y)
Trả lại giá trị của pixel tại vị trí (x,y) của mặt phẳng độ chói.

cb (x, y)
Trả lại giá trị của pixel tại vị trí (x,y) của mặt phẳng sắc độ khác biệt màu xanh lam.
Trả về 0 nếu không có mặt phẳng nào như vậy.

cr (x, y)
Trả lại giá trị của pixel tại vị trí (x,y) của mặt phẳng sắc độ khác biệt màu đỏ.
Trả về 0 nếu không có mặt phẳng nào như vậy.

r (x, y)
g (x, y)
b (x, y)
Trả lại giá trị của pixel tại vị trí (x,y) của thành phần đỏ / lục / lam.
Trả về 0 nếu không có thành phần như vậy.

alpha (x, y)
Trả lại giá trị của pixel tại vị trí (x,y) của mặt phẳng alpha. Trả về 0 nếu có
không phải là máy bay như vậy.

Đối với các chức năng, nếu xy ở bên ngoài khu vực, giá trị sẽ được tự động cắt thành
các cạnh gần hơn.

Các ví dụ

· Lật hình ảnh theo chiều ngang:

geq = p (WX \, Y)

· Tạo ra sóng sin hai chiều, với góc "PI / 3" và bước sóng 100 pixel:

geq=128 + 100*sin(2*(PI/100)*(cos(PI/3)*(X-50*T) + sin(PI/3)*Y)):128:128

· Tạo ra một ánh sáng chuyển động bí ẩn lạ mắt:

nullsrc = s = 256x256, geq =ngẫu nhiên(1)/hypot(X-cos(N*0.07)*W/2-W/2\,Y-sin(N*0.09)*H/2-H/2)^2*1000000*sin(N*0.02):128:128

· Tạo hiệu ứng dập nổi nhanh chóng:

format = gray, geq = lum_expr = '(p (X, Y) + (256-p (X-4, Y-4))) / 2'

· Sửa đổi các thành phần RGB tùy thuộc vào vị trí pixel:

geq = r = 'X / W * r (X, Y)': g = '(1-X / W) * g (X, Y)': b = '(HY) / H * b (X, Y ) '

· Tạo một gradient xuyên tâm có cùng kích thước với đầu vào (cũng xem họa tiết
lọc):

geq=lum=255*gauss((X/W-0.5)*3)*gauss((Y/H-0.5)*3)/gauss(0) /gauss(0), format = xám

· Tạo một gradient tuyến tính để sử dụng làm mặt nạ cho một bộ lọc khác, sau đó tạo với
phủ. Trong ví dụ này, video sẽ dần dần trở nên mờ hơn từ đầu đến
dưới cùng của trục y như được xác định bởi gradient tuyến tính:

ffmpeg -i input.mp4 -filter_complex "geq = lum = 255 * (Y / H), format = gray [grad]; [0: v] boxblur = 4 [mờ]; [mờ] [grad] alphamerge [alpha] ; [0: v] [alpha] lớp phủ "output.mp4

tốt nghiệp
Sửa lỗi tạo tác dải đôi khi được đưa vào các vùng gần như bằng phẳng bằng cách
cắt bớt đến độ sâu màu 8bit. Nội suy các gradient sẽ đi đến vị trí của các dải
là, và hòa sắc chúng.

Nó chỉ được thiết kế để phát lại. Không sử dụng nó trước khi nén mất dữ liệu, bởi vì
nén có xu hướng làm mất hòa sắc và mang lại các dải.

Nó chấp nhận các tham số sau:

sức mạnh
Số tiền tối đa mà bộ lọc sẽ thay đổi bất kỳ một pixel nào. Đây cũng là
ngưỡng phát hiện các vùng gần như bằng phẳng. Các giá trị có thể chấp nhận nằm trong khoảng từ .51 đến 64;
giá trị mặc định là 1.2. Các giá trị nằm ngoài phạm vi sẽ được cắt bớt thành phạm vi hợp lệ.

bán kính
Vùng lân cận để phù hợp với gradient. Bán kính lớn hơn làm cho các chuyển màu mượt mà hơn,
mà còn ngăn bộ lọc sửa đổi các pixel gần các vùng chi tiết.
Giá trị có thể chấp nhận là 8-32; giá trị mặc định là 16. Giá trị ngoài phạm vi sẽ là
bị cắt vào phạm vi hợp lệ.

Ngoài ra, các tùy chọn có thể được chỉ định dưới dạng một chuỗi phẳng: sức mạnh[:bán kính]

Các ví dụ

· Áp dụng bộ lọc với cường độ 3.5 và bán kính 8:

gradfun = 3.5: 8

· Chỉ định bán kính, bỏ qua cường độ (sẽ trở về giá trị mặc định):

gradfun = bán kính = 8

cá sấu
Áp dụng Hald CLUT cho luồng video.

Đầu vào đầu tiên là luồng video cần xử lý và đầu vào thứ hai là Hald CLUT. Hald
Đầu vào CLUT có thể là một hình ảnh đơn giản hoặc một luồng video hoàn chỉnh.

Bộ lọc chấp nhận các tùy chọn sau:

ngắn nhất
Buộc kết thúc khi đầu vào ngắn nhất kết thúc. Mặc định là 0.

lặp lại
Tiếp tục áp dụng CLUT cuối cùng sau khi kết thúc luồng. Giá trị 0 vô hiệu hóa
bộ lọc sau khi đạt đến khung cuối cùng của CLUT. Mặc định là 1.

"haldclut" cũng có các tùy chọn nội suy tương tự như lut3d (cả hai bộ lọc đều chia sẻ như nhau
nội bộ).

Thông tin thêm về Hald CLUT có thể được tìm thấy trên trang web của Eskil Steenberg (Hald CLUT
tác giả) tạihttp://www.quelsolaar.com/technology/clut.html>.

Quy trình làm việc ví dụ

Luồng video Hald CLUT

Tạo danh tính Luồng Hald CLUT được thay đổi với các hiệu ứng khác nhau:

ffmpeg -f lavfi -i B = 8 -vf "hue = H = 2 * PI * t: s = sin (2 * PI * t) +1, curve = cross_process" -t 10 -c: v ffv1 clutch.nut

Lưu ý: hãy đảm bảo rằng bạn sử dụng codec không mất dữ liệu.

Sau đó, sử dụng nó với "haldclut" để áp dụng nó trên một số luồng ngẫu nhiên:

ffmpeg -f lavfi -i mandelbrot -i clutch.nut -filter_complex '[0] [1] haldclut' -t 20 mandelclut.mkv

Hald CLUT sẽ được áp dụng cho 10 giây đầu tiên (thời gian của clutch.nut), sau đó
ảnh mới nhất của luồng CLUT đó sẽ được áp dụng cho các khung còn lại của
dòng "mandelbrot".

Hald CLUT với bản xem trước

Hald CLUT được cho là hình ảnh bình phương của "Cấp độ * Cấp độ * Cấp độ" bằng
Pixel "Cấp * Cấp * Cấp". Đối với một Hald CLUT nhất định, FFmpeg sẽ chọn cái lớn nhất có thể
hình vuông bắt đầu ở trên cùng bên trái của hình ảnh. Các pixel đệm còn lại (dưới cùng hoặc
đúng) sẽ bị bỏ qua. Khu vực này có thể được sử dụng để thêm bản xem trước của Hald CLUT.

Thông thường, Hald CLUT được tạo sau đây sẽ được hỗ trợ bởi bộ lọc "haldclut":

ffmpeg -f lavfi -i B = 8 -vf "
pad = iw + 320 [padded_clut];
smptebars = s = 320x256, split [a] [b];
[padded_clut] [a] overlay = W-320: h, curve = color_negative [main];
[main] [b] overlay = W-320 "-frames: v 1 clutch.png

Nó chứa bản gốc và bản xem trước về hiệu ứng của các thanh màu CLUT: SMPTE là
hiển thị ở trên cùng bên phải và bên dưới các thanh màu tương tự được xử lý bởi các thay đổi màu.

Sau đó, hiệu ứng của Hald CLUT này có thể được hình dung bằng:

ffplay input.mkv -vf "movie = clutch.png, [in] haldclut"

hflip
Lật ngang video đầu vào.

Ví dụ: để lật ngang video đầu vào với ffmpeg:

ffmpeg -i in.avi -vf "hflip" out.avi

lịch sử
Bộ lọc này áp dụng cân bằng biểu đồ màu toàn cục trên cơ sở mỗi khung hình.

Nó có thể được sử dụng để sửa video có dải cường độ pixel bị nén. Các
bộ lọc phân phối lại cường độ pixel để cân bằng phân phối của chúng trên
phạm vi cường độ. Nó có thể được xem như một "bộ lọc tương phản tự động điều chỉnh". Điều này
bộ lọc chỉ hữu ích để sửa video nguồn bị giảm chất lượng hoặc bắt kém.

Bộ lọc chấp nhận các tùy chọn sau:

sức mạnh
Xác định lượng cân bằng được áp dụng. Khi sức mạnh bị giảm,
phân phối cường độ pixel ngày càng nhiều cách tiếp cận của khung đầu vào.
Giá trị phải là một số thực trong phạm vi [0,1] và mặc định là 0.200.

cường độ
Đặt cường độ tối đa có thể tạo ra và chia tỷ lệ các giá trị đầu ra
thích hợp. Cường độ nên được đặt như mong muốn và sau đó cường độ có thể được
hạn chế nếu cần để tránh rửa trôi. Giá trị phải là một số thực trong phạm vi
[0,1] và mặc định là 0.210.

chống lại
Đặt mức kháng thể. Nếu được bật, bộ lọc sẽ thay đổi ngẫu nhiên độ sáng của
xuất ra một lượng nhỏ pixel để tránh phân dải biểu đồ. Giá trị có thể là
"không", "yếu" hoặc "mạnh". Nó mặc định là "không có".

biểu đồ
Tính toán và vẽ biểu đồ phân bố màu cho video đầu vào.

Biểu đồ được tính toán là một đại diện của sự phân bố thành phần màu trong một
hình ảnh.

Bộ lọc chấp nhận các tùy chọn sau:

chế độ
Đặt chế độ biểu đồ.

Nó chấp nhận các giá trị sau:

niveaux
Biểu đồ tiêu chuẩn hiển thị sự phân bố các thành phần màu trong một hình ảnh.
Hiển thị đồ thị màu cho từng thành phần màu. Hiển thị sự phân bố của Y, U, V,
Các thành phần A hoặc R, G, B, tùy thuộc vào định dạng đầu vào, trong khung hiện tại. Phía dưới
mỗi biểu đồ một thước đo tỷ lệ thành phần màu được hiển thị.

màu sắc
Hiển thị các giá trị sắc độ (vị trí màu U / V) trong một biểu đồ hai chiều (là
được gọi là một vectorscope). Một pixel trong kính vectơ càng sáng, thì càng nhiều pixel của
khung đầu vào tương ứng với pixel đó (tức là, nhiều pixel hơn có sắc độ này
giá trị). Thành phần V được hiển thị trên trục hoành (X), ngoài cùng bên trái
bên là V = 0 và bên phải là V = 255. Thành phần U là
được hiển thị trên trục tung (Y), với phần trên đại diện cho U = 0 và phần dưới
đại diện cho U = 255.

Vị trí của một pixel màu trắng trong biểu đồ tương ứng với giá trị sắc độ của một
pixel của clip đầu vào. Do đó, biểu đồ có thể được sử dụng để đọc màu sắc (màu
hương vị) và độ bão hòa (sự thống trị của sắc độ trong màu sắc). Như màu sắc của
một màu thay đổi, nó di chuyển xung quanh hình vuông. Tại trung tâm của hình vuông,
độ bão hòa bằng XNUMX, có nghĩa là pixel tương ứng không có màu. Nếu
số lượng một màu cụ thể được tăng lên (trong khi giữ nguyên các màu khác)
độ bão hòa tăng lên và chỉ báo di chuyển về phía cạnh của hình vuông.

color2
Giá trị sắc độ trong vectorscope, tương tự như "màu" nhưng giá trị sắc độ thực tế là
hiển thị.

dạng sóng
Biểu đồ thành phần màu trên mỗi hàng / cột. Ở chế độ hàng, biểu đồ ở bên trái
đại diện cho giá trị thành phần màu 0 và bên phải đại diện cho giá trị = 255. Trong
chế độ cột, mặt trên biểu thị giá trị thành phần màu = 0 và mặt dưới
đại diện cho giá trị = 255.

Giá trị mặc định là "cấp độ".

cấp_height
Đặt chiều cao của cấp trong "cấp độ". Giá trị mặc định là 200. Phạm vi được phép là [50, 2048].

tỷ lệ_height
Đặt chiều cao của thang màu trong "cấp độ". Giá trị mặc định là 12. Phạm vi được phép là [0, 40].

bước
Đặt bước cho chế độ "dạng sóng". Các giá trị nhỏ hơn rất hữu ích để tìm ra có bao nhiêu giá trị của
cùng một độ sáng được phân phối trên các hàng / cột đầu vào. Giá trị mặc định là 10.
Phạm vi được phép là [1, 255].

dạng sóng_mode
Đặt chế độ cho "dạng sóng". Có thể là "hàng" hoặc "cột". Mặc định là "hàng".

dạng sóng_gương
Đặt chế độ phản chiếu cho "dạng sóng". 0 có nghĩa là không được phản chiếu, 1 có nghĩa là được sao chép. Trong nhân bản
, các giá trị cao hơn sẽ được thể hiện ở bên trái cho chế độ "hàng" và ở trên cùng
cho chế độ "cột". Mặc định là 0 (không theo dõi).

chế độ hiển thị
Đặt chế độ hiển thị cho "dạng sóng" và "mức". Nó chấp nhận các giá trị sau:

diễu hành
Hiển thị biểu đồ riêng biệt cho các thành phần màu cạnh nhau trong dạng sóng "hàng"
hoặc một bên dưới chế độ kia trong chế độ dạng sóng "cột" cho biểu đồ "dạng sóng"
chế độ. Đối với chế độ biểu đồ "cấp độ", các biểu đồ thành phần màu được đặt bên dưới
lẫn nhau.

Sử dụng chế độ hiển thị này ở chế độ biểu đồ "dạng sóng" giúp dễ dàng xác định màu sắc
tạo ra các điểm nổi bật và bóng tối của một hình ảnh, bằng cách so sánh các đường viền của
đồ thị trên và dưới của mỗi dạng sóng. Vì người da trắng, xám và đen là
được đặc trưng bởi số lượng chính xác bằng nhau của các vùng màu đỏ, xanh lục và xanh lam, các vùng trung tính của
hình ảnh sẽ hiển thị ba dạng sóng có chiều rộng / chiều cao gần bằng nhau. Nếu không,
việc hiệu chỉnh dễ dàng thực hiện bằng cách điều chỉnh mức độ của ba dạng sóng.

phủ
Trình bày thông tin giống với thông tin trong "cuộc diễu hành", ngoại trừ các biểu đồ
các thành phần màu đại diện được chồng trực tiếp lên nhau.

Chế độ hiển thị này ở chế độ biểu đồ "dạng sóng" giúp dễ dàng phát hiện tương đối hơn
sự khác biệt hoặc tương đồng trong các khu vực chồng chéo của các thành phần màu
được cho là giống hệt nhau, chẳng hạn như màu trắng trung tính, màu xám hoặc màu đen.

Mặc định là "diễu hành".

chế độ cấp độ
Đặt chế độ cho "cấp độ". Có thể là "tuyến tính" hoặc "lôgarit". Mặc định là "tuyến tính".

các thành phần
Đặt các thành phần màu nào sẽ hiển thị cho các "mức" chế độ. Mặc định là 7.

Các ví dụ

· Tính toán và vẽ biểu đồ:

biểu đồ ffplay -i input -vf

hqdn3d
Đây là bộ lọc khử nhiễu 3d có độ chính xác / chất lượng cao. Nó nhằm mục đích giảm nhiễu hình ảnh,
tạo ra hình ảnh mịn và làm cho hình ảnh tĩnh thực sự tĩnh. Nó sẽ tăng cường
khả năng nén.

Nó chấp nhận các tham số tùy chọn sau:

luma_spatial
Một số dấu phẩy động không âm chỉ định độ bền của không gian. Nó
mặc định là 4.0.

không gian sắc độ
Một số dấu phẩy động không âm chỉ định cường độ sắc độ không gian. Nó
mặc định là 3.0 *luma_spatial/ 4.0.

luma_tmp
Một số dấu phẩy động chỉ định cường độ thời gian luma. Nó mặc định là
6.0 *luma_spatial/ 4.0.

sắc độ_tmp
Một số dấu phẩy động chỉ định cường độ thời gian của sắc độ. Nó mặc định là
luma_tmp*không gian sắc độ/luma_spatial.

hqx
Áp dụng bộ lọc phóng đại chất lượng cao được thiết kế cho nghệ thuật pixel. Bộ lọc này là
ban đầu được tạo ra bởi Maxim Stepin.

Nó chấp nhận tùy chọn sau:

n Đặt thứ nguyên chia tỷ lệ: 2 cho "hq2x", 3 cho "hq3x" và 4 cho "hq4x". Mặc định là 3.

đóng gói
Xếp chồng video đầu vào theo chiều ngang.

Tất cả các luồng phải có cùng định dạng pixel và cùng chiều cao.

Lưu ý rằng bộ lọc này nhanh hơn so với việc sử dụng phủtập giấy bộ lọc để tạo ra cùng một đầu ra.

Bộ lọc chấp nhận tùy chọn sau:

nb_inputs
Đặt số lượng luồng đầu vào. Mặc định là 2.

sắc
Sửa đổi màu sắc và / hoặc độ bão hòa của đầu vào.

Nó chấp nhận các tham số sau:

h Chỉ định góc màu dưới dạng một số độ. Nó chấp nhận một biểu thức và mặc định
thành "0".

s Chỉ định độ bão hòa trong phạm vi [-10,10]. Nó chấp nhận một biểu thức và mặc định là
"1/XNUMX/XNUMX".

H Chỉ định góc màu dưới dạng một số radian. Nó chấp nhận một biểu thức và mặc định
thành "0".

b Chỉ định độ sáng trong phạm vi [-10,10]. Nó chấp nhận một biểu thức và mặc định là
"0/XNUMX/XNUMX".

hH loại trừ lẫn nhau và không thể được chỉ định cùng một lúc.

Sản phẩm b, h, Hs giá trị tùy chọn là biểu thức chứa các hằng số sau:

n số khung của khung đầu vào bắt đầu từ 0

Điểm dấu thời gian trình bày của khung đầu vào được biểu thị bằng đơn vị cơ sở thời gian

r tốc độ khung hình của video đầu vào, NAN nếu tốc độ khung hình đầu vào không xác định

t dấu thời gian được biểu thị bằng giây, NAN nếu dấu thời gian đầu vào không xác định

tb cơ sở thời gian của video đầu vào

Các ví dụ

· Đặt màu sắc thành 90 độ và độ bão hòa thành 1.0:

hue = h = 90: s = 1

· Cùng một lệnh nhưng biểu thị màu sắc bằng radian:

sắc độ = H = PI / 2: s = 1

· Xoay màu và làm cho độ bão hòa dao động từ 0 đến 2 trong khoảng thời gian 1 giây:

hue = "H = 2 * PI * t: s = sin (2 * PI * t) +1"

· Áp dụng hiệu ứng mờ dần độ bão hòa 3 giây bắt đầu từ 0:

hue = "s = min (t / 3 \, 1)"

Biểu thức fade-in chung có thể được viết như sau:

hue = "s = min (0 \, max ((t-START) / DURATION \, 1))"

· Áp dụng hiệu ứng mờ dần độ bão hòa 3 giây bắt đầu từ 5 giây:

hue = "s = max (0 \, min (1 \, (8-t) / 3))"

Biểu thức giảm dần chung có thể được viết như sau:

hue = "s = max (0 \, min (1 \, (START + DURATION-t) / DURATION))"

Lệnh

Bộ lọc này hỗ trợ các lệnh sau:

b
s
h
H Sửa đổi màu sắc và / hoặc độ bão hòa và / hoặc độ sáng của video đầu vào. Các
lệnh chấp nhận cùng một cú pháp của tùy chọn tương ứng.

Nếu biểu thức được chỉ định không hợp lệ, nó được giữ ở giá trị hiện tại.

lý tưởng
Phát hiện loại xen kẽ video.

Bộ lọc này cố gắng phát hiện xem các khung đầu vào là xen kẽ, tăng dần, trên cùng hay dưới cùng
lĩnh vực đầu tiên. Nó cũng sẽ thử và phát hiện các trường được lặp lại giữa các khung liền kề
(một dấu hiệu của telecine).

Phát hiện khung đơn chỉ xem xét các khung liền kề ngay lập tức khi phân loại từng
khung. Phát hiện nhiều khung hình kết hợp lịch sử phân loại của
khung.

Bộ lọc sẽ ghi lại các giá trị siêu dữ liệu này:

đơn.current_frame
Đã phát hiện loại khung hiện tại bằng cách sử dụng tính năng phát hiện khung đơn. Một trong số: `` tff '' (trên cùng
trường đầu tiên), `` bff '' (trường dưới cùng trước), `` lũy tiến '' hoặc `` không xác định ''

độc thân.tff
Số lượng khung hình tích lũy được phát hiện là trường trên cùng trước tiên bằng cách sử dụng tính năng phát hiện khung hình đơn.

nhiều.tff
Số lượng khung hình tích lũy được phát hiện là trường trên cùng trước tiên bằng cách sử dụng nhiều khung hình
phát hiện.

độc thân.bff
Số lượng khung hình tích lũy được phát hiện là trường dưới cùng trước tiên bằng cách sử dụng khung hình đơn
phát hiện.

nhiều.current_frame
Đã phát hiện loại khung hiện tại bằng cách sử dụng tính năng phát hiện nhiều khung. Một trong số: `` tff '' (trên cùng
trường đầu tiên), `` bff '' (trường dưới cùng trước), `` lũy tiến '' hoặc `` không xác định ''

nhiều.bff
Số lượng khung hình tích lũy được phát hiện dưới dạng trường dưới cùng trước tiên bằng cách sử dụng nhiều khung hình
phát hiện.

độc thân.progressive
Số lượng khung hình tích lũy được phát hiện là tăng dần bằng cách sử dụng tính năng phát hiện khung hình đơn.

nhiều.progressive
Số lượng khung hình tích lũy được phát hiện là tăng dần bằng cách sử dụng tính năng phát hiện nhiều khung hình.

single.undetined
Số lượng khung hình tích lũy không thể được phân loại bằng cách sử dụng tính năng phát hiện khung hình đơn.

nhiều. xác định
Số lượng khung hình tích lũy không thể được phân loại bằng cách sử dụng nhiều khung hình
phát hiện.

repeat.current_frame
Trường nào trong khung hiện tại được lặp lại từ trường cuối cùng. Một trong những `` không '',
`` top '' hoặc `` bottom ''.

lặp lại. không
Số lượng khung hình tích lũy không có trường lặp lại.

lặp lại. dừng lại
Số lượng khung hình tích lũy với trường trên cùng được lặp lại từ phần trên cùng của khung trước đó
trường.

repeat.bottom
Số lượng khung hình tích lũy với trường dưới cùng được lặp lại từ khung hình trước đó
trường dưới cùng.

Bộ lọc chấp nhận các tùy chọn sau:

intl_thres
Đặt ngưỡng xen kẽ.

prog_thres
Đặt ngưỡng lũy ​​tiến.

lặp lại_thres
Ngưỡng để phát hiện trường lặp lại.

Half_life
Số khung mà sau đó đóng góp của một khung nhất định vào thống kê bị giảm một nửa
(tức là, nó chỉ đóng góp 0.5 vào phân loại của nó). Giá trị mặc định là 0 có nghĩa là
tất cả các khung nhìn thấy đều có trọng lượng đầy đủ là 1.0 mãi mãi.

analyse_interlaced_flag
Khi đây không phải là 0 thì idet sẽ sử dụng số lượng khung hình được chỉ định để xác định xem
cờ xen kẽ là chính xác, nó sẽ không tính các khung không xác định. Nếu cờ
được cho là chính xác, nó sẽ được sử dụng mà không cần tính toán thêm, nếu
được phát hiện là không chính xác, nó sẽ bị xóa mà không cần tính toán thêm. Điều này
cho phép chèn bộ lọc idet như một phương pháp tính toán thấp để làm sạch
cờ xen kẽ

il
Hủy xen kẽ hoặc xen kẽ các trường.

Bộ lọc này cho phép một người xử lý các trường hình ảnh xen kẽ mà không làm mất xen kẽ chúng.
Quá trình khử xen kẽ chia khung đầu vào thành 2 trường (được gọi là một nửa hình ảnh). Dòng lẻ
được chuyển đến nửa trên của hình ảnh đầu ra, các dòng chẵn xuống nửa dưới. Bạn có thể
xử lý (lọc) chúng một cách độc lập và sau đó xen kẽ chúng lại.

Bộ lọc chấp nhận các tùy chọn sau:

luma_mode, l
chế độ sắc độ, c
chế độ alpha, a
Các giá trị có sẵn cho luma_mode, chế độ sắc độchế độ alpha là:

không ai
Không làm gì cả.

khử xen kẽ, d
Hủy xen kẽ các trường, đặt cái này lên trên cái kia.

xen kẽ, i
Các trường xen kẽ. Đảo ngược tác động của việc khử xen kẽ.

Giá trị mặc định là "không".

luma_swap, ls
hoán đổi sắc độ, cs
trao đổi alpha, as
Hoán đổi các trường luma / chroma / alpha. Trao đổi dòng chẵn & lẻ. Giá trị mặc định là 0.

thổi phồng
Áp dụng hiệu ứng thổi phồng cho video.

Bộ lọc này thay thế pixel bằng địa phương(3x3) trung bình chỉ tính đến
giá trị cao hơn pixel.

Nó chấp nhận các tùy chọn sau:

ngưỡng 0
ngưỡng 1
ngưỡng 2
ngưỡng 3
Giới hạn thay đổi tối đa cho mỗi mặt phẳng, mặc định là 65535. Nếu 0, mặt phẳng sẽ vẫn
không thay đổi.

hổn hợp
Bộ lọc xen kẽ đơn giản từ các nội dung tiến bộ. Điều này xen kẽ trên (hoặc dưới)
dòng từ khung hình lẻ với dòng dưới (hoặc trên) từ khung chẵn, giảm một nửa tốc độ khung hình
và bảo toàn chiều cao hình ảnh.

Khung gốc mới ban đầu
Khung 'j' Khung 'j + 1' (tff)
==================================================
Dòng 0 --------------------> Khung 'j' Dòng 0
Dòng 1 Dòng 1 ----> Khung 'j + 1' Dòng 1
Dòng 2 ---------------------> Khung 'j' Dòng 2
Dòng 3 Dòng 3 ----> Khung 'j + 1' Dòng 3
... ... ...
Khung mới + 1 sẽ được tạo bởi Khung 'j + 2' và Khung 'j + 3', v.v.

Nó chấp nhận các tham số tùy chọn sau:

quét
Điều này xác định xem khung hình xen kẽ được lấy từ giá trị chẵn (tff - mặc định) hay
dòng lẻ (bff) của khung lũy ​​tiến.

tầm thấp
Bật (mặc định) hoặc tắt bộ lọc thông thấp dọc để tránh xen kẽ giữa các twitter
và giảm các mô hình chuyển động.

Kerndeint
Khử xen kẽ video đầu vào bằng cách áp dụng khử xen kẽ hạt nhân thích ứng của Donald Graft. Làm việc trên
các phần xen kẽ của video để tạo ra các khung hình liên tục.

Sau đây là mô tả về các tham số được chấp nhận.

đập mạnh
Đặt ngưỡng ảnh hưởng đến dung sai của bộ lọc khi xác định xem một pixel
dòng phải được xử lý. Nó phải là một số nguyên trong phạm vi [0,255] và mặc định là 10.
Giá trị 0 sẽ dẫn đến việc áp dụng quy trình trên mọi pixel.

bản đồ Sơn các pixel vượt quá giá trị ngưỡng thành màu trắng nếu được đặt thành 1. Mặc định là 0.

gọi món
Đặt thứ tự các trường. Hoán đổi các trường nếu được đặt thành 1, để nguyên các trường nếu 0. Mặc định là 0.

sắc nét
Bật thêm độ sắc nét nếu được đặt thành 1. Mặc định là 0.

hai ngày
Bật làm sắc nét hai chiều nếu được đặt thành 1. Mặc định là 0.

Các ví dụ

· Áp dụng các giá trị mặc định:

kerndeint=thresh=10:map=0:order=0:sharp=0:twoway=0

· Cho phép làm sắc nét bổ sung:

kerndeint = sharp = 1

· Sơn các pixel đã xử lý bằng màu trắng:

kerndeint = map = 1

thấu kính
Chỉnh sửa méo thấu kính xuyên tâm

Bộ lọc này có thể được sử dụng để sửa méo xuyên tâm do sử dụng
ống kính góc rộng, và do đó chỉnh sửa lại hình ảnh. Để tìm các thông số phù hợp, người ta có thể
sử dụng các công cụ có sẵn, chẳng hạn như một phần của opencv hoặc chỉ đơn giản là thử-và-sai. Để sử dụng
opencv sử dụng mẫu hiệu chuẩn (theo mẫu / cpp) từ các nguồn opencv và trích xuất
các hệ số k1 và k2 từ ma trận kết quả.

Lưu ý rằng hiệu quả bộ lọc tương tự có sẵn trong các công cụ mã nguồn mở Krita và
Digikam từ dự án KDE.

Ngược lại với họa tiết bộ lọc, cũng có thể được sử dụng để bù lỗi ống kính, cái này
bộ lọc sửa chữa sự biến dạng của hình ảnh, trong khi họa tiết điều chỉnh độ sáng
phân phối, vì vậy bạn có thể muốn sử dụng cả hai bộ lọc cùng nhau trong một số trường hợp nhất định, mặc dù bạn
sẽ phải quan tâm đến việc đặt hàng, tức là có nên áp dụng họa tiết trước hay không
sau khi chỉnh sửa ống kính.

Các lựa chọn

Bộ lọc chấp nhận các tùy chọn sau:

cx Tọa độ x tương đối của tiêu điểm của hình ảnh, và do đó là tâm của
méo mó. Giá trị này có phạm vi [0,1] và được biểu thị dưới dạng các phần nhỏ của hình ảnh
chiều rộng.

cy Tọa độ y tương đối của tiêu điểm của hình ảnh và do đó là tâm của
méo mó. Giá trị này có phạm vi [0,1] và được biểu thị dưới dạng các phần nhỏ của hình ảnh
Chiều cao.

k1 Hệ số của số hạng hiệu chỉnh bậc hai. 0.5 nghĩa là không sửa.

k2 Hệ số của số hạng hiệu chỉnh bậc hai kép. 0.5 nghĩa là không sửa.

Công thức tạo ra hiệu chỉnh là:

r_src = r_tgt * (1 + k1 * (r_tgt / r_0) ^ 2 + k2 * (r_tgt / r_0) ^ 4)

Ở đâu r_0 là một nửa của đường chéo hình ảnh và r_srcr_tgt khoảng cách từ
tiêu điểm tương ứng trong ảnh nguồn và ảnh đích.

lut3d
Áp dụng 3D LUT cho video đầu vào.

Bộ lọc chấp nhận các tùy chọn sau:

hồ sơ
Đặt tên tệp 3D LUT.

Các định dạng hiện được hỗ trợ:

3dl Hậu quả

khối lập phương
irida

dat DaVinci

m3d Pandora

xen vào
Chọn chế độ nội suy.

Các giá trị có sẵn là:

gần nhất
Sử dụng các giá trị từ điểm xác định gần nhất.

tam giác
Nội suy các giá trị bằng cách sử dụng 8 điểm xác định một khối lập phương.

tứ diện
Nội suy các giá trị bằng cách sử dụng một tứ diện.

lu, lutrgb, lutyuv
Tính toán một bảng tra cứu để liên kết mỗi giá trị đầu vào của thành phần pixel với một giá trị đầu ra,
và áp dụng nó vào video đầu vào.

lutyuv áp dụng bảng tra cứu cho video đầu vào YUV, lutrgb sang video đầu vào RGB.

Các bộ lọc này chấp nhận các thông số sau:

c0 đặt biểu thức thành phần pixel đầu tiên

c1 đặt biểu thức thành phần pixel thứ hai

c2 đặt biểu thức thành phần pixel thứ ba

c3 đặt biểu thức thành phần pixel thứ tư, tương ứng với thành phần alpha

r thiết lập biểu thức thành phần màu đỏ

g thiết lập biểu thức thành phần màu xanh lá cây

b đặt biểu thức thành phần màu xanh lam

a biểu thức thành phần alpha

y đặt Y / biểu thức thành phần độ sáng

u đặt biểu thức thành phần U / Cb

v thiết lập biểu thức thành phần V / Cr

Mỗi người trong số họ chỉ định biểu thức để sử dụng để tính toán bảng tra cứu cho
giá trị thành phần pixel tương ứng.

Thành phần chính xác được liên kết với mỗi c* tùy chọn phụ thuộc vào định dạng đầu vào.

Sản phẩm hàn bộ lọc yêu cầu định dạng pixel YUV hoặc RGB trong đầu vào, lutrgb yêu cầu RGB
định dạng pixel trong đầu vào và lutyuv yêu cầu YUV.

Các biểu thức có thể chứa các hằng số và hàm sau:

w
h Chiều rộng và chiều cao đầu vào.

val Giá trị đầu vào cho thành phần pixel.

clipval
Giá trị đầu vào, được cắt vào nhỏ nhất-giá trị tối đa phạm vi.

giá trị tối đa
Giá trị lớn nhất cho thành phần pixel.

nhỏ nhất
Giá trị tối thiểu cho thành phần pixel.

bỏ qua
Giá trị phủ định cho giá trị thành phần pixel, được cắt vào nhỏ nhất-giá trị tối đa phạm vi;
nó tương ứng với biểu thức "maxval-clipval + minval".

kẹp (val)
Giá trị được tính trong val, được cắt vào nhỏ nhất-giá trị tối đa phạm vi.

gammaval (gamma)
Giá trị hiệu chỉnh gamma được tính toán của giá trị thành phần pixel, được cắt vào
nhỏ nhất-giá trị tối đa phạm vi. Nó tương ứng với biểu thức
"pow ((clipval-minval) / (maxval-minval) \,gamma) * (maxval-minval) + minval "

Tất cả các biểu thức mặc định là "val".

Các ví dụ

· Điều chỉnh video đầu vào:

lutrgb = "r = maxval + minval-val: g = maxval + minval-val: b = maxval + minval-val"
lutyuv = "y = maxval + minval-val: u = maxval + minval-val: v = maxval + minval-val"

Ở trên cũng giống như:

lutrgb = "r = negval: g = negval: b = negval"
lutyuv = "y = negval: u = negval: v = negval"

· Giảm độ sáng:

lutyuv = y = negval

· Loại bỏ các thành phần sắc độ, biến video thành hình ảnh màu xám:

lutyuv = "u = 128: v = 128"

· Áp dụng hiệu ứng đốt cháy:

lutyuv = "y = 2 * val"

· Loại bỏ các thành phần màu xanh lá cây và xanh lam:

lutrgb = "g = 0: b = 0"

· Đặt giá trị kênh alpha không đổi trên đầu vào:

format = rgba, lutrgb = a = "maxval-minval / 2"

· Hiệu chỉnh gamma độ sáng theo hệ số 0.5:

lutyuv = y = gammaval (0.5)

· Loại bỏ các bit luma ít quan trọng nhất:

lutyuv = y = 'bitand (val, 128 + 64 + 32)'

máy bay hợp nhất
Hợp nhất các thành phần kênh màu từ một số luồng video.

Bộ lọc chấp nhận tối đa 4 luồng đầu vào và hợp nhất các mặt phẳng đầu vào đã chọn với đầu ra
video.

Bộ lọc này chấp nhận các tùy chọn sau:

lập bản đồ
Đặt ánh xạ mặt phẳng đầu vào đến đầu ra. Mặc định là 0.

Các ánh xạ được chỉ định dưới dạng bitmap. Nó phải được chỉ định dưới dạng số thập lục phân
ở dạng 0xAa [Bb [Cc [Dd]]]. 'Aa' mô tả ánh xạ cho mặt phẳng đầu tiên của
luồng đầu ra. 'A' đặt số dòng đầu vào sẽ sử dụng (từ 0 đến 3) và 'a'
số máy bay của đầu vào tương ứng sẽ sử dụng (từ 0 đến 3). Phân con lại của
ánh xạ cũng tương tự, 'Bb' mô tả ánh xạ cho mặt phẳng thứ hai của luồng đầu ra,
'Cc' mô tả ánh xạ cho mặt phẳng thứ ba của luồng đầu ra và 'Dd' mô tả
ánh xạ cho mặt phẳng thứ tư của luồng đầu ra.

định dạng
Đặt định dạng pixel đầu ra. Mặc định là "yuva444p".

Các ví dụ

· Hợp nhất ba luồng video màu xám có cùng chiều rộng và chiều cao thành một luồng video:

[a0][a1][a2]mergeplanes=0x001020:yuv444p

· Hợp nhất luồng yuv1p thứ nhất và luồng video xám thứ hai thành luồng video yuva444p:

[a0][a1]mergeplanes=0x00010210:yuva444p

· Trao đổi máy bay Y và A trong luồng yuva444p:

format = yuva444p, mergeplanes = 0x03010200: yuva444p

· Hoán đổi mặt phẳng U và V trong luồng yuv420p:

format = yuv420p, mergeplanes = 0x000201: yuv420p

· Truyền một clip rgb24 sang yuv444p:

format = rgb24, mergeplanes = 0x000102: yuv444p

mcdeint
Áp dụng chức năng khử xen kẽ bù chuyển động.

Nó cần một trường trên mỗi khung làm đầu vào và do đó phải được sử dụng cùng với yadif = 1/3 hoặc
tương đương.

Bộ lọc này chấp nhận các tùy chọn sau:

chế độ
Đặt chế độ khử xen kẽ.

Nó chấp nhận một trong các giá trị sau:

Rychle
trung bình
chậm
sử dụng ước tính chuyển động lặp đi lặp lại

thêm_chậm
Lượt thích chậm, nhưng sử dụng nhiều hệ quy chiếu.

Giá trị mặc định là Rychle.

tính chẵn lẻ
Đặt trường hình ảnh chẵn lẻ giả định cho video đầu vào. Nó phải là một trong những
các giá trị sau:

0, tff
giả sử trường trên cùng đầu tiên

1, bff
giả sử trường dưới cùng đầu tiên

Giá trị mặc định là bff.

qp Đặt tham số lượng tử hóa trên mỗi khối (QP) được sử dụng bởi bộ mã hóa bên trong.

Giá trị cao hơn sẽ dẫn đến trường vectơ chuyển động mượt mà hơn nhưng kém tối ưu hơn
vectơ riêng lẻ. Giá trị mặc định là 1.

mpdecimate
Thả các khung hình không khác nhiều so với khung hình trước đó để giảm bớt khung hình
tỷ lệ.

Việc sử dụng chính của bộ lọc này là để mã hóa tốc độ bit rất thấp (ví dụ: phát trực tuyến qua quay số
modem), nhưng về lý thuyết nó có thể được sử dụng để sửa các bộ phim được truyền hình ngược
không chính xác.

Sau đây là mô tả về các tùy chọn được chấp nhận.

tối đa Đặt số lượng khung hình liên tiếp tối đa có thể bị loại bỏ (nếu tích cực) hoặc
khoảng thời gian tối thiểu giữa các khung hình bị rơi (nếu âm). Nếu giá trị là 0,
khung hình bị giảm bất kể số lượng khung hình bị giảm tuần tự trước đó.

Giá trị mặc định là 0.

hi
lo
áo khoác
Đặt các giá trị ngưỡng giảm.

Giá trị cho hilo dành cho khối 8x8 pixel và đại diện cho giá trị pixel thực tế
khác biệt, vì vậy ngưỡng 64 tương ứng với 1 đơn vị chênh lệch cho mỗi pixel,
hoặc giống nhau trải ra khác nhau trên khối.

Khung là một ứng cử viên để giảm nếu không có khối 8x8 nào khác nhau quá ngưỡng
of hi, và nếu không nhiều hơn áo khoác khối (1 nghĩa là toàn bộ hình ảnh) khác nhau hơn
một ngưỡng của lo.

Giá trị mặc định cho hi là 64 * 12, giá trị mặc định cho lo là 64 * 5 và giá trị mặc định cho
áo khoác là 0.33.

phủ nhận
Phủ nhận video đầu vào.

Nó chấp nhận một số nguyên trong đầu vào; nếu khác XNUMX, nó phủ định thành phần alpha (nếu có).
Giá trị mặc định trong đầu vào là 0.

không có định dạng
Buộc libavfilter không sử dụng bất kỳ định dạng pixel nào được chỉ định cho đầu vào tiếp theo
lọc.

Nó chấp nhận các tham số sau:

pix_fmts
Danh sách tên định dạng pixel được phân tách bằng '|', chẳng hạn như apix_fmts = yuv420p | monow | rgb24 ".

Các ví dụ

· Buộc libavfilter sử dụng định dạng khác với yuv420p cho đầu vào cho vflip
bộ lọc:

noformat = pix_fmts = yuv420p, vflip

· Chuyển đổi video đầu vào sang bất kỳ định dạng nào không có trong danh sách:

noformat = yuv420p | yuv444p | yuv410p

tiếng ồn
Thêm tiếng ồn trên khung đầu vào video.

Bộ lọc chấp nhận các tùy chọn sau:

all_seed
c0_seed
c1_seed
c2_seed
c3_seed
Đặt hạt giống nhiễu cho thành phần pixel cụ thể hoặc tất cả các thành phần pixel trong trường hợp
all_seed. Giá trị mặc định là 123457.

all_sức mạnh, tất cả
c0_sức mạnh, c0s
c1_sức mạnh, c1s
c2_sức mạnh, c2s
c3_sức mạnh, c3s
Đặt cường độ nhiễu cho thành phần pixel cụ thể hoặc tất cả các thành phần pixel trong trường hợp
all_sức mạnh. Giá trị mặc định là 0. Phạm vi được phép là [0, 100].

all_flags, tất cả
c0_flags, C0f
c1_flags, C1f
c2_flags, C2f
c3_flags, C3f
Đặt cờ thành phần pixel hoặc đặt cờ cho tất cả các thành phần nếu all_flags. Có sẵn
giá trị cho các cờ thành phần là:

a tiếng ồn thời gian trung bình (mượt mà hơn)

p trộn nhiễu ngẫu nhiên với một mẫu (bán) thông thường

t nhiễu tạm thời (thay đổi kiểu nhiễu giữa các khung hình)

u tiếng ồn đồng nhất (tiếng gaussian khác)

Các ví dụ

Thêm tiếng ồn theo thời gian và đồng nhất vào video đầu vào:

tiếng ồn = alls = 20: allf = t + u

vô giá trị
Chuyển nguồn video không thay đổi đến đầu ra.

ocv
Áp dụng chuyển đổi video bằng libopencv.

Để bật bộ lọc này, hãy cài đặt thư viện libopencv và các tiêu đề và định cấu hình FFmpeg với
"--enable-libopencv".

Nó chấp nhận các tham số sau:

tên bộ lọc
Tên của bộ lọc libopencv để áp dụng.

filter_params
Các tham số để chuyển đến bộ lọc libopencv. Nếu không được chỉ định, các giá trị mặc định
được giả định rằng.

Tham khảo tài liệu libopencv chính thức để biết thêm thông tin chính xác:
<http://docs.opencv.org/master/modules/imgproc/doc/filtering.html>

Một số bộ lọc libopencv được hỗ trợ; xem các phần phụ sau đây.

giãn ra

Pha loãng hình ảnh bằng cách sử dụng một phần tử có cấu trúc cụ thể. Nó tương ứng với libopencv
chức năng "cvDilate".

Nó chấp nhận các tham số: cấu trúc_el|nb_iterations.

cấu trúc_el đại diện cho một phần tử có cấu trúc và có cú pháp:
vòng cổxhàng+neo_xxneo_y/định hình

vòng cổhàng đại diện cho số cột và hàng của phần tử cấu trúc,
neo_xneo_y điểm neo, và định hình hình dạng cho phần tử cấu trúc.
định hình phải là "trực tràng", "chéo", "elip" hoặc "tùy chỉnh".

Nếu giá trị cho định hình là "tùy chỉnh", nó phải được theo sau bởi một chuỗi biểu mẫu
"=tên tập tin". Tệp có tên tên tập tin được giả định là đại diện cho một hình ảnh nhị phân, với mỗi
ký tự in được tương ứng với một pixel sáng. Khi một tùy chỉnh định hình Được sử dụng, vòng cổ
hàng bị bỏ qua, số hoặc cột và hàng của tệp đã đọc được giả định thay thế.

Giá trị mặc định cho cấu trúc_el là "3x3 + 0x0 / direct".

nb_iterations chỉ định số lần biến đổi được áp dụng cho hình ảnh và
mặc định là 1.

Vài ví dụ:

# Sử dụng các giá trị mặc định
ocv = giãn ra

# Pha loãng bằng cách sử dụng phần tử cấu trúc có dấu chéo 5x5, lặp lại hai lần
ocv=filter_name=dilate:filter_params=5x5+2x2/cross|2

# Đọc hình dạng từ tệp diamond.shape, lặp lại hai lần.
# Tệp diamond.shape có thể chứa một mẫu ký tự như thế này
# *
# ***
# *****
# ***
# *
# Các cột và hàng được chỉ định bị bỏ qua
# nhưng tọa độ điểm neo thì không
ocv=dilate:0x0+2x2/custom=diamond.shape|2

xói mòn

Xóa hình ảnh bằng cách sử dụng một phần tử có cấu trúc cụ thể. Nó tương ứng với libopencv
chức năng "cvErode".

Nó chấp nhận các tham số: cấu trúc_el:nb_iterations, có cùng cú pháp và ngữ nghĩa như
các giãn ra lọc.

trơn tru

Làm mượt video đầu vào.

Bộ lọc nhận các tham số sau: kiểu|param1|param2|param3|param4.

kiểu là loại bộ lọc mịn để áp dụng và phải là một trong các giá trị sau:
"mờ", "mờ_no_scale", "trung bình", "gaussian" hoặc "song phương". Giá trị mặc định là
"gaussian".

Nghĩa của param1, param2, param3param4 tùy thuộc vào loại mịn. param1
param2 chấp nhận các giá trị nguyên dương hoặc 0. param3param4 chấp nhận dấu phẩy động
các giá trị.

Giá trị mặc định cho param1 là 3. Giá trị mặc định cho các tham số khác là 0.

Các tham số này tương ứng với các tham số được gán cho hàm libopencv
"cvSmooth".

phủ
Chồng một video lên trên video khác.

Nó cần hai đầu vào và có một đầu ra. Đầu vào đầu tiên là video "chính" trên đó
đầu vào thứ hai được phủ lên.

Nó chấp nhận các tham số sau:

Sau đây là mô tả về các tùy chọn được chấp nhận.

x
y Đặt biểu thức cho tọa độ x và y của video được phủ trên video chính
băng hình. Giá trị mặc định là "0" cho cả hai biểu thức. Trong trường hợp biểu thức không hợp lệ,
nó được đặt thành một giá trị lớn (có nghĩa là lớp phủ sẽ không được hiển thị trong
vùng hiển thị đầu ra).

eof_action
Hành động cần thực hiện khi gặp EOF trên đầu vào thứ cấp; nó chấp nhận một trong số
các giá trị sau:

lặp lại
Lặp lại khung cuối cùng (mặc định).

kết thúc tất cả
Kết thúc cả hai luồng.

vượt qua
Chuyển đầu vào chính qua.

đánh giá
Đặt khi các biểu thức cho xy được đánh giá.

Nó chấp nhận các giá trị sau:

trong đó
chỉ đánh giá các biểu thức một lần trong quá trình khởi tạo bộ lọc hoặc khi một lệnh
được xử lý

khung
đánh giá biểu thức cho mỗi khung hình đến

Giá trị mặc định là khung.

ngắn nhất
Nếu được đặt thành 1, buộc đầu ra kết thúc khi đầu vào ngắn nhất kết thúc. Vỡ nợ
giá trị là 0.

định dạng
Đặt định dạng cho video đầu ra.

Nó chấp nhận các giá trị sau:

yuv420
buộc đầu ra YUV420

yuv422
buộc đầu ra YUV422

yuv444
buộc đầu ra YUV444

rgb buộc đầu ra RGB

Giá trị mặc định là yuv420.

rgb (không dùng nữa)
Nếu được đặt thành 1, buộc bộ lọc chấp nhận các đầu vào trong không gian màu RGB. Giá trị mặc định
là 0. Tùy chọn này không được dùng nữa, hãy sử dụng định dạng thay thế.

lặp lại
Nếu được đặt thành 1, hãy buộc bộ lọc vẽ khung lớp phủ cuối cùng lên đầu vào chính cho đến khi
cuối dòng. Giá trị 0 sẽ vô hiệu hóa hành vi này. Giá trị mặc định là 1.

Sản phẩm xy biểu thức có thể chứa các tham số sau.

chính_w, W
chính_h, H
Chiều rộng và chiều cao đầu vào chính.

lớp phủ_w, w
lớp phủ_h, h
Chiều rộng và chiều cao đầu vào lớp phủ.

x
y Các giá trị được tính toán cho xy. Chúng được đánh giá cho mỗi khung hình mới.

hsub
vsub
các giá trị mẫu con sắc độ ngang và dọc của định dạng đầu ra. Ví dụ cho
định dạng pixel "yuv422p" hsub là 2 và vsub là 1.

n số lượng khung hình đầu vào, bắt đầu từ 0

gửi vị trí trong tệp của khung đầu vào, NAN nếu không xác định

t Dấu thời gian, được biểu thị bằng giây. Đó là NAN nếu dấu thời gian đầu vào không xác định.

Lưu ý rằng n, gửi, t các biến chỉ có sẵn khi đánh giá xong mỗi khung,
và sẽ đánh giá với NAN khi đánh giá được thiết lập để trong đó.

Lưu ý rằng các khung hình được lấy từ mỗi video đầu vào theo thứ tự dấu thời gian, do đó, nếu
dấu thời gian ban đầu khác nhau, bạn nên chuyển hai đầu vào thông qua
setpts = PTS-STARTPTS bộ lọc để chúng bắt đầu ở cùng một dấu thời gian bằng XNUMX, như ví dụ
cho phim bộ lọc không.

Bạn có thể xâu chuỗi các lớp phủ lại với nhau nhưng bạn nên kiểm tra hiệu quả của cách tiếp cận như vậy.

Lệnh

Bộ lọc này hỗ trợ các lệnh sau:

x
y Sửa đổi x và y của đầu vào lớp phủ. Lệnh chấp nhận cùng một cú pháp của
tùy chọn tương ứng.

Nếu biểu thức được chỉ định không hợp lệ, nó được giữ ở giá trị hiện tại.

Các ví dụ

· Vẽ lớp phủ ở 10 pixel từ góc dưới cùng bên phải của video chính:

overlay = main_w-overlay_w-10: main_h-overlay_h-10

Sử dụng các tùy chọn được đặt tên, ví dụ trên sẽ trở thành:

overlay = x = main_w-overlay_w-10: y = main_h-overlay_h-10

· Chèn logo PNG trong suốt ở góc dưới cùng bên trái của đầu vào, sử dụng ffmpeg
công cụ với tùy chọn "-filter_complex":

ffmpeg -i input -i logo -filter_complex 'overlay = 10: main_h-overlay_h-10' output

· Chèn 2 biểu trưng PNG trong suốt khác nhau (biểu trưng thứ hai ở góc dưới bên phải) bằng cách sử dụng
các ffmpeg dụng cụ:

ffmpeg -i input -i logo1 -i logo2 -filter_complex 'overlay = x = 10: y = Hh-10, overlay = x = Ww-10: y = Hh-10' output

· Thêm một lớp màu trong suốt trên đầu video chính; "WxH" phải chỉ định kích thước của
đầu vào chính cho bộ lọc lớp phủ:

[email được bảo vệ]:size=WxH [trên]; [trong] [trên] lớp phủ [ngoài]

· Phát video gốc và phiên bản đã lọc (ở đây với bộ lọc deshake) cạnh nhau
bên sử dụng ffplay dụng cụ:

ffplay input.avi -vf 'split [a] [b]; [a] pad = iw * 2: ih [src]; [b] deshake [filt]; [src] [filt] overlay = w '

Lệnh trên tương tự như:

ffplay input.avi -vf 'split [b], pad = iw * 2 [src], [b] deshake, [src] overlay = w'

· Tạo một lớp phủ trượt xuất hiện từ phần trên cùng bên trái sang bên phải của màn hình
bắt đầu từ thời điểm 2:

overlay = x = 'if (gte (t, 2), -w + (t-2) * 20, NAN)': y = 0

· Soạn đầu ra bằng cách đặt hai video đầu vào cạnh nhau:

ffmpeg -i left.avi -i right.avi -filter_complex "
nullsrc = size = 200x100 [background];
[0: v] setpts = PTS-STARTPTS, scale = 100x100 [left];
[1: v] setpts = PTS-STARTPTS, scale = 100x100 [right];
[background] [left] overlay = short = 1 [background + left];
[background + left] [right] overlay = short = 1: x = 100 [left + right]
"

· Tạo mặt nạ từ 10-20 giây của video bằng cách áp dụng bộ lọc delogo cho một phần

ffmpeg -i test.avi -codec: v: 0 wmv2 -ar 11025 -b: v 9000k
-vf '[in]split[split_main][split_delogo];[split_delogo]trim=start=360:end=371,delogo=0:0:640:480[delogoed];[split_main][delogoed]overlay=eof_action=pass[out]'
đeo mặt nạ.avi

· Chuỗi một số lớp phủ theo tầng:

nullsrc = s = 200x200 [bg];
testsrc=s=100x100, split=4 [in0][in1][in2][in3];
[in0] lutrgb = r = 0, [bg] overlay = 0: 0 [mid0];
[in1] lutrgb = g = 0, [mid0] overlay = 100: 0 [mid1];
[in2] lutrgb = b = 0, [mid1] overlay = 0: 100 [mid2];
[in3] null, [mid2] overlay = 100: 100 [out0]

nợ nần
Áp dụng bộ khử Wavelet quá đầy đủ.

Bộ lọc chấp nhận các tùy chọn sau:

chiều sâu
Đặt độ sâu.

Giá trị độ sâu lớn hơn sẽ làm nhiễu các thành phần tần số thấp hơn, nhưng làm chậm
sự lọc.

Phải là một số nguyên trong phạm vi 8-16, mặc định là 8.

luma_sức mạnh, ls
Đặt sức mạnh luma.

Phải là một giá trị kép trong phạm vi 0-1000, mặc định là 1.0.

sắc độ_cường độ, cs
Đặt cường độ sắc độ.

Phải là một giá trị kép trong phạm vi 0-1000, mặc định là 1.0.

tập giấy
Thêm phần đệm vào hình ảnh đầu vào và đặt đầu vào ban đầu tại hình ảnh được cung cấp x, y
tọa độ.

Nó chấp nhận các tham số sau:

chiều rộng, w
Chiều cao, h
Chỉ định một biểu thức cho kích thước của hình ảnh đầu ra với các phần đệm được thêm vào. Nếu
giá trị cho chiều rộng or cao là 0, kích thước đầu vào tương ứng được sử dụng cho đầu ra.

Sản phẩm chiều rộng biểu thức có thể tham chiếu đến giá trị được đặt bởi cao biểu hiện, và phó mặc
ngược lại.

Giá trị mặc định của chiều rộngcao là 0.

x
y Chỉ định các hiệu số để đặt hình ảnh đầu vào trong vùng đệm, đối với
đến đường viền trên cùng / bên trái của hình ảnh đầu ra.

Sản phẩm x biểu thức có thể tham chiếu đến giá trị được đặt bởi y biểu thức và ngược lại.

Giá trị mặc định của xy là 0.

màu sắc
Chỉ định màu của vùng đệm. Để biết cú pháp của tùy chọn này, hãy kiểm tra "Màu"
trong hướng dẫn sử dụng ffmpeg-utils.

Giá trị mặc định của màu sắc là "đen".

Giá trị cho chiều rộng, cao, xy các tùy chọn là các biểu thức có chứa những điều sau đây
hằng số:

trong W
trong_h
Chiều rộng và chiều cao của video đầu vào.

iw
ih Chúng giống như trong Wtrong_h.

ra_w
ra_h
Chiều rộng và chiều cao đầu ra (kích thước của vùng đệm), như được chỉ định bởi chiều rộng
cao biểu thức.

ow
oh Chúng giống như ra_wra_h.

x
y Các hiệu số x và y như được chỉ định bởi xy biểu thức hoặc NAN nếu chưa
được chỉ định.

a giống như iw / ih

sar tỷ lệ khung hình mẫu đầu vào

dar tỷ lệ khung hình hiển thị đầu vào, nó giống như (iw / ih) * sar

hsub
vsub
Các giá trị mẫu con sắc độ ngang và dọc. Ví dụ đối với định dạng pixel
"yuv422p" hsub là 2 và vsub là 1.

Các ví dụ

· Thêm đệm với màu "tím" vào video đầu vào. Kích thước video đầu ra là
640x480 và góc trên cùng bên trái của video đầu vào được đặt ở cột 0, hàng 40

pad = 640: 480: 0: 40: violet

Ví dụ trên tương đương với lệnh sau:

pad = width = 640: height = 480: x = 0: y = 40: color = violet

· Pad đầu vào để có đầu ra với kích thước tăng lên 3/2 và đặt đầu vào
video ở trung tâm của khu vực độn:

pad="3/2*iw:3/2*ih:(ow-iw)/2:(oh-ih)/2"

· Pad đầu vào để có được đầu ra bình phương với kích thước bằng giá trị lớn nhất giữa
chiều rộng và chiều cao đầu vào, đồng thời đặt video đầu vào ở giữa vùng đệm:

pad = "max (iw \, ih): ow: (ow-iw) / 2: (oh-ih) / 2"

· Pad đầu vào để có tỷ lệ w / h cuối cùng là 16: 9:

pad = "ih * 16/9: ih: (ow-iw) / 2: (oh-ih) / 2"

· Trong trường hợp video anamorphic, để đặt chính xác khía cạnh hiển thị đầu ra, nó
là cần thiết để sử dụng sar trong biểu thức, theo quan hệ:

(ih * X / ih) * sar = đầu ra_dar
X = đầu ra_dar / sar

Vì vậy, ví dụ trước đó cần được sửa đổi thành:

pad = "ih * 16/9 / sar: ih: (ow-iw) / 2: (oh-ih) / 2"

· Nhân đôi kích thước đầu ra và đặt video đầu vào ở góc dưới cùng bên phải của
vùng đệm đầu ra:

pad = "2 * iw: 2 * ih: ow-iw: oh-ih"

Palette
Tạo một bảng màu cho toàn bộ luồng video.

Nó chấp nhận các tùy chọn sau:

max_colors
Đặt số lượng màu tối đa để định lượng trong bảng màu. Lưu ý: bảng màu sẽ
vẫn chứa 256 màu; các mục bảng màu không sử dụng sẽ có màu đen.

Reserve_transparent
Tạo một bảng màu tối đa 255 màu và dành màu cuối cùng cho độ trong suốt.
Dành riêng màu trong suốt rất hữu ích cho việc tối ưu hóa GIF. Nếu không được đặt,
tối đa các màu trong bảng màu sẽ là 256. Bạn có thể muốn tắt tùy chọn này
cho một hình ảnh độc lập. Đặt theo mặc định.

chế độ thống kê
Đặt chế độ thống kê.

Nó chấp nhận các giá trị sau:

Full
Tính toán biểu đồ toàn khung hình.

khác
Chỉ tính toán biểu đồ cho phần khác với khung trước đó. Điều này có thể
có liên quan để mang lại tầm quan trọng hơn cho phần chuyển động của đầu vào của bạn nếu
nền là tĩnh.

Giá trị mặc định là Full.

Bộ lọc cũng xuất siêu dữ liệu khung "lavfi.color_quant_ratio" ("nb_color_in /
nb_color_out ") mà bạn có thể sử dụng để đánh giá mức độ lượng tử hóa màu của
bảng màu. Thông tin này cũng được hiển thị tại Thông tin mức độ khai thác.

Các ví dụ

· Tạo bảng màu đại diện của một video nhất định bằng cách sử dụng ffmpeg:

ffmpeg -i input.mkv -vf Palettegen Palette.png

bảng màu
Sử dụng bảng màu để giảm bớt mẫu cho luồng video đầu vào.

Bộ lọc nhận hai đầu vào: một luồng video và một bảng màu. Bảng màu phải là 256
hình ảnh pixel.

Nó chấp nhận các tùy chọn sau:

run lên
Chọn chế độ phối màu. Các thuật toán có sẵn là:

bayer
Phối màu bayer 8x8 có thứ tự (xác định)

quái vật
Phối màu theo định nghĩa của Paul Heckbert năm 1982 (khuếch tán lỗi đơn giản). Ghi chú:
sự phối màu này đôi khi bị coi là "sai" và được đưa vào như một tài liệu tham khảo.

floyd_steinberg
Phối màu Floyd và Steingberg (khuếch tán lỗi)

Sierra2
Phối màu Frankie Sierra v2 (khuếch tán lỗi)

sierra2_4a
Frankie Sierra dithering v2 "Lite" (phát tán lỗi)

Mặc định là sierra2_4a.

bayer_scale
Thời Gian bayer phối màu được chọn, tùy chọn này xác định tỷ lệ của mẫu (cách
nhiều mô hình crosshatch có thể nhìn thấy). Giá trị thấp có nghĩa là mẫu hiển thị nhiều hơn cho
ít dải hơn và giá trị cao hơn có nghĩa là ít mẫu hiển thị hơn với chi phí là nhiều dải hơn.

Tùy chọn phải là một giá trị nguyên trong phạm vi [0,5]. Mặc định là 2.

chế độ khác biệt
Nếu được đặt, hãy xác định vùng để xử lý

hình chữ nhật
Chỉ hình chữ nhật thay đổi sẽ được xử lý lại. Điều này tương tự với GIF
cơ chế nén cắt xén / bù trừ. Tùy chọn này có thể hữu ích cho tốc độ nếu
chỉ một phần của hình ảnh đang thay đổi và có các trường hợp sử dụng như giới hạn phạm vi
của lỗi khác nhau run lên đến hình chữ nhật giới hạn cảnh chuyển động (nó
dẫn đến đầu ra xác định hơn nếu cảnh không thay đổi nhiều và như một
giúp giảm nhiễu chuyển động và nén ảnh GIF tốt hơn).

Mặc định là không ai.

Các ví dụ

· Sử dụng bảng màu (được tạo ví dụ với Palette) để mã hóa GIF bằng cách sử dụng ffmpeg:

ffmpeg -i input.mkv -i Palette.png -lavfi Palletuse output.gif

quan điểm
Phối cảnh chính xác của video không được quay vuông góc với màn hình.

Sau đây là mô tả về các tham số được chấp nhận.

x0
y0
x1
y1
x2
y2
x3
y3 Đặt biểu thức tọa độ cho trên cùng bên trái, trên cùng bên phải, dưới cùng bên trái và dưới cùng bên phải
các góc. Các giá trị mặc định là "0: 0: W: 0: 0: H: W: H" với góc nhìn sẽ được giữ nguyên
không thay đổi. Nếu tùy chọn "sense" được đặt thành "source", thì các điểm được chỉ định sẽ
được gửi đến các góc của điểm đến. Nếu tùy chọn "sense" được đặt thành
"đích", sau đó các góc của nguồn sẽ được gửi đến
tọa độ.

Các biểu thức có thể sử dụng các biến sau:

W
H chiều rộng và chiều cao của khung hình video.

phép nội suy
Đặt nội suy để hiệu chỉnh phối cảnh.

Nó chấp nhận các giá trị sau:

tuyến tính
khối

Giá trị mặc định là tuyến tính.

ý nghĩa
Đặt giải thích các tùy chọn tọa độ.

Nó chấp nhận các giá trị sau:

0, nguồn
Gửi điểm trong nguồn được chỉ định bởi các tọa độ đã cho đến các góc của
Nơi Đến.

1, điểm đến
Gửi các góc của nguồn đến điểm trong đích được chỉ định bởi
tọa độ cho trước.

Giá trị mặc định là nguồn.

giai đoạn
Trì hoãn video xen kẽ theo một trường thời gian để thứ tự trường thay đổi.

Mục đích sử dụng là để sửa các phim PAL đã được chụp với trường đối diện
để chuyển phim sang video.

Sau đây là mô tả về các tham số được chấp nhận.

chế độ
Đặt chế độ pha.

Nó chấp nhận các giá trị sau:

t Nắm bắt thứ tự trường từ trên xuống trước, chuyển từ dưới lên trước. Bộ lọc sẽ trì hoãn
trường dưới cùng.

b Nắm bắt thứ tự trường từ dưới lên trước, chuyển từ trên xuống trước. Bộ lọc sẽ trì hoãn đầu
trường.

p Chụp và chuyển với cùng một thứ tự trường. Chế độ này chỉ tồn tại cho
tài liệu về các tùy chọn khác để tham khảo, nhưng nếu bạn thực sự chọn nó,
bộ lọc trung thực sẽ không làm gì cả.

a Nắm bắt thứ tự trường được xác định tự động bởi cờ trường, chuyển ngược lại.
Bộ lọc lựa chọn trong số tb chế độ trên cơ sở từng khung hình bằng cách sử dụng cờ trường. Nếu như
không có thông tin lĩnh vực nào có sẵn, sau đó điều này hoạt động giống như u.

u Chụp không xác định hoặc thay đổi, chuyển ngược lại. Bộ lọc lựa chọn trong số tb trên
từng khung hình trên cơ sở phân tích hình ảnh và chọn phương án thay thế
tạo ra sự phù hợp tốt nhất giữa các trường.

T Chụp đầu tiên, chuyển giao không xác định hoặc thay đổi. Bộ lọc lựa chọn trong số tp
sử dụng phân tích hình ảnh.

B Chụp từ dưới lên trước, chuyển không xác định hoặc thay đổi. Bộ lọc lựa chọn trong số bp
sử dụng phân tích hình ảnh.

A Chụp được xác định bởi cờ trường, chuyển không xác định hoặc thay đổi. Bộ lọc lựa chọn
trong số t, bp sử dụng cờ trường và phân tích hình ảnh. Nếu không có thông tin trường
có sẵn, sau đó điều này hoạt động giống như U. Đây là chế độ mặc định.

U Cả hai chụp và chuyển không xác định hoặc khác nhau. Bộ lọc lựa chọn trong số t, bp
chỉ sử dụng phân tích hình ảnh.

Pixdesctest
Bộ lọc kiểm tra bộ mô tả định dạng pixel, chủ yếu hữu ích cho kiểm tra nội bộ. Video đầu ra
phải bằng với video đầu vào.

Ví dụ:

format = monow, pixdesctest

có thể được sử dụng để kiểm tra định nghĩa bộ mô tả định dạng pixel monowhite.

pp
Bật chuỗi bộ lọc con sau xử lý được chỉ định bằng libpostproc. Thư viện này
sẽ được tự động chọn với bản dựng GPL ("--enable-gpl"). Bộ lọc con phải là
được phân tách bằng '/' và có thể bị vô hiệu hóa bằng cách thêm dấu '-' vào trước. Mỗi bộ lọc con và một số tùy chọn
có một tên ngắn và một tên dài có thể được sử dụng thay thế cho nhau, tức là dr / dering là
Tương tự.

Các bộ lọc chấp nhận các tùy chọn sau:

bộ lọc con
Đặt chuỗi bộ lọc con hậu xử lý.

Tất cả các bộ lọc con chia sẻ các tùy chọn chung để xác định phạm vi của chúng:

a / autoq
Tuân theo các lệnh chất lượng cho bộ lọc con này.

c / crom
Thực hiện lọc sắc độ (mặc định).

y / nochrom
Chỉ thực hiện lọc độ sáng (không lọc sắc độ).

n / noluma
Chỉ thực hiện lọc độ chói (không có độ chói).

Các tùy chọn này có thể được thêm vào sau tên bộ lọc con, được phân tách bằng dấu '|'.

Các bộ lọc con có sẵn là:

hb / hdeblock [| chênh lệch [| độ phẳng]]
Bộ lọc gỡ lỗi ngang

sự khác biệt
Yếu tố khác biệt trong đó giá trị cao hơn có nghĩa là nhiều gỡ lỗi hơn (mặc định: 32).

bằng phẳng
Ngưỡng độ phẳng trong đó giá trị thấp hơn có nghĩa là nhiều lỗi hơn (mặc định: 39).

vb / vdeblock [| chênh lệch [| độ phẳng]]
Bộ lọc gỡ lỗi dọc

sự khác biệt
Yếu tố khác biệt trong đó giá trị cao hơn có nghĩa là nhiều gỡ lỗi hơn (mặc định: 32).

bằng phẳng
Ngưỡng độ phẳng trong đó giá trị thấp hơn có nghĩa là nhiều lỗi hơn (mặc định: 39).

ha / hadeblock [| chênh lệch [| độ phẳng]]
Bộ lọc gỡ lỗi ngang chính xác

sự khác biệt
Yếu tố khác biệt trong đó giá trị cao hơn có nghĩa là nhiều gỡ lỗi hơn (mặc định: 32).

bằng phẳng
Ngưỡng độ phẳng trong đó giá trị thấp hơn có nghĩa là nhiều lỗi hơn (mặc định: 39).

va / vadeblock [| chênh lệch [| độ phẳng]]
Bộ lọc gỡ lỗi theo chiều dọc chính xác

sự khác biệt
Yếu tố khác biệt trong đó giá trị cao hơn có nghĩa là nhiều gỡ lỗi hơn (mặc định: 32).

bằng phẳng
Ngưỡng độ phẳng trong đó giá trị thấp hơn có nghĩa là nhiều lỗi hơn (mặc định: 39).

Các bộ lọc gỡ lỗi ngang và dọc chia sẻ các giá trị chênh lệch và độ phẳng để
bạn không thể đặt các ngưỡng ngang và dọc khác nhau.

h1 / x1hdeblock
Bộ lọc gỡ lỗi ngang thử nghiệm

v1 / x1vdeblock
Bộ lọc gỡ lỗi dọc thử nghiệm

dr / dering
Bộ lọc deringing

tn / tmpnoise [| ngưỡng1 [| ngưỡng2 [| ngưỡng3]]], tạm thời tiếng ồn giảm tốc
ngưỡng 1
lớn hơn -> lọc mạnh hơn

ngưỡng 2
lớn hơn -> lọc mạnh hơn

ngưỡng 3
lớn hơn -> lọc mạnh hơn

al / autolevels [: f / fullrange], tự động độ sáng / Ngược lại sửa chữa
f / sắp xếp đầy đủ
Kéo dài độ sáng đến "0-255".

lb / linblenddeint
Bộ lọc khử xen kẽ hỗn hợp tuyến tính giúp hủy xen kẽ khối đã cho bằng cách lọc tất cả
dòng có bộ lọc "(1 2 1)".

li / linipoldeint
Bộ lọc khử xen kẽ nội suy tuyến tính giúp hủy xen kẽ khối đã cho bởi
nội suy tuyến tính mỗi dòng thứ hai.

ci / Cubipoldeint
Bộ lọc khử xen kẽ nội suy khối lập phương hủy xen kẽ khối đã cho theo khối lập phương
nội suy mỗi dòng thứ hai.

md / mediandeint
Bộ lọc khử xen kẽ trung vị giúp hủy xen kẽ khối đã cho bằng cách áp dụng trung vị
lọc đến từng dòng thứ hai.

fd / ffmpegdeint
FFmpeg bộ lọc khử xen kẽ khối đã cho bằng cách lọc mọi
dòng thứ hai với bộ lọc "(-1 4 2 4 -1)".

l5 / lowpass5
Bộ lọc khử xen kẽ thông thấp FIR được áp dụng theo chiều dọc giúp hủy xen kẽ khối đã cho
bằng cách lọc tất cả các dòng bằng bộ lọc "(-1 2 6 2 -1)".

fq / forceQuant [| quantizer]
Ghi đè bảng lượng tử từ đầu vào bằng bộ định lượng không đổi mà bạn chỉ định.

bộ định lượng
Bộ định lượng để sử dụng

de / default
Tổ hợp bộ lọc pp mặc định ("hb | a, vb | a, dr | a")

fa / nhanh
Kết hợp bộ lọc pp nhanh ("h1 | a, v1 | a, dr | a")

ac Tổ hợp bộ lọc pp chất lượng cao ("ha | a | 128 | 7, va | a, dr | a")

Các ví dụ

· Áp dụng tính năng gỡ lỗi theo chiều ngang và dọc, độ sáng và độ tương phản tự động:

pp = hb / vb / dr / al

· Áp dụng các bộ lọc mặc định mà không cần hiệu chỉnh độ sáng / độ tương phản:

pp = de / -al

· Áp dụng các bộ lọc mặc định và bộ khử nhiễu tạm thời:

pp = default / tmpnoise | 1 | 2 | 3

· Chỉ áp dụng tính năng gỡ lỗi trên độ sáng và bật hoặc tắt tính năng gỡ lỗi theo chiều dọc
tự động tùy thuộc vào thời gian có sẵn của CPU:

pp = hb | y / vb | a

pp7
Áp dụng bộ lọc Hậu xử lý 7. Nó là biến thể của spp bộ lọc, tương tự như spp = 6 với 7
điểm DCT, nơi chỉ mẫu trung tâm được sử dụng sau IDCT.

Bộ lọc chấp nhận các tùy chọn sau:

qp Bắt buộc một tham số lượng tử hóa không đổi. Nó chấp nhận một số nguyên trong phạm vi từ 0 đến 63. Nếu
không được đặt, bộ lọc sẽ sử dụng QP từ luồng video (nếu có).

chế độ
Đặt chế độ ngưỡng. Các chế độ khả dụng là:

cứng
Đặt ngưỡng cứng.

mềm mại
Đặt ngưỡng mềm (hiệu ứng khử chuông tốt hơn, nhưng có thể mờ hơn).

trung bình
Đặt ngưỡng trung bình (kết quả tốt, mặc định).

psnr
Có được PSNR trung bình, tối đa và tối thiểu (Tỷ lệ tín hiệu đỉnh trên tiếng ồn) giữa hai
video đầu vào.

Bộ lọc này nhận đầu vào hai video đầu vào, đầu vào đầu tiên được coi là "chính"
nguồn và được chuyển không thay đổi đến đầu ra. Đầu vào thứ hai được sử dụng làm "tham chiếu"
video để tính toán PSNR.

Cả hai đầu vào video phải có cùng độ phân giải và định dạng pixel để bộ lọc này hoạt động
một cách chính xác. Ngoài ra, nó giả định rằng cả hai đầu vào có cùng số lượng khung hình,
so sánh từng cái một.

PSNR trung bình thu được được in qua hệ thống ghi nhật ký.

Bộ lọc lưu trữ MSE tích lũy (sai số bình phương trung bình) của mỗi khung hình và ở cuối
của quá trình xử lý, nó được tính trung bình trên tất cả các khung như nhau và công thức sau là
đã áp dụng để có được PSNR:

PSNR = 10 * log10 (MAX ^ 2 / MSE)

Trong đó MAX là giá trị trung bình của các giá trị lớn nhất của từng thành phần của hình ảnh.

Sau đây là mô tả về các tham số được chấp nhận.

tệp thống kê, f
Nếu được chỉ định, bộ lọc sẽ sử dụng tệp được đặt tên để lưu PSNR của từng cá nhân
khung.

Tệp được in nếu tệp thống kê được chọn, chứa một chuỗi các cặp khóa / giá trị của
hình thức chính:giá trị cho mỗi vài khung hình được so sánh.

Mô tả của từng tham số được hiển thị như sau:

n số thứ tự của khung đầu vào, bắt đầu từ 1

mse_avg
Sai số trung bình của lỗi pixel-by-pixel trung bình của các khung hình được so sánh, được tính trung bình
trên tất cả các thành phần hình ảnh.

ms_y, bạn_u, mse_v, mse_r, mse_g, mse_g, mse_a
Sai số trung bình của lỗi pixel-by-pixel trung bình của các khung hình được so sánh cho
thành phần được chỉ định bởi hậu tố.

psnr_y, psnr_u, psnr_v, psnr_r, psnr_g, psnr_b, psnr_a
Tỷ lệ tín hiệu trên nhiễu cao nhất của các khung hình được so sánh cho thành phần được chỉ định bởi
hậu tố.

Ví dụ:

phim = ref_movie.mpg, setpts = PTS-STARTPTS [main];
[main] [ref] psnr = "stats_file = stats.log" [out]

Trong ví dụ này, tệp đầu vào đang được xử lý được so sánh với tệp tham chiếu
ref_movie.mpg. PSNR của từng khung riêng lẻ được lưu trữ trong thống kê.log.

kéo lên
Bộ lọc đảo ngược kéo xuống (telecine nghịch đảo), có khả năng xử lý telecine cứng hỗn hợp,
Nội dung tiến bộ 24000/1001 khung hình / giây và 30000/1001 khung hình / giây.

Bộ lọc kéo lên được thiết kế để tận dụng bối cảnh trong tương lai trong việc đưa ra quyết định.
Bộ lọc này không trạng thái theo nghĩa là nó không khóa vào một mẫu để tuân theo, nhưng
thay vào đó, nó trông đợi các trường sau để xác định các kết quả phù hợp và xây dựng lại
khung lũy ​​tiến.

Để tạo nội dung với tốc độ khung hình đồng đều, hãy chèn bộ lọc fps sau khi kéo lên, sử dụng
"fps = 24000/1001" nếu tốc độ khung hình đầu vào là 29.97 khung hình / giây, "fps = 24" cho 30 khung hình / giây và (hiếm)
đầu vào truyền hình 25 khung hình / giây.

Bộ lọc chấp nhận các tùy chọn sau:

jl
jr
jt
jb Các tùy chọn này đặt số lượng "rác" cần bỏ qua ở bên trái, bên phải, trên cùng và dưới cùng
của hình ảnh, tương ứng. Trái và phải theo đơn vị 8 pixel, trong khi trên cùng và
dưới cùng là đơn vị của 2 dòng. Mặc định là 8 pixel mỗi bên.

sb Đặt thời gian nghỉ nghiêm ngặt. Đặt tùy chọn này thành 1 sẽ làm giảm cơ hội lọc
đôi khi tạo ra một khung không khớp, nhưng nó cũng có thể gây ra quá nhiều
khung hình bị rơi trong chuỗi chuyển động cao. Ngược lại, đặt nó thành -1
sẽ làm cho các trường đối sánh bộ lọc dễ dàng hơn. Điều này có thể giúp xử lý video ở đâu
có hơi mờ giữa các trường, nhưng cũng có thể gây ra các trường xen kẽ
khung trong đầu ra. Giá trị mặc định là 0.

mp Đặt mặt phẳng số liệu để sử dụng. Nó chấp nhận các giá trị sau:

l Sử dụng máy bay luma.

u Sử dụng mặt phẳng màu xanh lam.

v Sử dụng mặt phẳng màu đỏ chroma.

Tùy chọn này có thể được đặt để sử dụng mặt phẳng màu thay vì mặt phẳng luma mặc định để thực hiện
tính toán của bộ lọc. Điều này có thể cải thiện độ chính xác trên tài liệu nguồn rất sạch, nhưng
nhiều khả năng sẽ làm giảm độ chính xác, đặc biệt nếu có nhiễu sắc độ (cầu vồng
hiệu ứng) hoặc bất kỳ video thang độ xám nào. Mục đích chính của việc thiết lập mp đến một mặt phẳng sắc độ là
để giảm tải cho CPU và làm cho việc kéo lên có thể sử dụng được trong thời gian thực trên các máy chạy chậm.

Để có kết quả tốt nhất (không có khung trùng lặp trong tệp đầu ra), cần phải thay đổi
tỷ lệ khung hình đầu ra. Ví dụ, để đảo ngược đầu vào NTSC telecine:

đầu vào ffmpeg -i -vf pullup -r 24000/1001 ...

qp
Thay đổi thông số lượng tử hóa video (QP).

Bộ lọc chấp nhận tùy chọn sau:

qp Đặt biểu thức cho tham số lượng tử hóa.

Biểu thức được đánh giá thông qua API eval và có thể chứa, trong số các biểu thức khác,
các hằng số sau:

nổi tiếng
1 nếu chỉ mục không phải là 129, 0 nếu ngược lại.

qp Chỉ số liên tục bắt đầu từ -129 đến 128.

Các ví dụ

· Một số phương trình như:

qp = 2 + 2 * sin (PI * qp)

ngẫu nhiên
Chuyển các khung video từ bộ nhớ đệm bên trong của các khung thành một thứ tự ngẫu nhiên. Không có khung là
bỏ đi. Lấy cảm hứng từ miễn phí bộ lọc thần kinh.

khung
Đặt kích thước theo số khung của bộ nhớ đệm bên trong, trong phạm vi từ 2 đến 512. Mặc định là 30.

hạt giống
Đặt hạt giống cho trình tạo số ngẫu nhiên, phải là một số nguyên bao gồm từ 0 đến
"UINT32_MAX". Nếu không được chỉ định hoặc nếu được đặt rõ ràng thành nhỏ hơn 0, bộ lọc sẽ
cố gắng sử dụng một hạt giống ngẫu nhiên tốt trên cơ sở nỗ lực cao nhất.

bỏ hạt
Bộ lọc loại bỏ hạt là một bộ khử không gian cho video liên tục.

m0 Đặt chế độ cho mặt phẳng đầu tiên.

m1 Đặt chế độ cho mặt phẳng thứ hai.

m2 Đặt chế độ cho mặt phẳng thứ ba.

m3 Đặt chế độ cho mặt phẳng thứ tư.

Phạm vi của chế độ là từ 0 đến 24. Mô tả của từng chế độ như sau:

0 Giữ nguyên mặt phẳng đầu vào. Vỡ nợ.

1 Cắt pixel với tối thiểu và tối đa là 8 pixel lân cận.

2 Cắt pixel với tối thiểu thứ hai và tối đa là 8 pixel lân cận.

3 Cắt pixel với tối thiểu thứ ba và tối đa là 8 pixel lân cận.

4 Cắt pixel với tối thiểu thứ tư và tối đa là 8 pixel lân cận. Điều này
tương đương với một bộ lọc trung vị.

5 Cắt phân biệt dòng tạo ra sự thay đổi tối thiểu.

6 Cắt phân biệt dòng, trung gian.

7 Cắt phân biệt dòng, trung gian.

8 Cắt phân biệt dòng, trung gian.

9 Cắt phân biệt dòng trên một dòng mà pixel lân cận là gần nhất.

10 Thay thế pixel mục tiêu bằng pixel lân cận gần nhất.

11 [1 2 1] làm mờ nhân ngang và dọc.

12 Giống như chế độ 11.

13 Chế độ Bob, nội suy trường trên cùng từ dòng nơi các pixel lân cận là
gần nhất.

14 Chế độ Bob, nội suy trường dưới cùng từ dòng nơi các pixel lân cận là
gần nhất.

15 Chế độ Bob, nội suy trường trên cùng. Tương tự như 13 nhưng với một phép nội suy phức tạp hơn
công thức.

16 Chế độ Bob, nội suy trường dưới cùng. Tương tự như 14 nhưng phức tạp hơn
công thức nội suy.

17 Cắt pixel với tối thiểu và tối đa tương ứng là tối đa và tối thiểu
của mỗi cặp pixel lân cận đối diện.

18 Cắt phân biệt dòng bằng cách sử dụng các hàng xóm đối diện có khoảng cách lớn nhất từ
pixel hiện tại là tối thiểu.

19 Thay thế pixel bằng giá trị trung bình của 8 điểm ảnh lân cận.

20 Trung bình là 9 pixel ([1 1 1] mờ ngang và dọc).

21 Cắt pixel bằng cách sử dụng giá trị trung bình của hàng xóm đối diện.

22 Tương tự như chế độ 21 nhưng đơn giản và nhanh hơn.

23 Loại bỏ các cạnh và quầng nhỏ, nhưng có tiếng là vô dụng.

24 Tương tự như 23.

Remvelogo
Loại bỏ biểu trưng của đài truyền hình, sử dụng tệp hình ảnh để xác định pixel nào bao gồm
Logo. Nó hoạt động bằng cách điền vào các pixel bao gồm logo với các pixel lân cận.

Bộ lọc chấp nhận các tùy chọn sau:

tên tệp, f
Đặt tệp bitmap của bộ lọc, có thể là bất kỳ định dạng hình ảnh nào được libavformat hỗ trợ.
Chiều rộng và chiều cao của tệp hình ảnh phải khớp với chiều rộng và chiều cao của luồng video
xử lý.

Các điểm ảnh trong hình ảnh bitmap được cung cấp có giá trị bằng XNUMX không được coi là một phần của
biểu trưng, ​​các pixel khác không được coi là một phần của biểu trưng. Nếu bạn sử dụng màu trắng (255) cho logo
và màu đen (0) cho phần còn lại, bạn sẽ được an toàn. Để tạo bitmap bộ lọc, nó là
nên chụp ảnh màn hình khung màu đen có logo hiển thị, sau đó
sử dụng bộ lọc ngưỡng, sau đó là bộ lọc xói mòn một hoặc hai lần.

Nếu cần, có thể sửa các vệt nhỏ bằng tay. Hãy nhớ rằng nếu các pixel biểu trưng thì không
bị che lấp, chất lượng lọc sẽ giảm đi nhiều. Đánh dấu quá nhiều pixel là một phần của
logo không ảnh hưởng nhiều, nhưng nó sẽ làm tăng lượng mờ cần thiết để che
trên hình ảnh và sẽ phá hủy nhiều thông tin hơn mức cần thiết và các pixel bổ sung sẽ
làm chậm mọi thứ trên một logo lớn.

trường lặp lại
Bộ lọc này sử dụng cờ repeat_field từ các tiêu đề Video ES và các trường lặp lại cứng
dựa trên giá trị của nó.

đảo ngược, nghịch đảo
Đảo ngược một đoạn phim.

Cảnh báo: Bộ lọc này yêu cầu bộ nhớ để đệm toàn bộ clip, vì vậy bạn nên cắt bớt.

Các ví dụ

· Lấy 5 giây đầu tiên của clip và đảo ngược nó.

trim = end = 5, ngược lại

quay
Xoay video theo một góc tùy ý được biểu thị bằng radian.

Bộ lọc chấp nhận các tùy chọn sau:

Sau đây là mô tả về các tham số tùy chọn.

góc, a
Đặt biểu thức cho góc xoay video đầu vào theo chiều kim đồng hồ,
được biểu thị bằng một số radian. Giá trị âm sẽ dẫn đến kết quả ngược chiều kim đồng hồ
Vòng xoay. Theo mặc định, nó được đặt thành "0".

Biểu thức này được đánh giá cho mỗi khung.

ra_w, ow
Đặt biểu thức chiều rộng đầu ra, giá trị mặc định là "iw". Biểu thức này được đánh giá
chỉ một lần trong khi cấu hình.

ra_h, oh
Đặt biểu thức chiều cao đầu ra, giá trị mặc định là "ih". Biểu thức này được đánh giá
chỉ một lần trong khi cấu hình.

song tuyến tính
Bật nội suy song tuyến nếu được đặt thành 1, giá trị 0 sẽ vô hiệu hóa nó. Giá trị mặc định là
1.

tô màu, c
Đặt màu được sử dụng để lấp đầy vùng đầu ra không bị ảnh xoay. Cho
cú pháp chung của tùy chọn này, hãy kiểm tra phần "Màu sắc" trong hướng dẫn sử dụng ffmpeg-utils.
Nếu giá trị đặc biệt "không" được chọn thì không có nền nào được in (hữu ích cho
ví dụ nếu nền không bao giờ được hiển thị).

Giá trị mặc định là "đen".

Các biểu thức cho góc và kích thước đầu ra có thể chứa các hằng số sau và
chức năng:

n số thứ tự của khung đầu vào, bắt đầu từ 0. Nó luôn là NAN trước
khung đầu tiên được lọc.

t thời gian tính bằng giây của khung đầu vào, nó được đặt thành 0 khi bộ lọc được định cấu hình. Nó
luôn là NAN trước khi khung đầu tiên được lọc.

hsub
vsub
các giá trị mẫu con sắc độ ngang và dọc. Ví dụ đối với định dạng pixel
"yuv422p" hsub là 2 và vsub là 1.

trong W, iw
trong_h, ih
chiều rộng và chiều cao của video đầu vào

ra_w, ow
ra_h, oh
chiều rộng và chiều cao đầu ra, đó là kích thước của vùng đệm như được chỉ định bởi
chiều rộngcao biểu thức

thối rữa (a)
roth (a)
chiều rộng / chiều cao tối thiểu cần thiết để chứa hoàn toàn video đầu vào được xoay bởi
a rađian.

Chúng chỉ khả dụng khi tính toán ra_wra_h biểu thức.

Các ví dụ

· Xoay đầu vào theo PI / 6 radian theo chiều kim đồng hồ:

xoay = PI / 6

· Xoay đầu vào theo PI / 6 radian ngược chiều kim đồng hồ:

xoay = -PI / 6

· Xoay đầu vào 45 độ theo chiều kim đồng hồ:

xoay = 45 * PI / 180

· Áp dụng một phép quay không đổi với chu kỳ T, bắt đầu từ một góc PI / 3:

xoay = PI / 3 + 2 * PI * t / T

· Làm cho quay video đầu vào dao động với chu kỳ T giây và biên độ
của A radian:

xoay = A * sin (2 * PI / T * t)

· Xoay video, kích thước đầu ra được chọn để toàn bộ video đầu vào xoay được
luôn được chứa hoàn toàn trong đầu ra:

xoay = '2 * PI * t: ow = pseud (iw, ih): oh = ow'

· Xoay video, giảm kích thước đầu ra để không có nền nào được hiển thị:

xoay = 2 * PI * t: ow = 'min (iw, ih) /câu hỏi(2) ': oh = ow: c = none

Lệnh

Bộ lọc hỗ trợ các lệnh sau:

a, góc
Đặt biểu thức góc. Lệnh chấp nhận cùng một cú pháp của lệnh tương ứng
tùy chọn.

Nếu biểu thức được chỉ định không hợp lệ, nó được giữ ở giá trị hiện tại.

sab
Áp dụng Shape Adaptive Blur.

Bộ lọc chấp nhận các tùy chọn sau:

bán kính luma_radius, lr
Đặt cường độ bộ lọc làm mờ luma, phải là một giá trị trong phạm vi 0.1-4.0, giá trị mặc định là 1.0.
Giá trị lớn hơn sẽ dẫn đến hình ảnh mờ hơn và xử lý chậm hơn.

độ sáng_pre_filter_radius, lpfr
Đặt bán kính bộ lọc trước luma, phải là một giá trị trong phạm vi 0.1-2.0, giá trị mặc định là
1.0.

luma_sức mạnh, ls
Đặt chênh lệch tối đa luma giữa các pixel vẫn được xem xét, phải là một giá trị trong
phạm vi 0.1-100.0, giá trị mặc định là 1.0.

bán kính sắc độ, cr
Đặt cường độ bộ lọc làm mờ sắc độ, phải là một giá trị trong phạm vi 0.1-4.0. Một giá trị lớn hơn
sẽ dẫn đến hình ảnh bị mờ hơn và xử lý chậm hơn.

sắc độ_pre_filter_radius, cpfr
Đặt bán kính bộ lọc trước sắc độ, phải là một giá trị trong phạm vi 0.1-2.0.

sắc độ_cường độ, cs
Đặt chênh lệch tối đa về sắc độ giữa các pixel vẫn được xem xét, phải là một giá trị
trong khoảng 0.1-100.0.

Mỗi giá trị tùy chọn sắc độ, nếu không được chỉ định rõ ràng, được đặt thành luma tương ứng
giá trị tùy chọn.

tỉ lệ
Chia tỷ lệ (thay đổi kích thước) video đầu vào, sử dụng thư viện libswscale.

Bộ lọc tỷ lệ buộc tỷ lệ khung hình hiển thị đầu ra giống với đầu vào, bằng cách
thay đổi tỷ lệ co của mẫu đầu ra.

Nếu định dạng hình ảnh đầu vào khác với định dạng được yêu cầu bởi bộ lọc tiếp theo,
bộ lọc tỷ lệ sẽ chuyển đổi đầu vào sang định dạng được yêu cầu.

Các lựa chọn

Bộ lọc chấp nhận các tùy chọn sau hoặc bất kỳ tùy chọn nào được hỗ trợ bởi
thang đo libswscale.

Xem các quy mô ffmpeg nhãn hiệu để có danh sách đầy đủ các tùy chọn tỷ lệ.

chiều rộng, w
Chiều cao, h
Đặt biểu thức kích thước video đầu ra. Giá trị mặc định là thứ nguyên đầu vào.

Nếu giá trị là 0, chiều rộng đầu vào được sử dụng cho đầu ra.

Nếu một trong các giá trị là -1, bộ lọc tỷ lệ sẽ sử dụng giá trị duy trì
tỷ lệ khung hình của hình ảnh đầu vào, được tính từ kích thước được chỉ định khác. Nếu như
cả hai đều là -1, kích thước đầu vào được sử dụng

Nếu một trong các giá trị là -n với n> 1, bộ lọc tỷ lệ cũng sẽ sử dụng giá trị
duy trì tỷ lệ khung hình của hình ảnh đầu vào, được tính toán từ tỷ lệ được chỉ định khác
kích thước. Tuy nhiên, sau đó nó sẽ đảm bảo rằng thứ nguyên được tính toán là
chia hết cho n và điều chỉnh giá trị nếu cần.

Xem bên dưới để biết danh sách các hằng số được chấp nhận để sử dụng trong biểu thức thứ nguyên.

xen vào
Đặt chế độ xen kẽ. Nó chấp nhận các giá trị sau:

1 Buộc mở rộng quy mô nhận biết xen kẽ.

0 Không áp dụng tỷ lệ xen kẽ.

-1 Chọn tỷ lệ nhận biết xen kẽ tùy thuộc vào việc các khung nguồn có được gắn cờ hay không
như xen kẽ hay không.

Giá trị mặc định là 0.

cờ
Đặt cờ tỷ lệ libswscale. Nhìn thấy các quy mô ffmpeg nhãn hiệu để có danh sách đầy đủ
các giá trị. Nếu không được chỉ định rõ ràng, bộ lọc sẽ áp dụng các cờ mặc định.

kích thước, s
Đặt kích thước video. Để biết cú pháp của tùy chọn này, hãy kiểm tra "Băng hình kích thước" phần in
các ffmpeg-utils nhãn hiệu.

in_color_matrix
out_color_matrix
Đặt kiểu không gian màu YCbCr vào / ra.

Điều này cho phép ghi đè giá trị được phát hiện tự động cũng như cho phép buộc
giá trị cụ thể được sử dụng cho đầu ra và bộ mã hóa.

Nếu không được chỉ định, loại không gian màu phụ thuộc vào định dạng pixel.

Những giá trị khả thi:

tự động
Chọn tự động.

bt709
Định dạng phù hợp với Khuyến nghị của Liên minh Viễn thông Quốc tế (ITU)
BT.709.

Fcc Đặt không gian màu tuân theo Ủy ban Truyền thông Liên bang Hoa Kỳ
(FCC) Bộ luật Quy định Liên bang (CFR) Tiêu đề 47 (2003) 73.682 (a).

bt601
Đặt không gian màu tuân theo:

· Khuyến nghị về lĩnh vực thông tin vô tuyến của ITU (ITU-R) BT.601

· ITU-R Rec. BT.470-6 (1998) Hệ B, B1 và ​​G

· Hiệp hội Kỹ sư Điện ảnh và Truyền hình (SMPTE) ST 170: 2004

smpte240m
Đặt không gian màu phù hợp với SMPTE ST 240: 1999.

trong phạm vi
ngoài_phạm vi
Đặt phạm vi mẫu YCbCr đầu vào / đầu ra.

Điều này cho phép ghi đè giá trị được phát hiện tự động cũng như cho phép buộc
giá trị cụ thể được sử dụng cho đầu ra và bộ mã hóa. Nếu không được chỉ định, phạm vi phụ thuộc vào
định dạng pixel. Những giá trị khả thi:

tự động
Chọn tự động.

jpeg / đầy đủ / máy tính
Đặt toàn dải (0-255 trong trường hợp luma 8-bit).

mpeg / tv
Đặt phạm vi "MPEG" (16-235 trong trường hợp luma 8 bit).

force_ original_aspect_ratio
Bật giảm hoặc tăng chiều rộng hoặc chiều cao video đầu ra nếu cần thiết để giữ
tỷ lệ khung hình gốc. Những giá trị khả thi:

vô hiệu hóa
Chia tỷ lệ video như được chỉ định và tắt tính năng này.

giảm
Kích thước video đầu ra sẽ tự động giảm nếu cần.

tăng
Kích thước video đầu ra sẽ tự động được tăng lên nếu cần.

Một ví dụ hữu ích của tùy chọn này là khi bạn biết mức tối đa của một thiết bị cụ thể
độ phân giải cho phép, bạn có thể sử dụng điều này để giới hạn video đầu ra ở mức đó, trong khi
vẫn giữ nguyên tỷ lệ khung hình. Ví dụ: thiết bị A cho phép phát lại 1280x720 và
video có kích thước 1920x800. Sử dụng tùy chọn này (đặt nó thành giảm) và chỉ định 1280x720 thành
dòng lệnh tạo ra đầu ra 1280x533.

Xin lưu ý rằng đây là một điều khác với việc chỉ định -1 cho w or h, bạn vẫn
cần chỉ định độ phân giải đầu ra để tùy chọn này hoạt động.

Các giá trị của wh các tùy chọn là các biểu thức có chứa các hằng số sau:

trong W
trong_h
Chiều rộng và chiều cao đầu vào

iw
ih Chúng giống như trong Wtrong_h.

ra_w
ra_h
Chiều rộng và chiều cao đầu ra (được chia tỷ lệ)

ow
oh Chúng giống như ra_wra_h

a Giống như iw / ih

sar tỷ lệ khung hình mẫu đầu vào

dar Tỷ lệ khung hình hiển thị đầu vào. Tính từ "(iw / ih) * sar".

hsub
vsub
các giá trị mẫu con sắc độ đầu vào ngang và dọc. Ví dụ cho pixel
định dạng "yuv422p" hsub là 2 và vsub là 1.

ồ phụ
trứng phụ
các giá trị mẫu con màu đầu ra theo chiều ngang và chiều dọc. Ví dụ cho pixel
định dạng "yuv422p" hsub là 2 và vsub là 1.

Các ví dụ

· Chia tỷ lệ video đầu vào thành kích thước 200x100

thang đo = w = 200: h = 100

Điều này tương đương với:

tỷ lệ = 200: 100

hoặc:

tỷ lệ = 200x100

· Chỉ định một chữ viết tắt kích thước cho kích thước đầu ra:

scale = qcif

cũng có thể được viết là:

scale = size = qcif

· Quy mô đầu vào thành 2x:

scale = w = 2 * iw: h = 2 * ih

· Ở trên giống như:

scale = 2 * in_w: 2 * in_h

· Quy mô đầu vào thành 2x với tỷ lệ xen kẽ bắt buộc:

scale = 2 * iw: 2 * ih: interl = 1

· Quy mô đầu vào thành một nửa kích thước:

scale = w = iw / 2: h = ih / 2

· Tăng chiều rộng và đặt chiều cao bằng cùng một kích thước:

scale = 3/2 * iw: ow

· Tìm kiếm sự hòa hợp tiếng Hy Lạp:

scale = iw: 1 / PHI * iw
scale = ih * PHI: ih

· Tăng chiều cao và đặt chiều rộng thành 3/2 chiều cao:

quy mô = w = 3/2 * ồ: h = 3/5 * ih

· Tăng kích thước, làm cho kích thước trở thành bội số của các giá trị mẫu con sắc độ:

scale = "trunc (3/2 * iw / hsub) * hsub: trunc (3/2 * ih / vsub) * vsub"

· Tăng chiều rộng lên tối đa 500 pixel, giữ nguyên tỷ lệ khung hình như
đầu vào:

scale = w = 'min (500 \, iw * 3/2): h = -1'

Lệnh

Bộ lọc này hỗ trợ các lệnh sau:

chiều rộng, w
Chiều cao, h
Đặt biểu thức kích thước video đầu ra. Lệnh chấp nhận cùng một cú pháp của
tùy chọn tương ứng.

Nếu biểu thức được chỉ định không hợp lệ, nó được giữ ở giá trị hiện tại.

quy mô2ref
Chia tỷ lệ (thay đổi kích thước) video đầu vào, dựa trên video tham chiếu.

Xem bộ lọc tỷ lệ để biết các tùy chọn có sẵn, scale2ref hỗ trợ tương tự nhưng sử dụng
video tham chiếu thay vì đầu vào chính làm cơ sở.

Các ví dụ

· Chia tỷ lệ luồng phụ đề để khớp với kích thước video chính trước khi phủ

'scale2ref [b] [a]; [a] [b] overlay'

các trường riêng biệt
"Các trường riêng biệt" nhận đầu vào video dựa trên khung hình và chia từng khung hình thành
các trường thành phần, tạo ra một clip nửa chiều cao mới với tốc độ khung hình gấp đôi và gấp đôi
số lượng khung hình.

Bộ lọc này sử dụng thông tin thống trị trường trong khung để quyết định cặp nào trong số mỗi cặp
các trường để đặt đầu tiên trong đầu ra. Nếu nó sử dụng sai sân trường lọc trước
bộ lọc "riêng biệt".

thiết lập, setar
Bộ lọc "setdar" đặt Tỷ lệ khung hình hiển thị cho video đầu ra của bộ lọc.

Điều này được thực hiện bằng cách thay đổi Tỷ lệ khung hình mẫu (còn gọi là Pixel) được chỉ định, theo
phương trình sau:

= / *

Hãy nhớ rằng bộ lọc "setdar" không sửa đổi kích thước pixel của video
khung. Ngoài ra, tỷ lệ khung hình hiển thị do bộ lọc này đặt có thể được thay đổi bởi các bộ lọc sau
trong chuỗi bộ lọc, ví dụ như trong trường hợp mở rộng quy mô hoặc nếu một bộ lọc "setdar" hoặc "setar" khác là
đã áp dụng.

Bộ lọc "setar" đặt Tỷ lệ khung hình mẫu (còn gọi là Pixel) cho video đầu ra của bộ lọc.

Lưu ý rằng do ứng dụng của bộ lọc này, khía cạnh hiển thị đầu ra
tỷ lệ sẽ thay đổi theo phương trình trên.

Hãy nhớ rằng tỷ lệ co mẫu do bộ lọc "setar" đặt có thể được thay đổi bởi
các bộ lọc sau trong chuỗi bộ lọc, ví dụ: nếu một bộ lọc "setar" hoặc "setdar" khác là
đã áp dụng.

Nó chấp nhận các tham số sau:

r, tỉ lệ, dar ("setdar" chỉ một), sar ("setar" chỉ)
Đặt tỷ lệ khung hình được bộ lọc sử dụng.

Tham số có thể là một chuỗi số dấu phẩy động, một biểu thức hoặc một chuỗi
hình thức num:ngày, Nơi numngày là tử số và mẫu số của tỷ lệ khung hình.
Nếu tham số không được chỉ định, nó được giả định là giá trị "0". Trong trường hợp biểu mẫu
"num:ngày"được sử dụng, ký tự": "phải được thoát.

tối đa Đặt giá trị số nguyên lớn nhất được sử dụng để biểu thị tử số và mẫu số khi
giảm tỷ lệ khung hình được biểu thị xuống hợp lý. Giá trị mặc định là 100.

Thông số sar là một biểu thức chứa các hằng số sau:

E, SỐ PI, PHI
Đây là các giá trị gần đúng cho các hằng số toán học e (số Euler), pi
(Số pi trong tiếng Hy Lạp) và phi (tỷ lệ vàng).

w, h
Chiều rộng và chiều cao đầu vào.

a Chúng giống như w / h.

sar Tỷ lệ co của mẫu đầu vào.

dar Tỷ lệ khung hình hiển thị đầu vào. Nó giống như (w / h) * sar.

hsub, vsub
Các giá trị mẫu con sắc độ ngang và dọc. Ví dụ: đối với định dạng pixel
"yuv422p" hsub là 2 và vsub là 1.

Các ví dụ

· Để thay đổi tỷ lệ khung hình hiển thị thành 16: 9, hãy chỉ định một trong những điều sau:

setdar = dar = 1.77777
setdar = dar = 16/9
setdar = dar = 1.77777

· Để thay đổi tỷ lệ khung hình mẫu thành 10:11, hãy chỉ định:

setar = sar = 10/11

· Để đặt tỷ lệ khung hình hiển thị là 16: 9 và chỉ định giá trị số nguyên tối đa là 1000 in
giảm tỷ lệ khung hình, sử dụng lệnh:

setdar = ratio = 16/9: max = 1000

sân trường
Trường lực cho khung video đầu ra.

Bộ lọc "setfield" đánh dấu trường loại xen kẽ cho các khung đầu ra. Nó không
thay đổi khung đầu vào, nhưng chỉ đặt thuộc tính tương ứng, điều này ảnh hưởng đến cách
khung được xử lý bằng các bộ lọc sau (ví dụ: "fieldorder" hoặc "yadif").

Bộ lọc chấp nhận các tùy chọn sau:

chế độ
Các giá trị có sẵn là:

tự động
Giữ cùng một thuộc tính trường.

bff Đánh dấu khung là trường dưới cùng-đầu tiên.

tff Đánh dấu khung là trường trên cùng-đầu tiên.

ăn xin
Đánh dấu khung là tiến bộ.

ShowInfo
Hiển thị một dòng chứa nhiều thông tin khác nhau cho mỗi khung video đầu vào. Video đầu vào là
không sửa đổi.

Dòng hiển thị chứa một chuỗi các cặp khóa / giá trị của biểu mẫu chính:giá trị.

Các giá trị sau được hiển thị trong đầu ra:

n Số (tuần tự) của khung đầu vào, bắt đầu từ 0.

Điểm Bộ thời gian trình bày của khung đầu vào, được biểu thị bằng một số cơ sở thời gian
các đơn vị. Đơn vị cơ sở thời gian phụ thuộc vào đệm đầu vào của bộ lọc.

pts_time
Bộ thời gian trình bày của khung đầu vào, được biểu thị bằng số giây.

gửi Vị trí của khung trong luồng đầu vào hoặc -1 nếu thông tin này là
không khả dụng và / hoặc vô nghĩa (ví dụ: trong trường hợp video tổng hợp).

fmt Tên định dạng pixel.

sar Tỷ lệ co mẫu của khung đầu vào, được biểu thị trong biểu mẫu num/ngày.

s Kích thước của khung đầu vào. Để biết cú pháp của tùy chọn này, hãy kiểm tra "Băng hình kích thước"
phần in các ffmpeg-utils nhãn hiệu.

i Loại chế độ xen kẽ ("P" cho "lũy tiến", "T" cho trường trên cùng trước, "B" cho
trường dưới cùng đầu tiên).

là chìa khóa
Đây là 1 nếu khung là khung chính, 0 nếu ngược lại.

kiểu
Loại hình ảnh của khung đầu vào ("I" cho khung I, "P" cho khung P, "B" cho
Khung B hoặc "?" cho một loại không xác định). Cũng tham khảo tài liệu của
Enum "AVPictureType" và của hàm "av_get_picture_type_char" được xác định trong
libavutil / avutil.h.

checksum
Tổng kiểm tra Adler-32 (được in dưới dạng thập lục phân) của tất cả các mặt phẳng của khung đầu vào.

mặt phẳng_checksum
Tổng kiểm tra Adler-32 (được in dưới dạng thập lục phân) của mỗi mặt phẳng của khung đầu vào,
được thể hiện dưới dạng "[c0 c1 c2 c3] ".

bảng trưng bày
Hiển thị bảng 256 màu của mỗi khung. Bộ lọc này chỉ phù hợp với bạn8 điểm ảnh
định dạng khung.

Nó chấp nhận tùy chọn sau:

s Đặt kích thước của hộp được sử dụng để thể hiện một mục nhập màu của bảng màu. Mặc định là 30 (cho
hộp pixel "30x30").

máy bay xáo trộn
Sắp xếp lại và / hoặc sao chép các mặt phẳng video.

Nó chấp nhận các tham số sau:

map0
Chỉ số của mặt phẳng đầu vào sẽ được sử dụng làm mặt phẳng đầu ra đầu tiên.

map1
Chỉ số của mặt phẳng đầu vào sẽ được sử dụng làm mặt phẳng đầu ra thứ hai.

map2
Chỉ số của mặt phẳng đầu vào được sử dụng làm mặt phẳng đầu ra thứ ba.

map3
Chỉ số của mặt phẳng đầu vào được sử dụng làm mặt phẳng đầu ra thứ tư.

Mặt phẳng đầu tiên có chỉ số 0. Mặc định là giữ nguyên giá trị đầu vào.

Hoán đổi mặt phẳng thứ hai và thứ ba của đầu vào:

ffmpeg -i INPUT -vf shuffleplanes = 0: 2: 1: 3 OUTPUT

trạng thái tín hiệu
Đánh giá các số liệu trực quan khác nhau giúp xác định các vấn đề liên quan đến
số hóa phương tiện video analog.

Theo mặc định, bộ lọc sẽ ghi lại các giá trị siêu dữ liệu này:

YMIN
Hiển thị giá trị Y tối thiểu có trong khung đầu vào. Thể hiện trong phạm vi
[0-255].

VÀNG
Hiển thị giá trị Y ở phân vị 10% trong khung đầu vào. Thể hiện trong phạm vi
trong tổng số [0-255].

YAVG
Hiển thị giá trị Y trung bình trong khung đầu vào. Được thể hiện trong phạm vi [0-255].

YÊU
Hiển thị giá trị Y ở phân vị 90% trong khung đầu vào. Thể hiện trong phạm vi
trong tổng số [0-255].

YMAX
Hiển thị giá trị Y lớn nhất có trong khung đầu vào. Thể hiện trong phạm vi
[0-255].

UMIN
Hiển thị giá trị U tối thiểu có trong khung đầu vào. Thể hiện trong phạm vi
[0-255].

THẤP
Hiển thị giá trị U ở phân vị 10% trong khung đầu vào. Thể hiện trong phạm vi
trong tổng số [0-255].

máy bay không người lái
Hiển thị giá trị U trung bình trong khung đầu vào. Được thể hiện trong phạm vi [0-255].

TUYỆT VỜI
Hiển thị giá trị U ở phân vị 90% trong khung đầu vào. Thể hiện trong phạm vi
trong tổng số [0-255].

UMAX
Hiển thị giá trị U lớn nhất có trong khung đầu vào. Thể hiện trong phạm vi
[0-255].

VMIN
Hiển thị giá trị V tối thiểu có trong khung đầu vào. Thể hiện trong phạm vi
[0-255].

VLOW
Hiển thị giá trị V ở phân vị 10% trong khung đầu vào. Thể hiện trong phạm vi
trong tổng số [0-255].

VAVG
Hiển thị giá trị V trung bình trong khung đầu vào. Được thể hiện trong phạm vi [0-255].

VHGH
Hiển thị giá trị V ở phân vị 90% trong khung đầu vào. Thể hiện trong phạm vi
trong tổng số [0-255].

VMAX
Hiển thị giá trị V lớn nhất có trong khung đầu vào. Thể hiện trong phạm vi
[0-255].

SATMIN
Hiển thị giá trị bão hòa tối thiểu có trong khung đầu vào. Thể hiện trong
phạm vi [0- ~ 181.02].

SATLOW
Hiển thị giá trị bão hòa ở phân vị 10% trong khung đầu vào. Bày tỏ
trong khoảng [0- ~ 181.02].

SATAVG
Hiển thị giá trị bão hòa trung bình trong khung đầu vào. Thể hiện trong phạm vi
[0- ~ 181.02].

THƯỢNG
Hiển thị giá trị bão hòa ở phân vị 90% trong khung đầu vào. Bày tỏ
trong khoảng [0- ~ 181.02].

SATMAX
Hiển thị giá trị bão hòa tối đa có trong khung đầu vào. Thể hiện trong
phạm vi [0- ~ 181.02].

HUEMED
Hiển thị giá trị trung bình cho màu sắc trong khung đầu vào. Thể hiện trong phạm vi
[0-360].

HUEAVG
Hiển thị giá trị trung bình cho màu sắc trong khung đầu vào. Thể hiện trong phạm vi
[0-360].

YDIF
Hiển thị giá trị trung bình của sự khác biệt giá trị mẫu giữa tất cả các giá trị của mặt phẳng Y trong
khung hiện tại và các giá trị tương ứng của khung đầu vào trước đó. Thể hiện trong
phạm vi [0-255].

UDIF
Hiển thị giá trị trung bình của sự khác biệt giá trị mẫu giữa tất cả các giá trị của mặt phẳng U trong
khung hiện tại và các giá trị tương ứng của khung đầu vào trước đó. Thể hiện trong
phạm vi [0-255].

VDIF
Hiển thị giá trị trung bình của sự khác biệt giá trị mẫu giữa tất cả các giá trị của mặt phẳng V trong
khung hiện tại và các giá trị tương ứng của khung đầu vào trước đó. Thể hiện trong
phạm vi [0-255].

Bộ lọc chấp nhận các tùy chọn sau:

stat
ra stat chỉ định một hình thức phân tích hình ảnh bổ sung. ra đầu ra video với
loại pixel được chỉ định được đánh dấu.

Cả hai tùy chọn đều chấp nhận các giá trị sau:

tất cả
Xác định tạm thời ngoại lệ điểm ảnh. MỘT tạm thời ngoại lệ là một pixel không giống như
các pixel lân cận của cùng một trường. Ví dụ về các ngoại lệ theo thời gian bao gồm
kết quả của việc bỏ qua video, tắc nghẽn đầu hoặc các vấn đề theo dõi băng.

vrep
Xác định thẳng đứng hàng lặp đi lặp lại. Lặp lại dòng dọc bao gồm các hàng tương tự
pixel trong một khung. Trong video kỹ thuật số bẩm sinh, sự lặp lại dòng dọc là
phổ biến, nhưng kiểu này không phổ biến trong video số hóa từ nguồn analog.
Khi nó xuất hiện trong video là kết quả của việc số hóa một nguồn analog, nó
có thể chỉ ra sự che giấu đối với người bỏ học bù đắp.

mang
Xác định các pixel nằm ngoài phạm vi phát sóng hợp pháp.

màu sắc, c
Đặt màu đánh dấu cho ra lựa chọn. Màu mặc định là màu vàng.

Các ví dụ

· Dữ liệu đầu ra của các số liệu video khác nhau:

ffprobe -f lavfi movie = example.mov, signalstats = "stat = tout + vrep + brng" -show_frames

· Xuất dữ liệu cụ thể về các giá trị tối thiểu và tối đa của mặt phẳng Y trên mỗi khung hình:

ffprobe -f lavfi movie = example.mov, signalstats -show_entries frame_tags = lavfi.signalstats.YMAX, lavfi.signalstats.YMIN

· Phát lại video trong khi tô sáng các pixel nằm ngoài phạm vi phát sóng bằng màu đỏ.

ffplay example.mov -vf signalstats = "out = brng: color = red"

· Phát lại video với siêu dữ liệu trạng thái tín hiệu được vẽ trên khung.

ffplay example.mov -vf signalstats = stat = brng + vrep + tout, drawtext = fontfile = FreeSerif.ttf: textfile = signalstat_drawtext.txt

Nội dung của signalstat_drawtext.txt được sử dụng trong lệnh là:

thời gian% {pts: hms}
Y (% {siêu dữ liệu: lavfi.signalstats.YMIN} -% {siêu dữ liệu: lavfi.signalstats.YMAX})
U (% {siêu dữ liệu: lavfi.signalstats.UMIN} -% {siêu dữ liệu: lavfi.signalstats.UMAX})
V (% {siêu dữ liệu: lavfi.signalstats.VMIN} -% {siêu dữ liệu: lavfi.signalstats.VMAX})
độ bão hòa tối đa:% {siêu dữ liệu: lavfi.signalstats.SATMAX}

người thông minh
Làm mờ video đầu vào mà không ảnh hưởng đến đường viền.

Nó chấp nhận các tùy chọn sau:

bán kính luma_radius, lr
Đặt bán kính luma. Giá trị tùy chọn phải là một số thực trong phạm vi [0.1,5.0]
chỉ định phương sai của bộ lọc gaussian được sử dụng để làm mờ hình ảnh (chậm hơn nếu
lớn hơn). Giá trị mặc định là 1.0.

luma_sức mạnh, ls
Đặt cường độ luma. Giá trị tùy chọn phải là một số thực trong phạm vi [-1.0,1.0]
cấu hình làm mờ. Giá trị có trong [0.0,1.0] sẽ làm mờ hình ảnh
trong khi giá trị được bao gồm trong [-1.0,0.0] sẽ làm sắc nét hình ảnh. Giá trị mặc định là 1.0.

độ sáng_threshold, lt
Đặt ngưỡng luma được sử dụng làm hệ số để xác định xem một pixel có phải là
mờ hoặc không. Giá trị tùy chọn phải là một số nguyên trong phạm vi [-30,30]. Một giá trị của
0 sẽ lọc tất cả hình ảnh, một giá trị được bao gồm trong [0,30] sẽ lọc các khu vực phẳng và
giá trị bao gồm trong [-30,0] sẽ lọc các cạnh. Giá trị mặc định là 0.

bán kính sắc độ, cr
Đặt bán kính sắc độ. Giá trị tùy chọn phải là một số thực trong phạm vi [0.1,5.0]
chỉ định phương sai của bộ lọc gaussian được sử dụng để làm mờ hình ảnh (chậm hơn nếu
lớn hơn). Giá trị mặc định là 1.0.

sắc độ_cường độ, cs
Đặt cường độ sắc độ. Giá trị tùy chọn phải là một số thực trong phạm vi
[-1.0,1.0] định cấu hình làm mờ. Giá trị được bao gồm trong [0.0,1.0] sẽ làm mờ
hình ảnh trong khi giá trị được bao gồm trong [-1.0,0.0] sẽ làm sắc nét hình ảnh. Giá trị mặc định là
1.0.

sắc_threshold, ct
Đặt ngưỡng sắc độ được sử dụng làm hệ số để xác định xem một pixel có phải là
mờ hoặc không. Giá trị tùy chọn phải là một số nguyên trong phạm vi [-30,30]. Một giá trị của
0 sẽ lọc tất cả hình ảnh, một giá trị được bao gồm trong [0,30] sẽ lọc các khu vực phẳng và
giá trị bao gồm trong [-30,0] sẽ lọc các cạnh. Giá trị mặc định là 0.

Nếu một tùy chọn màu sắc không được đặt rõ ràng, giá trị luma tương ứng sẽ được đặt.

ssim
Nhận SSIM (Chỉ số SImilarity cấu trúc) giữa hai video đầu vào.

Bộ lọc này nhận đầu vào hai video đầu vào, đầu vào đầu tiên được coi là "chính"
nguồn và được chuyển không thay đổi đến đầu ra. Đầu vào thứ hai được sử dụng làm "tham chiếu"
video để tính toán SSIM.

Cả hai đầu vào video phải có cùng độ phân giải và định dạng pixel để bộ lọc này hoạt động
một cách chính xác. Ngoài ra, nó giả định rằng cả hai đầu vào có cùng số lượng khung hình,
so sánh từng cái một.

Bộ lọc lưu trữ SSIM được tính toán của mỗi khung.

Sau đây là mô tả về các tham số được chấp nhận.

tệp thống kê, f
Nếu được chỉ định, bộ lọc sẽ sử dụng tệp được đặt tên để lưu SSIM của từng cá nhân
khung.

Tệp được in nếu tệp thống kê được chọn, chứa một chuỗi các cặp khóa / giá trị của
hình thức chính:giá trị cho mỗi vài khung hình được so sánh.

Mô tả của từng tham số được hiển thị như sau:

n số thứ tự của khung đầu vào, bắt đầu từ 1

Y, U, V, R, G, B
SSIM của các khung được so sánh cho thành phần được chỉ định bởi hậu tố.

Tất cả SSIM của các khung được so sánh cho toàn bộ khung.

dB Tương tự như trên nhưng biểu diễn theo dB.

Ví dụ:

phim = ref_movie.mpg, setpts = PTS-STARTPTS [main];
[main] [ref] ssim = "stats_file = stats.log" [out]

Trong ví dụ này, tệp đầu vào đang được xử lý được so sánh với tệp tham chiếu
ref_movie.mpg. SSIM của từng khung riêng lẻ được lưu trữ trong thống kê.log.

Một ví dụ khác với cả psnr và ssim cùng lúc:

ffmpeg -i main.mpg -i ref.mpg -lavfi "ssim; [0: v] [1: v] psnr" -f null -

âm thanh nổi3d
Chuyển đổi giữa các định dạng hình ảnh lập thể khác nhau.

Các bộ lọc chấp nhận các tùy chọn sau:

in Đặt định dạng hình ảnh lập thể của đầu vào.

Các giá trị có sẵn cho các định dạng hình ảnh đầu vào là:

ssl
song song cạnh nhau (mắt trái bên trái, mắt phải bên phải)

ssr
mắt chéo bên nhau (mắt phải trái, mắt trái phải)

sbs2l
cạnh nhau song song với độ phân giải nửa chiều rộng (mắt trái bên trái, mắt phải bên phải)

sbs2r
mắt chéo cạnh nhau với độ phân giải nửa chiều rộng (mắt phải trái, mắt trái phải)

abl trên-dưới (mắt trái ở trên, mắt phải ở dưới)

tháng tư trên-dưới (mắt phải ở trên, mắt trái ở dưới)

ab2l
trên-dưới với độ phân giải nửa chiều cao (mắt trái ở trên, mắt phải ở dưới)

ab2r
trên-dưới với độ phân giải nửa chiều cao (mắt phải ở trên, mắt trái ở dưới)

al khung xen kẽ (mắt trái trước, mắt phải thứ hai)

ar khung xen kẽ (mắt phải trước, mắt trái thứ hai)

Giá trị mặc định là ssl.

ra Đặt định dạng hình ảnh lập thể của đầu ra.

Các giá trị có sẵn cho các định dạng hình ảnh đầu ra là tất cả các định dạng đầu vào cũng như:

arbg
anaglyph đỏ / xanh xám (bộ lọc màu đỏ ở mắt trái, bộ lọc màu xanh ở mắt phải)

lập luận
anaglyph đỏ / xanh xám (bộ lọc màu đỏ ở mắt trái, bộ lọc màu xanh lá cây ở mắt phải)

vòng cung
anaglyph đỏ / xám lục lam (bộ lọc màu đỏ ở mắt trái, bộ lọc màu lục lam ở mắt phải)

arch
màu đỏ anaglyph / nửa màu lục lam (bộ lọc màu đỏ ở mắt trái, bộ lọc màu lục lam ở mắt phải)

vòng cung
màu đỏ / lục lam anaglyph (bộ lọc màu đỏ ở mắt trái, bộ lọc màu lục lam ở mắt phải)

vòng cung
màu đỏ / lục lam anaglyph được tối ưu hóa với phép chiếu hình vuông nhỏ nhất của dubois (màu đỏ
bộ lọc ở mắt trái, bộ lọc màu lục lam ở mắt phải)

ôi trời
màu xanh lá cây anaglyph / màu xám đỏ tươi (bộ lọc màu xanh lục ở mắt trái, bộ lọc màu đỏ tươi ở bên phải
con mắt)

ôi trời
màu xanh lá cây anaglyph / nửa màu đỏ tươi (bộ lọc màu xanh lục ở mắt trái, bộ lọc màu đỏ tươi đang bật
mắt phải)

agmc
màu xanh lá cây / đỏ tươi anaglyph (bộ lọc màu xanh lục ở mắt trái, bộ lọc màu đỏ tươi ở bên phải
con mắt)

agmd
Màu xanh lá cây / đỏ tươi anaglyph được tối ưu hóa với phép chiếu hình vuông nhỏ nhất của dubois
(bộ lọc màu xanh lá cây ở mắt trái, bộ lọc màu đỏ tươi ở mắt phải)

aybg
anaglyph màu vàng / xám xanh (bộ lọc màu vàng ở mắt trái, bộ lọc màu xanh lam ở mắt phải)

ôi
anaglyph màu vàng / nửa màu xanh lam (bộ lọc màu vàng ở mắt trái, bộ lọc màu xanh lam ở bên phải
con mắt)

aybc
anaglyph màu vàng / xanh lam (bộ lọc màu vàng ở mắt trái, bộ lọc màu xanh lam ở mắt phải)

aybd
Màu vàng / xanh anaglyph được tối ưu hóa với phép chiếu hình vuông nhỏ nhất của dubois
(bộ lọc màu vàng ở mắt trái, bộ lọc màu xanh lam ở mắt phải)

irl các hàng xen kẽ (mắt trái có hàng trên cùng, mắt phải bắt đầu ở hàng tiếp theo)

nước mắt các hàng xen kẽ (mắt phải có hàng trên cùng, mắt trái bắt đầu ở hàng tiếp theo)

ml đầu ra đơn sắc (chỉ mắt trái)

mr đầu ra đơn sắc (chỉ mắt phải)

Giá trị mặc định là vòng cung.

Các ví dụ

· Chuyển đổi video đầu vào song song với nhau sang hai màu vàng / xanh dương anaglyph:

stereo3d = sbsl: aybd

· Chuyển đổi video đầu vào từ trên xuống (mắt trái ở trên, mắt phải ở dưới) sang song song
mắt chéo.

stereo3d = abl: sbsr

spp
Áp dụng một bộ lọc xử lý hậu kỳ đơn giản để nén và giải nén hình ảnh ở một số
(hoặc - trong trường hợp chất lượng mức 6 - tất cả) thay đổi và tính trung bình các kết quả.

Bộ lọc chấp nhận các tùy chọn sau:

chất lượng
Đặt chất lượng. Tùy chọn này xác định số lượng cấp độ để tính trung bình. Nó chấp nhận một
số nguyên trong phạm vi 0-6. Nếu được đặt thành 0, bộ lọc sẽ không có hiệu lực. Giá trị 6
có nghĩa là chất lượng cao hơn. Đối với mỗi gia số của giá trị đó, tốc độ giảm đi một hệ số
của khoảng 2. Giá trị mặc định là 3.

qp Bắt buộc một tham số lượng tử hóa không đổi. Nếu không được đặt, bộ lọc sẽ sử dụng QP từ
luồng video (nếu có).

chế độ
Đặt chế độ ngưỡng. Các chế độ khả dụng là:

cứng
Đặt ngưỡng cứng (mặc định).

mềm mại
Đặt ngưỡng mềm (hiệu ứng khử chuông tốt hơn, nhưng có thể mờ hơn).

sử dụng_bframe_qp
Cho phép sử dụng QP từ Khung B nếu được đặt thành 1. Sử dụng tùy chọn này có thể gây ra
nhấp nháy vì Khung B thường có QP lớn hơn. Mặc định là 0 (không được kích hoạt).

phụ đề
Vẽ phụ đề ở đầu video đầu vào bằng thư viện libass.

Để kích hoạt biên dịch bộ lọc này, bạn cần cấu hình FFmpeg bằng "--enable-libass".
Bộ lọc này cũng yêu cầu một bản dựng với libavcodec và libavformat để chuyển đổi
tệp phụ đề sang định dạng phụ đề ASS (Advanced Substation Alpha).

Bộ lọc chấp nhận các tùy chọn sau:

tên tệp, f
Đặt tên tệp của tệp phụ đề để đọc. Nó phải được chỉ định.

kích thước nguyên mẫu
Chỉ định kích thước của video gốc, video mà tệp ASS được tạo.
Để biết cú pháp của tùy chọn này, hãy kiểm tra "Băng hình kích thước" phần in các ffmpeg-utils
nhãn hiệu. Do thiết kế sai trong số học tỷ lệ khung hình ASS, điều này là cần thiết để
chia tỷ lệ phông chữ một cách chính xác nếu tỷ lệ khung hình đã được thay đổi.

fontdir
Đặt đường dẫn thư mục chứa các phông chữ có thể được sử dụng bởi bộ lọc. Những phông chữ này
sẽ được sử dụng ngoài bất kỳ thứ gì mà nhà cung cấp phông chữ sử dụng.

charenc
Đặt mã hóa ký tự đầu vào phụ đề. chỉ bộ lọc "phụ đề". Chỉ hữu ích nếu không
UTF-8.

luồng_index, si
Đặt chỉ mục luồng phụ đề. chỉ bộ lọc "phụ đề".

lực_kiểu
Ghi đè các tham số thông tin tập lệnh hoặc kiểu mặc định của phụ đề. Nó chấp nhận một chuỗi
chứa định dạng kiểu ASS "KEY = VALUE" các cặp được phân tách bằng ",".

Nếu khóa đầu tiên không được chỉ định, thì giả sử rằng giá trị đầu tiên chỉ định
tên tập tin.

Ví dụ: để hiển thị tệp sub.srt trên đầu video đầu vào, sử dụng lệnh:

subtitles = sub.srt

tương đương với:

subtitles = filename = sub.srt

Để hiển thị luồng phụ đề mặc định từ tệp video.mkv, sử dụng:

subtitles = video.mkv

Để hiển thị luồng phụ đề thứ hai từ tệp đó, hãy sử dụng:

subtitles = video.mkv: si = 1

Để tạo phụ đề phát trực tuyến từ sub.srt xuất hiện trong "DejaVu Serif" màu xanh lá cây trong suốt, sử dụng:

subtitles = sub.srt: force_style = 'FontName = DejaVu Serif, PrimaryColour = & HAA00FF00'

super2xsai
Chia tỷ lệ đầu vào gấp 2 lần và làm mịn bằng cách sử dụng nghệ thuật pixel Super2xSaI (Tỷ lệ và nội suy)
thuật toán chia tỷ lệ.

Hữu ích để phóng to hình ảnh nghệ thuật pixel mà không làm giảm độ sắc nét.

tráo đổi
Hoán đổi máy bay U & V.

telecine
Áp dụng quy trình telecine cho video.

Bộ lọc này chấp nhận các tùy chọn sau:

trường đầu tiên
hàng đầu, t
trường trên cùng đầu tiên

đáy, b
trường dưới cùng đầu tiên Giá trị mặc định là "trên cùng".

Belt Hold
Chuỗi số đại diện cho kiểu kéo xuống mà bạn muốn áp dụng. Mặc định
giá trị là 23.

Một số mẫu tiêu biểu:

Đầu ra NTSC (30i):
27.5p: 32222
24p: 23 (cổ điển)
24p: 2332 (ưu tiên)
20p: 33
18p: 334
16p: 3444

Đầu ra PAL (25i):
27.5p: 12222
24p: 222222222223 ("Euro kéo xuống")
16.67p: 33
16p: 33333334

thumbnail
Chọn khung hình tiêu biểu nhất trong một chuỗi các khung hình liên tiếp nhất định.

Bộ lọc chấp nhận các tùy chọn sau:

n Đặt kích thước lô khung để phân tích; trong một tập hợp của n khung, bộ lọc sẽ chọn một
trong số đó, và sau đó xử lý lô tiếp theo của n khung cho đến khi kết thúc. Mặc định là 100.

Vì bộ lọc theo dõi toàn bộ chuỗi khung hình, nên n giá trị sẽ dẫn đến
sử dụng bộ nhớ cao hơn, vì vậy giá trị cao không được khuyến khích.

Các ví dụ

· Trích xuất một hình ảnh mỗi 50 khung hình:

thumbnail = 50

· Toàn bộ ví dụ về tạo hình thu nhỏ với ffmpeg:

ffmpeg -i in.avi -vf thumbnail, scale = 300: 200 -frames: v 1 out.png

gạch
Xếp nhiều khung liên tiếp với nhau.

Bộ lọc chấp nhận các tùy chọn sau:

bố trí
Đặt kích thước lưới (tức là số dòng và cột). Đối với cú pháp của điều này
tùy chọn, kiểm tra "Băng hình kích thước" phần in các ffmpeg-utils nhãn hiệu.

nb_frames
Đặt số lượng khung hình tối đa để hiển thị trong khu vực nhất định. Nó phải nhỏ hơn hoặc
tương đương với wxh. Giá trị mặc định là 0, có nghĩa là tất cả các khu vực sẽ được sử dụng.

tỷ suất lợi nhuận
Đặt lề đường viền bên ngoài tính bằng pixel.

đệm
Đặt độ dày đường viền bên trong (tức là số pixel giữa các khung hình). Để biết thêm
các tùy chọn đệm nâng cao (chẳng hạn như có các giá trị khác nhau cho các cạnh), hãy tham khảo
bộ lọc video pad.

màu sắc
Chỉ định màu của khu vực không sử dụng. Để biết cú pháp của tùy chọn này, hãy kiểm tra "Màu"
trong hướng dẫn sử dụng ffmpeg-utils. Giá trị mặc định của màu sắc là "đen".

Các ví dụ

· Sản xuất ô 8x8 PNG cho tất cả các khung hình chính (-skip_frame không cần thiết) trong một bộ phim:

ffmpeg -skip_frame nokey -i file.avi -vf 'scale = 128: 72, tile = 8x8' -an -vsync 0 keyframe% 03d.png

Sản phẩm -vsync 0 là cần thiết để ngăn chặn ffmpeg từ sao chép từng khung đầu ra đến
điều chỉnh tốc độ khung hình được phát hiện ban đầu.

· Hiển thị 5 hình ảnh trong khu vực khung hình "3x2", với 7 pixel giữa chúng và 2
pixel của lề ban đầu, sử dụng các tùy chọn phẳng và có tên hỗn hợp:

tile=3x2:nb_frames=5:padding=7:margin=2

đan xen
Thực hiện các kiểu xen kẽ trường thời gian.

Các khung được tính bắt đầu từ 1, vì vậy khung đầu vào đầu tiên được coi là lẻ.

Bộ lọc chấp nhận các tùy chọn sau:

chế độ
Chỉ định chế độ xen kẽ. Tùy chọn này cũng có thể được chỉ định dưới dạng giá trị
một mình. Xem bên dưới để biết danh sách các giá trị cho tùy chọn này.

Các giá trị có sẵn là:

hợp nhất, 0
Di chuyển các khung hình lẻ vào trường phía trên, thậm chí vào trường phía dưới, tạo ra một
khung chiều cao gấp đôi ở một nửa tốc độ khung hình.

------> thời gian
Đầu vào:
Khung 1 Khung 2 Khung 3 Khung 4

11111 22222 33333 44444
11111 22222 33333 44444
11111 22222 33333 44444
11111 22222 33333 44444

Đầu ra:
11111 33333
22222 44444
11111 33333
22222 44444
11111 33333
22222 44444
11111 33333
22222 44444

thả_lẻ, 1
Chỉ xuất các khung hình chẵn, các khung hình lẻ bị loại bỏ, tạo ra một khung hình không thay đổi
chiều cao ở một nửa tốc độ khung hình.

------> thời gian
Đầu vào:
Khung 1 Khung 2 Khung 3 Khung 4

11111 22222 33333 44444
11111 22222 33333 44444
11111 22222 33333 44444
11111 22222 33333 44444

Đầu ra:
22222 44444
22222 44444
22222 44444
22222 44444

thả_thậm chí, 2
Chỉ xuất các khung hình lẻ, các khung hình chẵn bị loại bỏ, tạo ra một khung hình không thay đổi
chiều cao ở một nửa tốc độ khung hình.

------> thời gian
Đầu vào:
Khung 1 Khung 2 Khung 3 Khung 4

11111 22222 33333 44444
11111 22222 33333 44444
11111 22222 33333 44444
11111 22222 33333 44444

Đầu ra:
11111 33333
11111 33333
11111 33333
11111 33333

tập giấy, 3
Mở rộng từng khung hình đến chiều cao đầy đủ, nhưng chèn các dòng xen kẽ bằng màu đen, tạo ra
khung có chiều cao gấp đôi ở cùng tốc độ khung hình đầu vào.

------> thời gian
Đầu vào:
Khung 1 Khung 2 Khung 3 Khung 4

11111 22222 33333 44444
11111 22222 33333 44444
11111 22222 33333 44444
11111 22222 33333 44444

Đầu ra:
11111.....33333.....
.....22222.....44444
11111.....33333.....
.....22222.....44444
11111.....33333.....
.....22222.....44444
11111.....33333.....
.....22222.....44444

xen kẽ_top, 4
Xen trường phía trên từ các khung lẻ với trường phía dưới từ các khung chẵn,
tạo khung có chiều cao không thay đổi ở một nửa tốc độ khung hình.

------> thời gian
Đầu vào:
Khung 1 Khung 2 Khung 3 Khung 4

11111 <- 22222 33333 <- 44444
11111 22222 <- 33333 44444 <-
11111 <- 22222 33333 <- 44444
11111 22222 <- 33333 44444 <-

Đầu ra:
11111 33333
22222 44444
11111 33333
22222 44444

xen kẽ_bottom, 5
Xen trường dưới từ các khung lẻ với trường trên từ các khung chẵn,
tạo khung có chiều cao không thay đổi ở một nửa tốc độ khung hình.

------> thời gian
Đầu vào:
Khung 1 Khung 2 Khung 3 Khung 4

11111 22222 <- 33333 44444 <-
11111 <- 22222 33333 <- 44444
11111 22222 <- 33333 44444 <-
11111 <- 22222 33333 <- 44444

Đầu ra:
22222 44444
11111 33333
22222 44444
11111 33333

xen kẽ2, 6
Tốc độ khung hình gấp đôi với chiều cao không thay đổi. Mỗi khung được chèn vào có chứa
trường thời gian thứ hai từ khung đầu vào trước đó và trường thời gian đầu tiên
từ khung đầu vào tiếp theo. Chế độ này dựa trên cờ top_field_first. Có ích
cho các màn hình video xen kẽ mà không có trường đồng bộ hóa.

------> thời gian
Đầu vào:
Khung 1 Khung 2 Khung 3 Khung 4

11111 22222 33333 44444
11111 22222 33333 44444
11111 22222 33333 44444
11111 22222 33333 44444

Đầu ra:
11111 22222 22222 33333 33333 44444 44444
11111 11111 22222 22222 33333 33333 44444
11111 22222 22222 33333 33333 44444 44444
11111 11111 22222 22222 33333 33333 44444

Giá trị số không được dùng nữa nhưng được chấp nhận vì lý do tương thích ngược.

Chế độ mặc định là "hợp nhất".

cờ
Chỉ định các cờ ảnh hưởng đến quá trình lọc.

Giá trị có sẵn cho cờ là:

low_pass_filter, vlfp
Bật tính năng lọc thông thấp theo chiều dọc trong bộ lọc. Lọc thông thấp theo chiều dọc mới là
bắt buộc khi tạo đích xen kẽ từ một nguồn tiến bộ
chứa chi tiết dọc tần số cao. Lọc sẽ làm giảm 'twitter' xen kẽ
và Mô hình Moire.

Tính năng lọc thông thấp theo chiều dọc chỉ có thể được bật cho chế độ xen kẽ_top
xen kẽ_bottom.

hoán vị
Chuyển đổi các hàng với các cột trong video đầu vào và tùy chọn lật nó.

Nó chấp nhận các tham số sau:

dir Chỉ định hướng chuyển vị.

Có thể giả định các giá trị sau:

0, 4, cclock_flip
Xoay 90 độ ngược chiều kim đồng hồ và lật dọc (mặc định), nghĩa là:

LR Ll
. . ->. .
lr Rr

1, 5, đồng hồ
Xoay 90 độ theo chiều kim đồng hồ, nghĩa là:

LR lL
. . ->. .
lr rR

2, 6, đồng hồ
Xoay 90 độ ngược chiều kim đồng hồ, nghĩa là:

LR Rr
. . ->. .
lr Ll

3, 7, đồng hồ_flip
Xoay 90 độ theo chiều kim đồng hồ và lật theo chiều dọc, nghĩa là:

LR rR
. . ->. .
lr lL

Đối với các giá trị từ 4-7, việc chuyển vị chỉ được thực hiện nếu hình dạng video đầu vào là
chân dung và không phong cảnh. Các giá trị này không được dùng nữa, tùy chọn "chuyển qua"
nên được sử dụng thay thế.

Các giá trị số không được dùng nữa và sẽ được loại bỏ để có lợi cho các hằng số tượng trưng.

chuyển qua
Không áp dụng phép chuyển vị nếu hình dạng đầu vào khớp với hình được chỉ định bởi
giá trị xác định. Nó chấp nhận các giá trị sau:

không ai
Luôn áp dụng phép chuyển vị.

chân dung
Bảo tồn hình dạng dọc (khi cao >= chiều rộng).

cảnh quan
Bảo tồn hình dạng ngang (khi chiều rộng >= cao).

Giá trị mặc định là "không".

Ví dụ để xoay 90 độ theo chiều kim đồng hồ và giữ nguyên bố cục dọc:

Transpose = dir = 1: passthrough = dọc

Lệnh trên cũng có thể được chỉ định là:

chuyển vị = 1: dọc

tỉa
Cắt đầu vào để đầu ra chứa một phần con liên tục của đầu vào.

Nó chấp nhận các tham số sau:

Bắt đầu
Chỉ định thời gian bắt đầu phần được lưu giữ, tức là khung có dấu thời gian
Bắt đầu sẽ là khung đầu tiên trong đầu ra.

cuối Chỉ định thời gian của khung hình đầu tiên sẽ bị xóa, tức là khung hình ngay lập tức
trước cái có dấu thời gian cuối sẽ là khung cuối cùng trong đầu ra.

điểm bắt đầu
Điều này cũng giống như Bắt đầu, ngoại trừ tùy chọn này đặt dấu thời gian bắt đầu trong cơ sở thời gian
đơn vị thay vì giây.

end_pts
Điều này cũng giống như cuối, ngoại trừ tùy chọn này đặt dấu thời gian kết thúc trong các đơn vị cơ sở thời gian
thay vì giây.

thời gian
Thời lượng tối đa của đầu ra tính bằng giây.

khung bắt đầu
Số lượng khung hình đầu tiên sẽ được chuyển đến đầu ra.

end_frame
Số lượng khung hình đầu tiên sẽ bị loại bỏ.

Bắt đầu, cuốithời gian được thể hiện dưới dạng thông số kỹ thuật về khoảng thời gian; Thấy chưa các Thời gian
thời gian phần in các ffmpeg-utils(1) nhãn hiệu cho cú pháp được chấp nhận.

Lưu ý rằng hai tập hợp đầu tiên của các tùy chọn bắt đầu / kết thúc và thời gian tùy chọn nhìn vào
dấu thời gian khung, trong khi các biến thể _frame chỉ đếm số khung đi qua
lọc. Cũng lưu ý rằng bộ lọc này không sửa đổi dấu thời gian. Nếu bạn muốn
xuất dấu thời gian để bắt đầu từ XNUMX, chèn bộ lọc setpts sau bộ lọc cắt.

Nếu nhiều tùy chọn bắt đầu hoặc kết thúc được đặt, bộ lọc này sẽ cố gắng tham lam và giữ tất cả
khung phù hợp với ít nhất một trong các ràng buộc được chỉ định. Để chỉ giữ lại phần
khớp với tất cả các ràng buộc cùng một lúc, chuỗi nhiều bộ lọc cắt.

Các giá trị mặc định được giữ nguyên. Vì vậy, có thể đặt ví dụ: chỉ
giá trị kết thúc để giữ mọi thứ trước thời gian quy định.

Ví dụ:

· Bỏ tất cả mọi thứ ngoại trừ phút thứ hai của đầu vào:

ffmpeg -i INPUT -vf trim = 60: 120

· Chỉ giữ lại giây đầu tiên:

ffmpeg -i INPUT -vf trim = thời lượng = 1

không nói gì
Làm sắc nét hoặc làm mờ video đầu vào.

Nó chấp nhận các tham số sau:

luma_msize_x, lx
Đặt kích thước ngang của ma trận luma. Nó phải là một số nguyên lẻ từ 3 đến 63.
giá trị mặc định là 5.

luma_msize_y, ly
Đặt kích thước theo chiều dọc của ma trận luma. Nó phải là một số nguyên lẻ từ 3 đến 63.
giá trị mặc định là 5.

luma_số lượng, la
Đặt cường độ hiệu ứng luma. Nó phải là một số dấu phẩy động, các giá trị hợp lý
nằm trong khoảng -1.5 đến 1.5.

Giá trị âm sẽ làm mờ video đầu vào, trong khi giá trị dương sẽ làm sắc nét video, a
giá trị bằng không sẽ vô hiệu hóa hiệu ứng.

Giá trị mặc định là 1.0.

sắc độ_msize_x, cx
Đặt kích thước ngang của ma trận sắc độ. Nó phải là một số nguyên lẻ từ 3 đến 63.
giá trị mặc định là 5.

sắc độ_msize_y, cy
Đặt kích thước dọc của ma trận sắc độ. Nó phải là một số nguyên lẻ từ 3 đến 63.
giá trị mặc định là 5.

sắc_lượng, ca
Đặt cường độ hiệu ứng sắc độ. Nó phải là một số dấu phẩy động, các giá trị hợp lý
nằm trong khoảng -1.5 đến 1.5.

Giá trị âm sẽ làm mờ video đầu vào, trong khi giá trị dương sẽ làm sắc nét video, a
giá trị bằng không sẽ vô hiệu hóa hiệu ứng.

Giá trị mặc định là 0.0.

mởcl
Nếu được đặt thành 1, hãy chỉ định bằng cách sử dụng các khả năng OpenCL, chỉ khả dụng nếu FFmpeg là
được định cấu hình bằng "--enable-opencl". Giá trị mặc định là 0.

Tất cả các tham số là tùy chọn và mặc định tương đương với chuỗi '5: 5: 1.0: 5: 5: 0.0'.

Các ví dụ

· Áp dụng hiệu ứng làm sắc nét mạnh mẽ:

unsharp = luma_msize_x = 7: luma_msize_y = 7: luma_amount = 2.5

· Áp dụng hiệu ứng mờ mạnh của cả thông số luma và chroma:

unsharp=7:7:-2:7:7:-2

uspp
Áp dụng bộ lọc hậu xử lý cực chậm / đơn giản để nén và giải nén hình ảnh
tại một số (hoặc - trong trường hợp chất lượng mức 8 - tất cả) thay đổi và tính trung bình các kết quả.

Cách điều này khác với hành vi của spp là uspp thực sự mã hóa và giải mã từng
trường hợp với libavcodec Snow, trong khi spp sử dụng một DCT đơn giản chỉ 8x8 tương tự như
MJPEG.

Bộ lọc chấp nhận các tùy chọn sau:

chất lượng
Đặt chất lượng. Tùy chọn này xác định số lượng cấp độ để tính trung bình. Nó chấp nhận một
số nguyên trong phạm vi 0-8. Nếu được đặt thành 0, bộ lọc sẽ không có hiệu lực. Giá trị 8
có nghĩa là chất lượng cao hơn. Đối với mỗi gia số của giá trị đó, tốc độ giảm đi một hệ số
của khoảng 2. Giá trị mặc định là 3.

qp Bắt buộc một tham số lượng tử hóa không đổi. Nếu không được đặt, bộ lọc sẽ sử dụng QP từ
luồng video (nếu có).

vectorscope
Hiển thị 2 giá trị thành phần màu trong biểu đồ hai chiều (được gọi là
kính vectơ).

Bộ lọc này chấp nhận các tùy chọn sau:

chế độ, m
Đặt chế độ vectorscope.

Nó chấp nhận các giá trị sau:

màu xám
Các giá trị màu xám được hiển thị trên biểu đồ, độ sáng cao hơn có nghĩa là có nhiều điểm ảnh hơn
giá trị màu thành phần trên vị trí trong biểu đồ. Đây là chế độ mặc định.

màu sắc
Giá trị màu xám được hiển thị trên đồ thị. Các giá trị pixel xung quanh không
hiện tại trong khung video được vẽ bằng gradient của 2 thành phần màu được thiết lập
theo tùy chọn "x" và "y".

color2
Các giá trị thành phần màu thực tế có trong khung hình video được hiển thị trên biểu đồ.

color3
Tương tự như color2 nhưng tần suất cao hơn của các giá trị giống nhau "x" và "y" trên biểu đồ
tăng giá trị của một thành phần màu khác, đó là độ chói theo các giá trị mặc định
của "x" và "y".

color4
Màu sắc thực tế có trong khung hình video được hiển thị trên biểu đồ. Nếu hai khác nhau
màu sắc ánh xạ đến cùng một vị trí trên biểu đồ sau đó tô màu với giá trị cao hơn của thành phần không
hiện trong biểu đồ được chọn.

x Đặt thành phần màu nào sẽ được thể hiện trên trục X. Mặc định là 1.

y Đặt thành phần màu nào sẽ được thể hiện trên trục Y. Mặc định là 2.

cường độ, i
Đặt cường độ, được sử dụng theo các chế độ: xám, màu và màu 3 để tăng độ sáng của
thành phần màu đại diện cho tần suất của (X, Y) vị trí trong biểu đồ.

phong bì, e
không ai
Không có phong bì, đây là mặc định.

ngay lập tức
Phong bì tức thì, ngay cả điểm ảnh đơn tối nhất cũng sẽ được tô sáng rõ ràng.

đỉnh
Giữ các giá trị tối đa và tối thiểu được trình bày trong biểu đồ theo thời gian. Bằng cách này bạn có thể
vẫn phát hiện ra các giá trị nằm ngoài phạm vi mà không cần liên tục nhìn vào vectorscope.

cao điểm + tức thì
Đỉnh và phong bì tức thì kết hợp với nhau.

phát hiện vidstab
Phân tích ổn định / khử rung video. Thực hiện vượt qua 1 trong 2, xem vidstabtransform để vượt qua
2.

Bộ lọc này tạo một tệp với thông tin dịch và chuyển đổi xoay tương đối
về các khung tiếp theo, sau đó được sử dụng bởi vidstabtransform lọc.

Để kích hoạt biên dịch bộ lọc này, bạn cần cấu hình FFmpeg với
"--enable-libvidstab".

Bộ lọc này chấp nhận các tùy chọn sau:

kết quả
Đặt đường dẫn đến tệp được sử dụng để ghi thông tin chuyển đổi. Giá trị mặc định là
biến đổi.trf.

run rẩy
Đặt mức độ rung của video và tốc độ quay của máy ảnh. Nó chấp nhận một số nguyên trong
phạm vi 1-10, giá trị 1 có nghĩa là ít rung chuyển, giá trị 10 có nghĩa là rung lắc mạnh.
Giá trị mặc định là 5.

chính xác
Đặt độ chính xác của quá trình phát hiện. Nó phải là một giá trị trong phạm vi 1-15. MỘT
giá trị 1 có nghĩa là độ chính xác thấp, giá trị 15 có nghĩa là độ chính xác cao. Giá trị mặc định là 15.

cỡ bước chân
Đặt kích thước các bước của quá trình tìm kiếm. Vùng xung quanh tối thiểu được quét với 1 pixel
nghị quyết. Giá trị mặc định là 6.

tương phản nhỏ
Đặt độ tương phản tối thiểu. Dưới giá trị này, một trường đo lường cục bộ bị loại bỏ. Cần phải
một giá trị dấu phẩy động trong phạm vi 0-1. Giá trị mặc định là 0.3.

giá ba chân
Đặt số khung tham chiếu cho chế độ giá ba chân.

Nếu được bật, chuyển động của các khung được so sánh với hệ quy chiếu trong bộ lọc
luồng, được xác định bằng số đã chỉ định. Ý tưởng là bù đắp tất cả các chuyển động trong
cảnh tĩnh ít nhiều và giữ cho chế độ xem máy ảnh tĩnh tuyệt đối.

Nếu được đặt thành 0, nó sẽ bị vô hiệu hóa. Các khung được tính bắt đầu từ 1.

hiển thị
Hiển thị các trường và chuyển đổi trong các khung kết quả. Nó chấp nhận một số nguyên trong phạm vi
0-2. Giá trị mặc định là 0, giá trị này sẽ vô hiệu hóa mọi hình ảnh hóa.

Các ví dụ

· Sử dụng các giá trị mặc định:

phát hiện vidstab

· Phân tích phim bị rung mạnh và đưa kết quả vào tệp mytransforms.trf:

vidstabdetect = shakiness = 10: precision = 15: result = "mytransforms.trf"

· Hình dung kết quả của các phép biến đổi bên trong trong video kết quả:

vidstabdetect = show = 1

· Phân tích video có độ rung trung bình bằng cách sử dụng ffmpeg:

ffmpeg -i input -vf vidstabdetect = shakiness = 5: show = 1 dummy.avi

vidstabtransform
Ổn định / khử rung video: vượt qua 2/2, xem phát hiện vidstab cho vượt qua 1.

Đọc tệp với thông tin biến đổi cho từng khung hình và áp dụng / bù đắp chúng. Cùng với nhau
với phát hiện vidstab bộ lọc này có thể được sử dụng để giải mã video. Xem thêm
<http://public.hronopik.de/vid.stab>. Điều quan trọng là cũng sử dụng không nói gì lọc, xem
phía dưới.

Để kích hoạt biên dịch bộ lọc này, bạn cần cấu hình FFmpeg với
"--enable-libvidstab".

Các lựa chọn

đầu vào
Đặt đường dẫn đến tệp được sử dụng để đọc các biến đổi. Giá trị mặc định là biến đổi.trf.

làm mịn
Đặt số khung hình (giá trị * 2 + 1) được sử dụng để lọc thông thấp cho máy ảnh
sự di chuyển. Giá trị mặc định là 10.

Ví dụ: số 10 có nghĩa là 21 khung hình được sử dụng (10 trong quá khứ và 10 trong
tương lai) để làm mượt chuyển động trong video. Giá trị lớn hơn dẫn đến video mượt mà hơn,
nhưng hạn chế khả năng tăng tốc của máy ảnh (chuyển động xoay / nghiêng). 0 là một trường hợp đặc biệt
nơi một máy ảnh tĩnh được mô phỏng.

quang học
Đặt thuật toán tối ưu hóa đường dẫn camera.

Các giá trị được chấp nhận là:

gauss
bộ lọc thông thấp của hạt nhân gaussian trên chuyển động của camera (mặc định)

trung bình tính trung bình trên các phép biến đổi

sang số tối đa
Đặt số lượng pixel tối đa để dịch khung hình. Giá trị mặc định là -1, nghĩa là không
giới hạn.

góc tối đa
Đặt góc tối đa tính bằng radian (độ * PI / 180) để xoay khung. Giá trị mặc định là -1,
nghĩa là không có giới hạn.

cây trồng
Chỉ định cách xử lý các đường viền có thể hiển thị do bù dịch chuyển.

Các giá trị có sẵn là:

giữ
giữ thông tin hình ảnh từ khung trước (mặc định)

đen
tô màu đen viền

đảo ngược
Đảo ngược các phép biến đổi nếu được đặt thành 1. Giá trị mặc định là 0.

tương đối
Coi các biến đổi là tương đối so với khung trước đó nếu được đặt thành 1, tuyệt đối nếu được đặt thành 0.
Giá trị mặc định là 0.

thu phóng
Đặt tỷ lệ phần trăm để thu phóng. Giá trị dương sẽ dẫn đến hiệu ứng phóng to, giá trị âm
giá trị trong hiệu ứng thu nhỏ. Giá trị mặc định là 0 (không thu phóng).

zoom tối ưu
Đặt mức thu phóng tối ưu để tránh các đường viền.

Các giá trị được chấp nhận là:

0 bị vô hiệu hóa

1 giá trị thu phóng tĩnh tối ưu được xác định (chỉ những chuyển động rất mạnh mới dẫn đến
đường viền hiển thị) (mặc định)

2 giá trị thu phóng thích ứng tối ưu được xác định (không có đường viền sẽ hiển thị), xem
phóng to

Lưu ý rằng giá trị được đưa ra khi thu phóng được thêm vào giá trị được tính ở đây.

phóng to
Đặt phần trăm để thu phóng tối đa từng khung hình (được bật khi zoom tối ưu được đặt thành 2). Phạm vi là
từ 0 đến 5, giá trị mặc định là 0.25.

nội suy
Chỉ định loại nội suy.

Các giá trị có sẵn là:

Không không có nội suy

tuyến tính
tuyến tính chỉ ngang

song tuyến tính
tuyến tính theo cả hai hướng (mặc định)

lưỡng tính
khối theo cả hai hướng (chậm)

giá ba chân
Bật chế độ chân máy ảo nếu được đặt thành 1, tương đương với
"tương đối = 0: làm mịn = 0". Giá trị mặc định là 0.

Cũng sử dụng tùy chọn "giá ba chân" của phát hiện vidstab.

gỡ lỗi
Tăng độ chi tiết của nhật ký nếu được đặt thành 1. Ngoài ra, các chuyển động chung được phát hiện cũng được ghi vào
tập tin tạm thời toàn cầu_motions.trf. Giá trị mặc định là 0.

Các ví dụ

· Sử dụng ffmpeg để có sự ổn định điển hình với các giá trị mặc định:

ffmpeg -i inp.mpeg -vf vidstabtransform, unsharp = 5: 5: 0.8: 3: 3: 0.4 inp_stabilized.mpeg

Lưu ý việc sử dụng không nói gì bộ lọc luôn được khuyến khích.

· Phóng to hơn một chút và tải dữ liệu chuyển đổi từ một tệp nhất định:

vidstabtransform = zoom = 5: input = "mytransforms.trf"

· Làm mượt video hơn nữa:

vidstabtransform = smoothing = 30

vflip
Lật video đầu vào theo chiều dọc.

Ví dụ: để lật video theo chiều dọc với ffmpeg:

ffmpeg -i in.avi -vf "vflip" out.avi

họa tiết
Tạo hoặc đảo ngược hiệu ứng tạo họa tiết tự nhiên.

Bộ lọc chấp nhận các tùy chọn sau:

góc, a
Đặt biểu thức góc thấu kính dưới dạng một số rađian.

Giá trị được cắt bớt trong phạm vi "[0, PI / 2]".

Giá trị mặc định: "PI / 5"

x0
y0 Đặt biểu thức tọa độ tâm. Tương ứng "w / 2" và "h / 2" theo mặc định.

chế độ
Đặt chế độ tiến / lùi.

Các chế độ khả dụng là:

phía trước
Khoảng cách từ điểm trung tâm càng lớn thì ảnh càng tối.

lạc hậu
Khoảng cách từ điểm trung tâm càng lớn thì ảnh càng sáng.
Điều này có thể được sử dụng để đảo ngược hiệu ứng làm mờ nét ảnh, mặc dù không có tính năng tự động
phát hiện để trích xuất ống kính góc và các cài đặt khác (chưa). Nó cũng có thể được sử dụng
để tạo hiệu ứng đốt cháy.

Giá trị mặc định là phía trước.

đánh giá
Đặt chế độ đánh giá cho các biểu thức (góc, x0, y0).

Nó chấp nhận các giá trị sau:

trong đó
Chỉ đánh giá các biểu thức một lần trong quá trình khởi tạo bộ lọc.

khung
Đánh giá biểu thức cho mỗi khung hình đến. Đây là cách chậm hơn so với trong đó
vì nó yêu cầu tất cả các tỷ lệ phải được tính toán lại, nhưng nó cho phép nâng cao
biểu thức động.

Giá trị mặc định là trong đó.

run lên
Đặt phối màu để giảm hiệu ứng dải tròn. Mặc định là 1 (được bật).

khía cạnh
Đặt khía cạnh họa tiết. Cài đặt này cho phép một người điều chỉnh hình dạng của họa tiết.
Đặt giá trị này thành SAR của đầu vào sẽ tạo ra họa tiết hình chữ nhật
theo kích thước của video.

Mặc định là "1/1".

Biểu thức

Sản phẩm alpha, x0y0 biểu thức có thể chứa các tham số sau.

w
h chiều rộng và chiều cao đầu vào

n số lượng khung hình đầu vào, bắt đầu từ 0

Điểm thời gian PTS (Presentation TimeStamp) của khung video được lọc, được biểu thị bằng TB
đơn vị, NAN nếu không xác định

r tốc độ khung hình của video đầu vào, NAN nếu tốc độ khung hình đầu vào không xác định

t PTS (Presentation TimeStamp) của khung video đã lọc, được biểu thị bằng giây,
NAN nếu không xác định

tb cơ sở thời gian của video đầu vào

Các ví dụ

· Áp dụng hiệu ứng họa tiết mạnh mẽ đơn giản:

họa tiết = PI / 4

· Tạo họa tiết nhấp nháy:

họa tiết = 'PI / 4 +ngẫu nhiên(1) * PI / 50 ': eval = frame

vstack
Xếp chồng video đầu vào theo chiều dọc.

Tất cả các luồng phải có cùng định dạng pixel và cùng chiều rộng.

Lưu ý rằng bộ lọc này nhanh hơn so với việc sử dụng phủtập giấy bộ lọc để tạo ra cùng một đầu ra.

Bộ lọc chấp nhận tùy chọn sau:

nb_inputs
Đặt số lượng luồng đầu vào. Mặc định là 2.

w3fdif
Khử xen kẽ video đầu vào ("w3fdif" là viết tắt của "Bộ lọc khử xen kẽ trường Weston 3").

Dựa trên quy trình được Martin Weston mô tả cho BBC R&D và được thực hiện dựa trên
thuật toán de-interlace do Jim Easterbrook viết cho BBC R&D, lĩnh vực Weston 3
Bộ lọc khử xen kẽ sử dụng các hệ số bộ lọc do BBC R&D tính toán.

Có hai bộ hệ số bộ lọc, được gọi là "đơn giản": và "phức tạp". Bộ nào của
Hệ số bộ lọc được sử dụng có thể được thiết lập bằng cách chuyển một tham số tùy chọn:

lọc
Đặt các hệ số bộ lọc xen kẽ. Chấp nhận một trong các giá trị sau:

đơn giản
Bộ hệ số bộ lọc đơn giản.

phức tạp
Bộ hệ số bộ lọc phức tạp hơn.

Giá trị mặc định là phức tạp.

định mệnh
Chỉ định khung nào cần hủy xen kẽ. Chấp nhận một trong các giá trị sau:

tất cả các Khử xen kẽ tất cả các khung,

xen kẽ
Chỉ hủy xen kẽ các khung được đánh dấu là đã xen kẽ.

Giá trị mặc định là tất cả các.

dạng sóng
Màn hình dạng sóng video.

Màn hình dạng sóng vẽ biểu đồ cường độ thành phần màu. Chỉ theo độ sáng mặc định. Mỗi
cột của dạng sóng tương ứng với một cột pixel trong video nguồn.

Nó chấp nhận các tùy chọn sau:

chế độ, m
Có thể là "hàng" hoặc "cột". Mặc định là "cột". Ở chế độ hàng, biểu đồ trên
bên trái đại diện cho giá trị thành phần màu 0 và bên phải đại diện cho giá trị =
255. Ở chế độ cột, mặt trên biểu thị giá trị thành phần màu = 0 và mặt dưới
đại diện cho giá trị = 255.

cường độ, i
Đặt cường độ. Các giá trị nhỏ hơn rất hữu ích để tìm ra có bao nhiêu giá trị giống nhau
độ sáng được phân phối trên các hàng / cột đầu vào. Giá trị mặc định là 0.04. Cho phép
phạm vi là [0, 1].

gương, r
Đặt chế độ phản chiếu. 0 có nghĩa là không được sao chép, 1 có nghĩa là được sao chép. Ở chế độ phản chiếu, cao hơn
các giá trị sẽ được thể hiện ở bên trái cho chế độ "hàng" và ở trên cùng cho "cột"
chế độ. Mặc định là 1 (được nhân đôi).

trưng bày, d
Đặt chế độ hiển thị. Nó chấp nhận các giá trị sau:

phủ
Trình bày thông tin giống với thông tin trong "cuộc diễu hành", ngoại trừ các biểu đồ
các thành phần màu đại diện được chồng trực tiếp lên nhau.

Chế độ hiển thị này giúp bạn dễ dàng phát hiện ra sự khác biệt tương đối hoặc điểm tương đồng trong
các vùng chồng chéo của các thành phần màu được cho là giống hệt nhau, chẳng hạn như
như người da trắng, xám hoặc đen trung tính.

diễu hành
Hiển thị biểu đồ riêng biệt cho các thành phần màu cạnh nhau ở chế độ "hàng" hoặc một
bên dưới cái khác ở chế độ "cột".

Sử dụng chế độ hiển thị này giúp bạn dễ dàng phát hiện phôi màu trong các điểm nổi bật và
bóng của một hình ảnh, bằng cách so sánh các đường viền của đồ thị trên cùng và dưới cùng của
mỗi dạng sóng. Vì người da trắng, xám và đen được đặc trưng bởi
lượng màu đỏ, xanh lục và xanh lam, các vùng trung tính của hình ảnh nên hiển thị ba
dạng sóng có chiều rộng / chiều cao gần bằng nhau. Nếu không, việc hiệu chỉnh rất dễ thực hiện
bằng cách điều chỉnh mức độ của ba dạng sóng.

Mặc định là "diễu hành".

thành phần, c
Đặt các thành phần màu để hiển thị. Mặc định là 1, có nghĩa là chỉ độ sáng hoặc màu đỏ
thành phần màu nếu đầu vào nằm trong không gian màu RGB. Nếu được đặt ví dụ thành 7, nó sẽ
hiển thị tất cả 3 (nếu) thành phần màu có sẵn.

phong bì, e
không ai
Không có phong bì, đây là mặc định.

ngay lập tức
Phong bì tức thì, các giá trị tối thiểu và tối đa được trình bày trong biểu đồ sẽ dễ dàng
hiển thị ngay cả với giá trị "bước" nhỏ.

đỉnh
Giữ các giá trị tối thiểu và tối đa được trình bày trong biểu đồ theo thời gian. Bằng cách này bạn có thể
vẫn phát hiện ra các giá trị nằm ngoài phạm vi mà không cần liên tục nhìn vào dạng sóng.

cao điểm + tức thì
Đỉnh và phong bì tức thì kết hợp với nhau.

bộ lọc, f
tầm thấp
Không có bộ lọc, đây là mặc định.

bằng phẳng
Luma và chroma kết hợp với nhau.

bằng phẳng
Tương tự như trên, nhưng cho thấy sự khác biệt giữa sắc độ xanh và đỏ.

sắc độ
Chỉ hiển thị sắc độ.

sắc độ
Tương tự như trên, nhưng cho thấy sự khác biệt giữa sắc độ xanh và đỏ.

màu sắc
Hiển thị giá trị màu thực tế trên dạng sóng.

xbr
Áp dụng bộ lọc phóng đại chất lượng cao xBR được thiết kế cho nghệ thuật pixel. Nó
tuân theo một bộ quy tắc phát hiện cạnh, xem
<http://www.libretro.com/forums/viewtopic.php? f = 6 & t = 134>.

Nó chấp nhận tùy chọn sau:

n Đặt thứ nguyên chia tỷ lệ: 2 cho "2xBR", 3 cho "3xBR" và 4 cho "4xBR". Mặc định là 3.

yadif
Khử xen kẽ video đầu vào ("yadif" có nghĩa là "một bộ lọc khử xen kẽ khác").

Nó chấp nhận các tham số sau:

chế độ
Chế độ xen kẽ để áp dụng. Nó chấp nhận một trong các giá trị sau:

0, gửi_frame
Xuất một khung cho mỗi khung.

1, trường gửi
Xuất một khung cho mỗi trường.

2, send_frame_nospatial
Giống như "send_frame", nhưng nó bỏ qua kiểm tra xen kẽ không gian.

3, send_field_nospatial
Giống như "send_field", nhưng nó bỏ qua kiểm tra xen kẽ không gian.

Giá trị mặc định là "send_frame".

tính chẵn lẻ
Trường hình ảnh chẵn lẻ được giả định cho video xen kẽ đầu vào. Nó chấp nhận một trong những
các giá trị sau:

0, tff
Giả sử trường trên cùng là trường đầu tiên.

1, bff
Giả sử trường dưới cùng là trường đầu tiên.

-1, tự động
Bật tính năng tự động phát hiện trường chẵn lẻ.

Giá trị mặc định là "tự động". Nếu phần xen kẽ không xác định hoặc bộ giải mã không
xuất thông tin này, trường đầu tiên sẽ được giả định.

định mệnh
Chỉ định khung nào cần hủy xen kẽ. Chấp nhận một trong các giá trị sau:

0, tất cả các
Khử xen kẽ tất cả các khung.

1, xen kẽ
Chỉ hủy xen kẽ các khung được đánh dấu là đã xen kẽ.

Giá trị mặc định là "tất cả".

động vật hoang dã
Áp dụng hiệu ứng Zoom & Pan.

Bộ lọc này chấp nhận các tùy chọn sau:

thu phóng, z
Đặt biểu thức thu phóng. Mặc định là 1.

x
y Đặt biểu thức x và y. Mặc định là 0.

d Đặt biểu thức thời lượng theo số khung hình. Điều này đặt cho số lượng
hiệu ứng khung sẽ kéo dài cho một hình ảnh đầu vào.

s Đặt kích thước hình ảnh đầu ra, mặc định là 'hd720'.

Mỗi biểu thức có thể chứa các hằng số sau:

trong W, iw
Chiều rộng đầu vào.

trong_h, ih
Chiều cao đầu vào.

ra_w, ow
Chiều rộng đầu ra.

ra_h, oh
Chiều cao đầu ra.

in Số khung đầu vào.

on Số khung đầu ra.

x
y Vị trí 'x' và 'y' được tính lần cuối từ biểu thức 'x' và 'y' cho đầu vào hiện tại
khung.

px
py 'x' và 'y' của khung đầu ra cuối cùng của khung đầu vào trước đó hoặc 0 khi chưa có
khung như vậy (khung đầu vào đầu tiên).

thu phóng
Thu phóng được tính toán lần cuối từ biểu thức 'z' cho khung đầu vào hiện tại.

phóng đại
Thu phóng được tính toán lần cuối của khung đầu ra cuối cùng của khung đầu vào trước đó.

thời gian
Số khung đầu ra cho khung đầu vào hiện tại. Được tính từ biểu thức 'd' cho
mỗi khung đầu vào.

độ cứng
số khung đầu ra được tạo cho khung đầu vào trước đó

a Số hữu tỉ: chiều rộng đầu vào / chiều cao đầu vào

sar tỷ lệ khung hình mẫu

dar tỷ lệ khung hình hiển thị

Các ví dụ

· Phóng to lên đến 1.5 và xoay cùng lúc đến một số điểm gần tâm ảnh:

zoompan=z='min(zoom+0.0015,1.5)':d=700:x='if(gte(zoom,1.5),x,x+1/a)':y='if(gte(zoom,1.5),y,y+1)':s=640x360

· Phóng to lên đến 1.5 và xoay luôn ở giữa hình ảnh:

zoompan=z='min(zoom+0.0015,1.5)':d=700:x='iw/2-(iw/zoom/2)':y='ih/2-(ih/zoom/2)'

Thêm bài này vào danh sách Video của bạn Download bài này NGUỒN


Dưới đây là mô tả về các nguồn video hiện có.

đệm
Đệm khung video và cung cấp chúng cho chuỗi bộ lọc.

Nguồn này chủ yếu dành cho mục đích sử dụng có lập trình, cụ thể là thông qua giao diện
được định nghĩa trong libavfilter / vsrc_buffer.h.

Nó chấp nhận các tham số sau:

kích thước video
Chỉ định kích thước (chiều rộng và chiều cao) của các khung video được lưu vào bộ đệm. Đối với cú pháp của
tùy chọn này, hãy kiểm tra "Băng hình kích thước" phần in các ffmpeg-utils nhãn hiệu.

chiều rộng
Chiều rộng video đầu vào.

cao
Chiều cao video đầu vào.

pix_fmt
Một chuỗi đại diện cho định dạng pixel của các khung video được lưu vào bộ đệm. Nó có thể là một
số tương ứng với định dạng pixel hoặc tên định dạng pixel.

cơ sở thời gian
Chỉ định cơ sở thời gian được giả định bởi dấu thời gian của các khung được lưu trong bộ đệm.

tỷ lệ khung hình
Chỉ định tốc độ khung hình dự kiến ​​cho luồng video.

pixel_aspect, sar
Tỷ lệ khung hình (pixel) mẫu của video đầu vào.

sws_param
Chỉ định các thông số tùy chọn sẽ được sử dụng cho bộ lọc tỷ lệ tự động
được chèn khi phát hiện thay đổi đầu vào trong kích thước hoặc định dạng đầu vào.

Ví dụ:

buffer=width=320:height=240:pix_fmt=yuv410p:time_base=1/24:sar=1

sẽ hướng dẫn nguồn chấp nhận khung video có kích thước 320x240 và với định dạng
"yuv410p", giả sử 1/24 là cơ sở thời gian của dấu thời gian và pixel vuông (khía cạnh mẫu 1: 1
tỉ lệ). Vì định dạng pixel có tên "yuv410p" tương ứng với số 6 (hãy kiểm tra
enum AVPixelFormat định nghĩa trong libavutil / pixfmt.h), ví dụ này tương ứng với:

buffer=size=320x240:pixfmt=6:time_base=1/24:pixel_aspect=1/1

Ngoài ra, các tùy chọn có thể được chỉ định dưới dạng một chuỗi phẳng, nhưng cú pháp này là
không dùng nữa:

chiều rộng:cao:pix_fmt:time_base.num:time_base.den:pixel_aspect.num:pixel_aspect.den[:sws_param]

ô tô
Tạo một mẫu được tạo bởi một tự động hóa di động cơ bản.

Trạng thái ban đầu của tự động di động có thể được xác định thông qua tên tập tin
Belt Hold tùy chọn. Nếu các tùy chọn như vậy không được chỉ định, trạng thái ban đầu sẽ được tạo ngẫu nhiên.

Tại mỗi khung hình mới, một hàng mới trong video chứa đầy kết quả của ô
Automaton thế hệ tiếp theo. Hành vi khi toàn bộ khung được lấp đầy được xác định bởi
di chuyển tùy chọn.

Nguồn này chấp nhận các tùy chọn sau:

tên tệp, f
Đọc trạng thái tự động di động ban đầu, tức là hàng bắt đầu, từ
tập tin. Trong tệp, mỗi ký tự không có khoảng trắng được coi là một ô còn sống,
dòng mới sẽ kết thúc hàng và các ký tự khác trong tệp sẽ bị bỏ qua.

mẫu, p
Đọc trạng thái tự động di động ban đầu, tức là hàng bắt đầu, từ
chuỗi.

Mỗi ký tự không có khoảng trắng trong chuỗi được coi là một ô còn sống, một dòng mới
sẽ kết thúc hàng và các ký tự khác trong chuỗi sẽ bị bỏ qua.

tỷ lệ, r
Đặt tốc độ video, đó là số khung hình được tạo ra mỗi giây. Mặc định là 25.

Random_fill_ratio, tỉ lệ
Đặt tỷ lệ lấp đầy ngẫu nhiên cho hàng ô tô tự động ban đầu. Nó là một nổi
giá trị số điểm nằm trong khoảng từ 0 đến 1, mặc định là 1 / PHI.

Tùy chọn này bị bỏ qua khi một tệp hoặc một mẫu được chỉ định.

hạt giống ngẫu nhiên, hạt giống
Đặt hạt giống để điền ngẫu nhiên vào hàng đầu tiên, phải là một số nguyên được bao gồm giữa
0 và UINT32_MAX. Nếu không được chỉ định hoặc nếu được đặt rõ ràng thành -1, bộ lọc sẽ cố gắng
sử dụng một hạt giống ngẫu nhiên tốt trên cơ sở nỗ lực tốt nhất.

loại trừ
Đặt quy tắc tự động hóa di động, nó là một số nằm trong khoảng từ 0 đến 255. Giá trị mặc định
là 110.

kích thước, s
Đặt kích thước của video đầu ra. Để biết cú pháp của tùy chọn này, hãy kiểm tra "Băng hình
kích thước" phần in các ffmpeg-utils nhãn hiệu.

If tên tập tin or Belt Hold được chỉ định, kích thước được đặt theo mặc định thành chiều rộng của
hàng trạng thái ban đầu được chỉ định và chiều cao được đặt thành chiều rộng *PHI.

If kích thước được đặt, nó phải chứa chiều rộng của chuỗi mẫu được chỉ định và
mẫu được chỉ định sẽ được căn giữa trong hàng lớn hơn.

Nếu tên tệp hoặc chuỗi mẫu không được chỉ định, giá trị kích thước mặc định là
"320x518" (được sử dụng cho trạng thái ban đầu được tạo ngẫu nhiên).

di chuyển
Nếu được đặt thành 1, hãy cuộn đầu ra lên trên khi tất cả các hàng trong đầu ra đã
đã được lấp đầy. Nếu được đặt thành 0, hàng được tạo mới sẽ được viết trên hàng trên cùng
ngay sau khi hàng dưới cùng được điền. Mặc định là 1.

bắt đầu_đầy đủ, Full
Nếu được đặt thành 1, hãy lấp đầy hoàn toàn đầu ra với các hàng đã tạo trước khi xuất
khung đầu tiên. Đây là hành vi mặc định, để vô hiệu hóa, hãy đặt giá trị thành 0.

Khâu
Nếu được đặt thành 1, hãy khâu các mép hàng bên trái và bên phải lại với nhau. Đây là mặc định
hành vi, để tắt, hãy đặt giá trị thành 0.

Các ví dụ

· Đọc trạng thái ban đầu từ Belt Holdvà chỉ định đầu ra có kích thước 200x400.

cellauto = f = pattern: s = 200x400

· Tạo một hàng ban đầu ngẫu nhiên có chiều rộng 200 ô, với tỷ lệ lấp đầy là 2/3:

cellauto = ratio = 2/3: s = 200x200

· Tạo một mẫu được tạo bởi quy tắc 18 bắt đầu bởi một ô còn sống duy nhất ở giữa
hàng đầu tiên có chiều rộng 100:

cellauto = p = @ s = 100x400: full = 0: rule = 18

· Chỉ định một mẫu ban đầu phức tạp hơn:

cellauto = p = '@@ @ @@': s = 100x400: full = 0: rule = 18

mandelbrot
Tạo phân dạng bộ Mandelbrot và thu phóng dần dần về điểm được chỉ định với
bắt đầu_xbắt đầu_y.

Nguồn này chấp nhận các tùy chọn sau:

end_pts
Đặt giá trị pts đầu cuối. Giá trị mặc định là 400.

end_scale
Đặt giá trị tỷ lệ đầu cuối. Phải là một giá trị dấu phẩy động. Giá trị mặc định là 0.3.

bên trong
Đặt chế độ tô màu bên trong, đó là thuật toán được sử dụng để vẽ Fractal Mandelbrot
khu vực nội bộ.

Nó sẽ giả định một trong các giá trị sau:

đen
Đặt chế độ màu đen.

hội tụ
Hiển thị thời gian cho đến khi hội tụ.

mincol
Đặt màu dựa trên điểm gần nhất với điểm gốc của các lần lặp lại.

thời gian
Đặt chế độ khoảng thời gian.

Giá trị mặc định là mincol.

cứu trợ tài chính
Đặt giá trị gói cứu trợ. Giá trị mặc định là 10.0.

tối đa
Đặt số lần lặp lại tối đa được thực hiện bởi thuật toán kết xuất. Giá trị mặc định là
7189.

bên ngoài
Đặt chế độ tô màu bên ngoài. Nó sẽ giả định một trong các giá trị sau:

lần lặp_count
Đặt chế độ lặp đi lặp lại.

normalized_iteration_count
đặt chế độ đếm số lần lặp chuẩn hóa.

Giá trị mặc định là normalized_iteration_count.

tỷ lệ, r
Đặt tốc độ khung hình, được biểu thị bằng số khung hình trên giây. Giá trị mặc định là "25".

kích thước, s
Đặt kích thước khung. Để biết cú pháp của tùy chọn này, hãy kiểm tra phần "Kích thước video" trong
hướng dẫn sử dụng ffmpeg-utils. Giá trị mặc định là "640x480".

quy mô bắt đầu
Đặt giá trị tỷ lệ ban đầu. Giá trị mặc định là 3.0.

bắt đầu_x
Đặt vị trí x ban đầu. Phải là giá trị dấu phẩy động từ -100 đến 100.
Giá trị mặc định là -0.743643887037158704752191506114774.

bắt đầu_y
Đặt vị trí y ban đầu. Phải là giá trị dấu phẩy động từ -100 đến 100.
Giá trị mặc định là -0.131825904205311970493132056385139.

mptestsrc
Tạo các mẫu thử nghiệm khác nhau, như được tạo bởi bộ lọc thử nghiệm MPlayer.

Kích thước của video được tạo là cố định và là 256x256. Nguồn này hữu ích trong
đặc biệt để thử nghiệm các tính năng mã hóa.

Nguồn này chấp nhận các tùy chọn sau:

tỷ lệ, r
Chỉ định tốc độ khung hình của video có nguồn gốc, như số lượng khung hình được tạo cho mỗi
thứ hai. Nó phải là một chuỗi ở định dạng frame_rate_num/frame_rate_den, một số nguyên
số, số dấu phẩy động hoặc từ viết tắt tốc độ khung hình video hợp lệ. Mặc định
giá trị là "25".

thời hạn, d
Đặt thời lượng của video có nguồn gốc. Nhìn thấy các Thời gian thời gian phần in các
ffmpeg-utils(1) nhãn hiệu cho cú pháp được chấp nhận.

Nếu không được chỉ định hoặc thời lượng thể hiện là âm, video sẽ được
được tạo ra mãi mãi.

thử nghiệm, t
Đặt số hoặc tên của bài kiểm tra để thực hiện. Các bài kiểm tra được hỗ trợ là:

dc_luma
dc_chroma
tần số_luma
tần số_sắc độ
amp_luma
amp_chroma
cbp
mv
nhẫn1
nhẫn2
tất cả các

Giá trị mặc định là "tất cả", sẽ xoay vòng qua danh sách tất cả các bài kiểm tra.

Vài ví dụ:

mptestsrc = t = dc_luma

sẽ tạo ra một mẫu thử nghiệm "dc_luma".

frei0r_src
Cung cấp nguồn frei0r.

Để kích hoạt biên dịch bộ lọc này, bạn cần cài đặt tiêu đề frei0r và cấu hình
FFmpeg với "--enable-frei0r".

Nguồn này chấp nhận các tham số sau:

kích thước
Kích thước của video để tạo. Để biết cú pháp của tùy chọn này, hãy kiểm tra "Băng hình
kích thước" phần in các ffmpeg-utils nhãn hiệu.

Framerate
Tốc độ khung hình của video đã tạo. Nó có thể là một chuỗi có dạng num/ngày hoặc một
viết tắt tốc độ khung hình.

tên bộ lọc
Tên của nguồn frei0r để tải. Để biết thêm thông tin về frei0r và cách thức
để thiết lập các tham số, hãy đọc miễn phí trong tài liệu về bộ lọc video.

filter_params
Danh sách các tham số được phân tách bằng '|' để chuyển đến nguồn frei0r.

Ví dụ: để tạo nguồn frei0r partik0l với kích thước 200x200 và tốc độ khung hình 10
được phủ trên đầu vào chính của bộ lọc lớp phủ:

frei0r_src = size = 200x200: framerate = 10: filter_name = partik0l: filter_params = 1234 [overlay]; [in] [overlay] lớp phủ

đời sống
Tạo ra một kiểu sống.

Nguồn này dựa trên bản tổng hợp về trò chơi cuộc đời của John Conway.

Đầu vào có nguồn gốc đại diện cho một lưới sự sống, mỗi pixel đại diện cho một ô có thể nằm trong một
của hai trạng thái có thể, sống hoặc chết. Mỗi ô tương tác với tám hàng xóm của nó,
là các ô nằm liền kề theo chiều ngang, chiều dọc hoặc đường chéo.

Tại mỗi lần tương tác, lưới sẽ phát triển theo quy tắc được thông qua, quy tắc này chỉ định
số lượng tế bào còn sống hàng xóm sẽ làm cho một tế bào sống hoặc được sinh ra. Các loại trừ tùy chọn
cho phép một người chỉ định quy tắc để áp dụng.

Nguồn này chấp nhận các tùy chọn sau:

tên tệp, f
Đặt tệp để đọc trạng thái lưới ban đầu. Trong tệp, mỗi
ký tự khoảng trắng được coi là một ô còn sống và dòng mới được sử dụng để phân tách
cuối mỗi hàng.

Nếu tùy chọn này không được chỉ định, lưới ban đầu được tạo ngẫu nhiên.

tỷ lệ, r
Đặt tốc độ video, đó là số khung hình được tạo ra mỗi giây. Mặc định là 25.

Random_fill_ratio, tỉ lệ
Đặt tỷ lệ lấp đầy ngẫu nhiên cho lưới ngẫu nhiên ban đầu. Nó là một số dấu phẩy động
giá trị từ 0 đến 1, mặc định là 1 / PHI. Nó bị bỏ qua khi một tệp được chỉ định.

hạt giống ngẫu nhiên, hạt giống
Đặt hạt giống để lấp đầy lưới ngẫu nhiên ban đầu, phải là một số nguyên được bao gồm giữa
0 và UINT32_MAX. Nếu không được chỉ định hoặc nếu được đặt rõ ràng thành -1, bộ lọc sẽ cố gắng
sử dụng một hạt giống ngẫu nhiên tốt trên cơ sở nỗ lực tốt nhất.

loại trừ
Đặt ra quy tắc sống.

Quy tắc có thể được chỉ định bằng mã loại "SNS/BNB", ở đâu NSNB đang
dãy số trong phạm vi 0-8, NS chỉ định số lượng ô hàng xóm còn sống
làm cho một tế bào sống vẫn tồn tại, và NB số lượng các tế bào hàng xóm còn sống
làm cho một tế bào chết để trở nên sống (tức là để "sinh ra"). "s" và "b" có thể được sử dụng tại chỗ
của "S" và "B", tương ứng.

Ngoài ra, một quy tắc có thể được chỉ định bởi một số nguyên 18 bit. 9 bit bậc cao là
được sử dụng để mã hóa trạng thái ô tiếp theo nếu nó còn sống đối với mỗi số hàng xóm còn sống
ô, các bit thứ tự thấp chỉ định quy tắc cho các ô mới "borning". Bit thứ tự cao hơn
mã hóa cho số lượng ô lân cận cao hơn. Ví dụ số 6153 =
"(12 << 9) +9" chỉ định quy tắc duy trì tồn tại là 12 và quy tắc sinh ra là 9, tương ứng với
thành "S23 / B03".

Giá trị mặc định là "S23 / B3", đây là quy tắc sống ban đầu của Conway và sẽ
giữ cho một ô sống nếu nó có 2 hoặc 3 ô hàng xóm còn sống và sẽ sinh ra một ô mới nếu
có ba tế bào sống xung quanh một tế bào chết.

kích thước, s
Đặt kích thước của video đầu ra. Để biết cú pháp của tùy chọn này, hãy kiểm tra "Băng hình
kích thước" phần in các ffmpeg-utils nhãn hiệu.

If tên tập tin được chỉ định, kích thước được đặt theo mặc định thành cùng kích thước của đầu vào
tập tin. Nếu như kích thước được đặt, nó phải chứa kích thước được chỉ định trong tệp đầu vào và
lưới ban đầu được xác định trong tệp đó được căn giữa trong vùng kết quả lớn hơn.

Nếu tên tệp không được chỉ định, giá trị kích thước mặc định là "320x240" (được sử dụng cho
lưới ban đầu được tạo ngẫu nhiên).

Khâu
Nếu được đặt thành 1, hãy ghép các cạnh lưới bên trái và bên phải với nhau, và phần trên và dưới
các cạnh cũng có. Mặc định là 1.

khuôn
Đặt tốc độ khuôn ô. Nếu được thiết lập, một tế bào chết sẽ đi từ màu chết đến khuôn_màu với một
bước của khuôn. khuôn có thể có giá trị từ 0 đến 255.

cuộc sống_màu sắc
Đặt màu của các tế bào sống (hoặc mới sinh).

màu chết
Đặt màu của tế bào chết. Nếu như khuôn được thiết lập, đây là màu đầu tiên được sử dụng để đại diện cho
một tế bào chết.

khuôn_màu
Đặt màu mốc, cho các tế bào chết và mốc chắc chắn.

Để biết cú pháp của 3 tùy chọn màu này, hãy kiểm tra phần "Màu" trong ffmpeg-utils
hướng dẫn sử dụng.

Các ví dụ

· Đọc lưới từ Belt Holdvà căn giữa nó trên một lưới có kích thước 300x300 pixel:

life = f = pattern: s = 300x300

· Tạo lưới ngẫu nhiên có kích thước 200x200, với tỷ lệ lấp đầy là 2/3:

life = ratio = 2/3: s = 200x200

· Chỉ định quy tắc tùy chỉnh để phát triển lưới được tạo ngẫu nhiên:

life = rule = S14 / B34

· Ví dụ đầy đủ với hiệu ứng chết chậm (nấm mốc) bằng cách sử dụng ffplay:

ffplay -f lavfi life=s=300x200:mold=10:r=60:ratio=0.1:death_color=#C83232:life_color=#00ff00,scale=1200:800:flags=16

tất cảrgb, sinh vật, màu sắc, haldclutsrc, nullsrc, rgbtestsrc, Smptebar, smptehdbar, kiểm tra
Nguồn "allrgb" trả về các khung có kích thước 4096x4096 của tất cả các màu rgb.

Nguồn "allyuv" trả về các khung có kích thước 4096x4096 của tất cả các màu yuv.

Nguồn "màu" cung cấp đầu vào có màu đồng nhất.

Nguồn "haldclutsrc" cung cấp một Hald CLUT nhận dạng. Xem thêm cá sấu lọc.

Nguồn "nullsrc" trả về các khung video chưa được xử lý. Nó chủ yếu hữu ích khi được tuyển dụng
trong các công cụ phân tích / gỡ lỗi hoặc là nguồn cho các bộ lọc bỏ qua dữ liệu đầu vào.

Nguồn "rgbtestsrc" tạo ra mẫu thử nghiệm RGB hữu ích để phát hiện RGB so với BGR
vấn đề. Bạn sẽ thấy một sọc màu đỏ, xanh lục và xanh lam từ trên xuống dưới.

Nguồn "smptebars" tạo ra một mẫu thanh màu, dựa trên SMPTE Engineering
Hướng dẫn EG 1-1990.

Nguồn "smptehdbars" tạo mẫu thanh màu, dựa trên SMPTE RP 219-2002.

Nguồn "testsrc" tạo ra một mẫu video thử nghiệm, hiển thị một kiểu màu, cuộn
gradient và dấu thời gian. Điều này chủ yếu nhằm mục đích thử nghiệm.

Các nguồn chấp nhận các tham số sau:

màu sắc, c
Chỉ định màu của nguồn, chỉ khả dụng trong nguồn "màu". Đối với cú pháp
của tùy chọn này, hãy kiểm tra phần "Màu sắc" trong hướng dẫn sử dụng ffmpeg-utils.

cấp
Chỉ định mức Hald CLUT, chỉ có sẵn trong nguồn "haldclutsrc". MỘT
cấp độ "N" tạo ra hình ảnh "N * N * N" x "N * N * N" pixel để được sử dụng làm danh tính
ma trận cho bảng tra cứu 3D. Mỗi thành phần được mã hóa theo thang điểm "1 / (N * N)".

kích thước, s
Chỉ định kích thước của video có nguồn gốc. Để biết cú pháp của tùy chọn này, hãy kiểm tra "Băng hình
kích thước" phần in các ffmpeg-utils nhãn hiệu. Giá trị mặc định là "320x240".

Tùy chọn này không khả dụng với bộ lọc "haldclutsrc".

tỷ lệ, r
Chỉ định tốc độ khung hình của video có nguồn gốc, như số lượng khung hình được tạo cho mỗi
thứ hai. Nó phải là một chuỗi ở định dạng frame_rate_num/frame_rate_den, một số nguyên
số, số dấu phẩy động hoặc từ viết tắt tốc độ khung hình video hợp lệ. Mặc định
giá trị là "25".

sar Đặt tỷ lệ khung hình mẫu của video có nguồn gốc.

thời hạn, d
Đặt thời lượng của video có nguồn gốc. Nhìn thấy các Thời gian thời gian phần in các
ffmpeg-utils(1) nhãn hiệu cho cú pháp được chấp nhận.

Nếu không được chỉ định hoặc thời lượng thể hiện là âm, video sẽ được
được tạo ra mãi mãi.

số thập phân, n
Đặt số thập phân để hiển thị trong dấu thời gian, chỉ khả dụng trong "testsrc"
nguồn.

Giá trị dấu thời gian được hiển thị sẽ tương ứng với giá trị dấu thời gian ban đầu
nhân với lũy thừa của 10 của giá trị được chỉ định. Giá trị mặc định là 0.

Ví dụ như sau:

testsrc = thời lượng = 5.3: size = qcif: rate = 10

sẽ tạo video có thời lượng 5.3 giây, với kích thước 176x144 và tốc độ khung hình
10 khung hình / giây.

Mô tả biểu đồ sau sẽ tạo ra một nguồn màu đỏ có độ mờ là 0.2, với
kích thước "qcif" và tốc độ khung hình 10 khung hình / giây.

màu = c =[email được bảo vệ]: s = qcif: r = 10

Nếu nội dung đầu vào bị bỏ qua, "nullsrc" có thể được sử dụng. Lệnh sau
tạo ra tiếng ồn trong mặt phẳng độ chói bằng cách sử dụng bộ lọc "geq":

nullsrc = s = 256x256, geq =ngẫu nhiên(1) * 255: 128: 128

Lệnh

Nguồn "màu" hỗ trợ các lệnh sau:

c, màu sắc
Đặt màu của hình ảnh đã tạo. Chấp nhận cùng một cú pháp của từ khóa tương ứng màu sắc
tùy chọn.

Thêm bài này vào danh sách Video của bạn Download bài này CHÌM


Dưới đây là mô tả về các ổ chìm video hiện có.

liên kết đệm
Đệm khung video và cung cấp chúng ở cuối biểu đồ bộ lọc.

Chậu rửa này chủ yếu được thiết kế để sử dụng theo chương trình, đặc biệt là thông qua giao diện
được định nghĩa trong libavfilter / buffersink.h hoặc hệ thống tùy chọn.

Nó chấp nhận một con trỏ đến cấu trúc AVBufferSinkContext, cấu trúc này xác định
định dạng bộ đệm, sẽ được chuyển dưới dạng tham số không rõ ràng cho "avfilter_init_filter" cho
khởi tạo.

bồn rửa rỗng
Video chìm: hoàn toàn không làm gì với video đầu vào. Nó chủ yếu hữu ích như một
mẫu và để sử dụng trong các công cụ phân tích / gỡ lỗi.

MULTIMEDIA LỌC


Dưới đây là mô tả về các bộ lọc đa phương tiện hiện có.

máy đo aphasemeter
Chuyển đổi âm thanh đầu vào thành đầu ra video, hiển thị giai đoạn âm thanh.

Bộ lọc chấp nhận các tùy chọn sau:

tỷ lệ, r
Đặt tốc độ khung hình đầu ra. Giá trị mặc định là 25.

kích thước, s
Đặt kích thước video cho đầu ra. Để biết cú pháp của tùy chọn này, hãy kiểm tra "Băng hình
kích thước" phần in các ffmpeg-utils nhãn hiệu. Giá trị mặc định là "800x400".

rc
gc
bc Chỉ định độ tương phản màu đỏ, xanh lá cây, xanh lam. Giá trị mặc định là 2, 7 và 1. Phạm vi được phép
là "[0, 255]".

mpc Đặt màu sẽ được sử dụng để vẽ pha trung bình. Nếu màu là "không" thì đó là
mặc định, không có giá trị pha trung bình nào sẽ được vẽ.

Bộ lọc cũng xuất siêu dữ liệu khung "lavfi.aphasemeter.phase" đại diện cho giá trị trung bình
pha của khung âm thanh hiện tại. Giá trị nằm trong phạm vi "[-1, 1]". "-1" có nghĩa là trái và phải
các kênh hoàn toàn lệch pha và 1 có nghĩa là các kênh ở trong pha.

kính báo thù
Chuyển đổi âm thanh đầu vào thành đầu ra video, đại diện cho phạm vi vectơ âm thanh.

Bộ lọc được sử dụng để đo sự khác biệt giữa các kênh của luồng âm thanh nổi. MỘT
tín hiệu đơn kênh, bao gồm tín hiệu trái và phải giống hệt nhau, dẫn đến
đường thẳng đứng. Mọi sự phân tách âm thanh nổi có thể nhìn thấy dưới dạng độ lệch so với đường này, tạo ra
Hình dáng tuyệt vời. Nếu đường thẳng (hoặc lệch khỏi nó) nhưng đường nằm ngang sẽ xuất hiện
chỉ ra rằng các kênh bên trái và bên phải bị lệch pha.

Bộ lọc chấp nhận các tùy chọn sau:

chế độ, m
Đặt chế độ vectorscope.

Các giá trị có sẵn là:

lissajous
Lissajous xoay 45 độ.

lissajous_xy
Tương tự như trên nhưng không được xoay.

cực
Hình dạng giống nửa hình tròn.

Giá trị mặc định là lissajous.

kích thước, s
Đặt kích thước video cho đầu ra. Để biết cú pháp của tùy chọn này, hãy kiểm tra "Băng hình
kích thước" phần in các ffmpeg-utils nhãn hiệu. Giá trị mặc định là "400x400".

tỷ lệ, r
Đặt tốc độ khung hình đầu ra. Giá trị mặc định là 25.

rc
gc
bc
ac Chỉ định độ tương phản màu đỏ, xanh lá cây, xanh lam và alpha. Giá trị mặc định là 40, 160, 80 và
255. Phạm vi được phép là "[0, 255]".

rf
gf
bf
af Chỉ định màu đỏ, xanh lá cây, xanh lam và mờ dần alpha. Giá trị mặc định là 15, 10, 5 và 5.
Phạm vi được phép là "[0, 255]".

thu phóng
Đặt hệ số thu phóng. Giá trị mặc định là 1. Phạm vi được phép là "[1, 10]".

Các ví dụ

· Hoàn thành ví dụ bằng cách sử dụng ffplay:

ffplay -f lavfi 'amovie = input.mp3, asplit [a] [out1];
[a] avectorscope=zoom=1.3:rc=2:gc=200:bc=10:rf=1:gf=8:bf=7 [out0]'

concat
Nối các luồng âm thanh và video, nối chúng với nhau lần lượt.

Bộ lọc hoạt động trên các phân đoạn của luồng âm thanh và video được đồng bộ hóa. Tất cả các phân đoạn phải
có cùng số luồng của mỗi loại và đó cũng sẽ là số luồng
ở đầu ra.

Bộ lọc chấp nhận các tùy chọn sau:

n Đặt số lượng phân đoạn. Mặc định là 2.

v Đặt số lượng luồng video đầu ra, đó cũng là số lượng luồng video trong
từng đoạn. Mặc định là 1.

a Đặt số lượng luồng âm thanh đầu ra, đó cũng là số luồng âm thanh trong
từng đoạn. Mặc định là 0.

không an toàn
Kích hoạt chế độ không an toàn: không thất bại nếu các phân đoạn có định dạng khác.

Bộ lọc có v+a kết quả đầu ra: đầu tiên v đầu ra video, sau đó a đầu ra âm thanh.

nx(v+a) đầu vào: đầu tiên là đầu vào cho phân đoạn đầu tiên, theo thứ tự như
đầu ra, sau đó là đầu vào cho phân đoạn thứ hai, v.v.

Các luồng liên quan không phải lúc nào cũng có cùng thời lượng, vì nhiều lý do
bao gồm kích thước khung codec hoặc tác giả cẩu thả. Vì lý do đó, đồng bộ hóa liên quan
luồng (ví dụ: video và bản âm thanh của nó) nên được nối cùng một lúc. The concat
bộ lọc sẽ sử dụng thời lượng của luồng dài nhất trong mỗi phân đoạn (ngoại trừ phân đoạn cuối cùng),
và nếu cần, đệm các luồng âm thanh ngắn hơn với khoảng lặng.

Để bộ lọc này hoạt động chính xác, tất cả các phân đoạn phải bắt đầu ở dấu thời gian 0.

Tất cả các luồng tương ứng phải có cùng tham số trong tất cả các phân đoạn; sự lọc
hệ thống sẽ tự động chọn một định dạng pixel chung cho các luồng video và một
định dạng mẫu, tốc độ mẫu và bố cục kênh cho luồng âm thanh, nhưng các cài đặt khác, chẳng hạn như
là độ phân giải, phải được chuyển đổi rõ ràng bởi người dùng.

Tốc độ khung hình khác nhau có thể chấp nhận được nhưng sẽ dẫn đến tốc độ khung hình thay đổi ở đầu ra; thì là ở
đảm bảo cấu hình tệp đầu ra để xử lý nó.

Các ví dụ

· Kết hợp một phần mở đầu, một tập phim và một phần kết thúc, tất cả đều bằng phiên bản song ngữ (video trong
luồng 0, âm thanh trong luồng 1 và 2):

ffmpeg -i opens.mkv -i episode.mkv -i ending.mkv -filter_complex \
'[0:0] [0:1] [0:2] [1:0] [1:1] [1:2] [2:0] [2:1] [2:2]
concat = n = 3: v = 1: a = 2 [v] [a1] [a2] '\
-map '[v]' -map '[a1]' -map '[a2]' output.mkv

· Kết hợp hai phần, xử lý âm thanh và video riêng biệt, sử dụng (a) phim
nguồn và điều chỉnh độ phân giải:

phim = part1.mp4, scale = 512: 288 [v1]; amovie = part1.mp4 [a1];
phim = part2.mp4, scale = 512: 288 [v2]; amovie = part2.mp4 [a2];
[v1] [v2] concat [outv]; [a1] [a2] concat = v = 0: a = 1 [outa]

Lưu ý rằng quá trình khử đồng bộ sẽ xảy ra ở khâu nếu luồng âm thanh và video không
có cùng thời lượng trong tệp đầu tiên.

ebur128
Bộ lọc máy quét EBU R128. Bộ lọc này lấy một luồng âm thanh làm đầu vào và đầu ra nó
không thay đổi. Theo mặc định, nó ghi lại một tin nhắn ở tần số 10Hz với Mo moment
độ ồn (được xác định bằng "M"), Độ ồn ngắn hạn ("S"), Độ ồn tích hợp ("I") và
Phạm vi độ ồn ("LRA").

Bộ lọc cũng có đầu ra video (xem video tùy chọn) với biểu đồ thời gian thực để
quan sát sự phát triển của âm lượng. Hình ảnh chứa thông báo đã ghi được đề cập ở trên,
vì vậy nó không được in nữa khi tùy chọn này được đặt, trừ khi thiết lập ghi nhật ký chi tiết.
Vùng vẽ đồ thị chính chứa độ ồn ngắn hạn (3 giây phân tích) và
thước đo ở bên phải dành cho âm lượng nhất thời (400 mili giây).

Thông tin thêm về Khuyến nghị độ ồn EBU R128 trên
<http://tech.ebu.ch/loudness>.

Bộ lọc chấp nhận các tùy chọn sau:

video
Kích hoạt đầu ra video. Luồng âm thanh được truyền không thay đổi cho dù tùy chọn này là
đặt hoặc không. Luồng video sẽ là luồng đầu ra đầu tiên nếu được kích hoạt. Mặc định là
0.

kích thước
Đặt kích thước video. Tùy chọn này chỉ dành cho video. Đối với cú pháp của tùy chọn này,
kiểm tra "Băng hình kích thước" phần in các ffmpeg-utils nhãn hiệu. Mặc định và tối thiểu
độ phân giải là "640x480".

mét
Đặt thang đo EBU. Mặc định là 9. Giá trị chung là 9 và 18, tương ứng cho
Thang đo EBU +9 và thang đo EBU +18. Bất kỳ giá trị số nguyên nào khác giữa phạm vi này
được cho phép.

siêu dữ liệu
Đặt chèn siêu dữ liệu. Nếu được đặt thành 1, đầu vào âm thanh sẽ được phân đoạn thành 100ms
khung đầu ra, mỗi khung chứa thông tin về độ lớn khác nhau trong siêu dữ liệu. Tất cả
các khóa siêu dữ liệu có tiền tố là "lavfi.r128.".

Mặc định là 0.

nhật ký khung
Buộc mức ghi nhật ký khung.

Các giá trị có sẵn là:

Thông tin
cấp độ ghi thông tin

dài dòng
mức độ ghi nhật ký chi tiết

Theo mặc định, cấp độ ghi nhật ký được đặt thành Thông tin. Nếu video hoặc là siêu dữ liệu lựa chọn là
thiết lập, nó chuyển sang dài dòng.

đỉnh
Đặt (các) chế độ cao điểm.

Các chế độ khả dụng có thể được tích lũy (tùy chọn là loại "cờ"). Giá trị có thể là:

không ai
Tắt mọi chế độ cao điểm (mặc định).

mẫu
Bật chế độ đỉnh mẫu.

Chế độ đỉnh đơn giản tìm kiếm giá trị mẫu cao hơn. Nó ghi lại một tin nhắn cho
đỉnh mẫu (được xác định bởi "SPK").

đúng
Bật chế độ đỉnh thực.

Nếu được bật, tra cứu đỉnh được thực hiện trên phiên bản lấy mẫu quá mức của luồng đầu vào
để có độ chính xác cao nhất. Nó ghi lại một tin nhắn cho true-peak. (được xác định bởi "TPK")
và true-peak trên mỗi khung hình (được xác định bởi "FTPK"). Chế độ này yêu cầu xây dựng với
"libswresample".

Các ví dụ

· Biểu đồ thời gian thực sử dụng ffplay, với thước đo tỷ lệ EBU +18:

ffplay -f lavfi -i "amovie = input.mp3, ebur128 = video = 1: meter = 18 [out0] [out1]"

· Chạy một phân tích với ffmpeg:

ffmpeg -nostats -i input.mp3 -filter_complex ebur128 -f null -

xen kẽ, xen kẽ
Tạm thời xen kẽ các khung hình từ một số đầu vào.

"interleave" hoạt động với đầu vào video, "ainterleave" với âm thanh.

Các bộ lọc này đọc các khung từ một số đầu vào và gửi khung được xếp hàng cũ nhất đến
đầu ra.

Các luồng đầu vào phải có giá trị dấu thời gian khung tăng dần, được xác định rõ ràng.

Để gửi một khung cho đầu ra, các bộ lọc này cần phải xếp hàng trước ít nhất một khung
cho mỗi đầu vào, vì vậy chúng không thể hoạt động trong trường hợp một đầu vào chưa kết thúc và sẽ không
nhận các khung hình đến.

Ví dụ: hãy xem xét trường hợp khi một đầu vào là bộ lọc "chọn" luôn bỏ đầu vào
khung. Bộ lọc "xen kẽ" sẽ tiếp tục đọc từ đầu vào đó, nhưng nó sẽ không bao giờ
có thể gửi các khung hình mới đến đầu ra cho đến khi đầu vào sẽ gửi tín hiệu kết thúc luồng.

Ngoài ra, tùy thuộc vào đồng bộ hóa đầu vào, các bộ lọc sẽ giảm khung hình trong trường hợp một đầu vào
nhận được nhiều khung hơn những khung khác và hàng đợi đã được lấp đầy.

Các bộ lọc này chấp nhận các tùy chọn sau:

nb_input, n
Đặt số lượng đầu vào khác nhau, theo mặc định là 2.

Các ví dụ

· Các khung xen kẽ thuộc các luồng khác nhau bằng cách sử dụng ffmpeg:

ffmpeg -i bambi.avi -i pr0n.mkv -filter_complex "[0: v] [1: v] interleave" out.avi

· Thêm hiệu ứng mờ nhấp nháy:

select = 'if (gt (ngẫu nhiên(0), 0.2), 1, 2) ': n = 2 [tmp], boxblur = 2: 2, [tmp] interleave

uốn, lá rụng
Đặt quyền đọc / ghi cho các khung đầu ra.

Các bộ lọc này chủ yếu nhằm vào các nhà phát triển để kiểm tra đường dẫn trực tiếp trong bộ lọc sau
trong đồ thị bộ lọc.

Các bộ lọc chấp nhận các tùy chọn sau:

chế độ
Chọn chế độ quyền.

Nó chấp nhận các giá trị sau:

không ai
Không làm gì cả. Đây là mặc định.

ro Đặt tất cả các khung đầu ra ở chế độ chỉ đọc.

rw Đặt tất cả các khung đầu ra có thể ghi trực tiếp.

bật lên
Đặt khung ở chế độ chỉ đọc nếu có thể ghi và có thể ghi nếu chỉ đọc.

ngẫu nhiên
Đặt ngẫu nhiên mỗi khung đầu ra ở chế độ chỉ đọc hoặc có thể ghi.

hạt giống
Đặt hạt giống cho ngẫu nhiên , phải là một số nguyên bao gồm từ 0 đến
"UINT32_MAX". Nếu không được chỉ định hoặc nếu được đặt rõ ràng thành "-1", bộ lọc sẽ cố gắng
sử dụng một hạt giống ngẫu nhiên tốt trên cơ sở nỗ lực tốt nhất.

Lưu ý: trong trường hợp bộ lọc được chèn tự động giữa bộ lọc quyền và bộ lọc sau,
quyền có thể không được nhận như mong đợi trong bộ lọc sau đó. Chèn một
định dạng or định dạng bộ lọc trước bộ lọc perms / aperms có thể tránh được sự cố này.

lựa chọn, chọn
Chọn khung để chuyển vào đầu ra.

Bộ lọc này chấp nhận các tùy chọn sau:

kinh nghiệm, e
Đặt biểu thức, được đánh giá cho mỗi khung đầu vào.

Nếu biểu thức được đánh giá bằng XNUMX, khung sẽ bị loại bỏ.

Nếu kết quả đánh giá là âm tính hoặc NaN, khung được gửi đến đầu ra đầu tiên;
nếu không nó được gửi đến đầu ra với chỉ mục "ceil (val) -1", giả sử rằng đầu vào
chỉ mục bắt đầu từ 0.

Ví dụ: giá trị 1.2 tương ứng với đầu ra có chỉ số "ceil (1.2) -1 = 2-1 =
1 ”, đó là đầu ra thứ hai.

đầu ra, n
Đặt số lượng đầu ra. Đầu ra để gửi khung đã chọn dựa trên
kết quả của việc đánh giá. Giá trị mặc định là 1.

Biểu thức có thể chứa các hằng số sau:

n Số (tuần tự) của khung được lọc, bắt đầu từ 0.

select_n
Số (tuần tự) của khung đã chọn, bắt đầu từ 0.

trước_selected_n
Số thứ tự của khung được chọn cuối cùng. Đó là NAN nếu không xác định.

TB Cơ sở thời gian của dấu thời gian đầu vào.

Điểm PTS (Presentation TimeStamp) của khung video đã lọc, được biểu thị bằng TB các đơn vị.
Đó là NAN nếu không xác định.

t PTS của khung video đã lọc, tính bằng giây. Đó là NAN nếu không xác định.

pres_pts
PTS của khung video đã lọc trước đó. Đó là NAN nếu không xác định.

trước_selected_pts
PTS của khung video được lọc trước đó cuối cùng. Đó là NAN nếu không xác định.

trước_selected_t
PTS của khung video cuối cùng được chọn trước đó. Đó là NAN nếu không xác định.

điểm bắt đầu
PTS của khung video đầu tiên trong video. Đó là NAN nếu không xác định.

bắt đầu_t
Thời gian của khung video đầu tiên trong video. Đó là NAN nếu không xác định.

kiểu_tình_hình (video chỉ)
Loại khung được lọc. Nó có thể giả định một trong các giá trị sau:

I
P
B
S
SI
SP
BI
xen kẽ_type (video chỉ)
Loại xen kẽ khung. Nó có thể giả định một trong các giá trị sau:

TIẾN ĐỘ
Khung là lũy tiến (không xen kẽ).

ĐẦU TIÊN
Khung là trường đầu tiên.

CẢ HAI
Khung là trường dưới cùng đầu tiên.

Consumer_sample_n (âm thanh chỉ)
số lượng mẫu đã chọn trước khung hiện tại

mẫu_n (âm thanh chỉ)
số lượng mẫu trong khung hiện tại

tỷ lệ mẫu (âm thanh chỉ)
tỷ lệ mẫu đầu vào

chính Đây là 1 nếu khung được lọc là khung chính, 0 nếu ngược lại.

gửi vị trí trong tệp của khung được lọc, -1 nếu thông tin không có sẵn
(ví dụ: đối với video tổng hợp)

bối cảnh (video chỉ)
giá trị từ 0 đến 1 để chỉ ra một cảnh mới; giá trị thấp phản ánh xác suất thấp
đối với khung hiện tại để giới thiệu một cảnh mới, trong khi giá trị cao hơn có nghĩa là
khung có nhiều khả năng là một (xem ví dụ bên dưới)

Giá trị mặc định của biểu thức chọn là "1".

Các ví dụ

· Chọn tất cả các khung hình trong đầu vào:

chọn

Ví dụ trên giống như:

chọn = 1

· Bỏ qua tất cả các khung:

chọn = 0

· Chỉ chọn I-frame:

select = 'eq (picture_type \, I)'

· Chọn một khung hình cứ sau 100:

select = 'not (mod (n \, 100))'

· Chỉ chọn các khung có trong khoảng thời gian 10-20:

select = between (t \, 10 \, 20)

· Chỉ chọn I các khung có trong khoảng thời gian 10-20:

select = between (t \, 10 \, 20) * eq (picture_type \, I)

· Chọn khung có khoảng cách tối thiểu 10 giây:

select = 'isnan (pres_selected_t) + gte (t-prev_selected_t \, 10)'

· Sử dụng aselect để chỉ chọn các khung âm thanh có số mẫu> 100:

aselect = 'gt (samples_n \, 100)'

· Tạo một bức tranh khảm của những cảnh đầu tiên:

ffmpeg -i video.avi -vf select = 'gt (scene \, 0.4)', scale = 160: 120, tile -frames: v 1 preview.png

So sánh bối cảnh chống lại giá trị từ 0.3 đến 0.5 thường là một lựa chọn lành mạnh.

· Gửi các khung hình chẵn và lẻ đến các đầu ra riêng biệt và soạn chúng:

select = n = 2: e = 'mod (n, 2) +1' [lẻ] [chẵn]; [lẻ] pad = h = 2 * ih [tmp]; [tmp] [thậm chí] overlay = y = h

gửicmd, asendcmd
Gửi lệnh đến các bộ lọc trong biểu đồ lọc.

Các bộ lọc này đọc các lệnh được gửi đến các bộ lọc khác trong biểu đồ lọc.

"sendcmd" phải được chèn giữa hai bộ lọc video, "asendcmd" phải được chèn giữa
hai bộ lọc âm thanh, nhưng ngoài bộ lọc đó, chúng hoạt động theo cùng một cách.

Đặc tả của các lệnh có thể được cung cấp trong các đối số của bộ lọc với lệnh
hoặc trong một tệp được chỉ định bởi tên tập tin tùy chọn.

Các bộ lọc này chấp nhận các tùy chọn sau:

lệnh, c
Đặt các lệnh được đọc và gửi đến các bộ lọc khác.

tên tệp, f
Đặt tên tệp của các lệnh sẽ được đọc và gửi đến các bộ lọc khác.

Lệnh cú pháp

Mô tả lệnh bao gồm một chuỗi các thông số kỹ thuật khoảng, bao gồm
danh sách các lệnh được thực hiện khi một sự kiện cụ thể liên quan đến khoảng thời gian đó xảy ra.
Sự kiện xảy ra thường là khung thời gian hiện tại nhập hoặc rời khỏi một thời gian nhất định
khoảng thời gian.

Khoảng thời gian được chỉ định theo cú pháp sau:

[- ] ;

Khoảng thời gian được chỉ định bởi BẮT ĐẦUEND lần. END là tùy chọn và mặc định
đến thời gian tối đa.

Thời gian khung hiện tại được coi là trong khoảng thời gian được chỉ định nếu nó được bao gồm trong
khoảng thời gian [BẮT ĐẦU, END), đó là khi thời gian lớn hơn hoặc bằng BẮT ĐẦU
ít hơn END.

HÀNG bao gồm một chuỗi một hoặc nhiều đặc tả lệnh, được phân tách bằng ",",
liên quan đến khoảng thời gian đó. Cú pháp của một đặc tả lệnh được đưa ra bởi:

[ ]

CỜ là tùy chọn và chỉ định loại sự kiện liên quan đến khoảng thời gian mà
cho phép gửi lệnh đã chỉ định và phải là một chuỗi các cờ định danh không rỗng
phân tách bằng "+" hoặc "|" và được đặt giữa "[" và "]".

Các cờ sau được nhận dạng:

nhập
Lệnh được gửi khi dấu thời gian của khung hiện tại đi vào khoảng thời gian được chỉ định. Trong
nói cách khác, lệnh được gửi khi dấu thời gian của khung trước đó không có trong
khoảng thời gian nhất định, và hiện tại là.

để lại
Lệnh được gửi khi dấu thời gian của khung hiện tại rời khỏi khoảng thời gian được chỉ định. Trong
nói cách khác, lệnh được gửi khi dấu thời gian của khung trước đó nằm trong
khoảng thời gian, và hiện tại thì không.

If CỜ không được chỉ định, giá trị mặc định của "[enter]" được giả định.

MỤC TIÊU chỉ định mục tiêu của lệnh, thường là tên của lớp bộ lọc hoặc
tên phiên bản bộ lọc cụ thể.

COMMAND chỉ định tên của lệnh cho bộ lọc đích.

ARG là tùy chọn và chỉ định danh sách đối số tùy chọn cho COMMAND.

Giữa một thông số kỹ thuật khoảng này và một thông số kỹ thuật khác, khoảng trắng hoặc chuỗi ký tự
bắt đầu bằng "#" cho đến cuối dòng, được bỏ qua và có thể được sử dụng để ghi chú thích.

Mô tả BNF đơn giản về cú pháp đặc tả lệnh như sau:

:: = "nhập" | "rời bỏ"
:: = [(+ | "|") ]
:: = ["[" "]"] [ ]
:: = [, ]
:: = [- ]
:: = [; ]

Các ví dụ

· Chỉ định thay đổi nhịp độ âm thanh ở giây thứ 4:

asendcmd = c = '4.0 atempo tempo 1.5', atempo

· Chỉ định một danh sách các lệnh drawtext và hue trong một tệp.

# hiển thị văn bản trong khoảng thời gian 5-10
5.0-10.0 [enter] drawtext reinit 'fontfile = FreeSerif.ttf: text = hello world',
[để lại] drawtext reinit 'fontfile = FreeSerif.ttf: text =';

# khử bão hòa hình ảnh trong khoảng 15-20
15.0-20.0 [nhập] màu sắc 0,
[enter] drawtext reinit 'fontfile = FreeSerif.ttf: text = nocolor',
[để lại] hue s 1,
[để lại] drawtext reinit 'fontfile = FreeSerif.ttf: text = color';

# áp dụng hiệu ứng mờ dần độ bão hòa theo cấp số nhân, bắt đầu từ thời điểm 25
25 [enter] hue s exp (25-t)

Một biểu đồ lọc cho phép đọc và xử lý danh sách lệnh trên được lưu trữ trong một tệp
thử nghiệm.cmd, có thể được chỉ định bằng:

sendcmd = f = test.cmd, drawtext = fontfile = FreeSerif.ttf: text = '', hue

tập lệnh, tài sản
Thay đổi PTS (dấu thời gian trình bày) của các khung đầu vào.

"setpts" hoạt động trên khung video, "asetpts" trên khung âm thanh.

Bộ lọc này chấp nhận các tùy chọn sau:

thể hiện
Biểu thức được đánh giá cho mỗi khung để tạo dấu thời gian của nó.

Biểu thức được đánh giá thông qua API eval và có thể chứa các hằng số sau:

TỶ LỆ KHUNG HÌNH
tốc độ khung hình, chỉ được xác định cho video có tốc độ khung hình không đổi

PTS Dấu thời gian của bản trình bày trong đầu vào

N Số lượng khung hình đầu vào cho video hoặc số lượng mẫu đã tiêu thụ, không
bao gồm khung hiện tại cho âm thanh, bắt đầu từ 0.

NB_CONSUMED_SAMPLES
Số lượng mẫu đã tiêu thụ, không bao gồm khung hiện tại (chỉ âm thanh)

NB_SAMPLES, S
Số lượng mẫu trong khung hiện tại (chỉ âm thanh)

TỶ LỆ MẪU, SR
Tỷ lệ mẫu âm thanh.

BẮT ĐẦU
PTS của khung hình đầu tiên.

BẮT ĐẦU
thời gian tính bằng giây của khung hình đầu tiên

LIÊN KẾT
Cho biết liệu khung hiện tại có được xen kẽ hay không.

T thời gian tính bằng giây của khung hiện tại

POS vị trí ban đầu trong tệp của khung hoặc không xác định nếu không xác định cho hiện tại
khung

PREV_INPTS
PTS đầu vào trước đó.

PREV_INT
thời gian nhập liệu trước đó tính bằng giây

PREV_OUTPTS
PTS đầu ra trước đó.

PREV_OUTT
thời gian xuất trước đó tính bằng giây

RTCTIME
Thời gian đồng hồ treo tường (RTC) tính bằng micro giây. Cái này không được dùng nữa, hãy sử dụng thời gian(0) thay vào đó.

RTCBẮT ĐẦU
Thời gian đồng hồ treo tường (RTC) khi bắt đầu phim tính bằng micro giây.

TB Cơ sở thời gian của dấu thời gian đầu vào.

Các ví dụ

· Bắt đầu đếm PTS từ XNUMX

setpts = PTS-STARTPTS

· Áp dụng hiệu ứng chuyển động nhanh:

setpts = 0.5 * PTS

· Áp dụng hiệu ứng chuyển động chậm:

setpts = 2.0 * PTS

· Đặt tốc độ cố định 25 khung hình / giây:

setpts = N / (25 * TB)

· Đặt tốc độ cố định 25 khung hình / giây với một số jitter:

setpts = '1 / (25 * TB) * (N + 0.05 * sin (N * 2 * PI / 25))'

· Áp dụng độ lệch 10 giây cho PTS đầu vào:

setpts = PTS + 10 / TB

· Tạo dấu thời gian từ "nguồn trực tiếp" và căn cứ lại vào cơ sở thời gian hiện tại:

setpts = '(RTCTIME - RTCSTART) / (TB * 1000000)'

· Tạo dấu thời gian bằng cách đếm mẫu:

asetpts = N / SR / TB

định cư, tài sản
Đặt cơ sở thời gian để sử dụng cho dấu thời gian của khung đầu ra. Nó chủ yếu hữu ích cho việc kiểm tra
cấu hình cơ sở thời gian.

Nó chấp nhận các tham số sau:

kinh nghiệm, tb
Biểu thức được đánh giá vào cơ sở thời gian đầu ra.

Giá trị cho tb là một biểu thức số học biểu diễn một số hữu tỉ. Biểu thức có thể
chứa các hằng số "AVTB" (cơ sở thời gian mặc định), "intb" (cơ sở thời gian đầu vào) và "sr"
(tỷ lệ mẫu, chỉ âm thanh). Giá trị mặc định là "intb".

Các ví dụ

· Đặt cơ sở thời gian thành 1/25:

định cư = expr = 1/25

· Đặt cơ sở thời gian thành 1/10:

định cư = expr = 0.1

· Đặt cơ sở thời gian thành 1001/1000:

định cư = 1 + 0.001

· Đặt cơ sở thời gian thành 2 * intb:

dàn xếp = 2 * intb

· Đặt giá trị cơ sở thời gian mặc định:

định cư = AVTB

showcqt
Chuyển đổi âm thanh đầu vào thành đầu ra video đại diện cho phổ tần số theo lôgarit
(sử dụng biến đổi Q không đổi với thuật toán Brown-Puckette), với thang giai điệu âm nhạc, từ
E0 đến D # 10 (10 quãng tám).

Bộ lọc chấp nhận các tùy chọn sau:

khối lượng
Chỉ định biểu thức khối lượng biến đổi (cấp số nhân). Biểu thức có thể chứa
biến:

tần số, tần số, f
tần số mà biến đổi được đánh giá

máy đo thời gian, tc
giá trị của tùy chọn timeclamp

và các chức năng:

a_weighting (f)
Trọng số A của độ ồn bằng nhau

b_weighting (f)
B-trọng số của âm lượng bằng nhau

c_weighting (f)
Trọng số C của độ ồn bằng nhau

Giá trị mặc định là 16.

sức bền
Chỉ định biểu thức độ dài biến đổi. Biểu thức có thể chứa các biến:

tần số, tần số, f
tần số mà biến đổi được đánh giá

máy đo thời gian, tc
giá trị của tùy chọn timeclamp

Giá trị mặc định là "384 / f * tc / (384 / f + tc)".

đèn đếm thời gian
Chỉ định mốc thời gian biến đổi. Ở tần số thấp, có sự đánh đổi giữa độ chính xác
trong miền thời gian và miền tần số. Nếu mốc thời gian thấp hơn, sự kiện trong miền thời gian là
được thể hiện chính xác hơn (chẳng hạn như trống bass nhanh), nếu không thì sự kiện về tần số
miền được biểu diễn chính xác hơn (chẳng hạn như guitar bass). Giá trị có thể chấp nhận là [0.1,
1.0]. Giá trị mặc định là 0.17.

cái kẹp
Chỉ định hệ số biến đổi. Nếu hệ số điều chỉnh thấp hơn, thì biến đổi sẽ chính xác hơn,
nếu không thì biến đổi nhanh hơn. Giá trị chấp nhận được là [0.1, 10.0]. Giá trị mặc định là 1.0.

gamma
Chỉ định gamma. Gamma thấp hơn làm cho quang phổ tương phản hơn, gamma cao hơn làm cho
phổ có nhiều dải hơn. Giá trị chấp nhận được là [1.0, 7.0]. Giá trị mặc định là 3.0.

gamma2
Chỉ định gamma của thanh đồ thị. Giá trị chấp nhận được là [1.0, 7.0]. Giá trị mặc định là 1.0.

phông chữ
Chỉ định tệp phông chữ để sử dụng với freetype. Nếu không được chỉ định, hãy sử dụng phông chữ nhúng.

màu phông chữ
Chỉ định biểu thức màu phông chữ. Đây là biểu thức số học sẽ trả về
giá trị số nguyên 0xRRGGBB. Biểu thức có thể chứa các biến:

tần số, tần số, f
tần số mà biến đổi được đánh giá

máy đo thời gian, tc
giá trị của tùy chọn timeclamp

và các chức năng:

midi (f)
số midi của tần số f, một số số midi: E0(16) C1(24) C2(36) A4(69)

r (x), g (x), b (x)
giá trị đỏ, lục và lam của cường độ x

Giá trị mặc định là "st (0, (midi (f) -59.5) / 12); st (1, if (between (ld(0), 0,1),
0.5-0.5 * cos (2 * PI *ld(0)), 0)); r (1-ld(1)) + b (ld(1)) "

FullHD
Nếu được đặt thành 1 (mặc định), kích thước video là 1920x1080 (full HD), nếu được đặt thành 0,
kích thước video là 960x540. Sử dụng tùy chọn này để giảm mức sử dụng CPU.

fps Chỉ định fps video. Giá trị mặc định là 25.

tính
Chỉ định số lượng chuyển đổi trên mỗi khung hình, do đó có số lượng chuyển đổi fps * mỗi giây.
Lưu ý rằng tốc độ dữ liệu âm thanh phải chia hết cho số fps *. Giá trị mặc định là 6.

Các ví dụ

· Phát âm thanh trong khi hiển thị phổ:

ffplay -f lavfi 'amovie = a.mp3, asplit [a] [out1]; [a] showcqt [out0] '

· Tương tự như trên, nhưng với tốc độ khung hình 30 khung hình / giây:

ffplay -f lavfi 'amovie = a.mp3, asplit [a] [out1]; [a] showcqt = fps = 30: count = 5 [out0] '

· Chơi ở tốc độ 960x540 và mức sử dụng CPU thấp hơn:

ffplay -f lavfi 'amovie = a.mp3, asplit [a] [out1]; [a] showcqt = fullhd = 0: count = 3 [out0] '

· A1 và các sóng hài của nó: A1, A2, (gần) E3, A3:

ffplay -f lavfi 'aevalsrc=0.1*sin(2*PI*55*t)+0.1*sin(4*PI*55*t)+0.1*sin(6*PI*55*t)+0.1*sin(8*PI*55*t),
asplit [a] [out1]; [a] showcqt [out0] '

· Tương tự như trên, nhưng với độ chính xác hơn trong miền tần số (và chậm hơn):

ffplay -f lavfi 'aevalsrc=0.1*sin(2*PI*55*t)+0.1*sin(4*PI*55*t)+0.1*sin(6*PI*55*t)+0.1*sin(8*PI*55*t),
asplit [a] [out1]; [a] showcqt = timeclamp = 0.5 [out0] '

· Trọng số B của âm lượng bằng nhau

volume = 16 * b_weighting (f)

· Hệ số Q thấp hơn

tlength = 100 / f * tc / (100 / f + tc)

· Màu phông chữ tùy chỉnh, C-note có màu xanh lá cây, những cái khác có màu xanh lam

fontcolor = 'if (mod (floor (midi (f) +0.5), 12), 0x0000FF, g(1)) '

· Gamma tùy chỉnh, phổ bây giờ là tuyến tính với biên độ.

gamma = 2: gamma2 = 2

tần số hiển thị
Chuyển đổi âm thanh đầu vào thành đầu ra video đại diện cho phổ công suất âm thanh. Âm thanh
biên độ nằm trên trục Y trong khi tần số nằm trên trục X.

Bộ lọc chấp nhận các tùy chọn sau:

kích thước, s
Chỉ định kích thước của video. Để biết cú pháp của tùy chọn này, hãy kiểm tra "Băng hình kích thước" phần
in các ffmpeg-utils nhãn hiệu. Mặc định là "1024x512".

chế độ
Đặt chế độ hiển thị. Điều này đặt cách mỗi ngăn tần số sẽ được biểu diễn.

Nó chấp nhận các giá trị sau:

hàng
thanh
dot

Mặc định là "bar".

cân
Đặt thang đo biên độ.

Nó chấp nhận các giá trị sau:

lin Quy mô tuyến tính.

câu hỏi
Căn bậc hai thang.

cbrt
Tỷ lệ gốc khối.

đăng nhập Thang đo lôgarit.

Mặc định là "nhật ký".

quy mô
Đặt thang tần số.

Nó chấp nhận các giá trị sau:

lin Quy mô tuyến tính.

đăng nhập Thang đo lôgarit.

đăng nhập
Thang logarit ngược.

Mặc định là "lin".

win_size
Đặt kích thước cửa sổ.

Nó chấp nhận các giá trị sau:

w16
w32
w64
w128
w256
w512
w1024
w2048
w4096
w8192
w16384
w32768
w65536

Mặc định là "w2048"

win_func
Đặt chức năng cửa sổ.

Nó chấp nhận các giá trị sau:

trực tràng
nhân viên pha chế
Hán Ninh
ôm
người da đen
welch
mặt phẳng
bharris
tàn bạo
bhann
sin
quả óc chó

Mặc định là "hanning".

trùng lặp
Đặt chồng chéo cửa sổ. Trong phạm vi "[0, 1]". Mặc định là 1, có nghĩa là chồng chéo tối ưu cho
chức năng cửa sổ đã chọn sẽ được chọn.

trung bình
Đặt thời gian trung bình. Đặt giá trị này thành 0 sẽ hiển thị các đỉnh cực đại hiện tại. Mặc định là
1, có nghĩa là tính trung bình thời gian bị vô hiệu hóa.

màu sắc
Chỉ định danh sách các màu được phân tách bằng dấu cách hoặc bằng '|' sẽ được sử dụng để vẽ kênh
tần số. Các màu không nhận dạng được hoặc bị thiếu sẽ được thay thế bằng màu trắng.

showpectrum
Chuyển đổi âm thanh đầu vào thành đầu ra video, đại diện cho phổ tần số âm thanh.

Bộ lọc chấp nhận các tùy chọn sau:

kích thước, s
Chỉ định kích thước video cho đầu ra. Để biết cú pháp của tùy chọn này, hãy kiểm tra "Băng hình
kích thước" phần in các ffmpeg-utils nhãn hiệu. Giá trị mặc định là "640x512".

trượt
Chỉ định cách quang phổ sẽ trượt dọc theo cửa sổ.

Nó chấp nhận các giá trị sau:

thay thế
các mẫu bắt đầu lại ở bên trái khi chúng đến bên phải

di chuyển
các mẫu cuộn từ phải sang trái

khung đầy đủ
khung chỉ được sản xuất khi các mẫu đạt đến bên phải

Giá trị mặc định là "thay thế".

chế độ
Chỉ định chế độ hiển thị.

Nó chấp nhận các giá trị sau:

kết hợp
tất cả các kênh được hiển thị trong cùng một hàng

riêng biệt
tất cả các kênh được hiển thị trong các hàng riêng biệt

Giá trị mặc định là kết hợp.

màu sắc
Chỉ định chế độ màu hiển thị.

Nó chấp nhận các giá trị sau:

kênh
mỗi kênh được hiển thị bằng một màu riêng biệt

cường độ
mỗi kênh được hiển thị bằng cách sử dụng cùng một bảng màu

Giá trị mặc định là kênh.

tỉ lệ
Chỉ định thang đo được sử dụng để tính toán các giá trị màu cường độ.

Nó chấp nhận các giá trị sau:

lin tuyến tính

câu hỏi
căn bậc hai, mặc định

cbrt
căn bậc ba

đăng nhập logarit

Giá trị mặc định là câu hỏi.

bão hòa
Đặt công cụ sửa đổi độ bão hòa cho màu hiển thị. Giá trị âm cung cấp thay thế
bảng màu. 0 là không có bão hòa nào cả. Độ bão hòa phải nằm trong phạm vi [-10.0, 10.0].
Giá trị mặc định là 1.

win_func
Đặt chức năng cửa sổ.

Nó chấp nhận các giá trị sau:

không ai
Không có mẫu nào được xử lý trước (không mong đợi quá trình này sẽ nhanh hơn)

Hann
Cửa sổ Hann

ôm
Cửa sổ Hamming

người da đen
Cửa sổ Blackman

Giá trị mặc định là "hann".

Cách sử dụng rất giống với bộ lọc showwaves; xem các ví dụ trong phần đó.

Các ví dụ

· Cửa sổ lớn với tỷ lệ màu loga:

showpectrum = s = 1280x480: scale = log

· Toàn bộ ví dụ về quang phổ màu và trượt trên mỗi kênh bằng cách sử dụng ffplay:

ffplay -f lavfi 'amovie = input.mp3, asplit [a] [out1];
[a] showspectrum = mode = Riêng: color = Cường độ: slide = 1: scale = cbrt [out0] '

sự phô trương
Chuyển đổi âm lượng đầu vào thành đầu ra video.

Bộ lọc chấp nhận các tùy chọn sau:

tỷ lệ, r
Đặt tốc độ video.

b Đặt chiều rộng đường viền, phạm vi cho phép là [0, 5]. Mặc định là 1.

w Đặt chiều rộng kênh, phạm vi cho phép là [40, 1080]. Mặc định là 400.

h Đặt chiều cao kênh, phạm vi cho phép là [1, 100]. Mặc định là 20.

f Đặt độ mờ dần, phạm vi cho phép là [1, 255]. Mặc định là 20.

c Đặt biểu thức màu âm lượng.

Biểu thức có thể sử dụng các biến sau:

ÂM LƯỢNG
Âm lượng tối đa hiện tại của kênh tính bằng dB.

KÊNH
Số kênh hiện tại, bắt đầu từ 0.

t Nếu được đặt, sẽ hiển thị tên kênh. Mặc định được bật.

chương trình truyền hình
Chuyển đổi âm thanh đầu vào thành đầu ra video, đại diện cho các sóng mẫu.

Bộ lọc chấp nhận các tùy chọn sau:

kích thước, s
Chỉ định kích thước video cho đầu ra. Để biết cú pháp của tùy chọn này, hãy kiểm tra "Băng hình
kích thước" phần in các ffmpeg-utils nhãn hiệu. Giá trị mặc định là "600x240".

chế độ
Đặt chế độ hiển thị.

Các giá trị có sẵn là:

điểm
Vẽ một điểm cho mỗi mẫu.

hàng
Vẽ một đường thẳng đứng cho mỗi mẫu.

p2p Vẽ một điểm cho mỗi mẫu và một đường thẳng giữa chúng.

nháy mắt
Vẽ một đường thẳng đứng ở giữa cho mỗi mẫu.

Giá trị mặc định là "điểm".

n Đặt số lượng mẫu được in trên cùng một cột. Giá trị lớn hơn sẽ
giảm tốc độ khung hình. Phải là một số nguyên dương. Tùy chọn này chỉ có thể được đặt nếu
giá trị cho tỷ lệ không được chỉ định rõ ràng.

tỷ lệ, r
Đặt tốc độ khung hình đầu ra (gần đúng). Điều này được thực hiện bằng cách thiết lập tùy chọn n. Mặc định
giá trị là "25".

chia_kênh
Đặt nếu các kênh nên được vẽ riêng biệt hoặc chồng lên nhau. Giá trị mặc định là 0.

Các ví dụ

· Xuất âm thanh tệp đầu vào và biểu diễn video tương ứng cùng một lúc
thời gian:

amovie = a.mp3, asplit [out0], showwaves [out1]

· Tạo một tín hiệu tổng hợp và hiển thị nó bằng các chương trình, buộc tốc độ khung hình là 30
khung hình mỗi giây:

aevalsrc=sin(1*2*PI*t)*sin(880*2*PI*t):cos(2*PI*200*t),asplit[out0],showwaves=r=30[out1]

showwavespic
Chuyển đổi âm thanh đầu vào thành một khung video duy nhất, đại diện cho các sóng mẫu.

Bộ lọc chấp nhận các tùy chọn sau:

kích thước, s
Chỉ định kích thước video cho đầu ra. Để biết cú pháp của tùy chọn này, hãy kiểm tra "Băng hình
kích thước" phần in các ffmpeg-utils nhãn hiệu. Giá trị mặc định là "600x240".

chia_kênh
Đặt nếu các kênh nên được vẽ riêng biệt hoặc chồng lên nhau. Giá trị mặc định là 0.

Các ví dụ

· Trích xuất biểu diễn tách kênh của dạng sóng của toàn bộ bản âm thanh trong một
Sử dụng hình ảnh 1024x800 ffmpeg:

ffmpeg -i audio.flac -lavfi showwavespic = split_channels = 1: s = 1024x800 waveform.png

tách ra, một sự chia rẽ
Tách đầu vào thành nhiều đầu ra giống nhau.

"asplit" hoạt động với đầu vào âm thanh, "tách" với video.

Bộ lọc chấp nhận một tham số chỉ định số lượng đầu ra. Nếu như
không xác định, nó mặc định là 2.

Các ví dụ

· Tạo hai đầu ra riêng biệt từ cùng một đầu vào:

[in] split [out0] [out1]

· Để tạo 3 đầu ra trở lên, bạn cần chỉ định số lượng đầu ra, như trong:

[in] asplit = 3 [out0] [out1] [out2]

· Tạo hai đầu ra riêng biệt từ cùng một đầu vào, một đầu vào được cắt xén và một đầu ra được đệm:

[trong] tách [splitout1] [splitout2];
[splitout1] crop=100:100:0:0 [cropout];
[splitout2] pad=200:200:100:100 [padout];

· Tạo 5 bản sao của âm thanh đầu vào với ffmpeg:

ffmpeg -i INPUT -filter_complex asplit = 5 OUTPUT

zmq, azmq
Nhận các lệnh được gửi qua ứng dụng khách libzmq và chuyển tiếp chúng tới các bộ lọc trong
bộ lọc.

"zmq" và "azmq" hoạt động như một bộ lọc chuyển qua. "zmq" phải được chèn vào giữa hai video
bộ lọc, "azmq" giữa hai bộ lọc âm thanh.

Để bật các bộ lọc này, bạn cần cài đặt thư viện libzmq và các tiêu đề và định cấu hình
FFmpeg với "--enable-libzmq".

Để biết thêm thông tin về libzmq, hãy xem:http://www.zeromq.org/>

Bộ lọc "zmq" và "azmq" hoạt động như một máy chủ libzmq, máy chủ này nhận các thư được gửi qua
một giao diện mạng được xác định bởi liên kết_địa chỉ tùy chọn.

Tin nhắn nhận được phải ở dạng:

[ ]

MỤC TIÊU chỉ định mục tiêu của lệnh, thường là tên của lớp bộ lọc hoặc
tên phiên bản bộ lọc cụ thể.

COMMAND chỉ định tên của lệnh cho bộ lọc đích.

ARG là tùy chọn và chỉ định danh sách đối số tùy chọn cho COMMAND.

Sau khi nhận, tin nhắn được xử lý và lệnh tương ứng được đưa vào
đồ thị bộ lọc. Tùy thuộc vào kết quả, bộ lọc sẽ gửi trả lời cho khách hàng,
áp dụng định dạng:




THÔNG ĐIỆP Là tùy chọn.

Các ví dụ

Nhìn vào tools / zmqsend ví dụ về ứng dụng khách zmq có thể được sử dụng để gửi lệnh
được xử lý bởi các bộ lọc này.

Hãy xem xét biểu đồ lọc sau được tạo bởi ffplay

ffplay -dumpgraph 1 -f lavfi "
color = s = 100x100: c = red [l];
color = s = 100x100: c = blue [r];
nullsrc = s = 200x100, zmq [bg];
[bg] [l] lớp phủ [bg + l];
[bg + l] [r] overlay = x = 100 "

Để thay đổi màu bên trái của video, bạn có thể sử dụng lệnh sau:

echo Parsed_color_0 c màu vàng | tools / zmqsend

Để thay đổi bên phải:

echo Parsed_color_1 c màu hồng | tools / zmqsend

MULTIMEDIA NGUỒN


Dưới đây là mô tả về các nguồn đa phương tiện hiện có.

một bộ phim
Điều này cũng giống như phim nguồn, ngoại trừ nó chọn một luồng âm thanh theo mặc định.

phim
Đọc (các) luồng âm thanh và / hoặc video từ bộ chứa phim.

Nó chấp nhận các tham số sau:

tên tập tin
Tên của tài nguyên để đọc (không nhất thiết phải là một tệp; nó cũng có thể là một thiết bị hoặc một
luồng được truy cập thông qua một số giao thức).

tên_định dạng, f
Chỉ định định dạng giả định cho phim để đọc và có thể là tên của
thùng chứa hoặc một thiết bị đầu vào. Nếu không được chỉ định, định dạng được đoán từ tên bộ phim
hoặc bằng cách thăm dò.

tìm kiếm_điểm, sp
Chỉ định điểm tìm kiếm trong vài giây. Các khung sẽ được xuất ra bắt đầu từ lần tìm kiếm này
điểm. Tham số được đánh giá bằng "av_strtod", vì vậy giá trị số có thể là
hậu tố bởi một hậu tố IS. Giá trị mặc định là "0".

dòng, s
Chỉ định các luồng để đọc. Một số luồng có thể được chỉ định, phân tách bằng "+". Các
sau đó nguồn sẽ có bao nhiêu đầu ra, theo cùng một thứ tự. Cú pháp được giải thích trong
phần `` Bộ chỉ định luồng '' trong hướng dẫn ffmpeg. Hai tên đặc biệt, "dv" và
"da" lần lượt chỉ định luồng video và âm thanh mặc định (phù hợp nhất). Mặc định là
"dv" hoặc "da" nếu bộ lọc được gọi là "amovie".

luồng_index, si
Chỉ định chỉ mục của luồng video để đọc. Nếu giá trị là -1 thì phù hợp nhất
luồng video sẽ được chọn tự động. Giá trị mặc định là "-1". Không được chấp nhận. Nếu như
bộ lọc được gọi là "amovie", nó sẽ chọn âm thanh thay vì video.

vòng lặp
Chỉ định số lần đọc luồng theo trình tự. Nếu giá trị nhỏ hơn 1,
luồng sẽ được đọc lại nhiều lần. Giá trị mặc định là "1".

Lưu ý rằng khi bộ phim được lặp lại, các dấu thời gian nguồn không bị thay đổi, vì vậy nó sẽ
tạo dấu thời gian tăng không đơn điệu.

Nó cho phép chồng video thứ hai lên trên đầu vào chính của một đồ thị bộ lọc, như được hiển thị trong
biểu đồ này:

đầu vào -----------> deltapts0 -> overlay -> đầu ra
^
|
phim -> quy mô -> deltapts1 ------- +

Các ví dụ

· Bỏ qua 3.2 giây kể từ khi bắt đầu tệp AVI in.avi và phủ nó lên trên
đầu vào có nhãn "in":

movie = in.avi: seek_point = 3.2, scale = 180: -1, setpts = PTS-STARTPTS [over];
[in] setpts = PTS-STARTPTS [chính];
[main] [over] overlay = 16: 16 [out]

· Đọc từ thiết bị video4linux2 và phủ nó lên trên đầu vào có nhãn "in":

movie = / dev / video0: f = video4linux2, scale = 180: -1, setpts = PTS-STARTPTS [over];
[in] setpts = PTS-STARTPTS [chính];
[main] [over] overlay = 16: 16 [out]

· Đọc luồng video đầu tiên và luồng âm thanh với id 0x81 từ dvd.vob; video
được kết nối với pad có tên "video" và âm thanh được kết nối với pad có tên
"âm thanh":

phim = dvd.vob: s = v: 0 + # 0x81 [video] [âm thanh]

Sử dụng ffplay-all trực tuyến bằng các dịch vụ onworks.net


Máy chủ & Máy trạm miễn phí

Tải xuống ứng dụng Windows & Linux

  • 1
    Máy pha
    Máy pha
    Phaser là một công cụ mở nhanh, miễn phí và thú vị
    nguồn HTML5 trò chơi khung cung cấp
    Hiển thị WebGL và Canvas trên
    trình duyệt web trên máy tính để bàn và thiết bị di động. Trò chơi
    có thể được đồng ...
    Tải xuống Phaser
  • 2
    Động cơ VASSAL
    Động cơ VASSAL
    VASSAL là một công cụ trò chơi để tạo
    phiên bản điện tử của bảng truyền thống
    và các trò chơi bài. Nó cung cấp hỗ trợ cho
    kết xuất và tương tác mảnh trò chơi,
    và ...
    Tải xuống Công cụ VASSAL
  • 3
    OpenPDF - Ngã ba của iText
    OpenPDF - Ngã ba của iText
    OpenPDF là một thư viện Java để tạo
    và chỉnh sửa các tệp PDF bằng LGPL và
    Giấy phép nguồn mở MPL. OpenPDF là
    Mã nguồn mở LGPL/MPL kế thừa của iText,
    có ...
    Tải xuống OpenPDF - Một nhánh của iText
  • 4
    SAGA GIS
    SAGA GIS
    SAGA - Hệ thống tự động
    Phân tích khoa học địa lý - là một địa lý
    Phần mềm Hệ thống Thông tin (GIS) với
    khả năng to lớn cho dữ liệu địa lý
    chế biến và ana ...
    Tải xuống SAGA GIS
  • 5
    Hộp công cụ cho Java / JTOpen
    Hộp công cụ cho Java / JTOpen
    Hộp công cụ IBM dành cho Java/JTOpen là một
    thư viện các lớp Java hỗ trợ
    lập trình client/server và internet
    các mô hình cho một hệ thống chạy OS/400,
    i5/OS, hoặc...
    Tải xuống Hộp công cụ cho Java/JTOpen
  • 6
    D3.js
    D3.js
    D3.js (hoặc D3 cho Tài liệu hướng dữ liệu)
    là một thư viện JavaScript cho phép bạn
    để tạo dữ liệu động, tương tác
    trực quan hóa trong trình duyệt web. Với D3
    bạn...
    Tải xuống D3.js
  • Khác »

Lệnh Linux

Ad