ພາສາອັງກິດພາສາຝຣັ່ງແອສປາໂຍນ

Ad


OnWorks favicon

ffserver-all - ອອນລາຍໃນຄລາວ

ດໍາເນີນການ ffserver-all ໃນ OnWorks ຜູ້ໃຫ້ບໍລິການໂຮດຕິ້ງຟຣີຜ່ານ Ubuntu Online, Fedora Online, Windows online emulator ຫຼື MAC OS online emulator

ນີ້ແມ່ນຄໍາສັ່ງ ffserver-all ທີ່ສາມາດດໍາເນີນການໄດ້ໃນ OnWorks ຜູ້ໃຫ້ບໍລິການໂຮດຕິ້ງຟຣີໂດຍໃຊ້ຫນຶ່ງໃນຫຼາຍບ່ອນເຮັດວຽກອອນໄລນ໌ຂອງພວກເຮົາເຊັ່ນ Ubuntu Online, Fedora Online, Windows online emulator ຫຼື MAC OS online emulator

ໂຄງການ:

NAME


ffserver - ເຄື່ອງແມ່ຂ່າຍວິດີໂອ ffserver

ສະຫຼຸບສັງລວມ


ffserver [ທາງເລືອກໃນການ]

ລາຍລະອຽດ


ffserver ເປັນເຊີບເວີ streaming ສໍາລັບທັງສຽງແລະວິດີໂອ. ມັນ​ສະ​ຫນັບ​ສະ​ຫນູນ​ອາ​ຫານ​ສົດ​ຈໍາ​ນວນ​ຫນຶ່ງ​,
ການຖ່າຍທອດຈາກໄຟລ໌ ແລະເວລາປ່ຽນຢູ່ໃນຟີດສົດ. ທ່ານ​ສາ​ມາດ​ຊອກ​ຫາ​ຕໍາ​ແຫນ່ງ​ໃນ​
ຜ່ານແຕ່ລະຟີດສົດ, ໃຫ້ທ່ານລະບຸບ່ອນເກັບຂໍ້ມູນໃຫຍ່ພຽງພໍ.

ffserver ຖືກຕັ້ງຄ່າໂດຍຜ່ານໄຟລ໌ການຕັ້ງຄ່າ, ເຊິ່ງຖືກອ່ານໃນຕອນເລີ່ມຕົ້ນ. ຖ້າ​ບໍ່
ລະບຸຢ່າງຊັດເຈນ, ມັນຈະອ່ານຈາກ /etc/ffserver.conf.

ffserver ໄດ້​ຮັບ​ໄຟລ​໌​ທີ່​ບັນ​ທຶກ​ໄວ້​ລ່ວງ​ຫນ້າ​ຫຼື FFM streams ຈາກ​ບາງ​ ffmpeg ຕົວ​ຢ່າງ​ເປັນ​ການ​ປ້ອນ​ຂໍ້​ມູນ​,
ຈາກນັ້ນຖ່າຍທອດພວກມັນຜ່ານ RTP/RTSP/HTTP.

An ffserver instance ຈະຟັງບາງພອດຕາມທີ່ລະບຸໄວ້ໃນໄຟລ໌ການຕັ້ງຄ່າ. ເຈົ້າ
ສາມາດເປີດຕົວຫນຶ່ງຫຼືຫຼາຍຕົວຢ່າງຂອງ ffmpeg ແລະສົ່ງສາຍ FFM ໜຶ່ງ ຫຼືຫຼາຍກວ່ານັ້ນໄປຫາພອດ
ບ່ອນທີ່ ffserver ຄາດວ່າຈະໄດ້ຮັບພວກມັນ. ທາງເລືອກອື່ນ, ທ່ານສາມາດເຮັດ ffserver ເປີດຕົວ
ດັ່ງກ່າວ ffmpeg ຕົວຢ່າງໃນຕອນເລີ່ມຕົ້ນ.

ກະແສການປ້ອນຂໍ້ມູນເອີ້ນວ່າຟີດ, ແລະແຕ່ລະອັນແມ່ນລະບຸໂດຍ " "ພາກໃນ
ແຟ້ມການຕັ້ງຄ່າ.

ສໍາລັບແຕ່ລະອາຫານທ່ານສາມາດມີນ້ໍາຜົນຜະລິດທີ່ແຕກຕ່າງກັນໃນຮູບແບບຕ່າງໆ, ແຕ່ລະຄົນໄດ້ລະບຸໄວ້
ໂດຍ " " ພາກສ່ວນໃນໄຟລ໌ການຕັ້ງຄ່າ.

ລາຍລະອຽດ ລາຍລະອຽດ


ffserver ເຮັດວຽກໂດຍການສົ່ງຕໍ່ສາຍນ້ໍາເຂົ້າລະຫັດໂດຍ ffmpeg, ຫຼືການຖ່າຍທອດທີ່ບັນທຶກໄວ້ລ່ວງໜ້າຊຶ່ງເປັນ
ອ່ານຈາກແຜ່ນ.

ທີ່ຊັດເຈນ, ffserver ເຮັດຫນ້າທີ່ເປັນເຄື່ອງແມ່ຂ່າຍ HTTP, ຍອມຮັບຄໍາຮ້ອງຂໍ POST ຈາກ ffmpeg ທີ່ຈະໄດ້ມາ
ກະແສເພື່ອເຜີຍແຜ່, ແລະໃຫ້ບໍລິການລູກຄ້າ RTSP ຫຼືລູກຄ້າ HTTP ໄດ້ຮັບຄໍາຮ້ອງຂໍທີ່ມີ
ຖ່າຍທອດເນື້ອຫາສື່.

ອາ ຫານ ເປັນ FFM stream ສ້າງໂດຍ ffmpeg, ແລະຖືກສົ່ງໄປຫາທ່າເຮືອທີ່ ffserver ກໍາລັງຟັງ.

ແຕ່ລະຟີດແມ່ນຖືກກໍານົດໂດຍຊື່ທີ່ເປັນເອກະລັກ, ທີ່ສອດຄ້ອງກັບຊື່ຂອງຊັບພະຍາກອນ
published on ffserver, ແລະຖືກຕັ້ງຄ່າໂດຍພາກສ່ວນ "Feed" ທີ່ອຸທິດຕົນໃນ
ແຟ້ມການຕັ້ງຄ່າ.

URL ເຜີຍແຜ່ຟີດແມ່ນໃຫ້ໂດຍ:

http://<ffserver_ip_address>:<http_port>/<feed_name>

ບ່ອນທີ່ ffserver_ip_address ແມ່ນທີ່ຢູ່ IP ຂອງເຄື່ອງທີ່ ffserver ຖືກ​ຕິດ​ຕັ້ງ​,
http_port ແມ່ນໝາຍເລກພອດຂອງເຊີບເວີ HTTP (ກຳນົດຄ່າຜ່ານ HTTPPort ທາງ​ເລືອກ​)
ແລະ feed_name ແມ່ນຊື່ຂອງຟີດທີ່ສອດຄ້ອງກັນທີ່ກຳນົດໄວ້ໃນໄຟລ໌ການຕັ້ງຄ່າ.

ແຕ່ລະຟີດແມ່ນກ່ຽວຂ້ອງກັບໄຟລ໌ທີ່ເກັບໄວ້ໃນແຜ່ນ. ໄຟລ໌ທີ່ເກັບໄວ້ນີ້ຖືກນໍາໃຊ້ເພື່ອ
ສົ່ງ​ຂໍ້​ມູນ​ທີ່​ບັນ​ທຶກ​ໄວ້​ລ່ວງ​ຫນ້າ​ໃຫ້​ຜູ້ນ​ໄວ​ເທົ່າ​ທີ່​ເປັນ​ໄປ​ໄດ້​ໃນ​ເວ​ລາ​ທີ່​ມີ​ເນື້ອ​ໃນ​ໃຫມ່​ເພີ່ມ​ຂຶ້ນ​ໃນ​ຕົວ​ຈິງ​.
ເວລາໄປຫາກະແສ.

"ການຖ່າຍທອດສົດ" ຫຼື "ການຖ່າຍທອດ" ແມ່ນແຫຼ່ງທີ່ມາໂດຍ ffserver, ແລະ​ເຮັດ​ໃຫ້​ສາ​ມາດ​ເຂົ້າ​ເຖິງ​
ຜ່ານໂປໂຕຄອນ HTTP ໃຫ້ກັບລູກຄ້າ.

ການຖ່າຍທອດສາມາດເຊື່ອມຕໍ່ກັບຟີດ, ຫຼືໄຟລ໌. ໃນກໍລະນີທໍາອິດ, ນ້ໍາຈັດພີມມາ
ຖືກສົ່ງຕໍ່ຈາກຟີດທີ່ສອດຄ້ອງກັນທີ່ສ້າງຂຶ້ນໂດຍຕົວຢ່າງທີ່ເຮັດວຽກຂອງ ffmpeg, ໃນ
ກໍລະນີທີສອງ, ການຖ່າຍທອດໄດ້ຖືກອ່ານຈາກໄຟລ໌ທີ່ບັນທຶກໄວ້ກ່ອນ.

ແຕ່ລະສາຍນ້ໍາແມ່ນຖືກກໍານົດໂດຍຊື່ທີ່ເປັນເອກະລັກ, ທີ່ສອດຄ້ອງກັນກັບຊື່ຂອງຊັບພະຍາກອນ
ຮັບຜິດຊອບໂດຍ ffserver, ແລະຖືກຕັ້ງຄ່າໂດຍພາກສ່ວນ "ສະຕຣີມ" ສະເພາະໃນການຕັ້ງຄ່າ
ຍື່ນ.

ການເຂົ້າເຖິງການຖ່າຍທອດ HTTP URL ແມ່ນໃຫ້ໂດຍ:

http://<ffserver_ip_address>:<http_port>/<stream_name>[<options>]

ການເຂົ້າເຖິງການຖ່າຍທອດ RTSP URL ແມ່ນໃຫ້ໂດຍ:

http://<ffserver_ip_address>:<rtsp_port>/<stream_name>[<options>]

stream_name ແມ່ນຊື່ຂອງກະແສທີ່ສອດຄ້ອງກັນທີ່ກຳນົດໄວ້ໃນໄຟລ໌ການຕັ້ງຄ່າ.
ທາງເລືອກໃນການ ແມ່ນບັນຊີລາຍຊື່ຂອງທາງເລືອກທີ່ລະບຸໄວ້ຫຼັງຈາກ URL ທີ່ມີຜົນກະທົບຕໍ່ວິທີການຖ່າຍທອດ
ຮັບຜິດຊອບໂດຍ ffserver. http_port ແລະ rtsp_port ແມ່ນພອດ HTTP ແລະ RTSP ທີ່ຖືກຕັ້ງຄ່າດ້ວຍ
ທາງເລືອກ HTTPPort ແລະ RTSPport ຕາມລໍາດັບ.

ໃນກໍລະນີທີ່ການຖ່າຍທອດຖືກເຊື່ອມໂຍງກັບຟີດ, ຕົວກໍານົດການເຂົ້າລະຫັດຈະຕ້ອງຖືກຕັ້ງຄ່າໃນ
ການຕັ້ງຄ່າການຖ່າຍທອດ. ເຂົາເຈົ້າຖືກສົ່ງໄປຫາ ffmpeg ເມື່ອຕັ້ງການເຂົ້າລະຫັດ. ນີ້
ອະນຸຍາດໃຫ້ ffserver ເພື່ອກໍານົດຕົວກໍານົດການເຂົ້າລະຫັດທີ່ໃຊ້ໂດຍ ffmpeg ຕົວເຂົ້າລະຫັດ.

ໄດ້ ffmpeg override_ffserver ທາງເລືອກ commandline ອະນຸຍາດໃຫ້ຫນຶ່ງເພື່ອ override ການເຂົ້າລະຫັດ
ຕົວກໍານົດການກໍານົດໂດຍເຄື່ອງແມ່ຂ່າຍ.

ການຖ່າຍທອດຫຼາຍອັນສາມາດເຊື່ອມຕໍ່ກັບຟີດດຽວກັນໄດ້.

ຕົວຢ່າງ, ທ່ານສາມາດມີສະຖານະການທີ່ອະທິບາຍໂດຍກາຟຕໍ່ໄປນີ້:

________________________ __________
| | | |
ffmpeg 1 -----| ອາຫານ 1 |-----| ກະແສ 1 |
\ |_________|\ |__________|
\ \
\ \ __________
\ \ | |
\ \| ກະແສ 2 |
\ |__________|
\
\ _________ __________
\ | | | |
\| ອາຫານ 2 |-----| ກະແສ 3 |
|_________| |__________|

________________________ __________
| | | |
ffmpeg 2 -----| ອາຫານ 3 |-----| ກະແສ 4 |
|_________| |__________|

________________________ __________
| | | |
| ໄຟລ໌ 1 |-----| ກະແສ 5 |
|_________| |__________|

FFM, FFM2 ຮູບແບບ
FFM ແລະ FFM2 ແມ່ນຮູບແບບທີ່ໃຊ້ໂດຍ ffserver. ພວກເຂົາເຈົ້າອະນຸຍາດໃຫ້ເກັບຮັກສາຄວາມຫລາກຫລາຍຂອງວິດີໂອແລະ
ການຖ່າຍທອດສຽງ ແລະຕົວເລືອກການເຂົ້າລະຫັດ, ແລະສາມາດເກັບຮັກສາພາກສ່ວນເວລາເຄື່ອນທີ່ຂອງອັນເປັນນິດ
ຮູບເງົາຫຼືຮູບເງົາທັງຫມົດ.

FFM ແມ່ນສະບັບສະເພາະ, ແລະມີຄວາມເຂົ້າກັນໄດ້ຈໍາກັດຂອງໄຟລ໌ FFM ທີ່ສ້າງຂຶ້ນໂດຍຫນຶ່ງ
ສະບັບຂອງ ffmpeg/ffserver ແລະສະບັບອື່ນຂອງ ffmpeg/ffserver. ມັນອາດຈະເຮັດວຽກແຕ່ມັນແມ່ນ
ບໍ່ຮັບປະກັນການເຮັດວຽກ.

FFM2 ແມ່ນສາມາດຂະຫຍາຍໄດ້ໃນຂະນະທີ່ຮັກສາຄວາມເຂົ້າກັນໄດ້ແລະຄວນເຮັດວຽກລະຫວ່າງຄວາມແຕກຕ່າງ
ຮຸ່ນຂອງເຄື່ອງມື. FFM2 ເປັນຄ່າເລີ່ມຕົ້ນ.

ສະຖານະພາບ ນ້ໍາ
ffserver ຮອງຮັບການໂຕ້ຕອບ HTTP ທີ່ເປີດເຜີຍສະຖານະປັດຈຸບັນຂອງເຊີບເວີ.

ພຽງແຕ່ຊີ້ຕົວທ່ອງເວັບຂອງທ່ານໄປຫາທີ່ຢູ່ຂອງສະຕຣີມສະຖານະພິເສດທີ່ລະບຸໄວ້ໃນ
ແຟ້ມການຕັ້ງຄ່າ.

ຕົວຢ່າງຖ້າທ່ານມີ:


ສະຖານະຮູບແບບ

# ອະນຸຍາດໃຫ້ປະຊາຊົນທ້ອງຖິ່ນໄດ້ຮັບສະຖານະພາບເທົ່ານັ້ນ
ACL ອະນຸຍາດໃຫ້ localhost
ACL ອະນຸຍາດ 192.168.0.0 192.168.255.255


ຫຼັງຈາກນັ້ນ, ເຄື່ອງແມ່ຂ່າຍຈະປະກາດຫນ້າທີ່ມີຂໍ້ມູນສະຖານະພາບໃນເວລາທີ່ນ້ໍາພິເສດ
status.html ຖືກຮ້ອງຂໍ.

ວິທີການ do I ເຮັດໃຫ້ it ເຮັດວຽກ?
ໃນຖານະເປັນການທົດສອບງ່າຍດາຍ, ພຽງແຕ່ດໍາເນີນການສອງແຖວຄໍາສັ່ງຕໍ່ໄປນີ້ບ່ອນທີ່ INPUTFILE ເປັນບາງໄຟລ໌
ທີ່ທ່ານສາມາດຖອດລະຫັດດ້ວຍ ffmpeg:

ffserver -f doc/ffserver.conf &
ffmpeg -i INPUTFILE http://localhost:8090/feed1.ffm

ໃນຈຸດນີ້, ທ່ານຄວນຈະສາມາດໄປຫາເຄື່ອງ Windows ຂອງທ່ານແລະໄຟໄຫມ້ Windows Media
ຜູ້ນ (WMP). ໄປທີ່ເປີດ URL ແລະໃສ່

http://<linuxbox>:8090/test.asf

ທ່ານຄວນ (ຫຼັງຈາກການຊັກຊ້າສັ້ນ) ເບິ່ງວິດີໂອແລະໄດ້ຍິນສຽງ.

ຄໍາ​ເຕືອນ​: ຄວາມ​ພະ​ຍາ​ຍາມ​ເພື່ອ​ນ​້​ໍ​າ test1.mpg ບໍ່​ໄດ້​ເຮັດ​ວຽກ​ກັບ WMP ຍ້ອນ​ວ່າ​ມັນ​ພະ​ຍາ​ຍາມ​ທີ່​ຈະ​ໂອນ​.
ໄຟລ໌ທັງຫມົດກ່ອນທີ່ຈະເລີ່ມຫຼິ້ນ. ເຊັ່ນ​ດຽວ​ກັນ​ແມ່ນ​ເປັນ​ຄວາມ​ຈິງ​ຂອງ​ໄຟລ​໌ AVI​.

ທ່ານ​ຄວນ​ຈະ​ແກ້​ໄຂ​ ffserver.conf ໄຟລ໌ໃຫ້ເຫມາະສົມກັບຄວາມຕ້ອງການຂອງທ່ານ (ໃນແງ່ຂອງອັດຕາກອບແລະອື່ນໆ).
ຈາກນັ້ນຕິດຕັ້ງ ffserver ແລະ ffmpeg, ຂຽນສະຄຣິບເພື່ອເລີ່ມຕົ້ນພວກມັນ, ແລະທ່ານໄປ.

ແມ່ນ​ຫຍັງ ອື່ນ ສາມາດເຮັດໄດ້ it ເຮັດແນວໃດ?
ທ່ານ​ສາ​ມາດ​ຫຼິ້ນ​ວິ​ດີ​ໂອ​ຈາກ​ໄຟລ​໌ .ffm ທີ່​ໄດ້​ບັນ​ທຶກ​ໄວ້​ກ່ອນ​ຫນ້າ​ນີ້​. ຢ່າງໃດກໍຕາມ, ມີ a
ຈໍານວນຄໍາເຕືອນ, ລວມທັງຄວາມຈິງທີ່ວ່າຕົວກໍານົດການ ffserver ຕ້ອງກົງກັບຕົ້ນສະບັບ
ຕົວກໍານົດການທີ່ໃຊ້ເພື່ອບັນທຶກໄຟລ໌. ຖ້າພວກເຂົາບໍ່ເຮັດ, ຫຼັງຈາກນັ້ນ ffserver ຈະລຶບໄຟລ໌ກ່ອນ
ການ​ບັນ​ທຶກ​ເຂົ້າ​ໄປ​ໃນ​ມັນ​. (ຕອນນີ້ຂ້ອຍຂຽນເລື່ອງນີ້, ມັນເບິ່ງຄືວ່າແຕກຫັກ).

ທ່ານ​ສາ​ມາດ fiddle ກັບ​ຈໍາ​ນວນ​ຫຼາຍ​ຂອງ​ທາງ​ເລືອກ codec ແລະ​ຕົວ​ກໍາ​ນົດ​ການ​ເຂົ້າ​ລະ​ຫັດ​, ແລະ​ມີ​
bunch ຕົວກໍານົດການເພີ່ມເຕີມທີ່ທ່ານບໍ່ສາມາດຄວບຄຸມ. ປະກາດຂໍ້ຄວາມໃສ່ລາຍຊື່ທາງໄປສະນີຖ້າມີ
ແມ່ນບາງຕົວກໍານົດການ 'ຕ້ອງມີ'. ຊອກຫາຢູ່ໃນ ffserver.conf ສໍາລັບບັນຊີລາຍຊື່ຂອງປະຈຸບັນ
ການຄວບຄຸມທີ່ມີຢູ່.

ມັນຈະສ້າງໄຟລ໌ ASX ຫຼື RAM ທີ່ມັກໃຊ້ໃນຕົວທ່ອງເວັບໂດຍອັດຕະໂນມັດ. ເຫຼົ່ານີ້
ໄຟລ໌ຕົວຈິງແລ້ວແມ່ນການປ່ຽນເສັ້ນທາງໄປຫາໄຟລ໌ ASF ຫຼື RM ທີ່ຕິດພັນ. ເຫດຜົນສໍາລັບການນີ້ແມ່ນ
ທີ່ຕົວທ່ອງເວັບມັກຈະດຶງໄຟລ໌ທັງຫມົດກ່ອນທີ່ຈະເລີ່ມຕົ້ນ viewer ພາຍນອກ. ໄດ້
ໄຟລ໌ redirection ມີຂະຫນາດນ້ອຍຫຼາຍແລະສາມາດໂອນໄດ້ໄວ. [ກະແສຕົວຂອງມັນເອງແມ່ນ
ເລື້ອຍໆ 'ບໍ່ມີຂອບເຂດ' ແລະດັ່ງນັ້ນຕົວທ່ອງເວັບພະຍາຍາມດາວໂຫລດມັນແລະບໍ່ເຄີຍສໍາເລັດ.]

ຄໍາແນະນໍາ
* ເມື່ອ​ທ່ານ​ເຊື່ອມ​ຕໍ່​ກັບ​ການ​ຖ່າຍ​ທອດ​ສົດ​, ຜູ້​ຫຼິ້ນ​ສ່ວນ​ໃຫຍ່ (WMP​, RA​, ແລະ​ອື່ນໆ​) ຕ້ອງ​ການ​ທີ່​ຈະ​ປ້ອງ​ກັນ​ຄວາມ​ແນ່​ນອນ​.
ຈໍານວນວິນາທີຂອງວັດສະດຸເພື່ອໃຫ້ພວກເຂົາສາມາດສະແດງສັນຍານຢ່າງຕໍ່ເນື່ອງ. ແນວໃດກໍ່ຕາມ,
ffserver (ໂດຍຄ່າເລີ່ມຕົ້ນ) ເລີ່ມສົ່ງຂໍ້ມູນໃນເວລາຈິງ. ນີ້ຫມາຍຄວາມວ່າມີການຢຸດຊົ່ວຄາວຂອງ
ສອງສາມວິນາທີໃນຂະນະທີ່ buffering ກໍາລັງຖືກເຮັດໂດຍຜູ້ນ. ຂ່າວດີແມ່ນວ່ານີ້
ສາມາດປິ່ນປົວໄດ້ໂດຍການເພີ່ມ '?buffer=5' ໃສ່ທ້າຍ URL. ນີ້ຫມາຍຄວາມວ່ານ້ໍາ
ຄວນເລີ່ມຕົ້ນ 5 ວິນາທີໃນອະດີດ - ແລະດັ່ງນັ້ນ 5 ວິນາທີທໍາອິດຂອງການຖ່າຍທອດຈະຖືກສົ່ງເປັນ
ໄວເທົ່າທີ່ເຄືອຂ່າຍຈະອະນຸຍາດ. ຫຼັງຈາກນັ້ນມັນຈະຊ້າລົງກັບເວລາທີ່ແທ້ຈິງ. ນີ້​ເປັນ​ທີ່​ສັງ​ເກດ
ປັບປຸງປະສົບການການເລີ່ມຕົ້ນ.

ນອກນັ້ນທ່ານຍັງສາມາດເພີ່ມຄໍາຖະແຫຼງການ 'Preroll 15' ເຂົ້າໄປໃນ ffserver.conf ທີ່ຈະເພີ່ມ 15.
prebuffering ຄັ້ງ​ທີ​ສອງ​ໃນ​ການ​ຮ້ອງ​ຂໍ​ທັງ​ຫມົດ​ທີ່​ບໍ່​ດັ່ງ​ນັ້ນ​ບໍ່​ໄດ້​ລະ​ບຸ​ເວ​ລາ​. ເພີ່ມ​ເຕີມ,
ffserver ຈະຂ້າມເຟຣມຈົນກວ່າຈະພົບເຫັນ key_frame. ນີ້ຊ່ວຍຫຼຸດຜ່ອນການເລີ່ມຕົ້ນຕື່ມອີກ
ຊັກຊ້າໂດຍການບໍ່ໂອນຂໍ້ມູນທີ່ຈະຍົກເລີກ.

ເປັນຫຍັງ ບໍ່ ໄດ້ ?ບັກ / ເລື່ອນກ່ອນ ຢຸດ ການເຮັດວຽກ ຫຼັງຈາກ a ເວລາ?
ມັນ turns ໃຫ້​ເຫັນ​ວ່າ (ໃນ​ເຄື່ອງ​ຂອງ​ຂ້າ​ພະ​ເຈົ້າ​ຢ່າງ​ຫນ້ອຍ) ຈ​ໍ​າ​ນວນ​ຂອງ​ເຟຣມ grabbed ສົບ​ຜົນ​ສໍາ​ເລັດ​ແມ່ນ
ຫນ້ອຍກ່ວາຈໍານວນທີ່ຄວນຈະຖືກຈັບ. ນີ້ຫມາຍຄວາມວ່າເວລາໃນ
ກະແສຂໍ້ມູນທີ່ຖືກເຂົ້າລະຫັດແມ່ນຢູ່ຫລັງເວລາຈິງ. ນີ້ຫມາຍຄວາມວ່າຖ້າທ່ານເວົ້າວ່າ 'Preroll 10',
ຫຼັງຈາກນັ້ນ, ໃນເວລາທີ່ stream ໄດ້ຮັບ 10 ຫຼືຫຼາຍກວ່າວິນາທີຫລັງ, ບໍ່ມີ Preroll ຊ້າຍ.

ການແກ້ໄຂນີ້ຮຽກຮ້ອງໃຫ້ມີການປ່ຽນແປງພາຍໃນຂອງວິທີການປະຕິບັດການສະແຕມເວລາ.

ບໍ່ ໄດ້ "?date=" stuff ເຮັດວຽກ.
ແມ່ນແລ້ວ (ຂຶ້ນກັບຂໍ້ຈຳກັດທີ່ລະບຸໄວ້ຂ້າງເທິງ). ໃຫ້ສັງເກດວ່າທຸກຄັ້ງທີ່ທ່ານເລີ່ມຕົ້ນ
ffserver, ມັນລຶບໄຟລ໌ ffm (ຖ້າຕົວກໍານົດການໃດໆມີການປ່ຽນແປງ), ດັ່ງນັ້ນຈຶ່ງລຶບສິ່ງທີ່
ທ່ານ​ໄດ້​ບັນ​ທຶກ​ໄວ້​ກ່ອນ​.

ຮູບແບບຂອງ "?date=x" ແມ່ນມີຄວາມຍືດຫຍຸ່ນພໍສົມຄວນ. ທ່ານຄວນໃຊ້ຫນຶ່ງໃນສິ່ງຕໍ່ໄປນີ້
ຮູບແບບ ('T' ແມ່ນຕົວໜັງສື):

* YYYY-MM-DDTHH:MM:SS (ເວລາທ້ອງຖິ່ນ)
* YYYY-MM-DDTHH:MM:SSZ (UTC)

ທ່ານສາມາດຍົກເລີກ YYYY-MM-DD, ແລະຫຼັງຈາກນັ້ນມັນຫມາຍເຖິງວັນປະຈຸບັນ. ຢ່າງໃດກໍຕາມ, ໃຫ້ສັງເກດວ່າ
?date=16:00:00 ຫມາຍເຖິງ 16:00 ໃນມື້ປະຈຸບັນ - ນີ້ອາດຈະເປັນໃນອະນາຄົດແລະດັ່ງນັ້ນ
ຄົງຈະບໍ່ເປັນປະໂຫຍດ.

ທ່ານໃຊ້ອັນນີ້ໂດຍການເພີ່ມ ?date= ໃສ່ທ້າຍຂອງ URL ສໍາລັບການຖ່າຍທອດ. ຍົກ​ຕົວ​ຢ່າງ:
http://localhost:8080/test.asf?date=2002-07-26T23:05:00.

OPTIONS


ຕົວເລືອກຕົວເລກທັງໝົດ, ຖ້າບໍ່ໄດ້ລະບຸໄວ້ເປັນຢ່າງອື່ນ, ຍອມຮັບສະຕຣິງທີ່ເປັນຕົວແທນຂອງ a
ຕົວເລກເປັນ input, ເຊິ່ງອາດຈະປະຕິບັດຕາມຫນຶ່ງຂອງຄໍານໍາຫນ້າຫນ່ວຍ SI, ຕົວຢ່າງ: 'K',
'M', ຫຼື 'G'.

ຖ້າ 'i' ຖືກຕໍ່ທ້າຍກັບຄໍານໍາຫນ້າຫນ່ວຍ SI, ຄໍານໍາຫນ້າທີ່ສົມບູນຈະຖືກຕີຄວາມຫມາຍເປັນ
ຫົວໜ່ວຍນຳໜ້າສຳລັບການຄູນສອງ, ເຊິ່ງອີງໃສ່ອຳນາດຂອງ 1024 ແທນອຳນາດຂອງ
1000. ການຕໍ່ທ້າຍ 'B' ໃສ່ຄຳນຳໜ້າໜ່ວຍ SI ຈະຄູນຄ່າດ້ວຍ 8. ອັນນີ້ອະນຸຍາດໃຫ້ໃຊ້,
ຕົວຢ່າງ: 'KB', 'MiB', 'G' ແລະ 'B' ເປັນຕົວເລກຕໍ່ທ້າຍ.

ຕົວເລືອກທີ່ບໍ່ເອົາການໂຕ້ຖຽງແມ່ນຕົວເລືອກ boolean, ແລະກໍານົດຄ່າທີ່ສອດຄ້ອງກັນ
ກັບຄວາມຈິງ. ພວກເຂົາສາມາດຖືກຕັ້ງເປັນ false ໂດຍ prefix ຊື່ທາງເລືອກທີ່ມີ "ບໍ່". ຍົກ​ຕົວ​ຢ່າງ
ການນໍາໃຊ້ "-nofoo" ຈະກໍານົດທາງເລືອກ boolean ດ້ວຍຊື່ "foo" ເປັນຜິດ.

ນ້ໍາ specifiers
ຕົວເລືອກບາງຢ່າງຖືກນຳໃຊ້ຕໍ່ກະແສ, ເຊັ່ນ: bitrate ຫຼື codec. ຕົວລະບຸການຖ່າຍທອດຖືກນໍາໃຊ້ເພື່ອ
ລະ​ບຸ​ຢ່າງ​ຊັດ​ເຈນ​ວ່າ​ການ​ສະ​ຕ​ຣີມ(s​) ທາງ​ເລືອກ​ທີ່​ໃຫ້​ເປັນ​ຂອງ​.

ຕົວລະບຸການຖ່າຍທອດແມ່ນສະຕຣິງໂດຍທົ່ວໄປແລ້ວຕໍ່ທ້າຍກັບຊື່ທາງເລືອກ ແລະແຍກອອກຈາກມັນ
ໂດຍຈໍ້າສອງເມັດ. ເຊັ່ນ: "-codec:a:1 ac3" ມີຕົວລະບຸການຖ່າຍທອດ "a:1", ເຊິ່ງກົງກັບ
ກະແສສຽງທີສອງ. ດັ່ງນັ້ນ, ມັນຈະເລືອກເອົາຕົວແປງສັນຍານ ac3 ສໍາລັບການຖ່າຍທອດສຽງທີສອງ.

ຕົວລະບຸການຖ່າຍທອດສາມາດຈັບຄູ່ສະຕຣີມຫຼາຍອັນ, ດັ່ງນັ້ນທາງເລືອກນັ້ນຖືກນຳໃຊ້ກັບທັງໝົດ
ເຂົາເຈົ້າ. ເຊັ່ນ: ຕົວລະບຸການຖ່າຍທອດໃນ "-b:a 128k" ກົງກັບທຸກການຖ່າຍທອດສຽງ.

ຕົວລະບຸການຖ່າຍທອດຫວ່າງເປົ່າກົງກັບທຸກການຖ່າຍທອດ. ຕົວຢ່າງ, "-codec copy" ຫຼື "-codec:
ສຳເນົາ" ຈະຄັດລອກກະແສທັງໝົດໂດຍບໍ່ມີການເຂົ້າລະຫັດໃໝ່.

ຮູບແບບທີ່ເປັນໄປໄດ້ຂອງຕົວລະບຸການຖ່າຍທອດແມ່ນ:

stream_index
ກົງກັບກະແສກັບດັດຊະນີນີ້. ເຊັ່ນ: "-threads:1 4" ຈະກໍານົດການນັບ thread ສໍາລັບ
ກະແສທີສອງເຖິງ 4.

stream_type[:stream_index]
stream_type ແມ່ນຫນຶ່ງໃນຕໍ່ໄປນີ້: 'v' ຫຼື 'V' ສໍາລັບວິດີໂອ, 'a' ສໍາລັບສຽງ, 's' ສໍາລັບ
ຄໍາບັນຍາຍ, 'd' ສໍາລັບຂໍ້ມູນ, ແລະ 't' ສໍາລັບໄຟລ໌ແນບ. 'v' ກົງກັບສະຕຣີມວິດີໂອທັງໝົດ, 'V'
ກົງກັບວິດີໂອສະຕຣີມທີ່ບໍ່ໄດ້ແນບຮູບ, ຮູບຕົວຢ່າງວິດີໂອ ຫຼືໜ້າປົກ
ສິລະປະ. ຖ້າ stream_index ແມ່ນໃຫ້, ຫຼັງຈາກນັ້ນມັນກົງກັບຈໍານວນການຖ່າຍທອດ stream_index ກ່ຽວກັບ
ປະເພດ. ຖ້າບໍ່ດັ່ງນັ້ນ, ມັນກົງກັບກະແສທັງໝົດຂອງປະເພດນີ້.

p:program_id[:stream_index]
If stream_index ແມ່ນໃຫ້, ຫຼັງຈາກນັ້ນມັນກົງກັບນ້ໍາທີ່ມີຕົວເລກ stream_index ໃນ
ໂຄງການທີ່ມີ id program_id. ຖ້າບໍ່ດັ່ງນັ້ນ, ມັນກົງກັບກະແສທັງໝົດໃນໂປຣແກຣມ.

#stream_id or i:stream_id
ຈັບ​ຄູ່​ການ​ສະ​ຕ​ຣີມ​ໂດຍ id stream (ເຊັ່ນ PID ໃນ MPEG-TS container).

m:ທີ່ສໍາຄັນ[:ມູນຄ່າ]
ຈັບຄູ່ການຖ່າຍທອດດ້ວຍແທັກ metadata ທີ່ສໍາຄັນ ມີຄ່າທີ່ລະບຸໄວ້. ຖ້າ ມູນຄ່າ ບໍ່​ແມ່ນ
ທີ່ໃຫ້, ກົງກັບສະຕຣີມທີ່ມີແທັກທີ່ໃຫ້ມາດ້ວຍຄ່າໃດນຶ່ງ.

u ຈັບຄູ່ສະຕຣີມທີ່ມີການຕັ້ງຄ່າທີ່ສາມາດໃຊ້ໄດ້, ຕົວແປງສັນຍານຕ້ອງຖືກກຳນົດ ແລະທີ່ສຳຄັນ
ຂໍ້ມູນເຊັ່ນ: ມິຕິວິດີໂອ ຫຼືອັດຕາຕົວຢ່າງສຽງຕ້ອງມີຢູ່.

ໃຫ້ສັງເກດວ່າໃນ ffmpeg, ການຈັບຄູ່ໂດຍ metadata ພຽງແຕ່ຈະເຮັດວຽກຢ່າງຖືກຕ້ອງສໍາລັບໄຟລ໌ປ້ອນຂໍ້ມູນ.

generic ທາງເລືອກໃນການ
ທາງເລືອກເຫຼົ່ານີ້ຖືກແບ່ງປັນລະຫວ່າງເຄື່ອງມື ff*.

-L ສະແດງໃບອະນຸຍາດ.

-ຊ, -?, - ຊ່ວຍ​ເຫຼືອ​, - ຊ່ວຍ [arg]
ສະແດງການຊ່ວຍເຫຼືອ. ຕົວກໍານົດການທາງເລືອກອາດຈະຖືກກໍານົດເພື່ອພິມການຊ່ວຍເຫຼືອກ່ຽວກັບລາຍການສະເພາະໃດຫນຶ່ງ.
ຖ້າບໍ່ມີການລະບຸການໂຕ້ຖຽງ, ພຽງແຕ່ທາງເລືອກເຄື່ອງມືພື້ນຖານ (ບໍ່ກ້າວຫນ້າ) ຈະຖືກສະແດງ.

ມູນຄ່າທີ່ເປັນໄປໄດ້ຂອງ arg ແມ່ນ:

ຍາວ
ພິມຕົວເລືອກເຄື່ອງມືຂັ້ນສູງນອກຈາກຕົວເລືອກເຄື່ອງມືພື້ນຖານ.

ຢ່າງເຕັມທີ່
ພິມບັນຊີລາຍຊື່ເຕັມຂອງທາງເລືອກ, ລວມທັງທາງເລືອກທີ່ໃຊ້ຮ່ວມກັນແລະສ່ວນຕົວສໍາລັບຕົວເຂົ້າລະຫັດ,
ຕົວຖອດລະຫັດ, demuxers, muxers, ຕົວກອງ, ແລະອື່ນໆ.

ຕົວຖອດລະຫັດ=decoder_name
ພິມຂໍ້ມູນລະອຽດກ່ຽວກັບຕົວຖອດລະຫັດທີ່ມີຊື່ decoder_nameທີ່ຢູ່ ການນໍາໃຊ້ - ຖອດລະຫັດ
ທາງເລືອກທີ່ຈະໄດ້ຮັບບັນຊີລາຍຊື່ຂອງຕົວຖອດລະຫັດທັງຫມົດ.

encoder=encoder_name
ພິມຂໍ້ມູນລະອຽດກ່ຽວກັບຕົວເຂົ້າລະຫັດທີ່ມີຊື່ encoder_nameທີ່ຢູ່ ການນໍາໃຊ້ - ຕົວເຂົ້າລະຫັດ
ທາງເລືອກທີ່ຈະໄດ້ຮັບບັນຊີລາຍຊື່ຂອງຕົວເຂົ້າລະຫັດທັງຫມົດ.

demuxer=demuxer_name
ພິມຂໍ້ມູນລາຍລະອຽດກ່ຽວກັບ demuxer ຊື່ demuxer_nameທີ່ຢູ່ ການນໍາໃຊ້ - ຮູບ​ແບບ​
ທາງເລືອກທີ່ຈະໄດ້ຮັບບັນຊີລາຍຊື່ຂອງ demuxers ແລະ muxers ທັງຫມົດ.

muxer=muxer_name
ພິມລາຍລະອຽດກ່ຽວກັບ muxer ທີ່ມີຊື່ muxer_nameທີ່ຢູ່ ການນໍາໃຊ້ - ຮູບ​ແບບ​
ທາງເລືອກທີ່ຈະໄດ້ຮັບບັນຊີລາຍຊື່ຂອງ muxers ແລະ demuxers ທັງຫມົດ.

ການກັ່ນຕອງ =filter_name
ພິມລາຍລະອຽດກ່ຽວກັບຊື່ການກັ່ນຕອງ filter_nameທີ່ຢູ່ ການນໍາໃຊ້ - ການກັ່ນຕອງ
ທາງເລືອກທີ່ຈະໄດ້ຮັບບັນຊີລາຍຊື່ຂອງການກັ່ນຕອງທັງຫມົດ.

-ການປ່ຽນແປງ
ສະແດງສະບັບ.

- ຮູບ​ແບບ​
ສະແດງຮູບແບບທີ່ມີຢູ່ (ລວມທັງອຸປະກອນ).

- ອຸ​ປະ​ກອນ​
ສະແດງອຸປະກອນທີ່ມີຢູ່.

- ຕົວແປງສັນຍານ
ສະແດງຕົວແປງສັນຍານທັງໝົດທີ່ຮູ້ຈັກກັບ libavcodec.

ໃຫ້ສັງເກດວ່າຄໍາວ່າ 'codec' ຖືກນໍາໃຊ້ໃນທົ່ວເອກະສານນີ້ເປັນທາງລັດສໍາລັບ
ອັນໃດຖືກກວ່າເອີ້ນວ່າຮູບແບບບິດສະຕຣີມສື່.

- ຖອດລະຫັດ
ສະແດງຕົວຖອດລະຫັດທີ່ມີຢູ່.

- ຕົວເຂົ້າລະຫັດ
ສະແດງຕົວເຂົ້າລະຫັດທີ່ມີຢູ່ທັງໝົດ.

-bsfs
ສະແດງຕົວກອງ bitstream ທີ່ມີຢູ່.

- ໂປໂຕຄອນ
ສະແດງໂປຣໂຕຄອນທີ່ມີຢູ່.

- ການກັ່ນຕອງ
ສະແດງຕົວກອງ libavfilter ທີ່ມີຢູ່.

-pix_fmts
ສະແດງຮູບແບບ pixels ລວງທີ່ມີຢູ່.

-sample_fmts
ສະແດງຮູບແບບຕົວຢ່າງທີ່ມີຢູ່.

- ຮູບ​ແບບ​
ສະແດງຊື່ຊ່ອງ ແລະຮູບແບບຊ່ອງມາດຕະຖານ.

- ສີ
ສະແດງຊື່ສີທີ່ຮັບຮູ້.

- ແຫຼ່ງຂໍ້ມູນ ອຸປະກອນ[,ເລືອກ 1=val1[,ເລືອກ 2=val2]...]
ສະແດງແຫຼ່ງທີ່ກວດພົບອັດຕະໂນມັດຂອງອຸປະກອນປ້ອນຂໍ້ມູນ. ບາງອຸປະກອນອາດຈະໃຫ້ລະບົບ-
ຊື່ແຫຼ່ງທີ່ຂຶ້ນກັບທີ່ບໍ່ສາມາດກວດຫາອັດຕະໂນມັດໄດ້. ບັນຊີລາຍຊື່ທີ່ສົ່ງຄືນບໍ່ສາມາດເປັນ
ຖືວ່າສົມບູນສະເໝີ.

ffmpeg -sources pulse,server=192.168.0.4

- ອ່າງລ້າງມື ອຸປະກອນ[,ເລືອກ 1=val1[,ເລືອກ 2=val2]...]
ສະແດງບ່ອນຫລົ້ມຈົມທີ່ກວດພົບອັດຕະໂນມັດຂອງອຸປະກອນຜົນຜະລິດ. ບາງອຸປະກອນອາດຈະໃຫ້ລະບົບ-
ຊື່ sink ຂຶ້ນກັບທີ່ບໍ່ສາມາດກວດຫາອັດຕະໂນມັດ. ບັນ​ຊີ​ລາຍ​ຊື່​ກັບ​ຄືນ​ມາ​ບໍ່​ສາ​ມາດ​ຄາດ​ວ່າ​
ເພື່ອໃຫ້ສົມບູນສະເຫມີ.

ffmpeg -sinks pulse,server=192.168.0.4

- ລະ​ດັບ​ບັນ​ທຶກ​ [ຊ້ຳ+]loglevel | -v [ຊ້ຳ+]loglevel
ກໍານົດລະດັບການບັນທຶກທີ່ໃຊ້ໂດຍຫ້ອງສະຫມຸດ. ການເພີ່ມ "repeat+" ຊີ້ບອກວ່າຊ້ຳ
log output ບໍ່ຄວນຈະຖືກບີບອັດໄປຫາແຖວທໍາອິດແລະ "ຂໍ້ຄວາມສຸດທ້າຍຊ້ໍາ n
times" line ຈະຖືກລະເວັ້ນ. "repeat" ຍັງສາມາດຖືກນໍາໃຊ້ຢ່າງດຽວ. ຖ້າ "repeat" ຖືກນໍາໃຊ້.
ຢູ່ຄົນດຽວ, ແລະບໍ່ມີການຕັ້ງລະດັບບັນທຶກກ່ອນ, ລະດັບບັນທຶກເລີ່ມຕົ້ນຈະຖືກໃຊ້. ຖ້າຫຼາຍ
ຕົວກໍານົດການ loglevel ແມ່ນໄດ້ຮັບ, ການນໍາໃຊ້ 'ເຮັດເລື້ມຄືນ' ຈະບໍ່ມີການປ່ຽນແປງ loglevel. loglevel
ແມ່ນສະຕຣິງ ຫຼືໂຕເລກໜຶ່ງທີ່ມີຄ່າຕໍ່ໄປນີ້:

ງຽບ, -8
ສະແດງໃຫ້ເຫັນບໍ່ມີຫຍັງຢູ່ໃນທັງຫມົດ; ງຽບ.

panic, 0
ສະ​ແດງ​ໃຫ້​ເຫັນ​ພຽງ​ແຕ່​ຄວາມ​ຜິດ​ພາດ​ທີ່​ຮ້າຍ​ແຮງ​ທີ່​ສາ​ມາດ​ນໍາ​ໄປ​ສູ່​ຂະ​ບວນ​ການ​ເກີດ​ອຸ​ປະ​ສັກ​, ເຊັ່ນ​: ແລະ​ຢືນ​ຢັນ​
ຄວາມລົ້ມເຫຼວ. ນີ້ບໍ່ໄດ້ຖືກນໍາໃຊ້ໃນປັດຈຸບັນສໍາລັບການຫຍັງ.

ຕາຍ, 8
ສະແດງໃຫ້ເຫັນພຽງແຕ່ຄວາມຜິດພາດທີ່ຮ້າຍແຮງ. ເຫຼົ່ານີ້ແມ່ນຄວາມຜິດພາດຫຼັງຈາກນັ້ນຂະບວນການບໍ່ສາມາດຢ່າງແທ້ຈິງ
ສືບຕໍ່ຫຼັງຈາກ.

ຄວາມ​ຜິດ​ພາດ​, 16
ສະແດງຂໍ້ຜິດພາດທັງໝົດ, ລວມທັງອັນທີ່ສາມາດກູ້ຄືນໄດ້.

ຄຳ ເຕືອນ, 24
ສະແດງຄໍາເຕືອນແລະຄວາມຜິດພາດທັງຫມົດ. ຂໍ້ຄວາມໃດໆທີ່ກ່ຽວຂ້ອງກັບອາດຈະບໍ່ຖືກຕ້ອງຫຼື
ເຫດການທີ່ບໍ່ຄາດຄິດຈະຖືກສະແດງ.

ຂໍ້ມູນ, 32
ສະແດງຂໍ້ຄວາມໃຫ້ຂໍ້ມູນໃນລະຫວ່າງການປະມວນຜົນ. ນີ້ແມ່ນນອກເຫນືອໄປຈາກການເຕືອນໄພແລະ
ຄວາມຜິດພາດ. ນີ້ແມ່ນຄ່າເລີ່ມຕົ້ນ.

ຄຳເວົ້າ, 40
ຄືກັນກັບ "ຂໍ້ມູນ", ຍົກເວັ້ນ verbose ຫຼາຍ.

ດີບັກ, 48
ສະແດງທຸກຢ່າງ, ລວມທັງຂໍ້ມູນການດີບັກ.

ຕິດຕາມ, 56

ໂດຍຄ່າເລີ່ມຕົ້ນ, ໂປຼແກຼມບັນທຶກໄປ stderr, ຖ້າການໃສ່ສີໄດ້ຮັບການສະຫນັບສະຫນູນໂດຍ terminal,
ສີຖືກນໍາໃຊ້ເພື່ອຫມາຍຄວາມຜິດພາດແລະຄໍາເຕືອນ. ການໃສ່ສີບັນທຶກສາມາດຖືກປິດການໃຊ້ງານການຕັ້ງຄ່າ
ຕົວແປສິ່ງແວດລ້ອມ AV_LOG_FORCE_NOCOLOR or NO_COLOR, ຫຼືສາມາດຖືກບັງຄັບໃຫ້ຕັ້ງ
ຕົວແປສິ່ງແວດລ້ອມ AV_LOG_FORCE_COLOR. ການ​ນໍາ​ໃຊ້​ຂອງ​ສະ​ພາບ​ແວດ​ລ້ອມ​ການ​ປ່ຽນ​ແປງ​ NO_COLOR
ຖືກຄັດຄ້ານ ແລະຈະຖືກຍົກເລີກໃນສະບັບ FFmpeg ຕໍ່ໄປນີ້.

- ລາຍ​ງານ​
ຖິ້ມແຖວຄຳສັ່ງເຕັມ ແລະ console output ໄປຫາໄຟລ໌ທີ່ມີຊື່
"program-YYYYMMDD-HHMMSS.log" ໃນ​ລະ​ບົບ​ປະ​ຈຸ​ບັນ​. ໄຟລ໌ນີ້ສາມາດເປັນປະໂຫຍດສໍາລັບ
ບົດ​ລາຍ​ງານ bug​. ມັນຍັງຫມາຍເຖິງ "-loglevel verbose".

ການຕັ້ງຄ່າຕົວແປສະພາບແວດລ້ອມ FFREPORT ກັບມູນຄ່າໃດໆມີຜົນກະທົບດຽວກັນ. ຖ້າ
value is a ':'-separated key=value sequence, ຕົວເລືອກເຫຼົ່ານີ້ຈະສົ່ງຜົນກະທົບຕໍ່ບົດລາຍງານ;
ຄ່າທາງເລືອກຕ້ອງຖືກຫລົບຫນີຖ້າພວກມັນມີຕົວອັກສອນພິເສດຫຼືທາງເລືອກ
delimiter ':' (ເບິ່ງພາກ ``Quoting and escaping'' ໃນຄູ່ມື ffmpeg-utils).

ຕົວເລືອກຕໍ່ໄປນີ້ຖືກຮັບຮູ້:

ເອກະສານ
ຕັ້ງຊື່ໄຟລ໌ເພື່ອໃຊ້ສໍາລັບບົດລາຍງານ; %p ຖືກຂະຫຍາຍເປັນຊື່ຂອງ
ໂປຣແກມ, %t ຖືກຂະຫຍາຍເປັນ timestamp, "%%" ຖືກຂະຫຍາຍໄປເປັນທຳມະດາ "%"

ລະດັບ
ກໍານົດລະດັບ verbosity ບັນທຶກໂດຍໃຊ້ຄ່າຕົວເລກ (ເບິ່ງ "-loglevel").

ຕົວຢ່າງ, ເພື່ອສົ່ງອອກບົດລາຍງານໄປຍັງໄຟລ໌ທີ່ມີຊື່ ffreport.log ການ​ນໍາ​ໃຊ້​ລະ​ດັບ​ຂອງ​ບັນ​ທຶກ​ຂອງ 32​
(ນາມແຝງສຳລັບບັນທຶກລະດັບ "ຂໍ້ມູນ"):

FFREPORT=file=ffreport.log:level=32 ffmpeg -i input output

ຄວາມຜິດພາດໃນການວິເຄາະຕົວແປສະພາບແວດລ້ອມແມ່ນບໍ່ເປັນອັນຕະລາຍ, ແລະຈະບໍ່ປາກົດຢູ່ໃນ
ລາຍງານ

-hide_banner
ສະກັດກັ້ນການພິມປ້າຍໂຄສະນາ.

ເຄື່ອງມື FFmpeg ທັງໝົດປົກກະຕິຈະສະແດງແຈ້ງການລິຂະສິດ, ທາງເລືອກໃນການກໍ່ສ້າງ ແລະຫ້ອງສະໝຸດ
ສະບັບ. ທາງເລືອກນີ້ສາມາດຖືກນໍາໃຊ້ເພື່ອສະກັດກັ້ນການພິມຂໍ້ມູນນີ້.

-cpuflags ທົງ (ທົ່ວໂລກ)
ອະນຸຍາດໃຫ້ຕັ້ງຄ່າ ແລະລຶບລ້າງທຸງ cpu. ຕົວເລືອກນີ້ແມ່ນມີຈຸດປະສົງເພື່ອທົດສອບ. ຢ່າໃຊ້
ມັນເວັ້ນເສຍແຕ່ວ່າທ່ານຮູ້ວ່າທ່ານກໍາລັງເຮັດຫຍັງ.

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

ທຸງທີ່ເປັນໄປໄດ້ສໍາລັບທາງເລືອກນີ້ແມ່ນ:

x86
ມມ
mmxxt
sse
sse 2
sse2 ຊ້າ
sse 3
sse3 ຊ້າ
ssse3
ປະ​ລໍາ​ມະ​ນູ
sse 4.1
sse 4.2
avx
avx2
xop
fma3
fma4
3dnow
3dnowext
bmi1
bmi2
cmov
ARM
armv5te
armv6
armv6t2
vfp
vfpv3
neon
ກຳນົດ
AAArch64
armv8
vfp
neon
ພະລັງງານ PC
Altivec
Specific ໂຮງງານຜະລິດ
pentium 2
pentium 3
pentium 4
k6
k62
ນັກກິລາ
athlonxp
k8
-opencl_bench
ຕົວເລືອກນີ້ຖືກນໍາໃຊ້ເພື່ອປຽບທຽບອຸປະກອນ OpenCL ທີ່ມີຢູ່ທັງຫມົດແລະພິມຜົນໄດ້ຮັບ.
ຕົວເລືອກນີ້ສາມາດໃຊ້ໄດ້ເມື່ອ FFmpeg ໄດ້ຖືກລວບລວມດ້ວຍ "--enable-opencl".

ເມື່ອ FFmpeg ຖືກຕັ້ງຄ່າດ້ວຍ "--enable-opencl", ທາງເລືອກສໍາລັບ OpenCL ທົ່ວໂລກ
ສະພາບການແມ່ນຖືກກໍານົດໂດຍຜ່ານ -opencl_options. ເບິ່ງພາກສ່ວນ "ຕົວເລືອກ OpenCL" ໃນ ffmpeg-
ຄູ່ມື utils ສໍາລັບບັນຊີລາຍຊື່ຄົບຖ້ວນຂອງທາງເລືອກທີ່ສະຫນັບສະຫນູນ. ໃນບັນດາສິ່ງອື່ນໆ, ທາງເລືອກເຫຼົ່ານີ້
ປະກອບມີຄວາມສາມາດໃນການເລືອກແພລະຕະຟອມສະເພາະແລະອຸປະກອນເພື່ອດໍາເນີນການລະຫັດ OpenCL
ສຸດ. ໂດຍຄ່າເລີ່ມຕົ້ນ, FFmpeg ຈະດໍາເນີນການໃນອຸປະກອນທໍາອິດຂອງເວທີທໍາອິດ. ໃນຂະນະທີ່
ທາງ​ເລືອກ​ສໍາ​ລັບ​ສະ​ພາບ​ການ OpenCL ທົ່ວ​ໂລກ​ສະ​ຫນອງ​ຄວາມ​ຢືດ​ຢຸ່ນ​ກັບ​ຜູ້​ໃຊ້​ໃນ​ການ​ເລືອກ​
ອຸປະກອນ OpenCL ຂອງການເລືອກຂອງພວກເຂົາ, ຜູ້ໃຊ້ສ່ວນໃຫຍ່ອາດຈະຕ້ອງການທີ່ຈະເລືອກເອົາໄວທີ່ສຸດ
ອຸປະກອນ OpenCL ສໍາລັບລະບົບຂອງພວກເຂົາ.

ຕົວເລືອກນີ້ຊ່ວຍເລືອກການຕັ້ງຄ່າທີ່ມີປະສິດທິພາບທີ່ສຸດໂດຍການກໍານົດ
ອຸປະກອນທີ່ເຫມາະສົມສໍາລັບລະບົບຂອງຜູ້ໃຊ້. ມາດຕະຖານທີ່ສ້າງຂຶ້ນໃນແມ່ນດໍາເນີນການຢູ່ໃນທັງຫມົດ
ອຸປະກອນ OpenCL ແລະການປະຕິບັດໄດ້ຖືກວັດແທກສໍາລັບແຕ່ລະອຸປະກອນ. ອຸ​ປະ​ກອນ​ໃນ​
ບັນ​ຊີ​ລາຍ​ການ​ຜົນ​ໄດ້​ຮັບ​ແມ່ນ​ຈັດ​ຮຽງ​ຕາມ​ການ​ປະ​ຕິ​ບັດ​ຂອງ​ເຂົາ​ເຈົ້າ​ທີ່​ມີ​ອຸ​ປະ​ກອນ​ທີ່​ໄວ​ທີ່​ສຸດ​ທີ່​ລະ​ບຸ​ໄວ້​
ທໍາອິດ. ຜູ້ໃຊ້ສາມາດເອີ້ນໄດ້ຕໍ່ມາ ffmpeg ການນໍາໃຊ້ອຸປະກອນທີ່ຖືວ່າຫຼາຍທີ່ສຸດ
ທີ່ເຫມາະສົມໂດຍຜ່ານ -opencl_options ເພື່ອໃຫ້ໄດ້ຮັບການປະຕິບັດທີ່ດີທີ່ສຸດສໍາລັບ OpenCL
ລະຫັດເລັ່ງ.

ການນໍາໃຊ້ປົກກະຕິເພື່ອນໍາໃຊ້ອຸປະກອນ OpenCL ທີ່ໄວທີ່ສຸດກ່ຽວຂ້ອງກັບຂັ້ນຕອນຕໍ່ໄປນີ້.

ດໍາເນີນການຄໍາສັ່ງ:

ffmpeg -opencl_bench

ບັນທຶກ ID ເວທີ (pidx) ແລະ ID ອຸປະກອນ (dox) ຂອງອຸປະກອນທໍາອິດ ie ໄວທີ່ສຸດ
ໃນບັນຊີລາຍຊື່. ເລືອກແພລະຕະຟອມແລະອຸປະກອນໂດຍໃຊ້ຄໍາສັ່ງ:

ffmpeg -opencl_options platform_idx= :device_idx= ...

-opencl_options ທາງເລືອກໃນການ (ທົ່ວໂລກ)
ຕັ້ງຕົວເລືອກສະພາບແວດລ້ອມ OpenCL. ທາງເລືອກນີ້ແມ່ນມີພຽງແຕ່ໃນເວລາທີ່ FFmpeg ໄດ້
ລວບລວມດ້ວຍ "--enable-opencl".

ທາງເລືອກໃນການ ຕ້ອງເປັນບັນຊີລາຍຊື່ຂອງ ທີ່ສໍາຄັນ=ມູນຄ່າ ຄູ່ທາງເລືອກທີ່ແຍກອອກໂດຍ ':'. ເບິ່ງ ``OpenCL
ຕົວເລືອກ'' ຢູ່ໃນຄູ່ມື ffmpeg-utils ສໍາລັບບັນຊີລາຍຊື່ຂອງທາງເລືອກທີ່ສະຫນັບສະຫນູນ.

AVOptions
ທາງເລືອກເຫຼົ່ານີ້ແມ່ນສະຫນອງໃຫ້ໂດຍກົງໂດຍ libavformat, libavdevice ແລະ libavcodec
ຫ້ອງສະໝຸດ. ເພື່ອເບິ່ງລາຍຊື່ຂອງ AVOptions ທີ່ມີຢູ່, ໃຫ້ໃຊ້ປຸ່ມ -ຊ່ວຍ ທາງເລືອກ. ພວກ​ເຂົາ​ແມ່ນ
ແບ່ງ​ອອກ​ເປັນ​ສອງ​ປະ​ເພດ​:

generic
ທາງ​ເລືອກ​ເຫຼົ່າ​ນີ້​ສາ​ມາດ​ໄດ້​ຮັບ​ການ​ຕັ້ງ​ຄ່າ​ສໍາ​ລັບ​ພາ​ຊະ​ນະ​, codec ຫຼື​ອຸ​ປະ​ກອນ​ໃດ​ຫນຶ່ງ​. ທາງເລືອກທົ່ວໄປແມ່ນ
ລະບຸໄວ້ພາຍໃຕ້ຕົວເລືອກ AVFormatContext ສໍາລັບບັນຈຸ/ອຸປະກອນ ແລະພາຍໃຕ້ AVCodecContext
ທາງ​ເລືອກ​ສໍາ​ລັບ codecs​.

ສ່ວນຕົວ
ຕົວເລືອກເຫຼົ່ານີ້ແມ່ນສະເພາະກັບພາຊະນະ, ອຸປະກອນ ຫຼືຕົວແປງສັນຍານທີ່ໃຫ້ໄວ້. ທາງເລືອກສ່ວນຕົວ
ຖືກລະບຸໄວ້ພາຍໃຕ້ຖັງບັນຈຸ / ອຸປະກອນ / ຕົວແປງສັນຍານທີ່ສອດຄ້ອງກັນຂອງພວກເຂົາ.

ຕົວຢ່າງເພື່ອຂຽນຫົວ ID3v2.3 ແທນ ID3v2.4 ເລີ່ມຕົ້ນເປັນໄຟລ໌ MP3, ໃຫ້ໃຊ້
ໄດ້ id3v2_version ທາງ​ເລືອກ​ສ່ວນ​ຕົວ​ຂອງ muxer MP3​:

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

ຕົວແປງສັນຍານ AVOptions ທັງໝົດແມ່ນຕໍ່ສະຕຣີມ, ແລະດັ່ງນັ້ນ, ຕົວລະບຸການຖ່າຍທອດຄວນຈະຖືກຕິດຢູ່
ໃຫ້ເຂົາເຈົ້າ.

ໝາຍ ເຫດ: -nooption syntax ບໍ່ສາມາດໃຊ້ສໍາລັບ boolean AVOptions, ໃຊ້ - ທາງ​ເລືອກ​ 0/- ທາງ​ເລືອກ​ 1.

ໝາຍເຫດ: ວິທີທີ່ບໍ່ມີເອກະສານແບບເກົ່າໃນການລະບຸ AVOptions ຕໍ່ສາຍໂດຍ prepending v/a/s ກັບ
ດຽວນີ້ຊື່ທາງເລືອກແມ່ນລ້າສະ ໄໝ ແລະຈະຖືກລຶບອອກໃນໄວໆນີ້.

ຕົ້ນຕໍ ທາງເລືອກໃນການ
-f configfile
ອ່ານໄຟລ໌ການຕັ້ງຄ່າ configfile. ຖ້າບໍ່ລະບຸມັນຈະອ່ານໂດຍຄ່າເລີ່ມຕົ້ນຈາກ
/etc/ffserver.conf.

-n ເປີດໃຊ້ໂໝດບໍ່ເປີດ. ທາງເລືອກນີ້ປິດການໃຊ້ງານຄໍາສັ່ງ "ເປີດຕົວ" ທັງຫມົດພາຍໃນ
ຕ່າງໆ " " ພາກສ່ວນ. ນັບຕັ້ງແຕ່ ffserver ຈະບໍ່ເປີດຕົວໃດໆ ffmpeg ຕົວຢ່າງ, ເຈົ້າ
ຈະຕ້ອງເປີດຕົວດ້ວຍຕົນເອງ.

-d ເປີດໃຊ້ໂໝດດີບັກ. ທາງ​ເລືອກ​ນີ້​ເພີ່ມ​ທະ​ວີ​ການ verbosity ຂອງ​ບັນ​ທຶກ​, ແລະ​ຊີ້​ນໍາ​ຂໍ້​ຄວາມ​ເຂົ້າ​ສູ່​ລະ​ບົບ​
stdout. ໃນເວລາທີ່ກໍານົດ, ໄດ້ CustomLog ທາງເລືອກແມ່ນຖືກລະເລີຍ.

CONFIGURATION ເອກະສານ SYNTAX


ffserver ອ່ານໄຟລ໌ການຕັ້ງຄ່າທີ່ມີຕົວເລືອກທົ່ວໂລກ ແລະການຕັ້ງຄ່າສຳລັບແຕ່ລະສະຕຣີມ
ແລະອາຫານ.

ໄຟລ໌ການຕັ້ງຄ່າປະກອບດ້ວຍທາງເລືອກທົ່ວໂລກແລະພາກສ່ວນທີ່ອຸທິດຕົນ, ເຊິ່ງຈະຕ້ອງເປັນ
ນໍາ​ສະ​ເຫນີ​ໂດຍ "SECTION_NAME ARGS>" ໃນເສັ້ນແຍກຕ່າງຫາກແລະຕ້ອງຖືກຢຸດໂດຍເສັ້ນໃນ
ຮູບແບບ "</SECTION_NAME>". ARGS ແມ່ນທາງເລືອກ.

ໃນປັດຈຸບັນ, ພາກສ່ວນຕໍ່ໄປນີ້ໄດ້ຖືກຮັບຮູ້: ອາຫານ, ນ້ໍາ, ປ່ຽນເສັ້ນທາງ.

ແຖວທີ່ເລີ່ມຕົ້ນດ້ວຍ "#" ແມ່ນຖືກລະເລີຍ ແລະຖືວ່າເປັນຄຳເຫັນ.

ຊື່ຂອງຕົວເລືອກ ແລະພາກສ່ວນຕ່າງໆແມ່ນບໍ່ມີຕົວພິມນ້ອຍໃຫຍ່.

ACL syntax
ACL (Access Control List) ລະບຸທີ່ຢູ່ທີ່ອະນຸຍາດໃຫ້ເຂົ້າເຖິງໄດ້
ຖ່າຍທອດ, ຫຼືຂຽນຟີດໃຫ້.

ມັນຍອມຮັບແບບຟອມຕື່ມ

· ອະນຸຍາດ/ປະຕິເສດການເຂົ້າເຖິງ ທີ່ຢູ່.

ACL ອະນຸຍາດ
ACL ປະຕິເສດ

· ອະ​ນຸ​ຍາດ​ໃຫ້ / ປະ​ຕິ​ເສດ​ການ​ເຂົ້າ​ເຖິງ​ລະ​ດັບ​ຂອງ​ທີ່​ຢູ່​ຈາກ​ first_address to ທີ່ຢູ່ສຸດທ້າຍ.

ACL ອະນຸຍາດ
ACL ປະຕິເສດ

ທ່ານ​ສາ​ມາດ​ເຮັດ​ເລ​ື້ມ​ຄືນ ACL ອະ​ນຸ​ຍາດ / ປະ​ຕິ​ເສດ​ໄດ້​ເລື້ອຍໆ​ຕາມ​ທີ່​ທ່ານ​ຕ້ອງ​ການ​. ມັນແມ່ນຢູ່ໃນພື້ນຖານການຖ່າຍທອດ. ໄດ້
ການແຂ່ງຂັນຄັ້ງທໍາອິດກໍານົດການປະຕິບັດ. ຖ້າບໍ່ມີການຈັບຄູ່, ຄ່າເລີ່ມຕົ້ນແມ່ນກົງກັນຂ້າມ
ຂອງຖະແຫຼງການ ACL ຫຼ້າສຸດ.

ດັ່ງນັ້ນ 'ACL ອະນຸຍາດໃຫ້ localhost' ພຽງແຕ່ອະນຸຍາດໃຫ້ເຂົ້າເຖິງຈາກ localhost. 'ACL ປະຕິເສດ 1.0.0.0
1.255.255.255 'ຈະປະຕິເສດທັງຫມົດຂອງເຄືອຂ່າຍ 1 ແລະອະນຸຍາດໃຫ້ທຸກຄົນອື່ນໆ.

Global ທາງເລືອກໃນການ
HTTPPort port_number
Port port_number
RTSPport port_number
HTTPPort ຕັ້ງຄ່າ HTTP server ຟັງ ​​TCP port number, RTSPport ກໍານົດເຄື່ອງແມ່ຂ່າຍ RTSP
ຟັງໝາຍເລກຜອດ TCP.

Port ແມ່ນທຽບເທົ່າຂອງ HTTPPort ແລະຖືກຄັດຄ້ານ.

ທ່ານຕ້ອງເລືອກພອດອື່ນຈາກເຊີບເວີ HTTP ມາດຕະຖານຂອງເຈົ້າຖ້າມັນແລ່ນຢູ່
ຢູ່ໃນຄອມພິວເຕີດຽວກັນ.

ຖ້າບໍ່ໄດ້ລະບຸ, ບໍ່ມີເຄື່ອງແມ່ຂ່າຍທີ່ສອດຄ້ອງກັນຈະຖືກສ້າງຂື້ນ.

ທີ່ຢູ່ HTTPBind ip_address
BindAddress ip_address
RTSPbind ທີ່ຢູ່ ip_address
ກຳນົດທີ່ຢູ່ທີ່ເຊີບເວີ HTTP/RTSP ຖືກຜູກມັດ. ພຽງແຕ່ເປັນປະໂຫຍດຖ້າຫາກວ່າທ່ານມີຫຼາຍ
ອິນເຕີເຟດເຄືອຂ່າຍ.

BindAddress ແມ່ນທຽບເທົ່າຂອງ ທີ່ຢູ່ HTTPBind ແລະຖືກຄັດຄ້ານ.

MaxHTTPConnections n
ກໍານົດຈໍານວນຂອງການເຊື່ອມຕໍ່ HTTP ພ້ອມກັນທີ່ສາມາດຈັດການໄດ້. ມັນຕ້ອງໄດ້ຮັບການກໍານົດ
ກ່ອນທີ່ຈະ ໄດ້ ລູກຄ້າສູງສຸດ ພາລາມິເຕີ, ເນື່ອງຈາກວ່າມັນກໍານົດ ລູກຄ້າສູງສຸດ ຂີດຈຳກັດສູງສຸດ.

ຄ່າເລີ່ມຕົ້ນແມ່ນ 2000.

ລູກຄ້າສູງສຸດ n
ກໍານົດຈໍານວນຄໍາຮ້ອງຂໍພ້ອມໆກັນທີ່ສາມາດຈັດການໄດ້. ນັບຕັ້ງແຕ່ ffserver ແມ່ນ​ໄວ​ຫຼາຍ​,
ມັນເປັນໄປໄດ້ຫຼາຍທີ່ທ່ານຈະຕ້ອງການທີ່ຈະອອກຈາກນີ້ສູງແລະນໍາໃຊ້ MaxBandwidth.

ຄ່າເລີ່ມຕົ້ນແມ່ນ 5.

MaxBandwidth ອຈ
ກຳນົດຈຳນວນສູງສຸດຂອງ kbit/sec ທີ່ເຈົ້າກຽມພ້ອມທີ່ຈະບໍລິໂພກໃນເວລາຖ່າຍທອດ
ລູກຄ້າ.

ຄ່າເລີ່ມຕົ້ນແມ່ນ 1000.

CustomLog ຊື່​ເອ​ກະ​ສານ
ຕັ້ງຄ່າໄຟລ໌ບັນທຶກການເຂົ້າເຖິງ (ໃຊ້ຮູບແບບໄຟລ໌ບັນທຶກ Apache ມາດຕະຖານ). '-' ແມ່ນມາດຕະຖານ
ຜົນຜະລິດ.

ຖ້າບໍ່ໄດ້ລະບຸ ffserver ຈະຜະລິດບໍ່ມີບັນທຶກ.

ໃນກໍລະນີທາງເລືອກຄໍາສັ່ງ -d ຖືກລະບຸທາງເລືອກນີ້ຖືກລະເລີຍ, ແລະບັນທຶກແມ່ນ
ຂຽນເປັນຜົນຜະລິດມາດຕະຖານ.

NoDaemon
ຕັ້ງໂໝດ no-daemon. ຕົວເລືອກນີ້ຖືກລະເລີຍຕັ້ງແຕ່ຕອນນີ້ ffserver ສະເຫມີໄປ
ເຮັດວຽກຢູ່ໃນໂຫມດ no-daemon, ແລະຖືກຍົກເລີກ.

ໃຊ້ຄ່າເລີ່ມຕົ້ນ
ບໍ່ມີຄ່າເລີ່ມຕົ້ນ
ຄວບຄຸມວ່າໂຕເລືອກຕົວແປງສັນຍານເລີ່ມຕົ້ນຖືກໃຊ້ສຳລັບທຸກກະແສຫຼືບໍ່. ແຕ່ລະ
stream ອາດຈະຂຽນທັບການຕັ້ງຄ່ານີ້ສໍາລັບຂອງຕົນເອງ. ຄ່າເລີ່ມຕົ້ນແມ່ນ ໃຊ້ຄ່າເລີ່ມຕົ້ນ. ລ່າ​ສຸດ
ການປະກົດຕົວ overrides ກ່ອນຫນ້າຖ້າຫາກວ່າຫຼາຍຄໍານິຍາມ.

ອາຫານ ສ່ວນ
ພາກສ່ວນຟີດກຳນົດຟີດທີ່ສະໜອງໃຫ້ ffserver.

ແຕ່ລະຟີດສົດປະກອບມີໜຶ່ງວິດີໂອ ແລະ/ຫຼື ລຳດັບສຽງມາຈາກອັນ ffmpeg encoder ຫຼື
ອື່ນ ffserver. ລໍາດັບນີ້ອາດຈະຖືກເຂົ້າລະຫັດພ້ອມໆກັນກັບຕົວແປງສັນຍານຫຼາຍຢູ່ທີ່
ການ​ແກ້​ໄຂ​ຈໍາ​ນວນ​ຫນຶ່ງ​.

ຂໍ້ມູນສະເພາະຂອງຕົວຢ່າງຟີດແມ່ນແນະນຳໂດຍແຖວໃນຮູບແບບ:



ບ່ອນທີ່ FEED_FILENAME ລະບຸຊື່ສະເພາະຂອງກະແສ FFM.

ຕົວເລືອກຕໍ່ໄປນີ້ຖືກຮັບຮູ້ພາຍໃນພາກສ່ວນ Feed.

ເອກະສານ ຊື່​ເອ​ກະ​ສານ
ReadOnlyFile ຊື່​ເອ​ກະ​ສານ
ກໍານົດເສັ້ນທາງທີ່ໄຟລ໌ອາຫານຖືກເກັບໄວ້ໃນແຜ່ນ.

ຖ້າບໍ່ໄດ້ລະບຸ, ໄດ້ /tmp/FEED.ffm ແມ່ນສົມມຸດ, ບ່ອນທີ່ FEED ແມ່ນຊື່ອາຫານ.

If ReadOnlyFile ຖືກ​ນໍາ​ໃຊ້​ໄຟລ​໌​ໄດ້​ຖືກ​ຫມາຍ​ເປັນ​ອ່ານ​ເທົ່າ​ນັ້ນ​ແລະ​ມັນ​ຈະ​ບໍ່​ໄດ້​ຮັບ​ການ​ລຶບ​ຫຼື​
ປັບປຸງ

ຕັດ
ຕັດໄຟລ໌ຟີດອອກ, ແທນທີ່ຈະຕື່ມໃສ່ມັນ. ໂດຍຄ່າເລີ່ມຕົ້ນ ffserver ຈະເພີ່ມເຕີມ
ຂໍ້ມູນໃສ່ໄຟລ໌, ຈົນກ່ວາມູນຄ່າຂະຫນາດໄຟລ໌ສູງສຸດແມ່ນບັນລຸໄດ້ (ເບິ່ງ FileMaxSize
ທາງ​ເລືອກ).

FileMaxSize ຂະຫນາດ
ກໍານົດຂະຫນາດສູງສຸດຂອງໄຟລ໌ feed ເປັນ bytes. 0 ຫມາຍຄວາມວ່າບໍ່ຈໍາກັດ. ການແກ້ໄຂ "K"
(2^10), "M" (2^20), ແລະ "G" (2^30) ຖືກຮັບຮູ້.

ຄ່າເລີ່ມຕົ້ນແມ່ນ 5M.

ເປີດ ໂຕ້ຖຽງ
ເປີດຕົວ ffmpeg ຄໍາສັ່ງໃນເວລາສ້າງ ffserver.

ໂຕ້ຖຽງ ຕ້ອງເປັນລຳດັບຂອງການໂຕ້ແຍ້ງທີ່ຈະສະໜອງໃຫ້ ffmpeg ຕົວຢ່າງ. ທໍາອິດ
ການໂຕ້ຖຽງທີ່ສະຫນອງໃຫ້ແມ່ນຖືກລະເລີຍ, ແລະມັນຖືກແທນທີ່ດ້ວຍເສັ້ນທາງທີ່ມີຊື່ດຽວກັນຂອງ
ໄດ້ ffserver ຕົວຢ່າງ, ຕິດຕາມດ້ວຍການໂຕ້ຖຽງທີ່ຍັງເຫຼືອແລະສິ້ນສຸດລົງດ້ວຍເສັ້ນທາງ
ທີ່​ສອດ​ຄ້ອງ​ກັນ​ກັບ​ອາ​ຫານ​.

ເມື່ອຂະບວນການເປີດຕົວອອກ, ffserver ຈະເປີດຕົວໂຄງການຕົວຢ່າງອື່ນ.

ໃນກໍລະນີທີ່ທ່ານຕ້ອງການສະລັບສັບຊ້ອນຫຼາຍ ffmpeg configuration, e.g. ຖ້າທ່ານຕ້ອງການສ້າງ
ຫຼາຍຟີດ FFM ດ້ວຍອັນດຽວ ffmpeg ຕົວຢ່າງ, ທ່ານຄວນເປີດຕົວ ffmpeg ດ້ວຍມື.

ຕົວເລືອກນີ້ຖືກລະເລີຍໃນກໍລະນີທີ່ຕົວເລືອກເສັ້ນຄໍາສັ່ງ -n ຖືກກໍານົດ.

ACL ສະເປັກ
ລະບຸລາຍຊື່ທີ່ຢູ່ IP ທີ່ຖືກອະນຸຍາດ ຫຼືປະຕິເສດການຂຽນຟີດ. ຫຼາຍ
ທາງເລືອກ ACL ສາມາດຖືກກໍານົດ.

ນ້ໍາ ສ່ວນ
ພາກສ່ວນ Stream ກຳນົດການຖ່າຍທອດທີ່ສະໜອງໃຫ້ໂດຍ ffserver, ແລະກໍານົດໂດຍຊື່ດຽວ.

ກະແສຖືກສົ່ງເມື່ອຕອບຄຳຮ້ອງຂໍທີ່ມີຊື່ສະຕຣີມ.

ພາກສ່ວນການຖ່າຍທອດຕ້ອງຖືກແນະນຳໂດຍສາຍ:



ບ່ອນທີ່ STREAM_NAME ລະບຸຊື່ສະເພາະຂອງກະແສ.

ຕົວເລືອກຕໍ່ໄປນີ້ຖືກຮັບຮູ້ພາຍໃນພາກສ່ວນ Stream.

ຕົວເລືອກການເຂົ້າລະຫັດຖືກໝາຍດ້ວຍ ການເຂົ້າລະຫັດ tag, ແລະພວກມັນຖືກນໍາໃຊ້ເພື່ອກໍານົດການເຂົ້າລະຫັດ
ຕົວກໍານົດການ, ແລະຖືກແຜນທີ່ກັບ libavcodec ທາງເລືອກໃນການເຂົ້າລະຫັດ. ບໍ່ແມ່ນທາງເລືອກການເຂົ້າລະຫັດທັງໝົດ
ສະຫນັບສະຫນູນ, ໂດຍສະເພາະມັນເປັນໄປບໍ່ໄດ້ທີ່ຈະກໍານົດທາງເລືອກສ່ວນຕົວຂອງຕົວເຂົ້າລະຫັດ. ເພື່ອ
ລົບລ້າງຕົວເລືອກການເຂົ້າລະຫັດທີ່ລະບຸໄວ້ໂດຍ ffserver, ທ່ານສາມາດໃຊ້ ffmpeg
override_ffserver ທາງເລືອກຄໍາສັ່ງ.

ພຽງແຕ່ຫນຶ່ງຂອງ ອາຫານ ແລະ ເອກະສານ ທາງ​ເລືອກ​ຄວນ​ຈະ​ໄດ້​ຮັບ​ການ​ຕັ້ງ​ຄ່າ​.

ອາຫານ feed_name
ຕັ້ງຟີດປ້ອນຂໍ້ມູນ. feed_name ຕ້ອງກົງກັບຟີດທີ່ມີຢູ່ແລ້ວທີ່ກຳນົດໄວ້ໃນ "ຟີດ"
ສ່ວນ.

ເມື່ອຕົວເລືອກນີ້ຖືກຕັ້ງ, ທາງເລືອກການເຂົ້າລະຫັດຖືກນໍາໃຊ້ເພື່ອຕັ້ງຄ່າການເຂົ້າລະຫັດທີ່ດໍາເນີນການໂດຍ
ຫ່າງໄກສອກຫຼີກ ffmpeg ຂະບວນການ.

ເອກະສານ ຊື່​ເອ​ກະ​ສານ
ຕັ້ງຊື່ໄຟລ໌ຂອງໄຟລ໌ປ້ອນຂໍ້ມູນທີ່ບັນທຶກໄວ້ກ່ອນເພື່ອຖ່າຍທອດ.

ເມື່ອຕົວເລືອກນີ້ຖືກຕັ້ງ, ຕົວເລືອກການເຂົ້າລະຫັດຈະຖືກລະເລີຍ ແລະເນື້ອຫາຂອງໄຟລ໌ປ້ອນເຂົ້າ
ຖ່າຍທອດຄືນໃໝ່ຄືເກົ່າ.

ຮູບແບບ format_name
ກໍານົດຮູບແບບຂອງນ້ໍາຜົນຜະລິດ.

ຕ້ອງເປັນຊື່ຂອງຮູບແບບທີ່ຮັບຮູ້ໂດຍ FFmpeg. ຖ້າຕັ້ງເປັນ ສະຖານະພາບ, ມັນໄດ້ຖືກປະຕິບັດເປັນ
ກະແສສະຖານະ.

ຮູບແບບການປ້ອນຂໍ້ມູນ format_name
ກໍານົດຮູບແບບການປ້ອນຂໍ້ມູນ. ຖ້າບໍ່ໄດ້ລະບຸ, ມັນຖືກຄາດເດົາໂດຍອັດຕະໂນມັດ.

ເລື່ອນກ່ອນ n
ຕັ້ງຄ່ານີ້ເປັນຈໍານວນວິນາທີກັບຫຼັງໃນເວລາເລີ່ມຕົ້ນ. ໃຫ້ສັງເກດວ່າຜູ້ນຫຼາຍທີ່ສຸດ
ຈະ buffer 5-10 ວິ​ນາ​ທີ​ຂອງ​ວິ​ດີ​ໂອ​, ແລະ​ຍັງ​ທ່ານ​ຈໍາ​ເປັນ​ຕ້ອງ​ອະ​ນຸ​ຍາດ​ໃຫ້​ສໍາ​ລັບ​ການ keyframe ປະ​ກົດ​ຂຶ້ນ​
ຢູ່ໃນກະແສຂໍ້ມູນ.

ຄ່າເລີ່ມຕົ້ນແມ່ນ 0.

StartSendOnKey
ຢ່າສົ່ງກະແສຈົນກ່ວາມັນໄດ້ຮັບກອບຄີທໍາອິດ. ໂດຍຄ່າເລີ່ມຕົ້ນ ffserver ຈະ​ສົ່ງ
ຂໍ້ມູນທັນທີ.

ເວລາສູງສຸດ n
ກໍານົດຈໍານວນວິນາທີທີ່ຈະດໍາເນີນການ. ຄ່ານີ້ກຳນົດໄລຍະເວລາສູງສຸດຂອງກະແສ a
ລູກຄ້າຈະສາມາດໄດ້ຮັບ.

ຄ່າຂອງ 0 ຫມາຍຄວາມວ່າບໍ່ມີກໍານົດຂອບເຂດຈໍາກັດກ່ຽວກັບໄລຍະເວລາການຖ່າຍທອດ.

ACL ສະເປັກ
ຕັ້ງ ACL ສໍາລັບການຖ່າຍທອດ.

DynamicACL ສະເປັກ
RTSPOption ທາງເລືອກ
ທີ່ຢູ່ Multicast ທີ່ຢູ່
MulticastPort port
MulticastTTL integer
NoLoop
FaviconURL url
ຕັ້ງ favicon (ໄອຄອນທີ່ມັກ) ສໍາລັບຫນ້າສະຖານະຂອງເຄື່ອງແມ່ຂ່າຍ. ມັນໄດ້ຖືກລະເລີຍສໍາລັບການປົກກະຕິ
ສາຍນ້ ຳ.

ຜູ້ຂຽນ ມູນຄ່າ
ຄໍາຄິດຄໍາເຫັນ ມູນຄ່າ
ລິຂະສິດ ມູນຄ່າ
Title ມູນຄ່າ
ຕັ້ງ metadata ທີ່ສອດຄ້ອງກັນກັບທາງເລືອກ. ຕົວເລືອກທັງໝົດເຫຼົ່ານີ້ຖືກປະຕິເສດໃນເງື່ອນໄຂ
Metadata.

Metadata ທີ່ສໍາຄັນ ມູນຄ່າ
ຕັ້ງຄ່າ metadata ໃນກະແສຜົນຜະລິດ.

ໃຊ້ຄ່າເລີ່ມຕົ້ນ
ບໍ່ມີຄ່າເລີ່ມຕົ້ນ
ຄວບຄຸມວ່າຕົວເລືອກຕົວແປງສັນຍານເລີ່ມຕົ້ນຖືກໃຊ້ສໍາລັບການຖ່າຍທອດຫຼືບໍ່. ຄ່າເລີ່ມຕົ້ນແມ່ນ
ໃຊ້ຄ່າເລີ່ມຕົ້ນ ເວັ້ນເສຍແຕ່ວ່າປິດການໃຊ້ງານທົ່ວໂລກ.

NoAudio
NoVideo
ສະກັດກັ້ນສຽງ/ວິດີໂອ.

AudioCodec codec_name (ການເຂົ້າລະຫັດ, ສຽງ)
ຕັ້ງຕົວແປງສັນຍານສຽງ.

AudioBitRate ອັດຕາການ (ການເຂົ້າລະຫັດ, ສຽງ)
ກໍານົດອັດຕາບິດສໍາລັບການຖ່າຍທອດສຽງເປັນ kbits ຕໍ່ວິນາທີ.

ຊ່ອງສຽງ n (ການເຂົ້າລະຫັດ, ສຽງ)
ກໍານົດຈໍານວນຊ່ອງສຽງ.

AudioSampleRate n (ການເຂົ້າລະຫັດ, ສຽງ)
ກໍານົດຄວາມຖີ່ຂອງຕົວຢ່າງສໍາລັບສຽງ. ເມື່ອໃຊ້ອັດຕາບິດຕ່ໍາ, ທ່ານຄວນຫຼຸດລົງນີ້
ຄວາມຖີ່ເຖິງ 22050 ຫຼື 11025. ຄວາມຖີ່ທີ່ຮອງຮັບແມ່ນຂຶ້ນກັບສຽງທີ່ເລືອກ.
ຕົວແປງສັນຍານ.

AVOptionAudio [ຕົວແປງສັນຍານ:]ທາງເລືອກ ມູນຄ່າ (ການເຂົ້າລະຫັດ, ສຽງ)
ຕັ້ງຕົວເລືອກທົ່ວໄປ ຫຼືສ່ວນຕົວສຳລັບການຖ່າຍທອດສຽງ. ທາງເລືອກສ່ວນຕົວຕ້ອງຖືກນຳໜ້າດ້ວຍ
ຊື່ codec ຫຼື codec ຕ້ອງໄດ້ຮັບການກໍານົດກ່ອນ.

AVPresetAudio ຕັ້ງໄວ້ລ່ວງ ໜ້າ (ການເຂົ້າລະຫັດ, ສຽງ)
ຕັ້ງໄວ້ລ່ວງໜ້າສຳລັບການຖ່າຍທອດສຽງ.

VideoCodec codec_name (ການເຂົ້າລະຫັດ, ວິດີໂອ)
ຕັ້ງຕົວແປງສັນຍານວິດີໂອ.

VideoBitRate n (ການເຂົ້າລະຫັດ, ວິດີໂອ)
ກໍານົດອັດຕາບິດສໍາລັບການຖ່າຍທອດວິດີໂອເປັນ kbits ຕໍ່ວິນາທີ.

VideoBitRateRange ລະດັບ (ການເຂົ້າລະຫັດ, ວິດີໂອ)
ກໍານົດຂອບເຂດອັດຕາບິດວິດີໂອ.

ໄລຍະຕ້ອງລະບຸໄວ້ໃນແບບຟອມ ຕໍ່າສຸດ-ສູງສຸດ, ແລະ​ລະ​ບຸ​ວ່າ​ ຕໍ່າສຸດ ແລະ
ສູງສຸດ ຕົວເລືອກການເຂົ້າລະຫັດສະແດງອອກເປັນ kbits ຕໍ່ວິນາທີ.

VideoBitRateRangeTolerance n (ການເຂົ້າລະຫັດ, ວິດີໂອ)
ກໍານົດຄວາມທົນທານອັດຕາບິດຂອງວິດີໂອເປັນ kbits ຕໍ່ວິນາທີ.

ຮູບແບບ Pixel pixel_format (ການເຂົ້າລະຫັດ, ວິດີໂອ)
ກໍານົດຮູບແບບ pixel ວິດີໂອ.

Debug integer (ການເຂົ້າລະຫັດ, ວິດີໂອ)
ກໍານົດວິດີໂອ debug ທາງ​ເລືອກ​ການ​ເຂົ້າ​ລະ​ຫັດ​.

ຢ່າງເຂັ້ມງວດ integer (ການເຂົ້າລະຫັດ, ວິດີໂອ)
ກໍານົດວິດີໂອ ຢ່າງເຄັ່ງຄັດ ທາງ​ເລືອກ​ການ​ເຂົ້າ​ລະ​ຫັດ​.

VideoBufferSize n (ການເຂົ້າລະຫັດ, ວິດີໂອ)
ກໍານົດຂະຫນາດ buffer ຄວບຄຸມອັດຕາ, ສະແດງອອກໃນ KB.

VideoFrameRate n (ການເຂົ້າລະຫັດ, ວິດີໂອ)
ກໍານົດຈໍານວນເຟຣມວິດີໂອຕໍ່ວິນາທີ.

ຂະໜາດວິດີໂອ (ການເຂົ້າລະຫັດ, ວິດີໂອ)
ກໍານົດຂະຫນາດຂອງກອບວິດີໂອ, ຕ້ອງເປັນຕົວຫຍໍ້ຫຼືໃນຮູບແບບ WxH, ທະເລສາບ ໄດ້
ວິດີໂອ ຂະຫນາດ ສ່ວນ in ໄດ້ ffmpeg-utils(1​) ຄູ່ມື.

ຄ່າເລີ່ມຕົ້ນແມ່ນ "160x128".

VideoIntraOnly (ການເຂົ້າລະຫັດ, ວິດີໂອ)
ສົ່ງພຽງແຕ່ພາຍໃນເຟຣມ (ເປັນປະໂຫຍດສໍາລັບອັດຕາບິດຕ່ໍາ, ແຕ່ຂ້າອັດຕາເຟຣມ).

VideoGopSize n (ການເຂົ້າລະຫັດ, ວິດີໂອ)
ຖ້າບໍ່ແມ່ນພາຍໃນເທົ່ານັ້ນ, ເຟຣມພາຍໃນຈະຖືກສົ່ງຕໍ່ທຸກເຟຣມ VideoGopSize. ວິດີໂອ
ການ synchronization ສາມາດເລີ່ມຕົ້ນພຽງແຕ່ຢູ່ໃນກອບພາຍໃນ.

ແທັກວິດີໂອ ໂຄດ​ຄໍາ​ສັ່ງ (ການເຂົ້າລະຫັດ, ວິດີໂອ)
ຕັ້ງແທັກວິດີໂອ.

ວິດີໂອຄຸນນະພາບສູງ (ການເຂົ້າລະຫັດ, ວິດີໂອ)
Video4MotionVector (ການເຂົ້າລະຫັດ, ວິດີໂອ)
BitExact (ການເຂົ້າລະຫັດ, ວິດີໂອ)
ຕັ້ງທຸງການເຂົ້າລະຫັດ bitexact.

IdctSimple (ການເຂົ້າລະຫັດ, ວິດີໂອ)
ຕັ້ງຄ່າລະບົບ IDCT ງ່າຍໆ.

ຂະໜາດ n (ການເຂົ້າລະຫັດ, ວິດີໂອ)
ເປີດ​ໃຊ້​ງານ​ການ​ເຂົ້າ​ລະ​ຫັດ​ຄຸນ​ນະ​ພາບ​ຄົງ​ທີ່​, ແລະ​ກໍາ​ນົດ​ຄ່າ​ວິ​ດີ​ໂອ qscale (ຂະ​ຫນາດ​ຂະ​ຫນາດ​)​,
ສະແດງອອກໃນ n ໜ່ວຍ QP.

VideoQMin n (ການເຂົ້າລະຫັດ, ວິດີໂອ)
VideoQMax n (ການເຂົ້າລະຫັດ, ວິດີໂອ)
ຕັ້ງວິດີໂອ qmin/qmax.

VideoQDiff integer (ການເຂົ້າລະຫັດ, ວິດີໂອ)
ກໍານົດວິດີໂອ qdiff ທາງ​ເລືອກ​ການ​ເຂົ້າ​ລະ​ຫັດ​.

LumiMask float (ການເຂົ້າລະຫັດ, ວິດີໂອ)
DarkMask float (ການເຂົ້າລະຫັດ, ວິດີໂອ)
ທີ່ກໍານົດໄວ້ lumi_mask/dark_mask ຕົວເລືອກການເຂົ້າລະຫັດ.

AVOptionVideo [ຕົວແປງສັນຍານ:]ທາງເລືອກ ມູນຄ່າ (ການເຂົ້າລະຫັດ, ວິດີໂອ)
ຕັ້ງຕົວເລືອກທົ່ວໄປ ຫຼືສ່ວນຕົວສຳລັບການຖ່າຍທອດວິດີໂອ. ທາງເລືອກສ່ວນຕົວຕ້ອງຖືກນຳໜ້າດ້ວຍ
ຊື່ codec ຫຼື codec ຕ້ອງໄດ້ຮັບການກໍານົດກ່ອນ.

AVPresetVideo ຕັ້ງໄວ້ລ່ວງ ໜ້າ (ການເຂົ້າລະຫັດ, ວິດີໂອ)
ຕັ້ງຄ່າໄວ້ລ່ວງໜ້າສຳລັບການຖ່າຍທອດວິດີໂອ.

ຕັ້ງໄວ້ລ່ວງ ໜ້າ ຕ້ອງເປັນເສັ້ນທາງຂອງໄຟລ໌ທີ່ກໍານົດໄວ້ກ່ອນ.

Server ສະຖານະພາບ ນ້ໍາ

ສະຕຣີມສະຖານະເຊີບເວີເປັນກະແສພິເສດທີ່ໃຊ້ເພື່ອສະແດງສະຖິຕິກ່ຽວກັບ
ffserver ການປະຕິບັດງານ.

ມັນຕ້ອງໄດ້ຮັບການລະບຸການຕັ້ງຄ່າທາງເລືອກ ຮູບແບບ to ສະຖານະພາບ.

ປ່ຽນເສັ້ນທາງ ສ່ວນ
ພາກສ່ວນການປ່ຽນເສັ້ນທາງກໍານົດບ່ອນທີ່ຈະປ່ຽນເສັ້ນທາງ URL ທີ່ຮ້ອງຂໍໄປຫາຫນ້າອື່ນ.

ພາກສ່ວນການປ່ຽນເສັ້ນທາງຕ້ອງໄດ້ຮັບການແນະນໍາໂດຍເສັ້ນ:



ບ່ອນທີ່ NAME ແມ່ນຊື່ຂອງຫນ້າທີ່ຄວນຈະຖືກປ່ຽນເສັ້ນທາງ.

ມັນພຽງແຕ່ຍອມຮັບທາງເລືອກ URL, ເຊິ່ງລະບຸ URL ການປ່ຽນເສັ້ນທາງ.

STREAM ຕົວຢ່າງ


· JPEG ຫຼາຍສ່ວນ


ອາຫານ feed1.ffm
ຮູບແບບ mpjpeg
VideoFrameRate 2
VideoIntraOnly
NoAudio
ເຂັ້ມງວດ -1


· JPEG ດຽວ


ອາຫານ feed1.ffm
ຮູບແບບ jpeg
VideoFrameRate 2
VideoIntraOnly
ຂະໜາດວິດີໂອ 352x240
NoAudio
ເຂັ້ມງວດ -1


· Flash


ອາຫານ feed1.ffm
ຮູບແບບ swf
VideoFrameRate 2
VideoIntraOnly
NoAudio


· ASF ເຂົ້າກັນໄດ້


ອາຫານ feed1.ffm
ຮູບແບບ asf
VideoFrameRate 15
ຂະໜາດວິດີໂອ 352x240
VideoBitRate 256
VideoBufferSize 40
VideoGopSize 30
AudioBitRate 64
StartSendOnKey


· ສຽງ MP3


ອາຫານ feed1.ffm
ຮູບແບບ mp2
AudioCodec mp3
AudioBitRate 64
ຊ່ອງສຽງ 1
AudioSampleRate 44100
NoVideo


· ສຽງ Ogg Vorbis


ອາຫານ feed1.ffm
ຊື່ເມຕາເດຕາ "ຊື່ການຖ່າຍທອດ"
AudioBitRate 64
ຊ່ອງສຽງ 2
AudioSampleRate 44100
NoVideo


·ທີ່ແທ້ຈິງທີ່ມີສຽງພຽງແຕ່ 32 kbits


ອາຫານ feed1.ffm
ຮູບແບບ rm
AudioBitRate 32
NoVideo


·ທີ່ແທ້ຈິງກັບສຽງແລະວິດີໂອຢູ່ທີ່ 64 kbits


ອາຫານ feed1.ffm
ຮູບແບບ rm
AudioBitRate 32
VideoBitRate 128
VideoFrameRate 25
VideoGopSize 25


·ສໍາລັບການຖ່າຍທອດມາຈາກໄຟລ໌: ທ່ານພຽງແຕ່ຕ້ອງການຕັ້ງຊື່ໄຟລ໌ທີ່ປ້ອນຂໍ້ມູນແລະທາງເລືອກ
ຮູບແບບໃຫມ່.


ໄຟລ໌ "/usr/local/httpd/htdocs/tlive.rm"
NoAudio



ໄຟລ໌ "/usr/local/httpd/htdocs/test.asf"
NoAudio
ຜູ້ຂຽນ metadata "ຂ້ອຍ"
ລິຂະສິດ Metadata "Super MegaCorp"
ຊື່ເມຕາເດຕາ "ທົດສອບການຖ່າຍທອດຈາກດິສກ໌"
ຄຳເຫັນເມຕາເດຕາ "ທົດສອບຄຳເຫັນ"


SYNTAX


ພາກນີ້ບັນທຶກໄວຍະກອນ ແລະຮູບແບບທີ່ນຳໃຊ້ໂດຍຫ້ອງສະໝຸດ ແລະເຄື່ອງມືຂອງ FFmpeg.

Quoting ແລະ ຫນີ
FFmpeg ຮັບຮອງເອົາກົນໄກການອ້າງອີງແລະການຫລົບຫນີຕໍ່ໄປນີ້, ເວັ້ນເສຍແຕ່ໄດ້ລະບຸຢ່າງຊັດເຈນ.
ກົດລະບຽບຕໍ່ໄປນີ້ຖືກນຳໃຊ້:

· ' ແລະ \ ແມ່ນຕົວອັກສອນພິເສດ (ຕາມລໍາດັບໃຊ້ສໍາລັບການອ້າງອີງແລະການຫລົບຫນີ). ໃນ
ນອກ​ຈາກ​ນັ້ນ​, ອາດ​ຈະ​ມີ​ລັກ​ສະ​ນະ​ພິ​ເສດ​ອື່ນໆ​ຂຶ້ນ​ກັບ​ສະ​ເພາະ​
syntax ບ່ອນທີ່ escaping ແລະ quoting ຖືກຈ້າງງານ.

· A ລັກສະນະພິເສດແມ່ນ escaped ໂດຍ prefix ມັນກັບ a \.

·​ຕົວ​ອັກ​ສອນ​ທັງ​ຫມົດ​ທີ່​ປິດ​ລະ​ຫວ່າງ​ '' ແມ່ນລວມຢູ່ໃນສະຕຣິງທີ່ແຍກຕາມຕົວໜັງສື. ໄດ້
ລັກ​ສະ​ນະ quote ' ຕົວຂອງມັນເອງບໍ່ສາມາດອ້າງອີງໄດ້, ດັ່ງນັ້ນທ່ານອາດຈະຕ້ອງປິດ quote ແລະ
ຫນີມັນ.

· ແຖວໜ້າ ແລະ ຕິດຕາມຊ່ອງຫວ່າງ, ເວັ້ນເສຍແຕ່ຈະຫຼົບໜີ ຫຼື ອ້າງອີງ, ຖືກໂຍກຍ້າຍອອກຈາກ
ສະຕຣິງແຍກ.

ໃຫ້ສັງເກດວ່າທ່ານອາດຈະຕ້ອງເພີ່ມການຫລົບຫນີລະດັບທີສອງເມື່ອໃຊ້ເສັ້ນຄໍາສັ່ງຫຼື a
script, ເຊິ່ງຂຶ້ນກັບ syntax ຂອງພາສາ shell ທີ່ຮັບຮອງເອົາ.

ຟັງຊັນ "av_get_token" ທີ່ກໍານົດໄວ້ໃນ libavutil/avstring.h ສາມາດໃຊ້ເພື່ອວິເຄາະ token ໄດ້
ອ້າງຫຼືຫລົບຫນີຕາມກົດລະບຽບທີ່ກໍານົດໄວ້ຂ້າງເທິງ.

ເຄື່ອງມືດັ່ງກ່າວ ເຄື່ອງ​ມື / ffescape ໃນຕົ້ນໄມ້ແຫຼ່ງ FFmpeg ສາມາດຖືກນໍາໃຊ້ເພື່ອອ້າງອີງອັດຕະໂນມັດຫຼື
ໜີອອກຈາກສະຕຣິງໃນສະຄຣິບ.

ຕົວຢ່າງ

· ຫນີ "ອາຊະຍາກໍາ d'Amour" ທີ່ມີຕົວອັກສອນພິເສດ "'":

ອາຊະຍາກໍາ d\'Amour

· ສະຕຣິງຂ້າງເທິງມີຄຳອ້າງອີງ, ສະນັ້ນ "'" ຈະຕ້ອງໜີໄປເມື່ອອ້າງອີງມັນ:

'ອາຊະຍາກຳ'\'ຮັກແພງ'

· ລວມເອົາຊ່ອງຫວ່າງທາງໜ້າ ຫຼືທາງຫຼັງໂດຍໃຊ້ການອ້າງອີງ:

'ສະຕຣິງນີ້ເລີ່ມຕົ້ນ ແລະລົງທ້າຍດ້ວຍຊ່ອງຫວ່າງ'

· Escape ແລະ quoting ສາມາດປະສົມເຂົ້າກັນໄດ້:

'ສະຕຣິງ '\'string\' ເປັນສະຕຣິງ '

· ລວມເອົາຕົວໜັງສື \ ທ່ານ​ສາ​ມາດ​ນໍາ​ໃຊ້​ທັງ​ການ​ຫນີ​ຫຼື​ການ​ອ້າງ​ອີງ​:

'c:\foo' ສາມາດຂຽນເປັນ c:\\foo

ວັນທີ່ສະຫມັກ
syntax ທີ່ຍອມຮັບແມ່ນ:

[(YYYY-MM-DD|YYYYMMDD)[T|t| ]]((HH:MM:SS[.m...]]])|(HHMMSS[.m...]]]))[Z]
ໃນປັດຈຸບັນ

ຖ້າຄ່າແມ່ນ "ຕອນນີ້" ມັນໃຊ້ເວລາປະຈຸບັນ.

ເວລາແມ່ນເວລາທ້ອງຖິ່ນເວັ້ນເສຍແຕ່ Z ຈະຖືກຕໍ່ທ້າຍ, ໃນກໍລະນີນີ້ມັນຖືກຕີຄວາມວ່າ UTC. ຖ້າ
ສ່ວນປີ-ເດືອນ-ມື້ ບໍ່ໄດ້ລະບຸໄວ້ ມັນໃຊ້ເວລາປັດຈຸບັນຂອງປີ-ເດືອນ-ມື້.

ທີ່ໃຊ້ເວລາ ໄລຍະເວລາ
ມີສອງ syntax ທີ່ຍອມຮັບສໍາລັບການສະແດງອອກໄລຍະເວລາ.

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

HH ສະ​ແດງ​ອອກ​ຈໍາ​ນວນ​ຊົ່ວ​ໂມງ​, MM ຈໍານວນນາທີສໍາລັບສູງສຸດ 2 ຕົວເລກ, ແລະ
SS ຈໍານວນວິນາທີສໍາລັບສູງສຸດ 2 ຕົວເລກ. ໄດ້ m ໃນຕອນທ້າຍສະແດງອັດຕານິຍົມ
ມູນຄ່າສໍາລັບ SS.

or

[-] +[. ...]

S ສະແດງຈໍານວນວິນາທີ, ດ້ວຍສ່ວນທົດສະນິຍົມທາງເລືອກ m.

ໃນທັງສອງສະແດງອອກ, ທາງເລືອກ - ຊີ້ໃຫ້ເຫັນໄລຍະເວລາລົບ.

ຕົວຢ່າງ

ຕົວຢ່າງຕໍ່ໄປນີ້ແມ່ນໄລຍະເວລາທີ່ຖືກຕ້ອງທັງໝົດ:

55 ວິນາທີ 55

12:03:45
12 ຊົ່ວໂມງ, 03 ນາທີແລະ 45 ວິນາທີ

23.189
ວິນາທີ 23.189

ວິດີໂອ ຂະຫນາດ
ລະບຸຂະຫນາດຂອງວິດີໂອທີ່ມາ, ມັນອາດຈະເປັນສາຍຂອງແບບຟອມ widthxລະດັບຄວາມສູງ, ຫຼື
ຊື່ຫຍໍ້ຂະໜາດ.

ຕົວຫຍໍ້ຕໍ່ໄປນີ້ຖືກຮັບຮູ້:

ntsc
720x480

pal 720x576

qntsc
352x240

qpal
352x288

sntsc
640x480

ກະດູກສັນຫຼັງ
768x576

ຮູບເງົາ
352x240

ntsc-film
352x240

sqcif
128x96

qcif
176x144

elf 352x288

4 cif
704x576

16 cif
1408x1152

qqvga
160x120

qvga
320x240

vga 640x480

svga
800x600

xga 1024x768

uxga
1600x1200

qxga
2048x1536

sxga
1280x1024

qsxga
2560x2048

hsxga
5120x4096

wvga
852x480

wxga
1366x768

wsxga
1600x1024

ວູກກາ
1920x1200

ວອດກາ
2560x1600

wqsxga
3200x2048

wquxga
3840x2400

whsxga
6400x4096

whuxga
7680x4800

cga 320x200

ຕົວຢ່າງ 640x350

hd480
852x480

hd720
1280x720

hd1080
1920x1080

2k 2048x1080

2kflat
1998x1080

2kscope
2048x858

4k 4096x2160

4kflat
3996x2160

4kscope
4096x1716

nhd 640x360

hqvga
240x160

wqvga
400x240

fwqvga
432x240

hvga
480x320

qhd 960x540

2kdci
2048x1080

4kdci
4096x2160

uhd2160
3840x2160

uhd4320
7680x4320

ວິດີໂອ ອັດຕາການ
ລະບຸອັດຕາເຟຣມຂອງວິດີໂອ, ສະແດງເປັນຈໍານວນເຟຣມທີ່ສ້າງຂຶ້ນຕໍ່ວິນາທີ.
ມັນຕ້ອງເປັນສະຕຣິງໃນຮູບແບບ frame_rate_num/frame_rate_den, ຈຳນວນເຕັມ, a
ຕົວເລກເລື່ອນ ຫຼືຕົວຫຍໍ້ອັດຕາເຟຣມວິດີໂອທີ່ຖືກຕ້ອງ.

ຕົວຫຍໍ້ຕໍ່ໄປນີ້ຖືກຮັບຮູ້:

ntsc
30000/1001

pal 25/1

qntsc
30000/1001

qpal
25/1

sntsc
30000/1001

ກະດູກສັນຫຼັງ
25/1

ຮູບເງົາ
24/1

ntsc-film
24000/1001

ອັດຕາສ່ວນ
ອັດຕາສ່ວນສາມາດສະແດງອອກເປັນການສະແດງອອກ, ຫຼືໃນຮູບແບບ ຕົວເລກ:ຕົວຫານ.

ໃຫ້ສັງເກດວ່າອັດຕາສ່ວນທີ່ບໍ່ມີຂອບເຂດ (1/0) ຫຼືຄ່າລົບແມ່ນຖືວ່າຖືກຕ້ອງ, ດັ່ງນັ້ນທ່ານຄວນ
ກວດເບິ່ງມູນຄ່າທີ່ສົ່ງຄືນຖ້າທ່ານຕ້ອງການຍົກເວັ້ນຄ່າເຫຼົ່ານັ້ນ.

ຄ່າທີ່ບໍ່ໄດ້ກໍານົດສາມາດສະແດງອອກໂດຍໃຊ້ "0: 0".

ສີ
ມັນ​ສາ​ມາດ​ເປັນ​ຊື່​ຂອງ​ສີ​ທີ່​ກໍາ​ນົດ​ໄວ້​ຂ້າງ​ລຸ່ມ​ນີ້ (ຕົວ​ອັກ​ສອນ​ທີ່​ບໍ່​ສໍາ​ຄັນ​) ຫຼື a
"[0x|#]RRGGBB[AA]" ລຳດັບ, ອາດຈະຕິດຕາມດ້ວຍ @ ແລະສະຕຣິງທີ່ເປັນຕົວແທນອັນຟາ
ສ່ວນປະກອບ.

ອົງປະກອບອັນຟາອາດຈະເປັນສະຕຣິງທີ່ປະກອບດ້ວຍ "0x" ຕາມດ້ວຍເລກຖານສິບຫົກ ຫຼື
ຕົວເລກທົດສະນິຍົມລະຫວ່າງ 0.0 ແລະ 1.0, ເຊິ່ງເປັນຕົວແທນຂອງຄ່າ opacity (0x00 or 0.0
ຫມາຍ​ຄວາມ​ວ່າ​ຄວາມ​ໂປ່ງ​ໃສ​ຫມົດ​, 0xff or 1.0 opaque ຫມົດ). ຖ້າອົງປະກອບອັນຟາ
ບໍ່ໄດ້ລະບຸຫຼັງຈາກນັ້ນ 0xff ແມ່ນສົມມຸດ.

ຊ່ອຍແນ່ random ຈະສົ່ງຜົນໃຫ້ເກີດສີສຸ່ມ.

ຊື່ຂອງສີຕໍ່ໄປນີ້ຖືກຮັບຮູ້:

AliceBlue
0xF0F8FF

AntiqueWhite
0xFAEBD7

ນ້ໍາ
0x00FFFF

ສີຂຽວອ່ອນ
0x7FFD4

ສີຟ້າສົດ
0xF0FFFF

beige
0xF5F5DC

Bisque
0xFFE4C4

ສີ​ດໍາ
0x000000

BlanchedAlmond
0xFFEBCD

blue
0x0000FF

BlueViolet
0x8A2BE2

ສີນ​້​ໍ​າ
0xA52A2A

ບົວລະພາ
0xDEB887

CadetBlue
0x5F9EA0

ຕາຕະລາງ
0x7FFF00

ເລດ
0xD2691E

ປາ
0xFF7F50

ສາລີ
0x6495ED

ສາລີ
0xFFF8DC

Crimson
0xDC143C

Cyan
0x00FFFF

ສີ​ຟ້າ​ແກ່
0x00008B

ສີຂຽວເຂັ້ມ
0x008B8B

DarkGoldenRod
0xB8860B

ສີເທົາເຂັ້ມ
0xA9A9A9

ສີຂຽວເຂັ້ມ
0x006400

ມືດ
0xBDB76B

ສີມ່ວງແດງເຂັ້ມ
0x8B008B

DarkOliveGreen
0x556B2F

ສີເຂັ້ມ
0xFF8C00

DarkOrchid
0x9932CC

ຊ້ ຳ
0x8B0000

ປາແຊລມອນເຂັ້ມ
0xE9967A

ສີຂຽວທະເລ
0x8FBC8F

DarkSlateBlue
0x483D8B

DarkSlateGray
0x2F4F4F

ດຳ
0x00CED1

DarkViolet
0x9400D3

DeepPink
0xFF1493

DeepSkyBlue
0x00BFF

DimGray
0x696969

DodgerBlue
0x1E90FF

FireBrick
0xB22222

ດອກສີຂາວ
0xFFFA0

ປ່າດົງດິບ
0x228B22

Fuchsia
0xFF00FF

ກັສໂບໂຣ
0xDCDCDC

GhostWhite
0xF8F8FF

ຄໍາ
0xFFD700

GoldenRod
0xDAA520

ສີ​ຂີ້​ເຖົ່າ
0x808080

ສີ​ຂຽວ
0x008000

GreenYellow
0xADFF2F

HoneyDew
0xF0FF0

HotPink
0xFF69B4

ສີແດງອິນເດຍ
0xCD5C5C

Indigo
0x4B0082

ງາຊ້າງ
0xFFFF0

khaki
0xF0E68C

Lavender
0xE6E6FA

LavenderBlush
0xFFF0F5

LawnGreen
0x7CFC00

LemonChiffon
0xFFFACD

ສີຟ້າອ່ອນ
0xADD8E6

ແສງສະຫວ່າງ
0xF08080

ສີຟ້າຂຽວ
0xE0FFFF

LightGoldenRodYellow
0xFAFAD2

ແສງສະຫວ່າງ
0x90EE90

ແສງສະຫວ່າງ
0xD3D3D3

LightPink
0xFFB6C1

ແສງສະຫວ່າງ
0xFFA07A

ສີຂຽວອ່ອນ
0x20B2AA

LightSkyBlue
0x87CEFA

ສີເທົາອ່ອນ
0x778899

LightSteelBlue
0xB0C4DE

ສີເຫຼືອງອ່ອນ
0xFFFF0

ໝາກນາວ
0x00FF00

ຫມາກ​ນາວ​ຂຽວ
0x32CD32

linen
0xFAF0E6

Magenta
0xFF00FF

Maroon
0x800000

MediumAquaMarine
0x66CDAA

ສີຟ້າສີຟ້າ
0x0000CD

ກ້ວຍໄມ້ຂະ ໜາດ ກາງ
0xBA55D3

ສີມ່ວງປານກາງ
0x9370D8

ສີຂຽວທະເລປານກາງ
0x3CB371

MediumSlateBlue
0x7B68EE

ສີຂຽວລະດູໃບໄມ້ປົ່ງ
0x00FA9A

ສີຟ້າອົມຂຽວ
0x48D1CC

ສີແດງປານກາງ
0xC71585

ສີຟ້າທ່ຽງຄືນ
0x191970

MintCream
0xF5FFFA

MistyRose
0xFFE4E1

Moccasin
0xFFE4B5

NavajoWhite
0xFFDEAD

ກອງທັບເຮືອ
0x000080

OldLace
0xFDF5E6

Olive
0x808000

OliveDrab
0x6B8E23

ໝາກກ້ຽງ
0xFFA500

ສີແດງສົ້ມ
0xFF4500

Orchid
0xDA70D6

PaleGoldenRod
0xEEE8AA

ສີຂຽວຈືດ
0x98FB98

ສີຂຽວເຂັ້ມ
0xAFEEEE

ສີແດງຈືດໆ
0xD87093

ayaາກຫຸ່ງ
0xFFEFD5

ພີຊພັຟ
0xFFDAB9

ປະເທດເປຣູ
0xCD853F

ສີ​ບົວ
0xFFC0CB

plum
0xDDA0DD

ຜົງດິບ
0xB0E0E6

ສີ​ມ່ວງ
0x800080

ສີ​ແດງ 0xFF0000

RosyBrown
0xBC8F8F

RoyalBlue
0x4169E1

ສີນ້ ຳ ຕານ
0x8B4513

salmon
0xFA8072

SandyBrown
0xF4A460

ທະເລ
0x2E8B57

ທະເລສາບ
0xFFF5EE

Sienna
0xA0522D

ເງິນ
0xC0C0C0

SkyBlue
0x87CEEB

SlateBlue
0x6A5ACD

SlateGray
0x708090

ຫິມະ
0xFFFAFA

ສີຂຽວ Spring
0x00FF7F

SteelBlue
0x4682B4

Tan 0xD2B48C

Teal
0x008080

thistle
0xD8BFD8

ຫມາກ​ເລັ່ນ
0xFF6347

Turquoise
0x40E0D0

Violet
0xEE82EE

ເຂົ້າສາລີ
0xF5DEB3

ສີ​ຂາວ
0xFFFFFF

ຄວັນຂາວ
0xF5F5F5

ສີ​ເຫຼືອງ
0xFFFF00

ສີຂຽວເຫຼືອງ
0x9ACD32

Channel Layout
ຮູບແບບຊ່ອງກໍານົດການຈັດວາງທາງກວ້າງຂອງຊ່ອງຂອງຊ່ອງໃນຫຼາຍຊ່ອງ
ກະແສສຽງ. ເພື່ອກໍານົດຮູບແບບຊ່ອງ, FFmpeg ໃຊ້ syntax ພິເສດ.

ຊ່ອງທາງສ່ວນບຸກຄົນແມ່ນຖືກກໍານົດໂດຍ id, ຕາມທີ່ລະບຸໄວ້ໃນຕາຕະລາງຂ້າງລຸ່ມນີ້:

FL ຊ້າຍ​ດ້ານ​ຫນ້າ​

FR ທາງຫນ້າດ້ານຂວາ

FC ສູນກາງດ້ານຫນ້າ

L.F.E. ຄວາມຖີ່ຕ່ ຳ

BL ກັບໄປທາງຊ້າຍ

BR ກັບໄປທາງຂວາ

FLC ທາງ​ຫນ້າ​ຊ້າຍ​ຂອງ​ສູນ​ກາງ​

FRC ທາງ​ຫນ້າ​ຂວາ​ຂອງ​ສູນ​ກາງ​

BC ສູນຫຼັງ

SL ດ້ານຊ້າຍ

SR ເບື້ອງຂວາ

TC ສູນ​ກາງ​ເທິງ​

TFL ດ້ານເທິງຊ້າຍ

TFC ສູນກາງດ້ານເທິງ

TFR ດ້ານເທິງເບື້ອງຂວາ

TBL ດ້ານເທິງກັບຊ້າຍ

TBC ສູນ​ກາງ​ຄືນ​ເທິງ​

TBR ເທິງຂວາ

DL downmix ຊ້າຍ

DR downmix ສິດ

WL ກວ້າງ​ຊ້າຍ​

WR ຂວາກວ້າງ

SDL ອ້ອມຮອບຊ້າຍໂດຍກົງ

SDR ອ້ອມຮອບຂວາ

LFE2
ຄວາມຖີ່ຕໍ່າ 2

ອົງປະກອບໂຄງຮ່າງຊ່ອງມາດຕະຖານສາມາດຖືກລະບຸໄດ້ໂດຍການໃຊ້ຕົວລະບຸຕໍ່ໄປນີ້:

mono
FC

stereo
FL+FR

2.1 FL+FR+LFE

3.0 FL+FR+FC

3.0 (ກັບ)
FL+FR+BC

4.0 FL+FR+FC+BC

quad
FL+FR+BL+BR

ສີ່ຫຼ່ຽມ
FL+FR+SL+SR

3.1 FL+FR+FC+LFE

5.0 FL+FR+FC+BL+BR

5.0 (ຂ້າງ)
FL+FR+FC+SL+SR

4.1 FL+FR+FC+LFE+BC

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

5.1 (ຂ້າງ)
FL+FR+FC+LFE+SL+SR

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

6.0(ໜ້າ)
FL+FR+FLC+FRC+SL+SR

ຫົກຫຼ່ຽມ
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(ໜ້າ)
FL+FR+LFE+FLC+FRC+SL+SR

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

7.0(ໜ້າ)
FL+FR+FC+FLC+FRC+SL+SR

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

7.1(ກວ້າງ)
FL+FR+FC+LFE+BL+BR+FLC+FRC

7.1 (ກວ້າງ-ຂ້າງ)
FL+FR+FC+LFE+FLC+FRC+SL+SR

ແປດຫຼ່ຽມ
FL+FR+FC+BL+BR+BC+SL+SR

downmix
DL+DR

ຮູບແບບຊ່ອງແບບກຳນົດເອງສາມາດລະບຸເປັນລຳດັບຂອງຄຳສັບ, ແຍກອອກດ້ວຍ '+' ຫຼື '|'.
ແຕ່ລະໄລຍະສາມາດເປັນ:

· ຊື່​ຂອງ​ຮູບ​ແບບ​ຊ່ອງ​ທາງ​ມາດ​ຕະ​ຖານ (eg mono, stereo, 4.0, quad, 5.0, ຯ ລະຯ )

·ຊື່ຂອງຊ່ອງດຽວ (ຕົວຢ່າງ FL, FR, FC, L.F.E., ຯ ລະຯ )

· ຊ່ອງ​ທາງ​ຈໍາ​ນວນ​ຫນຶ່ງ​, ໃນ​ອັດ​ສະ​ນິ​ຍົມ​, ທາງ​ເລືອກ​ຕາມ​ດ້ວຍ 'c​'​, ໃຫ້​ຜົນ​ຜະ​ລິດ​ໃນ​ຕອນ​ຕົ້ນ
ແຜນຜັງຊ່ອງສໍາລັບຈໍານວນຊ່ອງນັ້ນ (ເບິ່ງຫນ້າທີ່
"av_get_default_channel_layout")

· ໜ້າກາກຮູບແບບຊ່ອງ, ໃນເລກຖານສິບຫົກເລີ່ມຕົ້ນດ້ວຍ "0x" (ເບິ່ງ "AV_CH_*" macros ໃນ
libavutil/channel_layout.h.

ເລີ່ມຕົ້ນຈາກ libavutil ຮຸ່ນ 53 ຕົວອັກສອນຕໍ່ທ້າຍ "c" ເພື່ອລະບຸຈໍານວນຂອງ
ຊ່ອງຈະຖືກຕ້ອງການ, ໃນຂະນະທີ່ຫນ້າກາກຮູບແບບຊ່ອງທາງສາມາດຖືກກໍານົດເປັນ a
ເລກທົດສະນິຍົມ (ຖ້າ ແລະພຽງແຕ່ຖ້າບໍ່ຕິດຕາມດ້ວຍ "c").

ເບິ່ງຟັງຊັນ "av_get_channel_layout" ທີ່ກຳນົດໄວ້ໃນ libavutil/channel_layout.h.

ການສະແດງອອກ ການວິເຄາະ


ເມື່ອປະເມີນການສະແດງອອກເລກເລກ, FFmpeg ໃຊ້ຕົວປະເມີນສູດພາຍໃນ,
ປະຕິບັດໂດຍຜ່ານ libavutil/eval.h interface

ການສະແດງອອກອາດມີ unary, binary operators, constant, ແລະ functions.

ສອງສະແດງອອກ expr1 ແລະ expr2 ສາ​ມາດ​ລວມ​ເຂົ້າ​ກັນ​ເພື່ອ​ປະ​ກອບ​ເປັນ​ສໍາ​ນວນ​ອື່ນ ".expr1;expr2".
expr1 ແລະ expr2 ຖືກປະເມີນໃນທາງກັບກັນ, ແລະການສະແດງອອກໃຫມ່ປະເມີນມູນຄ່າຂອງ
expr2.

ໂຕປະຕິບັດການໄບນາຣີຕໍ່ໄປນີ້ສາມາດໃຊ້ໄດ້: "+", "-", "*", "/", "^".

ຕົວປະຕິບັດການ unary ຕໍ່ໄປນີ້ສາມາດໃຊ້ໄດ້: "+", "-".

ຟັງຊັນຕໍ່ໄປນີ້ສາມາດໃຊ້ໄດ້:

abs (x)
ຄິດໄລ່ມູນຄ່າຢ່າງແທ້ຈິງຂອງ x.

acos(x)
ຄິດໄລ່ arccosine ຂອງ x.

asin(x)
ຄິດໄລ່ arcsine ຂອງ x.

atan(x)
ຄິດໄລ່ arctangent ຂອງ x.

ລະຫວ່າງ(x, ນາທີ, ສູງສຸດ)
ກັບຄືນ 1 ຖ້າ x ແມ່ນໃຫຍ່ກວ່າຫຼືເທົ່າກັບ ນາທີ ແລະຫນ້ອຍກວ່າຫຼືເທົ່າກັບ ສູງສຸດທີ່ເຄຍ, 0
ຖ້າບໍ່ດັ່ງນັ້ນ.

bitand(x, y)
bitor(x, y)
ຄິດໄລ່ບິດບ້ຽວ ແລະ/ຫຼື ເປີດໃຊ້ງານ x ແລະ y.

ຜົນໄດ້ຮັບຂອງການປະເມີນຜົນຂອງ x ແລະ y ຖືກປ່ຽນເປັນຈໍານວນເຕັມກ່ອນທີ່ຈະດໍາເນີນການ
ການ​ດໍາ​ເນີນ​ງານ bitwise.

ໃຫ້ສັງເກດວ່າທັງການແປງເປັນຈໍານວນເຕັມແລະການແປງກັບຄືນໄປບ່ອນຈຸດລອຍສາມາດ
ສູນເສຍຄວາມແມ່ນຍໍາ. ລະວັງຜົນໄດ້ຮັບທີ່ບໍ່ຄາດຄິດສໍາລັບຈໍານວນຂະຫນາດໃຫຍ່ (ປົກກະຕິແລ້ວ 2^53 ແລະ
ໃຫຍ່ກວ່າ).

ceil(expr)
ຮອບຄ່າຂອງການສະແດງຜົນ ຕົວຢ່າງ ຂຶ້ນໄປເປັນຈຳນວນເຕັມທີ່ໃກ້ທີ່ສຸດ. ຍົກ​ຕົວ​ຢ່າງ,
"ceil(1.5)" ແມ່ນ "2.0".

ຄລິບ(x, ນາທີ, ສູງສຸດ)
ກັບຄືນມູນຄ່າຂອງ x ຕັດລະຫວ່າງ ນາທີ ແລະ ສູງສຸດທີ່ເຄຍ.

cos(x)
ຄິດໄລ່ cosine ຂອງ x.

cosh(x)
ຄິດໄລ່ hyperbolic cosine ຂອງ x.

eq(x, y)
ກັບຄືນ 1 ຖ້າ x ແລະ y ທຽບເທົ່າ, 0 ຖ້າບໍ່ດັ່ງນັ້ນ.

exp(x)
ຄິດໄລ່ເລກກຳລັງຂອງ x (ມີ "e", ຕົວເລກຂອງ Euler).

ຊັ້ນ(expr)
ຮອບຄ່າຂອງການສະແດງຜົນ ຕົວຢ່າງ ລົງໄປຫາຈຳນວນທີ່ໃກ້ທີ່ສຸດ. ຍົກ​ຕົວ​ຢ່າງ,
"floor(-1.5)" ແມ່ນ "-2.0".

Gauss(x)
ການທໍາງານຂອງ Compute Gauss ຂອງ x, ກົງກັບ "exp(-x*x/2) / sqrt(2*PI)".

gcd(x, y)
ກັບຄືນຕົວຫານທົ່ວໄປທີ່ໃຫຍ່ທີ່ສຸດຂອງ x ແລະ y. ຖ້າທັງສອງ x ແລະ y ແມ່ນ 0 ຫຼືທັງສອງຫຼືທັງສອງ
ໜ້ອຍກວ່າສູນ ພຶດຕິກຳບໍ່ໄດ້ຖືກກຳນົດ.

gt(x, y)
ກັບຄືນ 1 ຖ້າ x ແມ່ນຫຼາຍກ່ວາ y, 0 ຖ້າບໍ່ດັ່ງນັ້ນ.

gte(x, y)
ກັບຄືນ 1 ຖ້າ x ແມ່ນໃຫຍ່ກວ່າຫຼືເທົ່າກັບ y, 0 ຖ້າບໍ່ດັ່ງນັ້ນ.

hypot(x, y)
ຟັງຊັນນີ້ແມ່ນຄ້າຍຄືກັນກັບຟັງຊັນ C ທີ່ມີຊື່ດຽວກັນ; ມັນກັບຄືນມາ "sqrt(x*x +
y*y)", ຄວາມຍາວຂອງ hypotenuse ຂອງສາມຫຼ່ຽມຂວາທີ່ມີດ້ານຂອງຄວາມຍາວ x ແລະ y,
ຫຼືໄລຍະຫ່າງຂອງຈຸດ (x, y) ຈາກ​ຕົ້ນ​ກໍາ​ເນີດ​.

ຖ້າ(x, y)
ປະເມີນ x, ແລະຖ້າຫາກວ່າຜົນໄດ້ຮັບບໍ່ແມ່ນສູນກັບຄືນຜົນຂອງການປະເມີນຜົນຂອງ y,
ກັບຄືນ 0 ຖ້າບໍ່ດັ່ງນັ້ນ.

ຖ້າ(x, y, z)
ປະເມີນ x, ແລະຖ້າຜົນໄດ້ຮັບບໍ່ແມ່ນສູນ, ຜົນໄດ້ຮັບການປະເມີນຜົນຂອງ y, ຖ້າບໍ່ດັ່ງນັ້ນ
ຜົນ​ການ​ປະ​ເມີນ​ຜົນ​ຂອງ​ z.

ifnot(x, y)
ປະເມີນ x, ແລະຖ້າຫາກວ່າຜົນໄດ້ຮັບແມ່ນສູນກັບຄືນຜົນຂອງການປະເມີນຜົນຂອງ y, ກັບຄືນມາ
0 ຖ້າບໍ່ດັ່ງນັ້ນ.

ifnot(x, y, z)
ປະເມີນ x, ແລະຖ້າຫາກວ່າຜົນໄດ້ຮັບແມ່ນສູນ, ຜົນໄດ້ຮັບການປະເມີນຜົນຂອງ y, ຖ້າບໍ່ດັ່ງນັ້ນ
ຜົນ​ການ​ປະ​ເມີນ​ຜົນ​ຂອງ​ z.

isinf(x)
ກັບຄືນ 1.0 ຖ້າ x ແມ່ນ +/- INFINITY, 0.0 ຖ້າບໍ່ດັ່ງນັ້ນ.

isnan(x)
ກັບຄືນ 1.0 ຖ້າ x ແມ່ນ NAN, 0.0 ຖ້າບໍ່ດັ່ງນັ້ນ.

ld(var)
ໂຫຼດຄ່າຂອງຕົວແປພາຍໃນດ້ວຍຕົວເລກ var, ເຊິ່ງໄດ້ຖືກເກັບຮັກສາໄວ້ກ່ອນຫນ້ານີ້
ກັບ st(var, ຕົວຢ່າງ). ຟັງຊັນສົ່ງຄືນຄ່າທີ່ໂຫລດ.

ບັນທຶກ(x)
ຄິດໄລ່ໂລກາລິດທໍາມະຊາດຂອງ x.

lt(x, y)
ກັບຄືນ 1 ຖ້າ x ແມ່ນຫນ້ອຍກວ່າ y, 0 ຖ້າບໍ່ດັ່ງນັ້ນ.

lte(x, y)
ກັບຄືນ 1 ຖ້າ x ແມ່ນຫນ້ອຍກວ່າຫຼືເທົ່າກັບ y, 0 ຖ້າບໍ່ດັ່ງນັ້ນ.

ສູງສຸດ(x, y)
ກັບຄືນສູງສຸດລະຫວ່າງ x ແລະ y.

ນາທີ(x, y)
ກັບຄືນສູງສຸດລະຫວ່າງ x ແລະ y.

mod(x, y)
ຄິດໄລ່ສ່ວນທີ່ເຫຼືອຂອງການແບ່ງ x by y.

ບໍ່ (expr)
ກັບຄືນ 1.0 ຖ້າ ຕົວຢ່າງ ແມ່ນສູນ, 0.0 ຖ້າບໍ່ດັ່ງນັ້ນ.

pow(x, y)
ຄິດ​ໄລ່​ພະ​ລັງ​ງານ​ຂອງ​ x ສູງ y, ມັນເທົ່າກັບ "(x)^(y). "

ພິມ(t)
ພິມ(t, l)
ພິມມູນຄ່າຂອງການສະແດງອອກ t ກັບ loglevel lທີ່ຢູ່ ຖ້າຫາກວ່າ l ບໍ່ໄດ້ລະບຸໄວ້ຫຼັງຈາກນັ້ນເປັນຄ່າເລີ່ມຕົ້ນ
ລະດັບບັນທຶກຖືກນໍາໃຊ້. ສົ່ງຄ່າຂອງສຳນວນທີ່ພິມອອກ.

ພິມ t ດ້ວຍ loglevel l

ສຸ່ມ(x)
ສົ່ງຄ່າ pseudo random ລະຫວ່າງ 0.0 ຫາ 1.0. x ແມ່ນດັດຊະນີຂອງພາຍໃນ
ຕົວແປທີ່ຈະໃຊ້ເພື່ອຊ່ວຍປະຢັດແກ່ນ / ລັດ.

ຮາກ(expr, ສູງສຸດ)
ຊອກຫາຄ່າ input ທີ່ຟັງຊັນສະແດງໂດຍ ຕົວຢ່າງ ມີການໂຕ້ຖຽງ ld(0​) is
0 ໃນໄລຍະຫ່າງ 0.ສູງສຸດທີ່ເຄຍ.

ການສະແດງອອກໃນ ຕົວຢ່າງ ຕ້ອງໝາຍເຖິງການທໍາງານຢ່າງຕໍ່ເນື່ອງ ຫຼືຜົນໄດ້ຮັບແມ່ນບໍ່ໄດ້ກໍານົດ.

ld(0​) ຖືກໃຊ້ເພື່ອສະແດງຄ່າການປ້ອນຂໍ້ມູນຂອງຟັງຊັນ, ຊຶ່ງຫມາຍຄວາມວ່າໃຫ້
ການສະແດງອອກຈະຖືກປະເມີນຫຼາຍຄັ້ງດ້ວຍຄ່າການປ້ອນຂໍ້ມູນຕ່າງໆທີ່
ການສະແດງອອກສາມາດເຂົ້າເຖິງໂດຍຜ່ານ ld(0). ເມື່ອການສະແດງອອກປະເມີນເປັນ 0 ຫຼັງຈາກນັ້ນ
ຄ່າທີ່ສອດຄ້ອງກັນຈະຖືກສົ່ງຄືນ.

sin(x)
ຄໍາ​ນວນ sine ຂອງ​ x.

ເກີດ(x)
ຄິດໄລ່ hyperbolic sine ຂອງ x.

sqrt(expr)
ຄິດໄລ່ຮາກທີ່ສອງຂອງ ຕົວຢ່າງ. ອັນນີ້ເທົ່າກັບ "(ຕົວຢ່າງ)^.5".

squish(x)
ຄຳນວນຄຳນວນ "1/(1 + exp(4*x))".

st(var, expr)
ເກັບຮັກສາມູນຄ່າຂອງການສະແດງອອກ ຕົວຢ່າງ ໃນຕົວແປພາຍໃນ. var ລະບຸ
ຈໍາ​ນວນ​ຂອງ​ຕົວ​ປ່ຽນ​ທີ່​ຈະ​ເກັບ​ຄ່າ​, ແລະ​ມັນ​ເປັນ​ຄ່າ​ນັບ​ແຕ່ 0 ຫາ​
9. ຟັງຊັນສົ່ງຄືນຄ່າທີ່ເກັບໄວ້ໃນຕົວແປພາຍໃນ. ຫມາຍເຫດ, ຕົວແປ
ປະຈຸບັນບໍ່ໄດ້ຖືກແບ່ງປັນລະຫວ່າງການສະແດງອອກ.

tan (x)
ຄິດໄລ່ tangent ຂອງ x.

fishy(x)
ຄິດໄລ່ hyperbolic tangent ຂອງ x.

Taylor (expr, x)
Taylor (expr, x, id)
ປະເມີນຊຸດ Taylor ຢູ່ x, ໄດ້ຮັບການສະແດງອອກທີ່ເປັນຕົວແທນຂອງ "ld(id)"-th
ອະນຸພັນຂອງຟັງຊັນຢູ່ທີ່ 0.

ເມື່ອຊຸດບໍ່ converge ຜົນໄດ້ຮັບແມ່ນບໍ່ໄດ້ກໍານົດ.

ld(id) ຖືກນໍາໃຊ້ເພື່ອເປັນຕົວແທນຂອງຄໍາສັ່ງອະນຸພັນໃນ ຕົວຢ່າງ, ຊຶ່ງຫມາຍຄວາມວ່າໃຫ້
ການສະແດງອອກຈະຖືກປະເມີນຫຼາຍຄັ້ງດ້ວຍຄ່າການປ້ອນຂໍ້ມູນຕ່າງໆທີ່
ການສະແດງອອກສາມາດເຂົ້າເຖິງໄດ້ໂດຍຜ່ານ "ld(id)". ຖ້າ id ບໍ່ໄດ້ລະບຸໄວ້ຫຼັງຈາກນັ້ນ 0 ແມ່ນສົມມຸດ.

ໝາຍເຫດ, ເມື່ອເຈົ້າມີອະນຸພັນຢູ່ y ແທນ 0, "taylor(expr, xy)" ສາມາດເປັນ.
ໃຊ້ແລ້ວ.

ທີ່ໃຊ້ເວລາ(0​)
ກັບຄືນເວລາປະຈຸບັນ (wallclock) ເປັນວິນາທີ.

trunc(expr)
ຮອບຄ່າຂອງການສະແດງຜົນ ຕົວຢ່າງ ໄປຫາສູນໄປຫາຈຳນວນເຕັມທີ່ໃກ້ທີ່ສຸດ. ຍົກ​ຕົວ​ຢ່າງ,
"trunc(-1.5)" ແມ່ນ "-1.0".

ໃນຂະນະທີ່ (cond, expr)
ປະເມີນການສະແດງອອກ ຕົວຢ່າງ ໃນຂະນະທີ່ການສະແດງອອກ ຂົ້ນ ບໍ່ແມ່ນສູນ, ແລະສົ່ງຄືນຄ່າ
ຂອງສຸດທ້າຍ ຕົວຢ່າງ ການປະເມີນຜົນ, ຫຼື NAN ຖ້າ ຂົ້ນ ບໍ່ຖືກຕ້ອງສະເໝີ.

ຄົງທີ່ຕໍ່ໄປນີ້ແມ່ນມີຢູ່:

PI ພື້ນທີ່ຂອງແຜ່ນ, ປະມານ 3.14

E exp(1) (ເລກອອຍເລີ), ປະມານ 2.718

PHI ອັດຕາສ່ວນທອງ (1+sqrt(5))/2, ປະມານ 1.618

ສົມມຸດວ່າການສະແດງອອກຖືກຖືວ່າເປັນ "ຄວາມຈິງ" ຖ້າມັນມີມູນຄ່າທີ່ບໍ່ແມ່ນສູນ, ໃຫ້ສັງເກດວ່າ:

"*" ເຮັດວຽກຄືກັບ AND

"+" ເຮັດວຽກຄືກັບ OR

ສໍາລັບຕົວຢ່າງ, ການກໍ່ສ້າງ:

ຖ້າ (A ແລະ B) ຫຼັງຈາກນັ້ນ C

ເທົ່າກັບ:

ຖ້າ(A*B,C)

ໃນລະຫັດ C ຂອງທ່ານ, ທ່ານສາມາດຂະຫຍາຍບັນຊີລາຍຊື່ຂອງ unary ແລະ binary functions, ແລະກໍານົດ
ຄົງທີ່ຮັບຮູ້, ເພື່ອໃຫ້ພວກມັນມີຢູ່ສໍາລັບການສະແດງອອກຂອງເຈົ້າ.

ຜູ້ປະເມີນຍັງຮັບຮູ້ຄຳນຳໜ້າຫົວໜ່ວຍລະບົບສາກົນ. ຖ້າ 'i' ຖືກຕໍ່ທ້າຍ
ຫຼັງ​ຈາກ​ຄໍາ​ນໍາ​ຫນ້າ​, ຄໍາ​ນໍາ​ຫນ້າ​ຄູ່​ແມ່ນ​ໄດ້​ຖືກ​ນໍາ​ໃຊ້​, ເຊິ່ງ​ແມ່ນ​ອີງ​ໃສ່​ອໍາ​ນາດ​ຂອງ 1024 ແທນ​ທີ່​ຈະ​ເປັນ​.
ອຳນາດຂອງ 1000. 'B' postfix ຄູນຄ່າດ້ວຍ 8, ແລະສາມາດຕໍ່ທ້າຍໄດ້ຫຼັງຈາກ
unit prefix ຫຼືໃຊ້ຢ່າງດຽວ. ນີ້ອະນຸຍາດໃຫ້ໃຊ້ຕົວຢ່າງ 'KB', 'MiB', 'G' ແລະ 'B' as
ຕົວເລກ postfix.

ບັນຊີລາຍຊື່ຂອງຄໍານໍາຫນ້າລະບົບສາກົນທີ່ມີຢູ່ດັ່ງຕໍ່ໄປນີ້, ໂດຍມີການຊີ້ບອກເຖິງ
ອຳນາດທີ່ສອດຄ້ອງກັນຂອງ 10 ແລະຂອງ 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

OPENCL OPTIONS


ເມື່ອ FFmpeg ຖືກຕັ້ງຄ່າດ້ວຍ "--enable-opencl", ມັນເປັນໄປໄດ້ທີ່ຈະກໍານົດທາງເລືອກສໍາລັບ.
ບໍລິບົດ OpenCL ທົ່ວໂລກ.

ບັນຊີລາຍຊື່ຂອງທາງເລືອກທີ່ສະຫນັບສະຫນູນດັ່ງຕໍ່ໄປນີ້:

build_options
ກໍານົດຕົວເລືອກການກໍ່ສ້າງທີ່ໃຊ້ເພື່ອລວບລວມແກ່ນທີ່ລົງທະບຽນ.

ເບິ່ງເອກະສານອ້າງອີງ "OpenCL Specification Version: 1.2 ບົດທີ 5.6.4".

platform_idx
ເລືອກດັດຊະນີຂອງເວທີເພື່ອແລ່ນລະຫັດ OpenCL.

ດັດຊະນີທີ່ລະບຸຕ້ອງເປັນຫນຶ່ງໃນດັດຊະນີໃນບັນຊີລາຍຊື່ອຸປະກອນທີ່ສາມາດເປັນ
ໄດ້ຮັບດ້ວຍ "ffmpeg -opencl_bench" ຫຼື "av_opencl_get_device_list()".

device_idx
ເລືອກດັດຊະນີຂອງອຸປະກອນທີ່ໃຊ້ເພື່ອແລ່ນລະຫັດ OpenCL.

ດັດຊະນີທີ່ລະບຸຕ້ອງເປັນຫນຶ່ງໃນດັດຊະນີໃນບັນຊີລາຍຊື່ອຸປະກອນທີ່ສາມາດເປັນ
ໄດ້ຮັບດ້ວຍ "ffmpeg -opencl_bench" ຫຼື "av_opencl_get_device_list()".

CODEC OPTIONS


libavcodec ໃຫ້ບາງທາງເລືອກທົ່ວໂລກທົ່ວໄປ, ເຊິ່ງສາມາດຕັ້ງຢູ່ໃນຕົວເຂົ້າລະຫັດທັງຫມົດແລະ
ເຄື່ອງຖອດລະຫັດ. ນອກຈາກນັ້ນແຕ່ລະຕົວແປງສັນຍານອາດຈະສະຫນັບສະຫນູນອັນທີ່ເອີ້ນວ່າທາງເລືອກສ່ວນຕົວ, ເຊິ່ງແມ່ນສະເພາະ
ສໍາລັບຕົວແປງສັນຍານທີ່ໃຫ້.

ບາງຄັ້ງ, ທາງເລືອກທົ່ວໂລກອາດຈະມີຜົນກະທົບສະເພາະຂອງຕົວແປງສັນຍານ, ແລະອາດຈະເປັນ
nonsensical ຫຼື ignored ໂດຍຄົນອື່ນ, ດັ່ງນັ້ນທ່ານຈໍາເປັນຕ້ອງໄດ້ຮັບຮູ້ຄວາມຫມາຍຂອງທີ່ກໍານົດໄວ້
ທາງເລືອກ. ນອກຈາກນີ້ບາງທາງເລືອກແມ່ນຫມາຍເຖິງພຽງແຕ່ສໍາລັບການຖອດລະຫັດຫຼືການເຂົ້າລະຫັດ.

ທາງເລືອກອາດຈະຖືກກໍານົດໂດຍການລະບຸ -ທາງເລືອກ ມູນຄ່າ ໃນເຄື່ອງມື FFmpeg, ຫຼືໂດຍການຕັ້ງ
ຄ່າຢ່າງຈະແຈ້ງໃນຕົວເລືອກ "AVCodecContext" ຫຼືໃຊ້ libavutil/opt.h API ສໍາລັບ
ການນຳໃຊ້ໂປຣແກຣມ.

ບັນຊີລາຍຊື່ຂອງທາງເລືອກທີ່ສະຫນັບສະຫນູນດັ່ງຕໍ່ໄປນີ້:

b integer (ການເຂົ້າລະຫັດ, ສຽງ, ວິດີໂອ)
ກໍານົດອັດຕາບິດເປັນ bits/s. ຄ່າເລີ່ມຕົ້ນແມ່ນ 200K.

ab integer (ການເຂົ້າລະຫັດ, ສຽງ)
ກໍານົດອັດຕາບິດສຽງ (ເປັນ bits/s). ຄ່າເລີ່ມຕົ້ນແມ່ນ 128K.

bt integer (ການເຂົ້າລະຫັດ, ວິດີໂອ)
ກໍານົດຄວາມທົນທານອັດຕາບິດຂອງວິດີໂອ (ໃນ bits/s). ໃນໂຫມດ 1-pass, ຄວາມທົນທານອັດຕາບິດກໍານົດ
ການຄວບຄຸມອັດຕາໄກປານໃດແມ່ນເຕັມໃຈທີ່ຈະ deviate ຈາກຄ່າອັດຕາບິດສະເລ່ຍເປົ້າຫມາຍ. ນີ້
ບໍ່ກ່ຽວຂ້ອງກັບອັດຕາບິດຂັ້ນຕ່ຳ/ສູງສຸດ. ການຫຼຸດລົງຄວາມທົນທານຫຼາຍເກີນໄປມີຜົນກະທົບທາງລົບ
ກ່ຽວກັບຄຸນນະພາບ.

ທົງ ທົງ (ການຖອດລະຫັດ/ການເຂົ້າລະຫັດ,ສຽງ,ວິດີໂອ,ຄຳບັນຍາຍ)
ຕັ້ງທຸງທົ່ວໄປ.

ຄ່າທີ່ເປັນໄປໄດ້:

mv4 ໃຊ້ vector motion ສີ່ໂດຍ macroblock (mpeg4).

qpel
ໃຊ້ການຊົດເຊີຍການເຄື່ອນໄຫວ 1/4 pel.

loop
ໃຊ້ຕົວກອງ loop.

qscale
ໃຊ້ qscale ຄົງທີ່.

GMC ໃຊ້ gmc.

mv0 ພະຍາຍາມ mb ກັບ mv=<0,0> ສະເໝີ.

input_preserved
ຜ່ານ1
ໃຊ້ການຄວບຄຸມອັດຕາ 2pass ພາຍໃນໃນໂຫມດຜ່ານທໍາອິດ.

ຜ່ານ2
ໃຊ້ການຄວບຄຸມອັດຕາ 2pass ພາຍໃນໃນໂຫມດຜ່ານທີສອງ.

ສີຂີ້ເຖົ່າ
ພຽງແຕ່ຖອດລະຫັດ/ເຂົ້າລະຫັດສີເທົາ.

emu_edge
ຢ່າແຕ້ມຂອບ.

psnr
ກໍານົດຂໍ້ຜິດພາດ [?] ຕົວແປໃນລະຫວ່າງການເຂົ້າລະຫັດ.

ຖືກຕັດອອກ
ນາກ ປັບປະລິມານການປັບຕົວໃຫ້ເປັນປົກກະຕິ.

ildct
ໃຊ້ DCT interlaced.

low_delay
ບັງຄັບຄວາມລ່າຊ້າຕໍ່າ.

global_header
ວາງສ່ວນຫົວທົ່ວໂລກໃນ extradata ແທນທຸກໆຄີເຟຣມ.

bitexact
ພຽງແຕ່ຂຽນຂໍ້ມູນ platform-, build- ແລະ time-independent. (ຍົກເວັ້ນ (I)DCT). ນີ້
ຮັບປະກັນວ່າເອກະສານແລະຂໍ້ມູນ checksums ສາມາດຜະລິດຄືນໄດ້ແລະກົງກັນລະຫວ່າງເວທີ.
ການນໍາໃຊ້ຫຼັກຂອງມັນແມ່ນສໍາລັບການທົດສອບການຖົດຖອຍ.

aic ນຳໃຊ້ H263 advanced intra coding / mpeg4 ac ຄາດຄະເນ.

cbp ເຊົາສະໜັບສະໜຸນແລ້ວ, ໃຫ້ໃຊ້ຕົວເລືອກສ່ວນຕົວຂອງ mpegvideo ແທນ.

qprd
ເຊົາສະໜັບສະໜຸນແລ້ວ, ໃຫ້ໃຊ້ຕົວເລືອກສ່ວນຕົວຂອງ mpegvideo ແທນ.

ວົນ
ນຳໃຊ້ການປະເມີນການເຄື່ອນໄຫວແບບ interlaced.

cgop
ໃຊ້ gop ປິດ.

me_method integer (ການເຂົ້າລະຫັດ, ວິດີໂອ)
ກໍານົດວິທີການຄາດຄະເນການເຄື່ອນໄຫວ.

ຄ່າທີ່ເປັນໄປໄດ້:

ສູນ
ການ​ຄາດ​ຄະ​ເນ​ການ​ເຄື່ອນ​ໄຫວ​ສູນ (ໄວ​ທີ່​ສຸດ​)

ຢ່າງເຕັມທີ່
ການ​ຄາດ​ຄະ​ເນ​ການ​ເຄື່ອນ​ໄຫວ​ເຕັມ (ຊ້າ​ສຸດ​)

epzs
EPZS ການຄາດຄະເນການເຄື່ອນໄຫວ (ຄ່າເລີ່ມຕົ້ນ)

esa ການຄາດຄະເນການເຄື່ອນໄຫວ esa (ນາມແຝງສໍາລັບເຕັມ)

tesa
tesa ການ​ຄາດ​ຄະ​ເນ​ການ​ເຄື່ອນ​ໄຫວ​

dia ການ​ຄາດ​ຄະ​ເນ​ການ​ເຄື່ອນ​ໄຫວ dia (ນາມ​ແຝງ​ສໍາ​ລັບ epzs​)

log ບັນທຶກການເຄື່ອນໄຫວຄາດຄະເນ

ຟອດ
phods ການ​ຄາດ​ຄະ​ເນ​ການ​ເຄື່ອນ​ໄຫວ​

x1 X1 ການ​ຄາດ​ຄະ​ເນ​ການ​ເຄື່ອນ​ໄຫວ​

hex ການ​ຄາດ​ຄະ​ເນ​ການ​ເຄື່ອນ​ໄຫວ hex​

ເອີ umh ການ​ຄາດ​ຄະ​ເນ​ການ​ເຄື່ອນ​ໄຫວ​

ເຮັດຊ້ຳ
iter ການ​ຄາດ​ຄະ​ເນ​ການ​ເຄື່ອນ​ໄຫວ​

extradata_size integer
ກໍານົດຂະຫນາດ extradata.

time_base ສົມເຫດສົມຜົນ ຈໍານວນ
ກໍານົດຖານເວລາ codec.

ມັນເປັນຫົວໜ່ວຍພື້ນຖານຂອງເວລາ (ເປັນວິນາທີ) ໃນຂໍ້ກໍານົດຂອງເວລາກອບ
ເປັນຕົວແທນ. ສໍາລັບເນື້ອຫາ fps ຄົງທີ່, timebase ຄວນເປັນ "1 / frame_rate" ແລະ timestamp
ການເພີ່ມຂຶ້ນຄວນຈະເປັນຄືກັນ 1.

g integer (ການເຂົ້າລະຫັດ, ວິດີໂອ)
ກໍານົດກຸ່ມຂອງຂະຫນາດຮູບພາບ. ຄ່າເລີ່ມຕົ້ນແມ່ນ 12.

ar integer (ການຖອດລະຫັດ/ການເຂົ້າລະຫັດ, ສຽງ)
ຕັ້ງຄ່າອັດຕາການເກັບຕົວຢ່າງສຽງ (ເປັນ Hz).

ac integer (ການຖອດລະຫັດ/ການເຂົ້າລະຫັດ, ສຽງ)
ກໍານົດຈໍານວນຊ່ອງສຽງ.

ຕັດ​ອອກ integer (ການເຂົ້າລະຫັດ, ສຽງ)
ກໍານົດ bandwidth ຕັດ.

frame_size integer (ການເຂົ້າລະຫັດ, ສຽງ)
ກໍານົດຂະຫນາດກອບສຽງ.

ແຕ່ລະກອບທີ່ສົ່ງຍົກເວັ້ນສຸດທ້າຍຕ້ອງມີຕົວຢ່າງ frame_size ຢ່າງແທ້ຈິງຕໍ່
ຊ່ອງ. ອາດຈະເປັນ 0 ເມື່ອຕົວແປງສັນຍານໄດ້ຕັ້ງ CODEC_CAP_VARIABLE_FRAME_SIZE, ໃນກໍລະນີນັ້ນ.
ຂະຫນາດຂອງກອບບໍ່ໄດ້ຖືກຈໍາກັດ. ມັນຖືກກໍານົດໂດຍບາງຕົວຖອດລະຫັດເພື່ອຊີ້ໃຫ້ເຫັນຄົງທີ່
ຂະ ໜາດ ກອບ.

ໝາຍເລກກອບ integer
ກໍານົດຕົວເລກກອບ.

ຊັກຊ້າ integer
qcomp float (ການເຂົ້າລະຫັດ, ວິດີໂອ)
ກໍານົດການບີບອັດຂະຫນາດວິດີໂອ quantizer (VBR). ມັນຖືກນໍາໃຊ້ເປັນຄ່າຄົງທີ່ໃນ
ສົມຜົນການຄວບຄຸມອັດຕາ. ຊ່ວງທີ່ແນະນຳສຳລັບຄ່າເລີ່ມຕົ້ນ rc_eq: 0.0-1.0.

qblur float (ການເຂົ້າລະຫັດ, ວິດີໂອ)
ຕັ້ງຄ່າລະດັບຄວາມມົວຂອງວິດີໂອ quantizer (VBR).

qmin integer (ການເຂົ້າລະຫັດ, ວິດີໂອ)
ກຳນົດຂະໜາດເຄື່ອງວັດແທກວິດີໂອຂັ້ນຕ່ຳ (VBR). ຕ້ອງລວມຢູ່ລະຫວ່າງ -1 ແລະ 69, ຄ່າເລີ່ມຕົ້ນ
ແມ່ນ 2.

qmax integer (ການເຂົ້າລະຫັດ, ວິດີໂອ)
ກໍານົດຂະຫນາດ quantizer ວິດີໂອສູງສຸດ (VBR). ຕ້ອງລວມຢູ່ລະຫວ່າງ -1 ແລະ 1024, ຄ່າເລີ່ມຕົ້ນ
ຄ່າແມ່ນ 31.

qdiff integer (ການເຂົ້າລະຫັດ, ວິດີໂອ)
ກໍານົດຄວາມແຕກຕ່າງສູງສຸດລະຫວ່າງ quantizer scale (VBR).

bf integer (ການເຂົ້າລະຫັດ, ວິດີໂອ)
ຕັ້ງຈຳນວນສູງສຸດຂອງເຟຣມ B ລະຫວ່າງທີ່ບໍ່ແມ່ນເຟຣມ B.

ຕ້ອງເປັນຈໍານວນເຕັມລະຫວ່າງ -1 ແລະ 16. 0 ຫມາຍຄວາມວ່າ B-frames ຖືກປິດໃຊ້ງານ. ຖ້າມູນຄ່າ
ຂອງ -1 ຖືກນໍາໃຊ້, ມັນຈະເລືອກຄ່າອັດຕະໂນມັດຂຶ້ນຢູ່ກັບຕົວເຂົ້າລະຫັດ.

ຄ່າເລີ່ມຕົ້ນແມ່ນ 0.

b_qfactor float (ການເຂົ້າລະຫັດ, ວິດີໂອ)
ກໍານົດປັດໄຈ qp ລະຫວ່າງ P ແລະ B frames.

rc_strategy integer (ການເຂົ້າລະຫັດ, ວິດີໂອ)
ກໍານົດວິທີການຄວບຄຸມອັດຕາ.

b_ຍຸດທະສາດ integer (ການເຂົ້າລະຫັດ, ວິດີໂອ)
ຕັ້ງຍຸດທະສາດເພື່ອເລືອກລະຫວ່າງ I/P/B-frames.

ps integer (ການເຂົ້າລະຫັດ, ວິດີໂອ)
ກໍານົດຂະຫນາດ payload RTP ເປັນ bytes.

mv_bits integer
header_bits integer
i_tex_bits integer
p_tex_bits integer
i_count integer
p_count integer
ຂ້າມ_ນັບ integer
misc_bits integer
frame_bits integer
codec_tag integer
bug ທົງ (ການຖອດລະຫັດ, ວິດີໂອ)
ການແກ້ໄຂບັນຫາບໍ່ໄດ້ກວດພົບຂໍ້ຜິດພາດຂອງຕົວເຂົ້າລະຫັດອັດຕະໂນມັດ.

ຄ່າທີ່ເປັນໄປໄດ້:

ກວດຫາອັດຕະໂນມັດ
old_msmpeg4
ໄຟລ໌ msmpeg4v3 ຂອງ lavc ເກົ່າບາງອັນ (ບໍ່ມີການກວດຫາອັດຕະໂນມັດ)

xvid_ilace
ຂໍ້ຜິດພາດ Xvid interlacing (ກວດພົບອັດຕະໂນມັດຖ້າ fourcc==XVIX)

ump4
(ກວດພົບອັດຕະໂນມັດຖ້າ fourcc==UMP4)

no_padding
ແມງໄມ້ padding (ກວດພົບອັດຕະໂນມັດ)

avi
ac_vlc
ບັກ vlc ທີ່ຜິດກົດໝາຍ (ກວດພົບອັດຕະໂນມັດຕໍ່ສີ່ຊີຊີ)

qpel_chroma
std_qpel
qpel ມາດຕະຖານເກົ່າ (ກວດພົບອັດຕະໂນມັດຕໍ່ສີ່cc/ສະບັບ)

qpel_chroma2
direct_blocksize
direct-qpel-blocksize bug (ກວດພົບອັດຕະໂນມັດຕໍ່ສີ່cc/ສະບັບ)

ແຂບ
ຂໍ້ຜິດພາດຂອງແຜ່ນຂອບ (ກວດພົບອັດຕະໂນມັດຕໍ່ສີ່ຊີຊີ/ຮຸ່ນ)

hpel_chroma
dc_clip
ms ແກ້ໄຂຂໍ້ບົກພ່ອງຕ່າງໆໃນຕົວຖອດລະຫັດຂອງ Microsoft ທີ່ແຕກຫັກ.

ລຳ ຕົ້ນ
ເຟຣມ tracated

ເລລິມ integer (ການເຂົ້າລະຫັດ, ວິດີໂອ)
ກໍານົດຂອບເຂດການກໍາຈັດຄ່າສໍາປະສິດດຽວສໍາລັບການ luminance (ຄ່າລົບຍັງ
ພິຈາລະນາຄ່າສໍາປະສິດ DC).

ເຊລິມ integer (ການເຂົ້າລະຫັດ, ວິດີໂອ)
ກໍານົດຂອບເຂດການກໍາຈັດຄ່າສໍາປະສິດດຽວສໍາລັບ chrominance (ຄ່າລົບຍັງ
ພິຈາລະນາຄ່າສໍາປະສິດ dc)

ຢ່າງເຄັ່ງຄັດ integer (ການຖອດລະຫັດ/ການເຂົ້າລະຫັດ,ສຽງ,ວິດີໂອ)
ກໍານົດວິທີການປະຕິບັດຕາມມາດຕະຖານຢ່າງເຂັ້ມງວດ.

ຄ່າທີ່ເປັນໄປໄດ້:

ຫຼາຍ
ປະຕິບັດຕາມຢ່າງເຂັ້ມງວດກັບລຸ້ນທີ່ເຂັ້ມງວດກວ່າຂອງ spec ຫຼືຊອບແວອ້າງອີງ

ຢ່າງເຄັ່ງຄັດ
ປະຕິບັດຕາມຢ່າງເຂັ້ມງວດກັບທຸກສິ່ງທີ່ຢູ່ໃນ spec ບໍ່ວ່າຜົນສະທ້ອນໃດກໍ່ຕາມ

ປົກກະຕິ
unofficial
ອະນຸຍາດໃຫ້ຂະຫຍາຍທີ່ບໍ່ເປັນທາງການ

ທົດລອງ
ອະ​ນຸ​ຍາດ​ໃຫ້​ສິ່ງ​ທີ່​ບໍ່​ໄດ້​ມາດ​ຕະ​ຖານ​ການ​ທົດ​ລອງ​, ການ​ທົດ​ລອງ (ບໍ່​ສໍາ​ເລັດ / ເຮັດ​ວຽກ​ຢູ່​ໃນ​
ຄວາມຄືບຫນ້າ / ບໍ່ໄດ້ທົດສອບດີ) ຕົວຖອດລະຫັດແລະຕົວເຂົ້າລະຫັດ. ຫມາຍເຫດ: ຕົວຖອດລະຫັດທົດລອງສາມາດ
ສ້າງຄວາມສ່ຽງດ້ານຄວາມປອດໄພ, ຢ່າໃຊ້ອັນນີ້ເພື່ອຖອດລະຫັດການປ້ອນຂໍ້ມູນທີ່ບໍ່ເຊື່ອຖື.

b_qoffset float (ການເຂົ້າລະຫັດ, ວິດີໂອ)
ກໍານົດ QP offset ລະຫວ່າງ P ແລະ B frames.

err_detect ທົງ (ການຖອດລະຫັດ, ສຽງ, ວິດີໂອ)
ຕັ້ງທຸງກວດຫາຄວາມຜິດພາດ.

ຄ່າທີ່ເປັນໄປໄດ້:

ກວດເຊັກ
ກວດສອບ CRCs ທີ່ຝັງໄວ້

bitstream
ກວດ​ສອບ​ການ​ບິດ​ເບືອນ​ສະ​ເພາະ bitstream​

buffer
ກວດ​ສອບ​ຄວາມ​ຍາວ bitstream ທີ່​ບໍ່​ເຫມາະ​ສົມ​

ລະເບີດ
ຍົກເລີກການຖອດລະຫັດໃນການກວດສອບຄວາມຜິດພາດເລັກນ້ອຍ

ignore_err
ບໍ່ສົນໃຈການຖອດລະຫັດຄວາມຜິດພາດ, ແລະສືບຕໍ່ການຖອດລະຫັດ. ນີ້ແມ່ນເປັນປະໂຫຍດຖ້າທ່ານຕ້ອງການ
ວິເຄາະເນື້ອໃນຂອງວິດີໂອ ແລະດັ່ງນັ້ນຕ້ອງການໃຫ້ທຸກສິ່ງທຸກຢ່າງຖືກຖອດລະຫັດບໍ່ວ່າ
ແມ່ນ​ຫຍັງ. ທາງ​ເລືອກ​ນີ້​ຈະ​ບໍ່​ໄດ້​ຮັບ​ຜົນ​ໃນ​ວິ​ດີ​ໂອ​ທີ່​ຫນ້າ​ຊື່ນ​ຊົມ​ໃນ​ກໍ​ລະ​ນີ​ຂອງ​
ຄວາມຜິດພາດ.

ລະມັດລະວັງ
ພິ ຈາ ລະ ນາ ສິ່ງ ທີ່ ລະ ເມີດ spec ແລະ ບໍ່ ໄດ້ ເຫັນ ໃນ ທໍາ ມະ ຊາດ ເປັນ ຄວາມ ຜິດ ພາດ

compliant
ພິ​ຈາ​ລະ​ນາ​ການ​ບໍ່​ສອດ​ຄ່ອງ​ກັບ spec ທັງ​ຫມົດ​ເປັນ​ຄວາມ​ຜິດ​ພາດ​

ຮຸກຮານ
ພິຈາລະນາສິ່ງທີ່ຕົວເຂົ້າລະຫັດທີ່ດີບໍ່ຄວນເຮັດເປັນຄວາມຜິດພາດ

has_b_frames integer
block_align integer
mpeg_quant integer (ການເຂົ້າລະຫັດ, ວິດີໂອ)
ໃຊ້ MPEG quantizers ແທນ H.263.

qsquish float (ການເຂົ້າລະຫັດ, ວິດີໂອ)
ວິທີການຮັກສາ quantizer ລະຫວ່າງ qmin ແລະ qmax (0 = clip, 1 = ໃຊ້ຄວາມແຕກຕ່າງ
ໜ້າ ທີ່).

rc_qmod_amp float (ການເຂົ້າລະຫັດ, ວິດີໂອ)
ກໍານົດໂມດູນປະລິມານການທົດລອງ.

rc_qmod_freq integer (ການເຂົ້າລະຫັດ, ວິດີໂອ)
ກໍານົດໂມດູນປະລິມານການທົດລອງ.

rc_override_count integer
rc_eq string (ການເຂົ້າລະຫັດ, ວິດີໂອ)
ກໍານົດສົມຜົນການຄວບຄຸມອັດຕາ. ເມື່ອຄິດໄລ່ການສະແດງອອກ, ນອກເຫນືອຈາກມາດຕະຖານ
ຫນ້າທີ່ກໍານົດໃນພາກ 'Expression Evaluation', ຫນ້າທີ່ຕໍ່ໄປນີ້ແມ່ນ
ມີ: bits2qp(bits), qp2bits(qp). ນອກຈາກນີ້ຍັງມີຄ່າຄົງທີ່ຕໍ່ໄປນີ້:
iTex pTex tex mv fCode iCount mcVar var isI isP isB avgQP qComp avgIITEx avgPITEx
avgPPTex avgBPTex avgTex.

ສູງສຸດ integer (ການເຂົ້າລະຫັດ, ສຽງ, ວິດີໂອ)
ຕັ້ງຄ່າຄວາມທົນທານອັດຕາບິດສູງສຸດ (ເປັນບິດ/ວິ). ຕ້ອງການ bufsize ເພື່ອຕັ້ງຄ່າ.

ຕໍ່າສຸດ integer (ການເຂົ້າລະຫັດ, ສຽງ, ວິດີໂອ)
ກໍານົດຄວາມທົນທານອັດຕາບິດຂັ້ນຕ່ໍາ (ໃນ bits/s). ມີປະໂຫຍດທີ່ສຸດໃນການຕັ້ງຄ່າການເຂົ້າລະຫັດ CBR. ມັນ​ແມ່ນ
ຂອງການນໍາໃຊ້ພຽງເລັກນ້ອຍຖ້າບໍ່ດັ່ງນັ້ນ.

ຂະໜາດ integer (ການເຂົ້າລະຫັດ, ສຽງ, ວິດີໂອ)
ກໍານົດຂະຫນາດ buffer ຄວບຄຸມອັດຕາ (ເປັນບິດ).

rc_buf_aggressivity float (ການເຂົ້າລະຫັດ, ວິດີໂອ)
ໃນປັດຈຸບັນບໍ່ມີປະໂຍດ.

i_qfactor float (ການເຂົ້າລະຫັດ, ວິດີໂອ)
ກໍານົດປັດໄຈ QP ລະຫວ່າງ P ແລະ I frames.

i_qoffset float (ການເຂົ້າລະຫັດ, ວິດີໂອ)
ກໍານົດ QP offset ລະຫວ່າງ P ແລະ I frames.

rc_init_cplx float (ການເຂົ້າລະຫັດ, ວິດີໂອ)
ກໍານົດຄວາມສັບສົນເບື້ອງຕົ້ນສໍາລັບການເຂົ້າລະຫັດ 1-pass.

dct integer (ການເຂົ້າລະຫັດ, ວິດີໂອ)
ຕັ້ງຄ່າສູດການຄິດໄລ່ DCT.

ຄ່າທີ່ເປັນໄປໄດ້:

ອັດຕະໂນມັດ
ເລືອກອັນດີອັດຕະໂນມັດ (ຄ່າເລີ່ມຕົ້ນ)

ໄວ
ຈຳນວນເຕັມໄວ

int ຈຳນວນທີ່ຖືກຕ້ອງ

ມມ
Altivec
ຟານ
ຈຸດລອຍ AAN DCT

lumi_mask float (ການເຂົ້າລະຫັດ, ວິດີໂອ)
ບີບອັດພື້ນທີ່ສະຫວ່າງໃຫ້ແຂງແຮງກວ່າພື້ນທີ່ກາງ.

tcplx_mask float (ການເຂົ້າລະຫັດ, ວິດີໂອ)
ກໍານົດການປິດບັງຄວາມສັບສົນຊົ່ວຄາວ.

scplx_mask float (ການເຂົ້າລະຫັດ, ວິດີໂອ)
ກໍານົດການປິດບັງຄວາມຊັບຊ້ອນທາງກວ້າງຂອງພື້ນ.

p_mask float (ການເຂົ້າລະຫັດ, ວິດີໂອ)
ຕັ້ງໜ້າກາກລະຫວ່າງກັນ.

dark_mask float (ການເຂົ້າລະຫັດ, ວິດີໂອ)
ບີບອັດພື້ນທີ່ມືດໃຫ້ແຮງກວ່າພື້ນທີ່ກາງ.

idct integer (ການຖອດລະຫັດ/ການເຂົ້າລະຫັດ, ວິດີໂອ)
ເລືອກການປະຕິບັດ IDCT.

ຄ່າທີ່ເປັນໄປໄດ້:

ອັດຕະໂນມັດ
int
ງ່າຍດາຍ
simplemmx
ງ່າຍດາຍອັດຕະໂນມັດ
ເລືອກ IDCT ທີ່ເຂົ້າກັນໄດ້ກັບແບບງ່າຍໆໂດຍອັດຕະໂນມັດ

ແຂນ
Altivec
sh4
ອາວຸດງ່າຍດາຍ
simplearmv5te
simplearmv6
ງ່າຍດາຍ
simplealpha
ip
xvidmmx
ຟານີ
ຈຸດລອຍ AAN IDCT

slice_count integer
ec ທົງ (ການຖອດລະຫັດ, ວິດີໂອ)
ກໍານົດຍຸດທະສາດການປິດບັງຄວາມຜິດພາດ.

ຄ່າທີ່ເປັນໄປໄດ້:

guess_mvs
ການຊອກຫາ vector motion ຊ້ຳໆ (MV) (ຊ້າ)

ປົດບລັອກ
ໃຊ້ຕົວກອງ deblock ທີ່ເຂັ້ມແຂງສໍາລັບ MBs ທີ່ເສຍຫາຍ

favor_inter
ເງື່ອນໄຂການຄາດເດົາຈາກກອບທີ່ຜ່ານມາແທນທີ່ຈະເປັນປະຈຸບັນ

bits_per_coded_sample integer
ຄາດ integer (ການເຂົ້າລະຫັດ, ວິດີໂອ)
ກໍານົດວິທີການຄາດຄະເນ.

ຄ່າທີ່ເປັນໄປໄດ້:

ໄວ້
plane
ປານກາງ
ລັກສະນະ ສົມເຫດສົມຜົນ ຈໍານວນ (ການເຂົ້າລະຫັດ, ວິດີໂອ)
ກໍານົດອັດຕາສ່ວນຕົວຢ່າງ.

debug ທົງ (ການຖອດລະຫັດ/ການເຂົ້າລະຫັດ,ສຽງ,ວິດີໂອ,ຄຳບັນຍາຍ)
ພິມຂໍ້ມູນດີບັກສະເພາະ.

ຄ່າທີ່ເປັນໄປໄດ້:

pict
ຂໍ້​ມູນ​ຮູບ​ພາບ​

rc ການຄວບຄຸມອັດຕາ

bitstream
mb_type
ປະເພດ macroblock (MB).

qp ຕົວກໍານົດການປະລິມານຕໍ່ບລັອກ (QP)

mv vector motion

dct_coeff
green_metadata
ສະແດງ metadata ຄວາມຊັບຊ້ອນສໍາລັບກອບທີ່ຈະມາເຖິງ, GoP ຫຼືສໍາລັບໄລຍະເວລາທີ່ກໍານົດໄວ້.

ຂ້າມ
ລະຫັດເລີ່ມຕົ້ນ
pts
er ການຮັບຮູ້ຄວາມຜິດພາດ

mmco
ການດໍາເນີນງານການຄວບຄຸມການຈັດການຄວາມຈໍາ (H.264)

ແມງໄມ້
vis_qp
visualize ຕົວກໍານົດການປະລິມານ (QP), QP ຕ່ໍາແມ່ນ tinted ສີຂຽວ

vis_mb_type
ຈິນຕະນາການປະເພດບລັອກ

buffers
ການຈັດສັນຮູບພາບ

thread_ops
ການດໍາເນີນງານ threading

ຊື່
ຂ້າມການຊົດເຊີຍການເຄື່ອນໄຫວ

vismv integer (ການຖອດລະຫັດ, ວິດີໂອ)
ເບິ່ງເຫັນພາບເຄື່ອນໄຫວ (MVs).

ທາງ​ເລືອກ​ນີ້​ບໍ່​ໄດ້​ຖືກ​ສະ​ຫມັກ​ແລ້ວ, ເບິ່ງ​ຕົວ​ກັ່ນ​ຕອງ codecview ແທນ.

ຄ່າທີ່ເປັນໄປໄດ້:

pf MVs ຄາດຄະເນລ່ວງໜ້າຂອງ P-frames

bf MVs ທີ່ຄາດຄະເນໄວ້ຂ້າງຫນ້າຂອງ B-frames

bb MVs ຄາດຄະເນຍ້ອນຫຼັງຂອງ B-frames

cmp integer (ການເຂົ້າລະຫັດ, ວິດີໂອ)
ຕັ້ງເຕັມ pel me ປຽບທຽບຟັງຊັນ.

ຄ່າທີ່ເປັນໄປໄດ້:

ໂສກເສົ້າ ຜົນລວມຂອງຄວາມແຕກຕ່າງຢ່າງແທ້ຈິງ, ໄວ (ຄ່າເລີ່ມຕົ້ນ)

sse ຜົນລວມຂອງຄວາມຜິດພາດສອງເທົ່າ

satd
ຜົນລວມຂອງຄວາມແຕກຕ່າງຢ່າງແທ້ຈິງຂອງ Hadamard ໄດ້ຫັນປ່ຽນ

dct ຜົນລວມຂອງຄວາມແຕກຕ່າງທີ່ປ່ຽນແປງ DCT ຢ່າງແທ້ຈິງ

psnr
ຜົນ​ລວມ​ຂອງ​ຄວາມ​ຜິດ​ພາດ​ການ​ຈໍາ​ນວນ​ສອງ (ຫຼີກ​ເວັ້ນ​ການ​, ຄຸນ​ນະ​ພາບ​ຕ​່​ໍ​າ​)

Bit ຈໍານວນບິດທີ່ຈໍາເປັນສໍາລັບຕັນ

rd ການບິດເບືອນອັດຕາທີ່ດີທີ່ສຸດ, ຊ້າ

ສູນ
0

vsad
ຜົນລວມຂອງຄວາມແຕກຕ່າງແນວຕັ້ງຢ່າງແທ້ຈິງ

ທຽບກັບ
ຜົນລວມຂອງຄວາມແຕກຕ່າງແນວຕັ້ງກຳລັງສອງ

nsse
ການຮັກສາສິ່ງລົບກວນຜົນລວມຂອງຄວາມແຕກຕ່າງຂອງກຳລັງສອງ

w53 5/3 wavelet, ໃຊ້ພຽງແຕ່ໃນຫິມະ

w97 9/7 wavelet, ໃຊ້ພຽງແຕ່ໃນຫິມະ

dctmax
ໂຄລາ
subcmp integer (ການເຂົ້າລະຫັດ, ວິດີໂອ)
ຕັ້ງຄ່າ sub pel me ປຽບທຽບຟັງຊັນ.

ຄ່າທີ່ເປັນໄປໄດ້:

ໂສກເສົ້າ ຜົນລວມຂອງຄວາມແຕກຕ່າງຢ່າງແທ້ຈິງ, ໄວ (ຄ່າເລີ່ມຕົ້ນ)

sse ຜົນລວມຂອງຄວາມຜິດພາດສອງເທົ່າ

satd
ຜົນລວມຂອງຄວາມແຕກຕ່າງຢ່າງແທ້ຈິງຂອງ Hadamard ໄດ້ຫັນປ່ຽນ

dct ຜົນລວມຂອງຄວາມແຕກຕ່າງທີ່ປ່ຽນແປງ DCT ຢ່າງແທ້ຈິງ

psnr
ຜົນ​ລວມ​ຂອງ​ຄວາມ​ຜິດ​ພາດ​ການ​ຈໍາ​ນວນ​ສອງ (ຫຼີກ​ເວັ້ນ​ການ​, ຄຸນ​ນະ​ພາບ​ຕ​່​ໍ​າ​)

Bit ຈໍານວນບິດທີ່ຈໍາເປັນສໍາລັບຕັນ

rd ການບິດເບືອນອັດຕາທີ່ດີທີ່ສຸດ, ຊ້າ

ສູນ
0

vsad
ຜົນລວມຂອງຄວາມແຕກຕ່າງແນວຕັ້ງຢ່າງແທ້ຈິງ

ທຽບກັບ
ຜົນລວມຂອງຄວາມແຕກຕ່າງແນວຕັ້ງກຳລັງສອງ

nsse
ການຮັກສາສິ່ງລົບກວນຜົນລວມຂອງຄວາມແຕກຕ່າງຂອງກຳລັງສອງ

w53 5/3 wavelet, ໃຊ້ພຽງແຕ່ໃນຫິມະ

w97 9/7 wavelet, ໃຊ້ພຽງແຕ່ໃນຫິມະ

dctmax
ໂຄລາ
mbcmp integer (ການເຂົ້າລະຫັດ, ວິດີໂອ)
ຕັ້ງຟັງຊັນປຽບທຽບ macroblock.

ຄ່າທີ່ເປັນໄປໄດ້:

ໂສກເສົ້າ ຜົນລວມຂອງຄວາມແຕກຕ່າງຢ່າງແທ້ຈິງ, ໄວ (ຄ່າເລີ່ມຕົ້ນ)

sse ຜົນລວມຂອງຄວາມຜິດພາດສອງເທົ່າ

satd
ຜົນລວມຂອງຄວາມແຕກຕ່າງຢ່າງແທ້ຈິງຂອງ Hadamard ໄດ້ຫັນປ່ຽນ

dct ຜົນລວມຂອງຄວາມແຕກຕ່າງທີ່ປ່ຽນແປງ DCT ຢ່າງແທ້ຈິງ

psnr
ຜົນ​ລວມ​ຂອງ​ຄວາມ​ຜິດ​ພາດ​ການ​ຈໍາ​ນວນ​ສອງ (ຫຼີກ​ເວັ້ນ​ການ​, ຄຸນ​ນະ​ພາບ​ຕ​່​ໍ​າ​)

Bit ຈໍານວນບິດທີ່ຈໍາເປັນສໍາລັບຕັນ

rd ການບິດເບືອນອັດຕາທີ່ດີທີ່ສຸດ, ຊ້າ

ສູນ
0

vsad
ຜົນລວມຂອງຄວາມແຕກຕ່າງແນວຕັ້ງຢ່າງແທ້ຈິງ

ທຽບກັບ
ຜົນລວມຂອງຄວາມແຕກຕ່າງແນວຕັ້ງກຳລັງສອງ

nsse
ການຮັກສາສິ່ງລົບກວນຜົນລວມຂອງຄວາມແຕກຕ່າງຂອງກຳລັງສອງ

w53 5/3 wavelet, ໃຊ້ພຽງແຕ່ໃນຫິມະ

w97 9/7 wavelet, ໃຊ້ພຽງແຕ່ໃນຫິມະ

dctmax
ໂຄລາ
ildctcmp integer (ການເຂົ້າລະຫັດ, ວິດີໂອ)
ຕັ້ງຟັງຊັນປຽບທຽບ dct interlaced.

ຄ່າທີ່ເປັນໄປໄດ້:

ໂສກເສົ້າ ຜົນລວມຂອງຄວາມແຕກຕ່າງຢ່າງແທ້ຈິງ, ໄວ (ຄ່າເລີ່ມຕົ້ນ)

sse ຜົນລວມຂອງຄວາມຜິດພາດສອງເທົ່າ

satd
ຜົນລວມຂອງຄວາມແຕກຕ່າງຢ່າງແທ້ຈິງຂອງ Hadamard ໄດ້ຫັນປ່ຽນ

dct ຜົນລວມຂອງຄວາມແຕກຕ່າງທີ່ປ່ຽນແປງ DCT ຢ່າງແທ້ຈິງ

psnr
ຜົນ​ລວມ​ຂອງ​ຄວາມ​ຜິດ​ພາດ​ການ​ຈໍາ​ນວນ​ສອງ (ຫຼີກ​ເວັ້ນ​ການ​, ຄຸນ​ນະ​ພາບ​ຕ​່​ໍ​າ​)

Bit ຈໍານວນບິດທີ່ຈໍາເປັນສໍາລັບຕັນ

rd ການບິດເບືອນອັດຕາທີ່ດີທີ່ສຸດ, ຊ້າ

ສູນ
0

vsad
ຜົນລວມຂອງຄວາມແຕກຕ່າງແນວຕັ້ງຢ່າງແທ້ຈິງ

ທຽບກັບ
ຜົນລວມຂອງຄວາມແຕກຕ່າງແນວຕັ້ງກຳລັງສອງ

nsse
ການຮັກສາສິ່ງລົບກວນຜົນລວມຂອງຄວາມແຕກຕ່າງຂອງກຳລັງສອງ

w53 5/3 wavelet, ໃຊ້ພຽງແຕ່ໃນຫິມະ

w97 9/7 wavelet, ໃຊ້ພຽງແຕ່ໃນຫິມະ

dctmax
ໂຄລາ
dia_size integer (ການເຂົ້າລະຫັດ, ວິດີໂອ)
ກໍານົດປະເພດເພັດ & ຂະຫນາດສໍາລັບການປະມານການເຄື່ອນໄຫວ.

Last_pred integer (ການເຂົ້າລະຫັດ, ວິດີໂອ)
ກໍານົດຈໍານວນຕົວຄາດຄະເນການເຄື່ອນໄຫວຈາກກອບທີ່ຜ່ານມາ.

ສຸດຍອດ integer (ການເຂົ້າລະຫັດ, ວິດີໂອ)
ຕັ້ງ​ຄ່າ​ການ​ຄາດ​ຄະ​ເນ​ກ່ອນ​ການ​ເຄື່ອນ​ໄຫວ​.

precmp integer (ການເຂົ້າລະຫັດ, ວິດີໂອ)
ຕັ້ງຄ່າການປະເມີນການເຄື່ອນໄຫວກ່ອນການປຽບທຽບຟັງຊັນ.

ຄ່າທີ່ເປັນໄປໄດ້:

ໂສກເສົ້າ ຜົນລວມຂອງຄວາມແຕກຕ່າງຢ່າງແທ້ຈິງ, ໄວ (ຄ່າເລີ່ມຕົ້ນ)

sse ຜົນລວມຂອງຄວາມຜິດພາດສອງເທົ່າ

satd
ຜົນລວມຂອງຄວາມແຕກຕ່າງຢ່າງແທ້ຈິງຂອງ Hadamard ໄດ້ຫັນປ່ຽນ

dct ຜົນລວມຂອງຄວາມແຕກຕ່າງທີ່ປ່ຽນແປງ DCT ຢ່າງແທ້ຈິງ

psnr
ຜົນ​ລວມ​ຂອງ​ຄວາມ​ຜິດ​ພາດ​ການ​ຈໍາ​ນວນ​ສອງ (ຫຼີກ​ເວັ້ນ​ການ​, ຄຸນ​ນະ​ພາບ​ຕ​່​ໍ​າ​)

Bit ຈໍານວນບິດທີ່ຈໍາເປັນສໍາລັບຕັນ

rd ການບິດເບືອນອັດຕາທີ່ດີທີ່ສຸດ, ຊ້າ

ສູນ
0

vsad
ຜົນລວມຂອງຄວາມແຕກຕ່າງແນວຕັ້ງຢ່າງແທ້ຈິງ

ທຽບກັບ
ຜົນລວມຂອງຄວາມແຕກຕ່າງແນວຕັ້ງກຳລັງສອງ

nsse
ການຮັກສາສິ່ງລົບກວນຜົນລວມຂອງຄວາມແຕກຕ່າງຂອງກຳລັງສອງ

w53 5/3 wavelet, ໃຊ້ພຽງແຕ່ໃນຫິມະ

w97 9/7 wavelet, ໃຊ້ພຽງແຕ່ໃນຫິມະ

dctmax
ໂຄລາ
pre_dia_size integer (ການເຂົ້າລະຫັດ, ວິດີໂອ)
ກຳນົດປະເພດ ແລະຂະໜາດເພັດສຳລັບການປະມານການເຄື່ອນທີ່ລ່ວງໜ້າ.

ຍ່ອຍ integer (ການເຂົ້າລະຫັດ, ວິດີໂອ)
ຕັ້ງຄ່າຄຸນນະພາບການຄາດຄະເນການເຄື່ອນໄຫວຍ່ອຍ.

dtg_active_format integer
me_range integer (ການເຂົ້າລະຫັດ, ວິດີໂອ)
ກໍານົດຂອບເຂດການເຄື່ອນໄຫວ vectors (1023 ສໍາລັບເຄື່ອງຫຼິ້ນ DivX).

ໄອເບຍ integer (ການເຂົ້າລະຫັດ, ວິດີໂອ)
ຕັ້ງຄ່າອະຄະຕິໃນປະລິມານ.

pbias integer (ການເຂົ້າລະຫັດ, ວິດີໂອ)
ກໍານົດຄວາມລໍາອຽງລະຫວ່າງປະລິມານ.

color_table_id integer
global_quality integer (ການເຂົ້າລະຫັດ, ສຽງ, ວິດີໂອ)
ລະຫັດ integer (ການເຂົ້າລະຫັດ, ວິດີໂອ)
ຄ່າທີ່ເປັນໄປໄດ້:

vlc coder ຄວາມຍາວຕົວແປ / huffman coder

ac ຕົວລະຫັດເລກເລກ

ວັດຖຸດິບ ດິບ (ບໍ່ມີການເຂົ້າລະຫັດ)

ລຳ ຕົ້ນ coder ຄວາມຍາວແລ່ນ

ເຮັດໃຫ້ຂາດ
ຕົວລະຫັດທີ່ອີງໃສ່ deflate

context integer (ການເຂົ້າລະຫັດ, ວິດີໂອ)
ກໍານົດຮູບແບບບໍລິບົດ.

slice_flags integer
xvmc_acceleration integer
mbd integer (ການເຂົ້າລະຫັດ, ວິດີໂອ)
ຕັ້ງຄ່າຂັ້ນຕອນການຕັດສິນໃຈຂອງ Macroblock (ໂໝດຄຸນນະພາບສູງ).

ຄ່າທີ່ເປັນໄປໄດ້:

ງ່າຍດາຍ
ໃຊ້ mbcmp (ຄ່າເລີ່ມຕົ້ນ)

bits
ໃຊ້ bits ຫນ້ອຍທີ່ສຸດ

rd ໃຊ້ການບິດເບືອນອັດຕາທີ່ດີທີ່ສຸດ

stream_codec_tag integer
sc_threshold integer (ການເຂົ້າລະຫັດ, ວິດີໂອ)
ກໍານົດຂອບເຂດການປ່ຽນແປງ scene.

ມິນ integer (ການເຂົ້າລະຫັດ, ວິດີໂອ)
ຕັ້ງຄ່າປັດໄຈການ lagrange ຕໍ່າສຸດ (VBR).

lmax integer (ການເຂົ້າລະຫັດ, ວິດີໂອ)
ຕັ້ງຄ່າປັດໄຈການ lagrange ສູງສຸດ (VBR).

nr integer (ການເຂົ້າລະຫັດ, ວິດີໂອ)
ກໍານົດການຫຼຸດຜ່ອນສິ່ງລົບກວນ.

rc_init_occupancy integer (ການເຂົ້າລະຫັດ, ວິດີໂອ)
ກໍານົດຈໍານວນບິດທີ່ຄວນຈະຖືກໂຫລດເຂົ້າໄປໃນ rc buffer ກ່ອນທີ່ຈະເລີ່ມການຖອດລະຫັດ.

ທຸງ2 ທົງ (ການຖອດລະຫັດ/ການເຂົ້າລະຫັດ,ສຽງ,ວິດີໂອ)
ຄ່າທີ່ເປັນໄປໄດ້:

ໄວ
ອະ​ນຸ​ຍາດ​ໃຫ້ tricks speedup ທີ່​ບໍ່​ສອດ​ຄ່ອງ​ກັບ spec.

sgop
ເຊົາສະໜັບສະໜຸນແລ້ວ, ໃຫ້ໃຊ້ຕົວເລືອກສ່ວນຕົວຂອງ mpegvideo ແທນ.

noout
ຂ້າມການເຂົ້າລະຫັດ bitstream.

ບໍ່ສົນໃຈ
ບໍ່ສົນໃຈຂໍ້ມູນການປູກພືດຈາກ sps.

local_header
ວາງສ່ວນຫົວທົ່ວໂລກຢູ່ທຸກຄີເຟຣມ ແທນທີ່ຈະຢູ່ໃນ extradata.

ຊິ້ນ
ຂໍ້ມູນກອບອາດຈະຖືກແບ່ງອອກເປັນຫຼາຍຊ່ອງ.

showall
ສະແດງຂອບທັງໝົດກ່ອນຄີເຟຣມທຳອິດ.

ຂ້າມ
ເຊົາສະໜັບສະໜຸນແລ້ວ, ໃຫ້ໃຊ້ຕົວເລືອກສ່ວນຕົວຂອງ mpegvideo ແທນ.

ສົ່ງອອກ_mvs
ສົ່ງອອກ vectors ການເຄື່ອນໄຫວເຂົ້າໄປໃນຂໍ້ມູນຂ້າງກອບ (ເບິ່ງ "AV_FRAME_DATA_MOTION_VECTORS")
ສໍາລັບຕົວແປງສັນຍານທີ່ສະຫນັບສະຫນູນມັນ. ເບິ່ງນຳ doc/example/export_mvs.c.

ຄວາມຜິດພາດ integer (ການເຂົ້າລະຫັດ, ວິດີໂອ)
qns integer (ການເຂົ້າລະຫັດ, ວິດີໂອ)
ເຊົາສະໜັບສະໜຸນແລ້ວ, ໃຫ້ໃຊ້ຕົວເລືອກສ່ວນຕົວຂອງ mpegvideo ແທນ.

ກະທູ້ integer (ການຖອດລະຫັດ/ການເຂົ້າລະຫັດ, ວິດີໂອ)
ຄ່າທີ່ເປັນໄປໄດ້:

ອັດຕະໂນມັດ
ກວດພົບຈໍານວນຫົວຂໍ້ທີ່ດີ

me_threshold integer (ການເຂົ້າລະຫັດ, ວິດີໂອ)
ກໍານົດຂອບເຂດການຄາດຄະເນການເຄື່ອນໄຫວ.

mb_threshold integer (ການເຂົ້າລະຫັດ, ວິດີໂອ)
ກໍານົດຂອບເຂດ macroblock.

dc integer (ການເຂົ້າລະຫັດ, ວິດີໂອ)
ກໍານົດ intra_dc_precision.

nssew integer (ການເຂົ້າລະຫັດ, ວິດີໂອ)
ກໍານົດນ້ໍາຫນັກ nsse.

ຂ້າມ_ເທິງ integer (ການຖອດລະຫັດ, ວິດີໂອ)
ກໍານົດຈໍານວນແຖວ macroblock ຢູ່ເທິງສຸດທີ່ຖືກຂ້າມ.

ຂ້າມ_ລຸ່ມ integer (ການຖອດລະຫັດ, ວິດີໂອ)
ຕັ້ງຈຳນວນແຖວ macroblock ຢູ່ລຸ່ມສຸດທີ່ຂ້າມໄປ.

ຂໍ້​ມູນ integer (ການເຂົ້າລະຫັດ, ສຽງ, ວິດີໂອ)
ຄ່າທີ່ເປັນໄປໄດ້:

ຮູ້ຈັກ
aac_main
aac_low
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_es
dts_96_24
dts_hd_hra
dts_hd_ma
ລະດັບ integer (ການເຂົ້າລະຫັດ, ສຽງ, ວິດີໂອ)
ຄ່າທີ່ເປັນໄປໄດ້:

ຮູ້ຈັກ
ຕ່ ຳ ສຸດ integer (ການຖອດລະຫັດ, ສຽງ, ວິດີໂອ)
ຖອດລະຫັດຢູ່ທີ່ 1= 1/2, 2=1/4, 3=1/8 ຄວາມລະອຽດ.

skip_threshold integer (ການເຂົ້າລະຫັດ, ວິດີໂອ)
ກໍານົດຂອບເຂດຂ້າມເຟຣມ.

skip_factor integer (ການເຂົ້າລະຫັດ, ວິດີໂອ)
ຕັ້ງຄ່າປັດໄຈຂ້າມເຟຣມ.

ຂ້າມ_exp integer (ການເຂົ້າລະຫັດ, ວິດີໂອ)
ກໍານົດຂອບເຂດການຂ້າມຂອບ. ຄ່າທາງລົບປະຕິບັດຕົວດຽວກັນກັບທີ່ສອດຄ້ອງກັນ
ບວກ, ຍົກເວັ້ນວ່າຄະແນນແມ່ນປົກກະຕິ. ຄ່າທາງບວກມີຢູ່ຕົ້ນຕໍ
ສໍາລັບເຫດຜົນຄວາມເຂົ້າກັນໄດ້ແລະບໍ່ມີປະໂຫຍດຫຼາຍ.

ຂ້າມ integer (ການເຂົ້າລະຫັດ, ວິດີໂອ)
ຕັ້ງຟັງຊັນຂ້າມເຟຣມປຽບທຽບ.

ຄ່າທີ່ເປັນໄປໄດ້:

ໂສກເສົ້າ ຜົນລວມຂອງຄວາມແຕກຕ່າງຢ່າງແທ້ຈິງ, ໄວ (ຄ່າເລີ່ມຕົ້ນ)

sse ຜົນລວມຂອງຄວາມຜິດພາດສອງເທົ່າ

satd
ຜົນລວມຂອງຄວາມແຕກຕ່າງຢ່າງແທ້ຈິງຂອງ Hadamard ໄດ້ຫັນປ່ຽນ

dct ຜົນລວມຂອງຄວາມແຕກຕ່າງທີ່ປ່ຽນແປງ DCT ຢ່າງແທ້ຈິງ

psnr
ຜົນ​ລວມ​ຂອງ​ຄວາມ​ຜິດ​ພາດ​ການ​ຈໍາ​ນວນ​ສອງ (ຫຼີກ​ເວັ້ນ​ການ​, ຄຸນ​ນະ​ພາບ​ຕ​່​ໍ​າ​)

Bit ຈໍານວນບິດທີ່ຈໍາເປັນສໍາລັບຕັນ

rd ການບິດເບືອນອັດຕາທີ່ດີທີ່ສຸດ, ຊ້າ

ສູນ
0

vsad
ຜົນລວມຂອງຄວາມແຕກຕ່າງແນວຕັ້ງຢ່າງແທ້ຈິງ

ທຽບກັບ
ຜົນລວມຂອງຄວາມແຕກຕ່າງແນວຕັ້ງກຳລັງສອງ

nsse
ການຮັກສາສິ່ງລົບກວນຜົນລວມຂອງຄວາມແຕກຕ່າງຂອງກຳລັງສອງ

w53 5/3 wavelet, ໃຊ້ພຽງແຕ່ໃນຫິມະ

w97 9/7 wavelet, ໃຊ້ພຽງແຕ່ໃນຫິມະ

dctmax
ໂຄລາ
border_mask float (ການເຂົ້າລະຫັດ, ວິດີໂອ)
ເພີ່ມປະລິມານສໍາລັບ macroblocks ໃກ້ກັບຊາຍແດນ.

mblmin integer (ການເຂົ້າລະຫັດ, ວິດີໂອ)
ຕັ້ງຄ່າປັດໄຈຄວາມຊ້າ macroblock (VBR).

mblmax integer (ການເຂົ້າລະຫັດ, ວິດີໂອ)
ກຳນົດຄ່າ macroblock lagrange factor (VBR).

mepc integer (ການເຂົ້າລະຫັດ, ວິດີໂອ)
ກໍານົດຄ່າຊົດເຊີຍການປັບຄ່າ bitrate ປະມານການເຄື່ອນໄຫວ (1.0 = 256).

skip_loop_filter integer (ການຖອດລະຫັດ, ວິດີໂອ)
skip_idct integer (ການຖອດລະຫັດ, ວິດີໂອ)
ຂ້າມ_ເຟຣມ integer (ການຖອດລະຫັດ, ວິດີໂອ)
ເຮັດໃຫ້ການຖອດລະຫັດການປະຖິ້ມການປະມວນຜົນຂຶ້ນກັບປະເພດກອບທີ່ເລືອກໂດຍທາງເລືອກ
ມູນຄ່າ.

skip_loop_filter ຂ້າມການກັ່ນຕອງວົງຂອບ, skip_idct ຂ້າມກອບ
IDCT/dequantization, ຂ້າມ_ເຟຣມ ຂ້າມການຖອດລະຫັດ.

ຄ່າທີ່ເປັນໄປໄດ້:

none
ຍົກເລີກບໍ່ມີກອບ.

Default
ຖິ້ມເຟຣມທີ່ບໍ່ມີປະໂຫຍດເຊັ່ນ: ກອບຂະໜາດ 0.

noref
ຍົກເລີກທຸກຂອບທີ່ບໍ່ອ້າງອີງ.

bidir
ຍົກເລີກກອບສອງທິດທາງທັງໝົດ.

nokey
ຍົກເລີກເຟຣມທັງໝົດຍົກເວັ້ນຄີເຟຣມ.

ທັງຫມົດ ຖິ້ມເຟຣມທັງໝົດ.

ຄ່າເລີ່ມຕົ້ນແມ່ນ Default.

bidir_refine integer (ການເຂົ້າລະຫັດ, ວິດີໂອ)
ປັບປຸງສອງ vector motion ທີ່ໃຊ້ໃນ macroblocks bidirectional.

brd_scale integer (ການເຂົ້າລະຫັດ, ວິດີໂອ)
ເຟຣມ downscale ສໍາລັບການຕັດສິນໃຈ B-frame ແບບເຄື່ອນໄຫວ.

keyint_min integer (ການເຂົ້າລະຫັດ, ວິດີໂອ)
ກໍານົດໄລຍະຫ່າງຕໍາ່ສຸດລະຫວ່າງ IDR-frames.

ການອ້າງອີງ integer (ການເຂົ້າລະຫັດ, ວິດີໂອ)
ກໍານົດກອບການອ້າງອີງເພື່ອພິຈາລະນາສໍາລັບການຊົດເຊີຍການເຄື່ອນໄຫວ.

chromaoffset integer (ການເຂົ້າລະຫັດ, ວິດີໂອ)
ຕັ້ງ chroma qp offset ຈາກ luma.

ໄມ້ຄ້ອນ integer (ການເຂົ້າລະຫັດ, ສຽງ, ວິດີໂອ)
ກໍານົດການບິດເບືອນອັດຕາ - ປະລິມານທີ່ດີທີ່ສຸດ.

sc_factor integer (ການເຂົ້າລະຫັດ, ວິດີໂອ)
ກໍານົດຄ່າຄູນດ້ວຍ qscale ສໍາລັບແຕ່ລະກອບແລະເພີ່ມໃສ່ scene_change_score.

mv0_threshold integer (ການເຂົ້າລະຫັດ, ວິດີໂອ)
b_sensitivity integer (ການເຂົ້າລະຫັດ, ວິດີໂອ)
ປັບຄວາມອ່ອນໄຫວຂອງ b_frame_strategy 1.

compression_level integer (ການເຂົ້າລະຫັດ, ສຽງ, ວິດີໂອ)
min_prediction_order integer (ການເຂົ້າລະຫັດ, ສຽງ)
max_prediction_order integer (ການເຂົ້າລະຫັດ, ສຽງ)
timecode_frame_start integer (ການເຂົ້າລະຫັດ, ວິດີໂອ)
ຕັ້ງຕົວເລກເລີ່ມຕົ້ນກອບເວລາ GOP, ໃນຮູບແບບທີ່ບໍ່ແມ່ນກອບ.

request_channels integer (ການຖອດລະຫັດ, ສຽງ)
ກໍານົດຈໍານວນຊ່ອງສຽງທີ່ຕ້ອງການ.

bits_per_raw_sample integer
channel_layout integer (ການຖອດລະຫັດ/ການເຂົ້າລະຫັດ, ສຽງ)
ຄ່າທີ່ເປັນໄປໄດ້:

request_channel_layout integer (ການຖອດລະຫັດ, ສຽງ)
ຄ່າທີ່ເປັນໄປໄດ້:

rc_max_vbv_use float (ການເຂົ້າລະຫັດ, ວິດີໂອ)
rc_min_vbv_use float (ການເຂົ້າລະຫັດ, ວິດີໂອ)
ticks_per_frame integer (ການຖອດລະຫັດ/ການເຂົ້າລະຫັດ,ສຽງ,ວິດີໂອ)
color_primaries integer (ການຖອດລະຫັດ/ການເຂົ້າລະຫັດ, ວິດີໂອ)
color_trc integer (ການຖອດລະຫັດ/ການເຂົ້າລະຫັດ, ວິດີໂອ)
colorspace integer (ການຖອດລະຫັດ/ການເຂົ້າລະຫັດ, ວິດີໂອ)
ຊ່ວງສີ integer (ການຖອດລະຫັດ/ການເຂົ້າລະຫັດ, ວິດີໂອ)
ຖ້າໃຊ້ເປັນພາລາມິເຕີການປ້ອນຂໍ້ມູນ, ມັນເຮັດໜ້າທີ່ເປັນຕົວຊີ້ບອກຕົວຖອດລະຫັດ, ເຊິ່ງລະດັບສີ
ວັດສະດຸປ້ອນມີ.

chroma_sample_location integer (ການຖອດລະຫັດ/ການເຂົ້າລະຫັດ, ວິດີໂອ)
log_level_offset integer
ກໍານົດລະດັບບັນທຶກການຊົດເຊີຍ.

slices integer (ການເຂົ້າລະຫັດ, ວິດີໂອ)
ຈໍາ​ນວນ​ຂອງ​ປ່ຽງ​, ນໍາ​ໃຊ້​ໃນ​ການ​ເຂົ້າ​ລະ​ຫັດ​ຂະ​ຫນານ​.

thread_type ທົງ (ການຖອດລະຫັດ/ການເຂົ້າລະຫັດ, ວິດີໂອ)
ເລືອກວິທີ multithreading ທີ່ຈະໃຊ້.

ການ ນຳ ໃຊ້ frame ຈະເພີ່ມການຊັກຊ້າການຖອດລະຫັດຫນຶ່ງກອບຕໍ່ກະທູ້, ດັ່ງນັ້ນລູກຄ້າທີ່
ບໍ່ສາມາດໃຫ້ກອບໃນອະນາຄົດບໍ່ຄວນໃຊ້ມັນ.

ຄ່າທີ່ເປັນໄປໄດ້:

slice
ຖອດລະຫັດຫຼາຍກວ່າຫນຶ່ງສ່ວນຂອງກອບດຽວໃນເວລາດຽວກັນ.

Multithreading ໂດຍໃຊ້ slices ເຮັດວຽກພຽງແຕ່ໃນເວລາທີ່ວິດີໂອໄດ້ຖືກເຂົ້າລະຫັດດ້ວຍ slices.

frame
ຖອດລະຫັດຫຼາຍກວ່າຫນຶ່ງກອບໃນເວລາດຽວກັນ.

ຄ່າເລີ່ມຕົ້ນແມ່ນ ສະໄລ້+ກອບ.

audio_service_type integer (ການເຂົ້າລະຫັດ, ສຽງ)
ກໍານົດປະເພດການບໍລິການສຽງ.

ຄ່າທີ່ເປັນໄປໄດ້:

ma ບໍລິການສຽງຫຼັກ

ef ຜົນກະທົບ

vi ພິການທາງສາຍຕາ

hi ພິການທາງຫູ

di ປຶກສາຫາລື

co Commentary

em ສຸກເສີນ

vo ສຽງເກີນ

ka Karaoke

request_sample_fmt ຕົວຢ່າງ_fmt (ການຖອດລະຫັດ, ສຽງ)
ກໍານົດຕົວຢ່າງຮູບແບບຕົວຖອດລະຫັດສຽງຄວນມັກ. ຄ່າເລີ່ມຕົ້ນແມ່ນ "ບໍ່ມີ".

pkt_timebase ສົມເຫດສົມຜົນ ຈໍານວນ
sub_charenc ການເຂົ້າລະຫັດ (ການຖອດລະຫັດ, ຄຳບັນຍາຍ)
ຕັ້ງຄ່າການເຂົ້າລະຫັດຕົວອັກສອນຂອງຄໍາບັນຍາຍ.

field_order field_order (ວິດີໂອ)
ກໍານົດ / ລົບລ້າງຄໍາສັ່ງພາກສະຫນາມຂອງວິດີໂອ. ຄ່າທີ່ເປັນໄປໄດ້:

ກ້າວ ໜ້າ
ວິດີໂອກ້າວຫນ້າ

tt ວິ​ດີ​ໂອ interlaced​, ຊ່ອງ​ທາງ​ເທິງ​ລະ​ຫັດ​ແລະ​ສະ​ແດງ​ໃຫ້​ເຫັນ​ຄັ້ງ​ທໍາ​ອິດ​

bb ວິດີໂອ interlaced, ພາກສະຫນາມລຸ່ມລະຫັດແລະສະແດງຄັ້ງທໍາອິດ

tb ວິດີໂອ interlaced, ເທິງລະຫັດທໍາອິດ, ລຸ່ມສະແດງທໍາອິດ

bt ວິດີໂອ interlaced, ລຸ່ມລະຫັດທໍາອິດ, ເທິງສະແດງກ່ອນ

ຂ້າມ_alpha integer (ການຖອດລະຫັດ, ວິດີໂອ)
ຕັ້ງເປັນ 1 ເພື່ອປິດການປະມວນຜົນອັນຟາ (ຄວາມໂປ່ງໃສ). ນີ້ເຮັດວຽກຄືກັບ ສີຂີ້ເຖົ່າ ທຸງໃນ
ໄດ້ ທົງ ທາງເລືອກທີ່ຂ້າມຂໍ້ມູນ chroma ແທນອັນຟາ. ຄ່າເລີ່ມຕົ້ນແມ່ນ 0.

codec_whitelist ບັນຊີລາຍຊື່ (ການປ້ອນຂໍ້ມູນ)
"," ແຍກລາຍຊື່ຕົວຖອດລະຫັດທີ່ອະນຸຍາດ. ໂດຍຄ່າເລີ່ມຕົ້ນທັງຫມົດແມ່ນອະນຸຍາດ.

dump_separator string (ການປ້ອນຂໍ້ມູນ)
Separator ໃຊ້ເພື່ອແຍກທົ່ງນາທີ່ພິມຢູ່ໃນເສັ້ນຄໍາສັ່ງກ່ຽວກັບ Stream
ຕົວກໍານົດການ. ຕົວຢ່າງເພື່ອແຍກຊ່ອງຂໍ້ມູນດ້ວຍແຖວໃໝ່ ແລະຫຍໍ້ໜ້າ:

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

ຖອດລະຫັດ


ຕົວຖອດລະຫັດແມ່ນອົງປະກອບທີ່ມີການຕັ້ງຄ່າໃນ FFmpeg ເຊິ່ງອະນຸຍາດໃຫ້ຖອດລະຫັດຂອງສະຕຣີມມັນຕິມີເດຍໄດ້.

ໃນເວລາທີ່ທ່ານ configure FFmpeg build ຂອງທ່ານ, ທຸກຕົວຖອດລະຫັດພື້ນເມືອງທີ່ສະຫນັບສະຫນູນແມ່ນເປີດໃຫ້ໃຊ້ງານ
ຄ່າເລີ່ມຕົ້ນ. ຕົວຖອດລະຫັດທີ່ຕ້ອງການຫ້ອງສະໝຸດພາຍນອກຕ້ອງຖືກເປີດໃຊ້ດ້ວຍຕົນເອງຜ່ານທາງ
ທາງເລືອກ "--enable-lib" ທີ່ສອດຄ້ອງກັນ. ທ່ານ​ສາ​ມາດ​ລາຍ​ຊື່​ຕົວ​ຖອດ​ລະ​ຫັດ​ທັງ​ຫມົດ​ທີ່​ມີ​ຢູ່​ໂດຍ​ການ​ນໍາ​ໃຊ້​
ຕັ້ງຄ່າຕົວເລືອກ "--list-decoders".

ທ່ານ​ສາ​ມາດ​ປິດ​ການ​ທໍາ​ງານ​ການ​ຖອດ​ລະ​ຫັດ​ທັງ​ຫມົດ​ທີ່​ມີ​ທາງ​ເລືອກ configure "--disable-decoders​" ແລະ​
ເລືອກເປີດ/ປິດການຖອດລະຫັດດຽວດ້ວຍຕົວເລືອກ "--enable-decoder=ຖອດລະຫັດ" /
"--disable-decoder=ຖອດລະຫັດ".

ຕົວເລືອກ "-decoders" ຂອງເຄື່ອງມື ff* ຈະສະແດງລາຍຊື່ຂອງຕົວຖອດລະຫັດທີ່ເປີດໃຊ້ງານ.

VIDEO ຖອດລະຫັດ


ລາຍລະອຽດຂອງບາງຕົວຖອດລະຫັດວິດີໂອທີ່ມີຢູ່ໃນປັດຈຸບັນຕໍ່ໄປນີ້.

hevc
ຕົວຖອດລະຫັດ HEVC / H.265.

ໝາຍ ເຫດ: skip_loop_filter ທາງເລືອກມີຜົນກະທົບພຽງແຕ່ໃນລະດັບ "ທັງຫມົດ".

ວິດີໂອດິບ
ຕົວຖອດລະຫັດວິດີໂອດິບ.

ຕົວຖອດລະຫັດນີ້ຖອດລະຫັດການຖ່າຍທອດວິດີໂອດິບ.

ທາງເລືອກໃນການ

top top_field_first
ລະບຸປະເພດພາກສະຫນາມສົມມຸດຕິຖານຂອງວິດີໂອການປ້ອນຂໍ້ມູນ.

-1 ວິ​ດີ​ໂອ​ແມ່ນ​ຄາດ​ວ່າ​ຈະ​ກ້າວ​ຫນ້າ (ຄ່າ​ເລີ່ມ​ຕົ້ນ​)

0 bottom-field-first ແມ່ນສົມມຸດ

1 top-field-first ແມ່ນສົມມຸດ

AUDIO ຖອດລະຫັດ


ລາຍລະອຽດຂອງບາງຕົວຖອດລະຫັດສຽງທີ່ມີຢູ່ໃນປັດຈຸບັນຕໍ່ໄປນີ້.

ac3
ຕົວຖອດລະຫັດສຽງ AC-3.

ຕົວຖອດລະຫັດນີ້ປະຕິບັດສ່ວນຫນຶ່ງຂອງ ATSC A/52:2010 ແລະ ETSI TS 102 366, ເຊັ່ນດຽວກັນກັບ
undocumented RealAudio 3 (aka dnet).

AC-3 ຖອດລະຫັດ ທາງເລືອກໃນການ

-drc_scale ມູນຄ່າ
ປັດໄຈການວັດແທກຊ່ວງແບບໄດນາມິກ. ປັດໄຈທີ່ຈະໃຊ້ກັບຄ່າຊ່ວງໄດນາມິກຈາກ AC-3
ກະແສ. ປັດໄຈນີ້ຖືກນຳໃຊ້ແບບເລັ່ງລັດ. ມີ 3 ປັດໄຈຂະຫນາດທີ່ໂດດເດັ່ນ
ຂອບເຂດ:

drc_scale == 0
DRC ປິດໃຊ້ງານ. ຜະລິດສຽງເຕັມຮູບແບບ.

0 < drc_scale <= 1
ເປີດໃຊ້ DRC ແລ້ວ. ນຳໃຊ້ສ່ວນໜຶ່ງຂອງຄ່າສະຕຣີມ DRC. ການສືບພັນສຽງແມ່ນ
ລະຫວ່າງລະດັບເຕັມແລະການບີບອັດເຕັມ.

drc_scale > 1
ເປີດໃຊ້ DRC ແລ້ວ. ນຳໃຊ້ drc_scale asymmetrically. ສຽງດັງຖືກບີບອັດເຕັມ.
ສຽງອ່ອນຖືກປັບປຸງ.

flac
ຕົວຖອດລະຫັດສຽງ FLAC.

ຕົວຖອດລະຫັດນີ້ມີຈຸດປະສົງເພື່ອປະຕິບັດຂໍ້ກໍານົດ FLAC ທີ່ສົມບູນຈາກ Xiph.

FLAC ຖອດລະຫັດ ທາງເລືອກໃນການ

-use_buggy_lpc
ຕົວເຂົ້າລະຫັດ lavc FLAC ໃຊ້ເພື່ອຜະລິດກະແສ buggy ທີ່ມີຄ່າ lpc ສູງ (ເຊັ່ນ:
ຄ່າເລີ່ມຕົ້ນ). ທາງເລືອກນີ້ເຮັດໃຫ້ມັນເປັນໄປໄດ້ທີ່ຈະຖອດລະຫັດສາຍນ້ໍາດັ່ງກ່າວຢ່າງຖືກຕ້ອງໂດຍ
ໃຊ້ logic lpc buggy ເກົ່າຂອງ lavc ສໍາລັບການຖອດລະຫັດ.

ffwavesynth
ເຄື່ອງສັງເຄາະຄື້ນພາຍໃນ.

ຕົວຖອດລະຫັດນີ້ສ້າງຮູບແບບຄື້ນຕາມລໍາດັບທີ່ກໍານົດໄວ້ກ່ອນ. ການນໍາໃຊ້ຂອງມັນແມ່ນບໍລິສຸດ
ພາຍໃນແລະຮູບແບບຂອງຂໍ້ມູນທີ່ມັນຍອມຮັບບໍ່ໄດ້ບັນທຶກໄວ້ສາທາລະນະ.

libcelt
libcelt decoder wrapper.

libcelt ອະນຸຍາດໃຫ້ libavcodec ຖອດລະຫັດ Xiph CELT ຕົວແປງສັນຍານສຽງລ່າຊ້າທີ່ສຸດ. ຕ້ອງການ
ການປະກົດຕົວຂອງສ່ວນຫົວຂອງ libcelt ແລະຫ້ອງສະຫມຸດໃນລະຫວ່າງການຕັ້ງຄ່າ. ທ່ານຕ້ອງການ
ກຳນົດຄ່າການກໍ່ສ້າງດ້ວຍ "--enable-libcelt".

libgsm
libgsm decoder wrapper.

libgsm ອະນຸຍາດໃຫ້ libavcodec ຖອດລະຫັດ GSM ເຕັມອັດຕາ codec. ຮຽກຮ້ອງໃຫ້ມີການປະກົດຕົວຂອງ
ສ່ວນຫົວຂອງ libgsm ແລະຫ້ອງສະໝຸດໃນລະຫວ່າງການຕັ້ງຄ່າ. ທ່ານຈໍາເປັນຕ້ອງໄດ້ກໍານົດຢ່າງຈະແຈ້ງ
ສ້າງດ້ວຍ "--enable-libgsm".

ຕົວຖອດລະຫັດນີ້ຮອງຮັບທັງ GSM ທຳມະດາ ແລະ Microsoft variant.

libilbc
ຫໍ່ຕົວຖອດລະຫັດ libilbc.

libilbc ອະນຸຍາດໃຫ້ libavcodec ຖອດລະຫັດ Internet Low Bitrate Codec (iLBC) audio codec.
ຮຽກຮ້ອງໃຫ້ມີການມີສ່ວນຫົວຂອງ libilbc ແລະຫ້ອງສະໝຸດໃນລະຫວ່າງການກຳນົດຄ່າ. ທ່ານຕ້ອງການ
ກຳນົດຄ່າການກໍ່ສ້າງດ້ວຍ "--enable-libilbc".

ທາງເລືອກໃນການ

ທາງເລືອກຕໍ່ໄປນີ້ແມ່ນສະຫນັບສະຫນູນໂດຍ libilbc wrapper.

ເສີມຂະຫຍາຍ
ເປີດໃຊ້ການປັບປຸງສຽງທີ່ຖອດລະຫັດໄວ້ເມື່ອຕັ້ງເປັນ 1. ຄ່າເລີ່ມຕົ້ນແມ່ນ 0
(ພິການ).

libopencore-amrnb
ຫໍ່ຕົວຖອດລະຫັດ libopencore-amrnb.

libopencore-amrnb ອະນຸຍາດໃຫ້ libavcodec ຖອດລະຫັດສຽງ Narrowband ແບບປັບໄດ້ຫຼາຍອັດຕາ.
ຕົວແປງສັນຍານ. ການໃຊ້ມັນຮຽກຮ້ອງໃຫ້ມີການມີສ່ວນຫົວຂອງ libopencore-amrnb ແລະຫ້ອງສະໝຸດໃນລະຫວ່າງ
ການຕັ້ງຄ່າ. ທ່ານຈໍາເປັນຕ້ອງໄດ້ກໍານົດຢ່າງຈະແຈ້ງການກໍ່ສ້າງດ້ວຍ
"--enable-libopencore-amrnb".

ມີຕົວຖອດລະຫັດພື້ນເມືອງ FFmpeg ສໍາລັບ AMR-NB, ດັ່ງນັ້ນຜູ້ໃຊ້ສາມາດຖອດລະຫັດ AMR-NB ໂດຍບໍ່ມີການນີ້.
ຫ້ອງສະຫມຸດ.

libopencore-amrwb
libopencore-amrwb wrapper ຕົວຖອດລະຫັດ.

libopencore-amrwb ອະນຸຍາດໃຫ້ libavcodec ຖອດລະຫັດສຽງ Wideband ແບບປັບໄດ້ຫຼາຍອັດຕາ.
ຕົວແປງສັນຍານ. ການນໍາໃຊ້ມັນຮຽກຮ້ອງໃຫ້ມີການມີສ່ວນຫົວຂອງ libopencore-amrwb ແລະຫ້ອງສະຫມຸດໃນລະຫວ່າງ
ການຕັ້ງຄ່າ. ທ່ານຈໍາເປັນຕ້ອງໄດ້ກໍານົດຢ່າງຈະແຈ້ງການກໍ່ສ້າງດ້ວຍ
"--enable-libopencore-amrwb".

ມີຕົວຖອດລະຫັດຕົ້ນສະບັບ FFmpeg ສໍາລັບ AMR-WB, ດັ່ງນັ້ນຜູ້ໃຊ້ສາມາດຖອດລະຫັດ AMR-WB ໂດຍບໍ່ມີການນີ້.
ຫ້ອງສະຫມຸດ.

libopus
ຫໍ່ຕົວຖອດລະຫັດ libopus.

libopus ອະນຸຍາດໃຫ້ libavcodec ຖອດລະຫັດ Opus Interactive Audio Codec. ຮຽກຮ້ອງໃຫ້ມີ
ມີສ່ວນຫົວຂອງ libopus ແລະຫ້ອງສະຫມຸດໃນລະຫວ່າງການຕັ້ງຄ່າ. ທ່ານ​ຈໍາ​ເປັນ​ຕ້ອງ​ໄດ້​ຢ່າງ​ຊັດ​ເຈນ​
ຕັ້ງຄ່າການກໍ່ສ້າງດ້ວຍ "--enable-libopus".

ມີຕົວຖອດລະຫັດຕົ້ນສະບັບ FFmpeg ສໍາລັບ Opus, ດັ່ງນັ້ນຜູ້ໃຊ້ສາມາດຖອດລະຫັດ Opus ໂດຍບໍ່ມີຫ້ອງສະຫມຸດນີ້.

ຫົວຂໍ້ຍ່ອຍ ຖອດລະຫັດ


dvbsub
ທາງເລືອກໃນການ

compute_clut
-1 Compute clut ຖ້າບໍ່ມີ CLUT ທີ່ກົງກັນຢູ່ໃນກະແສ.

0 ຢ່າຄິດໄລ່ CLUT

1 ຄິດໄລ່ CLUT ສະເໝີ ແລະລົບລ້າງອັນທີ່ສະໜອງໃຫ້ຢູ່ໃນສະຕຣີມ.

dvb_substream
ເລືອກ dvb substream, ຫຼື substreams ທັງຫມົດຖ້າຫາກວ່າ -1 ຊຶ່ງເປັນຄ່າເລີ່ມຕົ້ນ.

dvdsub
ຕົວແປງສັນຍານນີ້ຖອດລະຫັດຄໍາບັນຍາຍ bitmap ທີ່ໃຊ້ໃນດີວີດີ; ຄໍາບັນຍາຍດຽວກັນສາມາດພົບໄດ້
ໃນຄູ່ໄຟລ໌ VobSub ແລະໃນບາງໄຟລ໌ Matroska.

ທາງເລືອກໃນການ

ກະດານ
ລະບຸ palette ທົ່ວໂລກທີ່ໃຊ້ໂດຍ bitmap. ເມື່ອເກັບຮັກສາໄວ້ໃນ VobSub, palette ແມ່ນ
ປົກກະຕິແລ້ວລະບຸໄວ້ໃນເອກະສານດັດສະນີ; ໃນ Matroska, palette ຖືກເກັບໄວ້ໃນ codec
extra-data ໃນຮູບແບບດຽວກັນກັບໃນ VobSub. ໃນແຜ່ນດີວີດີ, palette ຖືກເກັບໄວ້ໃນ IFO
ໄຟລ໌, ແລະເພາະສະນັ້ນຈຶ່ງບໍ່ສາມາດໃຊ້ໄດ້ໃນເວລາທີ່ອ່ານຈາກໄຟລ໌ VOB dumped.

ຮູບແບບຂອງຕົວເລືອກນີ້ແມ່ນສະຕຣິງທີ່ມີ 16 24-bits ເລກຖານສິບຫົກ
(ບໍ່ມີຄຳນຳໜ້າ 0x) ແຍກດ້ວຍ comas, ຕົວຢ່າງ "0d00ee, ee450d, 101010, eaeaea,
0ce60b, ec14ed, ebff0b, 0d617a, 7b7b7b, d1d1d1, 7b2a0e, 0d950c, 0f007b, cf0dec,
cfa80c, 7c127b".

ifo_palette
ລະບຸໄຟລ໌ IFO ທີ່ໄດ້ເອົາ palette ທົ່ວໂລກ. (ທົດລອງ)

forced_subs_only
ພຽງແຕ່ຖອດລະຫັດລາຍການຫົວຂໍ້ຍ່ອຍທີ່ຖືກໝາຍວ່າຖືກບັງຄັບ. ບາງຫົວຂໍ້ຖືກບັງຄັບ ແລະບໍ່ບັງຄັບ
ຄໍາບັນຍາຍໃນເພງດຽວກັນ. ການຕັ້ງທຸງນີ້ເປັນ 1 ຈະຮັກສາການບັງຄັບເທົ່ານັ້ນ
ຄຳບັນຍາຍ. ຄ່າເລີ່ມຕົ້ນແມ່ນ 0.

libzvbi-teletext
Libzvbi ອະນຸຍາດໃຫ້ libavcodec ຖອດລະຫັດຫນ້າ teletext DVB ແລະຄໍາບັນຍາຍ DVB teletext.
ຮຽກຮ້ອງໃຫ້ມີການມີສ່ວນຫົວຂອງ libzvbi ແລະຫ້ອງສະຫມຸດໃນລະຫວ່າງການຕັ້ງຄ່າ. ທ່ານຕ້ອງການ
ກຳນົດຄ່າການກໍ່ສ້າງດ້ວຍ "--enable-libzvbi".

ທາງເລືອກໃນການ

txt_page
ບັນຊີລາຍຊື່ຂອງຕົວເລກຫນ້າ teletext ເພື່ອຖອດລະຫັດ. ເຈົ້າອາດຈະໃຊ້ສະຕຣິງ * ພິເສດເພື່ອໃຫ້ກົງກັບທັງໝົດ
ໜ້າ. ໜ້າທີ່ບໍ່ກົງກັບລາຍການທີ່ລະບຸໄວ້ຈະຖືກຖິ້ມ. ຄ່າເລີ່ມຕົ້ນແມ່ນ *.

txt_chop_top
ຍົກເລີກແຖວ teletext ເທິງ. ຄ່າເລີ່ມຕົ້ນແມ່ນ 1.

txt_format
ລະບຸຮູບແບບຂອງຄໍາບັນຍາຍທີ່ຖອດລະຫັດໄດ້. ຕົວຖອດລະຫັດ teletext ມີຄວາມສາມາດ
ການຖອດລະຫັດຫນ້າ teletext ກັບ bitmap ຫຼືຂໍ້ຄວາມທີ່ງ່າຍດາຍ, ທ່ານຄວນໃຊ້ "bitmap" ສໍາລັບ
ຫນ້າ teletext, ເພາະວ່າຮູບພາບແລະສີທີ່ແນ່ນອນບໍ່ສາມາດສະແດງອອກໃນແບບງ່າຍດາຍ
ຂໍ້​ຄວາມ. ທ່ານອາດຈະໃຊ້ "ຂໍ້ຄວາມ" ສໍາລັບຄໍາບັນຍາຍ teletext ຖ້າຄໍາຮ້ອງສະຫມັກຂອງທ່ານສາມາດຈັດການກັບ
ຄຳແປທີ່ອີງໃສ່ຂໍ້ຄວາມງ່າຍໆ. ຄ່າເລີ່ມຕົ້ນແມ່ນ bitmap.

txt_ຊ້າຍ
X ຊົດເຊີຍຂອງແຜນຜັງທີ່ສ້າງຂຶ້ນ, ຄ່າເລີ່ມຕົ້ນແມ່ນ 0.

txt_top
Y offset ຂອງ bitmap ທີ່ສ້າງຂຶ້ນ, ຄ່າເລີ່ມຕົ້ນແມ່ນ 0.

txt_chop_spaces
ຟັກພື້ນທີ່ທາງໜ້າ ແລະຕໍ່ທ້າຍ ແລະເອົາເສັ້ນເປົ່າອອກຈາກຂໍ້ຄວາມທີ່ສ້າງຂຶ້ນ.
ຕົວເລືອກນີ້ແມ່ນເປັນປະໂຫຍດສໍາລັບຄໍາບັນຍາຍທີ່ອີງໃສ່ teletext ບ່ອນທີ່ມີພື້ນທີ່ຫວ່າງເປົ່າ
ໃນ​ຕອນ​ຕົ້ນ​ຫຼື​ໃນ​ຕອນ​ທ້າຍ​ຂອງ​ສາຍ​ຫຼື​ເສັ້ນ​ຫວ່າງ​ເປົ່າ​ອາດ​ຈະ​ມີ​ຢູ່​ລະ​ຫວ່າງ​
ແຖວຄຳບັນຍາຍເນື່ອງຈາກຕົວອັກສອນ teletext ຂະໜາດສອງເທົ່າ. ຄ່າເລີ່ມຕົ້ນແມ່ນ 1.

txt_ໄລຍະເວລາ
ກໍານົດໄລຍະເວລາການສະແດງຂອງຫນ້າ teletext ຖອດລະຫັດຫຼືຄໍາບັນຍາຍເປັນ miliseconds.
ຄ່າເລີ່ມຕົ້ນແມ່ນ 30000 ເຊິ່ງເປັນ 30 ວິນາທີ.

txt_ໂປ່ງໃສ
ບັງຄັບພື້ນຫຼັງທີ່ໂປ່ງໃສຂອງບິດແຜນທີ່ teletext ທີ່ສ້າງຂຶ້ນ. ຄ່າເລີ່ມຕົ້ນແມ່ນ 0
ຊຶ່ງຫມາຍຄວາມວ່າເປັນພື້ນຫລັງ opaque (ສີດໍາ).

ເຂົ້າລະຫັດ


ຕົວເຂົ້າລະຫັດແມ່ນອົງປະກອບທີ່ມີການຕັ້ງຄ່າໃນ FFmpeg ເຊິ່ງອະນຸຍາດໃຫ້ເຂົ້າລະຫັດຂອງສະຕຣີມມັນຕິມີເດຍ.

ໃນເວລາທີ່ທ່ານ configure FFmpeg build ຂອງທ່ານ, ທັງຫມົດທີ່ສະຫນັບສະຫນູນ encoders ພື້ນເມືອງໄດ້ຖືກເປີດໃຊ້ໂດຍ
ຄ່າເລີ່ມຕົ້ນ. ຕົວເຂົ້າລະຫັດທີ່ຕ້ອງການຫ້ອງສະໝຸດພາຍນອກຈະຕ້ອງຖືກເປີດໃຊ້ດ້ວຍຕົນເອງຜ່ານທາງ
ທາງເລືອກ "--enable-lib" ທີ່ສອດຄ້ອງກັນ. ທ່ານ​ສາ​ມາດ​ລາຍ​ຊື່ encoders ທີ່​ມີ​ທັງ​ຫມົດ​ໂດຍ​ການ​ນໍາ​ໃຊ້​
ຕັ້ງຄ່າຕົວເລືອກ "--list-encoders".

ທ່ານ​ສາ​ມາດ​ປິດ​ການ​ທໍາ​ງານ​ການ​ເຂົ້າ​ລະ​ຫັດ​ທັງ​ຫມົດ​ທີ່​ມີ​ທາງ​ເລືອກ configure "--disable-encoders​" ແລະ​
ເລືອກເປີດ / ປິດການໃຊ້ງານຕົວເຂົ້າລະຫັດດຽວດ້ວຍຕົວເລືອກ "--enable-encoder=ເຂົ້າລະຫັດ" /
"--disable-encoder=ເຂົ້າລະຫັດ".

ຕົວເລືອກ "-encoders" ຂອງເຄື່ອງມື ff* ຈະສະແດງລາຍຊື່ຂອງຕົວເຂົ້າລະຫັດທີ່ເປີດໃຊ້.

AUDIO ເຂົ້າລະຫັດ


ລາຍລະອຽດຂອງບາງຕົວເຂົ້າລະຫັດສຽງທີ່ມີຢູ່ໃນປັດຈຸບັນຕໍ່ໄປນີ້.

aac
Advanced Audio Coding (AAC) encoder.

ຕົວເຂົ້າລະຫັດນີ້ເປັນຕົວເຂົ້າລະຫັດ FFmpeg-native AAC ແບບທົດລອງ. ໃນປັດຈຸບັນມີພຽງແຕ່ຕ່ໍາ
ໂປຣໄຟລຄວາມສັບສົນ (AAC-LC) ຮອງຮັບ. ເພື່ອໃຊ້ຕົວເຂົ້າລະຫັດນີ້, ທ່ານຕ້ອງຕັ້ງຄ່າ ຢ່າງເຄັ່ງຄັດ ທາງເລືອກ
to ທົດລອງ ຫຼືຕ່ໍາກວ່າ.

ເນື່ອງຈາກຕົວເຂົ້າລະຫັດນີ້ເປັນການທົດລອງ, ພຶດຕິກຳທີ່ບໍ່ຄາດຄິດອາດມີຢູ່ເປັນບາງຄັ້ງຄາວ. ສໍາ​ລັບ
ຕົວເຂົ້າລະຫັດ AAC ຄົງທີ່ຫຼາຍ, ເບິ່ງ libvo-aacenc. ຢ່າງໃດກໍຕາມ, ໄດ້ຮັບການເຕືອນວ່າມັນມີຄຸນນະພາບທີ່ຮ້າຍແຮງກວ່າເກົ່າ
ລາຍງານໂດຍຜູ້ໃຊ້ບາງຄົນ.

ເບິ່ງ libfdk_aac.

ທາງເລືອກໃນການ

b ກໍານົດອັດຕາບິດເປັນ bits/s. ການຕັ້ງຄ່ານີ້ອັດຕະໂນມັດເປີດໃຊ້ອັດຕາບິດຄົງທີ່ (CBR)
mode

q ຕັ້ງຄ່າຄຸນນະພາບສຳລັບໂໝດອັດຕາບິດຕົວແປ (VBR). ທາງເລືອກນີ້ແມ່ນຖືກຕ້ອງພຽງແຕ່ການນໍາໃຊ້
ffmpeg ເຄື່ອງມືບັນທັດຄໍາສັ່ງ. ສໍາລັບຜູ້ໃຊ້ໃນການໂຕ້ຕອບຫ້ອງສະຫມຸດ, ໃຊ້ global_quality.

stereo_mode
ຕັ້ງໂໝດການເຂົ້າລະຫັດສະເຕຣິໂອ. ຄ່າທີ່ເປັນໄປໄດ້:

ອັດຕະໂນມັດ
ເລືອກອັດຕະໂນມັດໂດຍຕົວເຂົ້າລະຫັດ.

ms_off
ປິດການເຂົ້າລະຫັດກາງ/ຂ້າງ. ນີ້ແມ່ນຄ່າເລີ່ມຕົ້ນ.

ms_force
ບັງຄັບການເຂົ້າລະຫັດກາງ/ຂ້າງ.

aac_coder
ຕັ້ງວິທີການເຂົ້າລະຫັດຕົວເຂົ້າລະຫັດ AAC. ຄ່າທີ່ເປັນໄປໄດ້:

faac
ວິທີການທີ່ໄດ້ຮັບແຮງບັນດານໃຈຈາກ FAAC.

ວິ​ທີ​ການ​ນີ້​ແມ່ນ​ການ​ປະ​ຕິ​ບັດ​ທີ່​ງ່າຍ​ດາຍ​ຂອງ​ວິ​ທີ​ການ​ນໍາ​ໃຊ້​ໃນ FAAC​, ເຊິ່ງ​
ກໍານົດຂອບເຂດອັດຕາສ່ວນກັບພະລັງງານແຖບ, ແລະຫຼັງຈາກນັ້ນຫຼຸດລົງທັງຫມົດ
thresholds ທີ່ມີຂັ້ນຕອນ quantizer ເພື່ອຊອກຫາປະລິມານທີ່ເຫມາະສົມກັບ
ການບິດເບືອນຕໍ່າກວ່າເກນຕາມແຖບ.

ຄຸນນະພາບຂອງວິທີການນີ້ແມ່ນທຽບກັບສອງວິທີການຊອກຫາ loop
ອະທິບາຍຂ້າງລຸ່ມນີ້, ແຕ່ເລັກນ້ອຍດີກວ່າແລະຊ້າກວ່າ.

anmr
ອັດ​ຕາ​ສ່ວນ​ສຽງ​ດັງ​ສະ​ເລ່ຍ​ຕໍ່​ຫນ້າ​ກາກ (ANMR​) ການ​ແກ້​ໄຂ​ທີ່​ອີງ​ໃສ່ trellis​.

ນີ້ມີຄຸນນະພາບທີ່ດີທີ່ສຸດທາງດ້ານທິດສະດີອອກຈາກວິທີການເຂົ້າລະຫັດທັງຫມົດ, ແຕ່ມີຄ່າໃຊ້ຈ່າຍ
ຂອງ​ຄວາມ​ໄວ​ຊ້າ​ທີ່​ສຸດ​.

twoloop
ວິທີການຄົ້ນຫາ loop ສອງ (TLS).

ວິທີການນີ້ທໍາອິດກໍານົດ quantizers ຂຶ້ນກັບຂອບເຂດແຖບແລະຫຼັງຈາກນັ້ນພະຍາຍາມ
ຊອກຫາການປະສົມປະສານທີ່ດີທີ່ສຸດໂດຍການເພີ່ມຫຼືລົບຄ່າສະເພາະຈາກທັງຫມົດ
quantizers ແລະປັບບາງ quantizer ບຸກຄົນເລັກນ້ອຍ.

ວິທີການນີ້ຜະລິດຄຸນນະພາບທີ່ຄ້າຍຄືກັນກັບວິທີການ FAAC ແລະເປັນຄ່າເລີ່ມຕົ້ນ.

ໄວ
ວິທີການປະລິມານຄົງທີ່.

ວິທີການນີ້ກໍານົດປະລິມານຄົງທີ່ສໍາລັບທຸກແຖບ. ນີ້ແມ່ນໄວທີ່ສຸດຂອງທັງຫມົດ
ວິທີການ, ແຕ່ມີຄຸນນະພາບທີ່ບໍ່ດີທີ່ສຸດ.

ac3 ແລະ ac3_ແກ້ໄຂ
ເຄື່ອງເຂົ້າລະຫັດສຽງ AC-3.

ຕົວເຂົ້າລະຫັດເຫຼົ່ານີ້ປະຕິບັດສ່ວນຫນຶ່ງຂອງ ATSC A/52:2010 ແລະ ETSI TS 102 366, ເຊັ່ນດຽວກັນກັບ
undocumented RealAudio 3 (aka dnet).

ໄດ້ ac3 encoder ໃຊ້ຄະນິດສາດຈຸດລອຍ, ໃນຂະນະທີ່ ac3_ແກ້ໄຂ encoder ພຽງແຕ່ໃຊ້ fixed-
ເລກຄະນິດສາດ. ນີ້ບໍ່ໄດ້ຫມາຍຄວາມວ່າອັນຫນຶ່ງແມ່ນໄວສະເຫມີ, ພຽງແຕ່ຫນຶ່ງຫຼື
ອື່ນໆອາດຈະເຫມາະສົມກັບລະບົບສະເພາະໃດຫນຶ່ງ. ຕົວເຂົ້າລະຫັດຈຸດລອຍຕົວຈະ
ໂດຍ​ທົ່ວ​ໄປ​ແລ້ວ​ຜະ​ລິດ​ສຽງ​ທີ່​ມີ​ຄຸນ​ນະ​ພາບ​ທີ່​ດີກ​ວ່າ​ສໍາ​ລັບ​ອັດ​ຕາ​ບິດ​ທີ່​ໃຫ້​. ໄດ້ ac3_ແກ້ໄຂ ຕົວເຂົ້າລະຫັດບໍ່ແມ່ນ
ຕົວແປງສັນຍານເລີ່ມຕົ້ນສໍາລັບຮູບແບບຜົນຜະລິດໃດໆ, ສະນັ້ນມັນຕ້ອງໄດ້ຮັບການລະບຸຢ່າງຊັດເຈນໂດຍໃຊ້
ທາງເລືອກ "-acodec ac3_fixed" ເພື່ອໃຊ້ມັນ.

AC-3 Metadata

ຕົວເລືອກເມຕາເດຕາຂອງ AC-3 ຖືກນໍາໃຊ້ເພື່ອກໍານົດພາລາມິເຕີທີ່ອະທິບາຍສຽງ, ແຕ່ໃນສ່ວນໃຫຍ່
ກໍລະນີບໍ່ມີຜົນກະທົບຕໍ່ການເຂົ້າລະຫັດສຽງຂອງມັນເອງ. ບາງທາງເລືອກທີ່ມີຜົນກະທົບໂດຍກົງຫຼື
ມີອິດທິພົນຕໍ່ການຖອດລະຫັດແລະການຫຼິ້ນຂອງ bitstream ຜົນໄດ້ຮັບ, ໃນຂະນະທີ່ຄົນອື່ນແມ່ນພຽງແຕ່ສໍາລັບ
ຈຸດ​ປະ​ສົງ​ຂໍ້​ມູນ​ຂ່າວ​ສານ​. ບາງທາງເລືອກຈະເພີ່ມບິດໃສ່ກະແສຜົນຜະລິດທີ່ສາມາດເຮັດໄດ້
ຖ້າບໍ່ດັ່ງນັ້ນຈະຖືກໃຊ້ສໍາລັບຂໍ້ມູນສຽງ, ແລະດັ່ງນັ້ນຈຶ່ງຈະສົ່ງຜົນກະທົບຕໍ່ຄຸນນະພາບຂອງຜົນຜະລິດ. ເຫຼົ່ານັ້ນ
ຈະ​ຖືກ​ຊີ້​ໃຫ້​ເຫັນ​ຕາມ​ການ​ບັນ​ທຶກ​ໃນ​ບັນ​ຊີ​ລາຍ​ການ​ທາງ​ເລືອກ​ຂ້າງ​ລຸ່ມ​ນີ້​.

ຕົວກໍານົດການເຫຼົ່ານີ້ແມ່ນໄດ້ອະທິບາຍຢ່າງລະອຽດຢູ່ໃນເອກະສານສາທາລະນະຫຼາຍສະບັບ.

*<http://www.atsc.org/cms/standards/a_52-2010.pdf>>
*<http://www.atsc.org/cms/standards/a_54a_with_corr_1.pdf>>
*<http://www.dolby.com/uploadedFiles/zz-_Shared_Assets/English_PDFs/Professional/18_Metadata.Guide.pdf>>
*<http://www.dolby.com/uploadedFiles/zz-_Shared_Assets/English_PDFs/Professional/46_DDEncodingGuidelines.pdf>>

ຕົວເລືອກການຄວບຄຸມເມຕາເດຕາ

-per_frame_metadata ປຸ້ຍ
ອະນຸຍາດຂໍ້ມູນເມຕາເດຕາຕໍ່ເຟຣມ. ລະບຸວ່າຕົວເຂົ້າລະຫັດຄວນກວດສອບການປ່ຽນແປງເມຕາເດຕາຫຼືບໍ່
ສໍາລັບແຕ່ລະກອບ.

0 ຄ່າ metadata ທີ່ກໍານົດໄວ້ໃນຕອນເລີ່ມຕົ້ນຈະຖືກນໍາໃຊ້ສໍາລັບທຸກໆກອບໃນ
ກະແສ. (ຄ່າເລີ່ມຕົ້ນ)

1 ຄ່າ metadata ສາມາດປ່ຽນແປງໄດ້ກ່ອນທີ່ຈະເຂົ້າລະຫັດແຕ່ລະກອບ.

ລະດັບ Downmix

-center_mixlev ລະດັບ
ລະດັບການປະສົມກາງ. ຈໍານວນການໄດ້ຮັບຕົວຖອດລະຫັດຄວນໃຊ້ກັບຊ່ອງທາງກາງ
ໃນເວລາທີ່ downmixing ກັບ stereo. ຊ່ອງຂໍ້ມູນນີ້ຈະຖືກຂຽນໃສ່ bitstream ຖ້າ a
ຊ່ອງກາງແມ່ນປະຈຸບັນ. ຄ່າແມ່ນລະບຸເປັນປັດໄຈຂະຫນາດ. ມີ 3 ທີ່ຖືກຕ້ອງ
ຄຸນຄ່າ:

0.707
ນຳໃຊ້ -3dB ເພີ່ມ

0.595
ນຳໃຊ້ -4.5dB ເພີ່ມ (ຄ່າເລີ່ມຕົ້ນ)

0.500
ນຳໃຊ້ -6dB ເພີ່ມ

-surround_mixlev ລະດັບ
ລະດັບການປະສົມອ້ອມຮອບ. ຈໍານວນການໄດ້ຮັບຕົວຖອດລະຫັດຄວນໃຊ້ກັບພື້ນທີ່ອ້ອມຮອບ
ຊ່ອງ (s) ເມື່ອ downmixing ກັບ stereo. ຊ່ອງຂໍ້ມູນນີ້ຈະຖືກຂຽນໃສ່ bitstream ເທົ່ານັ້ນ
ຖ້າມີຊ່ອງລ້ອມຮອບໜຶ່ງ ຫຼືຫຼາຍຊ່ອງ. ຄ່າແມ່ນລະບຸເປັນຂະໜາດ
ປັດໄຈ. ມີ 3 ຄ່າທີ່ຖືກຕ້ອງ:

0.707
ນຳໃຊ້ -3dB ເພີ່ມ

0.500
ນຳໃຊ້ -6dB ເພີ່ມ (ຄ່າເລີ່ມຕົ້ນ)

0.000
Silence Surround Channel(s)

ຂໍ້ມູນການຜະລິດສຽງ

ຂໍ້ມູນການຜະລິດສຽງແມ່ນຂໍ້ມູນທາງເລືອກທີ່ອະທິບາຍສະພາບແວດລ້ອມການປະສົມ.
ບໍ່ວ່າອັນໃດ ຫຼືທັງສອງຊ່ອງຂໍ້ມູນຖືກຂຽນໃສ່ກະແສບິດ.

-mixing_level ຈໍານວນ
ລະດັບການປະສົມ. ລະບຸລະດັບຄວາມກົດດັນສຽງສູງສຸດ (SPL) ໃນສະພາບແວດລ້ອມການຜະລິດ
ໃນເວລາທີ່ປະສົມໄດ້ຖືກ mastered. ຄ່າທີ່ຖືກຕ້ອງແມ່ນ 80 ຫາ 111, ຫຼື -1 ສໍາລັບບໍ່ຮູ້ຫຼືບໍ່
ຊີ້ບອກ. ຄ່າເລີ່ມຕົ້ນແມ່ນ -1, ແຕ່ຄ່ານັ້ນບໍ່ສາມາດໃຊ້ໄດ້ຖ້າສຽງ
ຂໍ້ມູນການຜະລິດຖືກຂຽນລົງໃນ bitstream. ດັ່ງນັ້ນ, ຖ້າ "room_type"
ທາງເລືອກບໍ່ແມ່ນຄ່າເລີ່ມຕົ້ນ, ທາງເລືອກ "mixing_level" ຈະຕ້ອງບໍ່ແມ່ນ -1.

-room_type ປະເພດ
ປະເພດຫ້ອງ. ອະ ທິ ບາຍ ຄວາມ ສະ ເຫມີ ພາບ ທີ່ ນໍາ ໃຊ້ ໃນ ໄລ ຍະ ກອງ ປະ ຊຸມ ປະ ສົມ ສຸດ ທ້າຍ ຢູ່ ທີ່
studio ຫຼືໃນຂັ້ນຕອນຂອງການ dubbing. ຫ້ອງຂະຫນາດໃຫຍ່ເປັນຂັ້ນຕອນຂອງການ dubbing ກັບອຸດສາຫະກໍາ
ຄວາມສະເຫມີພາບ X-curve ມາດຕະຖານ; ຫ້ອງຂະຫນາດນ້ອຍມີຄວາມສະເຫມີພາບຮາບພຽງ. ພາກສະຫນາມນີ້ຈະ
ບໍ່ໄດ້ຖືກຂຽນໃສ່ bitstream ຖ້າທັງສອງທາງເລືອກ "mixing_level" ແລະ "room_type"
ຕົວເລືອກມີຄ່າເລີ່ມຕົ້ນ.

0
ບົ່ງບອກ
ບໍ່ໄດ້ລະບຸ (ຄ່າເລີ່ມຕົ້ນ)

1
ຂະຫນາດໃຫຍ່
ຫ້ອງໃຫຍ່

2
ຂະຫນາດນ້ອຍ
ຫ້ອງຂະຫນາດນ້ອຍ

ທາງເລືອກ Metadata ອື່ນໆ

- ລິ​ຂະ​ສິດ​ ປຸ້ຍ
ຕົວຊີ້ວັດລິຂະສິດ. ລະບຸວ່າມີລິຂະສິດສຳລັບສຽງນີ້ຫຼືບໍ່.

0
ໄປ ບໍ່ມີລິຂະສິດ (ຄ່າເລີ່ມຕົ້ນ)

1
on ລິຂະສິດມີຢູ່

- dialnorm ມູນຄ່າ
ການສົນທະນາປົກກະຕິ. ຊີ້ບອກວ່າລະດັບການສົນທະນາສະເລ່ຍຂອງໂຄງການຢູ່ໄກປານໃດ
ຕ່ໍາກວ່າດິຈິຕອນ 100% ຂະຫນາດເຕັມ (0 dBFS). ພາລາມິເຕີນີ້ກໍານົດການປ່ຽນລະດັບໃນລະຫວ່າງ
ການສືບພັນສຽງທີ່ກຳນົດລະດັບສຽງສະເລ່ຍຂອງການສົນທະນາໃຫ້ເປັນລະດັບທີ່ຕັ້ງໄວ້ລ່ວງໜ້າ. ໄດ້
ເປົ້າຫມາຍແມ່ນເພື່ອຈັບຄູ່ລະດັບປະລິມານລະຫວ່າງແຫຼ່ງໂຄງການ. ຄ່າຂອງ -31dB ຈະສົ່ງຜົນໃຫ້
ບໍ່ມີການປ່ຽນແປງລະດັບສຽງ, ທຽບກັບປະລິມານແຫຼ່ງ, ໃນລະຫວ່າງການຜະລິດສຽງ.
ຄ່າທີ່ຖືກຕ້ອງແມ່ນຕົວເລກທັງໝົດຢູ່ໃນຂອບເຂດ -31 ຫາ -1, ໂດຍ -31 ເປັນຄ່າເລີ່ມຕົ້ນ.

-dsur_mode ຮູບແບບການ
ໂໝດ Dolby Surround. ລະບຸວ່າສັນຍານສະເຕຣິໂອໃຊ້ Dolby Surround (Pro
ເຫດຜົນ). ຊ່ອງຂໍ້ມູນນີ້ຈະຖືກຂຽນໃສ່ bitstream ເທົ່ານັ້ນຫາກກະແສສຽງແມ່ນ
stereo. ການນໍາໃຊ້ທາງເລືອກນີ້ເຮັດ ບໍ່ ໝາຍຄວາມວ່າຕົວເຂົ້າລະຫັດຈະນຳໃຊ້ Dolby Surround ຢ່າງແທ້ຈິງ
ການປຸງແຕ່ງ.

0
ບົ່ງບອກ
ບໍ່ໄດ້ລະບຸ (ຄ່າເລີ່ມຕົ້ນ)

1
ໄປ ບໍ່ໄດ້ເຂົ້າລະຫັດ Dolby Surround

2
on Dolby Surround ເຂົ້າລະຫັດ

- ຕົ້ນສະບັບ ປຸ້ຍ
ຕົວຊີ້ວັດ Bit Stream ຕົ້ນສະບັບ. ລະບຸວ່າສຽງນີ້ແມ່ນມາຈາກຕົ້ນສະບັບຫຼືບໍ່
ແຫຼ່ງແລະບໍ່ແມ່ນສໍາເນົາ.

0
ໄປ ບໍ່ແມ່ນແຫຼ່ງຕົ້ນສະບັບ

1
on ແຫຼ່ງຕົ້ນສະບັບ (ຄ່າເລີ່ມຕົ້ນ)

ການຂະຫຍາຍ ກະແສນໍ້າ ຂໍ້ມູນຂ່າວສານ

ຕົວເລືອກບິດສະຕຣີມທີ່ຂະຫຍາຍອອກແມ່ນສ່ວນໜຶ່ງຂອງສະຕີມບິດສະຕຣີມສະຫຼັບກັນຕາມທີ່ລະບຸໄວ້ໃນ
ເອກະສານຊ້ອນທ້າຍ D ຂອງມາດຕະຖານ A/52:2010. ມັນຖືກຈັດເປັນ 2 ສ່ວນ. ຖ້າຕົວກໍານົດການໃດນຶ່ງໃນ a
ກຸ່ມຖືກລະບຸ, ຄ່າທັງໝົດໃນກຸ່ມນັ້ນຈະຖືກຂຽນໃສ່ bitstream. ຄ່າເລີ່ມຕົ້ນ
ຄ່າ​ແມ່ນ​ຖືກ​ນໍາ​ໃຊ້​ສໍາ​ລັບ​ການ​ທີ່​ໄດ້​ຮັບ​ການ​ຂຽນ​ແຕ່​ບໍ່​ໄດ້​ຖືກ​ລະ​ບຸ​ໄວ້​. ຖ້າການປະສົມ
ລະ​ດັບ​ແມ່ນ​ລາຍ​ລັກ​ອັກ​ສອນ​, ຕົວ​ຖອດ​ລະ​ຫັດ​ຈະ​ນໍາ​ໃຊ້​ຄ່າ​ເຫຼົ່າ​ນີ້​ແທນ​ທີ່​ຈະ​ເປັນ​ທີ່​ລະ​ບຸ​ໄວ້​ໃນ​
"center_mixlev" ແລະ "surround_mixlev" ທາງເລືອກຖ້າມັນສະຫນັບສະຫນູນ Bit Stream ທາງເລືອກ.
syntax.

ຂະຫຍາຍຂໍ້ມູນ Bitstream - ສ່ວນທີ 1

- dmix_mode ຮູບແບບການ
ໂໝດ Stereo Downmix ທີ່ຕ້ອງການ. ອະນຸຍາດໃຫ້ຜູ້ໃຊ້ເລືອກ Lt/Rt (Dolby Surround)
ຫຼື Lo/Ro (ສະເຕຣິໂອປົກກະຕິ) ເປັນໂໝດສະເຕຣິໂອ downmix ທີ່ຕ້ອງການ.

0
ບົ່ງບອກ
ບໍ່ໄດ້ລະບຸ (ຄ່າເລີ່ມຕົ້ນ)

1
ltrt
LT/Rt Downmix ມັກ

2
ໂລລາ
Lo/Ro Downmix ມັກ

-ltrt_cmixlev ລະດັບ
ລະດັບປະສົມສູນ Lt/Rt. ຈໍານວນການໄດ້ຮັບຕົວຖອດລະຫັດຄວນໃຊ້ກັບສູນ
ຊ່ອງໃນເວລາທີ່ downmixing ກັບ stereo ໃນຮູບແບບ Lt/Rt.

1.414
ນຳໃຊ້ການເພີ່ມ +3dB

1.189
ນຳໃຊ້ການເພີ່ມ +1.5dB

1.000
ນຳໃຊ້ການເພີ່ມ 0dB

0.841
ນຳໃຊ້ -1.5dB ເພີ່ມ

0.707
ນຳໃຊ້ -3.0dB ເພີ່ມ

0.595
ນຳໃຊ້ -4.5dB ເພີ່ມ (ຄ່າເລີ່ມຕົ້ນ)

0.500
ນຳໃຊ້ -6.0dB ເພີ່ມ

0.000
Silence Center Channel

-ltrt_surmixlev ລະດັບ
ລະດັບການປະສົມອ້ອມຮອບ Lt/Rt. ຈໍານວນການໄດ້ຮັບຕົວຖອດລະຫັດຄວນໃຊ້ກັບພື້ນທີ່ອ້ອມຮອບ
ຊ່ອງ (s) ເມື່ອ downmixing ກັບ stereo ໃນໂຫມດ Lt/Rt.

0.841
ນຳໃຊ້ -1.5dB ເພີ່ມ

0.707
ນຳໃຊ້ -3.0dB ເພີ່ມ

0.595
ນຳໃຊ້ -4.5dB ເພີ່ມ

0.500
ນຳໃຊ້ -6.0dB ເພີ່ມ (ຄ່າເລີ່ມຕົ້ນ)

0.000
Silence Surround Channel(s)

-loro_cmixlev ລະດັບ
ລະດັບການປະສົມສູນກາງ Lo/Ro. ຈໍານວນການໄດ້ຮັບຕົວຖອດລະຫັດຄວນໃຊ້ກັບສູນ
ຊ່ອງໃນເວລາທີ່ downmixing ກັບ stereo ໃນໂຫມດ Lo/Ro.

1.414
ນຳໃຊ້ການເພີ່ມ +3dB

1.189
ນຳໃຊ້ການເພີ່ມ +1.5dB

1.000
ນຳໃຊ້ການເພີ່ມ 0dB

0.841
ນຳໃຊ້ -1.5dB ເພີ່ມ

0.707
ນຳໃຊ້ -3.0dB ເພີ່ມ

0.595
ນຳໃຊ້ -4.5dB ເພີ່ມ (ຄ່າເລີ່ມຕົ້ນ)

0.500
ນຳໃຊ້ -6.0dB ເພີ່ມ

0.000
Silence Center Channel

-loro_surmixlev ລະດັບ
ລະດັບການປະສົມຮອບອ້ອມ Lo/Ro. ຈໍານວນການໄດ້ຮັບຕົວຖອດລະຫັດຄວນໃຊ້ກັບພື້ນທີ່ອ້ອມຮອບ
ຊ່ອງ (s) ເມື່ອ downmix ກັບ stereo ໃນໂຫມດ Lo/Ro.

0.841
ນຳໃຊ້ -1.5dB ເພີ່ມ

0.707
ນຳໃຊ້ -3.0dB ເພີ່ມ

0.595
ນຳໃຊ້ -4.5dB ເພີ່ມ

0.500
ນຳໃຊ້ -6.0dB ເພີ່ມ (ຄ່າເລີ່ມຕົ້ນ)

0.000
Silence Surround Channel(s)

ຂະຫຍາຍຂໍ້ມູນ Bitstream - ສ່ວນທີ 2

-dsurex_mode ຮູບແບບການ
ໂໝດ Dolby Surround EX. ຊີ້ບອກວ່າການຖ່າຍທອດໃຊ້ Dolby Surround EX (7.1
matrixed ກັບ 5.1). ການນໍາໃຊ້ທາງເລືອກນີ້ເຮັດ ບໍ່ ໝາຍ ຄວາມວ່າຕົວເຂົ້າລະຫັດຈະໃຊ້ຕົວຈິງ
ການປະມວນຜົນ Dolby Surround EX.

0
ບົ່ງບອກ
ບໍ່ໄດ້ລະບຸ (ຄ່າເລີ່ມຕົ້ນ)

1
on Dolby Surround EX ປິດ

2
ໄປ Dolby Surround EX ເປີດ

-dheadphone_mode ຮູບແບບການ
ໂໝດຫູຟັງ Dolby. ຊີ້ບອກວ່າການຖ່າຍທອດໃຊ້ການເຂົ້າລະຫັດ Dolby Headphone ຫຼືບໍ່
(ມາຕຣິກເບື້ອງຫຼາຍຊ່ອງເປັນ 2.0 ສໍາລັບໃຊ້ກັບຫູຟັງ). ການນໍາໃຊ້ທາງເລືອກນີ້ເຮັດ ບໍ່
ໝາຍຄວາມວ່າຕົວເຂົ້າລະຫັດຈະນຳໃຊ້ການປະມວນຜົນ Dolby Headphone.

0
ບົ່ງບອກ
ບໍ່ໄດ້ລະບຸ (ຄ່າເລີ່ມຕົ້ນ)

1
on ປິດຫູຟັງ Dolby

2
ໄປ ເປີດຫູຟັງ Dolby

-ad_conv_type ປະເພດ
ປະເພດ A/D Converter. ຊີ້ບອກວ່າສຽງໄດ້ຜ່ານ HDCD A/D ຫຼືບໍ່
ປ່ຽນໃຈເຫລື້ອມໃສ.

0
ມາດຕະຖານ
ຕົວປ່ຽນ A/D ມາດຕະຖານ (ຄ່າເລີ່ມຕົ້ນ)

1
hdcd
ຕົວປ່ຽນ HDCD A/D

ອື່ນ ໆ AC-3 ການເຂົ້າລະຫັດ ທາງເລືອກໃນການ

-stereo_rematrixing ປຸ້ຍ
Stereo Rematrixing. ເປີດ/ປິດການນຳໃຊ້ rematrixing ສຳລັບການປ້ອນຂໍ້ມູນສະເຕຣິໂອ. ນີ້ແມ່ນ
ຄຸນສົມບັດທາງເລືອກ AC-3 ທີ່ເພີ່ມຄຸນນະພາບໂດຍການເລືອກເຂົ້າລະຫັດຊ້າຍ/ຂວາ
ຊ່ອງເປັນກາງ/ຂ້າງ. ຕົວເລືອກນີ້ຖືກເປີດໃຊ້ໂດຍຄ່າເລີ່ມຕົ້ນ, ແລະມັນແນະນໍາໃຫ້ສູງ
ມັນຈະຖືກປະໄວ້ເປັນເປີດໃຊ້ງານຍົກເວັ້ນເພື່ອຈຸດປະສົງການທົດສອບ.

Floating-Point-ເທົ່ານັ້ນ AC-3 ການເຂົ້າລະຫັດ ທາງເລືອກໃນການ

ທາງເລືອກເຫຼົ່ານີ້ແມ່ນໃຊ້ໄດ້ພຽງແຕ່ສໍາລັບຕົວເຂົ້າລະຫັດຈຸດທີ່ເລື່ອນໄດ້ ແລະບໍ່ມີຢູ່ສໍາລັບ
ຕົວເຂົ້າລະຫັດຈຸດຄົງທີ່ເນື່ອງຈາກລັກສະນະທີ່ສອດຄ້ອງກັນບໍ່ໄດ້ປະຕິບັດໃນຄົງທີ່-
ຈຸດ

-channel_coupling ປຸ້ຍ
ເປີດ​ໃຊ້​ງານ / ປິດ​ການ​ນໍາ​ໃຊ້​ຂອງ​ການ​ເຊື່ອມ​ຕໍ່​ຊ່ອງ​ທາງ​, ຊຶ່ງ​ເປັນ​ຄຸນ​ນະ​ສົມ​ບັດ AC​-3 ທາງ​ເລືອກ​ທີ່​
ເພີ່ມຄຸນະພາບໂດຍການລວມຂໍ້ມູນຄວາມຖີ່ສູງຈາກຫຼາຍຊ່ອງທາງເຂົ້າໄປໃນ
ຊ່ອງດຽວ. ຂໍ້ມູນຄວາມຖີ່ສູງຕໍ່ຊ່ອງແມ່ນຖືກສົ່ງໄປດ້ວຍຫນ້ອຍ
ຄວາມ​ຖືກ​ຕ້ອງ​ທັງ​ໃນ​ຄວາມ​ຖີ່​ຂອງ​ການ​ແລະ​ເວ​ລາ​. ນີ້ອະນຸຍາດໃຫ້ bits ຫຼາຍທີ່ຈະນໍາໃຊ້ສໍາລັບ
ຄວາມຖີ່ຕ່ໍາໃນຂະນະທີ່ເກັບຮັກສາຂໍ້ມູນພຽງພໍເພື່ອ reconstruct ສູງ
ຄວາມຖີ່. ທາງ​ເລືອກ​ນີ້​ແມ່ນ​ເປີດ​ໃຊ້​ງານ​ໂດຍ​ຄ່າ​ເລີ່ມ​ຕົ້ນ​ສໍາ​ລັບ​ຕົວ​ລະ​ຫັດ​ຈຸດ​ທີ່​ເລື່ອນ​ໄດ້​ແລະ​
ໂດຍທົ່ວໄປແລ້ວຄວນຈະຖືກປະໄວ້ເປັນເປີດໃຊ້ງານຍົກເວັ້ນສໍາລັບຈຸດປະສົງການທົດສອບຫຼືເພື່ອເພີ່ມ
ຄວາມ​ໄວ​ການ​ເຂົ້າ​ລະ​ຫັດ​.

-1
ອັດຕະໂນມັດ
ເລືອກໂດຍຕົວເຂົ້າລະຫັດ (ຄ່າເລີ່ມຕົ້ນ)

0
ໄປ ປິດການເຊື່ອມຊ່ອງ

1
on ເປີດໃຊ້ການເຊື່ອມຊ່ອງ

-cpl_start_band ຈໍານວນ
Coupling Start Band. ກໍານົດແຖບການຈັບຄູ່ຊ່ອງທາງເລີ່ມຕົ້ນ, ຈາກ 1 ຫາ 15. ຖ້າຄ່າ
ສູງກ່ວາແບນວິດຖືກນໍາໃຊ້, ມັນຈະຖືກຫຼຸດລົງເປັນ 1 ຫນ້ອຍກ່ວາທ້າຍ coupling
ວົງດົນຕີ. ຖ້າ ອັດຕະໂນມັດ ຖືກນໍາໃຊ້, ແຖບເລີ່ມຕົ້ນຈະຖືກກໍານົດໂດຍຕົວເຂົ້າລະຫັດໂດຍອີງໃສ່
ອັດຕາບິດ, ອັດຕາຕົວຢ່າງ, ແລະຮູບແບບຊ່ອງ. ຕົວເລືອກນີ້ບໍ່ມີຜົນຖ້າຊ່ອງ
ການ​ເຊື່ອມ​ຕໍ່​ແມ່ນ​ພິ​ການ​.

-1
ອັດຕະໂນມັດ
ເລືອກໂດຍຕົວເຂົ້າລະຫັດ (ຄ່າເລີ່ມຕົ້ນ)

flac
ຕົວເຂົ້າລະຫັດ FLAC (Free Lossless Audio Codec)

ທາງເລືອກໃນການ

ຕົວເລືອກຕໍ່ໄປນີ້ແມ່ນຮອງຮັບໂດຍຕົວເຂົ້າລະຫັດ flac ຂອງ FFmpeg.

compression_level
ກໍານົດລະດັບການບີບອັດ, ເຊິ່ງເລືອກຄ່າເລີ່ມຕົ້ນສໍາລັບທາງເລືອກອື່ນຈໍານວນຫຼາຍຖ້າພວກເຂົາແມ່ນ
ບໍ່ໄດ້ກໍານົດຢ່າງຈະແຈ້ງ.

frame_size
ກໍານົດຂະຫນາດຂອງເຟຣມໃນຕົວຢ່າງຕໍ່ຊ່ອງ.

lpc_coeff_precision
ກຳນົດຄ່າສຳປະສິດ LPC, ຄ່າທີ່ຖືກຕ້ອງແມ່ນຕັ້ງແຕ່ 1 ຫາ 15, 15 ແມ່ນຄ່າເລີ່ມຕົ້ນ.

lpc_type
ກໍານົດຂັ້ນຕອນທໍາອິດ LPC algorithm

none
LPC ບໍ່ໄດ້ໃຊ້

ຄົງ
ຄ່າສໍາປະສິດ LPC ຄົງທີ່

ເລວິນສັນ
cholesky
lpc_passes
ຈໍາ​ນວນ​ຂອງ​ການ​ນໍາ​ໃຊ້​ສໍາ​ລັບ​ການ​ປັດ​ໄຈ Cholesky ໃນ​ລະ​ຫວ່າງ​ການ​ວິ​ເຄາະ LPC​

min_partition_order
ຄໍາສັ່ງແບ່ງຂັ້ນຕ່ໍາ

max_partition_order
ຄໍາສັ່ງແບ່ງສ່ວນສູງສຸດ

ການຄາດເດົາ_order_method
ການຄາດຄະເນ
2 ເສັ້ນ
4 ເສັ້ນ
8 ເສັ້ນ
ຄົ້ນຫາ
ຄົ້ນຫາ Bruteforce

log
ch_mode
ໂmodeດຊ່ອງ

ອັດຕະໂນມັດ
ໂໝດຖືກເລືອກໂດຍອັດຕະໂນມັດສຳລັບແຕ່ລະກອບ

ອະນິສົງ
ຊ່ອງແມ່ນລະຫັດເອກະລາດ

ເບື້ອງ​ຊ້າຍ
ເບື້ອງ​ຂວາ
mid_side
exact_rice_parameters
ເລືອກວ່າຕົວກໍານົດການເຂົ້າຖືກຄິດໄລ່ແທ້ ຫຼືປະມານ. ຖ້າຕັ້ງເປັນ 1 ແລ້ວ
ພວກເຂົາຖືກເລືອກຢ່າງແນ່ນອນ, ເຊິ່ງເຮັດໃຫ້ລະຫັດຊ້າລົງເລັກນ້ອຍແລະປັບປຸງການບີບອັດ
ເລັກນ້ອຍ.

multi_dim_quant
ປະລິມານຫຼາຍມິຕິ. ຖ້າຕັ້ງເປັນ 1, ຂັ້ນຕອນທີ 2 LPC algorithm ຖືກນຳໃຊ້
ຫຼັງຈາກຂັ້ນຕອນທໍາອິດເພື່ອປັບຄ່າສໍາປະສິດໃຫ້ລະອຽດ. ນີ້ແມ່ນຂ້ອນຂ້າງຊ້າແລະເລັກນ້ອຍ
ປັບປຸງການບີບອັດ.

libfaac
libfaac AAC (Advanced Audio Coding) wrapper ຕົວເຂົ້າລະຫັດ.

ຮຽກຮ້ອງໃຫ້ມີການມີສ່ວນຫົວຂອງ libfaac ແລະຫ້ອງສະໝຸດໃນລະຫວ່າງການກຳນົດຄ່າ. ທ່ານຕ້ອງການ
ກຳນົດຄ່າການກໍ່ສ້າງດ້ວຍ "--enable-libfaac --enable-nonfree".

ຕົວເຂົ້າລະຫັດນີ້ຖືກພິຈາລະນາວ່າມີຄຸນນະພາບສູງກວ່າກ່ຽວກັບ ໄດ້ native
ທົດລອງ FFmpeg AAC ເຄື່ອງເຂົ້າລະຫັດ.

ສໍາລັບຂໍ້ມູນເພີ່ມເຕີມເບິ່ງໂຄງການ libfaac ທີ່http://www.audiocoding.com/faac.html/>.

ທາງເລືອກໃນການ

ຕົວເລືອກຕົວແປງສັນຍານ FFmpeg ທີ່ແບ່ງປັນຕໍ່ໄປນີ້ຖືກຮັບຮູ້.

ທາງເລືອກຕໍ່ໄປນີ້ແມ່ນສະຫນັບສະຫນູນໂດຍ libfaac wrapper. ໄດ້ faac- ທຽບ​ເທົ່າ​ຂອງ​
ທາງເລືອກແມ່ນລະບຸໄວ້ໃນວົງເລັບ.

b (-b)
ກໍານົດອັດຕາບິດໃນ bits/s ສໍາລັບຮູບແບບ ABR (ອັດຕາບິດສະເລ່ຍ). ຖ້າອັດຕາບິດບໍ່ແມ່ນ
ກໍານົດຢ່າງຈະແຈ້ງ, ມັນຈະຖືກຕັ້ງອັດຕະໂນມັດເປັນຄ່າທີ່ເຫມາະສົມໂດຍອີງຕາມການ
ໂປຣໄຟລ໌ທີ່ເລືອກ. faac ອັດຕາບິດແມ່ນສະແດງອອກເປັນກິໂລບິດ/ວິນາທີ.

ໃຫ້ສັງເກດວ່າ libfaac ບໍ່ສະຫນັບສະຫນູນ CBR (ອັດຕາບິດຄົງທີ່) ແຕ່ພຽງແຕ່ ABR (Average Bit
ອັດຕາ).

ຖ້າເປີດໃຊ້ໂໝດ VBR ຕົວເລືອກນີ້ຈະຖືກລະເລີຍ.

ar (-R)
ຕັ້ງຄ່າອັດຕາການເກັບຕົວຢ່າງສຽງ (ເປັນ Hz).

ac (-c)
ກໍານົດຈໍານວນຊ່ອງສຽງ.

ຕັດ​ອອກ (-C)
ກໍານົດຄວາມຖີ່ຂອງການຕັດ. ຖ້າບໍ່ໄດ້ລະບຸ (ຫຼືກໍານົດຢ່າງຊັດເຈນເປັນ 0) ມັນຈະໃຊ້ຄ່າ
ການ​ຄິດ​ໄລ່​ອັດ​ຕະ​ໂນ​ມັດ​ໂດຍ​ຫ້ອງ​ສະ​ຫມຸດ​. ຄ່າເລີ່ມຕົ້ນແມ່ນ 0.

ຂໍ້​ມູນ
ຕັ້ງໂປຣໄຟລ໌ສຽງ.

ໂປຣໄຟລ໌ຕໍ່ໄປນີ້ຖືກຮັບຮູ້:

aac_main
AAC ຫຼັກ (ຫຼັກ)

aac_low
ຄວາມຊັບຊ້ອນຕ່ຳ AAC (LC)

aac_ssr
ອັດຕາຕົວຢ່າງທີ່ສາມາດຂະຫຍາຍໄດ້ (SSR)

aac_ltp
ການຄາດເດົາໄລຍະຍາວ (LTP)

ຖ້າບໍ່ໄດ້ລະບຸ, ມັນຈະຖືກຕັ້ງເປັນ aac_low.

ທົງ +qscale
ຕັ້ງຄ່າໂຫມດ VBR (ອັດຕາບິດຕົວແປ) ຄຸນະພາບຄົງທີ່.

global_quality
ກໍານົດຄຸນນະພາບໃນໂຫມດ VBR ເປັນຈໍານວນເຕັມຂອງຫນ່ວຍ lambda.

ກ່ຽວຂ້ອງພຽງແຕ່ເມື່ອເປີດໃຊ້ໂໝດ VBR ດ້ວຍ "flags +qscale". ມູນຄ່າຖືກແປງ
ກັບຫນ່ວຍ QP ໂດຍການແບ່ງມັນໂດຍ "FF_QP2LAMBDA", ແລະໃຊ້ເພື່ອກໍານົດມູນຄ່າຄຸນນະພາບທີ່ໃຊ້.
ໂດຍ libfaac. ຂອບເຂດທີ່ສົມເຫດສົມຜົນສໍາລັບຄ່າທາງເລືອກໃນຫນ່ວຍ QP ແມ່ນ [10-500], the
ມູນຄ່າສູງກວ່າຄຸນນະພາບທີ່ສູງຂຶ້ນ.

q (-q)
ເປີດໃຊ້ໂໝດ VBR ເມື່ອຕັ້ງເປັນຄ່າທີ່ບໍ່ແມ່ນຄ່າລົບ, ແລະຕັ້ງຄ່າຄຸນນະພາບຄົງທີ່ເປັນ a
ຄ່າຈຸດລອຍສອງເທົ່າໃນຫນ່ວຍ QP.

ຄ່າກຳນົດຄ່າຄຸນນະພາບທີ່ໃຊ້ໂດຍ libfaac. ຂອບເຂດທີ່ສົມເຫດສົມຜົນສໍາລັບທາງເລືອກ
ມູນ​ຄ່າ​ແມ່ນ [10-500​]​, ຄຸນ​ຄ່າ​ທີ່​ສູງ​ຂຶ້ນ​ຄຸນ​ນະ​ພາບ​ທີ່​ສູງ​ຂຶ້ນ​.

ທາງເລືອກນີ້ແມ່ນຖືກຕ້ອງພຽງແຕ່ການນໍາໃຊ້ ffmpeg ເຄື່ອງມືບັນທັດຄໍາສັ່ງ. ສໍາລັບການໂຕ້ຕອບຫ້ອງສະຫມຸດ
ຜູ້ໃຊ້, ໃຊ້ global_quality.

ຕົວຢ່າງ

· ການ​ນໍາ​ໃຊ້ ffmpeg ການແປງໄຟລ໌ສຽງເປັນ ABR 128 kbps AAC ໃນຖັງ M4A (MP4):

ffmpeg -i input.wav -codec:a libfaac -b:a 128k -output.m4a

· ການ​ນໍາ​ໃຊ້ ffmpeg ເພື່ອປ່ຽນໄຟລ໌ສຽງເປັນ VBR AAC, ໂດຍໃຊ້ໂປຣໄຟລ໌ LTP AAC:

ffmpeg -i input.wav -c:a libfaac -profile:a aac_ltp -q:a 100 output.m4a

libfdk_aac
libfdk-aac AAC (Advanced Audio Coding) wrapper ຕົວເຂົ້າລະຫັດ.

ຫໍສະໝຸດ libfdk-aac ແມ່ນອີງໃສ່ລະຫັດ Fraunhofer FDK AAC ຈາກໂຄງການ Android.

ຮຽກຮ້ອງໃຫ້ມີການມີສ່ວນຫົວຂອງ libfdk-aac ແລະຫ້ອງສະໝຸດໃນລະຫວ່າງການກຳນົດຄ່າ. ເຈົ້າ​ຕ້ອງ​ການ
ເພື່ອກຳນົດຄ່າການກໍ່ສ້າງດ້ວຍ "--enable-libfdk-aac". ຫໍສະຫມຸດແມ່ນ
ບໍ່ເຂົ້າກັນກັບ GPL, ດັ່ງນັ້ນຖ້າທ່ານອະນຸຍາດໃຫ້ໃຊ້ GPL, ທ່ານຄວນຕັ້ງຄ່າດ້ວຍ
"--enable-gpl --enable-nonfree --enable-libfdk-aac".

ຕົວເຂົ້າລະຫັດນີ້ຖືກພິຈາລະນາວ່າມີຄຸນນະພາບສູງກວ່າກ່ຽວກັບທັງສອງ ໄດ້ native
ທົດລອງ FFmpeg AAC ເຄື່ອງເຂົ້າລະຫັດ ແລະ libfaac.

ການເຂົ້າລະຫັດ VBR, ເປີດໃຊ້ຜ່ານ vbr or ທົງ +qscale ທາງເລືອກ, ແມ່ນການທົດລອງແລະພຽງແຕ່
ເຮັດວຽກກັບບາງຕົວກໍານົດການປະສົມ.

ຮອງຮັບການເຂົ້າລະຫັດສຽງ 7.1 ສາມາດໃຊ້ໄດ້ກັບ libfdk-aac 0.1.3 ຫຼືສູງກວ່າເທົ່ານັ້ນ.

ສໍາລັບຂໍ້ມູນເພີ່ມເຕີມເບິ່ງໂຄງການ fdk-aac ທີ່
<http://sourceforge.net/p/opencore-amr/fdk-aac/>.

ທາງເລືອກໃນການ

ທາງ​ເລືອກ​ດັ່ງ​ຕໍ່​ໄປ​ນີ້​ແມ່ນ​ມີ​ແຜນ​ທີ່​ໃນ​ຕົວ​ເລືອກ codec FFmpeg ທີ່​ແບ່ງ​ປັນ​.

b ກໍານົດອັດຕາບິດເປັນ bits/s. ຖ້າອັດຕາບິດບໍ່ໄດ້ຖືກລະບຸຢ່າງຊັດເຈນ, ມັນແມ່ນ
ຕັ້ງຄ່າອັດຕະໂນມັດເປັນຄ່າທີ່ເຫມາະສົມໂດຍຂຶ້ນກັບໂປຣໄຟລ໌ທີ່ເລືອກ.

ໃນ​ກໍ​ລະ​ນີ​ຮູບ​ແບບ VBR ​​ຖືກ​ເປີດ​ໃຊ້​ງານ​ທາງ​ເລືອກ​ທີ່​ຖືກ​ລະ​ເລີຍ​.

ar ຕັ້ງຄ່າອັດຕາການເກັບຕົວຢ່າງສຽງ (ເປັນ Hz).

ຊ່ອງທາງ
ກໍານົດຈໍານວນຊ່ອງສຽງ.

ທົງ +qscale
ເປີດໃຊ້ຄຸນນະພາບຄົງທີ່, ໂໝດ VBR (ອັດຕາບິດຕົວປ່ຽນແປງ). ໃຫ້ສັງເກດວ່າ VBR ແມ່ນ implicitly
ເປີດໃຊ້ເມື່ອ vbr ມູນຄ່າເປັນບວກ.

ຕັດ​ອອກ
ກໍານົດຄວາມຖີ່ຂອງການຕັດ. ຖ້າບໍ່ໄດ້ລະບຸ (ຫຼືກໍານົດຢ່າງຊັດເຈນເປັນ 0) ມັນຈະໃຊ້ຄ່າ
ການ​ຄິດ​ໄລ່​ອັດ​ຕະ​ໂນ​ມັດ​ໂດຍ​ຫ້ອງ​ສະ​ຫມຸດ​. ຄ່າເລີ່ມຕົ້ນແມ່ນ 0.

ຂໍ້​ມູນ
ຕັ້ງໂປຣໄຟລ໌ສຽງ.

ໂປຣໄຟລ໌ຕໍ່ໄປນີ້ຖືກຮັບຮູ້:

aac_low
ຄວາມຊັບຊ້ອນຕ່ຳ AAC (LC)

aac_he
AAC ປະສິດທິພາບສູງ (HE-AAC)

aac_he_v2
ປະສິດທິພາບສູງ AAC ລຸ້ນ 2 (HE-AACv2)

aac_ld
AAC ຄວາມລ່າຊ້າຕໍ່າ (LD)

aac_eld
ປັບປຸງຄວາມລ່າຊ້າຕໍ່າ AAC (ELD)

ຖ້າບໍ່ໄດ້ລະບຸ, ມັນຈະຖືກຕັ້ງເປັນ aac_low.

ຕໍ່ໄປນີ້ແມ່ນທາງເລືອກສ່ວນຕົວຂອງຕົວເຂົ້າລະຫັດ libfdk_aac.

ໄຟໄ້ຫຼັງ
ເປີດໃຊ້ຄຸນສົມບັດ afterburner ຖ້າຕັ້ງເປັນ 1, ປິດໃຊ້ງານຖ້າຕັ້ງເປັນ 0. ນີ້ປັບປຸງການ
ຄຸນ​ນະ​ພາບ​ແຕ່​ຍັງ​ພະ​ລັງ​ງານ​ການ​ປຸງ​ແຕ່ງ​ທີ່​ຕ້ອງ​ການ​.

ຄ່າເລີ່ມຕົ້ນແມ່ນ 1.

eld_sbr
ເປີດໃຊ້ SBR (Spectral Band Replication) ສໍາລັບ ELD ຖ້າຕັ້ງເປັນ 1, ປິດໃຊ້ງານຖ້າຕັ້ງເປັນ 0.

ຄ່າເລີ່ມຕົ້ນແມ່ນ 0.

ສັນຍານ
ຕັ້ງຮູບແບບສັນຍານ SBR/PS.

ມັນ​ສາ​ມາດ​ສົມ​ມຸດ​ວ່າ​ຫນຶ່ງ​ໃນ​ຄຸນ​ຄ່າ​ດັ່ງ​ຕໍ່​ໄປ​ນີ້​:

Default
ເລືອກການສົ່ງສັນຍານໂດຍຫຍໍ້ (ລຳດັບຊັ້ນຢ່າງຈະແຈ້ງໂດຍຄ່າເລີ່ມຕົ້ນ, implicit ຖ້າເປັນທົ່ວໂລກ
ສ່ວນຫົວຖືກປິດໃຊ້ງານ)

implicit
ສັນຍານທີ່ເຂົ້າກັນໄດ້ກັບຫຼັງ implicit

explicit_sbr
SBR ຢ່າງຊັດເຈນ, ສັນຍານ PS implicit

explicit_hierarchical
ສັນຍານລໍາດັບຊັ້ນທີ່ຊັດເຈນ

ຄ່າເລີ່ມຕົ້ນແມ່ນ Default.

ກາມ
Output LATM/LOAS encapsulated data ຖ້າຕັ້ງເປັນ 1, ປິດໃຊ້ງານຖ້າຕັ້ງເປັນ 0.

ຄ່າເລີ່ມຕົ້ນແມ່ນ 0.

header_period
ກໍານົດໄລຍະເວລາການຊໍ້າຄືນ StreamMuxConfig ແລະ PCE (ໃນກອບ) ສໍາລັບການສົ່ງໃນແຖບ
ການຕັ້ງຄ່າ buffers ພາຍໃນຊັ້ນການຂົນສົ່ງ LATM/LOAS.

ຕ້ອງເປັນຈຳນວນເຕັມທີ່ບໍ່ແມ່ນລົບ 16-bits.

ຄ່າເລີ່ມຕົ້ນແມ່ນ 0.

vbr ຕັ້ງໂຫມດ VBR, ຈາກ 1 ຫາ 5. 1 ແມ່ນຄຸນນະພາບຕ່ໍາສຸດ (ເຖິງແມ່ນວ່າຍັງດີ pretty) ແລະ 5 ແມ່ນ.
ຄຸນ​ນະ​ພາບ​ທີ່​ສູງ​ທີ່​ສຸດ​. ຄ່າຂອງ 0 ຈະປິດການໃຊ້ງານ VBR, ແລະ CBR (ອັດຕາບິດຄົງທີ່) ແມ່ນ
enabled

ໃນປັດຈຸບັນມີພຽງແຕ່ aac_low ໂປຣໄຟລ໌ຮອງຮັບການເຂົ້າລະຫັດ VBR.

ໂຫມດ VBR 1-5 ກົງກັບອັດຕາບິດສະເລ່ຍຕໍ່ໄປນີ້:

1 32 kbps/ຊ່ອງ

2 40 kbps/ຊ່ອງ

3 48-56 kbps/ຊ່ອງ

4 64 kbps/ຊ່ອງ

5 ປະມານ 80-96 kbps/ຊ່ອງ

ຄ່າເລີ່ມຕົ້ນແມ່ນ 0.

ຕົວຢ່າງ

· ການ​ນໍາ​ໃຊ້ ffmpeg ການ​ປ່ຽນ​ໄຟລ​໌​ສຽງ​ເປັນ VBR AAC ໃນ M4A (MP4​) container​:

ffmpeg -i input.wav -codec:a libfdk_aac -vbr 3 output.m4a

· ການ​ນໍາ​ໃຊ້ ffmpeg ເພື່ອປ່ຽນໄຟລ໌ສຽງເປັນ CBR 64k kbps AAC, ໂດຍໃຊ້ AAC ທີ່ມີປະສິດທິພາບສູງ
ຂໍ້ມູນ:

ffmpeg -i input.wav -c:a libfdk_aac -profile:a aac_he -b:a 64k output.m4a

libmp3lame
LAME (Lame ບໍ່ແມ່ນຕົວເຂົ້າລະຫັດ MP3) ຫໍ່ຕົວເຂົ້າລະຫັດ MP3.

ຮຽກຮ້ອງໃຫ້ມີການມີສ່ວນຫົວຂອງ libmp3lame ແລະຫ້ອງສະໝຸດໃນລະຫວ່າງການກຳນົດຄ່າ. ເຈົ້າ​ຕ້ອງ​ການ
ເພື່ອກຳນົດຄ່າການກໍ່ສ້າງດ້ວຍ "--enable-libmp3lame".

ເບິ່ງ libshine ສໍາລັບຕົວເຂົ້າລະຫັດ MP3 ຄົງທີ່, ເຖິງແມ່ນວ່າມີຄຸນນະພາບຕ່ໍາ.

ທາງເລືອກໃນການ

ທາງເລືອກຕໍ່ໄປນີ້ແມ່ນສະຫນັບສະຫນູນໂດຍ libmp3lame wrapper. ໄດ້ ແຜ່ນໃບຄ້າຍຄື- ທຽບ​ເທົ່າ​ຂອງ​
ທາງເລືອກແມ່ນລະບຸໄວ້ໃນວົງເລັບ.

b (-b)
ກໍານົດອັດຕາບິດທີ່ສະແດງອອກໃນ bits/s ສໍາລັບ CBR ຫຼື ABR. LAME "ອັດຕາບິດ" ສະແດງອອກໃນ
ກິໂລບິດ/ວິ.

q (-V)
ຕັ້ງຄ່າຄຸນນະພາບຄົງທີ່ສໍາລັບ VBR. ທາງເລືອກນີ້ແມ່ນຖືກຕ້ອງພຽງແຕ່ການນໍາໃຊ້ ffmpeg
ເຄື່ອງມືບັນທັດຄໍາສັ່ງ. ສໍາລັບຜູ້ໃຊ້ໃນການໂຕ້ຕອບຫ້ອງສະຫມຸດ, ໃຊ້ global_quality.

compression_level (-q)
ຕັ້ງຄ່າຄຸນນະພາບຂອງສູດການຄິດໄລ່. ອາກິວເມັນທີ່ຖືກຕ້ອງແມ່ນຈຳນວນເຕັມໃນຂອບເຂດ 0-9, ມີຄວາມໝາຍ 0
ຄຸນະພາບສູງສຸດແຕ່ຊ້າທີ່ສຸດ, ແລະ 9 ຫມາຍຄວາມວ່າໄວທີ່ສຸດໃນຂະນະທີ່ການຜະລິດຄຸນນະພາບທີ່ບໍ່ດີທີ່ສຸດ.

ອ່າງເກັບນ
ເປີດການນຳໃຊ້ອ່າງເກັບນ້ຳນ້ອຍເມື່ອຕັ້ງເປັນ 1. ຄ່າເລີ່ມຕົ້ນແມ່ນ 1. LAME ໄດ້ເປີດໃຊ້ອັນນີ້ແລ້ວ.
ໂດຍຄ່າເລີ່ມຕົ້ນ, ແຕ່ສາມາດ overridden ໂດຍການນໍາໃຊ້ --nores ທາງເລືອກ.

joint_stereo (-m j)
ເປີດໃຊ້ຕົວເຂົ້າລະຫັດເພື່ອໃຊ້ (ໃນກອບໂດຍກອບ) ບໍ່ວ່າຈະເປັນ L/R stereo ຫຼື mid/side
stereo. ຄ່າເລີ່ມຕົ້ນແມ່ນ 1.

ເມສາ (--abr)
ເປີດໃຊ້ຕົວເຂົ້າລະຫັດເພື່ອໃຊ້ ABR ເມື່ອຕັ້ງເປັນ 1. The ແຜ່ນໃບຄ້າຍຄື --abr ກໍາ​ນົດ​ອັດ​ຕາ​ບິດ​ເປົ້າ​ຫມາຍ​,
ໃນຂະນະທີ່ທາງເລືອກນີ້ພຽງແຕ່ບອກ FFmpeg ໃຫ້ໃຊ້ ABR ຍັງອີງໃສ່ b ເພື່ອກໍານົດອັດຕາບິດ.

libopencore-amrnb
OpenCORE Adaptive Multi-Rate Narrowband encoder.

ຮຽກຮ້ອງໃຫ້ມີການມີສ່ວນຫົວຂອງ libopencore-amrnb ແລະຫ້ອງສະໝຸດໃນລະຫວ່າງການກຳນົດຄ່າ.
ທ່ານຈໍາເປັນຕ້ອງກໍານົດຢ່າງຈະແຈ້ງການກໍ່ສ້າງດ້ວຍ "--enable-libopencore-amrnb
--enable-version3".

ນີ້ແມ່ນຕົວເຂົ້າລະຫັດແບບໂມໂນເທົ່ານັ້ນ. ຢ່າງເປັນທາງການມັນພຽງແຕ່ສະຫນັບສະຫນູນອັດຕາຕົວຢ່າງ 8000Hz, ແຕ່ທ່ານສາມາດເຮັດໄດ້
override ມັນໂດຍການຕັ້ງຄ່າ ຢ່າງເຄັ່ງຄັດ to unofficial ຫຼືຕ່ໍາກວ່າ.

ທາງເລືອກໃນການ

b ກໍານົດອັດຕາບິດເປັນບິດຕໍ່ວິນາທີ. ພຽງແຕ່ອັດຕາບິດຕໍ່ໄປນີ້ໄດ້ຮັບການສະຫນັບສະຫນູນ, ຖ້າບໍ່ດັ່ງນັ້ນ
libavcodec ຈະຫັນໄປຫາອັດຕາບິດທີ່ຖືກຕ້ອງທີ່ໃກ້ທີ່ສຸດ.

4750
5150
5900
6700
7400
7950
10200
12200
dtx ອະ​ນຸ​ຍາດ​ໃຫ້​ການ​ສົ່ງ​ບໍ່​ຕໍ່​ເນື່ອງ (ສ້າງ​ສຽງ​ສະ​ດວກ​ສະ​ບາຍ​) ໃນ​ເວ​ລາ​ທີ່​ຕັ້ງ​ເປັນ 1. ຄ່າ​ເລີ່ມ​ຕົ້ນ​
ຄ່າແມ່ນ 0 (ປິດໃຊ້ງານ).

libshine
ຜ້າຫໍ່ຕົວເຂົ້າລະຫັດ MP3 Shine Fixed-Point.

Shine ເປັນຕົວເຂົ້າລະຫັດ MP3 ຄົງທີ່. ມັນມີການປະຕິບັດທີ່ດີກວ່າໃນເວທີທີ່ບໍ່ມີ
FPU, ເຊັ່ນ CPUs armel, ແລະບາງໂທລະສັບແລະແທັບເລັດ. ຢ່າງໃດກໍຕາມ, ຍ້ອນວ່າມັນຖືກເປົ້າຫມາຍຫຼາຍຂຶ້ນ
ປະສິດທິພາບຫຼາຍກ່ວາຄຸນນະພາບ, ມັນບໍ່ໄດ້ທຽບເທົ່າກັບ LAME ແລະຕົວເຂົ້າລະຫັດການຜະລິດລະດັບອື່ນໆ
ຄຸນນະພາບ. ນອກຈາກນັ້ນ, ອີງຕາມຫນ້າທໍາອິດຂອງໂຄງການ, ຕົວເຂົ້າລະຫັດນີ້ອາດຈະບໍ່ບໍ່ເສຍຄ່າ
ແມງໄມ້ຍ້ອນວ່າລະຫັດໄດ້ຖືກຂຽນໄວ້ດົນນານມາແລ້ວແລະໂຄງການໄດ້ເສຍຊີວິດຢ່າງຫນ້ອຍ 5
ປີ.

ຕົວເຂົ້າລະຫັດນີ້ຮອງຮັບການປ້ອນຂໍ້ມູນແບບສະເຕຣິໂອ ແລະໂມໂນເທົ່ານັ້ນ. ອັນນີ້ຍັງເປັນ CBR ເທົ່ານັ້ນ.

ໂຄງການຕົ້ນສະບັບ (ການປັບປຸງຫຼ້າສຸດໃນຕົ້ນປີ 2007) ຢູ່ທີ່
<http://sourceforge.net/projects/libshine-fxp/>. ພວກເຮົາພຽງແຕ່ສະຫນັບສະຫນູນ fork ປັບປຸງໂດຍ
ໂຄງການ Savonet/Liquidsoap ທີ່https://github.com/savonet/shine>.

ຮຽກຮ້ອງໃຫ້ມີການມີສ່ວນຫົວຂອງ libshine ແລະຫ້ອງສະໝຸດໃນລະຫວ່າງການຕັ້ງຄ່າ. ເຈົ້າ​ຕ້ອງ​ການ
ເພື່ອກໍານົດຢ່າງຈະແຈ້ງການກໍ່ສ້າງດ້ວຍ "--enable-libshine".

ເບິ່ງ libmp3lame.

ທາງເລືອກໃນການ

ທາງເລືອກຕໍ່ໄປນີ້ແມ່ນສະຫນັບສະຫນູນໂດຍ libshine wrapper. ໄດ້ ສ່ອງແສງ- ທຽບ​ເທົ່າ​ຂອງ​
ທາງ​ເລືອກ​ແມ່ນ​ໄດ້​ລະ​ບຸ​ໄວ້​ໃນ​ວົງ​ເລັບ​.

b (-b)
ກໍານົດອັດຕາບິດທີ່ສະແດງອອກເປັນ bits/s ສໍາລັບ CBR. ສ່ອງແສງ -b ທາງເລືອກແມ່ນສະແດງອອກໃນ
ກິໂລບິດ/ວິ.

libtwolame
ຫໍ່ຕົວເຂົ້າລະຫັດ TwoLAME MP2.

ຮຽກຮ້ອງໃຫ້ມີການມີສ່ວນຫົວຂອງ libtwolame ແລະຫ້ອງສະໝຸດໃນລະຫວ່າງການກຳນົດຄ່າ. ເຈົ້າ​ຕ້ອງ​ການ
ເພື່ອກຳນົດຄ່າການກໍ່ສ້າງດ້ວຍ "--enable-libtwolame".

ທາງເລືອກໃນການ

ທາງເລືອກຕໍ່ໄປນີ້ແມ່ນສະຫນັບສະຫນູນໂດຍ libtwolame wrapper. ໄດ້ ຄູ່ແameດ- ທຽບ​ເທົ່າ​
ຕົວເລືອກປະຕິບັດຕາມ FFmpeg ແລະຢູ່ໃນວົງເລັບ.

b (-b)
ກໍານົດອັດຕາບິດທີ່ສະແດງອອກເປັນ bits/s ສໍາລັບ CBR. ຄູ່ແameດ b ທາງເລືອກແມ່ນສະແດງອອກເປັນກິໂລບິດ / ວິນາທີ.
ຄ່າເລີ່ມຕົ້ນແມ່ນ 128k.

q (-V)
ກໍານົດຄຸນນະພາບສໍາລັບການສະຫນັບສະຫນູນ VBR ທົດລອງ. ຊ່ວງຄ່າສູງສຸດແມ່ນຕັ້ງແຕ່ -50 ຫາ 50,
ຂອບເຂດທີ່ເປັນປະໂຫຍດແມ່ນຕັ້ງແຕ່ -10 ຫາ 10. ມູນຄ່າທີ່ສູງຂຶ້ນ, ຄຸນນະພາບທີ່ດີກວ່າ. ນີ້
ທາງເລືອກແມ່ນຖືກຕ້ອງພຽງແຕ່ການນໍາໃຊ້ ffmpeg ເຄື່ອງມືບັນທັດຄໍາສັ່ງ. ສໍາລັບຜູ້ໃຊ້ໃນການໂຕ້ຕອບຫ້ອງສະຫມຸດ,
ການນໍາໃຊ້ global_quality.

ຮູບແບບການ (--ໂໝດ)
ກໍານົດຮູບແບບຂອງສຽງຜົນໄດ້ຮັບ. ຄ່າທີ່ເປັນໄປໄດ້:

ອັດຕະໂນມັດ
ເລືອກໂໝດອັດຕະໂນມັດໂດຍອີງໃສ່ການປ້ອນຂໍ້ມູນ. ນີ້ແມ່ນຄ່າເລີ່ມຕົ້ນ.

stereo
ສະເຕີລິໂອ

joint_stereo
ສະເຕຣິໂອຮ່ວມ

dual_channel
ຊ່ອງຄູ່

mono
Monkey

ຕົວແບບທາງຈິດ (--psyc-mode)
ຕັ້ງຮູບແບບ psychoacoustic ເພື່ອໃຊ້ໃນການເຂົ້າລະຫັດ. ການໂຕ້ຖຽງຈະຕ້ອງເປັນຈຳນວນເຕັມລະຫວ່າງ
-1 ແລະ 4, ລວມ. ມູນຄ່າສູງກວ່າ, ຄຸນນະພາບທີ່ດີກວ່າ. ຄ່າເລີ່ມຕົ້ນ
ແມ່ນ 3.

ລະດັບພະລັງງານ (-- ພະ​ລັງ​ງານ)
ເປີດໃຊ້ການຂະຫຍາຍລະດັບພະລັງງານເມື່ອຕັ້ງເປັນ 1. ຄ່າເລີ່ມຕົ້ນແມ່ນ 0 (ປິດໃຊ້ງານ).

error_protection (-- ປົກປ້ອງ)
ເປີດໃຊ້ການປ້ອງກັນຂໍ້ຜິດພາດ CRC ເມື່ອຕັ້ງເປັນ 1. ຄ່າເລີ່ມຕົ້ນແມ່ນ 0 (ປິດໃຊ້ງານ).

ລິຂະສິດ (--ລິຂະສິດ)
ຕັ້ງທຸງລິຂະສິດສຽງ MPEG ເມື່ອຕັ້ງເປັນ 1. ຄ່າເລີ່ມຕົ້ນແມ່ນ 0 (ປິດໃຊ້ງານ).

ຕົ້ນສະບັບ (--ຕົ້ນສະບັບ)
ຕັ້ງທຸງຕົ້ນສະບັບສຽງ MPEG ເມື່ອຕັ້ງເປັນ 1. ຄ່າເລີ່ມຕົ້ນແມ່ນ 0 (ປິດໃຊ້ງານ).

libvo-aacenc
ຕົວເຂົ້າລະຫັດ VisualOn AAC.

ຮຽກຮ້ອງໃຫ້ມີການມີສ່ວນຫົວຂອງ libvo-aacenc ແລະຫ້ອງສະໝຸດໃນລະຫວ່າງການກຳນົດຄ່າ. ເຈົ້າ
ຈໍາເປັນຕ້ອງໄດ້ກໍາຫນົດຄ່າການກໍ່ສ້າງຢ່າງຈະແຈ້ງດ້ວຍ "--enable-libvo-aacenc --enable-version3".

ຕົວເຂົ້າລະຫັດນີ້ຖືວ່າຮ້າຍແຮງກວ່າ native ທົດລອງ FFmpeg AAC ເຄື່ອງເຂົ້າລະຫັດ,
ອີງຕາມຫຼາຍແຫຼ່ງ.

ທາງເລືອກໃນການ

ຕົວເຂົ້າລະຫັດ VisualOn AAC ຮອງຮັບພຽງແຕ່ການເຂົ້າລະຫັດ AAC-LC ແລະສູງສຸດ 2 ຊ່ອງ. ມັນຍັງເປັນ
CBR ເທົ່ານັ້ນ.

b ກໍານົດອັດຕາບິດເປັນ bits/s.

libvo-amrwbenc
VisualOn Adaptive Multi-Rate Wideband encoder.

ຮຽກຮ້ອງໃຫ້ມີການມີສ່ວນຫົວຂອງ libvo-amrwbenc ແລະຫ້ອງສະໝຸດໃນລະຫວ່າງການຕັ້ງຄ່າ. ເຈົ້າ
ຈໍາເປັນຕ້ອງໄດ້ກໍາຫນົດຄ່າການກໍ່ສ້າງຢ່າງຊັດເຈນດ້ວຍ "--enable-libvo-amrwbenc --enable-version3".

ນີ້ແມ່ນຕົວເຂົ້າລະຫັດແບບໂມໂນເທົ່ານັ້ນ. ຢ່າງເປັນທາງການມັນພຽງແຕ່ສະຫນັບສະຫນູນອັດຕາຕົວຢ່າງ 16000Hz, ແຕ່ທ່ານສາມາດເຮັດໄດ້
override ມັນໂດຍການຕັ້ງຄ່າ ຢ່າງເຄັ່ງຄັດ to unofficial ຫຼືຕ່ໍາກວ່າ.

ທາງເລືອກໃນການ

b ກໍານົດອັດຕາບິດເປັນ bits/s. ຮອງຮັບພຽງແຕ່ອັດຕາບິດຕໍ່ໄປນີ້ເທົ່ານັ້ນ, ຖ້າບໍ່ດັ່ງນັ້ນ libavcodec
ຈະຫັນໄປຫາອັດຕາບິດທີ່ຖືກຕ້ອງທີ່ໃກ້ທີ່ສຸດ.

6600
8850
12650
14250
15850
18250
19850
23050
23850
dtx ອະ​ນຸ​ຍາດ​ໃຫ້​ການ​ສົ່ງ​ບໍ່​ຕໍ່​ເນື່ອງ (ສ້າງ​ສຽງ​ສະ​ດວກ​ສະ​ບາຍ​) ໃນ​ເວ​ລາ​ທີ່​ຕັ້ງ​ເປັນ 1. ຄ່າ​ເລີ່ມ​ຕົ້ນ​
ຄ່າແມ່ນ 0 (ປິດໃຊ້ງານ).

libopus
libopus Opus Interactive Audio Codec wrapper ຕົວເຂົ້າລະຫັດ.

ຮຽກຮ້ອງໃຫ້ມີການມີສ່ວນຫົວຂອງ libopus ແລະຫ້ອງສະຫມຸດໃນລະຫວ່າງການຕັ້ງຄ່າ. ທ່ານຕ້ອງການ
ກຳນົດຄ່າການກໍ່ສ້າງດ້ວຍ "--enable-libopus".

ທາງເລືອກ ການເຮັດແຜນທີ່

ທາງເລືອກຂອງ libopus ສ່ວນໃຫຍ່ແມ່ນຖືກສ້າງແບບຈໍາລອງຫຼັງຈາກ opusenc ຜົນປະໂຫຍດຈາກ opus-tools. ຕໍ່ໄປນີ້
ແມ່ນຕາຕະລາງແຜນທີ່ທາງເລືອກທີ່ອະທິບາຍທາງເລືອກທີ່ສະຫນັບສະຫນູນໂດຍ libopus wrapper, ແລະຂອງພວກເຂົາ
opusenc- ທຽບ​ເທົ່າ​ໃນ​ວົງ​ເລັບ​.

b (ອັດຕາບິດ)
ກໍານົດອັດຕາບິດເປັນ bits/s. FFmpeg ຂອງ b ທາງເລືອກແມ່ນສະແດງອອກໃນ bits / s, ໃນຂະນະທີ່ opusenc's
ອັດຕາບິດ ໃນ kilobits/s.

vbr (vbr, ຍາກ-cbr, ແລະ cvbr)
ຕັ້ງໂໝດ VBR. FFmpeg vbr ທາງ​ເລືອກ​ທີ່​ມີ​ການ​ໂຕ້​ຖຽງ​ທີ່​ຖືກ​ຕ້ອງ​ດັ່ງ​ຕໍ່​ໄປ​ນີ້​, ມີ​ຂອງ​ເຂົາ​ເຈົ້າ​
opusenc ຕົວເລືອກທຽບເທົ່າໃນວົງເລັບ:

ໄປ (ຍາກ-cbr)
ໃຊ້ການເຂົ້າລະຫັດອັດຕາບິດຄົງທີ່.

on (vbr)
ໃຊ້ການເຂົ້າລະຫັດອັດຕາບິດຕົວແປ (ຄ່າເລີ່ມຕົ້ນ).

ຈຳ ກັດ (cvbr)
ໃຊ້ການເຂົ້າລະຫັດອັດຕາບິດຕົວແປທີ່ຈຳກັດ.

compression_level (comp)
ກໍານົດຄວາມຊັບຊ້ອນລະບົບການເຂົ້າລະຫັດ. ຕົວເລືອກທີ່ຖືກຕ້ອງແມ່ນຈຳນວນເຕັມໃນຂອບເຂດ 0-10. 0
ເຮັດໃຫ້ການເຂົ້າລະຫັດໄວທີ່ສຸດແຕ່ມີຄຸນນະພາບຕ່ໍາ, ໃນຂະນະທີ່ 10 ໃຫ້ຄຸນນະພາບສູງສຸດແຕ່
ການເຂົ້າລະຫັດຊ້າທີ່ສຸດ. ຄ່າເລີ່ມຕົ້ນແມ່ນ 10.

frame_ໄລຍະເວລາ (ຂອບຂະໜາດ)
ກໍານົດຂະຫນາດເຟຣມສູງສຸດ, ຫຼືໄລຍະເວລາຂອງກອບເປັນ milliseconds. ການໂຕ້ຖຽງຕ້ອງເປັນ
ດັ່ງຕໍ່ໄປນີ້: 2.5, 5, 10, 20, 40, 60. ຂະຫນາດກອບຂະຫນາດນ້ອຍບັນລຸຕ່ໍາກວ່າ.
latency ແຕ່ມີຄຸນນະພາບໜ້ອຍລົງໃນອັດຕາບິດທີ່ກຳນົດ. ຂະໜາດໃຫຍ່ກວ່າ 20ms ເທົ່ານັ້ນ
ຫນ້າສົນໃຈໃນອັດຕາບິດຕ່ໍາພໍສົມຄວນ. ຄ່າເລີ່ມຕົ້ນແມ່ນ 20ms.

packet_loss (ຄາດ​ວ່າ​ຈະ​ສູນ​ເສຍ​)
ກໍານົດອັດຕາສ່ວນການສູນເສຍແພັກເກັດທີ່ຄາດໄວ້. ຄ່າເລີ່ມຕົ້ນແມ່ນ 0.

ຄໍາຮ້ອງສະຫມັກ (NA)
ກໍານົດປະເພດຄໍາຮ້ອງສະຫມັກທີ່ມີຈຸດປະສົງ. ທາງເລືອກທີ່ຖືກຕ້ອງແມ່ນລະບຸໄວ້ຂ້າງລຸ່ມນີ້:

voip
ປັບປຸງຄວາມສະຫຼາດໃນການເວົ້າ.

ສຽງ
ຄວາມສັດຊື່ຕໍ່ວັດສະດຸປ້ອນ (ຄ່າເລີ່ມຕົ້ນ).

ການຊັກຊ້າ
ຈຳກັດໃຫ້ສະເພາະໂໝດລ່າຊ້າສຸດເທົ່ານັ້ນ.

ຕັດ​ອອກ (NA)
ກໍານົດ cutoff bandwidth ເປັນ Hz. ການໂຕ້ຖຽງຕ້ອງເປັນອັນໜຶ່ງອັນດຽວຕໍ່ໄປນີ້: 4000,
6000, 8000, 12000, ຫຼື 20000, ສອດຄ້ອງກັບແຖບແຄບ, ແຖບກາງ, ກວ້າງ, ຊຸບເປີ
wideband, ແລະ fullband ຕາມລໍາດັບ. ຄ່າເລີ່ມຕົ້ນແມ່ນ 0 (ປິດການໃຊ້ງານ).

libvorbis
libvorbis encoder wrapper.

ຮຽກຮ້ອງໃຫ້ມີການປະກົດຕົວຂອງສ່ວນຫົວຂອງ libvorbisenc ແລະຫ້ອງສະໝຸດໃນລະຫວ່າງການຕັ້ງຄ່າ. ເຈົ້າ
ຈໍາເປັນຕ້ອງໄດ້ກໍານົດຢ່າງຈະແຈ້ງການກໍ່ສ້າງດ້ວຍ "--enable-libvorbis".

ທາງເລືອກໃນການ

ຕົວເລືອກຕໍ່ໄປນີ້ແມ່ນສະຫນັບສະຫນູນໂດຍ libvorbis wrapper. ໄດ້ oggenc- ທຽບ​ເທົ່າ​ຂອງ​
ທາງເລືອກແມ່ນລະບຸໄວ້ໃນວົງເລັບ.

ເພື່ອໃຫ້ໄດ້ຮັບເອກະສານທີ່ຖືກຕ້ອງແລະກວ້າງຂວາງຂອງທາງເລືອກ libvorbis, ໃຫ້ປຶກສາ
libvorbisenc ແລະ oggencເອ​ກະ​ສານ​ຂອງ​. ເບິ່ງhttp://xiph.org/vorbis/>,
<http://wiki.xiph.org/Vorbis-tools> , ແລະ oggenc(1).

b (-b)
ກໍານົດອັດຕາບິດທີ່ສະແດງອອກໃນ bits/s ສໍາລັບ ABR. oggenc -b ສະແດງອອກເປັນກິໂລບິດ/ວິນາທີ.

q (-q)
ຕັ້ງຄ່າຄຸນນະພາບຄົງທີ່ສໍາລັບ VBR. ຄ່າຄວນເປັນຕົວເລກທີ່ລອຍຢູ່ໃນຂອບເຂດ
ຈາກ -1.0 ຫາ 10.0. ມູນຄ່າສູງກວ່າ, ຄຸນນະພາບທີ່ດີກວ່າ. ຄ່າເລີ່ມຕົ້ນແມ່ນ
3.0.

ທາງເລືອກນີ້ແມ່ນຖືກຕ້ອງພຽງແຕ່ການນໍາໃຊ້ ffmpeg ເຄື່ອງມືບັນທັດຄໍາສັ່ງ. ສໍາລັບການໂຕ້ຕອບຫ້ອງສະຫມຸດ
ຜູ້ໃຊ້, ໃຊ້ global_quality.

ຕັດ​ອອກ (--advanced-encode-option lowpass_frequency=N)
ຕັ້ງຄ່າ cutoff bandwidth ເປັນ Hz, ຄ່າຂອງ 0 ປິດການໃຊ້ງານ cutoff. oggencທາງເລືອກທີ່ກ່ຽວຂ້ອງແມ່ນ
ສະແດງອອກໃນ kHz. ຄ່າເລີ່ມຕົ້ນແມ່ນ 0 (ປິດການໃຊ້ງານ).

ຕໍ່າສຸດ (-m)
ກໍານົດອັດຕາບິດຕໍາ່ສຸດທີ່ສະແດງອອກເປັນ bits/s. oggenc -m ສະແດງອອກເປັນກິໂລບິດ/ວິນາທີ.

ສູງສຸດ (-M)
ກໍານົດອັດຕາບິດສູງສຸດທີ່ສະແດງອອກເປັນ bits/s. oggenc -M ສະແດງອອກເປັນກິໂລບິດ/ວິນາທີ. ນີ້
ພຽງແຕ່ມີຜົນກະທົບໃນໂຫມດ ABR.

iblock (--advanced-encode-option impulse_noisetune=ນ)
ກໍານົດຄວາມລໍາອຽງຂອງພື້ນເຮືອນສິ່ງລົບກວນສໍາລັບຕັນ impulse. ຄ່າແມ່ນຕົວເລກລອຍຈາກ -15.0 ຫາ
0.0. ຄວາມລຳອຽງທາງລົບແນະນຳຕົວເຂົ້າລະຫັດໃຫ້ເອົາໃຈໃສ່ເປັນພິເສດຕໍ່ຄວາມຄົມຊັດ
ຂອງ transients ໃນສຽງທີ່ເຂົ້າລະຫັດ. ການແລກປ່ຽນສໍາລັບການຕອບສະຫນອງຊົ່ວຄາວທີ່ດີກວ່າແມ່ນ a
ອັດຕາບິດທີ່ສູງຂຶ້ນ.

libwavpack
wrapper ສະຫນອງການເຂົ້າລະຫັດ WavPack ຜ່ານ libwavpack.

ປະຈຸບັນນີ້ຮອງຮັບພຽງແຕ່ໂໝດ lossless ທີ່ໃຊ້ຕົວຢ່າງຈຳນວນ 32-bit ເທົ່ານັ້ນ.

ຮຽກຮ້ອງໃຫ້ມີການມີສ່ວນຫົວຂອງ libwavpack ແລະຫ້ອງສະໝຸດໃນລະຫວ່າງການຕັ້ງຄ່າ. ເຈົ້າ​ຕ້ອງ​ການ
ເພື່ອກໍານົດຢ່າງຈະແຈ້ງການກໍ່ສ້າງດ້ວຍ "--enable-libwavpack".

ໃຫ້ສັງເກດວ່າມີຕົວເຂົ້າລະຫັດ libavcodec-native ສໍາລັບ WavPack codec ມີຢູ່ເພື່ອໃຫ້ຜູ້ໃຊ້ສາມາດເຂົ້າລະຫັດໄດ້.
ສຽງທີ່ມີຕົວແປງສັນຍານນີ້ໂດຍບໍ່ຕ້ອງໃຊ້ຕົວເຂົ້າລະຫັດນີ້. ເບິ່ງ wavpackenc.

ທາງເລືອກໃນການ

wavpack ຕົວເລືອກທີ່ສອດຄ້ອງກັນຂອງ utility line ຄໍາສັ່ງແມ່ນລະບຸໄວ້ໃນວົງເລັບ, ຖ້າມີ.

frame_size (--blocksize)
ຄ່າເລີ່ມຕົ້ນແມ່ນ 32768.

compression_level
ກໍານົດຄວາມໄວທຽບກັບການແລກປ່ຽນການບີບອັດ. ການໂຕ້ຖຽງທີ່ຍອມຮັບໄດ້ມີລາຍຊື່ຂ້າງລຸ່ມນີ້:

0 (-f)
ໂໝດໄວ.

1 ການຕັ້ງຄ່າປົກກະຕິ (ຄ່າເລີ່ມຕົ້ນ).

2 (-h)
ຄຸນ​ນະ​ພາບ​ສູງ.

3 (-ຊົວ)
ມີຄຸນນະພາບສູງຫຼາຍ.

4​-8 (-ຊົວ -xEXTRAPROC)
ຄື​ກັນ​ກັບ 3, ແຕ່ມີການປະມວນຜົນພິເສດເປີດໃຫ້ໃຊ້ງານ.

4 ແມ່ນຄືກັນກັບ -x2 ແລະ 8 ແມ່ນຄືກັນກັບ -x6.

wavpack
WavPack ຕົວເຂົ້າລະຫັດສຽງທີ່ບໍ່ມີການສູນເສຍ.

ນີ້ແມ່ນຕົວເຂົ້າລະຫັດ libavcodec-native WavPack. ນອກນັ້ນຍັງມີຕົວເຂົ້າລະຫັດໂດຍອີງໃສ່ libwavpack,
ແຕ່ບໍ່ມີເຫດຜົນແທ້ໆທີ່ຈະໃຊ້ຕົວເຂົ້າລະຫັດນັ້ນ.

ເບິ່ງ libwavpack.

ທາງເລືອກໃນການ

ທາງເລືອກທີ່ທຽບເທົ່າສໍາລັບ wavpack ຜົນປະໂຫຍດຂອງເສັ້ນຄໍາສັ່ງຖືກລະບຸໄວ້ໃນວົງເລັບ.

ທາງເລືອກທີ່ແບ່ງປັນ

ທາງເລືອກທີ່ແບ່ງປັນຕໍ່ໄປນີ້ແມ່ນມີປະສິດທິພາບສໍາລັບຕົວເຂົ້າລະຫັດນີ້. ພຽງແຕ່ບັນທຶກພິເສດກ່ຽວກັບເລື່ອງນີ້
ຕົວເຂົ້າລະຫັດສະເພາະຈະຖືກບັນທຶກຢູ່ທີ່ນີ້. ສໍາລັບຄວາມຫມາຍທົ່ວໄປຂອງທາງເລືອກ, ເບິ່ງ
ໄດ້ ຕົວແປງສັນຍານ ທາງເລືອກໃນການ ພາກ.

frame_size (--blocksize)
ສໍາລັບຕົວເຂົ້າລະຫັດນີ້, ໄລຍະສໍາລັບຕົວເລືອກນີ້ແມ່ນລະຫວ່າງ 128 ແລະ 131072. ຄ່າເລີ່ມຕົ້ນແມ່ນ
ການຕັດສິນໃຈອັດຕະໂນມັດໂດຍອີງໃສ່ອັດຕາຕົວຢ່າງແລະຈໍານວນຊ່ອງ.

ສໍາລັບສູດເຕັມຂອງການຄິດໄລ່ຄ່າເລີ່ມຕົ້ນ, ເບິ່ງ libavcodec/wavpackenc.c.

compression_level (-f, -h, -ຊົວ, ແລະ -x)
syntax ຂອງຕົວເລືອກນີ້ແມ່ນສອດຄ່ອງກັບ libwavpack's.

ທາງເລືອກສ່ວນຕົວ

joint_stereo (-j)
ກຳນົດວ່າຈະເປີດໃຊ້ງານສະເຕຣິໂອຮ່ວມຫຼືບໍ່. ຄ່າທີ່ຖືກຕ້ອງແມ່ນ:

on (1)
ບັງຄັບການເຂົ້າລະຫັດສຽງກາງ/ຂ້າງ.

ໄປ (0)
ບັງຄັບການເຂົ້າລະຫັດສຽງຊ້າຍ/ຂວາ.

ອັດຕະໂນມັດ
ໃຫ້ຕົວເຂົ້າລະຫັດຕັດສິນໃຈອັດຕະໂນມັດ.

optimize_mono
ຕັ້ງຄ່າວ່າຈະເປີດໃຊ້ການເພີ່ມປະສິດທິພາບສໍາລັບ mono. ທາງເລືອກນີ້ແມ່ນມີຜົນພຽງແຕ່ສໍາລັບການທີ່ບໍ່ແມ່ນ.
mono streams. ຄ່າທີ່ສາມາດໃຊ້ໄດ້:

on ເປີດໃຫ້ໃຊ້ງານ

ໄປ disabled

VIDEO ເຂົ້າລະຫັດ


ລາຍລະອຽດຂອງບາງຕົວເຂົ້າລະຫັດວິດີໂອທີ່ມີຢູ່ໃນປັດຈຸບັນຕໍ່ໄປນີ້.

jpeg2000
ຕົວເຂົ້າລະຫັດ jpeg 2000 ເດີມແມ່ນສູນເສຍໂດຍຄ່າເລີ່ມຕົ້ນ, ທາງເລືອກ "-q:v" ສາມາດໃຊ້ເພື່ອຕັ້ງຄ່າ.
ຄຸນະພາບການເຂົ້າລະຫັດ. ການເຂົ້າລະຫັດທີ່ບໍ່ມີການສູນເສຍສາມາດເລືອກດ້ວຍ "-pred 1".

ທາງເລືອກໃນການ

ຮູບແບບ
ສາມາດຕັ້ງເປັນ "j2k" ຫຼື "jp2" (ຄ່າເລີ່ມຕົ້ນ) ທີ່ເຮັດໃຫ້ມັນເປັນໄປໄດ້ທີ່ຈະເກັບຮັກສາທີ່ບໍ່ແມ່ນ.
rgb pix_fmts.

ຫິມະ
ທາງເລືອກໃນການ

iterative_dia_size
ຂະຫນາດ dia ສໍາລັບການຄາດຄະເນການເຄື່ອນໄຫວຊ້ໍາຊ້ອນ

libtheora
ຫໍ່ຕົວເຂົ້າລະຫັດ libtheora Theora.

ຮຽກຮ້ອງໃຫ້ມີການມີສ່ວນຫົວຂອງ libtheora ແລະຫ້ອງສະໝຸດໃນລະຫວ່າງການຕັ້ງຄ່າ. ເຈົ້າ​ຕ້ອງ​ການ
ກຳນົດຄ່າການກໍ່ສ້າງດ້ວຍ "--enable-libtheora".

ສໍາລັບຂໍ້ມູນເພີ່ມເຕີມກ່ຽວກັບໂຄງການ libtheora ເບິ່ງhttp://www.theora.org/>.

ທາງເລືອກໃນການ

ທາງ​ເລືອກ​ໃນ​ທົ່ວ​ໂລກ​ດັ່ງ​ຕໍ່​ໄປ​ນີ້​ແມ່ນ​ມີ​ແຜນ​ທີ່​ກັບ​ທາງ​ເລືອກ libtheora ພາຍ​ໃນ​ທີ່​ມີ​ຜົນ​ກະ​ທົບ​
ຄຸນນະພາບ ແລະອັດຕາບິດຂອງກະແສເຂົ້າລະຫັດ.

b ກໍານົດອັດຕາບິດຂອງວິດີໂອໃນ bit/s ສໍາລັບ CBR (ອັດຕາບິດຄົງທີ່). ໃນກໍລະນີ VBR
ໂໝດ (ອັດຕາບິດຕົວແປ) ຖືກເປີດໃຊ້ ຕົວເລືອກນີ້ຖືກລະເລີຍ.

ທົງ
ໃຊ້ເພື່ອເປີດໃຊ້ການເຂົ້າລະຫັດຮູບແບບຄຸນນະພາບຄົງທີ່ (VBR) ຜ່ານ qscale ທຸງ, ແລະ
ເປີດໃຊ້ໂໝດ "pass1" ແລະ "pass2".

g ກໍານົດຂະຫນາດ GOP.

global_quality
ກໍານົດຄຸນນະພາບທົ່ວໂລກເປັນຈໍານວນເຕັມໃນຫນ່ວຍ lambda.

ກ່ຽວຂ້ອງພຽງແຕ່ເມື່ອເປີດໃຊ້ໂໝດ VBR ດ້ວຍ "flags +qscale". ມູນຄ່າຖືກປ່ຽນເປັນ
ຫົວໜ່ວຍ QP ໂດຍການແບ່ງມັນໂດຍ "FF_QP2LAMBDA", ຕັດຢູ່ໃນຂອບເຂດ [0 - 10], ແລະຫຼັງຈາກນັ້ນ
ຄູນດ້ວຍ 6.3 ເພື່ອໃຫ້ໄດ້ຄ່າໃນຂອບເຂດ libtheora ເດີມ [0-63]. ມູນຄ່າສູງກວ່າ
ສອດຄ້ອງກັບຄຸນນະພາບທີ່ສູງຂຶ້ນ.

q ເປີດໃຊ້ໂໝດ VBR ເມື່ອຕັ້ງເປັນຄ່າທີ່ບໍ່ແມ່ນຄ່າລົບ, ແລະຕັ້ງຄ່າຄຸນນະພາບຄົງທີ່ເປັນ a
ຄ່າຈຸດລອຍສອງເທົ່າໃນຫນ່ວຍ QP.

ຄ່າຖືກຕັດຢູ່ໃນຂອບເຂດ [0-10], ແລະຫຼັງຈາກນັ້ນຄູນດ້ວຍ 6.3 ເພື່ອໃຫ້ໄດ້ຄ່າໃນ
ຊ່ວງ libtheora ພື້ນເມືອງ [0-63].

ທາງເລືອກນີ້ແມ່ນຖືກຕ້ອງພຽງແຕ່ການນໍາໃຊ້ ffmpeg ເຄື່ອງມືບັນທັດຄໍາສັ່ງ. ສໍາລັບການໂຕ້ຕອບຫ້ອງສະຫມຸດ
ຜູ້ໃຊ້, ໃຊ້ global_quality.

ຕົວຢ່າງ

·ກໍານົດຄຸນນະພາບຄົງທີ່ສູງສຸດ (VBR) ການເຂົ້າລະຫັດກັບ ffmpeg:

ffmpeg -i INPUT -codec:v libtheora -q:v 10 OUTPUT.ogg

· ການ​ນໍາ​ໃຊ້ ffmpeg ເພື່ອປ່ຽນສາຍວິດີໂອ CBR 1000 kbps Theora:

ffmpeg -i INPUT -codec:v libtheora -b:v 1000k OUTPUT.ogg

libvpx
ຮູບແບບ VP8/VP9 ຮອງຮັບຜ່ານ libvpx.

ຮຽກຮ້ອງໃຫ້ມີການມີສ່ວນຫົວຂອງ libvpx ແລະຫ້ອງສະໝຸດໃນລະຫວ່າງການກຳນົດຄ່າ. ທ່ານຕ້ອງການ
ກຳນົດຄ່າການກໍ່ສ້າງດ້ວຍ "--enable-libvpx".

ທາງເລືອກໃນການ

ທາງເລືອກຕໍ່ໄປນີ້ແມ່ນສະຫນັບສະຫນູນໂດຍ libvpx wrapper. ໄດ້ vpxenc- ທາງ​ເລືອກ​ທີ່​ທຽບ​ເທົ່າ​
ຫຼືຄ່າຖືກລະບຸໄວ້ໃນວົງເລັບເພື່ອການເຄື່ອນຍ້າຍໄດ້ງ່າຍ.

ເພື່ອຫຼຸດຜ່ອນການຊໍ້າຊ້ອນຂອງເອກະສານ, ພຽງແຕ່ທາງເລືອກສ່ວນຕົວແລະບາງອັນ
ຮຽກຮ້ອງໃຫ້ເອົາໃຈໃສ່ເປັນພິເສດແມ່ນບັນທຶກໄວ້ຢູ່ທີ່ນີ້. ສໍາລັບເອກະສານຂອງຜູ້ທີ່ບໍ່ມີເອກະສານ
ທາງເລືອກທົ່ວໄປ, ເບິ່ງ ໄດ້ ຕົວແປງສັນຍານ ທາງເລືອກໃນການ ພາກ.

ເພື່ອໃຫ້ໄດ້ຮັບເອກະສານເພີ່ມເຕີມຂອງທາງເລືອກ libvpx, ເອີ້ນຄໍາສັ່ງ ffmpeg -h
encoder=libvpx, ffmpeg -h encoder=libvpx-vp9 or vpxenc - ຊ່ວຍ. ຂໍ້ມູນເພີ່ມເຕີມແມ່ນ
ມີຢູ່ໃນເອກະສານ libvpx API.

b (ອັດຕາບິດເປົ້າໝາຍ)
ກໍານົດອັດຕາບິດເປັນ bits/s. ໃຫ້ສັງເກດວ່າ FFmpeg ຂອງ b ທາງເລືອກແມ່ນສະແດງອອກໃນ bits / s, ໃນຂະນະທີ່
vpxenc's ອັດຕາບິດເປົ້າໝາຍ ເປັນກິໂລບິດ/ວິນາທີ.

g (kf-max-dist)
keyint_min (kf-min-dist)
qmin (ນາທີ-q)
qmax (ສູງສຸດ-q)
ຂະໜາດ (buf-sz, buf-optimal-sz)
ກໍານົດຂະຫນາດ buffer ຄວບຄຸມອັດຕາ (ເປັນບິດ). ຫມາຍ​ເຫດ​ vpxencທາງ​ເລືອກ​ຂອງ​ແມ່ນ​ໄດ້​ລະ​ບຸ​ໄວ້​ໃນ​
milliseconds, libvpx wrapper ແປງຄ່ານີ້ດັ່ງຕໍ່ໄປນີ້: "buf-sz = bufsize *
1000 / bitrate "," buf-optimal-sz = bufsize * 1000 / bitrate * 5 / 6 ".

rc_init_occupancy (buf-initial-sz)
ກໍານົດຈໍານວນບິດທີ່ຄວນຈະຖືກໂຫລດເຂົ້າໄປໃນ rc buffer ກ່ອນທີ່ຈະເລີ່ມການຖອດລະຫັດ.
ຫມາຍ​ເຫດ​ vpxencທາງເລືອກຂອງແມ່ນລະບຸໄວ້ໃນ milliseconds, libvpx wrapper converts ນີ້
ຄ່າດັ່ງຕໍ່ໄປນີ້: "rc_init_occupancy * 1000 / bitrate".

undershoot-pct
ກໍານົດອັດຕາຄ່າຕໍ່າກວ່າ (ນາທີ) ເປີເຊັນຂອງອັດຕາບິດຂອງເປົ້າຫມາຍ.

overshoot-pct
ກໍານົດອັດຕາສ່ວນອັດຕາບິດ (ສູງສຸດ) ຂອງອັດຕາບິດເປົ້າຫມາຍ.

skip_threshold (drop-frame)
qcomp (bias-pct)
ສູງສຸດ (maxsection-pct)
ຕັ້ງອັດຕາບິດສູງສຸດ GOP ເປັນ bits/s. ຫມາຍ​ເຫດ​ vpxencທາງ​ເລືອກ​ຂອງ​ແມ່ນ​ລະ​ບຸ​ໄວ້​ເປັນ​ເປີ​ເຊັນ​ຂອງ​
bitrate ເປົ້າຫມາຍ, libvpx wrapper converts ຄ່ານີ້ດັ່ງຕໍ່ໄປນີ້: "(maxrate * 100.
/ ອັດຕາບິດ)".

ຕໍ່າສຸດ (minsection-pct)
ຕັ້ງອັດຕາບິດຂັ້ນຕ່ຳ GOP ເປັນ bits/s. ຫມາຍ​ເຫດ​ vpxencທາງ​ເລືອກ​ຂອງ​ແມ່ນ​ລະ​ບຸ​ໄວ້​ເປັນ​ເປີ​ເຊັນ​ຂອງ​
bitrate ເປົ້າຫມາຍ, libvpx wrapper converts ຄ່ານີ້ດັ່ງຕໍ່ໄປນີ້: "(minrate * 100
/ ອັດຕາບິດ)".

ຫນ້ອຍ, ສູງສຸດ, b end-usage=cbr
"(minrate == maxrate == bitrate)".

cr f (end-usage=cq, cq ລະດັບ)
ຄຸນນະພາບ, ກໍານົດເວລາ (ກໍານົດເວລາ)
ທີ່ດີທີ່ສຸດ
ໃຊ້ເສັ້ນຕາຍທີ່ມີຄຸນນະພາບດີທີ່ສຸດ. ຊື່ບໍ່ດີແລະຂ້ອນຂ້າງຊ້າ, ທາງເລືອກນີ້ຄວນຈະເປັນ
ຫຼີກ​ເວັ້ນ​ການ​ເພາະ​ວ່າ​ມັນ​ອາດ​ຈະ​ໃຫ້​ຜົນ​ຜະ​ລິດ​ທີ່​ມີ​ຄຸນ​ນະ​ພາບ​ຮ້າຍ​ແຮງ​ກວ່າ​ທີ່​ດີ​.

ດີ
ໃຊ້ເສັ້ນຕາຍທີ່ມີຄຸນນະພາບດີ. ນີ້ແມ່ນການແລກປ່ຽນທີ່ດີລະຫວ່າງຄວາມໄວແລະຄຸນນະພາບໃນເວລາທີ່
ໃຊ້ກັບ CPU ໃຊ້ ທາງເລືອກ.

ເວ​ລາ​ຈິງ
ໃຊ້ເສັ້ນຕາຍຄຸນນະພາບຕາມເວລາຈິງ.

ຄວາມໄວ, CPU ໃຊ້ (CPU ໃຊ້)
ຕັ້ງຄ່າຕົວແກ້ໄຂອັດຕາສ່ວນຄຸນນະພາບ/ຄວາມໄວ. ຄ່າທີ່ສູງຂຶ້ນເລັ່ງການເຂົ້າລະຫັດດ້ວຍຄ່າໃຊ້ຈ່າຍ
ຄຸນນະພາບ.

nr (ຄວາມອ່ອນໄຫວສິ່ງລົບກວນ)
static-thresh
ກໍານົດຂອບເຂດການປ່ຽນແປງຢູ່ໃນບລັອກຂ້າງລຸ່ມນີ້ເຊິ່ງພວກມັນຈະຖືກຂ້າມຜ່ານໂດຍຕົວເຂົ້າລະຫັດ.

slices (token-parts)
ໃຫ້ສັງເກດວ່າ FFmpeg ຂອງ slices ທາງ​ເລືອກ​ໃຫ້​ຈໍາ​ນວນ​ທັງ​ຫມົດ​ຂອງ​ການ​ແບ່ງ​ປັນ​, ໃນ​ຂະ​ນະ​ທີ່​ vpxenc's
token-parts ແມ່ນໃຫ້ເປັນ "log2(partitions)".

ສູງສຸດ-intra-rate
ກໍານົດອັດຕາບິດຂອງ I-frame ສູງສຸດເປັນເປີເຊັນຂອງອັດຕາບິດຂອງເປົ້າຫມາຍ. ຄ່າຂອງ 0 ຫມາຍຄວາມວ່າ
ບໍ່ຈຳກັດ.

force_key_frames
"VPX_EFLAG_FORCE_KF"

ທາງເລືອກ ອ້າງອິງ frame ທີ່ກ່ຽວຂ້ອງ
auto-alt-ref
ເປີດການນຳໃຊ້ກອບການອ້າງອີງສຳຮອງ (2-pass ເທົ່ານັ້ນ).

arnr-max-frames
ຕັ້ງຄ່າການຫຼຸດສຽງລົບກວນສູງສຸດ altref.

arnr-type
ກໍານົດປະເພດການກັ່ນຕອງການຫຼຸດຜ່ອນສຽງ altref: ຖອຍຫລັງ, ໄປຂ້າງຫນ້າ, ກາງ.

arnr-ຄວາມເຂັ້ມແຂງ
ກໍານົດຄວາມເຂັ້ມຂອງການກັ່ນຕອງການຫຼຸດຜ່ອນສຽງ altref.

rc-lookhead, lag-in-frames (lag-in-frames)
ກໍານົດຈໍານວນຂອງເຟຣມທີ່ຈະເບິ່ງລ່ວງຫນ້າສໍາລັບ frametype ແລະອັດຕາການຄວບຄຸມ.

ຄວາມ​ຜິດ​ພາດ​ທົນ​ທານ​ຕໍ່​
ເປີດໃຊ້ຄຸນສົມບັດຄວາມຢືດຢຸ່ນຂອງຄວາມຜິດພາດ.

VP9 ສະເພາະ ທາງເລືອກໃນການ
lossless
ເປີດໃຊ້ໂໝດສູນເສຍ.

ກະເບື້ອງ-ຖັນ
ກໍານົດຈໍານວນຖັນກະເບື້ອງທີ່ຈະໃຊ້. ໃຫ້ສັງເກດວ່ານີ້ແມ່ນ "log2(tile_columns)". ສໍາລັບ
ຕົວຢ່າງ, 8 ຖັນກະເບື້ອງຈະຖືກຮ້ອງຂໍໂດຍການຕັ້ງຄ່າ ກະເບື້ອງ-ຖັນ ທາງເລືອກທີ່ຈະ
3.

ແຖວກະເບື້ອງ
ຕັ້ງຈໍານວນແຖວກະເບື້ອງເພື່ອໃຊ້. ໃຫ້ສັງເກດວ່ານີ້ແມ່ນ "log2(tile_rows)". ສໍາລັບ
ຕົວຢ່າງ, 4 ແຖວກະເບື້ອງຈະຖືກຮ້ອງຂໍໂດຍການຕັ້ງຄ່າ ແຖວກະເບື້ອງ ທາງ​ເລືອກ 2​.

ຂອບຂະໜານ
ເປີດໃຊ້ຄຸນສົມບັດການຖອດລະຫັດຂະໜານຂອງກອບ.

ໂໝດ aq
ຕັ້ງຄ່າຮູບແບບການປັບຕົວປະລິມານ (0: ປິດ (ຄ່າເລີ່ມຕົ້ນ), 1: ການປ່ຽນແປງ 2: ຄວາມຊັບຊ້ອນ, 3:
ໂຫຼດຫນ້າຈໍຄືນ).

colorspace ສີພື້ນທີ່
ຕັ້ງພື້ນທີ່ສີໃສ່. VP9 bitstream ສະຫນັບສະຫນູນສັນຍານດັ່ງຕໍ່ໄປນີ້
ພື້ນທີ່ສີ:

rgb sRGB
bt709 bt709
unspecified ຮູ້ຈັກ
bt470bg bt601
smte 170m smpte170
smte 240m smpte240
bt2020_ncl bt2020

ສໍາລັບຂໍ້ມູນເພີ່ມເຕີມກ່ຽວກັບ libvpx ເບິ່ງ:http://www.webmproject.org/>

libwebp
libwebp WebP ຫໍ່ຕົວເຂົ້າລະຫັດຮູບພາບ

libwebp ແມ່ນຕົວເຂົ້າລະຫັດຢ່າງເປັນທາງການຂອງ Google ສໍາລັບຮູບພາບ WebP. ມັນສາມາດເຂົ້າລະຫັດໃນທັງ lossy ຫຼື
ຮູບ​ແບບ​ການ​ສູນ​ເສຍ​. ຮູບພາບທີ່ຫຼົງໄຫຼແມ່ນເປັນແຜ່ນຫໍ່ຮອບກອບ VP8. ຮູບພາບທີ່ບໍ່ມີການສູນເສຍ
ແມ່ນຕົວແປງສັນຍານແຍກຕ່າງຫາກທີ່ພັດທະນາໂດຍ Google.

Pixel ຮູບແບບ

ໃນປັດຈຸບັນ, libwebp ພຽງແຕ່ສະຫນັບສະຫນູນ YUV420 ສໍາລັບ lossy ແລະ RGB ສໍາລັບການສູນເສຍເນື່ອງຈາກຂໍ້ຈໍາກັດ.
ຂອງຮູບແບບແລະ libwebp. Alpha ແມ່ນສະຫນັບສະຫນູນສໍາລັບທັງສອງໂຫມດ. ເນື່ອງຈາກ API
ຂໍ້ຈໍາກັດ, ຖ້າ RGB ຖືກຜ່ານໃນເວລາທີ່ການເຂົ້າລະຫັດສູນເສຍຫຼື YUV ຖືກສົ່ງຜ່ານສໍາລັບການເຂົ້າລະຫັດ
lossless, ຮູບແບບ pixels ລວງຈະຖືກປ່ຽນອັດຕະໂນມັດໂດຍໃຊ້ຟັງຊັນຈາກ libwebp.
ອັນນີ້ບໍ່ເໝາະສົມ ແລະເຮັດເພື່ອຄວາມສະດວກເທົ່ານັ້ນ.

ທາງເລືອກໃນການ

- ສູນ​ເສຍ​ ປຸ້ຍ
ເປີດ/ປິດການນຳໃຊ້ໂໝດສູນເສຍ. ຄ່າເລີ່ມຕົ້ນແມ່ນ 0.

-compression_level integer
ສໍາລັບການສູນເສຍ, ນີ້ແມ່ນການແລກປ່ຽນຄຸນນະພາບ / ຄວາມໄວ. ຄ່າທີ່ສູງຂຶ້ນໃຫ້ຄຸນນະພາບທີ່ດີກວ່າສໍາລັບ a
ຂະຫນາດທີ່ໃຫ້ຢູ່ໃນຄ່າໃຊ້ຈ່າຍຂອງການເພີ່ມເວລາເຂົ້າລະຫັດ. ສໍາລັບການສູນເສຍ, ນີ້ແມ່ນຂະຫນາດ / ຄວາມໄວ
ການຄ້າ. ຄ່າທີ່ສູງກວ່າໃຫ້ຂະໜາດນ້ອຍລົງໃນຄ່າໃຊ້ຈ່າຍຂອງເວລາເຂົ້າລະຫັດທີ່ເພີ່ມຂຶ້ນ. ເພີ່ມເຕີມ
ໂດຍສະເພາະ, ມັນຄວບຄຸມຈໍານວນຂອງ algorithms ພິເສດແລະເຄື່ອງມືບີບອັດທີ່ໃຊ້,
ແລະຄວາມແຕກຕ່າງຂອງການປະສົມປະສານຂອງເຄື່ອງມືເຫຼົ່ານີ້. ແຜນທີ່ນີ້ໄປຫາ ວິທີການ ທາງເລືອກໃນ libwebp.
ໄລຍະທີ່ຖືກຕ້ອງແມ່ນ 0 ຫາ 6. ຄ່າເລີ່ມຕົ້ນແມ່ນ 4.

-qscale float
ສໍາລັບການເຂົ້າລະຫັດ lossy, ນີ້ຈະຄວບຄຸມຄຸນນະພາບຮູບພາບ, 0 ຫາ 100. ສໍາລັບການເຂົ້າລະຫັດທີ່ສູນເສຍ, ນີ້
ຄວບຄຸມຄວາມພະຍາຍາມແລະເວລາທີ່ໃຊ້ໃນການບີບອັດຫຼາຍຂຶ້ນ. ຄ່າເລີ່ມຕົ້ນແມ່ນ 75. ຫມາຍເຫດ
ວ່າສໍາລັບການນໍາໃຊ້ໂດຍຜ່ານ libavcodec, ທາງເລືອກນີ້ແມ່ນເອີ້ນວ່າ global_quality ແລະຕ້ອງເປັນ
ຄູນດ້ວຍ FF_QP2LAMBDA.

- ຕັ້ງ​ໄວ້​ລ່ວງ​ຫນ້າ​ ປະເພດ
ການຕັ້ງຄ່າລ່ວງໜ້າ. ນີ້ເຮັດບາງການຕັ້ງຄ່າອັດຕະໂນມັດໂດຍອີງໃສ່ປະເພດທົ່ວໄປຂອງ
ຮູບພາບ.

none
ຢ່າໃຊ້ preset.

Default
ໃຊ້ຕົວເຂົ້າລະຫັດຄ່າເລີ່ມຕົ້ນ.

ຮູບ
ຮູບ​ພາບ​ດິ​ຈິ​ຕອນ​, ເຊັ່ນ​: ຮູບ​ຄົນ​, ການ​ຖ່າຍ​ຮູບ​ພາຍ​ໃນ​

ຮູບພາບ
ການຖ່າຍຮູບກາງແຈ້ງ, ມີແສງທໍາມະຊາດ

ການແຕ້ມຮູບ
ການແຕ້ມດ້ວຍມື ຫຼືເສັ້ນ, ມີລາຍລະອຽດຄວາມຄົມຊັດສູງ

ຮູບສັນຍາລັກ
ຮູບພາບທີ່ມີສີສັນຂະຫນາດນ້ອຍ

ຂໍ້ຄວາມ
ຄ້າຍຄືຂໍ້ຄວາມ

libx264, libx264rgb
x264 H.264/MPEG-4 AVC ຫໍ່ຕົວເຂົ້າລະຫັດ.

ຕົວເຂົ້າລະຫັດນີ້ຮຽກຮ້ອງໃຫ້ມີການມີສ່ວນຫົວຂອງ libx264 ແລະຫ້ອງສະໝຸດໃນລະຫວ່າງ
ການຕັ້ງຄ່າ. ທ່ານຈໍາເປັນຕ້ອງໄດ້ກໍານົດຢ່າງຈະແຈ້ງການກໍ່ສ້າງດ້ວຍ "--enable-libx264".

libx264 ຮອງຮັບຄຸນສົມບັດທີ່ໜ້າປະທັບໃຈ, ລວມທັງ 8x8 ແລະ 4x4 adaptive spatial.
ການຫັນປ່ຽນ, ການຈັດວາງ B-frame ທີ່ສາມາດປັບຕົວໄດ້, CAVLC/CABAC entropy coding, interlacing (MBAFF),
ຮູບແບບການສູນເສຍ, ການເພີ່ມປະສິດທິພາບ psy ສໍາລັບການຮັກສາລາຍລະອຽດ (ການປັບຕົວປະລິມານ, psy-RD, psy-
trellis).

ຕົວເລືອກຕົວເຂົ້າລະຫັດ libx264 ຫຼາຍອັນແມ່ນຖືກສ້າງແຜນທີ່ໃຫ້ກັບຕົວເລືອກຕົວແປງສັນຍານທົ່ວໂລກ FFmpeg, ໃນຂະນະທີ່ເປັນເອກະລັກ
ທາງເລືອກຕົວເຂົ້າລະຫັດແມ່ນສະຫນອງໃຫ້ໂດຍຜ່ານທາງເລືອກສ່ວນຕົວ. ນອກ​ຈາກ​ນັ້ນ​ x264 ເລືອກ ແລະ
x264-params ທາງ​ເລືອກ​ສ່ວນ​ຕົວ​ອະ​ນຸ​ຍາດ​ໃຫ້​ຫນຶ່ງ​ຜ່ານ​ບັນ​ຊີ​ລາຍ​ການ​ຂອງ key=value tuples ເປັນ​ທີ່​ຍອມ​ຮັບ​ໂດຍ
ຟັງຊັນ libx264 "x264_param_parse".

ເວັບໄຊທ໌ໂຄງການ x264 ຢູ່ທີ່http://www.videolan.org/developers/x264.html>.

ຕົວເຂົ້າລະຫັດ libx264rgb ແມ່ນຄືກັນກັບ libx264, ຍົກເວັ້ນມັນຍອມຮັບຮູບແບບ RGB pixels ບັນຈຸ.
ເປັນວັດສະດຸປ້ອນແທນ YUV.

ສະຫນັບສະຫນູນ Pixel ຮູບແບບ

x264 ຮອງຮັບພື້ນທີ່ສີ 8 ຫາ 10-bit. ຄວາມເລິກບິດທີ່ແນ່ນອນແມ່ນຄວບຄຸມຢູ່ທີ່ x264's
ຕັ້ງຄ່າເວລາ. FFmpeg ພຽງແຕ່ສະຫນັບສະຫນູນຄວາມເລິກເລັກນ້ອຍໃນການກໍ່ສ້າງໂດຍສະເພາະ. ໃນ​ອື່ນໆ
ຄໍາສັບຕ່າງໆ, ມັນເປັນໄປບໍ່ໄດ້ທີ່ຈະສ້າງຫນຶ່ງ FFmpeg ທີ່ມີຫຼາຍຮຸ່ນຂອງ x264 ກັບ
ຄວາມ​ເລິກ​ນ້ອຍ​ທີ່​ແຕກ​ຕ່າງ​ກັນ​.

ທາງເລືອກໃນການ

ທາງເລືອກຕໍ່ໄປນີ້ແມ່ນສະຫນັບສະຫນູນໂດຍ libx264 wrapper. ໄດ້ x264- ທາງ​ເລືອກ​ທີ່​ທຽບ​ເທົ່າ​ຫຼື​
ຄ່າຖືກລະບຸໄວ້ໃນວົງເລັບເພື່ອການເຄື່ອນຍ້າຍໄດ້ງ່າຍ.

ເພື່ອຫຼຸດຜ່ອນການຊໍ້າຊ້ອນຂອງເອກະສານ, ພຽງແຕ່ທາງເລືອກສ່ວນຕົວແລະບາງອັນ
ຮຽກຮ້ອງໃຫ້ເອົາໃຈໃສ່ເປັນພິເສດແມ່ນບັນທຶກໄວ້ຢູ່ທີ່ນີ້. ສໍາລັບເອກະສານຂອງຜູ້ທີ່ບໍ່ມີເອກະສານ
ທາງເລືອກທົ່ວໄປ, ເບິ່ງ ໄດ້ ຕົວແປງສັນຍານ ທາງເລືອກໃນການ ພາກ.

ເພື່ອໃຫ້ໄດ້ເອກະສານທີ່ຖືກຕ້ອງແລະກວ້າງຂວາງກວ່າຂອງທາງເລືອກ libx264, ຮຽກຮ້ອງ
ຄໍາສັ່ງ x264 -- ການຊ່ວຍເຫຼືອຢ່າງເຕັມທີ່ ຫຼືປຶກສາເອກະສານ libx264.

b (ອັດຕາບິດ)
ກໍານົດອັດຕາບິດເປັນ bits/s. ໃຫ້ສັງເກດວ່າ FFmpeg ຂອງ b ທາງເລືອກແມ່ນສະແດງອອກໃນ bits / s, ໃນຂະນະທີ່
x264's ອັດຕາບິດ ເປັນກິໂລບິດ/ວິນາທີ.

bf (bframes)
g (ຄໍາສໍາຄັນ)
qmin (qpmin)
ຂະໜາດເຄື່ອງວັດແທກຂັ້ນຕ່ຳ.

qmax (qpmax)
ຂະໜາດປະລິມານສູງສຸດ.

qdiff (qpstep)
ຄວາມແຕກຕ່າງສູງສຸດລະຫວ່າງເຄື່ອງວັດແທກປະລິມານ.

qblur (qblur)
Quantizer curve ມົວ

qcomp (qcomp)
ປັດໄຈການບີບອັດເສັ້ນໂຄ້ງ Quantizer

ການອ້າງອີງ (ການອ້າງອີງຫຼັກ)
ຈໍານວນຂອງກອບເອກະສານອ້າງອີງແຕ່ລະ P-frame ສາມາດນໍາໃຊ້. ຂອບເຂດແມ່ນມາຈາກ 0​-16.

sc_threshold (ສາກ)
ກໍານົດຂອບເຂດສໍາລັບການກວດພົບການປ່ຽນແປງ scene.

ໄມ້ຄ້ອນ (ໄມ້ຄ້ອນ)
ປະຕິບັດການວັດແທກປະລິມານ Trellis ເພື່ອເພີ່ມປະສິດທິພາບ. ເປີດໃຊ້ໂດຍຄ່າເລີ່ມຕົ້ນ.

nr (nr)
me_range (ຊ່ວງ)
ໄລຍະສູງສຸດຂອງການຄົ້ນຫາການເຄື່ອນໄຫວເປັນ pixels.

me_method (me)
ກໍານົດວິທີການຄາດຄະເນການເຄື່ອນໄຫວ. ຄ່າທີ່ເປັນໄປໄດ້ໃນຄໍາສັ່ງຫຼຸດລົງຂອງຄວາມໄວ:

dia (dia)
epzs (dia)
ຄົ້ນຫາເພັດດ້ວຍລັດສະໝີ 1 (ໄວທີ່ສຸດ). epzs ແມ່ນນາມແforງຂອງ dia.

hex (hex)
ຄົ້ນຫາຫົກຫຼ່ຽມດ້ວຍລັດສະໝີ 2.

ເອີ (ເອີ)
ການຊອກຫາຫຼາຍຮູບສີ່ຫລ່ຽມທີ່ບໍ່ສະຫມໍ່າສະເຫມີ.

esa (esa)
ການຊອກຫາທີ່ໝົດໄປ.

tesa (tesa)
Hadamard ຄົ້ນຫາຢ່າງຄົບຖ້ວນ (ຊ້າທີ່ສຸດ).

ຍ່ອຍ (subme)
ວິທີການຄາດຄະເນການເຄື່ອນໄຫວຂອງ pixels ລວງຍ່ອຍ.

b_ຍຸດທະສາດ (b-ປັບຕົວ)
ຂັ້ນຕອນການຕັດສິນໃຈການຈັດວາງຂອບ B ແບບປັບຕົວໄດ້. ໃຊ້ໃນຄັ້ງທຳອິດເທົ່ານັ້ນ.

keyint_min (min-keyint)
ຂະໜາດຕ່ຳສຸດ GOP.

ລະຫັດ
ຕັ້ງຄ່າຕົວເຂົ້າລະຫັດ entropy. ຄ່າທີ່ເປັນໄປໄດ້:

ac ເປີດໃຊ້ CABAC.

vlc ເປີດໃຊ້ CAVLC ແລະປິດການໃຊ້ງານ CABAC. ມັນສ້າງຜົນກະທົບເຊັ່ນດຽວກັນກັບ x264's --no-cabac
ທາງເລືອກ.

cmp ຕັ້ງຄ່າຂັ້ນຕອນການປຽບທຽບການຄາດເດົາການເຄື່ອນໄຫວຂອງ pixels ລວງເຕັມ. ຄ່າທີ່ເປັນໄປໄດ້:

ໂຄລາ
ເປີດໃຊ້ chroma ໃນການຄາດຄະເນການເຄື່ອນໄຫວ.

ໂສກເສົ້າ ບໍ່ສົນໃຈ chroma ໃນການຄາດຄະເນການເຄື່ອນໄຫວ. ມັນສ້າງຜົນກະທົບເຊັ່ນດຽວກັນກັບ x264's
--no-chroma-me ທາງເລືອກ.

ກະທູ້ (ກະທູ້)
ຈໍານວນຫົວຂໍ້ການເຂົ້າລະຫັດ.

thread_type
ກໍານົດເຕັກນິກການ multithreading. ຄ່າທີ່ເປັນໄປໄດ້:

slice
Slice-based multithreading. ມັນສ້າງຜົນກະທົບເຊັ່ນດຽວກັນກັບ x264's
--sliced-threads ທາງເລືອກ.

frame
multithreading ທີ່ອີງໃສ່ກອບ.

ທົງ
ຕັ້ງທຸງການເຂົ້າລະຫັດ. ມັນສາມາດຖືກນໍາໃຊ້ເພື່ອປິດການປິດ GOP ແລະເປີດໃຊ້ GOP ເປີດໂດຍ
ຕັ້ງຄ່າມັນເປັນ "-cgop". ຜົນໄດ້ຮັບແມ່ນຄ້າຍຄືກັນກັບພຶດຕິກໍາຂອງ x264's --open-gop
ທາງເລືອກ.

rc_init_occupancy (vbv-init)
ຕັ້ງໄວ້ລ່ວງ ໜ້າ (ຕັ້ງໄວ້ລ່ວງ ໜ້າ)
ຕັ້ງຄ່າການເຂົ້າລະຫັດໄວ້ລ່ວງໜ້າ.

ປບັ (ປບັ)
ກໍານົດການປັບຕົວກໍານົດການເຂົ້າລະຫັດ.

ຂໍ້​ມູນ (ຂໍ້​ມູນ)
ກໍານົດຂໍ້ຈໍາກັດໂປຣໄຟລ໌.

fastfirstpass
ເປີດໃຊ້ການຕັ້ງຄ່າໄວເມື່ອເຂົ້າລະຫັດທໍາອິດຜ່ານ, ເມື່ອຕັ້ງເປັນ 1. ເມື່ອຕັ້ງເປັນ 0, ມັນມີ
ຜົນກະທົບດຽວກັນຂອງ x264's --slow-firstpass ທາງເລືອກ.

cr f (cr f)
ກໍານົດຄຸນນະພາບສໍາລັບຮູບແບບຄຸນນະພາບຄົງທີ່.

crf_max (crf-ສູງສຸດ)
ໃນໂຫມດ CRF, ປ້ອງກັນບໍ່ໃຫ້ VBV ຫຼຸດລົງຄຸນນະພາບເກີນຈຸດນີ້.

qp (qp)
ກໍານົດຕົວກໍານົດການວິທີການຄວບຄຸມອັດຕາປະລິມານຄົງທີ່.

ໂໝດ aq (ໂໝດ aq)
ກໍານົດວິທີການ AQ. ຄ່າທີ່ເປັນໄປໄດ້:

none (0)
ຖືກປິດໃຊ້ງານ.

ຄວາມແຕກຕ່າງ (1)
Variance AQ (ໜ້າກາກຄວາມຊັບຊ້ອນ).

ການປ່ຽນແປງອັດຕະໂນມັດ (2)
ການປ່ຽນແປງອັດຕະໂນມັດ AQ (ທົດລອງ).

ຄວາມເຂັ້ມແຂງ aq (ຄວາມເຂັ້ມແຂງ aq)
ກໍານົດຄວາມເຂັ້ມແຂງ AQ, ຫຼຸດຜ່ອນການສະກັດແລະການເຮັດໃຫ້ມົວໃນພື້ນທີ່ຮາບພຽງແລະໂຄງສ້າງ.

psy ໃຊ້ການເພີ່ມປະສິດທິພາບທາງດ້ານຈິດໃຈເມື່ອຕັ້ງເປັນ 1. ເມື່ອຕັ້ງເປັນ 0, ມັນມີຜົນຄືກັນກັບ
x264's --no-psy ທາງເລືອກ.

psy-rd (psy-rd)
ກໍານົດຄວາມເຂັ້ມແຂງຂອງການເພີ່ມປະສິດທິພາບທາງດ້ານຈິດໃຈ, ໃນ psy-rd:psy-trellis ຮູບແບບ.

rc-ເບິ່ງ (rc-ເບິ່ງ)
ກໍານົດຈໍານວນຂອງເຟຣມທີ່ຈະເບິ່ງລ່ວງຫນ້າສໍາລັບ frametype ແລະອັດຕາການຄວບຄຸມ.

ນ້ຳໜັກ
ເປີດໃຊ້ການຄາດເດົານໍ້າໜັກສຳລັບ B-frames ເມື່ອຕັ້ງເປັນ 1. ເມື່ອຕັ້ງເປັນ 0, ມັນມີອັນດຽວກັນ
ຜົນກະທົບເປັນ x264's --no-weightb ທາງເລືອກ.

ນ້ຳໜັກ (ນ້ຳໜັກ)
ກໍານົດວິທີການຄາດຄະເນນ້ໍາຫນັກສໍາລັບ P-frames. ຄ່າທີ່ເປັນໄປໄດ້:

none (0)
ຄົນພິການ

ງ່າຍດາຍ (1)
ເປີດໃຊ້ການອ້າງອີງນໍ້າໜັກເທົ່ານັ້ນ

smart (2)
ເປີດໃຊ້ທັງການອ້າງອີງນໍ້າໜັກ ແລະຂໍ້ມູນຊໍ້າກັນ

ຊິມ (ຊິມ)
ເປີດໃຊ້ການຄິດໄລ່ ແລະພິມສະຖິຕິ SSIM ຫຼັງຈາກເຂົ້າລະຫັດ.

ປັບປຸງພາຍໃນ (ປັບປຸງພາຍໃນ)
ເປີດໃຊ້ການໃຊ້ Periodic Intra Refresh ແທນເຟຣມ IDR ເມື່ອຕັ້ງເປັນ 1.

avcintra-ຊັ້ນ (ລະດັບ)
ຕັ້ງຄ່າຕົວເຂົ້າລະຫັດເພື່ອສ້າງ AVC-Intra. ຄ່າທີ່ຖືກຕ້ອງແມ່ນ 50,100 ແລະ 200

bluray-compat (bluray-compat)
ຕັ້ງຄ່າຕົວເຂົ້າລະຫັດໃຫ້ເຂົ້າກັນໄດ້ກັບມາດຕະຖານ bluray. ມັນເປັນ shorthand
ສໍາລັບການຕັ້ງຄ່າ "bluray-compat = 1 force-cfr = 1".

b-ອະຄະຕິ (b-ອະຄະຕິ)
ກໍານົດອິດທິພົນກ່ຽວກັບວິທີ B-frames ຖືກນໍາໃຊ້ເລື້ອຍໆ.

b-pyramid (b-pyramid)
ກໍານົດວິທີການສໍາລັບການເກັບຮັກສາບາງ B-frames ເປັນເອກະສານອ້າງອີງ. ຄ່າທີ່ເປັນໄປໄດ້:

none (none)
ຖືກປິດໃຊ້ງານ.

ຢ່າງເຄັ່ງຄັດ (ຢ່າງເຄັ່ງຄັດ)
pyramid ລໍາດັບຊັ້ນຢ່າງເຂັ້ມງວດ.

ປົກກະຕິ (ປົກກະຕິ)
ບໍ່ເຄັ່ງຄັດ (ບໍ່ເຂົ້າກັນໄດ້ Blu-ray).

ອ້າງອີງແບບປະສົມ
ເປີດໃຊ້ການນໍາໃຊ້ຫນຶ່ງອ້າງອີງຕໍ່ພາທິຊັນ, ກົງກັນຂ້າມກັບການອ້າງອີງຫນຶ່ງຕໍ່
macroblock ເມື່ອຕັ້ງເປັນ 1. ເມື່ອຕັ້ງເປັນ 0, ມັນມີຜົນກະທົບດຽວກັນກັບ x264's
--no-mixed-refs ທາງເລືອກ.

8x8dct
ເປີດໃຊ້ການຫັນປ່ຽນທາງກວ້າງຂອງພື້ນແບບປັບຕົວໄດ້ (ການຫັນປ່ຽນໂປຣໄຟລ໌ສູງ 8x8) ເມື່ອຕັ້ງເປັນ 1. ເມື່ອຕັ້ງ
ເຖິງ 0, ມັນມີຜົນກະທົບດຽວກັນກັບ x264's --no-8x8dct ທາງເລືອກ.

ໄວ-pskip
ເປີດໃຊ້ການກວດສອບ SKIP ໃນຕອນຕົ້ນໃນ P-frames ເມື່ອຕັ້ງເປັນ 1. ເມື່ອຕັ້ງເປັນ 0, ມັນມີອັນດຽວກັນ.
ຜົນກະທົບເປັນ x264's --no-fast-pskip ທາງເລືອກ.

aud (aud)
ເປີດການນຳໃຊ້ຕົວຂັ້ນຫົວໜ່ວຍການເຂົ້າເຖິງ ເມື່ອຕັ້ງເປັນ 1.

mbtree
ເປີດໃຊ້ macroblock tree ratecontrol ເມື່ອຕັ້ງເປັນ 1. ເມື່ອຕັ້ງເປັນ 0, ມັນມີອັນດຽວກັນ
ຜົນກະທົບເປັນ x264's --no-mbtree ທາງເລືອກ.

ປົດບລັອກ (ປົດບລັອກ)
ກໍານົດຕົວກໍານົດການກັ່ນຕອງ loop, in alpha:ທົດລອງ ແບບຟອມ.

cplxblur (cplxblur)
ກໍານົດການຫຼຸດຜ່ອນການເຫນັງຕີງໃນ QP (ກ່ອນການບີບອັດເສັ້ນໂຄ້ງ).

ຄະແນນ (ຄະແນນ)
ຕັ້ງພາທິຊັນເພື່ອພິຈາລະນາເປັນລາຍການທີ່ຂັ້ນດ້ວຍເຄື່ອງໝາຍຈຸດ. ຄ່າທີ່ເປັນໄປໄດ້ໃນລາຍການ:

p8x8
ການແບ່ງພາຕິຊັນ 8x8 P-frame.

p4x4
ການແບ່ງພາຕິຊັນ 4x4 P-frame.

b8x8
4x4 B-frame partition.

i8x8
ການແບ່ງພາຕິຊັນ 8x8 I-frame.

i4x4
ການແບ່ງພາຕິຊັນ 4x4 I-frame. (ເປີດໃຊ້ງານ p4x4 ຕ້ອງການ p8x8 ຈະຖືກເປີດໃຊ້. ການເປີດໃຊ້ງານ i8x8
ຮຽກ​ຮ້ອງ​ໃຫ້​ມີ​ການ​ປ່ຽນ​ແປງ​ທາງ​ກວ້າງ​ຂວາງ​ປັບ (8x8dct ທາງ​ເລືອກ​) ທີ່​ຈະ​ໄດ້​ຮັບ​ການ​ເປີດ​.

none (none)
ຢ່າພິຈາລະນາການແບ່ງສ່ວນໃດໆ.

ທັງຫມົດ (ທັງຫມົດ)
ພິຈາລະນາທຸກໆການແບ່ງປັນ.

ໂດຍກົງ (ໂດຍກົງ)
ຕັ້ງໂໝດການຄາດເດົາ MV ໂດຍກົງ. ຄ່າທີ່ເປັນໄປໄດ້:

none (none)
ປິດການຄາດເດົາ MV.

ທາງກວ້າງຂອງພື້ນ (ທາງກວ້າງຂອງພື້ນ)
ເປີດໃຊ້ການຄາດເດົາທາງພື້ນທີ່.

ໂລກ (ໂລກ)
ເປີດໃຊ້ການຄາດເດົາຊົ່ວຄາວ.

ອັດຕະໂນມັດ (ອັດຕະໂນມັດ)
ຕັດສິນໃຈອັດຕະໂນມັດ.

slice-max-size (slice-max-size)
ກໍານົດຂອບເຂດຈໍາກັດຂອງຂະຫນາດຂອງແຕ່ລະ slice ເປັນ bytes. ຖ້າບໍ່ລະບຸແຕ່ RTP payload
ຂະ ໜາດ (ps) ຖືກກໍານົດ, ທີ່ຖືກນໍາໃຊ້.

ສະຖິຕິ (ສະຖິຕິ)
ຕັ້ງຊື່ໄຟລ໌ສໍາລັບສະຖິຕິຫຼາຍ pass.

nal-hrd (nal-hrd)
ກໍານົດຂໍ້ມູນ HRD ສັນຍານ (ຕ້ອງການ vbv-bufsize ທີ່ຈະກໍານົດ). ຄ່າທີ່ເປັນໄປໄດ້:

none (none)
ປິດການນຳໃຊ້ສັນຍານຂໍ້ມູນ HRD.

vbr (vbr)
ອັດຕາບິດຕົວປ່ຽນແປງ.

cbr (cbr)
ອັດຕາບິດຄົງທີ່ (ບໍ່ອະນຸຍາດໃຫ້ຢູ່ໃນຖັງ MP4).

x264 ເລືອກ (NA)
ກໍານົດທາງເລືອກ x264, ເບິ່ງ x264 -- ຊ່ວຍ​ເຫຼືອ​ຢ່າງ​ເຕັມ​ທີ່​ ສຳ ລັບລາຍຊື່.

ການໂຕ້ຖຽງແມ່ນບັນຊີລາຍຊື່ຂອງ ທີ່ສໍາຄັນ=ມູນຄ່າ ຄູ່ຜົວເມຍແຍກໂດຍ ":". ໃນ ການກັ່ນຕອງ ແລະ psy-rd ທາງເລືອກໃນການ
ທີ່ໃຊ້ ":" ເປັນການແຍກຕົວຂອງມັນເອງ, ໃຊ້ "," ແທນ. ພວກເຂົາເຈົ້າຍອມຮັບມັນເຊັ່ນດຽວກັນນັບຕັ້ງແຕ່
ດົນ​ນານ​ມາ​ແລ້ວ, ແຕ່​ນີ້​ແມ່ນ​ໄດ້​ຖືກ​ເກັບ​ຮັກ​ສາ​ໄວ້ undocumented ສໍາ​ລັບ​ເຫດ​ຜົນ​ບາງ​ຢ່າງ.

ຕົວຢ່າງເພື່ອລະບຸທາງເລືອກການເຂົ້າລະຫັດ libx264 ກັບ ffmpeg:

ffmpeg -i foo.mpg -vcodec libx264 -x264opts keyint=123:min-keyint=20 -an out.mkv

x264-params (NA)
ລົບລ້າງການຕັ້ງຄ່າ x264 ໂດຍໃຊ້ :-separated list of key=value parameters.

ທາງ​ເລືອກ​ນີ້​ແມ່ນ​ເຮັດ​ວຽກ​ຄື​ກັນ​ກັບ​ x264 ເລືອກ, ແຕ່ຖືກຊ້ໍາກັນສໍາລັບ
ຄວາມເຂົ້າກັນໄດ້ກັບຄວາມຍາວຂອງສ້ອມ Libav.

ຕົວຢ່າງເພື່ອລະບຸທາງເລືອກການເຂົ້າລະຫັດ libx264 ກັບ ffmpeg:

ffmpeg -i INPUT -c:v libx264 -x264-params level=30:bframes=0:weightp=0:\
cabac=0:ref=1:vbv-maxrate=768:vbv-bufsize=2000:analyse=all:me=umh:\
no-fast-pskip=1:subq=6:8x8dct=0:trellis=0 OUTPUT

ການເຂົ້າລະຫັດ ffpresets ສໍາລັບການນໍາໃຊ້ທົ່ວໄປແມ່ນສະຫນອງໃຫ້ເພື່ອໃຫ້ພວກເຂົາສາມາດຖືກນໍາໃຊ້ກັບທົ່ວໄປ
presets ລະ​ບົບ (ເຊັ່ນ​: ການ​ຜ່ານ​ pre ທາງ​ເລືອກ).

libx265
ຫໍ່ຕົວເຂົ້າລະຫັດ x265 H.265/HEVC.

ຕົວເຂົ້າລະຫັດນີ້ຮຽກຮ້ອງໃຫ້ມີການມີສ່ວນຫົວຂອງ libx265 ແລະຫ້ອງສະໝຸດໃນລະຫວ່າງ
ການຕັ້ງຄ່າ. ທ່ານຈໍາເປັນຕ້ອງໄດ້ກໍານົດຢ່າງຈະແຈ້ງການກໍ່ສ້າງດ້ວຍ --enable-libx265.

ທາງເລືອກໃນການ

ຕັ້ງໄວ້ລ່ວງ ໜ້າ
ຕັ້ງຄ່າໄວ້ລ່ວງໜ້າ x265.

ປບັ
ຕັ້ງຄ່າພາລາມິເຕີ tune x265.

x265-params
ກໍານົດທາງເລືອກ x265 ໂດຍໃຊ້ບັນຊີລາຍຊື່ຂອງ ທີ່ສໍາຄັນ=ມູນຄ່າ ຄູ່ຜົວເມຍແຍກໂດຍ ":". ເບິ່ງ x265 - ຊ່ວຍ
ສໍາລັບບັນຊີລາຍຊື່ຂອງທາງເລືອກ.

ຕົວຢ່າງເພື່ອລະບຸທາງເລືອກການເຂົ້າລະຫັດ libx265 ກັບ -x265-params:

ffmpeg -i input -c:v libx265 -x265-params crf=26:psy-rd=1 output.mp4

libxvid
ຫໍ່ຕົວເຂົ້າລະຫັດ Xvid MPEG-4 Part 2.

ຕົວເຂົ້າລະຫັດນີ້ຮຽກຮ້ອງໃຫ້ມີການມີສ່ວນຫົວຂອງ libxvidcore ແລະຫ້ອງສະໝຸດໃນລະຫວ່າງ
ການຕັ້ງຄ່າ. ທ່ານຈໍາເປັນຕ້ອງໄດ້ກໍານົດຢ່າງຈະແຈ້ງການກໍ່ສ້າງດ້ວຍ "--enable-libxvid
--enable-gpl".

ຕົວເຂົ້າລະຫັດເດີມ "mpeg4" ຮອງຮັບຮູບແບບ MPEG-4 Part 2, ດັ່ງນັ້ນຜູ້ໃຊ້ສາມາດເຂົ້າລະຫັດນີ້.
ຮູບແບບທີ່ບໍ່ມີຫ້ອງສະຫມຸດນີ້.

ທາງເລືອກໃນການ

ທາງເລືອກຕໍ່ໄປນີ້ແມ່ນສະຫນັບສະຫນູນໂດຍ libxvid wrapper. ບາງທາງເລືອກຕໍ່ໄປນີ້
ຖືກລະບຸໄວ້ແຕ່ບໍ່ໄດ້ບັນທຶກເປັນເອກະສານ, ແລະສອດຄ່ອງກັບທາງເລືອກ codec ທີ່ແບ່ງປັນ. ເບິ່ງ ໄດ້ ຕົວແປງສັນຍານ
ທາງເລືອກໃນການ ພາກ ສໍາລັບເອກະສານຂອງເຂົາເຈົ້າ. ທາງ​ເລືອກ​ທີ່​ແບ່ງ​ປັນ​ອື່ນໆ​ທີ່​ບໍ່​ໄດ້​ລະ​ບຸ​ໄວ້​
ບໍ່ມີຜົນຕໍ່ຕົວເຂົ້າລະຫັດ libxvid.

b
g
qmin
qmax
mpeg_quant
ກະທູ້
bf
b_qfactor
b_qoffset
ທົງ
ຕັ້ງທຸງການເຂົ້າລະຫັດສະເພາະ. ຄ່າທີ່ເປັນໄປໄດ້:

mv4 ໃຊ້ vector motion ສີ່ໂດຍ macroblock.

aic ເປີດໃຊ້ການຄາດເດົາ AC ຄຸນນະພາບສູງ.

ສີຂີ້ເຖົ່າ
ພຽງແຕ່ເຂົ້າລະຫັດລະດັບສີຂີ້ເຖົ່າ.

GMC ເປີດການນຳໃຊ້ການຊົດເຊີຍການເຄື່ອນໄຫວທົ່ວໂລກ (GMC).

qpel
ເປີດໃຊ້ການຊົດເຊີຍການເຄື່ອນໄຫວສີ່ຫລ່ຽມ pixels ລວງ.

cgop
ເປີດໃຊ້ GOP ປິດ.

global_header
ວາງສ່ວນຫົວທົ່ວໂລກໃນ extradata ແທນທຸກໆຄີເຟຣມ.

ໄມ້ຄ້ອນ
me_method
ກໍານົດວິທີການຄາດຄະເນການເຄື່ອນໄຫວ. ຄ່າທີ່ເປັນໄປໄດ້ໃນການຫຼຸດລົງຄໍາສັ່ງຂອງຄວາມໄວແລະ
ການ​ເພີ່ມ​ທະ​ວີ​ການ​ຂອງ​ຄຸນ​ນະ​ພາບ​:

ສູນ
ໃຊ້ບໍ່ມີການຄາດຄະເນການເຄື່ອນໄຫວ (ຄ່າເລີ່ມຕົ້ນ).

ຟອດ
x1
log ເປີດໃຊ້ການຄົ້ນຫາເຂດເພັດແບບພິເສດສໍາລັບ 16x16 blocks ແລະການປັບປຸງເຄິ່ງ pixels
ສໍາລັບຕັນ 16x16. x1 ແລະ log ແມ່ນນາມແຝງສໍາລັບ ຟອດ.

epzs
ເປີດໃຊ້ທຸກສິ່ງທີ່ອະທິບາຍໄວ້ຂ້າງເທິງ, ບວກກັບການຊອກຫາເຂດເພັດຂັ້ນສູງ
8x8 ຕັນ, ການປັບປຸງເຄິ່ງ pixels ສໍາລັບ 8x8 blocks, ແລະການຄາດຄະເນການເຄື່ອນໄຫວກ່ຽວກັບ chroma
ຍົນ.

ຢ່າງເຕັມທີ່
ເປີດໃຊ້ທຸກຢ່າງທີ່ອະທິບາຍໄວ້ຂ້າງເທິງ, ບວກກັບຂະຫຍາຍ 16x16 ແລະ 8x8 blocks
ຄົ້ນຫາ

mbd ຕັ້ງຄ່າຂັ້ນຕອນການຕັດສິນໃຈຂອງ Macroblock. ມູນຄ່າທີ່ເປັນໄປໄດ້ໃນລໍາດັບທີ່ເພີ່ມຂຶ້ນຂອງຄຸນນະພາບ:

ງ່າຍດາຍ
ໃຊ້ macroblock ປຽບທຽບຟັງຊັນ algorithm (ຄ່າເລີ່ມຕົ້ນ).

bits
ເປີດໃຊ້ການປັບແຕ່ງເຄິ່ງ pixel ແລະເຄິ່ງ pixel ຕາມການບິດເບືອນອັດຕາສໍາລັບ 16x16
ຕັນ.

rd ເປີດໃຊ້ທຸກຢ່າງທີ່ອະທິບາຍໄວ້ຂ້າງເທິງ, ບວກກັບອັດຕາການບິດເບືອນທີ່ອີງໃສ່ເຄິ່ງ pixel
ແລະການປັບປ່ຽນ pixels ໃນໄຕມາດສໍາລັບ 8x8 ຕັນ, ແລະອັດຕາການຊອກຫາທີ່ອີງໃສ່ການບິດເບືອນ
ການນໍາໃຊ້ຮູບແບບສີ່ຫລ່ຽມ.

lumi_aq
ເປີດໃຊ້ lumi masking adaptive quantization ເມື່ອຕັ້ງເປັນ 1. ຄ່າເລີ່ມຕົ້ນແມ່ນ 0 (ປິດໃຊ້ງານ).

variance_aq
ເປີດໃຊ້ການປັບປະລິມານການປັບປ່ຽນຄວາມແປປວນ ເມື່ອຕັ້ງເປັນ 1. ຄ່າເລີ່ມຕົ້ນແມ່ນ 0 (ປິດໃຊ້ງານ).

ເມື່ອປະສົມປະສານກັບ lumi_aq, ຄຸນນະພາບຜົນໄດ້ຮັບຈະບໍ່ດີກ່ວາໃດໆຂອງ
ສອງ​ທີ່​ລະ​ບຸ​ໄວ້​ເປັນ​ສ່ວນ​ບຸກ​ຄົນ​. ໃນຄໍາສັບຕ່າງໆອື່ນໆ, ຄຸນນະພາບຜົນໄດ້ຮັບຈະຮ້າຍແຮງກວ່າເກົ່າ
ຫນຶ່ງໃນສອງຜົນກະທົບ.

ຊິມ
ກໍານົດວິທີການສະແດງຄວາມຄ້າຍຄືກັນຂອງໂຄງສ້າງ (SSIM). ຄ່າທີ່ເປັນໄປໄດ້:

ໄປ ປິດການສະແດງຂໍ້ມູນ SSIM.

ສະເລ່ຍ ຜົນຜະລິດສະເລ່ຍ SSIM ໃນຕອນທ້າຍຂອງການເຂົ້າລະຫັດເປັນ stdout. ຮູບ​ແບບ​ການ​ສະ​ແດງ​ໃຫ້​ເຫັນ​
SSIM ສະເລ່ຍແມ່ນ:

SSIM ສະເລ່ຍ: %f

ສໍາລັບຜູ້ໃຊ້ທີ່ບໍ່ຄຸ້ນເຄີຍກັບ C, %f ຫມາຍເຖິງຕົວເລກ float, ຫຼືເລກທົດສະນິຍົມ (ເຊັ່ນ
0.939232).

frame
ສົ່ງຂໍ້ມູນທັງສອງຂໍ້ມູນ SSIM ຕໍ່ເຟຣມໃນລະຫວ່າງການເຂົ້າລະຫັດ ແລະໂດຍສະເລ່ຍ SSIM ໃນຕອນທ້າຍຂອງ
ການເຂົ້າລະຫັດເປັນ stdout. ຮູບແບບຂອງຂໍ້ມູນຕໍ່ເຟຣມແມ່ນ:

SSIM: ສະເລ່ຍ: %1.3f ນາທີ: %1.3f ສູງສຸດ: %1.3f

ສຳລັບຜູ້ໃຊ້ທີ່ບໍ່ຄຸ້ນເຄີຍກັບ C, %1.3f ໝາຍເຖິງຕົວເລກທີ່ເລື່ອນເປັນ 3
ຕົວເລກຫຼັງຈາກຈຸດ (ເຊັ່ນ: 0.932).

ssim_acc
ຕັ້ງຄ່າຄວາມຖືກຕ້ອງຂອງ SSIM. ທາງເລືອກທີ່ຖືກຕ້ອງແມ່ນຈໍານວນເຕັມພາຍໃນຂອບເຂດຂອງ 0-4, ໃນຂະນະທີ່ 0 ໃຫ້
ຜົນໄດ້ຮັບທີ່ຖືກຕ້ອງທີ່ສຸດແລະ 4 ຄອມພິວເຕີ້ໄວທີ່ສຸດ.

mpeg2
ຕົວເຂົ້າລະຫັດວິດີໂອ MPEG-2.

ທາງເລືອກໃນການ

seq_disp_ext integer
ລະບຸວ່າຕົວເຂົ້າລະຫັດຄວນຂຽນ sequence_display_extension ໄປຫາຜົນໄດ້ຮັບ.

-1
ອັດຕະໂນມັດ
ຕັດ​ສິນ​ໃຈ​ອັດ​ຕະ​ໂນ​ມັດ​ທີ່​ຈະ​ຂຽນ​ມັນ​ຫຼື​ບໍ່ (ນີ້​ແມ່ນ​ຄ່າ​ເລີ່ມ​ຕົ້ນ​) ໂດຍ​ການ​ກວດ​ສອບ​ຖ້າ​ຫາກ​ວ່າ​
ຂໍ້ມູນທີ່ຈະຂຽນແມ່ນແຕກຕ່າງຈາກຄ່າເລີ່ມຕົ້ນ ຫຼືຄ່າທີ່ບໍ່ລະບຸ.

0
ບໍ່ເຄີຍ
ບໍ່ເຄີຍຂຽນມັນ.

1
ສະເຫມີໄປ
ສະເຫມີຂຽນມັນ.

png
ຕົວເຂົ້າລະຫັດຮູບພາບ PNG.

ສ່ວນຕົວ ທາງເລືອກໃນການ

dpi integer
ກໍານົດຄວາມຫນາແຫນ້ນທາງດ້ານຮ່າງກາຍຂອງ pixels, ເປັນຈຸດຕໍ່ນິ້ວ, ບໍ່ໄດ້ຕັ້ງເປັນຄ່າເລີ່ມຕົ້ນ

ppm integer
ກໍານົດຄວາມຫນາແຫນ້ນທາງດ້ານຮ່າງກາຍຂອງ pixels, ເປັນຈຸດຕໍ່ແມັດ, ບໍ່ໄດ້ຕັ້ງເປັນຄ່າເລີ່ມຕົ້ນ

ProRes
ຕົວເຂົ້າລະຫັດ Apple ProRes.

FFmpeg ມີ 2 ຕົວເຂົ້າລະຫັດ ProRes, ຕົວເຂົ້າລະຫັດ prores-aw ແລະ prores-ks. ຕົວເຂົ້າລະຫັດທີ່ໃຊ້ແລ້ວ
ສາມາດເລືອກໄດ້ດ້ວຍຕົວເລືອກ "-vcodec".

ສ່ວນຕົວ ທາງເລືອກໃນການ ສໍາລັບການ prores-ks

ຂໍ້​ມູນ integer
ເລືອກໂປຣໄຟລ໌ ProRes ເພື່ອເຂົ້າລະຫັດ

proxy
lt
ມາດຕະຖານ
hq
4444
quant_mat integer
ເລືອກຕາຕະລາງປະລິມານ.

ອັດຕະໂນມັດ
Default
proxy
lt
ມາດຕະຖານ
hq

ຖ້າຕັ້ງ ອັດຕະໂນມັດ, ມາຕຣິກເບື້ອງທີ່ກົງກັບໂປຣໄຟລ໌ຈະຖືກເລືອກ. ຖ້າບໍ່ໄດ້ກໍານົດ, ໄດ້
matrix ໃຫ້​ຄຸນ​ນະ​ພາບ​ທີ່​ສູງ​ທີ່​ສຸດ​, Default, ຈະຖືກເລືອກ.

bits_per_mb integer
ຈໍານວນບິດທີ່ຈະຈັດສັນສໍາລັບການຂຽນລະຫັດຫນຶ່ງ macroblock. ໂປຣໄຟລ໌ທີ່ແຕກຕ່າງກັນໃຊ້ລະຫວ່າງ 200
ແລະ 2400 bits ຕໍ່ macroblock, ສູງສຸດແມ່ນ 8000.

mbs_per_slice integer
ຈໍານວນຂອງ macroblocks ໃນແຕ່ລະ slice (1-8); ຄ່າເລີ່ມຕົ້ນ (8) ຄວນຈະດີໃນ
ເກືອບທຸກສະຖານະການ.

ຜູ້ຂາຍ string
ລົບລ້າງ ID ຜູ້ຂາຍ 4-byte. ID ຜູ້ຂາຍແບບກຳນົດເອງເຊັ່ນ apl0 ຈະອ້າງເອົາກະແສ
ຖືກຜະລິດໂດຍຕົວເຂົ້າລະຫັດ Apple.

alpha_bits integer
ລະບຸຈໍານວນບິດສໍາລັບອົງປະກອບອັນຟາ. ຄ່າທີ່ເປັນໄປໄດ້ແມ່ນ 0, 8 ແລະ 16ທີ່ຢູ່ ການນໍາໃຊ້ 0
ເພື່ອປິດການເຂົ້າລະຫັດຍົນ alpha.

ຄວາມໄວ ພິຈາລະນາ

ໃນ​ຮູບ​ແບບ​ການ​ເລີ່ມ​ຕົ້ນ​ຂອງ​ການ​ປະ​ຕິ​ບັດ​ການ​ຕົວ​ເຂົ້າ​ລະ​ຫັດ​ມີ​ການ​ໃຫ້​ກຽດ​ຂໍ້​ຈໍາ​ກັດ​ຂອງ​ກອບ (ເຊັ່ນ​ວ່າ​ບໍ່​ໄດ້​
ຜະ​ລິດ​ຕະ​ພັນ​ທີ່​ມີ​ຂະ​ຫນາດ​ໃຫຍ່​ກ​່​ວາ​ການ​ຮ້ອງ​ຂໍ​) ໃນ​ຂະ​ນະ​ທີ່​ຍັງ​ເຮັດ​ໃຫ້​ຮູບ​ພາບ​ຜົນ​ຜະ​ລິດ​ເປັນ​ທີ່​ດີ​
ເປັນ​ໄປ​ໄດ້. ກອບທີ່ບັນຈຸລາຍລະອຽດຂະຫນາດນ້ອຍຫຼາຍແມ່ນຍາກທີ່ຈະບີບອັດແລະ
encoder ຈະໃຊ້ເວລາຫຼາຍໃນການຊອກຫາປະລິມານທີ່ເຫມາະສົມສໍາລັບແຕ່ລະ slice.

ການ​ຕັ້ງ​ຄ່າ​ສູງ​ກວ່າ​ bits_per_mb ຂີດຈໍາກັດຈະປັບປຸງຄວາມໄວ.

ສໍາລັບຄວາມໄວການເຂົ້າລະຫັດໄວທີ່ສຸດ, ກໍານົດ qscale ພາລາມິເຕີ (4 ແມ່ນຄ່າທີ່ແນະນໍາ) ແລະ
ຢ່າຕັ້ງຂໍ້ຈໍາກັດຂະຫນາດ.

libkvazaar
ຕົວເຂົ້າລະຫັດ Kvazaar H.265/HEVC.

ຮຽກຮ້ອງໃຫ້ມີການມີສ່ວນຫົວຂອງ libkvazaar ແລະຫ້ອງສະຫມຸດໃນລະຫວ່າງການຕັ້ງຄ່າ. ເຈົ້າ​ຕ້ອງ​ການ
ເພື່ອກໍານົດຢ່າງຈະແຈ້ງການກໍ່ສ້າງດ້ວຍ --enable-libkvazaar.

ທາງເລືອກໃນການ

b ກໍານົດອັດຕາບິດວິດີໂອເປົ້າຫມາຍໃນ bit/s ແລະເປີດໃຊ້ການຄວບຄຸມອັດຕາ.

ກະທູ້
ກໍານົດຈໍານວນຂອງຫົວຂໍ້ການເຂົ້າລະຫັດ.

kvazaar-params
ກໍານົດຕົວກໍານົດການ kvazaar ເປັນບັນຊີລາຍຊື່ຂອງ ຊື່=ມູນຄ່າ ຄູ່ທີ່ຂັ້ນດ້ວຍເຄື່ອງໝາຍຈຸດ (,). ເບິ່ງ
kvazaar ເອກະສານສໍາລັບບັນຊີລາຍຊື່ຂອງທາງເລືອກ.

ຫົວຂໍ້ຍ່ອຍ ເຂົ້າລະຫັດ


dvdsub
codec ນີ້ encodes ຮູບແບບ subtitle bitmap ທີ່ຖືກນໍາໃຊ້ໃນດີວີດີ. ໂດຍປົກກະຕິພວກເຂົາແມ່ນ
ເກັບໄວ້ໃນຄູ່ໄຟລ໌ VOBSUB (*.idx + *.sub), ແລະພວກມັນຍັງສາມາດຖືກນໍາໃຊ້ໃນໄຟລ໌ Matroska.

ທາງເລືອກໃນການ

even_rows_fix
ເມື່ອຕັ້ງເປັນ 1, ເປີດໃຊ້ວຽກອ້ອມຮອບທີ່ເຮັດໃຫ້ຈໍານວນ pixels ແຖວແມ້ແຕ່ຢູ່ໃນທັງຫມົດ
ຄຳບັນຍາຍ. ນີ້ແກ້ໄຂບັນຫາກັບຜູ້ນບາງທີ່ຕັດອອກແຖວລຸ່ມຖ້າຫາກວ່າ
ຕົວເລກແມ່ນຄີກ. ການເຮັດວຽກປະມານພຽງແຕ່ເພີ່ມແຖວທີ່ມີຄວາມໂປ່ງໃສຢ່າງເຕັມທີ່ຖ້າຈໍາເປັນ. ໄດ້
overhead ແມ່ນຕໍ່າ, ໂດຍປົກກະຕິຫນຶ່ງ byte ຕໍ່ຄໍາບັນຍາຍໂດຍສະເລ່ຍ.

ໂດຍຄ່າເລີ່ມຕົ້ນ, ການເຮັດວຽກຮອບນີ້ຈະຖືກປິດໃຊ້ງານ.

BITSTREAM FILTERS


ໃນເວລາທີ່ທ່ານ configure FFmpeg build ຂອງທ່ານ, ການກັ່ນຕອງ bitstream ສະຫນັບສະຫນູນທັງຫມົດແມ່ນເປີດໂດຍ
ຄ່າເລີ່ມຕົ້ນ. ທ່ານ​ສາ​ມາດ​ລາຍ​ຊື່​ທັງ​ຫມົດ​ທີ່​ມີ​ຢູ່​ໂດຍ​ການ​ນໍາ​ໃຊ້​ທາງ​ເລືອກ​ການ​ຕັ້ງ​ຄ່າ "--list-bsfs​"​.

ທ່ານ​ສາ​ມາດ​ປິດ​ການ​ທໍາ​ງານ​ການ​ກັ່ນ​ຕອງ bitstream ທັງ​ຫມົດ​ໂດຍ​ນໍາ​ໃຊ້​ທາງ​ເລືອກ​ການ​ຕັ້ງ​ຄ່າ "--disable-bsfs​"​, ແລະ
ເລືອກເປີດໃຊ້ການກັ່ນຕອງບິດສະຕຣີມໂດຍໃຊ້ຕົວເລືອກ "--enable-bsf=BSF", ຫຼືທ່ານສາມາດ
ປິດການໃຊ້ງານຕົວກອງ bitstream ໂດຍສະເພາະໂດຍໃຊ້ຕົວເລືອກ "--disable-bsf=BSF".

ຕົວເລືອກ "-bsfs" ຂອງເຄື່ອງມື ff* ຈະສະແດງລາຍຊື່ຂອງ bitstream ທັງໝົດທີ່ຮອງຮັບ
ຕົວກອງລວມຢູ່ໃນການກໍ່ສ້າງຂອງທ່ານ.

ເຄື່ອງ​ມື ff* ມີ​ທາງ​ເລືອກ -bsf ຖືກ​ນໍາ​ໃຊ້​ຕໍ່​ການ​ສະ​ຕ​ຣີມ, ເອົາ​ບັນ​ຊີ​ລາຍ​ການ​ທີ່​ແຍກ​ດ້ວຍ​ເຄື່ອງ​ຫມາຍ​ຈຸດ​ຂອງ
ຕົວກອງ, ເຊິ່ງຕົວກໍານົດການປະຕິບັດຕາມຊື່ການກັ່ນຕອງຫຼັງຈາກ '='.

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

ຂ້າງລຸ່ມນີ້ແມ່ນລາຍລະອຽດຂອງຕົວກອງ bitstream ທີ່ມີຢູ່ໃນປັດຈຸບັນ, ກັບພວກມັນ
ຕົວກໍານົດການ, ຖ້າມີ.

aac_adtstoasc
ແປງ MPEG-2/4 AAC ADTS ເປັນ MPEG-4 Audio Specific Configuration bitstream filter.

ຕົວກອງນີ້ສ້າງ MPEG-4 AudioSpecificConfig ຈາກສ່ວນຫົວ MPEG-2/4 ADTS ແລະເອົາອອກ.
ສ່ວນຫົວ ADTS.

ນີ້ແມ່ນຕ້ອງການຕົວຢ່າງເມື່ອຄັດລອກ AAC stream ຈາກຖັງ ADTS AAC ດິບໄປຫາ a
FLV ຫຼື​ໄຟລ​໌ MOV / MP4​.

ຈູບ
ເອົາສູນ padding ໃນຕອນທ້າຍຂອງຊຸດ.

dump_extra
ເພີ່ມຂໍ້ມູນພິເສດໃສ່ຈຸດເລີ່ມຕົ້ນຂອງແພັກເກັດທີ່ຖືກກັ່ນຕອງ.

ການໂຕ້ຖຽງເພີ່ມເຕີມລະບຸວ່າແພັກເກັດໃດຄວນຖືກກັ່ນຕອງ. ມັນຍອມຮັບ
ຄຸນຄ່າ:

a ເພີ່ມຂໍ້ມູນພິເສດໃສ່ແພັກເກັດຫຼັກທັງໝົດ, ແຕ່ວ່າພຽງແຕ່ຖ້າ local_header ຖືກຕັ້ງຢູ່ໃນ ທຸງ2 ຕົວແປງສັນຍານ
ຊ່ອງຂໍ້ມູນ

k ເພີ່ມຂໍ້ມູນພິເສດໃສ່ແພັກເກັດຫຼັກທັງໝົດ

e ເພີ່ມຂໍ້ມູນພິເສດໃສ່ແພັກເກັດທັງໝົດ

ຖ້າບໍ່ລະບຸແມ່ນຖືວ່າ k.

ຕົວຢ່າງຕໍ່ໄປນີ້ ffmpeg ຄໍາສັ່ງບັງຄັບ header ທົ່ວໂລກ (ດັ່ງນັ້ນຈຶ່ງປິດການໃຊ້ງານບຸກຄົນ
packet headers) ໃນແພັກເກັດ H.264 ທີ່ສ້າງຂຶ້ນໂດຍຕົວເຂົ້າລະຫັດ "libx264", ແຕ່ແກ້ໄຂພວກມັນ.
ໂດຍການເພີ່ມສ່ວນຫົວທີ່ເກັບໄວ້ໃນ extradata ໃສ່ຊຸດກະແຈ:

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

h264_mp4toannexb
ປ່ຽນເປັນ H.264 bitstream ຈາກຮູບແບບ prefixed ຄວາມຍາວເພື່ອເລີ່ມຕົ້ນລະຫັດ prefixed mode (ເປັນ
ກໍານົດໄວ້ໃນເອກະສານຊ້ອນທ້າຍ B ຂອງຂໍ້ກໍານົດ ITU-T H.264).

ອັນນີ້ແມ່ນຕ້ອງການໂດຍບາງຮູບແບບການຖ່າຍທອດ, ໂດຍປົກກະຕິແມ່ນຮູບແບບການຖ່າຍທອດ MPEG-2
("mpegts").

ຍົກ​ຕົວ​ຢ່າງ​ເພື່ອ remux ໄຟລ​໌ MP4 ທີ່​ມີ H.264 stream ກັບ​ຮູບ​ແບບ mpegts ກັບ​ ffmpeg,
ທ່ານສາມາດນໍາໃຊ້ຄໍາສັ່ງ:

ffmpeg -i INPUT.mp4 -codec ສຳເນົາ -bsf:v h264_mp4toannexb OUTPUT.ts

imxdump
ແກ້ໄຂບິດສະຕຣີມໃຫ້ພໍດີກັບ MOV ແລະສາມາດນຳໃຊ້ໄດ້ໂດຍຕົວຖອດລະຫັດ Final Cut Pro. ນີ້
ການກັ່ນຕອງໃຊ້ກັບຕົວແປງສັນຍານ mpeg2video ເທົ່ານັ້ນ, ແລະເບິ່ງຄືວ່າບໍ່ຈໍາເປັນສໍາລັບ Final Cut Pro 7
ແລະໃຫມ່ກວ່າກັບທີ່ເຫມາະສົມ -tag:v.

ສໍາລັບຕົວຢ່າງ, ເພື່ອ remux 30 MB / ວິນາທີ NTSC IMX ກັບ MOV:

ffmpeg -i input.mxf -c ສຳເນົາ -bsf:v imxdump -tag:v mx3n output.mov

mjpeg2jpeg
ປ່ຽນແພັກເກັດ MJPEG/AVI1 ເປັນແພັກເກັດ JPEG/JFIF ເຕັມ.

MJPEG ແມ່ນຕົວແປງສັນຍານວິດີໂອທີ່ແຕ່ລະກອບວິດີໂອເປັນຮູບ JPEG. ໄດ້
ເຟຣມບຸກຄົນສາມາດໄດ້ຮັບການສະກັດໂດຍບໍ່ມີການສູນເສຍ, ເຊັ່ນ: ໂດຍ

ffmpeg -i ../some_mjpeg.avi -c:v copy frames_%d.jpg

ແຕ່ຫນ້າເສຍດາຍ, ຊິ້ນສ່ວນເຫຼົ່ານີ້ແມ່ນຮູບພາບ JPEG ທີ່ບໍ່ຄົບຖ້ວນ, ເພາະວ່າພວກເຂົາຂາດສ່ວນ DHT.
ຕ້ອງການສໍາລັບການຖອດລະຫັດ. ອ້າງອີງຈາກ
<http://www.digitalpreservation.gov/formats/fdd/fdd000063.shtml>:

Avery Lee, ຂຽນໃນກຸ່ມຂ່າວ rec.video.desktop ໃນປີ 2001, ໃຫ້ຄໍາເຫັນວ່າ "MJPEG, ຫຼື
ຢ່າງ​ຫນ້ອຍ MJPEG ໃນ AVIs ມີ MJPG fourcc, ຖືກ​ຈໍາ​ກັດ JPEG ທີ່​ມີ​ການ​ສ້ອມ​ແຊມ -- ແລະ
*ຖືກຍົກເວັ້ນ* -- ຕາຕະລາງ Huffman. JPEG ຈະຕ້ອງເປັນ YCbCr colorspace, ມັນຕ້ອງເປັນ 4: 2: 2, ແລະມັນ
ຈະຕ້ອງໃຊ້ການເຂົ້າລະຫັດ Huffman ພື້ນຖານ, ບໍ່ແມ່ນເລກເລກ ຫຼືກ້າວໜ້າ. . . . ເຈົ້າສາມາດແທ້ໆ
ສະກັດກອບ MJPEG ແລະຖອດລະຫັດພວກມັນດ້ວຍຕົວຖອດລະຫັດ JPEG ປົກກະຕິ, ແຕ່ທ່ານຕ້ອງ
prepend the DHT segment ໃຫ້ເຂົາເຈົ້າ, ຖ້າບໍ່ດັ່ງນັ້ນ decoder ຈະບໍ່ມີຄວາມຄິດທີ່ຈະ decompress ໃດ.
ຂໍ້ມູນ. ຕາຕະລາງທີ່ແນ່ນອນທີ່ຈໍາເປັນແມ່ນໄດ້ຖືກມອບໃຫ້ຢູ່ໃນ OpenDML spec."

ການກັ່ນຕອງ bitstream ນີ້ແກ້ໄຂສ່ວນຫົວຂອງເຟຣມທີ່ສະກັດມາຈາກສະຕຣີມ MJPEG
(ຖືລະຫັດຫົວ AVI1 ແລະຂາດສ່ວນ DHT) ເພື່ອຜະລິດ JPEG ທີ່ມີຄຸນວຸດທິຄົບຖ້ວນ.
ຮູບພາບຕ່າງໆ.

ffmpeg -i mjpeg-movie.avi -c:v ສຳເນົາ -bsf:v mjpeg2jpeg frame_%d.jpg
exiftran -i -9 ກອບ*.jpg
ffmpeg -i frame_%d.jpg -c:v ສຳເນົາ rotated.avi

mjpega_dump_header
movsub
mp3_header_decompress
mpeg4_unpack_bframes
ຖອດກອບ B-frames ແບບ DivX.

ກອບ B-frames ແບບ DivX ບໍ່ແມ່ນ MPEG-4 ທີ່ຖືກຕ້ອງ ແລະເປັນພຽງການແກ້ໄຂບັນຫາສໍາລັບການແຕກຫັກ.
ວິດີໂອສໍາລັບລະບົບຍ່ອຍ Windows. ພວກເຂົາເຈົ້າໃຊ້ພື້ນທີ່ຫຼາຍ, ສາມາດເຮັດໃຫ້ເກີດບັນຫາການຊິງ AV ເລັກນ້ອຍ, ຕ້ອງການ
ພະລັງງານ CPU ຫຼາຍເພື່ອຖອດລະຫັດ (ເວັ້ນເສຍແຕ່ວ່າຜູ້ນມີບາງແຖວຮູບທີ່ຖອດລະຫັດເພື່ອຊົດເຊີຍ
the 2,0,2,0 frame per packet style) ແລະເຮັດໃຫ້ເກີດບັນຫາຖ້າຫາກວ່າຄັດລອກເຂົ້າໄປໃນຖັງມາດຕະຖານ
ຄືກັບ mp4 ຫຼື mpeg-ps/ts, ເພາະວ່າຕົວຖອດລະຫັດ MPEG-4 ອາດຈະບໍ່ສາມາດຖອດລະຫັດພວກມັນໄດ້, ເພາະວ່າພວກມັນ.
MPEG-4 ບໍ່ຖືກຕ້ອງ.

ສໍາ​ລັບ​ຕົວ​ຢ່າງ​ການ​ແກ້​ໄຂ​ໄຟລ​໌ AVI ທີ່​ມີ MPEG​-4 ສະ​ຕ​ຣີມ​ທີ່​ມີ DivX ແບບ B-frames packed
ການນໍາໃຊ້ ffmpeg, ທ່ານສາມາດນໍາໃຊ້ຄໍາສັ່ງ:

ffmpeg -i INPUT.avi -codec ສຳເນົາ -bsf:v mpeg4_unpack_bframes OUTPUT.avi

ສຽງຮົບກວນ
ທໍາລາຍເນື້ອໃນຂອງຊອງໂດຍບໍ່ມີການທໍາລາຍພາຊະນະ. ສາມາດນໍາໃຊ້ສໍາລັບການ fuzzing ຫຼື
ການທົດສອບຄວາມຢືດຢຸ່ນ / ການປິດບັງຄວາມຜິດພາດ.

ພາລາມິເຕີ: ສະຕຣິງຕົວເລກ, ເຊິ່ງຄ່າຂອງມັນກ່ຽວຂ້ອງກັບຄວາມຖີ່ຂອງການອອກໄບທ໌
ດັດແກ້. ດັ່ງນັ້ນ, ຄ່າຕໍ່າກວ່າ ຫຼືເທົ່າກັບ 0 ແມ່ນຖືກຫ້າມ, ແລະຕໍ່າກວ່າຫຼາຍ
bytes ເລື້ອຍໆຈະຖືກດັດແກ້, ໂດຍ 1 ຫມາຍຄວາມວ່າທຸກໆ byte ຈະຖືກດັດແກ້.

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

ໃຊ້ການດັດແກ້ກັບທຸກໆ byte.

remove_extra

ຮູບແບບ OPTIONS


ຫໍສະຫມຸດ libavformat ສະຫນອງບາງທາງເລືອກທົ່ວໂລກທົ່ວໄປ, ເຊິ່ງສາມາດຕັ້ງຄ່າໄດ້ທັງຫມົດ
muxers ແລະ demuxers. ນອກຈາກນັ້ນແຕ່ລະ muxer ຫຼື demuxer ອາດຈະສະຫນັບສະຫນູນອັນທີ່ເອີ້ນວ່າເອກະຊົນ
ທາງເລືອກ, ເຊິ່ງສະເພາະສໍາລັບອົງປະກອບນັ້ນ.

ທາງເລືອກອາດຈະຖືກກໍານົດໂດຍການລະບຸ -ທາງເລືອກ ມູນຄ່າ ໃນເຄື່ອງມື FFmpeg, ຫຼືໂດຍການຕັ້ງ
ຄ່າຢ່າງຈະແຈ້ງໃນຕົວເລືອກ "AVFormatContext" ຫຼືໃຊ້ libavutil/opt.h API ສໍາລັບ
ການນຳໃຊ້ໂປຣແກຣມ.

ບັນຊີລາຍຊື່ຂອງທາງເລືອກທີ່ສະຫນັບສະຫນູນດັ່ງຕໍ່ໄປນີ້:

ທຸງການບິນ ທົງ (ວັດສະດຸປ້ອນ / ຜົນຜະລິດ)
ຄ່າທີ່ເປັນໄປໄດ້:

ໂດຍກົງ
ຫຼຸດຜ່ອນ buffering.

ສຳຫຼວດຂະໜາດ integer (ການປ້ອນຂໍ້ມູນ)
ກໍານົດຂະຫນາດ probing ໃນ bytes, ເຊັ່ນ: ຂະຫນາດຂອງຂໍ້ມູນໃນການວິເຄາະເພື່ອໃຫ້ໄດ້ຮັບນ້ໍາ
ຂໍ້ມູນ. ມູນຄ່າທີ່ສູງຂຶ້ນຈະເຮັດໃຫ້ການກວດສອບຂໍ້ມູນເພີ່ມເຕີມໃນກໍລະນີທີ່ມັນເປັນ
ກະແຈກກະຈາຍເຂົ້າໄປໃນສາຍນ້ໍາ, ແຕ່ຈະເພີ່ມເວລາ latency. ຕ້ອງເປັນຈຳນວນບໍ່ໜ້ອຍ
ຫຼາຍກວ່າ 32. ມັນແມ່ນ 5000000 ໂດຍຄ່າເລີ່ມຕົ້ນ.

ຂະໜາດແພັກເກັດ integer (output)
ກໍານົດຂະຫນາດແພັກເກັດ.

ທຸງ ທົງ (ວັດສະດຸປ້ອນ / ຜົນຜະລິດ)
ຕັ້ງທຸງຮູບແບບ.

ຄ່າທີ່ເປັນໄປໄດ້:

ignidx
ບໍ່ສົນໃຈດັດສະນີ.

ສະແຫວງຫາໄວ
ເປີດໃຊ້ການຊອກຫາໄວ, ແຕ່ບໍ່ຖືກຕ້ອງສໍາລັບບາງຮູບແບບ.

Genpts
ສ້າງ PTS.

nofillin
ຢ່າຕື່ມຄ່າທີ່ຂາດຫາຍໄປທີ່ສາມາດຄິດໄລ່ໄດ້ແນ່ນອນ.

noparse
ປິດການໃຊ້ງານ AVParsers, ອັນນີ້ຕ້ອງການ "+nofillin" ຄືກັນ.

igndts
ບໍ່ສົນໃຈ DTS.

ຍົກເລີກ
ຖິ້ມເຟຣມທີ່ເສຍຫາຍ.

ຄັດ
ພະຍາຍາມແຊກແຊງແພັກເກັດຜົນຜະລິດໂດຍ DTS.

ເຝົ້າ
ຢ່າລວມຂໍ້ມູນດ້ານຂ້າງ.

ກາມ
ເປີດໃຊ້ RTP MP4A-LATM payload.

nobuffer
ຫຼຸດເວລາແຝງທີ່ແນະນຳໂດຍ buffering ທາງເລືອກ

bitexact
ພຽງແຕ່ຂຽນຂໍ້ມູນ platform-, build- ແລະ time-independent. ນີ້ຮັບປະກັນວ່າໄຟລ໌
ແລະ checksums ຂໍ້ມູນແມ່ນສາມາດແຜ່ພັນໄດ້ແລະກົງກັນລະຫວ່າງເວທີ. ການ​ນໍາ​ໃຊ້​ຕົ້ນ​ຕໍ​ຂອງ​ຕົນ​
ແມ່ນສໍາລັບການທົດສອບ regression.

ຊອກຫາ 2 ຢ່າງ integer (ການປ້ອນຂໍ້ມູນ)
ອະ​ນຸ​ຍາດ​ໃຫ້​ຊອກ​ຫາ​ທີ່​ບໍ່​ແມ່ນ keyframes ໃນ​ລະ​ດັບ demuxer ໃນ​ເວ​ລາ​ທີ່​ສະ​ຫນັບ​ສະ​ຫນູນ​ຖ້າ​ຫາກ​ວ່າ​ຕັ້ງ​ເປັນ 1. Default
ແມ່ນ 0.

ໄລຍະເວລາການວິເຄາະ integer (ການປ້ອນຂໍ້ມູນ)
ລະບຸຈໍານວນໄມໂຄວິນາທີທີ່ຖືກວິເຄາະເພື່ອກວດສອບການປ້ອນຂໍ້ມູນ. ມູນຄ່າທີ່ສູງຂຶ້ນຈະ
ເຮັດ​ໃຫ້​ການ​ກວດ​ສອບ​ຂໍ້​ມູນ​ທີ່​ຖືກ​ຕ້ອງ​ຫຼາຍ​ຂຶ້ນ​, ແຕ່​ຈະ​ເພີ່ມ​ທະ​ວີ​ການ latency​. ມັນຕັ້ງໄວ້ໃນຕອນຕົ້ນ
5,000,000 microseconds = 5 ວິນາທີ.

cryptokey ເລກຖານສິບຫົກ string (ການປ້ອນຂໍ້ມູນ)
ຕັ້ງລະຫັດຖອດລະຫັດ.

ດັດຊະນີ integer (ການປ້ອນຂໍ້ມູນ)
ຕັ້ງໜ່ວຍຄວາມຈຳສູງສຸດທີ່ໃຊ້ສຳລັບດັດຊະນີເວລາ (ຕໍ່ກະແສ).

rtbufsize integer (ການປ້ອນຂໍ້ມູນ)
ຕັ້ງຫນ່ວຍຄວາມຈໍາສູງສຸດທີ່ໃຊ້ສໍາລັບການ buffering ເຟຣມເວລາຈິງ.

fdebug ທົງ (ວັດສະດຸປ້ອນ / ຜົນຜະລິດ)
ພິມຂໍ້ມູນດີບັກສະເພາະ.

ຄ່າທີ່ເປັນໄປໄດ້:

ts
max_delay integer (ວັດສະດຸປ້ອນ / ຜົນຜະລິດ)
ກໍານົດການຊັກຊ້າ muxing ຫຼື demuxing ສູງສຸດໃນ microseconds.

fpsprobesize integer (ການປ້ອນຂໍ້ມູນ)
ກໍານົດຈໍານວນເຟຣມທີ່ໃຊ້ໃນການສືບສວນ fps.

audio_preload integer (output)
ຕັ້ງ microseconds ທີ່ແພັກເກັດສຽງຄວນຖືກ interleaved ກ່ອນຫນ້າ.

chunk_ໄລຍະເວລາ integer (output)
ກໍານົດ microseconds ສໍາລັບແຕ່ລະ chunk.

chunk_size integer (output)
ກໍານົດຂະຫນາດໃນ bytes ສໍາລັບແຕ່ລະ chunk.

err_detect, f_err_detect ທົງ (ການປ້ອນຂໍ້ມູນ)
ຕັ້ງທຸງກວດຫາຄວາມຜິດພາດ. "f_err_detect" ຖືກຍົກເລີກ ແລະຄວນຈະຖືກນຳໃຊ້ຜ່ານທາງ
ໄດ້ ffmpeg ເຄື່ອງມື.

ຄ່າທີ່ເປັນໄປໄດ້:

ກວດເຊັກ
ຢືນຢັນ CRCs ທີ່ຝັງໄວ້.

bitstream
ກວດ​ສອບ​ຄວາມ​ແຕກ​ຕ່າງ​ສະ​ເພາະ bitstream​.

buffer
ກວດພົບຄວາມຍາວບິດສະຕຣີມທີ່ບໍ່ຖືກຕ້ອງ.

ລະເບີດ
ຍົກເລີກການຖອດລະຫັດໃນການກວດສອບຄວາມຜິດພາດເລັກນ້ອຍ.

ລະມັດລະວັງ
ພິ​ຈາ​ລະ​ນາ​ສິ່ງ​ທີ່​ລະ​ເມີດ spec ແລະ​ບໍ່​ໄດ້​ເຫັນ​ຢູ່​ໃນ​ທໍາ​ມະ​ຊາດ​ເປັນ​
ຄວາມຜິດພາດ.

compliant
ພິ​ຈາ​ລະ​ນາ​ຂໍ້​ກໍາ​ນົດ​ທັງ​ຫມົດ​ທີ່​ບໍ່​ສອດ​ຄ່ອງ​ກັບ​ຄວາມ​ຜິດ​ພາດ​.

ຮຸກຮານ
ພິຈາລະນາສິ່ງທີ່ຕົວເຂົ້າລະຫັດທີ່ດີບໍ່ຄວນເຮັດເປັນຄວາມຜິດພາດ.

max_interleave_delta integer (output)
ກໍານົດໄລຍະເວລາ buffering ສູງສຸດສໍາລັບການ interleaving. ໄລຍະເວລາແມ່ນສະແດງອອກໃນ
microseconds, ແລະເລີ່ມຕົ້ນເປັນ 1000000 (1 ວິນາທີ).

ເພື່ອຮັບປະກັນວ່າສາຍນ້ໍາທັງຫມົດຖືກແຊກແຊງຢ່າງຖືກຕ້ອງ, libavformat ຈະລໍຖ້າຈົນກ່ວາມັນ
ມີຢ່າງໜ້ອຍໜຶ່ງແພັກເກັດສຳລັບແຕ່ລະສະຕຣີມ ກ່ອນທີ່ຈະຂຽນແພັກເກັດໃດນຶ່ງໃສ່
ໄຟລ໌ຜົນຜະລິດ. ໃນເວລາທີ່ສາຍນ້ໍາບາງແມ່ນ "sparse" (ເຊັ່ນ: ມີຊ່ອງຫວ່າງຂະຫນາດໃຫຍ່ລະຫວ່າງ
packets ສໍາເລັດ), ນີ້ສາມາດສົ່ງຜົນໃຫ້ buffering ຫຼາຍເກີນໄປ.

ຊ່ອງຂໍ້ມູນນີ້ກໍານົດຄວາມແຕກຕ່າງສູງສຸດລະຫວ່າງເວລາຂອງເວລາທໍາອິດແລະ
ແພັກເກັດສຸດທ້າຍໃນແຖວ muxing, ຂ້າງເທິງທີ່ libavformat ຈະອອກແພັກເກັດ
ໂດຍບໍ່ຄໍານຶງເຖິງວ່າມັນໄດ້ຈັດຄິວຊຸດສໍາລັບສາຍນ້ໍາທັງຫມົດ.

ຖ້າຕັ້ງເປັນ 0, libavformat ຈະສືບຕໍ່ buffering packets ຈົນກ່ວາມັນມີ packet ສໍາລັບ.
ແຕ່ລະການຖ່າຍທອດ, ໂດຍບໍ່ຄໍານຶງເຖິງຄວາມແຕກຕ່າງກັນເວລາສູງສຸດລະຫວ່າງ buffed
ຊອງ.

use_wallclock_as_timestamps integer (ການປ້ອນຂໍ້ມູນ)
ໃຊ້ໂມງຕິດຝາເປັນເຄື່ອງໝາຍເວລາ.

avoid_negative_ts integer (output)
ຄ່າທີ່ເປັນໄປໄດ້:

make_non_negative
ປ່ຽນເວລາສະແຕມເພື່ອເຮັດໃຫ້ພວກມັນບໍ່ເປັນລົບ. ຍັງສັງເກດວ່ານີ້ມີຜົນກະທົບເທົ່ານັ້ນ
ການສະແຕມເວລາທາງລົບນຳໜ້າ, ແລະບໍ່ແມ່ນການສະແຕມເວລາລົບທີ່ບໍ່ແມ່ນ monotononic.

make_zero
Shift timestamps ດັ່ງນັ້ນເວລາທໍາອິດແມ່ນ 0.

ອັດຕະໂນມັດ (ຄ່າເລີ່ມຕົ້ນ)
ເປີດໃຊ້ການປ່ຽນເມື່ອຕ້ອງການຮູບແບບເປົ້າໝາຍ.

disabled
ປິດໃຊ້ງານການປ່ຽນເວລາ.

ເມື່ອການປ່ຽນຖືກເປີດໃຊ້ງານ, ເວລາຜົນຜະລິດທັງໝົດຈະຖືກປ່ຽນດ້ວຍຈຳນວນດຽວກັນ. ສຽງ,
ວິ​ດີ​ໂອ​, ແລະ​ຄໍາ​ບັນ​ຍາຍ desynching ແລະ​ຄວາມ​ແຕກ​ຕ່າງ​ຂອງ​ເວ​ລາ​ທີ່​ເປັນ​ພີ່​ນ້ອງ​ກັນ​ໄດ້​ຖືກ​ຮັກ​ສາ​ໄວ້​
ປຽບທຽບກັບວິທີການທີ່ເຂົາເຈົ້າຈະເປັນໂດຍບໍ່ມີການປ່ຽນ.

skip_initial_bytes integer (ການປ້ອນຂໍ້ມູນ)
ກໍານົດຈໍານວນ bytes ເພື່ອຂ້າມກ່ອນທີ່ຈະອ່ານ header ແລະ frames ຖ້າຕັ້ງເປັນ 1. Default ແມ່ນ
0.

correct_ts_overflow integer (ການປ້ອນຂໍ້ມູນ)
ແກ້ໄຂການທັບເວລາດຽວທີ່ລົ້ນຖ້າຕັ້ງເປັນ 1. ຄ່າເລີ່ມຕົ້ນແມ່ນ 1.

flush_packets integer (output)
ລ້າງກະແສ I/O ທີ່ຢູ່ເບື້ອງຫຼັງຫຼັງຈາກແຕ່ລະແພັກເກັດ. Default 1 ເປີດໃຊ້ມັນ, ແລະມີ
ຜົນກະທົບຂອງການຫຼຸດຜ່ອນ latency ໄດ້; 0 ປິດການໃຊ້ງານມັນແລະອາດຈະເພີ່ມປະສິດທິພາບເລັກນ້ອຍໃນ
ບາງກໍລະນີ.

output_ts_offset ຊົດເຊີຍ (output)
ກໍານົດເວລາຜົນຜະລິດຊົດເຊີຍ.

ຊົດເຊີຍ ຕ້ອງເປັນໄລຍະເວລາສະເພາະ, ເບິ່ງ ໄດ້ ທີ່ໃຊ້ເວລາ ໄລຍະເວລາ ສ່ວນ in ໄດ້
ffmpeg-utils(1​) ຄູ່ມື.

ການຊົດເຊີຍແມ່ນເພີ່ມໂດຍ muxer ໃສ່ເວລາຜົນຜະລິດ.

ການກໍານົດການຊົດເຊີຍໃນທາງບວກຫມາຍຄວາມວ່າສາຍນ້ໍາທີ່ສອດຄ້ອງກັນແມ່ນຊັກຊ້າ bt
ໄລຍະເວລາທີ່ລະບຸໄວ້ໃນ ຊົດເຊີຍ. ຄ່າເລີ່ມຕົ້ນແມ່ນ 0 (ຫມາຍຄວາມວ່າບໍ່ມີການຊົດເຊີຍ
ນຳໃຊ້).

format_whitelist ບັນຊີລາຍຊື່ (ການປ້ອນຂໍ້ມູນ)
"," ແຍກລາຍຊື່ຂອງ demuxers ທີ່ໄດ້ຮັບອະນຸຍາດ. ໂດຍຄ່າເລີ່ມຕົ້ນທັງຫມົດແມ່ນອະນຸຍາດ.

dump_separator string (ການປ້ອນຂໍ້ມູນ)
Separator ໃຊ້ເພື່ອແຍກທົ່ງນາທີ່ພິມຢູ່ໃນເສັ້ນຄໍາສັ່ງກ່ຽວກັບ Stream
ຕົວກໍານົດການ. ຕົວຢ່າງເພື່ອແຍກຊ່ອງຂໍ້ມູນດ້ວຍແຖວໃໝ່ ແລະຫຍໍ້ໜ້າ:

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

ຮູບແບບ ນ້ໍາ specifiers
ຕົວລະບຸຮູບແບບການຖ່າຍທອດອະນຸຍາດໃຫ້ເລືອກໜຶ່ງ ຫຼືຫຼາຍກວ່າໜຶ່ງສະຕຣີມທີ່ກົງກັບສະເພາະ
ຄຸນສົມບັດ.

ຮູບແບບທີ່ເປັນໄປໄດ້ຂອງຕົວລະບຸການຖ່າຍທອດແມ່ນ:

stream_index
ກົງກັບກະແສກັບດັດຊະນີນີ້.

stream_type[:stream_index]
stream_type ແມ່ນຫນຶ່ງໃນຕໍ່ໄປນີ້: 'v' ສໍາລັບວິດີໂອ, 'a' ສໍາລັບສຽງ, 's' ສໍາລັບຄໍາບັນຍາຍ, 'd'
ສໍາລັບຂໍ້ມູນ, ແລະ 't' ສໍາລັບໄຟລ໌ແນບ. ຖ້າ stream_index ແມ່ນໃຫ້, ຫຼັງຈາກນັ້ນມັນກົງກັບ
ໝາຍເລກການຖ່າຍທອດ stream_index ປະເພດນີ້. ຖ້າບໍ່ດັ່ງນັ້ນ, ມັນກົງກັບກະແສທັງໝົດນີ້
ປະເພດ

p:program_id[:stream_index]
If stream_index ແມ່ນໃຫ້, ຫຼັງຈາກນັ້ນມັນກົງກັບນ້ໍາທີ່ມີຕົວເລກ stream_index ໃນ
ໂຄງການທີ່ມີ id program_id. ຖ້າບໍ່ດັ່ງນັ້ນ, ມັນກົງກັບກະແສທັງໝົດໃນໂປຣແກຣມ.

#stream_id
ຈັບຄູ່ການຖ່າຍທອດໂດຍ ID ຮູບແບບສະເພາະ.

ຄວາມຫມາຍທີ່ແນ່ນອນຂອງຕົວກໍານົດການຖ່າຍທອດແມ່ນຖືກກໍານົດໂດຍ
"avformat_match_stream_specifier()" ຟັງຊັນທີ່ປະກາດໃນ libavformat/avformat.h
header

DEMUXERS


Demuxers ແມ່ນອົງປະກອບທີ່ກໍານົດໄວ້ໃນ FFmpeg ທີ່ສາມາດອ່ານສາຍມັນຕິມີເດຍຈາກ a
ປະເພດໄຟລ໌ໂດຍສະເພາະ.

ໃນເວລາທີ່ທ່ານ configure FFmpeg build ຂອງທ່ານ, ທັງຫມົດ demuxers ສະຫນັບສະຫນູນໄດ້ຖືກເປີດໃຊ້ໂດຍຄ່າເລີ່ມຕົ້ນ.
ທ່ານສາມາດລາຍຊື່ອັນທີ່ມີຢູ່ທັງໝົດໂດຍໃຊ້ຕົວເລືອກການຕັ້ງຄ່າ "--list-demuxers".

ທ່ານສາມາດປິດການໃຊ້ງານ demuxers ທັງຫມົດໂດຍໃຊ້ຕົວເລືອກການຕັ້ງຄ່າ "--disable-demuxers", ແລະ.
ເລືອກເປີດໃຊ້ demuxer ດຽວດ້ວຍທາງເລືອກ "--enable-demuxer=DEMUXER", ຫຼືປິດການໃຊ້ງານ
ມັນມີທາງເລືອກ "--disable-demuxer=DEMUXER".

ຕົວເລືອກ "-formats" ຂອງເຄື່ອງມື ff* ຈະສະແດງລາຍຊື່ຂອງ demuxers ທີ່ເປີດໃຊ້ງານ.

ລາຍລະອຽດຂອງບາງ demuxers ທີ່ມີຢູ່ໃນປັດຈຸບັນດັ່ງຕໍ່ໄປນີ້.

aa
ຮູບແບບສຽງ 2, 3, ແລະ 4 demuxer.

demuxer ນີ້ຖືກນໍາໃຊ້ເພື່ອ demux ຮູບແບບສຽງ 2, 3, ແລະ 4 (.aa).

applehttp
Apple HTTP Live Streaming demuxer.

demuxer ນີ້ນໍາສະເຫນີ AVStreams ທັງຫມົດຈາກສາຍນ້ໍາ variant ທັງຫມົດ. ພາກສະຫນາມ id ຖືກກໍານົດເປັນ
ຕົວເລກດັດຊະນີອັດຕາບິດ. ໂດຍການຕັ້ງຄ່າການຍົກເລີກທຸງໃນ AVStreams (ໂດຍການກົດ 'a'
ຫຼື 'v' ໃນ ffplay), ຜູ້ໂທສາມາດຕັດສິນໃຈວ່າຈະຮັບສາຍພັນອັນໃດແທ້. ໄດ້
ອັດຕາບິດທັງໝົດຂອງຕົວແປທີ່ສະຕຣີມຂຶ້ນນຳແມ່ນມີໃຫ້ຢູ່ໃນລະຫັດເມຕາເດຕາ
ຊື່ວ່າ "variant_bitrate".

apng
Animated Portable Network Graphics demuxer.

demuxer ນີ້ຖືກນໍາໃຊ້ເພື່ອ demux ໄຟລ໌ APNG. ສ່ວນຫົວທັງໝົດ, ແຕ່ລາຍເຊັນ PNG, ເຖິງ (ແຕ່
ບໍ່ລວມ) fcTL chunk ທໍາອິດຖືກສົ່ງເປັນ extradata. ຫຼັງຈາກນັ້ນ, ເຟຣມຖືກແບ່ງອອກ
ເປັນຕ່ອນທັງໝົດລະຫວ່າງ fcTL ສອງອັນ, ຫຼືລະຫວ່າງ fcTL ສຸດທ້າຍ ແລະ IEND chunks.

-ignore_loop bool
ບໍ່ສົນໃຈຕົວແປ loop ໃນໄຟລ໌ຖ້າຕັ້ງ.

-max_fps int
ອັດຕາເຟຣມສູງສຸດໃນເຟຣມຕໍ່ວິນາທີ (0 ໂດຍບໍ່ຈຳກັດ).

-default_fps int
ຄ່າເລີ່ມຕົ້ນໃນເຟຣມຕໍ່ວິນາທີເມື່ອບໍ່ມີການລະບຸໄວ້ໃນໄຟລ໌ (0 ຄວາມຫມາຍ
ໄວເທົ່າທີ່ຈະໄວໄດ້).

asf
Advanced Systems Format demuxer.

demuxer ນີ້​ຖືກ​ນໍາ​ໃຊ້​ເພື່ອ demux ໄຟລ​໌ ASF ແລະ​ສະ​ຕ​ຣີມ​ເຄືອ​ຂ່າຍ MMS​.

-no_resync_search bool
ຢ່າພະຍາຍາມ synchronize ໂດຍການຊອກຫາລະຫັດເລີ່ມຕົ້ນທາງເລືອກທີ່ແນ່ນອນ.

concat
Demuxer script concatenation virtual.

demuxer ນີ້ອ່ານບັນຊີລາຍຊື່ຂອງໄຟລ໌ແລະຄໍາແນະນໍາອື່ນໆຈາກໄຟລ໌ຂໍ້ຄວາມແລະ demuxes ໃຫ້ເຂົາເຈົ້າ
ຫຼັງ​ຈາກ​ທີ່​ອື່ນໆ​, ເປັນ​ຖ້າ​ຫາກ​ວ່າ​ຊອງ​ທັງ​ຫມົດ​ຂອງ​ເຂົາ​ເຈົ້າ​ໄດ້​ຮັບ​ການ muxed ເຂົ້າ​ກັນ​.

ເວລາໃນໄຟລ໌ຖືກປັບເພື່ອໃຫ້ໄຟລ໌ທໍາອິດເລີ່ມຕົ້ນທີ່ 0 ແລະແຕ່ລະຕໍ່ໄປ
ໄຟລ໌ເລີ່ມຕົ້ນບ່ອນທີ່ອັນກ່ອນຫນ້າສໍາເລັດ. ໃຫ້ສັງເກດວ່າມັນຖືກເຮັດໃນທົ່ວໂລກແລະອາດຈະເຮັດໃຫ້ເກີດ
ຊ່ອງຫວ່າງຖ້າສາຍນ້ໍາທັງຫມົດບໍ່ມີຄວາມຍາວຄືກັນ.

ໄຟລ໌ທັງໝົດຕ້ອງມີສະຕຣີມດຽວກັນ (ຕົວແປງສັນຍານດຽວກັນ, ຖານເວລາດຽວກັນ, ແລະອື່ນໆ).

ໄລຍະເວລາຂອງແຕ່ລະໄຟລ໌ຖືກນໍາໃຊ້ເພື່ອປັບເວລາຂອງໄຟລ໌ຕໍ່ໄປ: ຖ້າ
ໄລ​ຍະ​ເວ​ລາ​ແມ່ນ​ບໍ່​ຖືກ​ຕ້ອງ (ເນື່ອງ​ຈາກ​ວ່າ​ມັນ​ໄດ້​ຖືກ​ຄິດ​ໄລ່​ໂດຍ​ນໍາ​ໃຊ້ bit-rate ຫຼື​ເນື່ອງ​ຈາກ​ວ່າ​ໄຟລ​໌​ແມ່ນ​
truncated, ສໍາລັບການຍົກຕົວຢ່າງ), ມັນສາມາດເຮັດໃຫ້ເກີດການປອມ. ຄໍາສັ່ງ "ໄລຍະເວລາ" ສາມາດຖືກນໍາໃຊ້ເພື່ອ
override ໄລຍະເວລາທີ່ເກັບໄວ້ໃນແຕ່ລະໄຟລ໌.

syntax

ສະຄຣິບເປັນໄຟລ໌ຂໍ້ຄວາມໃນ Extended-ASCII, ມີຄໍາສັ່ງຫນຶ່ງຕໍ່ແຖວ. ເສັ້ນ​ຫວ່າງ​ເປົ່າ​,
ຊ່ອງຫວ່າງຊັ້ນນໍາ ແລະເສັ້ນທີ່ເລີ່ມຕົ້ນດ້ວຍ '#' ແມ່ນຖືກລະເລີຍ. ຄໍາສັ່ງຕໍ່ໄປນີ້ແມ່ນ
ຮັບຮູ້:

"ໄຟລ໌ ເສັ້ນທາງ"
ເສັ້ນທາງໄປຫາໄຟລ໌ທີ່ຈະອ່ານ; ຕົວອັກສອນພິເສດ ແລະຊ່ອງຫວ່າງຕ້ອງຖືກຫລົບໜີດ້ວຍ backslash
ຫຼືວົງຢືມດຽວ.

ຄຳແນະນຳທີ່ກ່ຽວຂ້ອງກັບໄຟລ໌ຕໍ່ໄປທັງໝົດນຳໃຊ້ກັບໄຟລ໌ນັ້ນ.

"ffconcat ສະບັບພາສາ 1.0 "
ກໍານົດປະເພດສະຄິບແລະສະບັບ. ມັນຍັງກໍານົດ ປອດໄພ ທາງ​ເລືອກ 1 ຖ້າ​ຫາກ​ວ່າ​ມັນ​ແມ່ນ​ເພື່ອ​
ຄ່າເລີ່ມຕົ້ນຂອງມັນ -1.

ເພື່ອເຮັດໃຫ້ FFmpeg ຮັບຮູ້ຮູບແບບອັດຕະໂນມັດ, ຄໍາສັ່ງນີ້ຈະຕ້ອງປາກົດຢ່າງແນ່ນອນ
ຄືກັບ (ບໍ່ມີພື້ນທີ່ເພີ່ມເຕີມ ຫຼື byte-order-mark) ໃນແຖວທຳອິດຂອງສະຄຣິບ.

"ໄລຍະເວລາ ຍາກ"
ໄລຍະເວລາຂອງໄຟລ໌. ຂໍ້ມູນນີ້ສາມາດຖືກກໍານົດຈາກໄຟລ໌; ການ​ລະ​ບຸ​ມັນ​
ໃນທີ່ນີ້ອາດຈະມີປະສິດທິພາບຫຼາຍຂຶ້ນຫຼືຊ່ວຍໄດ້ຖ້າຂໍ້ມູນຈາກໄຟລ໌ບໍ່ມີ
ຫຼືຖືກຕ້ອງ.

ຖ້າໄລຍະເວລາຖືກກໍານົດສໍາລັບໄຟລ໌ທັງຫມົດ, ຫຼັງຈາກນັ້ນມັນກໍ່ເປັນໄປໄດ້ທີ່ຈະຊອກຫາທັງຫມົດ
ວິດີໂອທີ່ປະສົມປະສານ.

"ຈຸດ ເວລາ"
ຢູ່ໃນຈຸດຂອງໄຟລ໌. ເມື່ອ demuxer ເປີດໄຟລ໌ມັນທັນທີຊອກຫາການ
ເວລາທີ່ລະບຸໄວ້. ການສະແຫວງຫາແມ່ນເຮັດໄດ້ເພື່ອໃຫ້ສາຍນ້ໍາທັງຫມົດຖືກນໍາສະເຫນີຢ່າງສໍາເລັດຜົນ
ຢູ່ໃນຈຸດ.

ຄໍາສັ່ງນີ້ໃຊ້ໄດ້ດີທີ່ສຸດກັບຕົວແປງສັນຍານພາຍໃນກອບ, ເພາະວ່າສໍາລັບຕົວແປງສັນຍານທີ່ບໍ່ແມ່ນພາຍໃນ
ປົກກະຕິແລ້ວທ່ານຈະໄດ້ຮັບແພັກເກັດພິເສດກ່ອນຈຸດຕົວຈິງແລະເນື້ອໃນທີ່ຖອດລະຫັດ
ສ່ວນຫຼາຍອາດຈະປະກອບດ້ວຍກອບກ່ອນ In point ຄືກັນ.

ສໍາລັບແຕ່ລະໄຟລ໌, packets ກ່ອນໄຟລ໌ In point ຈະມີ timestamps ຫນ້ອຍກ່ວາ
ການຄິດໄລ່ເວລາເລີ່ມຕົ້ນຂອງໄຟລ໌ (ລົບໃນກໍລະນີຂອງໄຟລ໌ທໍາອິດ), ແລະ
ໄລຍະເວລາຂອງໄຟລ໌ (ຖ້າບໍ່ໄດ້ລະບຸໄວ້ໃນຄໍາສັ່ງ "ໄລຍະເວລາ") ຈະຖືກຫຼຸດລົງ
ອີງໃສ່ຈຸດທີ່ລະບຸໄວ້ຂອງເຂົາເຈົ້າ.

ເນື່ອງຈາກແພັກເກັດທີ່ມີທ່າແຮງກ່ອນຈຸດທີ່ລະບຸໄວ້, ເວລາແພັກເກັດອາດຈະ
ທັບຊ້ອນກັນລະຫວ່າງສອງໄຟລ໌ທີ່ເຊື່ອມຕໍ່ກັນ.

"ຈຸດຫມາຍປາຍທາງ ເວລາ"
ຈຸດ​ອອກ​ຂອງ​ໄຟລ​໌​. ເມື່ອ demuxer ຮອດເວລາການຖອດລະຫັດທີ່ລະບຸໄວ້ໃນ
ນ້ໍາໃດໆ, ມັນຈັດການມັນເປັນການສິ້ນສຸດຂອງເງື່ອນໄຂໄຟລ໌ແລະຂ້າມກະແສ
ແລະຊຸດທີ່ຍັງເຫຼືອທັງໝົດຈາກສາຍນ້ຳທັງໝົດ.

ຈຸດອອກແມ່ນສະເພາະ, ຊຶ່ງຫມາຍຄວາມວ່າ demuxer ຈະບໍ່ສົ່ງອອກແພັກເກັດທີ່ມີ a
ການຖອດລະຫັດເວລາຫຼາຍກວ່າ ຫຼືເທົ່າກັບຈຸດອອກ.

ຄຳສັ່ງນີ້ໃຊ້ໄດ້ດີທີ່ສຸດກັບຕົວແປງສັນຍານພາຍໃນເຟຣມ ແລະຮູບແບບທີ່ມີກະແສທັງໝົດ
ແຊກແຊງຢ່າງແຫນ້ນຫນາ. ສໍາລັບ codecs ທີ່ບໍ່ແມ່ນ intra frame ປົກກະຕິແລ້ວທ່ານຈະໄດ້ຮັບເພີ່ມເຕີມ
ຊຸດທີ່ມີເວລາການນໍາສະເຫນີຫຼັງຈາກຈຸດ Out ດັ່ງນັ້ນເນື້ອຫາທີ່ຖອດລະຫັດຈະ
ສ່ວນຫຼາຍອາດຈະປະກອບດ້ວຍກອບຫຼັງຈາກຈຸດ Out ຄືກັນ. ຖ້າສາຍນ້ໍາຂອງເຈົ້າບໍ່ແຫນ້ນ
interleaved ທ່ານອາດຈະບໍ່ໄດ້ຮັບຊອງທັງຫມົດຈາກສາຍນ້ໍາທັງຫມົດກ່ອນທີ່ຈະ Out point ແລະທ່ານ
ອາດຈະພຽງແຕ່ສາມາດຖອດລະຫັດການຖ່າຍທອດທີ່ໄວທີ່ສຸດຈົນກ່ວາ Out point.

ໄລຍະເວລາຂອງໄຟລ໌ (ຖ້າບໍ່ໄດ້ລະບຸໄວ້ໃນຄໍາສັ່ງ "ໄລຍະເວລາ") ຈະເປັນ
ຫຼຸດລົງໂດຍອີງໃສ່ຈຸດ Out ທີ່ກໍານົດຂອງພວກເຂົາ.

"file_packet_metadata key=value"
ເມຕາເດຕາຂອງແພັກເກັດຂອງໄຟລ໌. metadata ທີ່ລະບຸໄວ້ຈະຖືກຕັ້ງຄ່າສໍາລັບແຕ່ລະໄຟລ໌
ແພັກເກັດ. ທ່ານສາມາດລະບຸຄໍາສັ່ງນີ້ຫຼາຍຄັ້ງເພື່ອເພີ່ມ metadata ຫຼາຍ
ການອອກສຽງ.

"ກະແສ"
ແນະນຳການຖ່າຍທອດໃນໄຟລ໌ສະເໝືອນ. ຄໍາສັ່ງທີ່ກ່ຽວຂ້ອງກັບການຖ່າຍທອດຕໍ່ໄປທັງໝົດ
ນຳໃຊ້ກັບກະແສທີ່ແນະນຳຫຼ້າສຸດ. ຄຸນສົມບັດການຖ່າຍທອດບາງອັນຈະຕ້ອງຖືກຕັ້ງເພື່ອ
ອະ​ນຸ​ຍາດ​ໃຫ້​ກໍາ​ນົດ​ສະ​ຕ​ຣີມ​ທີ່​ກົງ​ກັນ​ໃນ​ໄຟລ​໌​ຍ່ອຍ​ໄດ້​. ຖ້າບໍ່ມີສາຍນ້ໍາຖືກກໍານົດຢູ່ໃນ
script, streams ຈາກໄຟລ໌ທໍາອິດໄດ້ຖືກຄັດລອກ.

"exact_stream_id id"
ຕັ້ງ id ຂອງ stream ໄດ້. ຖ້າຄໍາສັ່ງນີ້ຖືກມອບໃຫ້, ສະຕິງກັບ
id ທີ່ສອດຄ້ອງກັນໃນໄຟລ໌ຍ່ອຍຈະຖືກໃຊ້. ນີ້ແມ່ນເປັນປະໂຫຍດໂດຍສະເພາະສໍາລັບ MPEG-PS
(VOB) ໄຟລ໌, ບ່ອນທີ່ຄໍາສັ່ງຂອງສາຍນ້ໍາແມ່ນບໍ່ຫນ້າເຊື່ອຖື.

ທາງເລືອກໃນການ

demuxer ນີ້ຍອມຮັບທາງເລືອກຕໍ່ໄປນີ້:

ປອດໄພ
ຖ້າຕັ້ງເປັນ 1, ປະຕິເສດເສັ້ນທາງໄຟລ໌ທີ່ບໍ່ປອດໄພ. ເສັ້ນທາງໄຟລ໌ແມ່ນຖືວ່າປອດໄພຖ້າມັນບໍ່ມີ
ປະກອບມີຂໍ້ກໍານົດຂອງໂປໂຕຄອນແລະເປັນພີ່ນ້ອງກັນແລະອົງປະກອບທັງຫມົດມີພຽງແຕ່
ຕົວອັກສອນຈາກຊຸດຕົວອັກສອນແບບເຄື່ອນທີ່ (ຕົວອັກສອນ, ຕົວເລກ, ໄລຍະເວລາ, ຂີດກ້ອງ ແລະ
hyphen) ແລະບໍ່ມີໄລຍະເວລາໃນຕອນຕົ້ນຂອງອົງປະກອບ.

ຖ້າຕັ້ງເປັນ 0, ຊື່ໄຟລ໌ໃດກໍ່ຖືກຍອມຮັບ.

ຄ່າເລີ່ມຕົ້ນແມ່ນ -1, ມັນເທົ່າກັບ 1 ຖ້າຮູບແບບຖືກກວດສອບອັດຕະໂນມັດ ແລະ 0
ຖ້າບໍ່ດັ່ງນັ້ນ.

auto_convert
ຖ້າຕັ້ງເປັນ 1, ພະຍາຍາມເຮັດການແປງອັດຕະໂນມັດໃນຂໍ້ມູນແພັກເກັດເພື່ອເຮັດໃຫ້ການຖ່າຍທອດ
ສາມາດຕໍ່ກັນໄດ້. ຄ່າເລີ່ມຕົ້ນແມ່ນ 1.

ໃນປັດຈຸບັນ, ການແປງພຽງແຕ່ແມ່ນການເພີ່ມຕົວກອງ bitstream h264_mp4toannexb ໃສ່
H.264 ຖ່າຍທອດໃນຮູບແບບ MP4. ນີ້ເປັນສິ່ງຈໍາເປັນໂດຍສະເພາະຖ້າມີການແກ້ໄຂ
ປ່ຽນແປງ.

. flv flv.
Adobe Flash ຮູບແບບວິດີໂອ demuxer.

demuxer ນີ້​ຖືກ​ນໍາ​ໃຊ້​ເພື່ອ demux ໄຟລ​໌ FLV ແລະ​ສະ​ຕ​ຣີມ​ເຄືອ​ຂ່າຍ RTMP​.

-flv_metadata bool
ຈັດສັນການຖ່າຍທອດຕາມເນື້ອໃນອາເຣ onMetaData.

libgme
ຫ້ອງສະໝຸດ Game Music Emu ແມ່ນບ່ອນເກັບມ້ຽນໄຟລ໌ເພງວີດີໂອເກມ.

ເບິ່ງhttp://code.google.com/p/game-music-emu/> ສຳ ລັບຂໍ້ມູນເພີ່ມເຕີມ.

ບາງໄຟລ໌ມີຫຼາຍເພງ. demuxer ຈະເລືອກເອົາເພງທໍາອິດໂດຍຄ່າເລີ່ມຕົ້ນ. ໄດ້
track_index ທາງ​ເລືອກ​ສາ​ມາດ​ຖືກ​ນໍາ​ໃຊ້​ເພື່ອ​ຄັດ​ເລືອກ​ເອົາ​ເພງ​ທີ່​ແຕກ​ຕ່າງ​ກັນ​. ຕິດຕາມດັດສະນີເລີ່ມຕົ້ນທີ່ 0. The
demuxer ສົ່ງອອກຈໍານວນຂອງເພງເປັນ ການຕິດຕາມ ການປ້ອນຂໍ້ມູນ meta.

ສໍາລັບໄຟລ໌ຂະຫນາດໃຫຍ່ຫຼາຍ, ໄດ້ ຂະໜາດສູງສຸດ ທາງ​ເລືອກ​ອາດ​ຈະ​ຕ້ອງ​ໄດ້​ຮັບ​ການ​ປັບ​.

libquvi
ຫຼິ້ນສື່ຈາກການບໍລິການອິນເຕີເນັດໂດຍໃຊ້ໂຄງການ quvi.

demuxer ຍອມຮັບ a ຮູບແບບ ທາງເລືອກທີ່ຈະຮ້ອງຂໍໃຫ້ມີຄຸນນະພາບສະເພາະ. ມັນ​ແມ່ນ​ຕັ້ງ​ໄວ້​ໃນ​ຕອນ​ຕົ້ນ​
ທີ່ດີທີ່ສຸດ.

ເບິ່ງhttp://quvi.sourceforge.net/> ສຳ ລັບຂໍ້ມູນເພີ່ມເຕີມ.

FFmpeg ຕ້ອງໄດ້ຮັບການສ້າງດ້ວຍ "--enable-libquvi" ເພື່ອໃຫ້ demuxer ນີ້ຖືກເປີດໃຊ້.

gif
Animated GIF demuxer.

ມັນຍອມຮັບທາງເລືອກຕໍ່ໄປນີ້:

min_delay
ກໍານົດຄວາມລ່າຊ້າທີ່ຖືກຕ້ອງຂັ້ນຕ່ໍາລະຫວ່າງເຟຣມໃນຫຼາຍຮ້ອຍວິນາທີ. ໄລຍະແມ່ນ 0 ຫາ
6000. ຄ່າເລີ່ມຕົ້ນແມ່ນ 2.

max_gif_delay
ກໍານົດຄວາມລ່າຊ້າທີ່ຖືກຕ້ອງສູງສຸດລະຫວ່າງເຟຣມໃນຮ້ອຍວິນາທີ. ໄລຍະແມ່ນ 0 ຫາ
65535. ຄ່າເລີ່ມຕົ້ນແມ່ນ 65535 (ເກືອບສິບເອັດນາທີ), ຄ່າສູງສຸດທີ່ອະນຸຍາດໂດຍ
ສະ​ເພາະ.

default_delay
ກໍານົດຄວາມລ່າຊ້າເລີ່ມຕົ້ນລະຫວ່າງເຟຣມໃນຫຼາຍຮ້ອຍວິນາທີ. ຊ່ວງແມ່ນ 0 ຫາ 6000.
ຄ່າເລີ່ມຕົ້ນແມ່ນ 10.

ignore_loop
ໄຟລ໌ GIF ສາມາດບັນຈຸຂໍ້ມູນເພື່ອ loop ຈໍານວນເວລາທີ່ແນ່ນອນ (ຫຼືບໍ່ມີຂອບເຂດ).
If ignore_loop ຖືກຕັ້ງເປັນ 1, ຫຼັງຈາກນັ້ນການຕັ້ງຄ່າ loop ຈາກ input ຈະຖືກລະເລີຍແລະ
looping ຈະບໍ່ເກີດຂຶ້ນ. ຖ້າຕັ້ງເປັນ 0, ຫຼັງຈາກນັ້ນການ looping ຈະເກີດຂຶ້ນແລະຈະວົງຈອນຕົວເລກ
ເວລາອີງຕາມ GIF. ຄ່າເລີ່ມຕົ້ນແມ່ນ 1.

ຕົວຢ່າງ, ດ້ວຍການກັ່ນຕອງການວາງຊ້ອນ, ວາງ GIF ທີ່ບໍ່ສິ້ນສຸດໃນວິດີໂອອື່ນ:

ffmpeg -i input.mp4 -ignore_loop 0 -i input.gif -filter_complex overlay=shortest=1 out.mkv

ໃຫ້ສັງເກດວ່າໃນຕົວຢ່າງຂ້າງເທິງທາງເລືອກທີ່ສັ້ນທີ່ສຸດສໍາລັບການກັ່ນຕອງການຊ້ອນກັນຖືກນໍາໃຊ້ເພື່ອສິ້ນສຸດ
ວິດີໂອຜົນຜະລິດໃນຄວາມຍາວຂອງໄຟລ໌ input ທີ່ສັ້ນທີ່ສຸດ, ເຊິ່ງໃນກໍລະນີນີ້ແມ່ນ input.mp4 as
GIF ໃນຕົວຢ່າງນີ້ loops infinite.

image2
ໄຟລ໌ຮູບພາບ demuxer.

demuxer ນີ້ອ່ານຈາກບັນຊີລາຍຊື່ຂອງໄຟລ໌ຮູບພາບທີ່ລະບຸໄວ້ໂດຍຮູບແບບ. syntax ແລະ
ຄວາມຫມາຍຂອງຮູບແບບແມ່ນກໍານົດໂດຍທາງເລືອກ ຮູບແບບ _ ປະເພດ.

ຮູບແບບອາດມີຄຳຕໍ່ທ້າຍທີ່ໃຊ້ເພື່ອກຳນົດຮູບແບບຂອງ
ຮູບ​ພາບ​ທີ່​ມີ​ຢູ່​ໃນ​ໄຟລ​໌​.

ຂະຫນາດ, ຮູບແບບ pixels ລວງ, ແລະຮູບແບບຂອງແຕ່ລະຮູບພາບຈະຕ້ອງຄືກັນສໍາລັບທັງຫມົດ
ໄຟລ໌ຢູ່ໃນລໍາດັບ.

demuxer ນີ້ຍອມຮັບທາງເລືອກຕໍ່ໄປນີ້:

framerate
ກໍານົດອັດຕາເຟຣມສໍາລັບການຖ່າຍທອດວິດີໂອ. ມັນຕັ້ງໄວ້ເປັນ 25.

loop
ຖ້າຕັ້ງເປັນ 1, loop over the input. ຄ່າເລີ່ມຕົ້ນແມ່ນ 0.

ຮູບແບບ _ ປະເພດ
ເລືອກປະເພດຮູບແບບທີ່ໃຊ້ເພື່ອຕີຄວາມໝາຍຊື່ໄຟລ໌ທີ່ສະໜອງໃຫ້.

ຮູບແບບ _ ປະເພດ ຍອມຮັບຫນຶ່ງໃນຄຸນຄ່າຕໍ່ໄປນີ້.

none
ປິດ​ການ​ໃຊ້​ງານ​ການ​ຈັບ​ຄູ່​ຮູບ​ແບບ​, ດັ່ງ​ນັ້ນ​ວິ​ດີ​ໂອ​ຈະ​ມີ​ພຽງ​ແຕ່​ລະ​ບຸ​ໄວ້​
ຮູບ. ທ່ານຄວນໃຊ້ທາງເລືອກນີ້ຖ້າທ່ານບໍ່ຕ້ອງການສ້າງລໍາດັບຈາກ
ຫຼາຍຮູບ ແລະຊື່ໄຟລ໌ຂອງທ່ານອາດມີຕົວອັກສອນທີ່ມີຮູບແບບພິເສດ.

ລໍາດັບ
ເລືອກປະເພດຮູບແບບລໍາດັບ, ໃຊ້ເພື່ອລະບຸລໍາດັບຂອງໄຟລ໌ທີ່ຖືກດັດສະນີໂດຍ
ຕົວເລກລໍາດັບ.

ຮູບແບບລໍາດັບອາດມີສະຕຣິງ "%d" ຫຼື "%0Nd ", ເຊິ່ງລະບຸ
ຕໍາແຫນ່ງຂອງຕົວອັກສອນທີ່ເປັນຕົວແທນຂອງຕົວເລກລໍາດັບໃນແຕ່ລະຊື່ໄຟລ໌
ຈັບຄູ່ໂດຍຮູບແບບ. ຖ້າແບບຟອມ "%d0Nd" ຖືກນໍາໃຊ້, ສະຕຣິງທີ່ເປັນຕົວແທນຂອງ
ຕົວເລກໃນແຕ່ລະຊື່ໄຟລ໌ແມ່ນ 0-padded ແລະ N ແມ່ນຕົວເລກທັງໝົດຂອງ 0-padded digits
ເປັນຕົວແທນຂອງຕົວເລກ. ສາມາດລະບຸຕົວອັກສອນ '%' ໃນຮູບແບບ
ດ້ວຍສະຕຣິງ "%%".

ຖ້າຮູບແບບລໍາດັບມີ "%d" ຫຼື "%0Nd ", ຊື່ໄຟລ໌ທໍາອິດຂອງໄຟລ໌
ບັນຊີລາຍຊື່ທີ່ລະບຸໄວ້ໂດຍຮູບແບບຈະຕ້ອງມີຕົວເລກລວມຢູ່ໃນລະຫວ່າງ
start_number ແລະ start_number+start_number_range-1, ແລະຕົວເລກຕໍ່ໄປນີ້ທັງໝົດ
ຈະຕ້ອງເປັນລໍາດັບ.

ສໍາລັບຕົວຢ່າງ, ຮູບແບບ "img-%03d.bmp" ຈະກົງກັບລໍາດັບຂອງຊື່ໄຟລ໌ຂອງ.
ຮູບແບບ img-001.bmp, img-002.bmp, ... , img-010.bmp, ແລະອື່ນໆ; ຮູບແບບ
"i%%m%%g-%d.jpg" loading="lazy" ຈະກົງກັບລໍາດັບຂອງຊື່ໄຟລ໌ຂອງແບບຟອມ. i%m%g-1.jpg,
i%m%g-2.jpg, ... , i%m%g-10.jpg, ແລະອື່ນໆ

ຈື່ໄວ້ວ່າຮູບແບບຈະຕ້ອງບໍ່ຈຳເປັນມີ "%d" ຫຼື "%0Nd", ສໍາລັບການຍົກຕົວຢ່າງ
ປ່ຽນໄຟລ໌ຮູບພາບດຽວ img.jpeg ທ່ານ​ສາ​ມາດ​ໃຊ້​ຄໍາ​ສັ່ງ​:

ffmpeg -i img.jpeg img.png

ໂລກ
ເລືອກປະເພດຮູບແບບສັນຍາລັກຂອງຮູບດາວ.

ຮູບແບບດັ່ງກ່າວຖືກຕີຄວາມຄືກັບຮູບແບບ "glob()". ນີ້ແມ່ນພຽງແຕ່ເລືອກໄດ້ຖ້າຫາກວ່າ
libavformat ໄດ້ຖືກລວບລວມດ້ວຍການສະຫນັບສະຫນູນ globbing.

glob_sequence (ຄັດຄ້ານ, ຈະ be ລຶບອອກແລ້ວ)
ເລືອກຮູບສັນຍາລັກຮູບດາວແບບປະສົມ/ລຳດັບ.

ຖ້າ​ຫາກ​ວ່າ​ສະ​ບັບ libavformat ຂອງ​ທ່ານ​ໄດ້​ຖືກ​ສັງ​ລວມ​ໂດຍ​ການ​ສະ​ຫນັບ​ສະ​ຫນູນ globbing​, ແລະ​
ຮູບແບບທີ່ສະໜອງໃຫ້ມີຢ່າງໜ້ອຍໜຶ່ງຕົວອັກສອນ meta glob ໃນບັນດາ "%*?[]{}" ນັ້ນຄື
ກ່ອນໜ້າດ້ວຍ "%", ຮູບແບບຖືກຕີຄວາມໝາຍຄືກັບຮູບແບບ "glob()",
ຖ້າບໍ່ດັ່ງນັ້ນມັນຖືກຕີຄວາມຄືກັບຮູບແບບລໍາດັບ.

ຕົວອັກສອນພິເສດທັງໝົດຂອງ glob "%*?[]{}" ຈະຕ້ອງຖືກນຳໜ້າດ້ວຍ "%". ໜີ ກ
ຕົວອັກສອນ "%" ເຈົ້າຈະໃຊ້ "%%".

ຕົວຢ່າງ: ຮູບແບບ "foo-%*.jpeg" ຈະກົງກັບຊື່ໄຟລ໌ທັງໝົດທີ່ນຳໜ້າໂດຍ
"foo-" ແລະສິ້ນສຸດດ້ວຍ ".jpeg", ແລະ "foo-%?%?%?.jpeg" ຈະກົງກັບທຸກອັນ.
ຊື່ໄຟລ໌ທີ່ນຳໜ້າດ້ວຍ "foo-", ຕິດຕາມດ້ວຍລຳດັບສາມຕົວອັກສອນ, ແລະ
ສິ້ນສຸດດ້ວຍ ".jpeg".

ປະເພດຮູບແບບນີ້ຖືກປະຕິເສດໃນເງື່ອນໄຂ ໂລກ ແລະ ລໍາດັບ.

ຄ່າເລີ່ມຕົ້ນແມ່ນ glob_sequence.

pixel_format
ກໍານົດຮູບແບບ pixels ລວງຂອງຮູບພາບທີ່ຈະອ່ານ. ຖ້າບໍ່ໄດ້ລະບຸຮູບແບບ pixel ແມ່ນ
ເດົາຈາກໄຟລ໌ຮູບພາບທໍາອິດໃນລໍາດັບ.

start_number
ກໍານົດດັດຊະນີຂອງໄຟລ໌ທີ່ກົງກັບຮູບແບບໄຟລ໌ຮູບພາບເພື່ອເລີ່ມຕົ້ນການອ່ານຈາກ.
ຄ່າເລີ່ມຕົ້ນແມ່ນ 0.

start_number_range
ກໍານົດຂອບເຂດໄລຍະຫ່າງຂອງດັດຊະນີເພື່ອກວດເບິ່ງໃນເວລາທີ່ຊອກຫາໄຟລ໌ຮູບພາບທໍາອິດໃນ
ລໍາດັບ, ເລີ່ມຈາກ start_number. ຄ່າເລີ່ມຕົ້ນແມ່ນ 5.

ts_from_file
ຖ້າຕັ້ງເປັນ 1, ຈະຕັ້ງເວລາກອບເປັນເວລາດັດແກ້ຂອງໄຟລ໌ຮູບພາບ. ໃຫ້ສັງເກດວ່າ
monotonity ຂອງ timestamps ບໍ່ໄດ້ສະຫນອງໃຫ້: ຮູບພາບໄປຢູ່ໃນລໍາດັບດຽວກັນໂດຍບໍ່ມີການນີ້
ທາງເລືອກ. ຄ່າເລີ່ມຕົ້ນແມ່ນ 0. ຖ້າຕັ້ງເປັນ 2, ຈະຕັ້ງເວລາກອບເປັນການແກ້ໄຂ
ເວລາຂອງໄຟລ໌ຮູບພາບໃນຄວາມແມ່ນຍໍາ nanosecond.

video_size
ກໍານົດຂະຫນາດວິດີໂອຂອງຮູບພາບທີ່ຈະອ່ານ. ຖ້າບໍ່ໄດ້ລະບຸຂະຫນາດວິດີໂອແມ່ນຄາດເດົາ
ຈາກໄຟລ໌ຮູບພາບທໍາອິດໃນລໍາດັບ.

ຕົວຢ່າງ

· ການ​ນໍາ​ໃຊ້ ffmpeg ສໍາລັບການສ້າງວິດີໂອຈາກຮູບພາບຕ່າງໆໃນລໍາດັບໄຟລ໌ img-001.jpeg,
img-002.jpeg, ..., ສົມມຸດວ່າອັດຕາເຟຣມຂາເຂົ້າ 10 ເຟຣມຕໍ່ວິນາທີ:

ffmpeg -framerate 10 -i 'img-%03d.jpeg' out.mkv

· ດັ່ງຂ້າງເທິງ, ແຕ່ເລີ່ມຕົ້ນໂດຍການອ່ານຈາກໄຟລ໌ທີ່ມີດັດຊະນີ 100 ໃນລໍາດັບ:

ffmpeg -framerate 10 -start_number 100 -i 'img-%03d.jpeg' out.mkv

· ອ່ານຮູບພາບທີ່ກົງກັບຮູບແບບ "*.png" loading="lazy" glob, ນັ້ນແມ່ນໄຟລ໌ທັງໝົດທີ່ສິ້ນສຸດດ້ວຍ.
".png" loading="lazy" ຕໍ່ທ້າຍ:

ffmpeg -framerate 10 -pattern_type glob -i "*.png" loading="lazy" out.mkv

mov/mp4/3gp/Quicktme
Quicktime / MP4 demuxer.

demuxer ນີ້ຍອມຮັບທາງເລືອກຕໍ່ໄປນີ້:

enable_drefs
ເປີດໃຊ້ການໂຫຼດເພງພາຍນອກ, ປິດໃຊ້ງານໂດຍຄ່າເລີ່ມຕົ້ນ. ການເປີດໃຊ້ງານນີ້ສາມາດ
ຂໍ້ມູນທາງທິດສະດີຮົ່ວໄຫຼໃນບາງກໍລະນີການນໍາໃຊ້.

use_absolute_path
ອະ​ນຸ​ຍາດ​ໃຫ້​ການ​ໂຫຼດ​ຂອງ​ທາງ​ນອກ​ໂດຍ​ຜ່ານ​ທາງ​ທີ່​ແທ້​ຈິງ​, ປິດ​ການ​ທໍາ​ງານ​ໂດຍ​ຄ່າ​ເລີ່ມ​ຕົ້ນ​. ການເປີດໃຊ້ງານ
ນີ້ເຮັດໃຫ້ເກີດຄວາມສ່ຽງດ້ານຄວາມປອດໄພ. ມັນຄວນຈະຖືກເປີດໃຊ້ພຽງແຕ່ຖ້າແຫຼ່ງທີ່ຮູ້ວ່າບໍ່ແມ່ນ
ເປັນອັນຕະລາຍ.

mpegts
MPEG-2 ການຂົນສົ່ງສະຕຣີມ demuxer.

demuxer ນີ້ຍອມຮັບທາງເລືອກຕໍ່ໄປນີ້:

resync_size
ກໍານົດຂອບເຂດຈໍາກັດຂະຫນາດສໍາລັບການຊອກຫາ synchronization ໃຫມ່. ຄ່າເລີ່ມຕົ້ນແມ່ນ 65536.

fix_teletext_pts
ຍົກເລີກຄ່າແພັກເກັດ teletext PTS ແລະ DTS ດ້ວຍເວລາທີ່ຄິດໄລ່ຈາກ
PCR ຂອງໂຄງການທໍາອິດທີ່ກະແສ teletext ແມ່ນສ່ວນຫນຶ່ງຂອງແລະບໍ່ໄດ້ຖືກຍົກເລີກ.
ຄ່າເລີ່ມຕົ້ນແມ່ນ 1, ຕັ້ງຕົວເລືອກນີ້ເປັນ 0 ຖ້າທ່ານຕ້ອງການ packet teletext PTS ແລະ DTS ຂອງທ່ານ.
ຄຸນ​ຄ່າ​ທີ່​ບໍ່​ໄດ້​ສໍາ​ພັດ​.

ts_packetsize
ຕົວເລືອກຜົນຜະລິດທີ່ບັນຈຸຂະໜາດແພັກເກັດດິບເປັນໄບຕ໌. ສະແດງຊຸດວັດຖຸດິບທີ່ກວດພົບ
ຂະຫນາດ, ບໍ່ສາມາດກໍານົດໂດຍຜູ້ໃຊ້.

scan_all_pmts
ສະແກນແລະສົມທົບ PMTs ທັງຫມົດ. ຄ່າແມ່ນຈໍານວນເຕັມທີ່ມີມູນຄ່າຈາກ -1 ຫາ 1 (-1 ຫມາຍຄວາມວ່າ
ການຕັ້ງຄ່າອັດຕະໂນມັດ, 1 ຫມາຍຄວາມວ່າເປີດໃຊ້ງານ, 0 ຫມາຍຄວາມວ່າປິດການໃຊ້ງານ). ຄ່າເລີ່ມຕົ້ນແມ່ນ -1.

ວິດີໂອດິບ
Demuxer ວິດີໂອດິບ.

demuxer ນີ້ອະນຸຍາດໃຫ້ຫນຶ່ງເພື່ອອ່ານຂໍ້ມູນວິດີໂອດິບ. ເນື່ອງຈາກວ່າບໍ່ມີສ່ວນຫົວທີ່ລະບຸ
ຕົວກໍານົດການວິດີໂອສົມມຸດ, ຜູ້ໃຊ້ຕ້ອງລະບຸໃຫ້ເຂົາເຈົ້າໃນຄໍາສັ່ງທີ່ຈະສາມາດຖອດລະຫັດໄດ້
ຂໍ້ມູນຢ່າງຖືກຕ້ອງ.

demuxer ນີ້ຍອມຮັບທາງເລືອກຕໍ່ໄປນີ້:

framerate
ກໍານົດອັດຕາເຟຣມວິດີໂອການປ້ອນຂໍ້ມູນ. ຄ່າເລີ່ມຕົ້ນແມ່ນ 25.

pixel_format
ກໍານົດຮູບແບບ pixels ລວງຂອງວິດີໂອ input. ຄ່າເລີ່ມຕົ້ນແມ່ນ "yuv420p".

video_size
ກໍານົດຂະຫນາດວິດີໂອການປ້ອນຂໍ້ມູນ. ຄ່ານີ້ຕ້ອງຖືກລະບຸຢ່າງຈະແຈ້ງ.

ຕົວຢ່າງເພື່ອອ່ານໄຟລ໌ວິດີໂອດິບ input.raw ກັບ ffplay, ສົມມຸດວ່າຮູບແບບ pixel ຂອງ
"rgb24", ຂະຫນາດວິດີໂອ "320x240", ແລະອັດຕາເຟຣມຂອງ 10 ຮູບພາບຕໍ່ວິນາທີ, ນໍາໃຊ້.
ຄໍາສັ່ງ:

ffplay -f rawvideo -pixel_format rgb24 -video_size 320x240 -framerate 10 input.raw

sbg
SBaGen script demuxer.

demuxer ນີ້ອ່ານພາສາສະຄິບທີ່ໃຊ້ໂດຍ SBaGenhttp://uazu.net/sbagen/> ເຖິງ
ສ້າງ binaural beats sessions. ສະຄຣິບ SBG ເບິ່ງຄືວ່າ:

-ສ
a: 300-2.5/3 440+4.5/0
b: 300-2.5/0 440+4.5/3
ປິດ: -
ດຽວນີ້ == ກ
+0:07:00 == ຂ
+0:14:00 == ກ
+0:21:00 == ຂ
+0:30:00 ປິດ

ສະຄຣິບ SBG ສາມາດປະສົມການສະແຕມເວລາຢ່າງແທ້ຈິງ ແລະສົມທຽບໄດ້. ຖ້າສະຄຣິບໃຊ້ພຽງແຕ່
ການສະແຕມເວລາຢ່າງແທ້ຈິງ (ລວມທັງເວລາເລີ່ມຕົ້ນຂອງສະຄຣິບ) ຫຼືພຽງແຕ່ອັນທີ່ກ່ຽວຂ້ອງ, ຈາກນັ້ນມັນ
ຮູບແບບຖືກແກ້ໄຂ, ແລະການແປງແມ່ນກົງໄປກົງມາ. ໃນທາງກົງກັນຂ້າມ, ຖ້າ script
ປະສົມທັງສອງປະເພດຂອງ timestamps, ຫຼັງຈາກນັ້ນໄດ້ NOW ການອ້າງອິງສໍາລັບການສະແຕມເວລາທີ່ກ່ຽວຂ້ອງຈະເປັນ
ເອົາມາຈາກເວລາປະຈຸບັນຂອງມື້ໃນເວລາທີ່ອ່ານ script, ແລະຮູບແບບ script
ຈະຖືກແຊ່ແຂງຕາມການອ້າງອີງນັ້ນ. ນັ້ນຫມາຍຄວາມວ່າຖ້າ script ແມ່ນໂດຍກົງ
ມີຄົນຫຼິ້ນ, ເວລາຕົວຈິງຈະກົງກັບເວລາທີ່ແນ່ນອນຂຶ້ນກັບຕົວຄວບຄຸມສຽງ
ຄວາມຖືກຕ້ອງຂອງໂມງ, ແຕ່ຖ້າຜູ້ໃຊ້ຢຸດການຫຼິ້ນຫຼືຊອກຫາ, ເວລາທັງຫມົດຈະເປັນ
ຍ້າຍຕາມຄວາມເຫມາະສົມ.

ຄຳບັນຍາຍ
ຄຳບັນຍາຍ JSON ໃຊ້ສຳລັບhttp://www.ted.com/>.

TED ບໍ່ໄດ້ສະຫນອງການເຊື່ອມຕໍ່ກັບຄໍາບັນຍາຍ, ແຕ່ພວກເຂົາສາມາດຄາດເດົາໄດ້ຈາກຫນ້າ. ໄດ້
ເອກະສານ tools/bookmarklets.html ຈາກຕົ້ນໄມ້ແຫຼ່ງ FFmpeg ມີ bookmarklet ທີ່ຈະເປີດເຜີຍ
ໃຫ້ເຂົາເຈົ້າ.

demuxer ນີ້ຍອມຮັບທາງເລືອກຕໍ່ໄປນີ້:

start_time
ຕັ້ງເວລາເລີ່ມຕົ້ນຂອງການສົນທະນາ TED, ເປັນ milliseconds. ຄ່າເລີ່ມຕົ້ນແມ່ນ 15000 (15ວິ). ມັນ​ແມ່ນ
ໃຊ້ເພື່ອຊິງຄ໌ຄຳບັນຍາຍກັບວິດີໂອທີ່ສາມາດດາວໂຫຼດໄດ້, ເພາະວ່າພວກມັນປະກອບມີ 15s
ແນະນຳ.

ຕົວຢ່າງ: ປ່ຽນຄຳບັນຍາຍເປັນຮູບແບບທີ່ຜູ້ຫຼິ້ນສ່ວນໃຫຍ່ເຂົ້າໃຈ:

ffmpeg -i http://www.ted.com/talks/subtitles/id/1/lang/en talk1-en.srt

MUXERS


Muxers ແມ່ນອົງປະກອບທີ່ກໍາຫນົດຄ່າໃນ FFmpeg ເຊິ່ງອະນຸຍາດໃຫ້ຂຽນ multimedia streams ກັບ a
ປະເພດໄຟລ໌ໂດຍສະເພາະ.

ໃນເວລາທີ່ທ່ານ configure FFmpeg build ຂອງທ່ານ, ທັງຫມົດ muxers ສະຫນັບສະຫນູນໄດ້ຖືກເປີດໃຊ້ໂດຍຄ່າເລີ່ມຕົ້ນ. ເຈົ້າ
ສາມາດລາຍຊື່ muxers ທີ່ມີຢູ່ທັງຫມົດໂດຍໃຊ້ຕົວເລືອກ configure "--list-muxers".

ທ່ານສາມາດປິດການໃຊ້ງານ muxers ທັງໝົດດ້ວຍຕົວເລືອກການຕັ້ງຄ່າ "--disable-muxers" ແລະ
ເລືອກເປີດ / ປິດການໃຊ້ງານ muxers ດຽວດ້ວຍຕົວເລືອກ "--enable-muxer=MUXER" /
"--disable-muxer=MUXER".

ຕົວເລືອກ "-formats" ຂອງເຄື່ອງມື ff* ຈະສະແດງລາຍຊື່ຂອງ muxers ທີ່ເປີດໃຊ້ງານ.

ລາຍລະອຽດຂອງບາງ muxers ທີ່ມີຢູ່ໃນປັດຈຸບັນດັ່ງຕໍ່ໄປນີ້.

oof
muxer ຮູບແບບເອກະສານແລກປ່ຽນສຽງ.

ທາງເລືອກໃນການ

ມັນຍອມຮັບທາງເລືອກຕໍ່ໄປນີ້:

write_id3v2
ເປີດໃຊ້ງານການຂຽນແທັກ ID3v2 ເມື່ອຕັ້ງເປັນ 1. ຄ່າເລີ່ມຕົ້ນແມ່ນ 0 (ປິດໃຊ້ງານ).

id3v2_version
ເລືອກລຸ້ນ ID3v2 ເພື່ອຂຽນ. ໃນປັດຈຸບັນມີພຽງແຕ່ສະບັບ 3 ແລະ 4 (aka. ID3v2.3 ແລະ
ID3v2.4​) ສະ​ຫນັບ​ສະ​ຫນູນ​. ຄ່າເລີ່ມຕົ້ນແມ່ນລຸ້ນ 4.

crc
ຮູບແບບການທົດສອບ CRC (Cyclic Redundancy Check).

muxer ນີ້ computes ແລະພິມ Adler-32 CRC ຂອງທັງຫມົດ input ສຽງແລະວິດີໂອກອບ.
ໂດຍຄ່າເລີ່ມຕົ້ນຂອງເຟຣມສຽງຈະຖືກປ່ຽນເປັນຮູບດິບ 16-ບິດສຽງ ແລະເຟຣມວິດີໂອເປັນດິບ
ວິດີໂອກ່ອນທີ່ຈະຄິດໄລ່ CRC.

ຜົນຜະລິດຂອງ muxer ປະກອບດ້ວຍເສັ້ນດຽວຂອງແບບຟອມ: CRC=0xCRC, ບ່ອນທີ່ CRC ເປັນ
ເລກຖານສິບຫົກ 0-padded ເປັນ 8 ຕົວເລກທີ່ມີ CRC ສໍາລັບທຸກ input ຖອດລະຫັດ.
ກອບ.

ເບິ່ງອີກ framecrc muxer.

ຕົວຢ່າງ

ຕົວຢ່າງເພື່ອຄິດໄລ່ CRC ຂອງວັດສະດຸປ້ອນ, ແລະເກັບໄວ້ໃນໄຟລ໌ out.crc:

ffmpeg -i INPUT -f crc out.crc

ທ່ານສາມາດພິມ CRC ເພື່ອ stdout ດ້ວຍຄໍາສັ່ງ:

ffmpeg -i INPUT -f crc -

ທ່ານສາມາດເລືອກຮູບແບບຜົນຜະລິດຂອງແຕ່ລະກອບທີ່ມີ ffmpeg ໂດຍ​ການ​ລະ​ບຸ​ສຽງ​ແລະ​
ຕົວແປງສັນຍານວິດີໂອແລະຮູບແບບ. ຕົວຢ່າງເພື່ອຄິດໄລ່ CRC ຂອງສຽງປ້ອນເຂົ້າທີ່ປ່ຽນເປັນ PCM
unsigned 8-bit ແລະ​ວິ​ດີ​ໂອ​ການ​ປ້ອນ​ຂໍ້​ມູນ​ທີ່​ປ່ຽນ​ເປັນ​ວິ​ດີ​ໂອ MPEG​-2​, ໃຊ້​ຄໍາ​ສັ່ງ​:

ffmpeg -i INPUT -c:a pcm_u8 -c:v mpeg2video -f crc -

framecrc
ຮູບແບບການທົດສອບ CRC (Cyclic Redundancy Check) ຕໍ່ຊຸດ.

muxer ນີ້ຄິດໄລ່ແລະພິມ Adler-32 CRC ສໍາລັບແຕ່ລະຊຸດສຽງແລະວິດີໂອ. ໂດຍ
ເຟຣມສຽງເລີ່ມຕົ້ນຖືກປ່ຽນເປັນຮູບດິບ 16-ບິດສຽງ ແລະເຟຣມວິດີໂອເປັນດິບ
ວິດີໂອກ່ອນທີ່ຈະຄິດໄລ່ CRC.

ຜົນຜະລິດຂອງ muxer ປະກອບດ້ວຍເສັ້ນສໍາລັບແຕ່ລະຊຸດສຽງແລະວິດີໂອຂອງແບບຟອມ:

, , , , , 0x

CRC ແມ່ນຕົວເລກເລກຖານສິບຫົກ 0-padded ກັບ 8 ຕົວເລກທີ່ມີ CRC ຂອງແພັກເກັດ.

ຕົວຢ່າງ

ຕົວຢ່າງເພື່ອຄິດໄລ່ CRC ຂອງກອບສຽງແລະວິດີໂອໃນ ປັດໄຈນໍາເຂົ້າ, ປ່ຽນເປັນວັດຖຸດິບ
ແພັກເກັດສຽງ ແລະວິດີໂອ, ແລະເກັບໄວ້ໃນໄຟລ໌ out.crc:

ffmpeg -i INPUT -f framecrc out.crc

ເພື່ອພິມຂໍ້ມູນໃສ່ stdout, ໃຊ້ຄໍາສັ່ງ:

ffmpeg -i INPUT -f framecrc -

ກັບ ffmpeg, ທ່ານ​ສາ​ມາດ​ເລືອກ​ເອົາ​ຮູບ​ແບບ​ຜົນ​ຜະ​ລິດ​ທີ່​ຮູບ​ພາບ​ສຽງ​ແລະ​ວິ​ດີ​ໂອ​ແມ່ນ​
ເຂົ້າລະຫັດໄວ້ກ່ອນທີ່ຈະຄິດໄລ່ CRC ສໍາລັບແຕ່ລະແພັກເກັດໂດຍການລະບຸຕົວແປງສັນຍານສຽງ ແລະວິດີໂອ.
ຕົວຢ່າງ, ເພື່ອຄິດໄລ່ CRC ຂອງແຕ່ລະກອບສຽງປ້ອນເຂົ້າທີ່ຖອດລະຫັດປ່ຽນເປັນ PCM
unsigned 8-bit ແລະແຕ່ລະກອບວິດີໂອການປ້ອນຂໍ້ມູນຖອດລະຫັດປ່ຽນເປັນວິດີໂອ MPEG-2, ໃຊ້
ຄໍາສັ່ງ:

ffmpeg -i INPUT -c:a pcm_u8 -c:v mpeg2video -f framecrc -

ເບິ່ງອີກ crc muxer.

framemd5
ຮູບແບບການທົດສອບຕໍ່ແພັກເກັດ MD5.

muxer ນີ້ຄິດໄລ່ແລະພິມ hash MD5 ສໍາລັບແຕ່ລະຊຸດສຽງແລະວິດີໂອ. ໂດຍຄ່າເລີ່ມຕົ້ນ
ເຟຣມສຽງຖືກປ່ຽນເປັນສຽງດິບ 16-ບິດ ແລະກອບວິດີໂອເປັນວິດີໂອດິບກ່ອນ
ການ​ຄິດ​ໄລ່ hash ໄດ້​.

ຜົນຜະລິດຂອງ muxer ປະກອບດ້ວຍເສັ້ນສໍາລັບແຕ່ລະຊຸດສຽງແລະວິດີໂອຂອງແບບຟອມ:

, , , , ,

MD5 ແມ່ນເລກຖານສິບຫົກທີ່ເປັນຕົວແທນຂອງ hash MD5 ທີ່ຄຳນວນແລ້ວສຳລັບແພັກເກັດ.

ຕົວຢ່າງ

ສໍາ​ລັບ​ຕົວ​ຢ່າງ​ທີ່​ຈະ​ຄິດ​ໄລ່ MD5 ຂອງ​ເຟຣມ​ສຽງ​ແລະ​ວິ​ດີ​ໂອ​ໃນ​ ປັດໄຈນໍາເຂົ້າ, ປ່ຽນເປັນວັດຖຸດິບ
ແພັກເກັດສຽງ ແລະວິດີໂອ, ແລະເກັບໄວ້ໃນໄຟລ໌ out.md5:

ffmpeg -i INPUT -f framemd5 out.md5

ເພື່ອພິມຂໍ້ມູນໃສ່ stdout, ໃຊ້ຄໍາສັ່ງ:

ffmpeg -i INPUT -f framemd5 -

ເບິ່ງອີກ md5 muxer.

gif
Animated GIF muxer.

ມັນຍອມຮັບທາງເລືອກຕໍ່ໄປນີ້:

loop
ກໍານົດຈໍານວນເວລາທີ່ຈະ loop ຜົນຜະລິດ. ໃຊ້ "-1" ສໍາລັບການບໍ່ມີ loop, 0 ສໍາລັບ looping
ບໍ່ມີກຳນົດ (ຄ່າເລີ່ມຕົ້ນ).

final_delay
ບັງຄັບຄວາມລ່າຊ້າ (ສະແດງອອກເປັນ centiseconds) ຫຼັງຈາກກອບສຸດທ້າຍ. ແຕ່ລະກອບຈົບລົງດ້ວຍ
ການຊັກຊ້າຈົນກ່ວາກອບຕໍ່ໄປ. ຄ່າເລີ່ມຕົ້ນແມ່ນ "-1", ເຊິ່ງເປັນຄ່າພິເສດທີ່ຈະບອກ
muxer ເພື່ອໃຊ້ຄືນຄວາມລ່າຊ້າທີ່ຜ່ານມາ. ໃນກໍລະນີຂອງ loop, ທ່ານອາດຈະຕ້ອງການປັບແຕ່ງ
ຄ່ານີ້ເພື່ອໝາຍການຢຸດຊົ່ວຄາວເຊັ່ນ.

ຕົວຢ່າງ, ເພື່ອເຂົ້າລະຫັດ gif looping 10 ເທື່ອ, ດ້ວຍການຊັກຊ້າ 5 ວິນາທີລະຫວ່າງ loops:

ffmpeg -i INPUT -loop 10 -final_delay 500 out.gif

ຫມາຍ​ເຫດ 1​: ຖ້າ​ຫາກ​ວ່າ​ທ່ານ​ຕ້ອງ​ການ​ທີ່​ຈະ​ແຍກ​ກອບ​ໃນ​ໄຟລ​໌ GIF ແຍກ​ຕ່າງ​ຫາກ​, ທ່ານ​ຈໍາ​ເປັນ​ຕ້ອງ​ໄດ້​ບັງ​ຄັບ​
image2 muxer:

ffmpeg -i INPUT -c:v gif -f image2 "out%d.gif"

ຫມາຍ​ເຫດ 2​: ຮູບ​ແບບ GIF ມີ​ຖານ​ທີ່​ໃຊ້​ເວ​ລາ​ຂະ​ຫນາດ​ນ້ອຍ​ຫຼາຍ​: ການ​ຊັກ​ຊ້າ​ລະ​ຫວ່າງ​ສອງ​ເຟຣມ​ບໍ່​ສາ​ມາດ​ເປັນ​
ນ້ອຍກວ່າໜຶ່ງເຊັນຕິວິນາທີ.

hls
Apple HTTP Live Streaming muxer ທີ່ແບ່ງສ່ວນ MPEG-TS ຕາມ HTTP Live Streaming
(HLS).

ມັນສ້າງໄຟລ໌ playlist, ແລະຫນຶ່ງຫຼືຫຼາຍ segment ໄຟລ໌. ຊື່ໄຟລ໌ຜົນຜະລິດກໍານົດ
ຊື່ໄຟລ໌ລາຍການຫຼິ້ນ.

ໂດຍຄ່າເລີ່ມຕົ້ນ, muxer ສ້າງໄຟລ໌ສໍາລັບແຕ່ລະພາກສ່ວນທີ່ຜະລິດ. ໄຟລ໌ເຫຼົ່ານີ້ມີຄືກັນ
ຊື່ເປັນລາຍການຫຼິ້ນ, ຕາມດ້ວຍເລກລໍາດັບ ແລະນາມສະກຸນ .ts.

ສໍາ​ລັບ​ຕົວ​ຢ່າງ​, ການ​ປ່ຽນ​ໄຟລ​໌​ປ້ອນ​ຂໍ້​ມູນ​ທີ່​ມີ​ ffmpeg:

ffmpeg -i in.nut out.m3u8

ຕົວຢ່າງນີ້ຈະຜະລິດລາຍການຫຼິ້ນ, out.m3u8, ແລະໄຟລ໌ segment: out0.ts, out1.ts,
out2.ts, ແລະອື່ນໆ

ເບິ່ງອີກ ສ່ວນ muxer, ເຊິ່ງສະຫນອງການປະຕິບັດທົ່ວໄປແລະມີຄວາມຍືດຫຍຸ່ນຫຼາຍຂອງ a
segmenter, ແລະສາມາດຖືກນໍາໃຊ້ເພື່ອປະຕິບັດການແບ່ງສ່ວນ HLS.

ທາງເລືອກໃນການ

muxer ນີ້​ສະ​ຫນັບ​ສະ​ຫນູນ​ທາງ​ເລືອກ​ດັ່ງ​ຕໍ່​ໄປ​ນີ້​:

hls_time ວິນາທີ
ກໍານົດຄວາມຍາວຂອງສ່ວນເປັນວິນາທີ. ຄ່າເລີ່ມຕົ້ນແມ່ນ 2.

hls_list_size ຂະຫນາດ
ກໍານົດຈໍານວນສູງສຸດຂອງລາຍການ playlist. ຖ້າຕັ້ງເປັນ 0 ໄຟລ໌ລາຍຊື່ຈະມີທັງໝົດ
ສ່ວນ. ຄ່າເລີ່ມຕົ້ນແມ່ນ 5.

hls_ts_options options_list
ຕັ້ງຕົວເລືອກຮູບແບບຜົນຜະລິດໂດຍໃຊ້ :-separated list of key=value parameters. ຄຸນຄ່າ
ມີ ":" ຕົວອັກສອນພິເສດຕ້ອງຖືກຫລົບຫນີ.

hls_wrap ຫໍ່
ກໍານົດຕົວເລກຫຼັງຈາກນັ້ນຈໍານວນຊື່ໄຟລ໌ segment (ຈໍານວນທີ່ລະບຸໄວ້ໃນແຕ່ລະ
segment file) wraps. ຖ້າຕັ້ງເປັນ 0 ຕົວເລກຈະບໍ່ຖືກຫໍ່. ຄ່າເລີ່ມຕົ້ນແມ່ນ 0.

ທາງເລືອກນີ້ແມ່ນເປັນປະໂຫຍດເພື່ອຫຼີກເວັ້ນການຕື່ມຂໍ້ມູນໃສ່ແຜ່ນທີ່ມີໄຟລ໌ segment ຫຼາຍ, ແລະຂໍ້ຈໍາກັດ
ຈໍາ​ນວນ​ສູງ​ສຸດ​ຂອງ​ໄຟລ​໌ segment ລາຍ​ລັກ​ອັກ​ສອນ​ໃນ disk ກັບ​ ຫໍ່.

start_number ຈໍານວນ
ເລີ່ມເລກລໍາດັບລາຍການຫຼິ້ນຈາກ ຈໍານວນ. ຄ່າເລີ່ມຕົ້ນແມ່ນ 0.

hls_allow_cache ອະນຸຍາດແຄດ
ກໍານົດຢ່າງຊັດເຈນວ່າລູກຄ້າອາດຈະ \fis0(1) ຫຼື​ຕ້ອງ​ບໍ່ \fis0(0) cache media
ສ່ວນ.

hls_base_url baseurl
ເອກະສານຊ້ອນທ້າຍ baseurl ຕໍ່ກັບທຸກໆລາຍການໃນລາຍການຫຼິ້ນ. ເປັນ​ປະ​ໂຫຍດ​ເພື່ອ​ສ້າງ playlists ກັບ​
ເສັ້ນທາງຢ່າງແທ້ຈິງ.

ກະລຸນາຮັບຊາບວ່າໝາຍເລກລຳດັບລາຍການຫຼິ້ນຈະຕ້ອງບໍ່ຊໍ້າກັນສຳລັບແຕ່ລະພາກສ່ວນ ແລະມັນບໍ່ແມ່ນ
ທີ່ຈະສັບສົນກັບຕົວເລກລໍາດັບຊື່ໄຟລ໌ segment ທີ່ສາມາດເປັນວົງຈອນ, ສໍາລັບ
ຕົວຢ່າງຖ້າຫາກວ່າ ຫໍ່ ທາງ​ເລືອກ​ແມ່ນ​ລະ​ບຸ​ໄວ້​.

hls_segment_filename ຊື່​ເອ​ກະ​ສານ
ຕັ້ງຊື່ໄຟລ໌ສ່ວນ. ເວັ້ນເສຍແຕ່ວ່າ hls_flags single_file ຈະຖືກຕັ້ງ ຊື່​ເອ​ກະ​ສານ ຖືກນໍາໃຊ້ເປັນ
ຮູບແບບສະຕຣິງທີ່ມີເລກສ່ວນ:

ffmpeg in.nut -hls_segment_filename 'file%03d.ts' out.m3u8

ຕົວຢ່າງນີ້ຈະຜະລິດລາຍການຫຼິ້ນ, out.m3u8, ແລະໄຟລ໌ segment: file000.ts,
file001.ts, file002.ts, ແລະອື່ນໆ

hls_key_info_file key_info_file
ໃຊ້ຂໍ້ມູນໃນ key_info_file ສໍາລັບການເຂົ້າລະຫັດສ່ວນ. ເສັ້ນທໍາອິດຂອງ
key_info_file ລະບຸລະຫັດ URI ທີ່ຂຽນໃສ່ລາຍການຫຼິ້ນ. URL ທີ່ສໍາຄັນຖືກນໍາໃຊ້ເພື່ອ
ເຂົ້າເຖິງລະຫັດການເຂົ້າລະຫັດໃນລະຫວ່າງການຫຼິ້ນ. ແຖວທີສອງລະບຸເສັ້ນທາງໄປຫາ
ໄຟລ​໌​ທີ່​ສໍາ​ຄັນ​ນໍາ​ໃຊ້​ເພື່ອ​ໄດ້​ຮັບ​ກະ​ແຈ​ໃນ​ລະ​ຫວ່າງ​ການ​ຂະ​ບວນ​ການ​ເຂົ້າ​ລະ​ຫັດ​. ໄຟລ໌ທີ່ສໍາຄັນແມ່ນອ່ານເປັນ
array packed ດຽວຂອງ 16 octets ໃນຮູບແບບຖານສອງ. ແຖວທີສາມທາງເລືອກກໍານົດ
vector ການເລີ່ມຕົ້ນ (IV) ເປັນ string ເລກຖານສິບຫົກທີ່ຈະໃຊ້ແທນ
ໝາຍເລກລຳດັບ segment (ຄ່າເລີ່ມຕົ້ນ) ສຳລັບການເຂົ້າລະຫັດ. ການປ່ຽນແປງ key_info_file ຈະມີຜົນ
ໃນ​ການ​ເຂົ້າ​ລະ​ຫັດ​ພາກ​ສ່ວນ​ທີ່​ມີ​ກະ​ແຈ​ໃຫມ່ / IV ແລະ​ການ​ເຂົ້າ​ໃນ playlist ສໍາ​ລັບ​ກະ​ແຈ​ໃຫມ່​
URI/IV.

ຮູບແບບໄຟລ໌ຂໍ້ມູນຫຼັກ:



(ທາງເລືອກ)

ຕົວຢ່າງ URI ຫຼັກ:

http://server/file.key
/path/to/file.key
file.key

ຕົວຢ່າງເສັ້ນທາງໄຟລ໌ທີ່ສໍາຄັນ:

file.key
/path/to/file.key

ຕົວຢ່າງ IV:

0123456789ABCDEF0123456789ABCDEF

ຕົວຢ່າງໄຟລ໌ຂໍ້ມູນຫຼັກ:

http://server/file.key
/path/to/file.key
0123456789ABCDEF0123456789ABCDEF

ຕົວຢ່າງ shell script:

#!/ ຖັງ / sh
BASE_URL=${1:-'.'}
openssl rand 16 > file.key
echo $BASE_URL/file.key > file.keyinfo
echo file.key >> file.keyinfo
echo $(openssl rand -hex 16) >> file.keyinfo
ffmpeg -f lavfi -re -i testsrc -c:v h264 -hls_flags delete_segments \
-hls_key_info_file file.keyinfo out.m3u8

hls_flags single_file
ຖ້າທຸງນີ້ຖືກຕັ້ງ, muxer ຈະເກັບທຸກພາກສ່ວນໃນໄຟລ໌ MPEG-TS ດຽວ, ແລະ
ຈະໃຊ້ຂອບເຂດ byte ໃນລາຍການຫຼິ້ນ. ລາຍການຫຼິ້ນ HLS ທີ່ສ້າງຂຶ້ນດ້ວຍວິທີນີ້ຈະມີ
ສະບັບເລກທີ 4. ຕົວຢ່າງ:

ffmpeg -i in.nut -hls_flags single_file out.m3u8

ຈະ​ສ້າງ playlist ໄດ້​, out.m3u8, ແລະ​ໄຟລ​໌​ພາກ​ສ່ວນ​ດຽວ​, out.ts.

hls_flags delete_segments
ໄຟລ​໌​ສ່ວນ​ທີ່​ເອົາ​ອອກ​ຈາກ playlist ໄດ້​ຖືກ​ລຶບ​ອອກ​ຫຼັງ​ຈາກ​ໄລ​ຍະ​ເວ​ລາ​ທີ່​ເທົ່າ​ກັບ​
ໄລຍະເວລາຂອງພາກສ່ວນບວກກັບໄລຍະເວລາຂອງລາຍການຫຼິ້ນ.

ico
ICO file muxer.

ຮູບແບບໄຟລ໌ໄອຄອນຂອງ Microsoft (ICO) ມີຂໍ້ຈຳກັດທີ່ເຄັ່ງຄັດທີ່ຄວນສັງເກດ:

· ຂະໜາດບໍ່ສາມາດເກີນ 256 pixels ໃນທຸກມິຕິ

·ພຽງແຕ່ຮູບພາບ BMP ແລະ PNG ສາມາດຖືກເກັບໄວ້

· ຖ້າ​ຫາກ​ວ່າ​ຮູບ​ພາບ BMP ຖືກ​ນໍາ​ໃຊ້​, ມັນ​ຈະ​ຕ້ອງ​ເປັນ​ຫນຶ່ງ​ໃນ​ຮູບ​ແບບ pixel ດັ່ງ​ຕໍ່​ໄປ​ນີ້​:

BMP ຄວາມເລິກບິດຮູບແບບ FFmpeg Pixel
ໝູ່ 1 ບິດ 8
ໝູ່ 4 ບິດ 8
ໝູ່ 8 ບິດ 8
16ບິດ rgb555le
24bit bgr24
32 ບິດ bgra

· ຖ້າໃຊ້ຮູບພາບ BMP, ມັນຕ້ອງໃຊ້ສ່ວນຫົວ BITMAPIINFOHEADER DIB

· ຖ້າໃຊ້ຮູບພາບ PNG, ມັນຕ້ອງໃຊ້ຮູບແບບ rgba pixel

image2
muxer ໄຟລ໌ຮູບພາບ.

ໄຟລ໌ຮູບພາບ muxer ຂຽນກອບວິດີໂອກັບໄຟລ໌ຮູບພາບ.

ຊື່ໄຟລ໌ຜົນຜະລິດໄດ້ຖືກກໍານົດໂດຍຮູບແບບ, ເຊິ່ງສາມາດຖືກນໍາໃຊ້ເພື່ອຜະລິດຕາມລໍາດັບ
ຈໍານວນຊຸດຂອງໄຟລ໌. ຮູບແບບດັ່ງກ່າວອາດມີສະຕຣິງ "%d" ຫຼື "%0Nd ", ສາຍນີ້
ກໍານົດຕໍາແຫນ່ງຂອງຕົວອັກສອນທີ່ເປັນຕົວແທນຂອງຕົວເລກໃນຊື່ໄຟລ໌. ຖ້າ
ແບບຟອມ "%0Nd" ຖືກນໍາໃຊ້, ສະຕຣິງທີ່ເປັນຕົວແທນຂອງຕົວເລກໃນແຕ່ລະຊື່ໄຟລ໌ແມ່ນ 0-padded ກັບ N
ຕົວເລກ. ຕົວອັກສອນ '%' ສາມາດຖືກລະບຸໄວ້ໃນຮູບແບບທີ່ມີສະຕຣິງ "%%".

ຖ້າຮູບແບບມີ "%d" ຫຼື "%0Nd", ຊື່ໄຟລ໌ທໍາອິດຂອງລາຍການໄຟລ໌ທີ່ລະບຸໄວ້ຈະ
ມີຕົວເລກ 1, ຕົວເລກຕໍ່ໄປນີ້ທັງຫມົດຈະເປັນລໍາດັບ.

ຮູບແບບອາດມີຄຳຕໍ່ທ້າຍທີ່ໃຊ້ເພື່ອກຳນົດຮູບແບບຂອງ
ໄຟລ໌ຮູບພາບທີ່ຈະຂຽນ.

ຕົວຢ່າງເຊັ່ນຮູບແບບ "img-%03d.bmp" ຈະລະບຸລໍາດັບຂອງຊື່ໄຟລ໌ຂອງແບບຟອມ.
img-001.bmp, img-002.bmp, ... , img-010.bmp, ແລະອື່ນໆ ຮູບແບບ "img%%-%d.jpg" loading="lazy" ຈະລະບຸ
ລຳດັບຂອງຊື່ໄຟລ໌ຂອງແບບຟອມ img%-1.jpg, img%-2.jpg, ... , img%-10.jpg, ແລະອື່ນໆ

ຕົວຢ່າງ

ຕົວຢ່າງຕໍ່ໄປນີ້ສະແດງໃຫ້ເຫັນວິທີການນໍາໃຊ້ ffmpeg ສໍາລັບການສ້າງລໍາດັບຂອງໄຟລ໌
img-001.jpeg, img-002.jpeg, ... , ຖ່າຍ​ຮູບ​ຫນຶ່ງ​ໃນ​ທຸກໆ​ວິ​ນາ​ທີ​ຈາກ​ວິ​ດີ​ໂອ​ການ​ປ້ອນ​ຂໍ້​ມູນ​:

ffmpeg -i in.avi -vsync 1 -r 1 -f image2 'img-%03d.jpeg'

ໃຫ້ສັງເກດວ່າກັບ ffmpeg, ຖ້າຮູບແບບບໍ່ໄດ້ຖືກລະບຸດ້ວຍຕົວເລືອກ "-f" ແລະຜົນຜະລິດ
filename ກໍານົດຮູບແບບໄຟລ໌ຮູບພາບ, image2 muxer ຖືກເລືອກອັດຕະໂນມັດ, ດັ່ງນັ້ນ
ຄໍາສັ່ງທີ່ຜ່ານມາສາມາດຂຽນເປັນ:

ffmpeg -i in.avi -vsync 1 -r 1 'img-%03d.jpeg'

ກະລຸນາຮັບຊາບວ່າຮູບແບບຈະຕ້ອງບໍ່ຈຳເປັນມີ "%d" ຫຼື "%0Nd", ສໍາລັບການຍົກຕົວຢ່າງ
ສ້າງໄຟລ໌ຮູບພາບດຽວ img.jpeg ຈາກ​ວິ​ດີ​ໂອ​ການ​ປ້ອນ​ຂໍ້​ມູນ​ທີ່​ທ່ານ​ສາ​ມາດ​ໃຊ້​ຄໍາ​ສັ່ງ​:

ffmpeg -i in.avi -f image2 -frames:v 1 img.jpeg

ໄດ້ ເວລາຕໍ່ເວລາ ທາງເລືອກອະນຸຍາດໃຫ້ທ່ານສາມາດຂະຫຍາຍຊື່ໄຟລ໌ທີ່ມີຂໍ້ມູນວັນທີແລະເວລາ.
ກວດເບິ່ງເອກະສານຂອງຟັງຊັນ "strftime()" ສໍາລັບ syntax.

ຕົວຢ່າງເພື່ອສ້າງໄຟລ໌ຮູບພາບຈາກຮູບແບບ "strftime()" "%Y-%m-%d_%H-%M-%S",
ດັ່ງຕໍ່ໄປນີ້ ffmpeg ຄໍາ​ສັ່ງ​ສາ​ມາດ​ນໍາ​ໃຊ້​:

ffmpeg -f v4l2 -r 1 -i /dev/video0 -f image2 -strftime 1 "%Y-%m-%d_%H-%M-%S.jpg"

ທາງເລືອກໃນການ

start_number
ເລີ່ມຕົ້ນລໍາດັບຈາກຈໍານວນທີ່ກໍານົດໄວ້. ຄ່າເລີ່ມຕົ້ນແມ່ນ 0.

ການປັບປຸງ
ຖ້າຕັ້ງເປັນ 1, ຊື່ໄຟລ໌ຈະຖືກຕີຄວາມໝາຍວ່າເປັນພຽງຊື່ໄຟລ໌ສະເໝີ, ບໍ່ແມ່ນ a
ຮູບແບບ, ແລະໄຟລ໌ທີ່ສອດຄ້ອງກັນຈະຖືກຂຽນທັບຢ່າງຕໍ່ເນື່ອງດ້ວຍຮູບພາບໃຫມ່.
ຄ່າເລີ່ມຕົ້ນແມ່ນ 0.

ເວລາຕໍ່ເວລາ
ຖ້າຕັ້ງເປັນ 1, ຂະຫຍາຍຊື່ໄຟລ໌ດ້ວຍຂໍ້ມູນວັນທີ ແລະເວລາຈາກ "strftime()".
ຄ່າເລີ່ມຕົ້ນແມ່ນ 0.

muxer ຮູບ​ພາບ​ສະ​ຫນັບ​ສະ​ຫນູນ​ຮູບ​ແບບ​ໄຟລ​໌ .YUV​. ຮູບແບບນີ້ແມ່ນພິເສດໃນນັ້ນ
ແຕ່ລະກອບຮູບພາບປະກອບດ້ວຍສາມໄຟລ໌, ສໍາລັບແຕ່ລະອົງປະກອບ YUV420P. ອ່ານຫຼື
ຂຽນຮູບແບບໄຟລ໌ຮູບພາບນີ້, ລະບຸຊື່ຂອງໄຟລ໌ '.Y'. muxer ຈະ
ເປີດໄຟລ໌ '.U' ແລະ '.V' ໂດຍອັດຕະໂນມັດຕາມຄວາມຕ້ອງການ.

ມາໂທສກາ
Matroska container muxer.

muxer ນີ້ປະຕິບັດຂໍ້ກໍານົດຂອງ matroska ແລະ webm container.

Metadata

ການຕັ້ງຄ່າ metadata ທີ່ຮັບຮູ້ໃນ muxer ນີ້ແມ່ນ:

ຫົວຂໍ້
ກໍານົດຊື່ຫົວຂໍ້ທີ່ສະຫນອງໃຫ້ກັບເພງດຽວ.

ພາສາ
ລະບຸພາສາຂອງການຕິດຕາມໃນຮູບແບບພາສາ Matroska.

ພາ​ສາ​ສາ​ມາດ​ເປັນ 3 ຕົວ​ອັກ​ສອນ bibliographic ISO-639-2 (ISO 639-2/B) ຮູບ​ແບບ
(ເຊັ່ນ: "ຟຣີ" ສໍາລັບພາສາຝຣັ່ງ), ຫຼືລະຫັດພາສາປະສົມກັບລະຫັດປະເທດສໍາລັບການພິເສດ
ໃນພາສາຕ່າງໆ (ເຊັ່ນ "fre-ca" ສໍາລັບພາສາຝຣັ່ງການາດາ).

stereo_mode
ກໍານົດຮູບແບບວິດີໂອ 3D stereo ຂອງສອງວິວໃນເພງດຽວ.

ຄ່າຕໍ່ໄປນີ້ຖືກຮັບຮູ້:

mono
ວິດີໂອບໍ່ແມ່ນສະເຕີລິໂອ

ຊ້າຍ​ຂວາ
ທັດສະນະທັງສອງແມ່ນຈັດລຽງຂ້າງ, ມຸມເບິ່ງຊ້າຍແມ່ນຢູ່ເບື້ອງຊ້າຍ

ລຸ່ມສຸດ
ມຸມເບິ່ງທັງສອງຖືກຈັດລຽງຢູ່ໃນທິດທາງເທິງຫາລຸ່ມ, ມຸມເບິ່ງຊ້າຍຢູ່ລຸ່ມ

ເທິງ_ລຸ່ມ
ທັດສະນະທັງສອງຖືກຈັດລຽງຢູ່ໃນທິດທາງເທິງຫາລຸ່ມ, ມຸມເບິ່ງຊ້າຍຢູ່ເທິງ

checkerboard_rl
ແຕ່ລະມຸມເບິ່ງຖືກຈັດລຽງຢູ່ໃນຮູບແບບຂອງ checkerboard interleaved, ຊ້າຍ-ຕາເປັນ
ຄັ້ງທໍາອິດ

checkerboard_lr
ແຕ່ລະມຸມເບິ່ງຖືກຈັດຢູ່ໃນຮູບແບບ checkerboard interleaved, ມຸມເບິ່ງຂວາ
ຄັ້ງທໍາອິດ

row_interleaved_rl
ແຕ່ລະມຸມເບິ່ງແມ່ນປະກອບດ້ວຍແຖວທີ່ອີງໃສ່ interleaving, ມຸມເບິ່ງຂວາແມ່ນແຖວທໍາອິດ

row_interleaved_lr
ແຕ່ລະມຸມເບິ່ງແມ່ນປະກອບດ້ວຍແຖວທີ່ອີງໃສ່ interleaving, ມຸມເບິ່ງຊ້າຍແມ່ນແຖວທໍາອິດ

col_interleaved_rl
ທັດສະນະທັງສອງຖືກຈັດລຽງຢູ່ໃນຖັນໂດຍອີງໃສ່ລັກສະນະ interleaving, ມຸມເບິ່ງຂວາແມ່ນ
ຖັນທໍາອິດ

col_interleaved_lr
ມຸມເບິ່ງທັງສອງຖືກຈັດລຽງເປັນຖັນໂດຍອີງໃສ່ລັກສະນະ interleaving, ທັດສະນະຊ້າຍແມ່ນ
ຖັນທໍາອິດ

anaglyph_cyan_red
ເຟຣມທັງໝົດຢູ່ໃນຮູບແບບ anaglyph ສາມາດເບິ່ງໄດ້ຜ່ານຕົວກອງສີແດງ-ສີຟ້າຂຽວ

ຂວາ​ຊ້າຍ
ມຸມເບິ່ງທັງສອງຖືກຈັດລຽງຂ້າງກັນ, ມຸມເບິ່ງຂວາແມ່ນຢູ່ເບື້ອງຊ້າຍ

anaglyph_green_magenta
ເຟຣມທັງໝົດຢູ່ໃນຮູບແບບ anaglyph ສາມາດເບິ່ງໄດ້ຜ່ານຕົວກອງສີຂຽວ-ສີມ່ວງແດງ

block_lr
ທັງສອງຕາ laced ໃນຫນຶ່ງ Block, ຊ້າຍຕາເບິ່ງທໍາອິດ

block_rl
ທັງສອງຕາ laced ໃນຫນຶ່ງຕັນ, ມຸມເບິ່ງຂວາເປັນຄັ້ງທໍາອິດ

ຕົວຢ່າງ, clip WebM 3D ສາມາດຖືກສ້າງຂື້ນໂດຍໃຊ້ເສັ້ນຄໍາສັ່ງຕໍ່ໄປນີ້:

ffmpeg -i sample_left_right_clip.mpg -an -c:v libvpx -metadata stereo_mode=left_right -y stereo_clip.webm

ທາງເລືອກໃນການ

muxer ນີ້​ສະ​ຫນັບ​ສະ​ຫນູນ​ທາງ​ເລືອກ​ດັ່ງ​ຕໍ່​ໄປ​ນີ້​:

reserve_index_space
ໂດຍຄ່າເລີ່ມຕົ້ນ, muxer ນີ້ຂຽນດັດສະນີສໍາລັບການຊອກຫາ (ເອີ້ນວ່າ cues ໃນຂໍ້ກໍານົດ Matroska) ຢູ່.
ໃນຕອນທ້າຍຂອງໄຟລ໌, ເນື່ອງຈາກວ່າມັນບໍ່ສາມາດຮູ້ລ່ວງຫນ້າວ່າມີພື້ນທີ່ຫຼາຍປານໃດທີ່ຈະປ່ອຍໃຫ້ສໍາລັບ
index ໃນຕອນຕົ້ນຂອງໄຟລ໌. ຢ່າງໃດກໍຕາມ, ສໍາລັບບາງກໍລະນີການນໍາໃຊ້ - ເຊັ່ນ: streaming
ບ່ອນທີ່ການຊອກຫາເປັນໄປໄດ້ແຕ່ຊ້າ - ມັນເປັນປະໂຫຍດທີ່ຈະເອົາດັດສະນີໃນຕອນເລີ່ມຕົ້ນ
ຂອງໄຟລ໌.

ຖ້າຕົວເລືອກນີ້ຖືກຕັ້ງເປັນຄ່າທີ່ບໍ່ແມ່ນສູນ, muxer ຈະສະຫງວນຈໍານວນທີ່ລະບຸໄວ້
space ໃນ header ໄຟລ໌ແລະຫຼັງຈາກນັ້ນພະຍາຍາມຂຽນ cues ຢູ່ທີ່ນັ້ນໃນເວລາທີ່ muxing
ສໍາເລັດ. ຖ້າພື້ນທີ່ທີ່ມີຢູ່ບໍ່ພຽງພໍ, muxing ຈະລົ້ມເຫລວ. ຂະຫນາດທີ່ປອດໄພສໍາລັບ
ກໍລະນີທີ່ໃຊ້ຫຼາຍທີ່ສຸດຄວນຈະມີປະມານ 50kB ຕໍ່ຊົ່ວໂມງຂອງວິດີໂອ.

ໃຫ້ສັງເກດວ່າ cues ຖືກຂຽນພຽງແຕ່ຖ້າຜົນຜະລິດສາມາດຊອກຫາໄດ້ແລະທາງເລືອກນີ້ຈະບໍ່ມີ
ຜົນກະທົບຖ້າຫາກວ່າມັນບໍ່ແມ່ນ.

md5
ຮູບແບບການທົດສອບ MD5.

muxer ນີ້ຄິດໄລ່ແລະພິມ hash MD5 ຂອງທຸກ input ສຽງແລະວິດີໂອກອບ. ໂດຍ
ເຟຣມສຽງເລີ່ມຕົ້ນຖືກປ່ຽນເປັນຮູບດິບ 16-ບິດສຽງ ແລະເຟຣມວິດີໂອເປັນດິບ
ວິດີໂອກ່ອນທີ່ຈະຄິດໄລ່ hash.

ຜົນຜະລິດຂອງ muxer ປະກອບດ້ວຍເສັ້ນດຽວຂອງຮູບແບບ: MD5=MD5, ບ່ອນທີ່ MD5 ເປັນ
ເລກຖານສິບຫົກທີ່ເປັນຕົວແທນຂອງ hash MD5 ທີ່ຄຳນວນແລ້ວ.

ສໍາ​ລັບ​ຕົວ​ຢ່າງ​ທີ່​ຈະ​ຄິດ​ໄລ່ MD5 hash ຂອງ​ການ​ປ້ອນ​ຂໍ້​ມູນ​ທີ່​ປ່ຽນ​ເປັນ​ສຽງ​ແລະ​ວິ​ດີ​ໂອ​ດິບ​, ແລະ​
ເກັບ​ໄວ້​ໃນ​ໄຟລ​໌​ out.md5:

ffmpeg -i INPUT -f md5 out.md5

ທ່ານສາມາດພິມ MD5 ເພື່ອ stdout ດ້ວຍຄໍາສັ່ງ:

ffmpeg -i INPUT -f md5 -

ເບິ່ງອີກ framemd5 muxer.

ຍ້າຍ, mp4, ismv
MOV/MP4/ISMV (Smooth Streaming) muxer.

mov/mp4/ismv muxer ຮອງຮັບການແບ່ງສ່ວນ. ໂດຍປົກກະຕິ, ໄຟລ໌ MOV / MP4 ມີທັງຫມົດ
metadata ກ່ຽວກັບແພັກເກັດທັງຫມົດທີ່ເກັບໄວ້ໃນຫນຶ່ງສະຖານທີ່ (ຂຽນຢູ່ໃນຕອນທ້າຍຂອງໄຟລ໌, ມັນສາມາດເຮັດໄດ້
ຖືກຍ້າຍໄປທີ່ຈຸດເລີ່ມຕົ້ນສໍາລັບການຫຼິ້ນທີ່ດີຂຶ້ນໂດຍການເພີ່ມ ເລີ່ມໄວ ການ movflags, ຫຼືການ ນຳ ໃຊ້
ໄດ້ qt-faststart ເຄື່ອງ​ມື). ໄຟລ໌ fragmented ປະກອບດ້ວຍຈໍານວນຂອງ fragment, ບ່ອນທີ່ packets
ແລະ metadata ກ່ຽວກັບແພັກເກັດເຫຼົ່ານີ້ຖືກເກັບໄວ້ຮ່ວມກັນ. ການ​ຂຽນ​ໄຟລ​໌ fragmented ມີ​
ປະໂຫຍດທີ່ໄຟລ໌ສາມາດຖອດລະຫັດໄດ້ເຖິງແມ່ນວ່າການຂຽນຖືກລົບກວນ (ໃນຂະນະທີ່ປົກກະຕິ
MOV/MP4 ແມ່ນ undecodable ຖ້າ​ຫາກ​ວ່າ​ມັນ​ບໍ່​ໄດ້​ສໍາ​ເລັດ​ຢ່າງ​ຖືກ​ຕ້ອງ​)​, ແລະ​ມັນ​ຮຽກ​ຮ້ອງ​ໃຫ້​ມີ​ຄວາມ​ຈໍາ​ຫນ້ອຍ​ໃນ​ເວ​ລາ​ທີ່​
ຂຽນ​ໄຟລ​໌​ຍາວ​ຫຼາຍ (ນັບ​ຕັ້ງ​ແຕ່​ການ​ຂຽນ​ໄຟລ​໌ MOV / MP4 ປົກ​ກະ​ຕິ​ເກັບ​ຮັກ​ສາ​ຂໍ້​ມູນ​ກ່ຽວ​ກັບ​ການ​ທຸກ​ດຽວ​
packet ໃນຫນ່ວຍຄວາມຈໍາຈົນກ່ວາໄຟລ໌ຖືກປິດ). downside ແມ່ນວ່າມັນມີຄວາມເຂົ້າກັນໄດ້ຫນ້ອຍ
ກັບຄໍາຮ້ອງສະຫມັກອື່ນໆ.

ທາງເລືອກໃນການ

Fragmentation ຖືກເປີດໃຊ້ໂດຍການຕັ້ງຄ່າຫນຶ່ງຂອງ AVOptions ທີ່ກໍານົດວິທີການຕັດໄຟລ໌
ເປັນ​ຊິ້ນ​ສ່ວນ​:

-moov_size ໄບ
ສະຫງວນພື້ນທີ່ສໍາລັບອະຕອມ moov ໃນຕອນຕົ້ນຂອງໄຟລ໌ແທນທີ່ຈະວາງ
moov atom ໃນຕອນທ້າຍ. ຖ້າພື້ນທີ່ສະຫງວນບໍ່ພຽງພໍ, muxing ຈະລົ້ມເຫລວ.

-movflags frag_keyframe
ເລີ່ມຊິ້ນສ່ວນໃໝ່ໃນແຕ່ລະຄີເຟຣມວິດີໂອ.

-frag_duration ໄລຍະເວລາ
ສ້າງ fragments ທີ່ ໄລຍະເວລາ microseconds ຍາວ.

-frag_size ຂະຫນາດ
ສ້າງຊິ້ນສ່ວນທີ່ບັນຈຸເຖິງ ຂະຫນາດ bytes ຂອງຂໍ້ມູນ payload.

-movflags frag_custom
ອະ​ນຸ​ຍາດ​ໃຫ້​ຜູ້​ໂທ​ເລືອກ​ຄູ່​ມື​ໃນ​ເວ​ລາ​ທີ່​ຈະ​ຕັດ fragments​, ໂດຍ​ການ​ໂທ​ຫາ​
"av_write_frame(ctx, NULL)" ເພື່ອຂຽນຊິ້ນສ່ວນກັບແພັກເກັດທີ່ຂຽນມາເຖິງຕອນນັ້ນ. (ນີ້
ເປັນປະໂຫຍດພຽງແຕ່ກັບຄໍາຮ້ອງສະຫມັກອື່ນໆທີ່ປະສົມປະສານ libavformat, ບໍ່ແມ່ນມາຈາກ ffmpeg.)

-min_frag_duration ໄລຍະເວລາ
ຢ່າສ້າງຊິ້ນສ່ວນທີ່ສັ້ນກວ່າ ໄລຍະເວລາ microseconds ຍາວ.

ຖ້າມີຫຼາຍກວ່າຫນຶ່ງເງື່ອນໄຂ, ຊິ້ນສ່ວນຈະຖືກຕັດເມື່ອຫນຶ່ງຂອງທີ່ກໍານົດໄວ້
ເງື່ອນໄຂແມ່ນບັນລຸໄດ້. ຂໍ້ຍົກເວັ້ນນີ້ແມ່ນ "-min_frag_duration", ເຊິ່ງຕ້ອງມີ
ປະຕິບັດຕາມເງື່ອນໄຂອື່ນໆທີ່ຈະນໍາໃຊ້.

ນອກຈາກນັ້ນ, ວິທີທີ່ໄຟລ໌ຜົນຜະລິດໄດ້ຖືກຂຽນສາມາດຖືກປັບຜ່ານບາງອັນ
ຕົວເລືອກ:

-movflags ຫວ່າງ_moov
ຂຽນອະຕອມ moov ເບື້ອງຕົ້ນໂດຍກົງໃນຕອນເລີ່ມຕົ້ນຂອງໄຟລ໌, ໂດຍບໍ່ມີການອະທິບາຍໃດໆ
ຕົວຢ່າງໃນມັນ. ໂດຍທົ່ວໄປແລ້ວ, ຄູ່ mdat/moov ຖືກຂຽນໄວ້ໃນຕອນຕົ້ນຂອງໄຟລ໌, ເປັນ
ໄຟລ໌ MOV/MP4 ປົກກະຕິ, ມີພຽງສ່ວນສັ້ນຂອງໄຟລ໌. ດ້ວຍທາງເລືອກນີ້
ທີ່ກໍານົດໄວ້, ບໍ່ມີອະຕອມ mdat ໃນເບື້ອງຕົ້ນ, ແລະອາຕອມ moov ພຽງແຕ່ອະທິບາຍການຕິດຕາມແຕ່
ມີໄລຍະເວລາສູນ.

ທາງ​ເລືອກ​ນີ້​ແມ່ນ​ໄດ້​ຖືກ​ກໍາ​ນົດ implicitly ໃນ​ເວ​ລາ​ທີ່​ຂຽນ​ໄຟລ​໌ ismv (Smooth Streaming​)​.

-movflags ແຍກຕ່າງຫາກ_moof
ຂຽນອະຕອມ moof (ຊິ້ນຮູບເງົາ) ແຍກຕ່າງຫາກສໍາລັບແຕ່ລະເພງ. ປົກກະຕິແລ້ວ, ຊຸດສໍາລັບທຸກຄົນ
ຕິດຕາມຖືກຂຽນໄວ້ໃນອະຕອມ moof (ເຊິ່ງມີປະສິດທິພາບຫຼາຍກ່ວາເລັກນ້ອຍ), ແຕ່ນີ້
ທາງເລືອກທີ່ກໍານົດໄວ້, muxer ຂຽນຫນຶ່ງ moof / mdat ຄູ່ສໍາລັບແຕ່ລະເພງ, ເຮັດໃຫ້ມັນງ່າຍຂຶ້ນ
ເພງແຍກຕ່າງຫາກ.

ທາງ​ເລືອກ​ນີ້​ແມ່ນ​ໄດ້​ຖືກ​ກໍາ​ນົດ implicitly ໃນ​ເວ​ລາ​ທີ່​ຂຽນ​ໄຟລ​໌ ismv (Smooth Streaming​)​.

-movflags ເລີ່ມໄວ
ແລ່ນຜ່ານທີສອງຍ້າຍດັດຊະນີ (moov atom) ໄປຫາຈຸດເລີ່ມຕົ້ນຂອງໄຟລ໌. ນີ້
ການດໍາເນີນງານສາມາດໃຊ້ເວລາໃນຂະນະທີ່, ແລະຈະບໍ່ເຮັດວຽກໃນສະຖານະການຕ່າງໆເຊັ່ນ: fragmented
ຜົນຜະລິດ, ດັ່ງນັ້ນມັນບໍ່ໄດ້ຖືກເປີດໃຊ້ໂດຍຄ່າເລີ່ມຕົ້ນ.

-movflags rtphint
ຕື່ມ​ການ​ຕິດ​ຕາມ​ຄໍາ​ແນະ​ນໍາ RTP ກັບ​ໄຟລ​໌​ຜົນ​ຜະ​ລິດ​ໄດ້​.

-movflags disable_chpl
ປິດການໃຊ້ງານເຄື່ອງໝາຍບົດ Nero (chpl atom). ໂດຍປົກກະຕິ, ທັງບົດ Nero ແລະ a
ຕິດຕາມບົດ QuickTime ຖືກຂຽນໃສ່ໄຟລ໌. ດ້ວຍຕົວເລືອກນີ້, ມີພຽງແຕ່
ຕິດຕາມບົດ QuickTime ຈະຖືກຂຽນ. ບົດ Nero ສາມາດເຮັດໃຫ້ເກີດຄວາມລົ້ມເຫລວໃນເວລາທີ່
ໄຟລ໌ຖືກປະມວນຜົນຄືນໃໝ່ດ້ວຍໂປຣແກຣມແທັກສະເພາະ, ເຊັ່ນ mp3Tag 2.61a ແລະ iTunes 11.3,
ສ່ວນຫຼາຍອາດຈະ, ສະບັບອື່ນໆໄດ້ຮັບຜົນກະທົບເຊັ່ນດຽວກັນ.

-movflags omit_tfhd_offset
ຫ້າມຂຽນຂໍ້ມູນ base_data_offset ຢ່າງແທ້ຈິງໃນອະຕອມ tfhd. ນີ້ຫຼີກເວັ້ນການຜູກມັດຊິ້ນສ່ວນ
ກັບຕໍາແຫນ່ງ byte ຢ່າງແທ້ຈິງໃນໄຟລ໌ / streams.

-movflags default_base_moof
ເຊັ່ນດຽວກັນກັບ omit_tfhd_offset, ທຸງນີ້ຫຼີກເວັ້ນການຂຽນຢ່າງແທ້ຈິງ
ຊ່ອງຂໍ້ມູນ base_data_offset ໃນອະຕອມ tfhd, ແຕ່ເຮັດແນວນັ້ນໂດຍໃຊ້ default-base-is-
ທຸງ moof ແທນ. ທຸງນີ້ແມ່ນໃຫມ່ຈາກ 14496-12: 2012. ນີ້ອາດຈະເຮັດໃຫ້ຊິ້ນ
ແຍກວິເຄາະໄດ້ງ່າຍກວ່າໃນບາງກໍລະນີ (ຫຼີກລ່ຽງສະຖານທີ່ຕິດຕາມຊິ້ນສ່ວນ
ການ​ຄິດ​ໄລ່​ໃນ​ຕອນ​ທ້າຍ implicit ຂອງ​ຊິ້ນ​ການ​ຕິດ​ຕາມ​ທີ່​ຜ່ານ​ມາ​)​.

ຍົກຕົວຢ່າງ

ເນື້ອຫາສະຕີມສະຕີມສາມາດຖືກຊຸກດັນໃນເວລາຈິງໄປຫາຈຸດເຜີຍແຜ່ໃນ IIS ດ້ວຍສິ່ງນີ້
muxer. ຕົວຢ່າງ:

ffmpeg -re < > -movflags isml+frag_keyframe -f ismv http://server/publishingpoint.isml/Streams(ຕົວເຂົ້າລະຫັດ 1)

Audible AAX

ໄຟລ໌ AAX ທີ່ສາມາດຟັງໄດ້ແມ່ນຖືກເຂົ້າລະຫັດໄຟລ໌ M4B, ແລະພວກເຂົາສາມາດຖອດລະຫັດໄດ້ໂດຍການລະບຸ 4
ຄວາມລັບການເປີດໃຊ້ byte.

ffmpeg -activation_bytes 1CEB00DA -i test.aax -vn -c:a copy output.mp4

mp3
MP3 muxer ຂຽນ​ນ​້​ໍ​າ MP3 ດິບ​ທີ່​ມີ​ລັກ​ສະ​ນະ​ທາງ​ເລືອກ​ດັ່ງ​ຕໍ່​ໄປ​ນີ້​:

· ສ່ວນຫົວເມຕາເດຕາ ID3v2 ໃນຕອນຕົ້ນ (ເປີດໃຊ້ງານຕາມຄ່າເລີ່ມຕົ້ນ). ລຸ້ນ 2.3 ແລະ 2.4
ໄດ້ຮັບການສະຫນັບສະຫນູນ, "id3v2_version" ທາງເລືອກສ່ວນຕົວຄວບຄຸມວ່າອັນໃດຖືກໃຊ້ (3 ຫຼື 4).
ການຕັ້ງຄ່າ "id3v2_version" ເປັນ 0 ປິດການໃຊ້ງານສ່ວນຫົວ ID3v2 ຢ່າງສົມບູນ.

muxer ສະ​ຫນັບ​ສະ​ຫນູນ​ການ​ຂຽນ​ຮູບ​ພາບ​ທີ່​ຕິດ​ຄັດ​ມາ (APIC frames​) ກັບ​ຫົວ ID3v2​. ໄດ້
ຮູບພາບແມ່ນສະຫນອງໃຫ້ muxer ໃນຮູບແບບຂອງນ້ໍາວິດີໂອທີ່ມີຊຸດດຽວ.
ສາມາດມີຈໍານວນຂອງສາຍນ້ໍາເຫຼົ່ານັ້ນ, ແຕ່ລະຄົນຈະກົງກັນກັບກອບ APIC ດຽວ.
ແທັກ metadata ຂອງກະແສ ຫົວຂໍ້ ແລະ ຄວາມຄິດເຫັນ ແຜນທີ່ APIC ຄໍາອະທິບາຍ ແລະ ຮູບ ປະເພດ
ຕາມລໍາດັບ. ເບິ່ງhttp://id3.org/id3v2.4.0-frames> ສໍາລັບປະເພດຮູບພາບທີ່ອະນຸຍາດ.

ໃຫ້ສັງເກດວ່າກອບ APIC ຕ້ອງໄດ້ຮັບການຂຽນໃນຕອນເລີ່ມຕົ້ນ, ດັ່ງນັ້ນ muxer ຈະ buffer
ກອບສຽງຈົນກ່ວາມັນໄດ້ຮັບຮູບພາບທັງຫມົດ. ດັ່ງນັ້ນຈຶ່ງແນະນໍາໃຫ້ສະຫນອງ
ຮູບພາບໄວເທົ່າທີ່ເປັນໄປໄດ້ເພື່ອຫຼີກເວັ້ນການ buffering ຫຼາຍເກີນໄປ.

· ກອບ Xing/LAME ຫຼັງຈາກສ່ວນຫົວ ID3v2 (ຖ້າມີ). ມັນຖືກເປີດໃຊ້ໂດຍຄ່າເລີ່ມຕົ້ນ,
ແຕ່ຈະຖືກຂຽນພຽງແຕ່ຖ້າຜົນຜະລິດສາມາດຊອກຫາໄດ້. ຕົວເລືອກສ່ວນຕົວ "write_xing".
ສາມາດໃຊ້ເພື່ອປິດການໃຊ້ງານມັນໄດ້. ກອບມີຂໍ້ມູນຕ່າງໆທີ່ອາດຈະເປັນປະໂຫຍດ
ໄປຫາຕົວຖອດລະຫັດ, ເຊັ່ນໄລຍະເວລາສຽງ ຫຼືການລ່າຊ້າຂອງຕົວເຂົ້າລະຫັດ.

· ແທັກ ID3v1 ທີ່ເປັນມໍລະດົກຢູ່ໃນຕອນທ້າຍຂອງໄຟລ໌ (ປິດການໃຊ້ງານໂດຍຄ່າເລີ່ມຕົ້ນ). ມັນອາດຈະຖືກເປີດໃຊ້
ດ້ວຍຕົວເລືອກສ່ວນຕົວ "write_id3v1", ແຕ່ຍ້ອນວ່າຄວາມສາມາດຂອງມັນມີຈໍາກັດຫຼາຍ, ຂອງມັນ
ການນໍາໃຊ້ແມ່ນບໍ່ແນະນໍາ.

ຕົວຢ່າງ:

ຂຽນ mp3 ດ້ວຍສ່ວນຫົວ ID3v2.3 ແລະສ່ວນທ້າຍ ID3v1:

ffmpeg -i INPUT -id3v2_version 3 -write_id3v1 1 out.mp3

ເພື່ອແນບຮູບໃສ່ໄຟລ໌ mp3 ເລືອກທັງສຽງ ແລະຮູບຖ່າຍດ້ວຍ
"ແຜນທີ່":

ffmpeg -i input.mp3 -i cover.png -c ສຳເນົາ -map 0 -map 1
-metadata:s:v title="Album cover" -metadata:s:v comment="Cover (Front)" out.mp3

ຂຽນ MP3 "ສະອາດ" ໂດຍບໍ່ມີຄຸນສົມບັດເພີ່ມເຕີມ:

ffmpeg -i input.wav -write_xing 0 -id3v2_version 0 out.mp3

mpegts
MPEG stream muxer ການຂົນສົ່ງ.

muxer ນີ້ປະຕິບັດ ISO 13818-1 ແລະສ່ວນຫນຶ່ງຂອງ ETSI EN 300 468.

ການຕັ້ງຄ່າ metadata ທີ່ຮັບຮູ້ໃນ mpegts muxer ແມ່ນ "service_provider" ແລະ
"service_name". ຖ້າພວກເຂົາບໍ່ໄດ້ຕັ້ງຄ່າເລີ່ມຕົ້ນສໍາລັບ "service_provider" ແມ່ນ "FFmpeg" ແລະ
ຄ່າເລີ່ມຕົ້ນຂອງ "service_name" ແມ່ນ "Service01".

ທາງເລືອກໃນການ

ທາງ​ເລືອກ muxer ແມ່ນ​:

-mpegts_original_network_id ຈໍານວນ
ຕັ້ງ original_network_id (ຄ່າເລີ່ມຕົ້ນ 0x0001). ນີ້ແມ່ນຕົວລະບຸສະເພາະຂອງເຄືອຂ່າຍ
ໃນ DVB. ການນໍາໃຊ້ຕົ້ນຕໍຂອງມັນແມ່ນຢູ່ໃນການກໍານົດເປັນເອກະລັກຂອງການບໍລິການຜ່ານເສັ້ນທາງ
Original_Network_ID, Transport_Stream_ID.

-mpegts_transport_stream_id ຈໍານວນ
ຕັ້ງຄ່າ transport_stream_id (ຄ່າເລີ່ມຕົ້ນ 0x0001). ນີ້ກໍານົດ transponder ໃນ DVB.

-mpegts_service_id ຈໍານວນ
ຕັ້ງ service_id (ຄ່າເລີ່ມຕົ້ນ 0x0001) ທີ່ເອີ້ນກັນວ່າໂປຣແກຣມໃນ DVB.

-mpegts_service_type ຈໍານວນ
ຕັ້ງຄ່າໂປຣແກຣມ service_type (ຄ່າເລີ່ມຕົ້ນ digital_tv), ເບິ່ງຂ້າງລຸ່ມນີ້ບັນຊີລາຍຊື່ຂອງທີ່ກໍານົດໄວ້ລ່ວງຫນ້າ
ຄ່າ.

-mpegts_pmt_start_pid ຈໍານວນ
ຕັ້ງ PID ທໍາອິດສໍາລັບ PMT (ຄ່າເລີ່ມຕົ້ນ 0x1000, ສູງສຸດ 0x1f00).

-mpegts_start_pid ຈໍານວນ
ຕັ້ງ PID ທໍາອິດສໍາລັບຊຸດຂໍ້ມູນ (ຄ່າເລີ່ມຕົ້ນ 0x0100, ສູງສຸດ 0x0f00).

-mpegts_m2ts_mode ຈໍານວນ
ເປີດໃຊ້ໂໝດ m2ts ຖ້າຕັ້ງເປັນ 1. ຄ່າເລີ່ມຕົ້ນແມ່ນ -1 ເຊິ່ງປິດການນຳໃຊ້ໂໝດ m2ts.

-muxrate ຈໍານວນ
ກໍານົດ muxrate ຄົງທີ່ (VBR ເລີ່ມຕົ້ນ).

-pcr_period ຈໍານວນ
ລົບລ້າງເວລາສົ່ງຕໍ່ PCR ເລີ່ມຕົ້ນ (ຄ່າເລີ່ມຕົ້ນ 20ms), ຖືກລະເລີຍຖ້າຕົວແປ
muxrate ຖືກເລືອກ.

pat_period ຈໍານວນ
ເວລາສູງສຸດເປັນວິນາທີລະຫວ່າງຕາຕະລາງ PAT/PMT.

sdt_period ຈໍານວນ
ເວລາສູງສຸດເປັນວິນາທີລະຫວ່າງຕາຕະລາງ SDT.

-pes_payload_size ຈໍານວນ
ກຳນົດການໂຫຼດແພັກເກັດ PES ຕ່ຳສຸດເປັນໄບຕ໌.

-mpegts_flags ທົງ
ກໍານົດທຸງ (ເບິ່ງຂ້າງລຸ່ມນີ້).

-mpegts_copyts ຈໍານວນ
ຮັກສາເວລາເດີມໄວ້, ຖ້າຄ່າຖືກຕັ້ງເປັນ 1. ຄ່າເລີ່ມຕົ້ນແມ່ນ -1, ເຊິ່ງຜົນໄດ້ຮັບ
ໃນການປ່ຽນເວລາສະແຕມເພື່ອໃຫ້ພວກມັນເລີ່ມຈາກ 0.

-tables_version ຈໍານວນ
ຕັ້ງຄ່າ PAT, PMT ແລະ SDT ເວີຊັ່ນ (ຄ່າເລີ່ມຕົ້ນ 0, ຄ່າທີ່ຖືກຕ້ອງແມ່ນຕັ້ງແຕ່ 0 ຫາ 31, ລວມທັງໝົດ).
ຕົວເລືອກນີ້ອະນຸຍາດໃຫ້ປັບປຸງໂຄງສ້າງການຖ່າຍທອດເພື່ອໃຫ້ຜູ້ບໍລິໂພກມາດຕະຖານສາມາດກວດພົບໄດ້
ການປ່ຽນແປງ. ເພື່ອເຮັດແນວນັ້ນ, ເປີດຄືນຜົນຜະລິດ AVFormatContext (ໃນກໍລະນີຂອງການນໍາໃຊ້ API) ຫຼື restart
ຕົວຢ່າງ ffmpeg, ການປ່ຽນແປງຮອບວຽນມູນຄ່າ tables_version:

ffmpeg -i source1.ts -codec ສຳເນົາ -f mpegts -tables_version 0 udp://1.1.1.1:1111
ffmpeg -i source2.ts -codec ສຳເນົາ -f mpegts -tables_version 1 udp://1.1.1.1:1111
...
ffmpeg -i source3.ts -codec ສຳເນົາ -f mpegts -tables_version 31 udp://1.1.1.1:1111
ffmpeg -i source1.ts -codec ສຳເນົາ -f mpegts -tables_version 0 udp://1.1.1.1:1111
ffmpeg -i source2.ts -codec ສຳເນົາ -f mpegts -tables_version 1 udp://1.1.1.1:1111
...

ທາງເລືອກ mpegts_service_type ຍອມຮັບຄ່າຕໍ່ໄປນີ້:

hex_value
ຄ່າເລກຖານສິບຫົກລະຫວ່າງ 0x01 ຫາ 0xff ຕາມທີ່ກຳນົດໄວ້ໃນ ETSI 300 468.

digital_tv
ບໍລິການໂທລະທັດດິຈິຕອນ.

ວິທະຍຸດິຈິຕອລ
ບໍລິການວິທະຍຸດິຈິຕອນ.

teletext
ບໍລິການ Teletext.

advanced_codec_digital_radio
ບໍລິການວິທະຍຸດິຈິຕອລ Codec ຂັ້ນສູງ.

mpeg2_digital_hdtv
ບໍລິການ MPEG2 Digital HDTV.

advanced_codec_digital_sdtv
Advanced Codec Digital SDTV ບໍລິການ.

advanced_codec_digital_hdtv
Advanced Codec Digital HDTV ບໍລິການ.

ທາງເລືອກ mpegts_flags ອາດຈະໃຊ້ຊຸດຂອງທຸງດັ່ງກ່າວ:

reend_headers
ສົ່ງຄືນ PAT/PMT ກ່ອນທີ່ຈະຂຽນຊຸດຕໍ່ໄປ.

ກາມ
ໃຊ້ການຫຸ້ມຫໍ່ LATM ສໍາລັບ AAC.

pat_pmt_at_frames
ສົ່ງຄືນ PAT ແລະ PMT ໃນແຕ່ລະກອບວິດີໂອ.

ຍົກຕົວຢ່າງ

ffmpeg -i file.mpg -c ສຳເນົາ \
-mpegts_original_network_id 0x1122 \
-mpegts_transport_stream_id 0x3344 \
-mpegts_service_id 0x5566 \
-mpegts_pmt_start_pid 0x1500 \
-mpegts_start_pid 0x150 \
-metadata service_provider="ຜູ້ໃຫ້ບໍລິການບາງຄົນ" \
-metadata service_name="ບາງຊ່ອງ" \
-y out.ts

mxf, mxf_d10
MXF muxer.

ທາງເລືອກໃນການ

ທາງ​ເລືອກ muxer ແມ່ນ​:

store_user_comments bool
ກໍານົດວ່າຄໍາຄິດຄໍາເຫັນຂອງຜູ້ໃຊ້ຄວນຈະຖືກເກັບໄວ້ຖ້າມີຫຼືບໍ່ເຄີຍ. IRT D-10 ບໍ່ອະນຸຍາດ
ຄວາມຄິດເຫັນຂອງຜູ້ໃຊ້. ຄ່າເລີ່ມຕົ້ນແມ່ນດັ່ງນັ້ນເພື່ອຂຽນພວກມັນສໍາລັບ mxf ແຕ່ບໍ່ແມ່ນສໍາລັບ mxf_d10

null
null muxer.

muxer ນີ້​ບໍ່​ໄດ້​ສ້າງ​ໄຟລ​໌​ຜົນ​ຜະ​ລິດ​ໃດ​ຫນຶ່ງ​, ມັນ​ເປັນ​ປະ​ໂຫຍດ​ສ່ວນ​ໃຫຍ່​ສໍາ​ລັບ​ການ​ທົດ​ສອບ​ຫຼື​
ຈຸດປະສົງ benchmarking.

ຍົກ​ຕົວ​ຢ່າງ​ເພື່ອ benchmark decoding ກັບ ffmpeg ທ່ານສາມາດນໍາໃຊ້ຄໍາສັ່ງ:

ffmpeg -benchmark -i INPUT -f null out.null

ໃຫ້ສັງເກດວ່າຄໍາສັ່ງຂ້າງເທິງບໍ່ໄດ້ອ່ານຫຼືຂຽນ out.null ໄຟລ໌, ແຕ່ວ່າການລະບຸ
ໄຟລ໌ຜົນຜະລິດແມ່ນຕ້ອງການໂດຍ ffmpeg syntax

ອີກທາງເລືອກ, ທ່ານສາມາດຂຽນຄໍາສັ່ງເປັນ:

ffmpeg -benchmark -i INPUT -f null -

ຫມາກແຫ້ງເປືອກແຂງ
- syncpoints ທົງ
ປ່ຽນ​ການ​ນໍາ​ໃຊ້ syncpoint ໃນ​ຫມາກ​ແຫ້ງ​ເປືອກ​ແຂງ​:

Default ການນໍາໃຊ້ ໄດ້ ປົກກະຕິ ຕໍ່າສຸດ ກໍາລັງຊອກຫາ ເຄື່ອງຊ່ວຍ.
none do ບໍ່ ການນໍາໃຊ້ ໄດ້ ຈຸດເຊື່ອມຕໍ່ at ທັງ ໝົດ, ການຫຼຸດຜ່ອນ ໄດ້ overhead ແຕ່ ເຮັດໃຫ້ ໄດ້ ນ້ໍາ
ບໍ່ສາມາດຊອກຫາໄດ້;
ການນໍາໃຊ້ທາງເລືອກນີ້ບໍ່ໄດ້ຖືກແນະນໍາໃຫ້, ເນື່ອງຈາກວ່າໄຟລ໌ຜົນໄດ້ຮັບແມ່ນຄວາມເສຍຫາຍຫຼາຍ
ທີ່ລະອຽດອ່ອນ ແລະການຊອກຫາແມ່ນເປັນໄປບໍ່ໄດ້. ນອກຈາກນີ້ໂດຍທົ່ວໄປ overhead ຈາກ
syncpoints ແມ່ນ negligible. ຫມາຍເຫດ, -C 0 ສາມາດຖືກນໍາໃຊ້ເພື່ອປິດການໃຊ້ງານ
ຕາ​ຕະ​ລາງ​ການ​ຂະ​ຫຍາຍ​ຕົວ​ທັງ​ຫມົດ​ຂອງ​ຂໍ້​ມູນ​, ປ່ອຍ​ໃຫ້​ມີ​ການ​ສະ​ຕ​ຣີມ​ບໍ່​ມີ​ທີ່​ສິ້ນ​ສຸດ​ທີ່​ມີ​ຄວາມ​ຈໍາ​ຈໍາ​ກັດ​
ແລະບໍ່ມີຂໍ້ເສຍເຫຼົ່ານີ້.

ເວລາ ຂະຫຍາຍ ໄດ້ ຈຸດເຊື່ອມຕໍ່ ກັບ a ຝາຜະ ໜັງ ພາກສະຫນາມ.

ໄດ້ none ແລະ ເວລາ ທຸງແມ່ນການທົດລອງ.

-write_index bool
ຂຽນດັດສະນີໃນຕອນທ້າຍ, ຄ່າເລີ່ມຕົ້ນແມ່ນການຂຽນດັດສະນີ.

ffmpeg -i INPUT -f_strict ການທົດລອງ -syncpoints none - | ໂຮງງານຜະລິດ

ogg
Ogg container muxer.

-page_duration ໄລຍະເວລາ
ໄລຍະເວລາຂອງໜ້າທີ່ຕ້ອງການ, ເປັນ microseconds. muxer ຈະພະຍາຍາມສ້າງຫນ້າທີ່
ແມ່ນປະມານ ໄລຍະເວລາ microseconds ຍາວ. ນີ້ອະນຸຍາດໃຫ້ຜູ້ໃຊ້ປະນີປະນອມ
ລະຫວ່າງຊອກຫາ granularity ແລະ overhead container. ຄ່າເລີ່ມຕົ້ນແມ່ນ 1 ວິນາທີ. ຄ່າຂອງ 0
ຈະຕື່ມຂໍ້ມູນໃສ່ທຸກສ່ວນ, ເຮັດໃຫ້ຫນ້າໃຫຍ່ເທົ່າທີ່ເປັນໄປໄດ້. ຄ່າຂອງ 1 ຈະ
ນຳໃຊ້ 1 ຊອງຕໍ່ໜ້າຢ່າງມີປະສິດທິພາບໃນສະຖານະການສ່ວນໃຫຍ່, ໃຫ້ມີຂະໜາດນ້ອຍ
ໃນຄ່າໃຊ້ຈ່າຍຂອງ overhead ຕູ້ຄອນເທນເນີເພີ່ມເຕີມ.

-serial_offset ມູນຄ່າ
ຄ່າ Serial ທີ່ຈະຕັ້ງໝາຍເລກ Serial streams. ການ​ຕັ້ງ​ຄ່າ​ມັນ​ເປັນ​ທີ່​ແຕກ​ຕ່າງ​ກັນ​ແລະ​
ມູນຄ່າຂະຫນາດໃຫຍ່ພຽງພໍຮັບປະກັນວ່າໄຟລ໌ ogg ທີ່ຜະລິດສາມາດຖືກຕ່ອງໂສ້ຢ່າງປອດໄພ.

ຕອນ, stream_segment, ພາກສ່ວນ
ສ່ວນການຖ່າຍທອດພື້ນຖານ.

muxer ນີ້ outputs streams ກັບຈໍານວນຂອງໄຟລ໌ແຍກຕ່າງຫາກຂອງໄລຍະເວລາເກືອບຄົງທີ່. ຜົນຜະລິດ
ຮູບແບບຊື່ໄຟລ໌ສາມາດຖືກຕັ້ງໃນຮູບແບບທີ່ຄ້າຍຄືກັບ image2, ຫຼືໂດຍໃຊ້ "srftime"
ແມ່ແບບຖ້າຫາກວ່າ ເວລາຕໍ່ເວລາ ທາງເລືອກແມ່ນເປີດໃຫ້ໃຊ້ງານ.

"stream_segment" ແມ່ນຕົວແປຂອງ muxer ທີ່ໃຊ້ໃນການຂຽນເພື່ອຖ່າຍທອດຮູບແບບຜົນຜະລິດ, ie.
ເຊິ່ງບໍ່ຈຳເປັນຕ້ອງມີສ່ວນຫົວທົ່ວໂລກ, ແລະແນະນຳໃຫ້ສົ່ງຜົນອອກ ເຊັ່ນ: MPEG
ພາກສ່ວນກະແສການຂົນສົ່ງ. "ssegment" ເປັນນາມແຝງທີ່ສັ້ນກວ່າສໍາລັບ "stream_segment".

ທຸກໆພາກສ່ວນເລີ່ມຕົ້ນດ້ວຍຄີເຟຣມຂອງກະແສອ້າງອີງທີ່ເລືອກ, ເຊິ່ງຖືກຕັ້ງໄວ້
ໂດຍຜ່ານການ reference_stream ທາງເລືອກ.

ໃຫ້ສັງເກດວ່າຖ້າທ່ານຕ້ອງການການແບ່ງປັນທີ່ຖືກຕ້ອງສໍາລັບໄຟລ໌ວິດີໂອ, ທ່ານຈໍາເປັນຕ້ອງເຮັດລະຫັດປ້ອນຂໍ້ມູນ
ເຟຣມກົງກັບເວລາແຍກທີ່ແນ່ນອນທີ່ຄາດໄວ້ໂດຍ segmenter, ຫຼື segment
muxer ຈະເລີ່ມຕົ້ນພາກສ່ວນໃຫມ່ດ້ວຍກອບທີ່ສໍາຄັນທີ່ພົບເຫັນຕໍ່ໄປຫຼັງຈາກການເລີ່ມຕົ້ນທີ່ກໍານົດ
ເວລາ.

ພາກສ່ວນ muxer ເຮັດວຽກທີ່ດີທີ່ສຸດກັບວິດີໂອອັດຕາເຟມຄົງທີ່ດຽວ.

ທາງເລືອກທີ່ມັນສາມາດສ້າງບັນຊີລາຍຊື່ຂອງພາກສ່ວນທີ່ສ້າງຂຶ້ນ, ໂດຍການຕັ້ງຄ່າທາງເລືອກ
segment_list. ປະ​ເພດ​ບັນ​ຊີ​ໄດ້​ລະ​ບຸ​ໄວ້​ໂດຍ​ segment_list_type ທາງເລືອກ. ການເຂົ້າ
ຊື່ໄຟລ໌ໃນລາຍການສ່ວນແມ່ນຖືກຕັ້ງເປັນຄ່າເລີ່ມຕົ້ນຂອງຊື່ພື້ນຖານທີ່ສອດຄ້ອງກັນ
ໄຟລ໌ສ່ວນ.

ເບິ່ງອີກ hls muxer, ເຊິ່ງສະຫນອງການປະຕິບັດສະເພາະສໍາລັບ HLS
ການແບ່ງສ່ວນ.

ທາງເລືອກໃນການ

ພາກສ່ວນ muxer ສະຫນັບສະຫນູນທາງເລືອກຕໍ່ໄປນີ້:

reference_stream ຕົວລະບຸ
ຕັ້ງສະຕຣີມອ້າງອີງ, ຕາມທີ່ກຳນົດໄວ້ໂດຍສະຕຣິງ ຕົວລະບຸທີ່ຢູ່ ຖ້າຫາກວ່າ ຕົວລະບຸ ແມ່ນໄດ້ກໍານົດໄວ້
ກັບ "ອັດຕະໂນມັດ", ການອ້າງອີງຖືກເລືອກໂດຍອັດຕະໂນມັດ. ຖ້າບໍ່ດັ່ງນັ້ນມັນຕ້ອງເປັນກະແສ
ຕົວລະບຸ (ເບິ່ງບົດ ``ຕົວລະບຸສະຕຣີມ'' ໃນຄູ່ມື ffmpeg) ເຊິ່ງລະບຸ
ກະແສອ້າງອີງ. ຄ່າເລີ່ມຕົ້ນແມ່ນ "ອັດຕະໂນມັດ".

segment_format ຮູບແບບ
ລົບລ້າງຮູບແບບບັນຈຸພາຍໃນ, ໂດຍຄ່າເລີ່ມຕົ້ນມັນຖືກຄາດເດົາໂດຍຊື່ໄຟລ໌
ການຂະຫຍາຍ.

segment_format_options options_list
ຕັ້ງຕົວເລືອກຮູບແບບຜົນຜະລິດໂດຍໃຊ້ :-separated list of key=value parameters. ຄຸນຄ່າ
ປະກອບດ້ວຍຕົວອັກສອນພິເສດ ":" ຕ້ອງໄດ້ຮັບການຫລົບຫນີ.

segment_list ຊື່
ສ້າງລາຍຊື່ໄຟລ໌ທີ່ມີຊື່ ຊື່. ຖ້າບໍ່ໄດ້ລະບຸບໍ່ມີລາຍຊື່ໄຟລ໌ຖືກສ້າງ.

segment_list_flags ທົງ
ຕັ້ງທຸງສົ່ງຜົນກະທົບຕໍ່ການສ້າງລາຍຊື່ພາກສ່ວນ.

ໃນປັດຈຸບັນມັນສະຫນັບສະຫນູນທຸງດັ່ງຕໍ່ໄປນີ້:

ຖານຄວາມຈໍາ
ອະ​ນຸ​ຍາດ​ໃຫ້​ຖານ​ຄວາມ​ຈໍາ (ພຽງ​ແຕ່​ມີ​ຜົນ​ກະ​ທົບ​ໄຟລ​໌​ລາຍ​ຊື່ M3U8​)​.

ດໍາລົງຊີວິດ
ອະນຸຍາດໃຫ້ສ້າງໄຟລ໌ທີ່ເປັນມິດກັບຊີວິດ.

segment_list_size ຂະຫນາດ
ປັບປຸງໄຟລ໌ບັນຊີລາຍຊື່ເພື່ອໃຫ້ມັນມີຫຼາຍທີ່ສຸດ ຂະຫນາດ ພາກສ່ວນ. ຖ້າ 0 ໄຟລ໌ບັນຊີລາຍຊື່
ຈະມີສ່ວນທັງໝົດ. ຄ່າເລີ່ມຕົ້ນແມ່ນ 0.

segment_list_entry_prefix ຄຳ ນຳ ໜ້າ
ລ່ວງໜ້າ ຄຳ ນຳ ໜ້າ ໃນແຕ່ລະລາຍການ. ມີປະໂຫຍດໃນການສ້າງເສັ້ນທາງຢ່າງແທ້ຈິງ. ໂດຍຄ່າເລີ່ມຕົ້ນບໍ່ມີຄໍານໍາຫນ້າ
ຖືກນໍາໃຊ້.

segment_list_type ປະເພດ
ເລືອກຮູບແບບລາຍຊື່.

ຄ່າຕໍ່ໄປນີ້ຖືກຮັບຮູ້:

ແປ
ສ້າງບັນຊີລາຍຊື່ຮາບພຽງສໍາລັບພາກສ່ວນທີ່ສ້າງຂື້ນ, ຫນຶ່ງສ່ວນຕໍ່ແຖວ.

csv, ext
ສ້າງບັນຊີລາຍຊື່ສໍາລັບພາກສ່ວນທີ່ສ້າງຂຶ້ນ, ຫນຶ່ງສ່ວນຕໍ່ແຖວ, ແຕ່ລະເສັ້ນກົງກັນ
ຮູບແບບ (ຄ່າທີ່ຂັ້ນດ້ວຍເຄື່ອງໝາຍຈຸດ):

, ,

segment_filename ແມ່ນຊື່ຂອງໄຟລ໌ຜົນຜະລິດທີ່ສ້າງຂຶ້ນໂດຍ muxer ຕາມ
ກັບຮູບແບບທີ່ສະຫນອງໃຫ້. ການຫລົບຫນີ CSV (ອີງຕາມ RFC4180) ຖືກນໍາໃຊ້ຖ້າ
ຕ້ອງການ.

segment_start_time ແລະ segment_end_time ລະບຸຕອນເລີ່ມຕົ້ນ ແລະເວລາສິ້ນສຸດ
ສະແດງອອກໃນວິນາທີ.

ໄຟລ໌ລາຍຊື່ທີ່ມີຄຳຕໍ່ທ້າຍ ".csv" ຫຼື ".ext" ຈະເລືອກຮູບແບບນີ້ໂດຍອັດຕະໂນມັດ.

ext ຖືກປະຕິເສດໃນເງື່ອນໄຂຫຼື csv.

ffconcat
ສ້າງໄຟລ໌ ffconcat ສໍາລັບພາກສ່ວນທີ່ສ້າງຂຶ້ນ. ໄຟລ໌ຜົນໄດ້ຮັບສາມາດອ່ານໄດ້
ໃຊ້ FFmpeg concat demuxer.

ໄຟລ໌ລາຍຊື່ທີ່ມີຄຳຕໍ່ທ້າຍ ".ffcat" ຫຼື ".ffconcat" ຈະເລືອກຮູບແບບນີ້ໂດຍອັດຕະໂນມັດ.

m3u8
ສ້າງໄຟລ໌ M3U8 ຂະຫຍາຍ, ຮຸ່ນ 3, ສອດຄ່ອງກັບ
<http://tools.ietf.org/id/draft-pantos-http-live-streaming>.

ໄຟລ໌ລາຍຊື່ທີ່ມີຄຳຕໍ່ທ້າຍ ".m3u8" ຈະເລືອກຮູບແບບນີ້ໂດຍອັດຕະໂນມັດ.

ຖ້າບໍ່ໄດ້ລະບຸປະເພດແມ່ນຄາດເດົາຈາກຊື່ໄຟລ໌ລາຍຊື່.

segment_time ທີ່ໃຊ້ເວລາ
ກໍານົດໄລຍະເວລາຂອງພາກສ່ວນເປັນ ທີ່ໃຊ້ເວລາ, ຄ່າຈະຕ້ອງເປັນໄລຍະເວລາສະເພາະ. ຄ່າເລີ່ມຕົ້ນ
ຄ່າແມ່ນ "2". ເບິ່ງຍັງ segment_times ທາງເລືອກ.

ຈື່ໄວ້ວ່າການແຍກອາດຈະບໍ່ຖືກຕ້ອງ, ເວັ້ນເສຍແຕ່ວ່າທ່ານບັງຄັບໃຫ້ກະແຈສະຕຣີມອ້າງອີງ-
ເຟຣມໃນເວລາທີ່ກໍານົດ. ເບິ່ງແຈ້ງການແນະນໍາແລະຕົວຢ່າງຂ້າງລຸ່ມນີ້.

segment_atclocktime 1 | 0
ຖ້າຕັ້ງເປັນ "1" ແຍກໃນຊ່ວງເວລາປົກກະຕິຂອງໂມງເລີ່ມຕົ້ນຈາກ 00:00 ໂມງ. ໄດ້
ທີ່ໃຊ້ເວລາ ຄ່າທີ່ລະບຸໄວ້ໃນ segment_time ຖືກນໍາໃຊ້ເພື່ອກໍານົດຄວາມຍາວຂອງການແບ່ງປັນ
ໄລຍະຫ່າງ

ສໍາລັບການຍົກຕົວຢ່າງກັບ segment_time ຕັ້ງເປັນ "900" ນີ້ເຮັດໃຫ້ມັນເປັນໄປໄດ້ທີ່ຈະສ້າງໄຟລ໌ທີ່
12:00 ໂມງ, 12:15, 12:30, ແລະອື່ນໆ.

ຄ່າເລີ່ມຕົ້ນແມ່ນ "0".

segment_time_delta delta
ລະບຸເວລາຄວາມຖືກຕ້ອງໃນເວລາທີ່ເລືອກເວລາເລີ່ມຕົ້ນສໍາລັບພາກສ່ວນໃດຫນຶ່ງ, ສະແດງເປັນ a
ໄລຍະເວລາສະເພາະ. ຄ່າເລີ່ມຕົ້ນແມ່ນ "0".

ເມື່ອ delta ຖືກລະບຸ, key-frame ຈະເລີ່ມຕົ້ນພາກສ່ວນໃຫມ່ຖ້າ PTS ຂອງມັນພໍໃຈ.
ສາຍພົວພັນ:

PTS >= start_time - time_delta

ຕົວເລືອກນີ້ມີປະໂຫຍດໃນເວລາທີ່ແຍກເນື້ອຫາວິດີໂອ, ເຊິ່ງສະເຫມີແບ່ງອອກຢູ່ GOP
ຂອບເຂດຊາຍແດນ, ໃນກໍລະນີທີ່ພົບກອບທີ່ສໍາຄັນກ່ອນເວລາທີ່ກໍານົດ.

ໂດຍສະເພາະອາດຈະຖືກນໍາໃຊ້ໃນການປະສົມປະສານກັບ ffmpeg ທາງເລືອກ force_key_frames. ໄດ້
ເວລາກອບຫຼັກທີ່ລະບຸໂດຍ force_key_frames ອາດຈະບໍ່ຖືກກໍານົດຢ່າງຖືກຕ້ອງຍ້ອນ
ບັນຫາຮອບໆ, ດ້ວຍຜົນສະທ້ອນທີ່ເວລາກອບທີ່ສໍາຄັນອາດຈະສົ່ງຜົນໃຫ້ກໍານົດໄວ້ກ່ອນ
ເວລາທີ່ກໍານົດໄວ້. ສຳລັບວິດີໂອອັດຕາເຟຣມຄົງທີ່ ຄ່າ 1/(2*frame_rate) ຄວນ
ແກ້ໄຂກໍລະນີທີ່ບໍ່ກົງກັນທີ່ຮ້າຍແຮງທີ່ສຸດລະຫວ່າງເວລາທີ່ກໍານົດໄວ້ແລະເວລາທີ່ກໍານົດໂດຍ
force_key_frames.

segment_times ເວລາ
ລະບຸລາຍຊື່ຈຸດແບ່ງ. ເວລາ ມີລາຍຊື່ໄລຍະເວລາທີ່ແຍກດ້ວຍເຄື່ອງໝາຍຈຸດ
ສະເພາະ, ໃນຄໍາສັ່ງເພີ່ມຂຶ້ນ. ເບິ່ງຍັງ segment_time ທາງເລືອກ.

segment_frames ນໍາ
ລະບຸລາຍຊື່ຂອງຕົວເລກກອບວິດີໂອທີ່ແບ່ງອອກ. ນໍາ ມີລາຍຊື່ຂອງເຄື່ອງໝາຍຈຸດທີ່ແຍກອອກ
ຕົວເລກຈໍານວນເຕັມ, ໃນຄໍາສັ່ງເພີ່ມຂຶ້ນ.

ຕົວເລືອກນີ້ກຳນົດໃຫ້ເລີ່ມພາກສ່ວນໃໝ່ທຸກຄັ້ງທີ່ກອບກະແຈສະຕຣີມອ້າງອີງ
ພົບແລະຕົວເລກລໍາດັບ (ເລີ່ມຕົ້ນຈາກ 0) ຂອງກອບແມ່ນໃຫຍ່ກວ່າຫຼືເທົ່າກັບ
ມູນຄ່າຕໍ່ໄປໃນບັນຊີລາຍຊື່.

segment_wrap ກໍານົດຂອບເຂດ
ຫໍ່ຮອບດັດຊະນີສ່ວນເມື່ອມັນໄປຮອດ ກໍານົດຂອບເຂດ.

segment_start_number ຈໍານວນ
ກໍານົດຈໍານວນລໍາດັບຂອງສ່ວນທໍາອິດ. ຄ່າເລີ່ມຕົ້ນເປັນ 0.

ເວລາຕໍ່ເວລາ 1 | 0
ໃຊ້ຟັງຊັນ "strftime" ເພື່ອກໍານົດຊື່ຂອງພາກສ່ວນໃຫມ່ທີ່ຈະຂຽນ. ຖ້ານີ້
ຖືກເລືອກ, ຊື່ພາກສ່ວນຜົນຜະລິດຕ້ອງມີແມ່ແບບຟັງຊັນ "strftime".
ຄ່າເລີ່ມຕົ້ນແມ່ນ 0.

break_non_keyframes 1 | 0
ຖ້າເປີດໃຊ້ງານ, ອະນຸຍາດໃຫ້ພາກສ່ວນເລີ່ມຕົ້ນໃນເຟຣມອື່ນນອກເໜືອໄປຈາກຄີເຟຣມ. ນີ້ປັບປຸງ
ພຶດຕິກໍາໃນບາງຜູ້ນໃນເວລາທີ່ເວລາລະຫວ່າງຄີເຟຣມບໍ່ສອດຄ່ອງ, ແຕ່ອາດຈະເຮັດໃຫ້
ສິ່ງທີ່ຮ້າຍແຮງກວ່າເກົ່າກ່ຽວກັບຄົນອື່ນ, ແລະສາມາດເຮັດໃຫ້ເກີດຄວາມແປກປະຫລາດບາງຢ່າງໃນລະຫວ່າງການຊອກຫາ. ຄ່າເລີ່ມຕົ້ນເປັນ 0.

reset_timestamps 1 | 0
ຣີເຊັດສະແຕມເວລາໃນຕອນເລີ່ມຕົ້ນຂອງແຕ່ລະພາກສ່ວນ, ດັ່ງນັ້ນແຕ່ລະພາກສ່ວນຈະເລີ່ມຕົ້ນດ້ວຍ
ເວລາໃກ້ສູນ. ມັນມີຈຸດປະສົງເພື່ອຜ່ອນຄາຍການຫຼິ້ນຂອງພາກສ່ວນທີ່ສ້າງຂຶ້ນ. ພຶດສະພາ
ບໍ່ເຮັດວຽກກັບບາງການປະສົມປະສານຂອງ muxers/codecs. ມັນຖືກກໍານົດເປັນ 0 ໂດຍຄ່າເລີ່ມຕົ້ນ.

initial_offset ຊົດເຊີຍ
ລະບຸເວລາຊົດເຊີຍເພື່ອນຳໃຊ້ກັບການສະແຕມເວລາແພັກເກັດຜົນຜະລິດ. ການໂຕ້ຖຽງຕ້ອງ
ເປັນ​ສະ​ເພາະ​ຂອງ​ໄລ​ຍະ​ເວ​ລາ​, ແລະ​ເລີ່ມ​ຕົ້ນ​ເປັນ 0​.

ຕົວຢ່າງ

· Remux ເນື້ອໃນຂອງໄຟລ໌ in.mkv ກັບບັນຊີລາຍຊື່ຂອງພາກສ່ວນ out-000.nut, out-001.nut, ແລະອື່ນໆ,
ແລະຂຽນບັນຊີລາຍຊື່ຂອງພາກສ່ວນທີ່ສ້າງຂຶ້ນ out.list:

ffmpeg -i in.mkv -codec ສຳເນົາ -map 0 -f segment -segment_list out.list out%03d.nut

· ການ​ປ້ອນ​ຂໍ້​ມູນ​ພາກ​ສ່ວນ​ແລະ​ກໍາ​ນົດ​ທາງ​ເລືອກ​ຮູບ​ແບບ​ຜົນ​ຜະ​ລິດ​ສໍາ​ລັບ​ພາກ​ສ່ວນ​ຜົນ​ຜະ​ລິດ​ໄດ້​:

ffmpeg -i in.mkv -f segment -segment_time 10 -segment_format_options movflags=+faststart out%03d.mp4

· ແບ່ງໄຟລ໌ປ້ອນຂໍ້ມູນຕາມຈຸດແບ່ງທີ່ລະບຸໄວ້ໂດຍ segment_times
ຕົວເລືອກ:

ffmpeg -i in.mkv -codec ສຳເນົາ -map 0 -f segment -segment_list out.csv -segment_times 1,2,3,5,8,13,21 out%03d.nut

· ໃຊ້ ffmpeg force_key_frames ທາງ​ເລືອກ​ທີ່​ຈະ​ບັງ​ຄັບ​ເຟຣມ​ທີ່​ສໍາ​ຄັນ​ໃນ​ການ​ປ້ອນ​ຂໍ້​ມູນ​ທີ່​
ສະຖານທີ່ທີ່ລະບຸໄວ້, ພ້ອມກັບຕົວເລືອກສ່ວນ segment_time_delta ບັນຊີສໍາລັບ
ຮອບທີ່ເປັນໄປໄດ້ດໍາເນີນການໃນເວລາທີ່ກໍານົດເວລາກອບທີ່ສໍາຄັນ.

ffmpeg -i in.mkv -force_key_frames 1,2,3,5,8,13,21 -codec:v mpeg4 -codec:a pcm_s16le -map 0 \
-f segment -segment_list out.csv -segment_times 1,2,3,5,8,13,21 -segment_time_delta 0.05 out%03d.nut

ເພື່ອບັງຄັບກອບຄີໃນໄຟລ໌ປ້ອນຂໍ້ມູນ, ຈໍາເປັນຕ້ອງມີການປ່ຽນລະຫັດ.

·ແບ່ງໄຟລ໌ປ້ອນຂໍ້ມູນໂດຍການແຍກໄຟລ໌ປ້ອນຂໍ້ມູນຕາມຕົວເລກກອບ
ລໍາດັບທີ່ລະບຸໄວ້ກັບ segment_frames ຕົວເລືອກ:

ffmpeg -i in.mkv -codec ສຳເນົາ -map 0 -f segment -segment_list out.csv -segment_frames 100,200,300,500,800 out%03d.nut

· ແປງ in.mkv ໄປຫາພາກສ່ວນ TS ໂດຍໃຊ້ຕົວເຂົ້າລະຫັດ "libx264" ແລະ "libfaac":

ffmpeg -i in.mkv -map 0 -codec:v libx264 -codec:a libfaac -f ssegment -segment_list out.list out%03d.ts

·ແບ່ງໄຟລ໌ປ້ອນຂໍ້ມູນ, ແລະສ້າງລາຍການຫຼິ້ນສົດ M3U8 (ສາມາດໃຊ້ເປັນ HLS ສົດ
ແຫຼ່ງ):

ffmpeg -re -i in.mkv -codec ສຳເນົາ -map 0 -f segment -segment_list playlist.m3u8 \
-segment_list_flags +live -segment_time 10 out%03d.mkv

ກ້ຽງ
Smooth Streaming muxer ສ້າງຊຸດຂອງໄຟລ໌ (Manifest, chunks) ທີ່ເຫມາະສົມສໍາລັບການບໍລິການ.
ກັບເຄື່ອງແມ່ຂ່າຍເວັບໄຊຕ໌ທໍາມະດາ.

window_size
ລະບຸຈໍານວນຂອງຊິ້ນສ່ວນທີ່ເກັບໄວ້ໃນ manifest. ຄ່າເລີ່ມຕົ້ນ 0 (ຮັກສາໄວ້ທັງໝົດ).

extra_window_size
ລະບຸຈໍານວນຂອງຊິ້ນສ່ວນທີ່ເກັບຮັກສາໄວ້ຢູ່ນອກ manifest ກ່ອນທີ່ຈະເອົາອອກຈາກ
ແຜ່ນ. ຄ່າເລີ່ມຕົ້ນ 5.

lookahead_count
ລະບຸຈໍານວນຊິ້ນສ່ວນການເບິ່ງ. ຄ່າເລີ່ມຕົ້ນ 2.

min_frag_duration
ລະບຸໄລຍະເວລາຕໍາ່ສຸດທີ່ fragment (ເປັນ microseconds). ຄ່າເລີ່ມຕົ້ນ 5000000.

remove_at_exit
ລະບຸວ່າຈະເອົາຊິ້ນສ່ວນທັງໝົດອອກບໍ່ເມື່ອສໍາເລັດ. ຄ່າເລີ່ມຕົ້ນ 0 (ບໍ່ເອົາອອກ).

tee
tee muxer ສາ​ມາດ​ຖືກ​ນໍາ​ໃຊ້​ເພື່ອ​ຂຽນ​ຂໍ້​ມູນ​ດຽວ​ກັນ​ກັບ​ຫຼາຍ​ໄຟລ​໌​ຫຼື​ປະ​ເພດ​ອື່ນໆ​ຂອງ​
muxer. ມັນສາມາດຖືກນໍາໃຊ້, ສໍາລັບການຍົກຕົວຢ່າງ, ທັງສອງນ້ໍາວິດີໂອກັບເຄືອຂ່າຍແລະບັນທຶກມັນໃສ່
disk ໃນເວລາດຽວກັນ.

ມັນແຕກຕ່າງຈາກການລະບຸຜົນຜະລິດຫຼາຍອັນກັບ ffmpeg ເຄື່ອງມືເສັ້ນຄໍາສັ່ງເນື່ອງຈາກວ່າ
ຂໍ້ມູນສຽງແລະວິດີໂອຈະຖືກເຂົ້າລະຫັດພຽງແຕ່ຄັ້ງດຽວກັບ tee muxer; ການເຂົ້າລະຫັດສາມາດເປັນ
ຂະບວນການລາຄາແພງຫຼາຍ. ມັນບໍ່ເປັນປະໂຫຍດເມື່ອໃຊ້ libavformat API ໂດຍກົງເພາະວ່າ
ຫຼັງຈາກນັ້ນ, ມັນເປັນໄປໄດ້ທີ່ຈະໃຫ້ອາຫານຊອງດຽວກັນກັບ muxers ຫຼາຍໂດຍກົງ.

ຜົນໄດ້ຮັບຂອງທາດຖືກລະບຸໄວ້ໃນຊື່ໄຟລ໌ທີ່ມອບໃຫ້ muxer, ແຍກດ້ວຍ '|'. ຖ້າ
ຊື່ທາດໃດນຶ່ງມີ '|' ຕົວແຍກ, ຊັ້ນນໍາ ຫຼື ແຖວຫຼັງ ຫຼື ໃດໆ
ລັກສະນະພິເສດ, ມັນຕ້ອງໄດ້ຮັບການຫລົບຫນີ (ເບິ່ງ ໄດ້ "ການອ້າງອີງ ແລະ ໜີ" ສ່ວນ in ໄດ້
ffmpeg-utils(1​) ຄູ່ມື).

ທາງ​ເລືອກ Muxer ສາ​ມາດ​ໄດ້​ຮັບ​ການ​ລະ​ບຸ​ໄວ້​ສໍາ​ລັບ​ສໍາ​ລອງ​ແຕ່​ລະ​ຄົນ​ໂດຍ prepending ໃຫ້​ເຂົາ​ເຈົ້າ​ເປັນ​ບັນ​ຊີ​ລາຍ​ການ​ຂອງ​ ທີ່ສໍາຄັນ=ມູນຄ່າ
ຄູ່ທີ່ແຍກດ້ວຍ ':', ລະຫວ່າງວົງເລັບສີ່ຫຼ່ຽມ. ຖ້າຄ່າທາງເລືອກປະກອບດ້ວຍພິເສດ
ລັກ​ສະ​ນະ​ຫຼື​ຕົວ​ແຍກ ':', ພວກ​ເຂົາ​ເຈົ້າ​ຕ້ອງ​ໄດ້​ຮັບ​ການ​ຫນີ​; ໃຫ້ສັງເກດວ່ານີ້ແມ່ນລະດັບທີສອງ
ໜີ.

ທາງເລືອກພິເສດຕໍ່ໄປນີ້ຍັງຖືກຮັບຮູ້:

f ລະບຸຊື່ຮູບແບບ. ເປັນປະໂຫຍດຖ້າມັນບໍ່ສາມາດຄາດເດົາໄດ້ຈາກຄໍາຕໍ່ທ້າຍຊື່ຜົນໄດ້ຮັບ.

bsfs[/ສະເປັກ]
ລະບຸລາຍຊື່ຕົວກອງ bitstream ເພື່ອນຳໃຊ້ກັບຜົນຜະລິດທີ່ລະບຸ.

ມັນເປັນໄປໄດ້ທີ່ຈະລະບຸວ່າຕົວກອງ bitstream ໃດຖືກນຳໃຊ້, ໂດຍ
ຕື່ມຂໍ້ມູນໃສ່ຕົວລະບຸການຖ່າຍທອດໃຫ້ກັບຕົວເລືອກທີ່ແຍກອອກດ້ວຍ "/". ສະເປັກ ຕ້ອງເປັນກະແສ
ຕົວລະບຸ (ເບິ່ງ ຮູບແບບ ນ້ໍາ specifiers). ຖ້າຕົວລະບຸການຖ່າຍທອດບໍ່ໄດ້ຖືກລະບຸ,
ຕົວກອງ bitstream ຈະຖືກນໍາໃຊ້ກັບສາຍນ້ໍາທັງຫມົດໃນຜົນໄດ້ຮັບ.

ການກັ່ນຕອງ bitstream ຫຼາຍສາມາດຖືກກໍານົດ, ແຍກອອກໂດຍ ",".

ເລືອກ
ເລືອກສະຕຣີມທີ່ຄວນຈະຖືກສ້າງແຜນທີ່ກັບຜົນອອກມາຂອງທາດ, ລະບຸໂດຍສະຕຣີມ
ຕົວລະບຸ. ຖ້າບໍ່ໄດ້ລະບຸ, ອັນນີ້ຈະເປັນຄ່າເລີ່ມຕົ້ນຂອງກະແສການປ້ອນຂໍ້ມູນທັງໝົດ.

ຕົວຢ່າງ

·ເຂົ້າລະຫັດບາງສິ່ງບາງຢ່າງແລະທັງສອງເກັບໄວ້ໃນໄຟລ໌ WebM ແລະຖ່າຍທອດມັນເປັນ MPEG-TS ຜ່ານ UDP
(ສາຍນ້ຳຕ້ອງຖືກສ້າງແຜນທີ່ຢ່າງຈະແຈ້ງ):

ffmpeg -i ... -c:v libx264 -c:a mp2 -f tee -map 0:v -map 0:a
"archive-20121107.mkv|[f=mpegts]udp://10.0.1.255:1234/"

· ການ​ນໍາ​ໃຊ້ ffmpeg ເພື່ອເຂົ້າລະຫັດການປ້ອນຂໍ້ມູນ, ແລະສົ່ງຜົນໄດ້ຮັບໄປຫາສາມຈຸດຫມາຍປາຍທາງທີ່ແຕກຕ່າງກັນ.
ຕົວກອງ bitstream "dump_extra" ຖືກນໍາໃຊ້ເພື່ອເພີ່ມຂໍ້ມູນ extradata ກັບທັງຫມົດ
ສົ່ງອອກແພັກເກັດຄີເຟຣມວິດີໂອ, ຕາມການຮ້ອງຂໍຂອງຮູບແບບ MPEG-TS. ທາງ​ເລືອກ​ທີ່​ເລືອກ​
ຖືກນໍາໃຊ້ກັບ out.aac ເພື່ອເຮັດໃຫ້ມັນມີຊຸດສຽງເທົ່ານັ້ນ.

ffmpeg -i ... -map 0 -flags +global_header -c:v libx264 -c:a aac -ແບບທົດລອງຢ່າງເຂັ້ມງວດ
-f tee "[bsfs/v=dump_extra]out.ts|[movflags=+faststart]out.mp4|[select=a]out.aac"

· ດັ່ງ​ລຸ່ມ​ນີ້​, ແຕ່​ເລືອກ​ເອົາ​ພຽງ​ແຕ່ stream "a​: 1​" ສໍາ​ລັບ​ການ​ອອກ​ສຽງ​. ໃຫ້ສັງເກດວ່າລະດັບທີສອງ
ການຫລົບຫນີຕ້ອງຖືກປະຕິບັດ, ເພາະວ່າ ":" ແມ່ນລັກສະນະພິເສດທີ່ໃຊ້ເພື່ອແຍກທາງເລືອກ.

ffmpeg -i ... -map 0 -flags +global_header -c:v libx264 -c:a aac -ແບບທົດລອງຢ່າງເຂັ້ມງວດ
-f tee "[bsfs/v=dump_extra]out.ts|[movflags=+faststart]out.mp4|[select=\'a:1\']out.aac"

ຫມາຍເຫດ: ບາງຕົວແປງສັນຍານອາດຈະຕ້ອງການທາງເລືອກທີ່ແຕກຕ່າງກັນຂຶ້ນຢູ່ກັບຮູບແບບຜົນຜະລິດ; ອັດ​ຕະ​ໂນ​ມັດ -
ການກວດພົບນີ້ບໍ່ສາມາດເຮັດວຽກກັບ tee muxer ໄດ້. ຕົວຢ່າງຕົ້ນຕໍແມ່ນ global_header
ທຸງ.

webm_dash_manifest
WebM DASH Manifest muxer.

muxer ນີ້ປະຕິບັດຂໍ້ກໍາຫນົດ WebM DASH Manifest ເພື່ອສ້າງ DASH manifest
XML. ມັນຍັງສະຫນັບສະຫນູນການຜະລິດ manifest ສໍາລັບການຖ່າຍທອດສົດ DASH.

ສໍາລັບຂໍ້ມູນເພີ່ມເຕີມເບິ່ງ:

· WebM DASH Specification:
<https://sites.google.com/a/webmproject.org/wiki/adaptive-streaming/webm-dash-specification>

· ISO DASH Specification:
<http://standards.iso.org/ittf/PubliclyAvailableStandards/c065274_ISO_IEC_23009-1_2014.zip>

ທາງເລືອກໃນການ

muxer ນີ້​ສະ​ຫນັບ​ສະ​ຫນູນ​ທາງ​ເລືອກ​ດັ່ງ​ຕໍ່​ໄປ​ນີ້​:

adaptation_sets
ຕົວເລືອກນີ້ມີ syntax ຕໍ່ໄປນີ້: "id=x,streams=a,b,c id=y,streams=d,e" ບ່ອນທີ່ x
ແລະ y ແມ່ນຕົວລະບຸທີ່ເປັນເອກະລັກຂອງຊຸດການປັບຕົວ ແລະ a,b,c,d ແລະ e ແມ່ນ
ຕົວຊີ້ວັດຂອງການຖ່າຍທອດສຽງ ແລະວິດີໂອທີ່ສອດຄ້ອງກັນ. ຈໍານວນຂອງຊຸດການປັບຕົວ
ສາມາດເພີ່ມໄດ້ໂດຍໃຊ້ຕົວເລືອກນີ້.

ດໍາລົງຊີວິດ
ຕັ້ງຄ່ານີ້ເປັນ 1 ເພື່ອສ້າງການຖ່າຍທອດສົດ DASH Manifest. ຄ່າເລີ່ມຕົ້ນ: 0.

chunk_start_index
ດັດຊະນີເລີ່ມຕົ້ນຂອງ chunk ທໍາອິດ. ນີ້ຈະໄປໃນ ໝາຍເລກເລີ່ມຕົ້ນ ຄຸນ​ລັກ​ສະ​ນະ​ຂອງ​
ແມ່ແບບ Segment ອົງປະກອບໃນ manifest ໄດ້. ຄ່າເລີ່ມຕົ້ນ: 0.

chunk_duration_ms
ໄລຍະເວລາຂອງແຕ່ລະ chunk ເປັນ milliseconds. ນີ້ຈະໄປໃນ ໄລຍະເວລາ ຄຸນ​ລັກ​ສະ​ນະ​ຂອງ​
ແມ່ແບບ Segment ອົງປະກອບໃນ manifest ໄດ້. ຄ່າເລີ່ມຕົ້ນ: 1000.

utc_timeing_url
URL ຂອງຫນ້າທີ່ຈະສົ່ງຄືນເວລາ UTC ໃນຮູບແບບ ISO. ນີ້ຈະໄປໃນ
ມູນຄ່າ ຄຸນ​ລັກ​ສະ​ນະ​ຂອງ​ UTCTiming ອົງປະກອບໃນ manifest ໄດ້. ຄ່າເລີ່ມຕົ້ນ: ບໍ່ມີ.

time_shift_buffer_depth
ເວລາທີ່ນ້ອຍທີ່ສຸດ (ເປັນວິນາທີ) buffer ການເຄື່ອນຍ້າຍທີ່ຕົວແທນໃດໆແມ່ນຮັບປະກັນ
ສາມາດໃຊ້ໄດ້. ນີ້ຈະໄປໃນ timeShiftBufferDepth ຄຸນ​ລັກ​ສະ​ນະ​ຂອງ​ MPD
ອົງປະກອບ. ຄ່າເລີ່ມຕົ້ນ: 60.

ໄລຍະເວລາການອັບເດດຕໍາ່ສຸດທີ່
ໄລຍະເວລາການປັບປຸງຂັ້ນຕ່ໍາ (ເປັນວິນາທີ) ຂອງ manifest. ນີ້ຈະໄປໃນ
ໄລຍະເວລາການອັບເດດຂັ້ນຕໍ່າ ຄຸນ​ລັກ​ສະ​ນະ​ຂອງ​ MPD ອົງປະກອບ. ຄ່າເລີ່ມຕົ້ນ: 0.

ຍົກຕົວຢ່າງ

ffmpeg -f webm_dash_manifest -i video1.webm \
-f webm_dash_manifest -i video2.webm \
-f webm_dash_manifest -i audio1.webm \
-f webm_dash_manifest -i audio2.webm \
-map 0 -map 1 -map 2 -map 3 \
-c ສຳເນົາ \
-f webm_dash_manifest \
-adaptation_sets "id=0,streams=0,1 id=1,streams=2,3" \
manifest.xml

webm_chunk
WebM Live Chunk Muxer.

muxer ນີ້ຂຽນອອກສ່ວນຫົວ WebM ແລະ chunks ເປັນໄຟລ໌ແຍກຕ່າງຫາກທີ່ສາມາດບໍລິໂພກໄດ້
ລູກຄ້າທີ່ສະຫນັບສະຫນູນ WebM Live streams ຜ່ານ DASH.

ທາງເລືອກໃນການ

muxer ນີ້​ສະ​ຫນັບ​ສະ​ຫນູນ​ທາງ​ເລືອກ​ດັ່ງ​ຕໍ່​ໄປ​ນີ້​:

chunk_start_index
ດັດຊະນີຂອງ chunk ທໍາອິດ (ຄ່າເລີ່ມຕົ້ນເປັນ 0).

header
ຊື່ໄຟລ໌ຂອງສ່ວນຫົວທີ່ຂໍ້ມູນເບື້ອງຕົ້ນຈະຖືກຂຽນ.

audio_chunk_duration
ໄລຍະເວລາຂອງແຕ່ລະຊ່ອງສຽງເປັນ milliseconds (ຄ່າເລີ່ມຕົ້ນເປັນ 5000).

ຍົກຕົວຢ່າງ

ffmpeg -f v4l2 -i /dev/video0 \
-f alsa -i hw:0 \
- ແຜນທີ່ 0:0 \
-c:v libvpx-vp9 \
-s 640x360 -keyint_min 30 -g 30 \
-f webm_chunk \
-header webm_live_video_360.hdr \
-chunk_start_index 1 \
webm_live_video_360_%d.chk \
- ແຜນທີ່ 1:0 \
-c:a libvorbis \
-b:a 128k \
-f webm_chunk \
-header webm_live_audio_128.hdr \
-chunk_start_index 1 \
-audio_chunk_duration 1000 \
webm_live_audio_128_%d.chk

METADATA


FFmpeg ສາມາດຖິ້ມເມຕາເດຕາຈາກໄຟລ໌ມີເດຍເຂົ້າໄປໃນຂໍ້ຄວາມທີ່ເຂົ້າລະຫັດ UTF-8 ທີ່ເຂົ້າລະຫັດ INI ແບບງ່າຍດາຍ.
ໄຟລ໌ແລະຫຼັງຈາກນັ້ນໂຫຼດມັນຄືນໂດຍໃຊ້ metadata muxer/demuxer.

ຮູບ​ແບບ​ໄຟລ​໌​ດັ່ງ​ຕໍ່​ໄປ​ນີ້​:

1. ໄຟລ໌ປະກອບດ້ວຍສ່ວນຫົວ ແລະແທັກ metadata ຈໍານວນໜຶ່ງແບ່ງອອກເປັນພາກສ່ວນ, ແຕ່ລະອັນ
ຢູ່ໃນສາຍຂອງຕົນເອງ.

2. ສ່ວນຫົວແມ່ນ ກ ;FFMETADATA ສະຕຣິງ, ຕາມດ້ວຍເລກເວີຊັ່ນ (ດຽວນີ້ 1).

3. ແທັກເມຕາເດຕາມີຮູບແບບ key=value

4. ທັນທີຫຼັງຈາກ header ປະຕິບັດຕາມ metadata ທົ່ວໂລກ

5. ຫຼັງຈາກ metadata ທົ່ວໂລກອາດຈະມີສ່ວນທີ່ມີ metadata ຕໍ່ສະຕຣີມ/ຕໍ່ບົດ.

6. ພາກສ່ວນໜຶ່ງເລີ່ມຕົ້ນດ້ວຍຊື່ພາກໃນຕົວພິມໃຫຍ່ (ເຊັ່ນ: STREAM ຫຼື CHAPTER) ໃນ
ວົງເລັບ ([, ]) ແລະລົງທ້າຍດ້ວຍພາກຕໍ່ໄປ ຫຼືທ້າຍຂອງໄຟລ໌.

7. ໃນຕອນຕົ້ນຂອງພາກບົດໜຶ່ງ ອາດມີໄລຍະເວລາທາງເລືອກທີ່ຈະໃຊ້
ຄ່າເລີ່ມຕົ້ນ/ສິ້ນສຸດ. ມັນຕ້ອງຢູ່ໃນຮູບແບບ TIMEBASE=num/ໄດ້, ບ່ອນທີ່ num ແລະ ໄດ້ ເປັນຈໍານວນເຕັມ.
ຖ້າ timebase ຫາຍໄປ, ເວລາເລີ່ມຕົ້ນ / ສິ້ນສຸດແມ່ນສົມມຸດວ່າເປັນ milliseconds.

ຕໍ່ໄປ ພາກສ່ວນຂອງບົດຈະຕ້ອງມີເວລາເລີ່ມຕົ້ນ ແລະເວລາສິ້ນສຸດໃນແບບຟອມ START=num,
END=num, ບ່ອນທີ່ num ເປັນຈໍານວນບວກ.

8. ເສັ້ນເປົ່າແລະເສັ້ນເລີ່ມຕົ້ນດ້ວຍ ; or # ຖືກລະເລີຍ.

9. ລະຫັດເມຕາເດຕາ ຫຼືຄ່າທີ່ມີຕົວອັກສອນພິເສດ (=, ;, #, \ ແລະແຖວໃໝ່) ຕ້ອງ
ຖືກຫລົບຫນີດ້ວຍ backslash \.

10. ໃຫ້ສັງເກດວ່າ whitespace ໃນ metadata (ເຊັ່ນ ຟູ = ພາທະນາຍຄວາມ) ຖື​ວ່າ​ເປັນ​ສ່ວນ​ຫນຶ່ງ​ຂອງ​
tag (ໃນຕົວຢ່າງຂ້າງເທິງທີ່ສໍາຄັນແມ່ນ ຟູ , ມູນຄ່າແມ່ນ
ພາທະນາຍຄວາມ).

ໄຟລ໌ ffmetadata ອາດຈະເບິ່ງຄືວ່ານີ້:

;FFMETADATA1
title=bike\\shed
;ນີ້​ແມ່ນ​ຄໍາ​ເຫັນ​
artist=FFmpeg ທີມ​ງານ troll

[ບົດ]
TIMEBASE=1/1000
START=0
#ບົດຈົບລົງເວລາ 0:01:00 ໂມງ
END=60000
title=ບົດທີ \#1
[ສະຕຣີມ]
title=multi\
ອອນໄລນ໌

ໂດຍການນໍາໃຊ້ ffmetadata muxer ແລະ demuxer ມັນເປັນໄປໄດ້ທີ່ຈະສະກັດ metadata ຈາກການປ້ອນຂໍ້ມູນ
ໄຟລ໌ໄປຫາໄຟລ໌ ffmetadata, ແລະຫຼັງຈາກນັ້ນ transcode ໄຟລ໌ເຂົ້າໄປໃນໄຟລ໌ຜົນຜະລິດທີ່ມີ
ແກ້ໄຂໄຟລ໌ ffmetadata.

ສະກັດໄຟລ໌ ffmetadata ກັບ ffmpeg ໄປດັ່ງຕໍ່ໄປນີ້:

ffmpeg -i INPUT -f ffmetadata FFMETADATAFILE

ການໃສ່ຂໍ້ມູນເມຕາເດຕາທີ່ຖືກແກ້ໄຂຄືນໃໝ່ຈາກໄຟລ໌ FFMETADATAFILE ສາມາດເຮັດໄດ້ດັ່ງນີ້:

ffmpeg -i INPUT -i FFMETADATAFILE -map_metadata 1 -codec ສຳເນົາ OUTPUT

ໂປຣແກຣມ PROTOCOLS


ໂປໂຕຄອນແມ່ນອົງປະກອບທີ່ກໍາຫນົດຄ່າໃນ FFmpeg ທີ່ເຮັດໃຫ້ການເຂົ້າເຖິງຊັບພະຍາກອນທີ່ຕ້ອງການ
ພິທີການສະເພາະ.

ໃນເວລາທີ່ທ່ານ configure FFmpeg build ຂອງທ່ານ, ໂປໂຕຄອນທີ່ສະຫນັບສະຫນູນທັງຫມົດຈະຖືກເປີດໃຊ້ໂດຍຄ່າເລີ່ມຕົ້ນ.
ທ່ານ​ສາ​ມາດ​ລາຍ​ຊື່​ທັງ​ຫມົດ​ທີ່​ມີ​ຢູ່​ໂດຍ​ການ​ນໍາ​ໃຊ້​ທາງ​ເລືອກ​ການ​ຕັ້ງ​ຄ່າ "--list-protocols​"​.

ທ່ານ​ສາ​ມາດ​ປິດ​ການ​ທໍາ​ງານ​ໂຄງ​ການ​ທັງ​ຫມົດ​ໂດຍ​ນໍາ​ໃຊ້​ການ​ຕັ້ງ​ຄ່າ​ທາງ​ເລືອກ "--disable-protocols​"​, ແລະ
ເລືອກເປີດໃຊ້ໂປຣໂຕຄໍໂດຍໃຊ້ຕົວເລືອກ "--enable-protocol=ໂປຣແກຣມ PROTOCOL", ຫຼືເຈົ້າສາມາດ
ປິດການໃຊ້ງານໂປຣໂຕຄໍສະເພາະໂດຍໃຊ້ຕົວເລືອກ "--disable-protocol=ໂປຣແກຣມ PROTOCOL".

ຕົວເລືອກ "-protocols" ຂອງເຄື່ອງມື ff* ຈະສະແດງລາຍຊື່ຂອງໂປໂຕຄອນທີ່ຮອງຮັບ.

ລາຍລະອຽດຂອງໂປໂຕຄອນທີ່ມີຢູ່ໃນປັດຈຸບັນຕໍ່ໄປນີ້.

async
wrapper ການຕື່ມຂໍ້ມູນແບບອະຊິດໂຄຣນັສສໍາລັບການປ້ອນຂໍ້ມູນ.

ຕື່ມຂໍ້ມູນໃສ່ໃນກະທູ້ພື້ນຫຼັງ, ເພື່ອຖອດລະຫັດການດໍາເນີນການ I/O ຈາກຫົວຂໍ້ demux.

async:
async:http://host/resource
async:cache:http://host/resource

bluray
ອ່ານລາຍການຫຼິ້ນ BluRay.

ທາງເລືອກທີ່ຍອມຮັບແມ່ນ:

ມຸມ
ມຸມ BluRay

ພາກ
ເລີ່ມບົດ (1...N)

playlist
ລາຍການຫຼິ້ນເພື່ອອ່ານ (BDMV/PLAYLIST/?????.mpls)

ຕົວຢ່າງ:

ອ່ານລາຍການຫຼິ້ນທີ່ຍາວທີ່ສຸດຈາກ BluRay ຕິດຕັ້ງໃສ່ /mnt/bluray:

bluray:/mnt/bluray

ອ່ານມຸມ 2 ຂອງລາຍການຫຼິ້ນ 4 ຈາກ BluRay ຕິດຕັ້ງໃສ່ /mnt/bluray, ເລີ່ມຈາກບົດທີ 2:

-playlist 4 -angle 2 -ບົດ​ທີ 2 bluray:/mnt/bluray

ຖານຄວາມຈໍາ
Caching wrapper ສໍາລັບ input stream.

ຈັດເກັບການປ້ອນຂໍ້ມູນໃສ່ໄຟລ໌ຊົ່ວຄາວ. ມັນນໍາເອົາຄວາມສາມາດໃນການຊອກຫາການຖ່າຍທອດສົດ.

ແຄດ:

concat
ອະນຸສັນຍາການສົມທົບທາງກາຍຍະພາບ.

ອ່ານ​ແລະ​ຊອກ​ຫາ​ຈາກ​ຊັບ​ພະ​ຍາ​ກອນ​ຈໍາ​ນວນ​ຫຼາຍ​ໃນ​ລໍາ​ດັບ​ເປັນ​ຖ້າ​ຫາກ​ວ່າ​ພວກ​ເຂົາ​ເຈົ້າ​ເປັນ​ຊັບ​ພະ​ຍາ​ກອນ​ທີ່​ເປັນ​ເອ​ກະ​ລັກ​.

URL ທີ່ຍອມຮັບໂດຍໂປຣໂຕຄໍນີ້ມີ syntax:

concat: | |...|

ບ່ອນທີ່ URL1, URL2, ... , URLN ແມ່ນ urls ຂອງຊັບພະຍາກອນທີ່ຈະ concatenated, ແຕ່ລະຄົນ
ອາດຈະລະບຸພິທີການທີ່ແຕກຕ່າງກັນ.

ຕົວຢ່າງເພື່ອອ່ານລໍາດັບຂອງໄຟລ໌ split1.mpeg, split2.mpeg, split3.mpeg ກັບ ffplay
ໃຊ້ຄໍາສັ່ງ:

ffplay concat:split1.mpeg\|split2.mpeg\|split3.mpeg

ໃຫ້ສັງເກດວ່າທ່ານອາດຈະຈໍາເປັນຕ້ອງຫນີຕົວອັກສອນ "|" ຊຶ່ງເປັນພິເສດສໍາລັບຫອຍຫຼາຍ.

crypto
AES-encrypted stream reading protocol.

ທາງເລືອກທີ່ຍອມຮັບແມ່ນ:

ທີ່ສໍາຄັນ ຕັ້ງຄ່າການຖອດລະຫັດຖານສອງຂອງລະຫັດ AES ຈາກການເປັນຕົວແທນຂອງເລກຖານສິບຫົກໃຫ້.

iv ກໍານົດການເລີ່ມຕົ້ນການຖອດລະຫັດ AES vector binary block ຈາກ hexadecimal ທີ່ໃຫ້
ການເປັນຕົວແທນ.

ຮູບແບບ URL ທີ່ຍອມຮັບ:

crypto:
crypto+

ຂໍ້ມູນ
ຂໍ້ມູນໃນແຖວໃນ URI. ເບິ່ງhttp://en.wikipedia.org/wiki/Data_URI_scheme>.

ຕົວຢ່າງ, ເພື່ອປ່ຽນໄຟລ໌ GIF ທີ່ໃຫ້ຢູ່ໃນແຖວ ffmpeg:

ffmpeg -i "data:image/gif;base64,R0lGODdhCAAIAMIEAAAAAAAA//8AAP//AP///////////////ywAAAAACAAIAAADF0gEDLojDgdGiJdJqUX02iB4E8Q9jUMkADs=" smiley.png

ເອກະສານ
ອະນຸສັນຍາການເຂົ້າເຖິງໄຟລ໌.

ອ່ານຈາກ ຫຼືຂຽນໃສ່ໄຟລ໌.

URL ໄຟລ໌ສາມາດມີແບບຟອມ:

ໄຟລ໌:

ບ່ອນທີ່ ຊື່​ເອ​ກະ​ສານ ແມ່ນເສັ້ນທາງຂອງໄຟລ໌ທີ່ຈະອ່ານ.

URL ທີ່ບໍ່ມີຄຳນຳໜ້າໂປຣໂຕຄໍຈະຖືກສົມມຸດວ່າເປັນ URL ໄຟລ໌. ຂຶ້ນກັບ
ການກໍ່ສ້າງ, URL ທີ່ຄ້າຍຄືກັບເສັ້ນທາງ Windows ທີ່ມີຕົວອັກສອນຂັບໃນຕອນເລີ່ມຕົ້ນ
ຍັງຈະຖືກສົມມຸດວ່າເປັນ URL ໄຟລ໌ (ປົກກະຕິແລ້ວບໍ່ແມ່ນກໍລະນີໃນ builds ສໍາລັບ unix-like
ລະບົບຕ່າງໆ).

ຕົວຢ່າງເພື່ອອ່ານຈາກໄຟລ໌ input.mpeg ກັບ ffmpeg ໃຊ້ຄໍາສັ່ງ:

ffmpeg -i ໄຟລ໌:input.mpeg output.mpeg

ໂປຣໂຕຄໍນີ້ຍອມຮັບຕົວເລືອກຕໍ່ໄປນີ້:

ລຳ ຕົ້ນ
ຕັດໄຟລ໌ທີ່ມີຢູ່ແລ້ວໃນການຂຽນ, ຖ້າຕັ້ງເປັນ 1. ຄ່າຂອງ 0 ປ້ອງກັນການຕັດ.
ຄ່າເລີ່ມຕົ້ນແມ່ນ 1.

ຂະໜາດ
ກໍານົດຂະຫນາດບລັອກສູງສຸດຂອງການດໍາເນີນງານ I/O, ໃນ bytes. ຄ່າເລີ່ມຕົ້ນແມ່ນ "INT_MAX", ເຊິ່ງ
ຜົນໄດ້ຮັບໃນການບໍ່ຈໍາກັດຂະຫນາດບລັອກທີ່ຮ້ອງຂໍ. ການຕັ້ງຄ່ານີ້ຕ່ໍາສົມເຫດສົມຜົນ
ປັບປຸງເວລາຕິກິຣິຍາການຮ້ອງຂໍການຢຸດເຊົາຂອງຜູ້ໃຊ້, ທີ່ມີຄຸນຄ່າສໍາລັບໄຟລ໌ທີ່ຊ້າ
ກາງ.

ftp
FTP (ອະນຸສັນຍາການໂອນໄຟລ໌).

ອ່ານຈາກ ຫຼືຂຽນໄປຫາຊັບພະຍາກອນທາງໄກໂດຍໃຊ້ FTP protocol.

ຕ້ອງການ syntax ຕໍ່ໄປນີ້.

ftp://[user[:password]@]server[:port]/path/to/remote/resource.mpeg

ໂປຣໂຕຄໍນີ້ຍອມຮັບຕົວເລືອກຕໍ່ໄປນີ້.

ຫມົດ​ເວ​ລາ
ກໍານົດເວລາຫມົດເວລາເປັນ microseconds ຂອງການດໍາເນີນການ I/O socket ທີ່ໃຊ້ໂດຍລະດັບຕ່ໍາພື້ນຖານ
ການດໍາເນີນງານ. ໂດຍຄ່າເລີ່ມຕົ້ນມັນຖືກກໍານົດເປັນ -1, ຊຶ່ງຫມາຍຄວາມວ່າການຫມົດເວລາບໍ່ໄດ້ຖືກກໍານົດ.

ftp-anonymous-password
ລະຫັດຜ່ານທີ່ໃຊ້ໃນເວລາເຂົ້າສູ່ລະບົບເປັນຜູ້ໃຊ້ທີ່ບໍ່ເປີດເຜີຍຊື່. ໂດຍປົກກະຕິ, ທີ່ຢູ່ອີເມວຄວນຈະເປັນ
ໃຊ້ແລ້ວ.

ftp-write-seekable
ຄວບຄຸມຄວາມສາມາດໃນການຊອກຫາການເຊື່ອມຕໍ່ໃນລະຫວ່າງການເຂົ້າລະຫັດ. ຖ້າຕັ້ງເປັນ 1 ຊັບພະຍາກອນແມ່ນ
ສົມມຸດວ່າສາມາດຊອກຫາໄດ້, ຖ້າຕັ້ງເປັນ 0 ມັນຖືວ່າບໍ່ສາມາດຊອກຫາໄດ້. ຄ່າເລີ່ມຕົ້ນ
ແມ່ນ 0.

ຫມາຍເຫດ: ໂປໂຕຄອນສາມາດຖືກນໍາໃຊ້ເປັນຜົນຜະລິດ, ແຕ່ແນະນໍາໃຫ້ບໍ່ເຮັດມັນ, ເວັ້ນເສຍແຕ່ພິເສດ
ການ​ດູ​ແລ​ແມ່ນ​ໄດ້​ຮັບ​ການ​ປະ​ຕິ​ບັດ (ການ​ທົດ​ສອບ​, ການ​ຕັ້ງ​ຄ່າ​ເຄື່ອງ​ແມ່​ຂ່າຍ​ທີ່​ປັບ​ແຕ່ງ​ແລະ​ອື່ນໆ​)​. ເຄື່ອງແມ່ຂ່າຍ FTP ທີ່ແຕກຕ່າງກັນປະຕິບັດຕົວ
ໃນວິທີການທີ່ແຕກຕ່າງກັນໃນລະຫວ່າງການດໍາເນີນການຊອກຫາ. ff* ເຄື່ອງມືອາດຈະຜະລິດເນື້ອຫາທີ່ບໍ່ຄົບຖ້ວນເນື່ອງຈາກ
ຂໍ້ຈໍາກັດຂອງເຄື່ອງແມ່ຂ່າຍ.

ໂກເຟີ
ອະນຸສັນຍາ Gopher.

hls
ອ່ານ Apple HTTP Live Streaming ທີ່ສອດຄ້ອງກັນ segmented stream as a uniform one. M3U8
ລາຍການຫຼິ້ນທີ່ອະທິບາຍສ່ວນຕ່າງໆສາມາດເປັນຊັບພະຍາກອນ HTTP ຫ່າງໄກສອກຫຼີກ ຫຼືໄຟລ໌ທ້ອງຖິ່ນ, ເຂົ້າເຖິງໄດ້
ການ​ນໍາ​ໃຊ້​ອະ​ນຸ​ສັນ​ຍາ​ໄຟລ​໌​ມາດ​ຕະ​ຖານ​. ໂປໂຕຄອນທີ່ຕິດກັນຖືກປະກາດໂດຍການລະບຸ "+ໂປໂຕຄອນ"
ຫຼັງຈາກຊື່ໂຄງການ hls URI, ບ່ອນທີ່ ໂປໂຕຄອນ ແມ່ນ "ໄຟລ໌" ຫຼື "http".

hls+http://host/path/to/remote/resource.m3u8
hls+file://path/to/local/resource.m3u8

ການໃຊ້ໂປໂຕຄອນນີ້ແມ່ນທໍ້ຖອຍໃຈ - hls demuxer ຄວນເຮັດວຽກເຊັ່ນດຽວກັນ (ຖ້າບໍ່ແມ່ນ,
ກະລຸນາລາຍງານບັນຫາ) ແລະຄົບຖ້ວນກວ່າ. ເພື່ອໃຊ້ hls demuxer ແທນ, ພຽງແຕ່
ໃຊ້ URLs ໂດຍກົງກັບໄຟລ໌ m3u8.

http
HTTP (Hyper Text Transfer Protocol).

ໂປຣໂຕຄໍນີ້ຍອມຮັບຕົວເລືອກຕໍ່ໄປນີ້:

ສາມາດຊອກຫາໄດ້
ຄວບຄຸມຄວາມສາມາດໃນການຊອກຫາການເຊື່ອມຕໍ່. ຖ້າຕັ້ງເປັນ 1 ຊັບພະຍາກອນຄວນຈະເປັນ
seekable, ຖ້າຕັ້ງເປັນ 0 ມັນຖືວ່າບໍ່ສາມາດຊອກຫາໄດ້, ຖ້າຕັ້ງເປັນ -1 ມັນຈະພະຍາຍາມ.
ກວດຫາອັດຕະໂນມັດຖ້າມັນສາມາດຊອກຫາໄດ້. ຄ່າເລີ່ມຕົ້ນແມ່ນ -1.

chunked_post
ຖ້າຕັ້ງເປັນ 1 ໃຊ້ການເຂົ້າລະຫັດການໂອນຍ້າຍແບບ chunked ສໍາລັບໂພສ, ຄ່າເລີ່ມຕົ້ນແມ່ນ 1.

content_type
ກໍານົດປະເພດເນື້ອຫາສະເພາະສໍາລັບຂໍ້ຄວາມ POST.

headers
ຕັ້ງຄ່າສ່ວນຫົວ HTTP ແບບກຳນົດເອງ, ສາມາດລົບລ້າງທີ່ສ້າງຂຶ້ນໃນສ່ວນຫົວເລີ່ມຕົ້ນໄດ້. ຄ່າຕ້ອງເປັນ a
string encoding headers.

multiple_requests
ໃຊ້ການເຊື່ອມຕໍ່ຄົງທີ່ຖ້າຕັ້ງເປັນ 1, ຄ່າເລີ່ມຕົ້ນແມ່ນ 0.

post_data
ຕັ້ງຄ່າຂໍ້ມູນຕອບ HTTP ແບບກຳນົດເອງ.

ຕົວແທນຜູ້ໃຊ້
user_agent
ລົບລ້າງສ່ວນຫົວຜູ້ໃຊ້ຕົວແທນ. ຖ້າບໍ່ໄດ້ລະບຸໂປຣໂຕຄໍຈະໃຊ້ສະຕຣິງ
ອະທິບາຍການສ້າງ libavformat. ("Lavf/ ")

ຫມົດ​ເວ​ລາ
ກໍານົດເວລາຫມົດເວລາເປັນ microseconds ຂອງການດໍາເນີນການ I/O socket ທີ່ໃຊ້ໂດຍລະດັບຕ່ໍາພື້ນຖານ
ການດໍາເນີນງານ. ໂດຍຄ່າເລີ່ມຕົ້ນມັນຖືກກໍານົດເປັນ -1, ຊຶ່ງຫມາຍຄວາມວ່າການຫມົດເວລາບໍ່ໄດ້ຖືກກໍານົດ.

mime_type
ສົ່ງອອກປະເພດ MIME.

icy ຖ້າຕັ້ງເປັນ 1 ຄໍາຮ້ອງຂໍ ICY (SHOUTcast) metadata ຈາກເຄື່ອງແມ່ຂ່າຍ. ຖ້າເຄື່ອງແມ່ຂ່າຍສະຫນັບສະຫນູນ
ນີ້, metadata ຕ້ອງໄດ້ຮັບການດຶງມາໂດຍຄໍາຮ້ອງສະຫມັກໂດຍການອ່ານ
icy_metadata_headers ແລະ icy_metadata_packet ທາງເລືອກ. ຄ່າເລີ່ມຕົ້ນແມ່ນ 1.

icy_metadata_headers
ຖ້າເຊີບເວີຮອງຮັບ ICY metadata, ນີ້ປະກອບດ້ວຍການຕອບ HTTP ສະເພາະ ICY
ສ່ວນຫົວ, ແຍກດ້ວຍຕົວອັກສອນແຖວໃໝ່.

icy_metadata_packet
ຖ້າເຄື່ອງແມ່ຂ່າຍສະຫນັບສະຫນູນ ICY metadata, ແລະ icy ຖືກຕັ້ງເປັນ 1, ນີ້ປະກອບດ້ວຍອັນສຸດທ້າຍທີ່ບໍ່ແມ່ນ.
ແພັກເກັດ metadata ຫວ່າງເປົ່າສົ່ງໂດຍເຄື່ອງແມ່ຂ່າຍ. ມັນຄວນຈະໄດ້ຮັບການສໍາຫຼວດໃນໄລຍະປົກກະຕິໂດຍ
ແອັບພລິເຄຊັນທີ່ສົນໃຈໃນການອັບເດດ metadata ກາງສະຕຣີມ.

cookies
ຕັ້ງ cookies ທີ່ຈະສົ່ງໃນການຮ້ອງຂໍໃນອະນາຄົດ. ຮູບແບບຂອງແຕ່ລະຄຸກກີແມ່ນຄືກັນ
ເປັນຄ່າຂອງຊ່ອງຕອບຮັບ Set-Cookie HTTP. ຫຼາຍ cookies ສາມາດ delimited ໂດຍ
ລັກສະນະແຖວໃໝ່.

ຊົດເຊີຍ
ກໍານົດການຊົດເຊີຍ byte ເບື້ອງຕົ້ນ.

end_offset
ພະຍາຍາມຈໍາກັດການຮ້ອງຂໍໃຫ້ bytes ກ່ອນການຊົດເຊີຍນີ້.

ວິທີການ
ເມື່ອໃຊ້ເປັນຕົວເລືອກລູກຄ້າມັນກໍານົດວິທີການ HTTP ສໍາລັບການຮ້ອງຂໍ.

ເມື່ອຖືກນໍາໃຊ້ເປັນທາງເລືອກຂອງເຄື່ອງແມ່ຂ່າຍ, ມັນກໍານົດວິທີການ HTTP ທີ່ຄາດວ່າຈະມາຈາກ
ລູກຄ້າ. ຖ້າສິ່ງທີ່ຄາດຫວັງແລະວິທີການ HTTP ທີ່ໄດ້ຮັບນັ້ນບໍ່ກົງກັບລູກຄ້າ
ຈະໄດ້ຮັບການຕອບສະຫນອງຄໍາຮ້ອງຂໍທີ່ບໍ່ດີ. ເມື່ອບໍ່ໄດ້ຕັ້ງວິທີການ HTTP ບໍ່ໄດ້ຖືກກວດສອບ
ດຽວນີ້. ອັນນີ້ຈະຖືກແທນທີ່ດ້ວຍການກວດຫາອັດຕະໂນມັດໃນອະນາຄົດ.

ຟັງ
ຖ້າຕັ້ງເປັນ 1 ເປີດໃຊ້ເຊີບເວີ HTTP ທົດລອງ. ນີ້ສາມາດຖືກນໍາໃຊ້ເພື່ອສົ່ງຂໍ້ມູນໃນເວລາທີ່ຖືກນໍາໃຊ້
ເປັນທາງເລືອກຜົນຜະລິດ, ຫຼືອ່ານຂໍ້ມູນຈາກລູກຄ້າທີ່ມີ HTTP POST ເມື່ອຖືກນໍາໃຊ້ເປັນການປ້ອນຂໍ້ມູນ
ທາງເລືອກ. ຖ້າຕັ້ງເປັນ 2 ເປີດໃຊ້ເຄື່ອງແມ່ຂ່າຍ HTTP mutli-client ທົດລອງ. ນີ້ບໍ່ແມ່ນເທື່ອ
ປະຕິບັດໃນ ffmpeg.c ຫຼື ffserver.c ແລະດັ່ງນັ້ນຈຶ່ງຕ້ອງບໍ່ຖືກນໍາໃຊ້ເປັນເສັ້ນຄໍາສັ່ງ
ທາງເລືອກ.

# ດ້ານເຊີບເວີ (ສົ່ງ):
ffmpeg -i somefile.ogg -c copy -listen 1 -f ogg http:// :

#ຝ່າຍລູກຄ້າ (ຮັບ):
ffmpeg -i http:// : -c ຄັດລອກ somefile.ogg

# ລູກຄ້າສາມາດເຮັດໄດ້ດ້ວຍ wget:
wget http:// : -O somefile.ogg

# ຝ່າຍເຊີບເວີ (ຮັບ):
ffmpeg -listen 1 -i http:// : -c ຄັດລອກ somefile.ogg

# ຂ້າງລູກຄ້າ (ສົ່ງ):
ffmpeg -i somefile.ogg -chunked_post 0 -c copy -f ogg http:// :

# ລູກຄ້າສາມາດເຮັດໄດ້ດ້ວຍ wget:
wget --post-file=somefile.ogg http:// :

HTTP cookies

ບາງຄໍາຮ້ອງຂໍ HTTP ຈະຖືກປະຕິເສດເວັ້ນເສຍແຕ່ວ່າຄ່າຄຸກກີຖືກສົ່ງກັບຄໍາຮ້ອງຂໍ. ໄດ້
cookies ທາງເລືອກອະນຸຍາດໃຫ້ cookies ເຫຼົ່ານີ້ຖືກລະບຸ. ຢ່າງຫນ້ອຍ, ແຕ່ລະຄຸກກີຕ້ອງ
ລະບຸຄ່າພ້ອມກັບເສັ້ນທາງ ແລະໂດເມນ. ການຮ້ອງຂໍ HTTP ທີ່ກົງກັບທັງສອງໂດເມນ
ແລະເສັ້ນທາງຈະລວມຄ່າຄຸກກີໂດຍອັດຕະໂນມັດໃນຊ່ອງສ່ວນຫົວ HTTP Cookie.
ຄຸກກີຫຼາຍອັນສາມາດຖືກຈຳກັດດ້ວຍແຖວໃໝ່.

syntax ທີ່​ຕ້ອງ​ການ​ເພື່ອ​ຫຼິ້ນ​ສະ​ຕ​ຣີມ​ລະ​ບຸ​ຄຸກ​ກີ​ແມ່ນ​:

ffplay -cookies "nlqptid=nltid=tsn; path=/; domain=somedomain.com;" http://somedomain.com/somestream.m3u8

ນ້ ຳ ກ້ອນ
ໂປຣໂຕຄໍ Icecast (ຖ່າຍທອດໄປຫາເຊີບເວີ Icecast)

ໂປຣໂຕຄໍນີ້ຍອມຮັບຕົວເລືອກຕໍ່ໄປນີ້:

ປະເພດນ້ຳກ້ອນ
ກໍານົດປະເພດການຖ່າຍທອດ.

ice_name
ຕັ້ງຊື່ການຖ່າຍທອດ.

ice_description
ກໍານົດຄໍາອະທິບາຍການຖ່າຍທອດ.

ice_url
ກໍານົດ URL ເວັບໄຊທ໌ການຖ່າຍທອດ.

ice_public
ກຳນົດວ່າກະແສຄວນເປັນສາທາລະນະຫຼືບໍ່. ຄ່າເລີ່ມຕົ້ນແມ່ນ 0 (ບໍ່ແມ່ນສາທາລະນະ).

user_agent
ລົບລ້າງສ່ວນຫົວຂອງ User-Agent. ຖ້າບໍ່ໄດ້ລະບຸສະຕຣິງຂອງແບບຟອມ "Lavf/ "
ຈະຖືກນໍາໃຊ້.

ລະຫັດຜ່ານ
ຕັ້ງລະຫັດຜ່ານ Icecast mountpoint.

content_type
ກໍານົດປະເພດເນື້ອຫາການຖ່າຍທອດ. ອັນນີ້ຕ້ອງຖືກຕັ້ງຖ້າມັນແຕກຕ່າງຈາກສຽງ/mpeg.

legacy_icecast
ອັນນີ້ເຮັດໃຫ້ຮອງຮັບ Icecast ລຸ້ນ < 2.4.0, ທີ່ບໍ່ຮອງຮັບ HTTP PUT
ວິທີການແຕ່ວິທີການ SOURCE.

icecast //[ [: ]@] : /

mmst
ໂປຣໂຕຄໍ MMS (Microsoft Media Server) ຜ່ານ TCP.

ມມ
ໂປຣໂຕຄໍ MMS (Microsoft Media Server) ຜ່ານ HTTP.

syntax ທີ່ຕ້ອງການແມ່ນ:

mmsh:// [: ][/ ][/ ]

md5
ໂປຣໂຕຄໍຜົນຜະລິດ MD5.

ຄິດ​ໄລ່ MD5 hash ຂອງ​ຂໍ້​ມູນ​ທີ່​ຈະ​ຂຽນ​, ແລະ​ໃກ້​ຈະ​ຂຽນ​ນີ້​ໄປ​ທີ່​
ຜົນຜະລິດທີ່ກໍານົດຫຼື stdout ຖ້າບໍ່ມີກໍານົດ. ມັນສາມາດຖືກນໍາໃຊ້ເພື່ອທົດສອບ muxers ໂດຍບໍ່ມີການ
ຂຽນໄຟລ໌ຕົວຈິງ.

ບາງຕົວຢ່າງປະຕິບັດຕາມ.

# ຂຽນ MD5 hash ຂອງໄຟລ໌ AVI ທີ່ເຂົ້າລະຫັດໄວ້ໃນໄຟລ໌ output.avi.md5.
ffmpeg -i input.flv -f avi -y md5:output.avi.md5

# ຂຽນ MD5 hash ຂອງໄຟລ໌ AVI ທີ່ເຂົ້າລະຫັດໄວ້ເພື່ອ stdout.
ffmpeg -i input.flv -f avi -y md5:

ໃຫ້ສັງເກດວ່າບາງຮູບແບບ (ໂດຍປົກກະຕິ MOV) ຕ້ອງການໂປໂຕຄອນຜົນຜະລິດເພື່ອໃຫ້ສາມາດຊອກຫາໄດ້, ດັ່ງນັ້ນພວກມັນ
ຈະລົ້ມເຫລວກັບໂປໂຕຄອນຜົນຜະລິດ MD5.

ທໍ່
ໂປຣໂຕຄໍການເຂົ້າເຖິງທໍ່ UNIX.

ອ່ານແລະຂຽນຈາກທໍ່ UNIX.

syntax ທີ່ຍອມຮັບແມ່ນ:

ທໍ່:[ ]

ຈໍານວນ ແມ່ນຕົວເລກທີ່ສອດຄ້ອງກັບຕົວອະທິບາຍໄຟລ໌ຂອງທໍ່ (ເຊັ່ນ: 0 ສໍາລັບ stdin, 1
ສໍາລັບ stdout, 2 ສໍາລັບ stderr). ຖ້າ ຈໍານວນ ບໍ່ໄດ້ລະບຸໄວ້, ໂດຍຄ່າເລີ່ມຕົ້ນຂອງໄຟລ໌ stdout
descriptor ຈະຖືກນໍາໃຊ້ສໍາລັບການຂຽນ, stdin ສໍາລັບການອ່ານ.

ຕົວຢ່າງເພື່ອອ່ານຈາກ stdin ກັບ ffmpeg:

cat test.wav | ffmpeg -i ທໍ່:0
#...ອັນນີ້ຄື...
cat test.wav | ffmpeg -i ທໍ່:

ສໍາລັບການຂຽນເພື່ອ stdout ກັບ ffmpeg:

ffmpeg -i test.wav -f avi ທໍ່:1 | cat > test.avi
#...ອັນນີ້ຄື...
ffmpeg -i test.wav -f avi ທໍ່: | cat > test.avi

ໂປຣໂຕຄໍນີ້ຍອມຮັບຕົວເລືອກຕໍ່ໄປນີ້:

ຂະໜາດ
ກໍານົດຂະຫນາດບລັອກສູງສຸດຂອງການດໍາເນີນງານ I/O, ໃນ bytes. ຄ່າເລີ່ມຕົ້ນແມ່ນ "INT_MAX", ເຊິ່ງ
ຜົນໄດ້ຮັບໃນການບໍ່ຈໍາກັດຂະຫນາດບລັອກທີ່ຮ້ອງຂໍ. ການຕັ້ງຄ່ານີ້ຕ່ໍາສົມເຫດສົມຜົນ
ປັບປຸງເວລາຕິກິຣິຍາການຮ້ອງຂໍການຢຸດເຊົາຂອງຜູ້ໃຊ້, ເຊິ່ງມີຄ່າຖ້າຂໍ້ມູນ
ລະບົບສາຍສົ່ງແມ່ນຊ້າ.

ໃຫ້ສັງເກດວ່າບາງຮູບແບບ (ໂດຍປົກກະຕິ MOV), ຕ້ອງການໂປໂຕຄອນຜົນຜະລິດເພື່ອໃຫ້ສາມາດຊອກຫາໄດ້, ດັ່ງນັ້ນ
ພວກເຂົາຈະລົ້ມເຫລວກັບໂປໂຕຄອນຜົນຜະລິດທໍ່.

rtmp
ໂປຣໂຕຄໍການສົ່ງຂໍ້ຄວາມແບບສົດໆ.

ພິທີການສົ່ງຂໍ້ຄວາມໃນເວລາຈິງ (RTMP) ຖືກນໍາໃຊ້ສໍາລັບການຖ່າຍທອດເນື້ອຫາມັນຕິມີເດຍໃນທົ່ວ a
ເຄືອຂ່າຍ TCP/IP.

syntax ທີ່ຕ້ອງການແມ່ນ:

rtmp://[ : @] [: ][/ ][/ ][/ ]

ຕົວກໍານົດການທີ່ຍອມຮັບແມ່ນ:

ຊື່ຜູ້ໃຊ້
ຊື່ຜູ້ໃຊ້ທາງເລືອກ (ສ່ວນຫຼາຍແມ່ນສໍາລັບການເຜີຍແຜ່).

ລະຫັດຜ່ານ
ລະຫັດຜ່ານທາງເລືອກ (ສ່ວນຫຼາຍແມ່ນສໍາລັບການເຜີຍແຜ່).

ເຄື່ອງແມ່ຂ່າຍ
ທີ່ຢູ່ຂອງເຊີບເວີ RTMP.

port
ຈໍານວນພອດ TCP ທີ່ຈະໃຊ້ (ໂດຍຄ່າເລີ່ມຕົ້ນແມ່ນ 1935).

app ມັນເປັນຊື່ຂອງຄໍາຮ້ອງສະຫມັກທີ່ຈະເຂົ້າເຖິງ. ມັນມັກຈະກົງກັບເສັ້ນທາງທີ່
ແອັບພລິເຄຊັນຖືກຕິດຕັ້ງຢູ່ໃນເຄື່ອງແມ່ຂ່າຍ RTMP (ເຊັ່ນ: /ondemand/, /flash/live/, ຯ ລະຯ )
ທ່ານສາມາດ override ຄ່າທີ່ແຍກຈາກ URI ຜ່ານທາງເລືອກ "rtmp_app", ເຊັ່ນກັນ.

ເສັ້ນທາງຫຼິ້ນ
ມັນເປັນເສັ້ນທາງຫຼືຊື່ຂອງຊັບພະຍາກອນທີ່ຈະຫລິ້ນກັບຄໍາຮ້ອງສະຫມັກ
ລະບຸໄວ້ໃນ app, ອາດຈະຖືກນໍາຫນ້າໂດຍ "mp4:". ທ່ານສາມາດ override ຄ່າທີ່ແຍກຈາກ
URI ຜ່ານທາງເລືອກ "rtmp_playpath", ເຊັ່ນກັນ.

ຟັງ
ເຮັດຫນ້າທີ່ເປັນເຄື່ອງແມ່ຂ່າຍ, ຟັງສໍາລັບການເຊື່ອມຕໍ່ຂາເຂົ້າ.

ຫມົດ​ເວ​ລາ
ເວລາສູງສຸດທີ່ຈະລໍຖ້າການເຊື່ອມຕໍ່ຂາເຂົ້າ. ຫມາຍເຖິງການຟັງ.

ນອກຈາກນັ້ນ, ພາລາມິເຕີຕໍ່ໄປນີ້ສາມາດຖືກຕັ້ງຄ່າໂດຍຜ່ານຕົວເລືອກເສັ້ນຄໍາສັ່ງ (ຫຼືໃນລະຫັດຜ່ານ
"AVOption"s):

rtmp_app
ຊື່ຂອງແອັບພລິເຄຊັນເພື່ອເຊື່ອມຕໍ່ໃນເຊີບເວີ RTMP. ທາງເລືອກນີ້ overrides ພາລາມິເຕີ
ລະບຸໄວ້ໃນ URI.

rtmp_buffer
ກໍານົດເວລາ buffer ລູກຄ້າເປັນ milliseconds. ຄ່າເລີ່ມຕົ້ນແມ່ນ 3000.

rtmp_conn
ຕົວກໍານົດການເຊື່ອມຕໍ່ AMF ພິເສດ, ແຍກຈາກສະຕຣິງ, ເຊັ່ນ: "B:1.
S:authMe O:1 NN:code:1.23 NS:flag:ok O:0". ແຕ່ລະຄ່າແມ່ນນຳໜ້າດ້ວຍອັນດຽວ.
ຕົວອັກສອນສະແດງເຖິງປະເພດ, B ສໍາລັບ Boolean, N ສໍາລັບຕົວເລກ, S ສໍາລັບ string, O ສໍາລັບວັດຖຸ,
ຫຼື Z ສໍາລັບ null, ຕາມດ້ວຍຈໍ້າສອງເມັດ. ສໍາລັບ Booleans ຂໍ້ມູນຈະຕ້ອງເປັນ 0 ຫຼື 1 ສໍາລັບ
FALSE ຫຼື TRUE, ຕາມລໍາດັບ. ເຊັ່ນດຽວກັນສໍາລັບ Objects ຂໍ້ມູນຈະຕ້ອງເປັນ 0 ຫຼື 1 ເພື່ອສິ້ນສຸດຫຼື
ເລີ່ມຕົ້ນວັດຖຸ, ຕາມລໍາດັບ. ລາຍ​ການ​ຂໍ້​ມູນ​ໃນ​ວັດ​ຖຸ​ຍ່ອຍ​ອາດ​ຈະ​ມີ​ຊື່​, ໂດຍ​ການ​ນໍາ​ຫນ້າ​
ພິມດ້ວຍ 'N' ແລະລະບຸຊື່ກ່ອນຄ່າ (ເຊັ່ນ: "NB:myFlag:1"). ນີ້
ທາງເລືອກອາດຈະຖືກນໍາໃຊ້ຫຼາຍຄັ້ງເພື່ອສ້າງລໍາດັບ AMF ທີ່ບໍ່ມັກ.

rtmp_flashver
ເວີຊັນຂອງ plugin Flash ທີ່ໃຊ້ເພື່ອແລ່ນເຄື່ອງຫຼິ້ນ SWF. ຄ່າເລີ່ມຕົ້ນແມ່ນ LNX 9,0,124,2.
(ເມື່ອເຜີຍແຜ່, ຄ່າເລີ່ມຕົ້ນແມ່ນ FMLE/3.0 (ເຂົ້າກັນໄດ້; ))

rtmp_flush_interval
ຈໍານວນແພັກເກັດທີ່ໄຫລອອກມາໃນຄໍາຮ້ອງຂໍດຽວກັນ (RTMPT ເທົ່ານັ້ນ). ຄ່າເລີ່ມຕົ້ນແມ່ນ 10.

rtmp_live
ລະບຸວ່າສື່ແມ່ນການຖ່າຍທອດສົດ. ບໍ່ມີການສືບຕໍ່ ຫຼືຊອກຫາຢູ່ໃນການຖ່າຍທອດສົດ
ເປັນໄປໄດ້. ຄ່າເລີ່ມຕົ້ນແມ່ນ "ໃດກໍ່ຕາມ", ຊຶ່ງຫມາຍຄວາມວ່າຜູ້ສະຫມັກທໍາອິດພະຍາຍາມຫຼິ້ນ
ການຖ່າຍທອດສົດທີ່ລະບຸໄວ້ໃນ playpath. ຖ້າການຖ່າຍທອດສົດຂອງຊື່ນັ້ນບໍ່ພົບ,
ມັນຫຼິ້ນກະແສທີ່ບັນທຶກໄວ້. ມູນຄ່າທີ່ເປັນໄປໄດ້ອື່ນໆແມ່ນ "ສົດ" ແລະ "ບັນທຶກ".

rtmp_pageurl
URL ຂອງຫນ້າເວັບທີ່ສື່ໄດ້ຖືກຝັງໄວ້. ໂດຍຄ່າເລີ່ມຕົ້ນຈະບໍ່ສົ່ງຄ່າໃດໆ.

rtmp_playpath
ຕົວລະບຸການຖ່າຍທອດເພື່ອຫຼິ້ນ ຫຼືເພື່ອເຜີຍແຜ່. ຕົວເລືອກນີ້ລົບລ້າງພາລາມິເຕີທີ່ລະບຸໄວ້
ໃນ URI.

rtmp_subscribe
ຊື່ຂອງການຖ່າຍທອດສົດເພື່ອຕິດຕາມ. ໂດຍຄ່າເລີ່ມຕົ້ນຈະບໍ່ສົ່ງຄ່າໃດໆ. ມັນເປັນພຽງແຕ່
ສົ່ງຖ້າຕົວເລືອກຖືກລະບຸຫຼືຖ້າ rtmp_live ຖືກກໍານົດໃຫ້ດໍາລົງຊີວິດ.

rtmp_swfash
SHA256 hash ຂອງໄຟລ໌ SWF ທີ່ຖືກບີບອັດ (32 bytes).

rtmp_swfsize
ຂະໜາດຂອງໄຟລ໌ SWF ທີ່ຖືກບີບອັດ, ຕ້ອງການສໍາລັບການ SWFVerification.

rtmp_swfurl
URL ຂອງເຄື່ອງຫຼິ້ນ SWF ສໍາລັບສື່. ໂດຍຄ່າເລີ່ມຕົ້ນຈະບໍ່ສົ່ງຄ່າໃດໆ.

rtmp_swfverify
URL ໄປຫາໄຟລ໌ swf ຂອງຜູ້ນ, ຄິດໄລ່ hash/size ໂດຍອັດຕະໂນມັດ.

rtmp_tcurl
URL ຂອງກະແສເປົ້າໝາຍ. ຄ່າເລີ່ມຕົ້ນຂອງ proto://host[:port]/app.

ສໍາລັບຕົວຢ່າງ, ອ່ານກັບ ffplay ຊັບພະຍາກອນມັນຕິມີເດຍທີ່ມີຊື່ວ່າ "ຕົວຢ່າງ" ຈາກແອັບພລິເຄຊັນ
"vod" ຈາກເຄື່ອງແມ່ຂ່າຍ RTMP "myserver":

ffplay rtmp://myserver/vod/sample

ເພື່ອເຜີຍແຜ່ໃສ່ເຊີບເວີທີ່ປ້ອງກັນດ້ວຍລະຫັດຜ່ານ, ໃຫ້ຜ່ານ playpath ແລະ app ຊື່ແຍກຕ່າງຫາກ:

ffmpeg -re -i -f flv -rtmp_playpath some/long/path -rtmp_app long/app/name rtmp://username:password@myserver/

rtmpe
ໂປຣໂຕຄໍຂໍ້ຄວາມເວລາຈິງທີ່ເຂົ້າລະຫັດໄວ້.

ໂປຣໂຕຄໍຂໍ້ຄວາມເວລາຈິງທີ່ເຂົ້າລະຫັດລັບ (RTMPE) ຖືກນໍາໃຊ້ສໍາລັບການຖ່າຍທອດມັນຕິມີເດຍ
ເນື້ອໃນພາຍໃນ cryptographic primitives ມາດຕະຖານ, ປະກອບດ້ວຍ Diffie-Hellman key
ແລກປ່ຽນແລະ HMACSHA256, ສ້າງຄູ່ຂອງກະແຈ RC4.

rtmps
ພິທີການສົ່ງຂໍ້ຄວາມແບບສົດໆຜ່ານການເຊື່ອມຕໍ່ SSL ທີ່ປອດໄພ.

ພິທີການສົ່ງຂໍ້ຄວາມແບບສົດໆ (RTMPS) ຖືກນໍາໃຊ້ສໍາລັບການຖ່າຍທອດເນື້ອຫາມັນຕິມີເດຍໃນທົ່ວ
ການເຊື່ອມຕໍ່ເຂົ້າລະຫັດ.

rtmpt
ພິທີການສົ່ງຂໍ້ຄວາມແບບສົດໆ tunneled ຜ່ານ HTTP.

ພິທີການສົ່ງຂໍ້ຄວາມແບບສົດໆ tunneled ຜ່ານ HTTP (RTMPT) ຖືກນໍາໃຊ້ສໍາລັບການຖ່າຍທອດ
ເນື້ອຫາມັນຕິມີເດຍພາຍໃນ HTTP ຮ້ອງຂໍເພື່ອຂ້າມໄຟວໍ.

rtmpte
ພິທີການສົ່ງຂໍ້ຄວາມຕາມເວລາຈິງທີ່ຖືກເຂົ້າລະຫັດຖືກເຈາະຜ່ານ HTTP.

ໂປຣໂຕຄອນການສົ່ງຂໍ້ຄວາມແບບເຂົ້າລະຫັດແບບສົດໆ tunneled ຜ່ານ HTTP (RTMPTE) ແມ່ນໃຊ້ສໍາລັບ
ການຖ່າຍທອດເນື້ອຫາມັນຕິມີເດຍພາຍໃນການຮ້ອງຂໍ HTTP ເພື່ອຂ້າມໄຟວໍ.

rtmpts
ພິທີການສົ່ງຂໍ້ຄວາມແບບສົດໆ tunneled ຜ່ານ HTTPS.

ພິທີການສົ່ງຂໍ້ຄວາມແບບສົດໆ tunneled ຜ່ານ HTTPS (RTMPTS) ຖືກນໍາໃຊ້ສໍາລັບການຖ່າຍທອດ
ເນື້ອຫາມັນຕິມີເດຍພາຍໃນ HTTPS ຮ້ອງຂໍໃຫ້ຂ້າມໄຟວໍ.

libsmbclient
libsmbclient ອະນຸຍາດໃຫ້ຜູ້ໜຶ່ງຈັດການຊັບພະຍາກອນເຄືອຂ່າຍ CIFS/SMB.

ຕ້ອງການ syntax ຕໍ່ໄປນີ້.

smb://[[domain:]user[:password@]]server[/share[/path[/file]]]

ໂປຣໂຕຄໍນີ້ຍອມຮັບຕົວເລືອກຕໍ່ໄປນີ້.

ຫມົດ​ເວ​ລາ
ກຳນົດເວລາໝົດເວລາເປັນ miliseconds ຂອງ socket I/O operations ທີ່ໃຊ້ໂດຍລະດັບຕໍ່າສຸດ
ການດໍາເນີນງານ. ໂດຍຄ່າເລີ່ມຕົ້ນມັນຖືກກໍານົດເປັນ -1, ຊຶ່ງຫມາຍຄວາມວ່າການຫມົດເວລາບໍ່ໄດ້ຖືກກໍານົດ.

ລຳ ຕົ້ນ
ຕັດໄຟລ໌ທີ່ມີຢູ່ແລ້ວໃນການຂຽນ, ຖ້າຕັ້ງເປັນ 1. ຄ່າຂອງ 0 ປ້ອງກັນການຕັດ.
ຄ່າເລີ່ມຕົ້ນແມ່ນ 1.

ກຸ່ມເຮັດວຽກ
ກໍານົດກຸ່ມເຮັດວຽກທີ່ໃຊ້ສໍາລັບການເຊື່ອມຕໍ່. ໂດຍຄ່າເລີ່ມຕົ້ນຂອງກຸ່ມວຽກບໍ່ໄດ້ລະບຸ.

ສໍາລັບຂໍ້ມູນເພີ່ມເຕີມເບິ່ງ:http://www.samba.org/>.

libsh
ອະນຸສັນຍາການໂອນໄຟລ໌ທີ່ປອດໄພຜ່ານ libssh

ອ່ານຈາກ ຫຼືຂຽນໄປຫາຊັບພະຍາກອນທາງໄກໂດຍໃຊ້ໂປຣໂຕຄໍ SFTP.

ຕ້ອງການ syntax ຕໍ່ໄປນີ້.

sftp://[user[:password]@]server[:port]/path/to/remote/resource.mpeg

ໂປຣໂຕຄໍນີ້ຍອມຮັບຕົວເລືອກຕໍ່ໄປນີ້.

ຫມົດ​ເວ​ລາ
ກໍານົດເວລາຫມົດເວລາຂອງການປະຕິບັດການ I/O socket ທີ່ໃຊ້ໂດຍການດໍາເນີນງານລະດັບຕ່ໍາພື້ນຖານ. ໂດຍ
default ມັນຖືກກໍານົດເປັນ -1, ຊຶ່ງຫມາຍຄວາມວ່າການຫມົດເວລາບໍ່ໄດ້ຖືກກໍານົດ.

ລຳ ຕົ້ນ
ຕັດໄຟລ໌ທີ່ມີຢູ່ແລ້ວໃນການຂຽນ, ຖ້າຕັ້ງເປັນ 1. ຄ່າຂອງ 0 ປ້ອງກັນການຕັດ.
ຄ່າເລີ່ມຕົ້ນແມ່ນ 1.

ລະຫັດສ່ວນຕົວ
ລະບຸເສັ້ນທາງຂອງໄຟລ໌ທີ່ມີລະຫັດສ່ວນຕົວເພື່ອໃຊ້ໃນລະຫວ່າງການອະນຸຍາດ. ໂດຍ
libssh ເລີ່ມຕົ້ນຊອກຫາກະແຈໃນ ~ / .ssh / ລະບົບ.

ຕົວຢ່າງ: ຫຼິ້ນໄຟລ໌ທີ່ເກັບໄວ້ໃນເຊີບເວີທາງໄກ.

ffplay sftp: // ຜູ້ໃຊ້:password@server_address:22/home/user/resource.mpeg

librtmp rtmp, rtmpe, rtmps, rtmpt, rtmpte
ໂປຣໂຕຄອນການສົ່ງຂໍ້ຄວາມແບບສົດໆ ແລະຕົວແປຂອງມັນທີ່ຮອງຮັບຜ່ານ librtmp.

ຮຽກຮ້ອງໃຫ້ມີການມີສ່ວນຫົວຂອງ librtmp ແລະຫ້ອງສະໝຸດໃນລະຫວ່າງການກຳນົດຄ່າ. ທ່ານຕ້ອງການ
ກຳນົດຄ່າການກໍ່ສ້າງດ້ວຍ "--enable-librtmp". ຖ້າເປີດໃຊ້ງານນີ້ຈະປ່ຽນແທນ
ໂປຣໂຕຄໍ RTMP ເດີມ.

ໂປໂຕຄອນນີ້ສະຫນອງຫນ້າທີ່ລູກຄ້າສ່ວນໃຫຍ່ແລະຫນ້າທີ່ເຊີຟເວີຈໍານວນຫນ້ອຍທີ່ຈໍາເປັນເພື່ອສະຫນັບສະຫນູນ
RTMP, RTMP tunneled ໃນ HTTP (RTMPT), ເຂົ້າລະຫັດ RTMP (RTMPE), RTMP ຜ່ານ SSL/TLS (RTMPS) ແລະ
tunneled variants ຂອງປະເພດການເຂົ້າລະຫັດເຫຼົ່ານີ້ (RTMPTE, RTMPTS).

syntax ທີ່ຕ້ອງການແມ່ນ:

// [: ][/ ][/ ]

ບ່ອນທີ່ rtmp_proto ແມ່ນຫນຶ່ງໃນສາຍ "rtmp", "rtmpt", "rtmpe", "rtmps", "rtmpte",
"rtmpts" ທີ່ສອດຄ້ອງກັນກັບແຕ່ລະຕົວແປ RTMP, ແລະ ເຄື່ອງແມ່ຂ່າຍ, port, app ແລະ ເສັ້ນທາງຫຼິ້ນ ມີ
ຄວາມຫມາຍດຽວກັນທີ່ລະບຸໄວ້ສໍາລັບໂປໂຕຄອນພື້ນເມືອງ RTMP. ທາງເລືອກໃນການ ປະ​ກອບ​ດ້ວຍ​ບັນ​ຊີ​ລາຍ​ຊື່​ຂອງ​ຊ່ອງ -
ທາງ​ເລືອກ​ທີ່​ແຍກ​ອອກ​ຂອງ​ຮູບ​ແບບ​ ທີ່ສໍາຄັນ=h.

ເບິ່ງໜ້າຄູ່ມື librtmp (man 3 librtmp) ສໍາລັບຂໍ້ມູນເພີ່ມເຕີມ.

ຕົວຢ່າງ, ເພື່ອຖ່າຍທອດໄຟລ໌ໃນເວລາຈິງກັບເຄື່ອງແມ່ຂ່າຍ RTMP ໂດຍໃຊ້ ffmpeg:

ffmpeg -re -i myfile -f flv rtmp://myserver/live/mystream

ເພື່ອຫຼິ້ນກະແສດຽວກັນໂດຍໃຊ້ ffplay:

ffplay "rtmp://myserver/live/mystream live=1"

rtp
ພິທີການການຂົນສົ່ງໃນເວລາຈິງ.

syntax ທີ່ຕ້ອງການສໍາລັບ URL RTP ແມ່ນ: rtp://hostname[:port][?ທາງເລືອກ=h... ]

port ກໍານົດພອດ RTP ທີ່ຈະໃຊ້.

ຕົວເລືອກ URL ຕໍ່ໄປນີ້ແມ່ນຮອງຮັບ:

ttl=n
ກໍານົດຄ່າ TTL (Time-To-Live) (ສໍາລັບ multicast ເທົ່ານັ້ນ).

rtcpport=n
ຕັ້ງພອດ RTCP ໄລຍະໄກເປັນ n.

localrtport=n
ຕັ້ງພອດ RTP ທ້ອງຖິ່ນເປັນ n.

localrtcpport=n'
ຕັ້ງພອດ RTCP ທ້ອງຖິ່ນເປັນ n.

pkt_size=n
ຕັ້ງຂະໜາດແພັກເກັດສູງສຸດ (ເປັນໄບຕ໌) ເປັນ n.

ເຊື່ອມຕໍ່=0|1
ເຮັດ "ເຊື່ອມຕໍ່()" ໃນຊັອກເກັດ UDP (ຖ້າຕັ້ງເປັນ 1) ຫຼືບໍ່ (ຖ້າຕັ້ງເປັນ 0).

ແຫຼ່ງ=ip[,ip]
ລາຍຊື່ທີ່ຢູ່ IP ແຫຼ່ງທີ່ອະນຸຍາດ.

block=ip[,ip]
ລາຍຊື່ທີ່ຢູ່ IP ແຫຼ່ງທີ່ບໍ່ໄດ້ຮັບອະນຸຍາດ (ຖືກບລັອກ).

write_to_source=0|1
ສົ່ງແພັກເກັດໄປຫາທີ່ຢູ່ຕົ້ນສະບັບຂອງແພັກເກັດທີ່ໄດ້ຮັບຫຼ້າສຸດ (ຖ້າຕັ້ງເປັນ 1) ຫຼືເປັນ a
ທີ່ຢູ່ໄລຍະໄກເລີ່ມຕົ້ນ (ຖ້າຕັ້ງເປັນ 0).

localport=n
ຕັ້ງພອດ RTP ທ້ອງຖິ່ນເປັນ n.

ນີ້​ແມ່ນ​ທາງ​ເລືອກ​ທີ່​ບໍ່​ໄດ້​ສະ​ຫມັກ​. ແທນທີ່ຈະ, localrtpport ຄວນຈະຖືກນໍາໃຊ້.

ຫມາຍເຫດທີ່ສໍາຄັນ:

1 If rtcpport ບໍ່ໄດ້ຕັ້ງພອດ RTCP ຈະຖືກຕັ້ງເປັນຄ່າພອດ RTP ບວກ 1.

2 If localrtpport (ພອດ RTP ທ້ອງຖິ່ນ) ບໍ່ໄດ້ກໍານົດພອດທີ່ມີຢູ່ຈະຖືກນໍາໃຊ້ສໍາລັບ
ພອດ RTP ແລະ RTCP ທ້ອງຖິ່ນ.

3 If localrtcpport (ພອດ RTCP ທ້ອງຖິ່ນ) ບໍ່ໄດ້ຕັ້ງມັນຈະຖືກຕັ້ງເປັນພອດ RTP ທ້ອງຖິ່ນ
ຄ່າບວກ 1.

rtsp
ໂປຣໂຕຄອນການຖ່າຍທອດເວລາຈິງ.

RTSP ບໍ່ແມ່ນທາງດ້ານວິຊາການຕົວຈັດການໂປໂຕຄອນໃນ libavformat, ມັນແມ່ນ demuxer ແລະ muxer. ໄດ້
demuxer ສະ​ຫນັບ​ສະ​ຫນູນ​ທັງ​ສອງ RTSP ປົກ​ກະ​ຕິ (ມີ​ຂໍ້​ມູນ​ທີ່​ໂອນ​ຜ່ານ RTP​; ນີ້​ແມ່ນ​ການ​ນໍາ​ໃຊ້​ໂດຍ eg
Apple ແລະ Microsoft) ແລະ Real-RTSP (ມີຂໍ້ມູນຖືກໂອນຜ່ານ RDT).

muxer ສາມາດໃຊ້ເພື່ອສົ່ງກະແສໂດຍໃຊ້ RTSP ANNOUNCE ໄປຫາເຄື່ອງແມ່ຂ່າຍທີ່ສະຫນັບສະຫນູນມັນ
(ປະຈຸບັນແມ່ນ Darwin Streaming Server ແລະ Mischa Spiegelmock's
<https://github.com/revmischa/rtsp-server>).

syntax ທີ່ຕ້ອງການສໍາລັບ RTSP url ແມ່ນ:

rtsp:// [: ]/

ທາງ​ເລືອກ​ທີ່​ສາ​ມາດ​ໄດ້​ຮັບ​ການ​ຕັ້ງ​ຄ່າ​ໃນ​ ffmpeg/ffplay ເສັ້ນຄໍາສັ່ງ, ຫຼືກໍານົດໃນລະຫັດຜ່ານ "AVOption"s ຫຼືໃນ
"avformat_open_input".

ທາງເລືອກຕໍ່ໄປນີ້ແມ່ນສະຫນັບສະຫນູນ.

initial_pause
ຢ່າເລີ່ມຫຼິ້ນສະຕຣີມທັນທີຖ້າຕັ້ງເປັນ 1. ຄ່າເລີ່ມຕົ້ນແມ່ນ 0.

rtsp_transport
ຕັ້ງໂປຣໂຕຄອນການຂົນສົ່ງ RTSP.

ມັນຍອມຮັບຄ່າດັ່ງຕໍ່ໄປນີ້:

udp ໃຊ້ UDP ເປັນໂປຣໂຕຄໍການຂົນສົ່ງທີ່ຕໍ່າກວ່າ.

tcp ໃຊ້ TCP (ແຊກແຊງພາຍໃນຊ່ອງທາງການຄວບຄຸມ RTSP) ເປັນການຂົນສົ່ງຕ່ໍາ
protocol

udp_multicast
ໃຊ້ UDP multicast ເປັນໂປຣໂຕຄໍການຂົນສົ່ງທີ່ຕໍ່າກວ່າ.

http
ໃຊ້ HTTP tunneling ເປັນໂປໂຕຄອນການຂົນສົ່ງຕ່ໍາ, ເຊິ່ງເປັນປະໂຫຍດສໍາລັບການຜ່ານ
ຕົວແທນ.

ໂປໂຕຄອນການຂົນສົ່ງຕ່ໍາຫຼາຍອາດຈະຖືກລະບຸ, ໃນກໍລະນີນີ້ພວກມັນຖືກທົດລອງຫນຶ່ງ
ໃນເວລາຫນຶ່ງ (ຖ້າການຕິດຕັ້ງຫນຶ່ງລົ້ມເຫລວ, ຕໍ່ໄປແມ່ນພະຍາຍາມ). ສໍາລັບ muxer ໄດ້, ພຽງແຕ່ໄດ້
tcp ແລະ udp ທາງ​ເລືອກ​ແມ່ນ​ສະ​ຫນັບ​ສະ​ຫນູນ​.

rtsp_flags
ຕັ້ງທຸງ RTSP.

ຄ່າຕໍ່ໄປນີ້ຖືກຍອມຮັບ:

filter_src
ຍອມຮັບແພັກເກັດພຽງແຕ່ຈາກທີ່ຢູ່ແລະພອດທີ່ເຈລະຈາກັນ.

ຟັງ
ເຮັດຫນ້າທີ່ເປັນເຄື່ອງແມ່ຂ່າຍ, ຟັງສໍາລັບການເຊື່ອມຕໍ່ຂາເຂົ້າ.

prefer_tcp
ລອງໃຊ້ TCP ສໍາລັບການຂົນສົ່ງ RTP ກ່ອນ, ຖ້າ TCP ສາມາດໃຊ້ໄດ້ເປັນການຂົນສົ່ງ RTSP RTP.

ຄ່າເລີ່ມຕົ້ນແມ່ນ none.

allow_media_types
ກໍານົດປະເພດສື່ທີ່ຈະຍອມຮັບຈາກເຄື່ອງແມ່ຂ່າຍ.

ທຸງຕໍ່ໄປນີ້ຖືກຍອມຮັບ:

ວິດີໂອ
ສຽງ
ຂໍ້ມູນ

ໂດຍຄ່າເລີ່ມຕົ້ນມັນຍອມຮັບທຸກປະເພດສື່.

min_port
ກໍານົດພອດ UDP ທ້ອງຖິ່ນຂັ້ນຕ່ໍາ. ຄ່າເລີ່ມຕົ້ນແມ່ນ 5000.

max_port
ຕັ້ງຄ່າພອດ UDP ທ້ອງຖິ່ນສູງສຸດ. ຄ່າເລີ່ມຕົ້ນແມ່ນ 65000.

ຫມົດ​ເວ​ລາ
ກໍານົດເວລາຫມົດເວລາສູງສຸດ (ເປັນວິນາທີ) ເພື່ອລໍຖ້າການເຊື່ອມຕໍ່ຂາເຂົ້າ.

ຄ່າຂອງ -1 ຫມາຍຄວາມວ່າບໍ່ມີຂອບເຂດ (ຄ່າເລີ່ມຕົ້ນ). ທາງເລືອກນີ້ຫມາຍເຖິງ rtsp_flags ຕັ້ງ​ຄ່າ
ຟັງ.

reorder_queue_size
ກໍານົດຈໍານວນແພັກເກັດເປັນ buffer ສໍາລັບການຈັດການຊຸດທີ່ຈັດລໍາດັບໃຫມ່.

ໝົດເວລາ
ຕັ້ງຊັອກເກັດ TCP I/O ໝົດເວລາເປັນໄມໂຄວິນາທີ.

ຕົວແທນຜູ້ໃຊ້
ຍົກເລີກສ່ວນຫົວຂອງຕົວແທນຜູ້ໃຊ້. ຖ້າບໍ່ໄດ້ລະບຸ, ມັນຈະເປັນຄ່າເລີ່ມຕົ້ນເປັນ libavformat
ສະຕຣິງຕົວລະບຸ.

ເມື່ອໄດ້ຮັບຂໍ້ມູນຜ່ານ UDP, demuxer ພະຍາຍາມຈັດລໍາດັບຊຸດທີ່ໄດ້ຮັບຄືນໃຫມ່ (ນັບຕັ້ງແຕ່ພວກມັນ
ອາດ​ຈະ​ມາ​ເຖິງ​ບໍ່​ມີ​ການ​ສັ່ງ​, ຫຼື​ຊຸດ​ອາດ​ຈະ​ສູນ​ເສຍ​ທັງ​ຫມົດ​)​. ນີ້ສາມາດຖືກປິດໃຊ້ງານໄດ້ໂດຍການຕັ້ງຄ່າ
ຄວາມລ່າຊ້າ demuxing ສູງສຸດເປັນສູນ (ຜ່ານຊ່ອງ "max_delay" ຂອງ AVFormatContext).

ເມື່ອເບິ່ງຫຼາຍບິດເຣດ Real-RTSP streams ກັບ ffplay, ສາຍນ້ໍາທີ່ຈະສະແດງສາມາດ
ເລືອກດ້ວຍ "-vst" n ແລະ "ast" n ສໍາລັບວິດີໂອແລະສຽງຕາມລໍາດັບ, ແລະສາມາດໄດ້ຮັບການ switched ສຸດ
ແມງວັນໂດຍການກົດ "v" ແລະ "a".

ຕົວຢ່າງ

ຕົວຢ່າງຕໍ່ໄປນີ້ທັງຫມົດເຮັດໃຫ້ການນໍາໃຊ້ຂອງ ffplay ແລະ ffmpeg ເຄື່ອງມື.

· ເບິ່ງການຖ່າຍທອດຜ່ານ UDP, ມີຄວາມລ່າຊ້າການສັ່ງໃໝ່ສູງສຸດ 0.5 ວິນາທີ:

ffplay -max_delay 500000 -rtsp_transport udp rtsp://server/video.mp4

· ເບິ່ງ tunneled streamed ຜ່ານ HTTP:

ffplay -rtsp_transport http rtsp://server/video.mp4

· ສົ່ງກະແສໃນແບບສົດໆໄປຫາເຊີບເວີ RTSP, ໃຫ້ຄົນອື່ນເບິ່ງ:

ffmpeg -re -i -f rtsp -muxdelay 0.1 rtsp://server/live.sdp

·​ໄດ້​ຮັບ​ການ​ນ​້​ໍ​າ​ໃນ​ເວ​ລາ​ຈິງ​:

ffmpeg -rtsp_flags ຟັງ -i rtsp://ownaddress/live.sdp

sap
Session Announcement Protocol (RFC 2974). ນີ້ບໍ່ແມ່ນທາງດ້ານວິຊາການຕົວຈັດການໂປຣໂຕຄໍໃນ
libavformat, ມັນເປັນ muxer ແລະ demuxer. ມັນຖືກນໍາໃຊ້ສໍາລັບການສົ່ງສັນຍານຂອງສາຍ RTP, ໂດຍ
ປະກາດ SDP ສໍາລັບສາຍນ້ໍາເປັນປົກກະຕິຢູ່ໃນທ່າເຮືອແຍກຕ່າງຫາກ.

ມູເຊີ

syntax ສໍາລັບ SAP url ໃຫ້ກັບ muxer ແມ່ນ:

ຊັບ:// [: ][? ]

ແພັກເກັດ RTP ຖືກສົ່ງໄປຫາ ຈຸດຫມາຍປາຍທາງ ຢູ່ທ່າເຮືອ port, ຫຼືໄປຫາພອດ 5004 ຖ້າບໍ່ມີພອດ
ລະບຸ. ທາງເລືອກໃນການ ແມ່ນລາຍການ "&" ແຍກ. ທາງ​ເລືອກ​ດັ່ງ​ຕໍ່​ໄປ​ນີ້​ແມ່ນ​ສະ​ຫນັບ​ສະ​ຫນູນ​:

ປະກາດ_addr=ທີ່ຢູ່
ລະບຸທີ່ຢູ່ IP ປາຍທາງສຳລັບການສົ່ງປະກາດຫາ. ຖ້າຖືກລະເວັ້ນ, ໄດ້
ການປະກາດຈະຖືກສົ່ງໄປຫາທີ່ຢູ່ການປະກາດ SAP ທີ່ໃຊ້ທົ່ວໄປແບບ multicast
224.2.127.254 (sap.mcast.net), ຫຼື ff0e::2:7ffe ຖ້າ ຈຸດຫມາຍປາຍທາງ ເປັນທີ່ຢູ່ IPv6.

ປະກາດ_port=port
ລະບຸພອດເພື່ອສົ່ງການປະກາດ, ເລີ່ມຕົ້ນເປັນ 9875 ຖ້າບໍ່ໄດ້ລະບຸ.

ttl=ttl
ລະບຸເວລາທີ່ຈະດໍາລົງຊີວິດມູນຄ່າສໍາລັບການປະກາດແລະຊຸດ RTP, ຄ່າເລີ່ມຕົ້ນເປັນ 255.

same_port=0 | 1
ຖ້າຕັ້ງເປັນ 1, ສົ່ງກະແສ RTP ທັງໝົດຢູ່ໃນຄູ່ພອດດຽວກັນ. ຖ້າສູນ (ຄ່າເລີ່ມຕົ້ນ), ທັງໝົດ
streams ຖືກສົ່ງຢູ່ໃນພອດທີ່ເປັນເອກະລັກ, ໂດຍແຕ່ລະສະຕຣີມຢູ່ໃນພອດ 2 ຕົວເລກສູງກວ່າ
ທີ່ຜ່ານມາ. VLC/Live555 ຕ້ອງການໃຫ້ຕັ້ງເປັນ 1, ເພື່ອໃຫ້ສາມາດຮັບການຖ່າຍທອດໄດ້.
stack RTP ໃນ libavformat ສໍາລັບການຮັບຮຽກຮ້ອງໃຫ້ມີການຖ່າຍທອດທັງຫມົດທີ່ຈະຖືກສົ່ງໄປເປັນເອກະລັກ
ທ່າເຮືອ.

ຕົວຢ່າງເສັ້ນຄໍາສັ່ງປະຕິບັດຕາມ.

ເພື່ອຖ່າຍທອດການຖ່າຍທອດຢູ່ໃນເຄືອຂ່າຍຍ່ອຍທ້ອງຖິ່ນ, ສໍາລັບການເບິ່ງໃນ VLC:

ffmpeg -re -i -f sap sap://224.0.0.255?same_port=1

ເຊັ່ນດຽວກັນ, ສໍາລັບການເບິ່ງໃນ ffplay:

ffmpeg -re -i -f sap sap://224.0.0.255

ແລະສໍາລັບການເບິ່ງໃນ ffplay, ຫຼາຍກວ່າ IPv6:

ffmpeg -re -i -f sap sap://[ff0e::1:2:3:4]

Demuxer

syntax ສໍາລັບ SAP url ໃຫ້ກັບ demuxer ແມ່ນ:

ຊັບ //[ ][: ]

ທີ່ຢູ່ ແມ່ນທີ່ຢູ່ multicast ເພື່ອຟັງການປະກາດ, ຖ້າຖືກລະເວັ້ນ, ແມ່ນຄ່າເລີ່ມຕົ້ນ
224.2.127.254 (sap.mcast.net) ຖືກໃຊ້. port ແມ່ນພອດທີ່ຟັງຢູ່, 9875 ຖ້າ
ຖືກລະເວັ້ນ.

Demuxers ຟັງການປະກາດກ່ຽວກັບທີ່ຢູ່ແລະພອດ. ຄັ້ງໜຶ່ງ
ໄດ້ຮັບການປະກາດ, ມັນພະຍາຍາມທີ່ຈະໄດ້ຮັບກະແສສະເພາະນັ້ນ.

ຕົວຢ່າງເສັ້ນຄໍາສັ່ງປະຕິບັດຕາມ.

ເພື່ອຫຼິ້ນການຖ່າຍທອດທຳອິດທີ່ປະກາດຢູ່ໃນທີ່ຢູ່ SAP multicast ປົກກະຕິ:

ffplay sap://

ເພື່ອຫຼິ້ນສະຕຣີມທຳອິດທີ່ປະກາດໃນອັນໜຶ່ງທີ່ຢູ່ IPv6 SAP multicast ເລີ່ມຕົ້ນ:

ffplay sap://[ff0e::2:7ffe]

sctp
ອະນຸສັນຍາການຖ່າຍທອດການຄວບຄຸມນ້ໍາ.

syntax URL ທີ່ຍອມຮັບແມ່ນ:

sctp:// : [? ]

ໂປຣໂຕຄໍຍອມຮັບທາງເລືອກຕໍ່ໄປນີ້:

ຟັງ
ຖ້າຕັ້ງເປັນຄ່າໃດກໍ່ຕາມ, ຟັງການເຊື່ອມຕໍ່ຂາເຂົ້າ. ການເຊື່ອມຕໍ່ຂາອອກແມ່ນເຮັດໄດ້ໂດຍ
Default

max_streams
ກໍານົດຈໍານວນການຖ່າຍທອດສູງສຸດ. ໂດຍຄ່າເລີ່ມຕົ້ນບໍ່ມີກໍານົດຂອບເຂດຈໍາກັດ.

srtp
ຮັກສາຄວາມປອດໄພອະນຸສັນຍາການຂົນສົ່ງໃນເວລາຈິງ.

ທາງເລືອກທີ່ຍອມຮັບແມ່ນ:

srtp_in_suite
srtp_out_suite
ເລືອກຊຸດການເຂົ້າລະຫັດເຂົ້າ ແລະອອກ.

ຄ່າທີ່ຮອງຮັບ:

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
ກໍານົດພາລາມິເຕີການເຂົ້າລະຫັດເຂົ້າ ແລະຜົນຜະລິດ, ເຊິ່ງສະແດງອອກໂດຍການເຂົ້າລະຫັດ base64
ການເປັນຕົວແທນຂອງ binary block. 16 bytes ທໍາອິດຂອງ binary block ນີ້ຖືກນໍາໃຊ້ເປັນ
ຫຼັກຫຼັກ, 14 bytes ຕໍ່ໄປນີ້ແມ່ນໃຊ້ເປັນເກືອຫຼັກ.

ໄຟລ໌ຍ່ອຍ
ເກືອບຈະແຍກສ່ວນຂອງໄຟລ໌ ຫຼືສະຕຣີມອື່ນອອກ. ກະແສຫຼັກຕ້ອງເປັນ
ສາມາດຊອກຫາໄດ້.

ທາງເລືອກທີ່ຍອມຮັບ:

ການເລີ່ມຕົ້ນ
ເລີ່ມການຊົດເຊີຍຂອງສ່ວນທີ່ສະກັດອອກ, ເປັນໄບຕ໌.

ໃນຕອນທ້າຍ ສິ້ນສຸດການຊົດເຊີຍຂອງສ່ວນທີ່ສະກັດອອກ, ເປັນໄບຕ໌.

ຕົວຢ່າງ:

ສະກັດບົດຈາກໄຟລ໌ DVD VOB (ພາກສ່ວນເລີ່ມຕົ້ນແລະສິ້ນສຸດທີ່ໄດ້ຮັບຈາກພາຍນອກແລະ
ຄູນດ້ວຍ 2048):

subfile,,start,153391104,end,268142592,,:/media/dvd/VIDEO_TS/VTS_08_1.VOB

ຫຼິ້ນໄຟລ໌ AVI ໂດຍກົງຈາກບ່ອນເກັບຂໍ້ມູນ TAR:

subfile,,start,183241728,end,366490624,,:archive.tar

tcp
ອະນຸສັນຍາການຄວບຄຸມລະບົບສາຍສົ່ງ.

syntax ທີ່ຕ້ອງການສໍາລັບ url TCP ແມ່ນ:

tcp:// : [? ]

ທາງເລືອກໃນການ ປະກອບມີບັນຊີລາຍຊື່ຂອງ &- ທາງເລືອກທີ່ແຍກຕ່າງຫາກຂອງແບບຟອມ ທີ່ສໍາຄັນ=h.

ບັນຊີລາຍຊື່ຂອງທາງເລືອກທີ່ສະຫນັບສະຫນູນດັ່ງຕໍ່ໄປນີ້.

ຟັງ =1 | 0
ຟັງການເຊື່ອມຕໍ່ຂາເຂົ້າ. ຄ່າເລີ່ມຕົ້ນແມ່ນ 0.

ໝົດເວລາ=ໄມໂຄວິນາທີ
ຕັ້ງຄ່າການໝົດເວລາຂອງຄວາມຜິດພາດທີ່ເພີ່ມຂຶ້ນ, ສະແດງອອກເປັນໄມໂຄວິນາທີ.

ຕົວເລືອກນີ້ມີຄວາມກ່ຽວຂ້ອງພຽງແຕ່ໃນຮູບແບບການອ່ານ: ຖ້າບໍ່ມີຂໍ້ມູນເຂົ້າມາຫຼາຍກວ່າເວລານີ້
ໄລ​ຍະ​ຫ່າງ​, ຍົກ​ສູງ​ຄວາມ​ຜິດ​ພາດ​.

listen_timeout=ມິນລິລິດ
ຕັ້ງເວລາຟັງ, ສະແດງອອກເປັນມິນລິວິນາທີ.

ຕົວຢ່າງຕໍ່ໄປນີ້ສະແດງໃຫ້ເຫັນວິທີການຕິດຕັ້ງການເຊື່ອມຕໍ່ TCP ການຟັງກັບ ffmpeg, ເຊິ່ງແມ່ນ
ຫຼັງຈາກນັ້ນ, ເຂົ້າເຖິງດ້ວຍ ffplay:

ffmpeg -i -f tcp:// : ?ຟັງ
ffplay tcp:// :

tls
Transport Layer Security (TLS) / Secure Sockets Layer (SSL)

syntax ທີ່ຕ້ອງການສໍາລັບ url TLS/SSL ແມ່ນ:

tls:// : [? ]

ພາລາມິເຕີຕໍ່ໄປນີ້ສາມາດຖືກຕັ້ງຜ່ານຕົວເລືອກແຖວຄໍາສັ່ງ (ຫຼືໃນລະຫັດຜ່ານ "AVOption"s):

ca_file, cafile=ຊື່​ເອ​ກະ​ສານ
ໄຟລ໌ທີ່ບັນຈຸໃບຢັ້ງຢືນສິດອໍານາດ (CA) ໃບຮັບຮອງເພື່ອປະຕິບັດເປັນທີ່ເຊື່ອຖືໄດ້. ຖ້າ
ຫໍສະໝຸດ TLS ທີ່ເຊື່ອມຕໍ່ນັ້ນມີຄ່າເລີ່ມຕົ້ນທີ່ມັນບໍ່ຈຳເປັນຕ້ອງລະບຸໄວ້
ການ​ກວດ​ສອບ​ທີ່​ຈະ​ເຮັດ​ວຽກ​, ແຕ່​ວ່າ​ບໍ່​ແມ່ນ​ຫ້ອງ​ສະ​ຫມຸດ​ແລະ​ການ​ຕັ້ງ​ຄ່າ​ທັງ​ຫມົດ​ທີ່​ມີ​ຄ່າ​ເລີ່ມ​ຕົ້ນ​ທີ່​ມີ​ຢູ່​ໃນ​
ໄຟລ໌ຕ້ອງຢູ່ໃນຮູບແບບ OpenSSL PEM.

tls_verify=1 | 0
ຖ້າເປີດໃຊ້, ພະຍາຍາມກວດສອບເພື່ອນມິດທີ່ພວກເຮົາກໍາລັງຕິດຕໍ່ກັບ. ຫມາຍເຫດ, ຖ້າໃຊ້
OpenSSL, ນີ້ພຽງແຕ່ເຮັດໃຫ້ແນ່ໃຈວ່າໃບຢັ້ງຢືນມິດສະຫາຍຖືກເຊັນໂດຍຫນຶ່ງໃນ
ໃບຢັ້ງຢືນຮາກໃນຖານຂໍ້ມູນ CA, ແຕ່ມັນບໍ່ຢັ້ງຢືນວ່າ
ໃບຢັ້ງຢືນຕົວຈິງກົງກັບຊື່ເຈົ້າພາບທີ່ພວກເຮົາກໍາລັງພະຍາຍາມເຊື່ອມຕໍ່. (ດ້ວຍ GnuTLS,
ຊື່ເຈົ້າພາບແມ່ນຖືກຕ້ອງເຊັ່ນດຽວກັນ.)

ອັນນີ້ຖືກປິດໃຊ້ງານໂດຍຄ່າເລີ່ມຕົ້ນເນື່ອງຈາກມັນຕ້ອງການຖານຂໍ້ມູນ CA ເພື່ອສະໜອງໃຫ້ໂດຍ
ຜູ້ໂທໃນຫຼາຍໆກໍລະນີ.

cert_file, cert=ຊື່​ເອ​ກະ​ສານ
ໄຟລ໌ທີ່ມີໃບຮັບຮອງເພື່ອໃຊ້ໃນການຈັບມືກັບໝູ່ເພື່ອນ. (ເມື່ອ​ໃດ​
ປະຕິບັດງານເປັນເຄື່ອງແມ່ຂ່າຍ, ໃນໂຫມດຟັງ, ນີ້ມັກຈະຕ້ອງການໂດຍເພື່ອນມິດ, ໃນຂະນະທີ່
ໃບຮັບຮອງລູກຄ້າພຽງແຕ່ຖືກບັງຄັບໃນການຕັ້ງຄ່າສະເພາະ.)

key_file, key =ຊື່​ເອ​ກະ​ສານ
ໄຟລ໌ທີ່ມີລະຫັດສ່ວນຕົວສໍາລັບໃບຢັ້ງຢືນ.

ຟັງ =1 | 0
ຖ້າເປີດໃຊ້, ຟັງການເຊື່ອມຕໍ່ຢູ່ໃນພອດທີ່ສະຫນອງໃຫ້, ແລະສົມມຸດບົດບາດຂອງເຄື່ອງແມ່ຂ່າຍໃນ
ການຈັບມືແທນທີ່ຈະເປັນບົດບາດຂອງລູກຄ້າ.

ຕົວຢ່າງເສັ້ນຄໍາສັ່ງ:

ເພື່ອສ້າງເຊີບເວີ TLS/SSL ທີ່ຮັບໃຊ້ກະແສການປ້ອນຂໍ້ມູນ.

ffmpeg -i -f tls:// : ?ຟັງ&cert= &key=

ເພື່ອຫຼິ້ນການຖ່າຍທອດຈາກເຊີບເວີ TLS/SSL ໂດຍໃຊ້ ffplay:

ffplay tls:// :

udp
User Datagram Protocol.

syntax ທີ່ຕ້ອງການສໍາລັບ URL UDP ແມ່ນ:

udp:// : [? ]

ທາງເລືອກໃນການ ປະກອບມີບັນຊີລາຍຊື່ຂອງ &- ທາງເລືອກທີ່ແຍກຕ່າງຫາກຂອງແບບຟອມ ທີ່ສໍາຄັນ=h.

ໃນກໍລະນີທີ່ມີການເປີດໃຊ້ threading ໃນລະບົບ, buffer ວົງແມ່ນຖືກນໍາໃຊ້ເພື່ອເກັບຮັກສາ
ຂໍ້ມູນຂາເຂົ້າ, ເຊິ່ງອະນຸຍາດໃຫ້ຫນຶ່ງເພື່ອຫຼຸດຜ່ອນການສູນເສຍຂໍ້ມູນເນື່ອງຈາກ UDP socket buffer overruns.
ໄດ້ fifo_size ແລະ overrun_nonfatal ທາງເລືອກແມ່ນກ່ຽວຂ້ອງກັບ buffer ນີ້.

ບັນຊີລາຍຊື່ຂອງທາງເລືອກທີ່ສະຫນັບສະຫນູນດັ່ງຕໍ່ໄປນີ້.

buffer_size=ຂະຫນາດ
ກໍານົດຂະຫນາດ socket buffer ສູງສຸດ UDP ເປັນ bytes. ນີ້ຖືກນໍາໃຊ້ເພື່ອກໍານົດບໍ່ວ່າຈະເປັນ
ຮັບຫຼືສົ່ງຂະຫນາດ buffer, ຂຶ້ນກັບສິ່ງທີ່ socket ຖືກນໍາໃຊ້ສໍາລັບ. ຄ່າເລີ່ມຕົ້ນແມ່ນ
64KB. ເບິ່ງນຳ fifo_size.

localport=port
ລົບລ້າງພອດ UDP ທ້ອງຖິ່ນເພື່ອຜູກມັດກັບ.

localaddr=ສິ່ງເສບຕິດ
ເລືອກທີ່ຢູ່ IP ທ້ອງຖິ່ນ. ນີ້ແມ່ນເປັນປະໂຫຍດ eg ຖ້າສົ່ງ multicast ແລະເຈົ້າພາບມີ
ຫຼາຍການໂຕ້ຕອບ, ບ່ອນທີ່ຜູ້ໃຊ້ສາມາດເລືອກທີ່ການໂຕ້ຕອບທີ່ຈະສົ່ງໂດຍ
ການລະບຸທີ່ຢູ່ IP ຂອງການໂຕ້ຕອບນັ້ນ.

pkt_size=ຂະຫນາດ
ກໍານົດຂະຫນາດໃນ bytes ຂອງແພັກເກັດ UDP.

reuse=1 | 0
ອະ​ນຸ​ຍາດ​ໃຫ້​ຢ່າງ​ຊັດ​ເຈນ​ຫຼື​ບໍ່​ອະ​ນຸ​ຍາດ​ໃຫ້​ນໍາ​ໃຊ້​ຊັອກ​ເກັດ UDP .

ttl=ttl
ກໍານົດເວລາທີ່ຈະດໍາລົງຊີວິດມູນຄ່າ (ສໍາລັບ multicast ເທົ່ານັ້ນ).

ເຊື່ອມຕໍ່=1 | 0
ເລີ່ມຕົ້ນຊັອກເກັດ UDP ດ້ວຍ "ເຊື່ອມຕໍ່()". ໃນກໍລະນີນີ້, ທີ່ຢູ່ປາຍທາງ
ບໍ່ສາມາດປ່ຽນໄດ້ດ້ວຍ ff_udp_set_remote_url ພາຍຫຼັງ. ຖ້າທີ່ຢູ່ປາຍທາງບໍ່ແມ່ນ
ເປັນທີ່ຮູ້ຈັກໃນຕອນເລີ່ມຕົ້ນ, ທາງເລືອກນີ້ສາມາດຖືກລະບຸໄວ້ໃນ ff_udp_set_remote_url, ເຊັ່ນກັນ. ນີ້
ອະ​ນຸ​ຍາດ​ໃຫ້​ຊອກ​ຫາ​ທີ່​ຢູ່​ແຫຼ່ງ​ສໍາ​ລັບ​ການ​ຫຸ້ມ​ຫໍ່​ທີ່​ມີ getsockname​, ແລະ​ເຮັດ​ໃຫ້​
ຂຽນກັບຄືນດ້ວຍ AVERROR(ECONNREFUSED) ຖ້າ "ຈຸດຫມາຍປາຍທາງບໍ່ສາມາດໄປເຖິງໄດ້" ໄດ້ຮັບ.
ສໍາລັບການໄດ້ຮັບ, ນີ້ເຮັດໃຫ້ຜົນປະໂຫຍດພຽງແຕ່ໄດ້ຮັບຊອງຈາກທີ່ກໍານົດໄວ້
ທີ່ຢູ່/ພອດ.

ແຫຼ່ງ=ທີ່ຢູ່[,ທີ່ຢູ່]
ຮັບພຽງແຕ່ແພັກເກັດທີ່ສົ່ງໄປຫາກຸ່ມ multicast ຈາກໜຶ່ງໃນ IP ຜູ້ສົ່ງທີ່ລະບຸ
ທີ່ຢູ່.

block=ທີ່ຢູ່[,ທີ່ຢູ່]
ບໍ່ສົນໃຈແພັກເກັດທີ່ສົ່ງໄປຫາກຸ່ມ multicast ຈາກທີ່ຢູ່ IP ຜູ້ສົ່ງທີ່ລະບຸໄວ້.

fifo_size=ຫນ່ວຍ
ກໍານົດ UDP ໄດ້ຮັບຂະຫນາດ buffer ວົງ, ສະແດງອອກເປັນຈໍານວນຊອງທີ່ມີຂະຫນາດ
ຂອງ 188 bytes. ຖ້າບໍ່ລະບຸຄ່າເລີ່ມຕົ້ນເປັນ 7*4096.

overrun_nonfatal=1 | 0
ຄວາມຢູ່ລອດໃນກໍລະນີຂອງ UDP ໄດ້ຮັບການ overrun buffer ວົງ. ຄ່າເລີ່ມຕົ້ນແມ່ນ 0.

ໝົດເວລາ=ໄມໂຄວິນາທີ
ຕັ້ງຄ່າການໝົດເວລາຂອງຄວາມຜິດພາດທີ່ເພີ່ມຂຶ້ນ, ສະແດງອອກເປັນໄມໂຄວິນາທີ.

ຕົວເລືອກນີ້ມີຄວາມກ່ຽວຂ້ອງພຽງແຕ່ໃນຮູບແບບການອ່ານ: ຖ້າບໍ່ມີຂໍ້ມູນເຂົ້າມາຫຼາຍກວ່າເວລານີ້
ໄລ​ຍະ​ຫ່າງ​, ຍົກ​ສູງ​ຄວາມ​ຜິດ​ພາດ​.

ອອກອາກາດ=1 | 0
ອະນຸຍາດ ຫຼື ບໍ່ອະນຸຍາດໃຫ້ອອກອາກາດ UDP ຢ່າງຈະແຈ້ງ.

ກະລຸນາຮັບຊາບວ່າການອອກອາກາດອາດຈະບໍ່ເຮັດວຽກຢ່າງຖືກຕ້ອງໃນເຄືອຂ່າຍທີ່ມີພະຍຸອອກອາກາດ
ການປົກປ້ອງ.

ຕົວຢ່າງ

· ການ​ນໍາ​ໃຊ້ ffmpeg ເພື່ອຖ່າຍທອດຜ່ານ UDP ໄປຫາຈຸດສິ້ນສຸດທາງໄກ:

ffmpeg -i -f udp:// :

· ການ​ນໍາ​ໃຊ້ ffmpeg ເພື່ອຖ່າຍທອດໃນຮູບແບບ mpegts ຜ່ານ UDP ໂດຍໃຊ້ແພັກເກັດ UDP ຂະໜາດ 188, ໂດຍໃຊ້ a
ບັຟເຟີການປ້ອນຂໍ້ມູນຂະຫນາດໃຫຍ່:

ffmpeg -i -f mpegts udp:// : ?pkt_size=188&buffer_size=65535

· ການ​ນໍາ​ໃຊ້ ffmpeg ເພື່ອຮັບຫຼາຍກວ່າ UDP ຈາກຈຸດສິ້ນສຸດທາງໄກ:

ffmpeg -i udp://[ ]: ...

Unix
Unix ເຕົ້າຮັບທ້ອງຖິ່ນ

syntax ທີ່ຕ້ອງການສໍາລັບ Unix socket URL ແມ່ນ:

unix://

ພາລາມິເຕີຕໍ່ໄປນີ້ສາມາດຖືກຕັ້ງຜ່ານຕົວເລືອກແຖວຄໍາສັ່ງ (ຫຼືໃນລະຫັດຜ່ານ "AVOption"s):

ຫມົດ​ເວ​ລາ
ໝົດເວລາໃນ ms.

ຟັງ
ສ້າງຊັອກເກັດ Unix ໃນໂຫມດຟັງ.

ອຸປະກອນ OPTIONS


ຫ້ອງສະຫມຸດ libavdevice ສະຫນອງການໂຕ້ຕອບດຽວກັນກັບ libavformat. ຄື, ການປ້ອນຂໍ້ມູນ
ອຸປະກອນຖືກພິຈາລະນາຄືກັບ demuxer, ແລະອຸປະກອນຜົນຜະລິດເຊັ່ນ muxer, ແລະການໂຕ້ຕອບ
ແລະຕົວເລືອກອຸປະກອນທົ່ວໄປແມ່ນຄືກັນໂດຍ libavformat (ເບິ່ງ ffmpeg-formats
ຄູ່ມື).

ນອກ​ຈາກ​ນັ້ນ​ອຸ​ປະ​ກອນ​ປ້ອນ​ຂໍ້​ມູນ​ຫຼື​ຜົນ​ຜະ​ລິດ​ແຕ່​ລະ​ຄົນ​ອາດ​ຈະ​ສະ​ຫນັບ​ສະ​ຫນູນ​ອັນ​ທີ່​ເອີ້ນ​ວ່າ​ທາງ​ເລືອກ​ສ່ວນ​ບຸກ​ຄົນ​, ເຊິ່ງ​ແມ່ນ​
ສະເພາະສໍາລັບອົງປະກອບນັ້ນ.

ທາງເລືອກອາດຈະຖືກກໍານົດໂດຍການລະບຸ -ທາງເລືອກ ມູນຄ່າ ໃນເຄື່ອງມື FFmpeg, ຫຼືໂດຍການຕັ້ງ
ຄ່າຢ່າງຊັດເຈນໃນອຸປະກອນ "AVFormatContext" ທາງເລືອກຫຼືການນໍາໃຊ້ libavutil/opt.h API
ສໍາລັບການນໍາໃຊ້ໂຄງການ.

ປັດໄຈນໍາເຂົ້າ ອຸປະກອນຕ່າງໆ


ອຸ​ປະ​ກອນ​ປ້ອນ​ຂໍ້​ມູນ​ແມ່ນ​ການ​ຕັ້ງ​ຄ່າ​ອົງ​ປະ​ກອບ​ໃນ FFmpeg ທີ່​ເຮັດ​ໃຫ້​ການ​ເຂົ້າ​ເຖິງ​ຂໍ້​ມູນ​ທີ່​ມາ​
ຈາກອຸປະກອນມັນຕິມີເດຍທີ່ຕິດກັບລະບົບຂອງທ່ານ.

ໃນເວລາທີ່ທ່ານ configure FFmpeg build ຂອງທ່ານ, ທັງຫມົດອຸປະກອນ input ສະຫນັບສະຫນູນແມ່ນເປີດໂດຍ
ຄ່າເລີ່ມຕົ້ນ. ທ່ານ​ສາ​ມາດ​ລາຍ​ຊື່​ທັງ​ຫມົດ​ທີ່​ມີ​ຢູ່​ໂດຍ​ການ​ນໍາ​ໃຊ້​ທາງ​ເລືອກ​ການ​ຕັ້ງ​ຄ່າ "--list-indevs​"​.

ທ່ານ​ສາ​ມາດ​ປິດ​ການ​ທໍາ​ງານ​ອຸ​ປະ​ກອນ​ການ​ປ້ອນ​ຂໍ້​ມູນ​ທັງ​ຫມົດ​ໂດຍ​ນໍາ​ໃຊ້​ທາງ​ເລືອກ​ການ​ຕັ້ງ​ຄ່າ "--disable-indevs​"​, ແລະ
ເລືອກເປີດອຸປະກອນປ້ອນຂໍ້ມູນໂດຍໃຊ້ຕົວເລືອກ "--enable-indev=INDEV", ຫຼືເຈົ້າສາມາດ
ປິດການໃຊ້ງານອຸປະກອນປ້ອນຂໍ້ມູນໃດໜຶ່ງໂດຍໃຊ້ຕົວເລືອກ "--disable-indev=INDEV".

ຕົວເລືອກ "-devices" ຂອງເຄື່ອງມື ff* ຈະສະແດງລາຍການອຸປະກອນປ້ອນຂໍ້ມູນທີ່ຮອງຮັບ.

ລາຍລະອຽດຂອງອຸປະກອນປ້ອນຂໍ້ມູນທີ່ມີຢູ່ໃນປັດຈຸບັນດັ່ງຕໍ່ໄປນີ້.

ອັນຊາ
ALSA (Advanced Linux Sound Architecture) ອຸປະກອນປ້ອນຂໍ້ມູນ.

ເພື່ອເປີດໃຊ້ອຸປະກອນປ້ອນຂໍ້ມູນນີ້ໃນລະຫວ່າງການຕັ້ງຄ່າທ່ານຕ້ອງການ libasound ຕິດຕັ້ງຢູ່ໃນຂອງທ່ານ
ລະບົບ.

ອຸປະກອນນີ້ອະນຸຍາດໃຫ້ຖ່າຍຮູບຈາກອຸປະກອນ ALSA. ຊື່ຂອງອຸປະກອນທີ່ຈະຈັບຕ້ອງ
ເປັນຕົວລະບຸບັດ ALSA.

ຕົວລະບຸ ALSA ມີ syntax:

hw: [, [, ]]

ບ່ອນທີ່ DEV ແລະ SUBDEV ອົງປະກອບແມ່ນທາງເລືອກ.

ການໂຕ້ຖຽງສາມ (ຕາມລໍາດັບ: CARD,DEV,SUBDEV) ລະບຸໝາຍເລກບັດ ຫຼືຕົວລະບຸ, ອຸປະກອນ
ຈໍາ​ນວນ​ແລະ​ຈໍາ​ນວນ​ອຸ​ປະ​ກອນ​ຍ່ອຍ (-1 ຫມາຍ​ຄວາມ​ວ່າ​ໃດໆ​)​.

ເພື່ອເບິ່ງລາຍຊື່ບັດທີ່ຖືກຮັບຮູ້ໂດຍລະບົບຂອງທ່ານ, ໃຫ້ກວດເບິ່ງໄຟລ໌
/ proc / asound / ບັດ ແລະ /proc/asound/ອຸປະກອນ.

ສໍາລັບຕົວຢ່າງ, ຈັບກັບ ffmpeg ຈາກອຸປະກອນ ALSA ທີ່ມີບັດ id 0, ທ່ານສາມາດດໍາເນີນການໄດ້
ຄໍາສັ່ງ:

ffmpeg -f alsa -i hw:0 alsaout.wav

ສໍາລັບຂໍ້ມູນເພີ່ມເຕີມເບິ່ງ:http://www.alsa-project.org/alsa-doc/alsa-lib/pcm.html>

ທາງເລືອກໃນການ

ອັດຕາຕົວຢ່າງ
ກໍານົດອັດຕາຕົວຢ່າງເປັນ Hz. ຄ່າເລີ່ມຕົ້ນແມ່ນ 48000.

ຊ່ອງທາງ
ກໍານົດຈໍານວນຊ່ອງ. ຄ່າເລີ່ມຕົ້ນແມ່ນ 2.

ພື້ນຖານ
ອຸປະກອນປ້ອນຂໍ້ມູນ AVFoundation.

AVFoundation ແມ່ນໂຄງຮ່າງການແນະນຳໃນປັດຈຸບັນໂດຍ Apple ສຳລັບການຖ່າຍທອດໃນ OSX >=
10.7 ເຊັ່ນດຽວກັນກັບໃນ iOS. ກອບ QTKit ທີ່ເກົ່າກວ່າໄດ້ຖືກໝາຍວ່າຖືກຍົກເລີກຕັ້ງແຕ່ OSX
ສະບັບ 10.7.

ຊື່ໄຟລ໌ທີ່ປ້ອນຈະຕ້ອງຖືກໃຫ້ຢູ່ໃນ syntax ຕໍ່ໄປນີ້:

-i "[[VIDEO]:[AUDIO]]"

ລາຍການທໍາອິດເລືອກການປ້ອນຂໍ້ມູນວິດີໂອ ໃນຂະນະທີ່ອັນສຸດທ້າຍເລືອກການປ້ອນຂໍ້ມູນສຽງ. ໄດ້
ການຖ່າຍທອດຕ້ອງຖືກລະບຸໂດຍຊື່ອຸປະກອນ ຫຼືດັດຊະນີອຸປະກອນຕາມທີ່ສະແດງໂດຍອຸປະກອນ
ບັນຊີລາຍຊື່. ອີກທາງເລືອກ, ອຸປະກອນປ້ອນຂໍ້ມູນວິດີໂອ ແລະ/ຫຼືສຽງສາມາດຖືກເລືອກໂດຍດັດສະນີໂດຍໃຊ້

B<-video_device_index E ດັດຊະນີ >

ແລະ / ຫຼື

B<-audio_device_index E ດັດຊະນີ >

, overriding ຊື່ອຸປະກອນຫຼືດັດຊະນີທີ່ໃຫ້ຢູ່ໃນຊື່ໄຟລ໌ປ້ອນຂໍ້ມູນ.

ອຸປະກອນທີ່ມີຢູ່ທັງໝົດສາມາດຖືກນັບໄດ້ໂດຍການໃຊ້ -list_devices ທີ່ແທ້ຈິງ, ລາຍຊື່ອຸປະກອນທັງຫມົດ
ຊື່ແລະຕົວຊີ້ວັດທີ່ສອດຄ້ອງກັນ.

ມີສອງນາມແຝງຊື່ອຸປະກອນ:

"ຄ່າເລີ່ມຕົ້ນ"
ເລືອກອຸປະກອນເລີ່ມຕົ້ນຂອງ AVFoundation ຂອງປະເພດທີ່ສອດຄ້ອງກັນ.

"ບໍ່ມີ"
ຢ່າບັນທຶກປະເພດສື່ທີ່ສອດຄ້ອງກັນ. ອັນນີ້ເທົ່າກັບການລະບຸຊ່ອງຫວ່າງ
ຊື່ອຸປະກອນ ຫຼືດັດຊະນີ.

ທາງເລືອກໃນການ

AVFoundation ສະຫນັບສະຫນູນທາງເລືອກຕໍ່ໄປນີ້:

-list_devices
ຖ້າຕັ້ງເປັນຖືກ, ບັນຊີລາຍຊື່ຂອງອຸປະກອນປ້ອນຂໍ້ມູນທີ່ມີຢູ່ທັງໝົດຈະຖືກມອບໃຫ້ສະແດງອຸປະກອນທັງໝົດ
ຊື່ແລະຕົວຊີ້ວັດ.

-video_device_index
ລະບຸອຸປະກອນວິດີໂອໂດຍດັດຊະນີຂອງມັນ. ລົບລ້າງອັນໃດນຶ່ງທີ່ໃຫ້ໄວ້ໃນຊື່ໄຟລ໌ທີ່ປ້ອນເຂົ້າ.

-audio_device_index
ລະບຸອຸປະກອນສຽງໂດຍດັດຊະນີຂອງມັນ. ລົບລ້າງອັນໃດນຶ່ງທີ່ໃຫ້ໄວ້ໃນຊື່ໄຟລ໌ທີ່ປ້ອນເຂົ້າ.

-pixel_format
ຂໍໃຫ້ອຸປະກອນວິດີໂອໃຊ້ຮູບແບບ pixels ລວງສະເພາະ. ຖ້າຮູບແບບທີ່ລະບຸແມ່ນ
ບໍ່ຮອງຮັບ, ບັນຊີລາຍຊື່ຂອງຮູບແບບທີ່ມີຢູ່ແມ່ນໃຫ້ ແລະອັນທໍາອິດໃນບັນຊີລາຍຊື່ນີ້ແມ່ນ
ໃຊ້ແທນ. ຮູບແບບ pixels ລວງທີ່ມີຢູ່ແມ່ນ: "monob, rgb555be, rgb555le, rgb565be,
rgb565le, rgb24, bgr24, 0rgb, bgr0, 0bgr, rgb0,
bgr48be, uyvy422, yuva444p, yuva444p16le, yuv444p, yuv422p16, yuv422p10, yuv444p10,
yuv420p, nv12, yuyv422, ສີເທົາ"

- ກອບ
ກໍານົດອັດຕາກອບການຈັບ. ຄ່າເລີ່ມຕົ້ນແມ່ນ "ntsc", ທີ່ສອດຄ້ອງກັບອັດຕາເຟຣມຂອງ
"30000/1001".

-video_size
ກໍານົດຂະຫນາດກອບວິດີໂອ.

-capture_cursor
ຈັບຕົວຊີ້ເມົ້າ. ຄ່າເລີ່ມຕົ້ນແມ່ນ 0.

-capture_mouse_clicks
ຈັບ​ການ​ຄລິກ​ຫນູ​ຫນ້າ​ຈໍ​. ຄ່າເລີ່ມຕົ້ນແມ່ນ 0.

ຕົວຢ່າງ

· ພິມລາຍການຂອງອຸປະກອນທີ່ຮອງຮັບ AVFoundation ແລະອອກ:

$ffmpeg -f avfoundation -list_devices true -i ""

·ບັນທຶກວິດີໂອຈາກອຸປະກອນວິດີໂອ 0 ແລະສຽງຈາກອຸປະກອນສຽງ 0 ເຂົ້າໄປໃນ out.avi:

$ ffmpeg -f avfoundation -i "0: 0" out.avi

·ບັນທຶກວິດີໂອຈາກອຸປະກອນວິດີໂອ 2 ແລະສຽງຈາກອຸປະກອນສຽງ 1 ເຂົ້າໄປໃນ out.avi:

$ffmpeg -f avfoundation -video_device_index 2 -i ":1" out.avi

·ບັນທຶກວິດີໂອຈາກອຸປະກອນວິດີໂອເລີ່ມຕົ້ນຂອງລະບົບໂດຍໃຊ້ຮູບແບບ pixels ລວງ bgr0 ແລະເຮັດ
ບໍ່ບັນທຶກສຽງໃດໆເຂົ້າໄປໃນ out.avi:

$ ffmpeg -f avfoundation -pixel_format bgr0 -i "default:none" out.avi

bktr
ອຸປະກອນປ້ອນວິດີໂອ BSD.

ທາງເລືອກໃນການ

framerate
ກໍານົດອັດຕາເຟຣມ.

video_size
ກໍານົດຂະຫນາດກອບວິດີໂອ. ຄ່າເລີ່ມຕົ້ນແມ່ນ "vga".

ມາດຕະຖານ
ຄ່າທີ່ມີຢູ່ແມ່ນ:

pal
ntsc
ແຫ້ງ
paln
ປາມ
ntscj

decklink
ອຸປະກອນປ້ອນຂໍ້ມູນ decklink ໃຫ້ຄວາມສາມາດໃນການຈັບພາບສໍາລັບອຸປະກອນ Blackmagic DeckLink.

ເພື່ອເປີດໃຊ້ອຸປະກອນປ້ອນຂໍ້ມູນນີ້, ທ່ານຕ້ອງການ Blackmagic DeckLink SDK ແລະທ່ານຕ້ອງການ
ຕັ້ງຄ່າດ້ວຍ "--extra-cflags" ແລະ "--extra-ldflags" ທີ່ເຫມາະສົມ. ໃນ Windows, ທ່ານ
ຈໍາເປັນຕ້ອງດໍາເນີນການໄຟລ໌ IDL ຜ່ານ widl.

DeckLink ແມ່ນເລືອກຫຼາຍກ່ຽວກັບຮູບແບບທີ່ມັນສະຫນັບສະຫນູນ. ຮູບແບບ Pixel ແມ່ນ uyvy422 ຫຼື v210,
framerate ແລະຂະຫນາດວິດີໂອຕ້ອງໄດ້ຮັບການກໍານົດສໍາລັບອຸປະກອນຂອງທ່ານກັບ -list_formats 1. ສຽງ
ອັດຕາຕົວຢ່າງແມ່ນສະເຫມີ 48 kHz ແລະຈໍານວນຊ່ອງສາມາດເປັນ 2, 8 ຫຼື 16.

ທາງເລືອກໃນການ

list_devices
ຖ້າຕັ້ງ ທີ່ແທ້ຈິງ, ພິມບັນຊີລາຍຊື່ຂອງອຸປະກອນແລະອອກ. ຄ່າເລີ່ມຕົ້ນເປັນ ທີ່ບໍ່ຖືກຕ້ອງ.

list_formats
ຖ້າຕັ້ງ ທີ່ແທ້ຈິງ, ພິມບັນຊີລາຍຊື່ຂອງຮູບແບບທີ່ຮອງຮັບແລະອອກ. ຄ່າເລີ່ມຕົ້ນເປັນ ທີ່ບໍ່ຖືກຕ້ອງ.

bm_v210
ຖ້າຕັ້ງ 1, ວິດີໂອຖືກຈັບໃນ 10 bit v210 ແທນ uyvy422. ບໍ່ແມ່ນ Blackmagic ທັງໝົດ
ອຸ​ປະ​ກອນ​ສະ​ຫນັບ​ສະ​ຫນູນ​ທາງ​ເລືອກ​ນີ້​.

ຕົວຢ່າງ

· ລາຍການອຸປະກອນປ້ອນຂໍ້ມູນ:

ffmpeg -f decklink -list_devices 1 -i dummy

· ລາຍ​ຊື່​ຮູບ​ແບບ​ສະ​ຫນັບ​ສະ​ຫນູນ​:

ffmpeg -f decklink -list_formats 1 -i 'Intensity Pro'

· ບັນທຶກວິດີໂອທີ່ 1080i50 (ຮູບແບບ 11):

ffmpeg -f decklink -i 'Intensity Pro@11' -acodec copy -vcodec copy output.avi

· ບັນທຶກວິດີໂອທີ່ 1080i50 10 bit:

ffmpeg -bm_v210 1 -f decklink -i 'UltraStudio Mini Recorder@11' -acodec copy -vcodec copy output.avi

dshow
ອຸປະກອນປ້ອນ Windows DirectShow.

ການຮອງຮັບ DirectShow ຖືກເປີດໃຊ້ເມື່ອ FFmpeg ຖືກສ້າງຂຶ້ນດ້ວຍໂຄງການ mingw-w64. ໃນປັດຈຸບັນ
ຮອງຮັບອຸປະກອນສຽງ ແລະວິດີໂອເທົ່ານັ້ນ.

ອຸປະກອນຫຼາຍອັນອາດຈະຖືກເປີດເປັນວັດສະດຸປ້ອນແຍກຕ່າງຫາກ, ແຕ່ພວກມັນອາດຈະຖືກເປີດຢູ່ໃນອັນດຽວກັນ
ວັດສະດຸປ້ອນ, ເຊິ່ງຄວນປັບປຸງ synchronism ລະຫວ່າງພວກມັນ.

ຊື່ການປ້ອນຂໍ້ມູນຄວນຈະຢູ່ໃນຮູບແບບ:

= [: = ]

ບ່ອນທີ່ TYPE ສາມາດເປັນທັງ ສຽງ or ວິດີໂອ, ແລະ NAME ແມ່ນຊື່ຂອງອຸປະກອນ ຫຼືທາງເລືອກ
ຊື່..

ທາງເລືອກໃນການ

ຖ້າບໍ່ມີທາງເລືອກໃດຖືກລະບຸ, ຄ່າເລີ່ມຕົ້ນຂອງອຸປະກອນຖືກໃຊ້. ຖ້າອຸປະກອນບໍ່
ສະຫນັບສະຫນູນທາງເລືອກທີ່ຮ້ອງຂໍ, ມັນຈະລົ້ມເຫລວທີ່ຈະເປີດ.

video_size
ກໍານົດຂະຫນາດວິດີໂອໃນວິດີໂອທີ່ຖືກຈັບ.

framerate
ກໍານົດອັດຕາເຟຣມໃນວິດີໂອທີ່ບັນທຶກໄວ້.

ອັດຕາຕົວຢ່າງ
ກໍານົດອັດຕາຕົວຢ່າງ (ເປັນ Hz) ຂອງສຽງທີ່ຈັບໄດ້.

sample_size
ກໍານົດຂະຫນາດຕົວຢ່າງ (ເປັນບິດ) ຂອງສຽງທີ່ບັນທຶກໄວ້.

ຊ່ອງທາງ
ກໍານົດຈໍານວນຊ່ອງໃນສຽງທີ່ຖືກຈັບ.

list_devices
ຖ້າຕັ້ງ ທີ່ແທ້ຈິງ, ພິມບັນຊີລາຍຊື່ຂອງອຸປະກອນແລະອອກ.

list_options
ຖ້າຕັ້ງ ທີ່ແທ້ຈິງ, ພິມລາຍການທາງເລືອກຂອງອຸປະກອນທີ່ເລືອກແລ້ວອອກ.

video_device_number
ກຳນົດໝາຍເລກອຸປະກອນວິດີໂອສຳລັບອຸປະກອນທີ່ມີຊື່ດຽວກັນ (ເລີ່ມຕົ້ນທີ່ 0, ຄ່າເລີ່ມຕົ້ນເປັນ 0).

audio_device_number
ຕັ້ງໝາຍເລກອຸປະກອນສຽງສຳລັບອຸປະກອນທີ່ມີຊື່ດຽວກັນ (ເລີ່ມຕົ້ນທີ່ 0, ຄ່າເລີ່ມຕົ້ນເປັນ 0).

pixel_format
ເລືອກຮູບແບບ pixel ທີ່ຈະໃຊ້ໂດຍ DirectShow. ນີ້ອາດຈະຖືກຕັ້ງພຽງແຕ່ເມື່ອວິດີໂອ
codec ບໍ່ໄດ້ຕັ້ງຫຼືຕັ້ງເປັນ rawvideo.

audio_buffer_size
ກໍານົດຂະຫນາດບັຟເຟີອຸປະກອນສຽງເປັນ milliseconds (ຊຶ່ງສາມາດສົ່ງຜົນກະທົບໂດຍກົງໃນການ latency,
ຂຶ້ນກັບອຸປະກອນ). ເປັນຄ່າເລີ່ມຕົ້ນຂອງການໃຊ້ຂະໜາດບັຟເຟີມາດຕະຖານຂອງອຸປະກອນສຽງ
(ໂດຍປົກກະຕິບາງສ່ວນຂອງ 500ms). ການ​ຕັ້ງ​ຄ່າ​ນີ້​ຕ່ຳ​ເກີນ​ໄປ​ສາ​ມາດ​ຫຼຸດ​ຜ່ອນ​ໄດ້
ການປະຕິບັດ. ເບິ່ງນຳ
<http://msdn.microsoft.com/en-us/library/windows/desktop/dd377582(v=vs.85).aspx>

video_pin_name
ເລືອກ PIN ບັນທຶກວິດີໂອເພື່ອໃຊ້ຊື່ ຫຼືຊື່ທາງເລືອກ.

audio_pin_name
ເລືອກປັກໝຸດບັນທຶກສຽງເພື່ອໃຊ້ຊື່ ຫຼືຊື່ສຳຮອງ.

crossbar_video_input_pin_number
ເລືອກໝາຍເລກ PIN ປ້ອນວິດີໂອສຳລັບອຸປະກອນຂ້າມແຖບ. ນີ້ຈະຖືກສົ່ງໄປຫາແຖບຂ້າມ
ຂາອອກຕົວຖອດລະຫັດວິດີໂອຂອງອຸປະກອນ. ໃຫ້ສັງເກດວ່າການປ່ຽນແປງມູນຄ່ານີ້ສາມາດສົ່ງຜົນກະທົບຕໍ່ອະນາຄົດ
invocations (ຕັ້ງຄ່າເລີ່ມຕົ້ນໃຫມ່) ຈົນກ່ວາ reboot ລະບົບເກີດຂຶ້ນ.

crossbar_audio_input_pin_number
ເລືອກໝາຍເລກ PIN ປ້ອນສຽງສຳລັບອຸປະກອນຂ້າມແຖບ. ນີ້ຈະຖືກສົ່ງໄປຫາແຖບຂ້າມ
ຂາອອກຕົວຖອດລະຫັດສຽງຂອງອຸປະກອນ. ໃຫ້ສັງເກດວ່າການປ່ຽນແປງມູນຄ່ານີ້ສາມາດສົ່ງຜົນກະທົບຕໍ່ອະນາຄົດ
invocations (ຕັ້ງຄ່າເລີ່ມຕົ້ນໃຫມ່) ຈົນກ່ວາ reboot ລະບົບເກີດຂຶ້ນ.

show_video_device_dialog
ຖ້າຕັ້ງ ທີ່ແທ້ຈິງ, ກ່ອນທີ່ຈະເລີ່ມການຈັບພາບ, ປາກົດກ່ອງສະແດງຜົນໃຫ້ຜູ້ໃຊ້ສຸດທ້າຍ,
ອະນຸຍາດໃຫ້ພວກເຂົາປ່ຽນຄຸນສົມບັດການກັ່ນຕອງວິດີໂອ ແລະການຕັ້ງຄ່າດ້ວຍຕົນເອງ. ຫມາຍ​ເຫດ​
ທີ່ສໍາລັບອຸປະກອນ crossbar, ການປັບຄ່າໃນກ່ອງໂຕ້ຕອບນີ້ອາດຈະຈໍາເປັນໃນບາງຄັ້ງ
ສະຫຼັບລະຫວ່າງ PAL (25 fps) ແລະ NTSC (29.97) ອັດຕາກອບການປ້ອນຂໍ້ມູນ, ຂະຫນາດ, interlacing,
ແລະ​ອື່ນໆ. ການ​ປ່ຽນ​ແປງ​ຄຸນ​ຄ່າ​ເຫຼົ່າ​ນີ້​ສາ​ມາດ​ເຮັດ​ໃຫ້​ອັດ​ຕາ​ການ​ສະ​ແກນ / ເຟຣມ​ທີ່​ແຕກ​ຕ່າງ​ກັນ​ແລະ​ຫຼີກ​ເວັ້ນ​ການ
ແຖບສີຂຽວຢູ່ທາງລຸ່ມ, ເສັ້ນສະແກນ flickering, ແລະອື່ນໆ. ໃຫ້ສັງເກດວ່າກັບບາງອຸປະກອນ,
ການປ່ຽນແປງຄຸນສົມບັດເຫຼົ່ານີ້ຍັງສາມາດສົ່ງຜົນກະທົບຕໍ່ການຮຽກຮ້ອງໃນອະນາຄົດ (ກໍານົດຄ່າເລີ່ມຕົ້ນໃຫມ່) ຈົນກ່ວາ
reboot ລະບົບເກີດຂຶ້ນ.

show_audio_device_dialog
ຖ້າຕັ້ງ ທີ່ແທ້ຈິງ, ກ່ອນທີ່ຈະເລີ່ມການຈັບພາບ, ປາກົດກ່ອງສະແດງຜົນໃຫ້ຜູ້ໃຊ້ສຸດທ້າຍ,
ອະນຸຍາດໃຫ້ພວກເຂົາປ່ຽນຄຸນສົມບັດການກັ່ນຕອງສຽງ ແລະການຕັ້ງຄ່າດ້ວຍຕົນເອງ.

show_video_crossbar_connection_dialog
ຖ້າຕັ້ງ ທີ່ແທ້ຈິງ, ກ່ອນທີ່ຈະເລີ່ມການຈັບພາບ, ປາກົດກ່ອງສະແດງຜົນໃຫ້ຜູ້ໃຊ້ສຸດທ້າຍ,
ອະນຸຍາດໃຫ້ພວກເຂົາແກ້ໄຂເສັ້ນທາງ pin crossbar ດ້ວຍຕົນເອງ, ເມື່ອມັນເປີດອຸປະກອນວິດີໂອ.

show_audio_crossbar_connection_dialog
ຖ້າຕັ້ງ ທີ່ແທ້ຈິງ, ກ່ອນທີ່ຈະເລີ່ມການຈັບພາບ, ປາກົດກ່ອງສະແດງຜົນໃຫ້ຜູ້ໃຊ້ສຸດທ້າຍ,
ອະນຸຍາດໃຫ້ພວກເຂົາແກ້ໄຂເສັ້ນທາງ pin crossbar ດ້ວຍຕົນເອງ, ເມື່ອມັນເປີດອຸປະກອນສຽງ.

show_analog_tv_tuner_dialog
ຖ້າຕັ້ງ ທີ່ແທ້ຈິງ, ກ່ອນທີ່ຈະເລີ່ມການຈັບພາບ, ປາກົດກ່ອງສະແດງຜົນໃຫ້ຜູ້ໃຊ້ສຸດທ້າຍ,
ອະນຸຍາດໃຫ້ເຂົາເຈົ້າແກ້ໄຂຊ່ອງໂທລະພາບ ແລະຄວາມຖີ່ດ້ວຍຕົນເອງ.

show_analog_tv_tuner_audio_dialog
ຖ້າຕັ້ງ ທີ່ແທ້ຈິງ, ກ່ອນທີ່ຈະເລີ່ມການຈັບພາບ, ປາກົດກ່ອງສະແດງຜົນໃຫ້ຜູ້ໃຊ້ສຸດທ້າຍ,
ອະນຸຍາດໃຫ້ເຂົາເຈົ້າແກ້ໄຂສຽງໂທລະພາບດ້ວຍຕົນເອງ (ເຊັ່ນ: mono vs. stereo, ພາສາ A, B ຫຼື C).

audio_device_load
ໂຫຼດອຸປະກອນການກັ່ນຕອງການຈັບສຽງຈາກໄຟລ໌ແທນທີ່ຈະຊອກຫາມັນດ້ວຍຊື່. ມັນອາດຈະ
ໂຫຼດຕົວກໍານົດການເພີ່ມເຕີມເຊັ່ນດຽວກັນ, ຖ້າການກັ່ນຕອງສະຫນັບສະຫນູນ serialization ຂອງມັນ
ຄຸນ​ສົມ​ບັດ​ເພື່ອ​. ການ​ນໍາ​ໃຊ້​ນີ້​ແຫຼ່ງ​ການ​ຖ່າຍ​ຮູບ​ສຽງ​ຈໍາ​ເປັນ​ຕ້ອງ​ໄດ້​ຮັບ​ການ​ລະ​ບຸ​ໄວ້​, ແຕ່​ວ່າ​ມັນ​ສາ​ມາດ​ເປັນ​
ສິ່ງໃດແດ່ແມ່ນແຕ່ອັນນຶ່ງປອມ.

audio_device_save
ບັນ​ທຶກ​ອຸ​ປະ​ກອນ​ການ​ກັ່ນ​ຕອງ​ການ​ຈັບ​ພາບ​ສຽງ​ທີ່​ໃຊ້​ໃນ​ປັດ​ຈຸ​ບັນ​ແລະ​ຕົວ​ກໍາ​ນົດ​ການ​ຂອງ​ຕົນ (ຖ້າ​ຫາກ​ວ່າ​ການ​ກັ່ນ​ຕອງ​
ສະ​ຫນັບ​ສະ​ຫນູນ​ມັນ​) ກັບ​ໄຟລ​໌​. ຖ້າມີໄຟລ໌ທີ່ມີຊື່ດຽວກັນ, ມັນຈະຖືກຂຽນທັບ.

video_device_load
ໂຫຼດອຸປະກອນການກັ່ນຕອງການຈັບພາບວິດີໂອຈາກໄຟລ໌ແທນທີ່ຈະຊອກຫາມັນດ້ວຍຊື່. ມັນອາດຈະ
ໂຫຼດຕົວກໍານົດການເພີ່ມເຕີມເຊັ່ນດຽວກັນ, ຖ້າການກັ່ນຕອງສະຫນັບສະຫນູນ serialization ຂອງມັນ
ຄຸນ​ສົມ​ບັດ​ເພື່ອ​. ການ​ນໍາ​ໃຊ້​ນີ້​ເປັນ​ແຫຼ່ງ​ຖ່າຍ​ຮູບ​ວິ​ດີ​ໂອ​ຈໍາ​ເປັນ​ຕ້ອງ​ໄດ້​ລະ​ບຸ​ໄວ້​, ແຕ່​ວ່າ​ມັນ​ສາ​ມາດ​ເປັນ​
ສິ່ງໃດແດ່ແມ່ນແຕ່ອັນນຶ່ງປອມ.

video_device_save
ບັນ​ທຶກ​ອຸ​ປະ​ກອນ​ການ​ກັ່ນ​ຕອງ​ການ​ຖ່າຍ​ຮູບ​ວິ​ດີ​ໂອ​ທີ່​ໃຊ້​ໃນ​ປັດ​ຈຸ​ບັນ​ແລະ​ຕົວ​ກໍາ​ນົດ​ການ​ຂອງ​ຕົນ (ຖ້າ​ຫາກ​ວ່າ​ການ​ກັ່ນ​ຕອງ​
ສະ​ຫນັບ​ສະ​ຫນູນ​ມັນ​) ກັບ​ໄຟລ​໌​. ຖ້າມີໄຟລ໌ທີ່ມີຊື່ດຽວກັນ, ມັນຈະຖືກຂຽນທັບ.

ຕົວຢ່າງ

· ພິມລາຍການຂອງອຸປະກອນທີ່ຮອງຮັບ DirectShow ແລະອອກ:

$ ffmpeg -list_devices true -f dshow -i dummy

·ເປີດອຸປະກອນວິດີໂອ ກ້ອງຖ່າຍຮູບ:

$ ffmpeg -f dshow -i video="ກ້ອງ"

·ເປີດອຸປະກອນວິດີໂອທີສອງທີ່ມີຊື່ ກ້ອງຖ່າຍຮູບ:

$ ffmpeg -f dshow -video_device_number 1 -i video="Camera"

·ເປີດອຸປະກອນວິດີໂອ ກ້ອງຖ່າຍຮູບ ແລະອຸປະກອນສຽງ ໄມໂຄໂຟນ:

$ ffmpeg -f dshow -i video="Camera":audio="ໄມໂຄຣໂຟນ"

· ພິມ​ບັນ​ຊີ​ລາຍ​ຊື່​ຂອງ​ທາງ​ເລືອກ​ທີ່​ສະ​ຫນັບ​ສະ​ຫນູນ​ໃນ​ອຸ​ປະ​ກອນ​ທີ່​ເລືອກ​ແລະ​ອອກ​:

$ ffmpeg -list_options true -f dshow -i video="ກ້ອງ"

· ລະບຸຊື່ PIN ເພື່ອບັນທຶກຕາມຊື່ ຫຼືຊື່ທາງເລືອກ, ລະບຸອຸປະກອນທາງເລືອກ
ຊື່ຂອງທ່ານ:

$ 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"

· ປັບ​ຕັ້ງ​ອຸ​ປະ​ກອນ crossbar​, ການ​ລະ​ບຸ pins crossbar​, ອະ​ນຸ​ຍາດ​ໃຫ້​ຜູ້​ໃຊ້​ເພື່ອ​ປັບ​ວິ​ດີ​ໂອ​
ບັນທຶກຄຸນສົມບັດໃນຕອນເລີ່ມຕົ້ນ:

$ 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 ການຈັບພາບແບບອະນາລັອກ"

dv1394
ອຸປະກອນປ້ອນ Linux DV 1394.

ທາງເລືອກໃນການ

framerate
ກໍານົດອັດຕາເຟຣມ. ຄ່າເລີ່ມຕົ້ນແມ່ນ 25.

ມາດຕະຖານ
ຄ່າທີ່ມີຢູ່ແມ່ນ:

pal
ntsc

ຄ່າເລີ່ມຕົ້ນແມ່ນ "ntsc".

fbdev
ອຸປະກອນປ້ອນ Linux framebuffer.

Linux framebuffer ເປັນຊັ້ນຂໍ້ມູນທີ່ບໍ່ມີຕົວຕົນຂອງຮາດແວທີ່ເປັນເອກະລາດເພື່ອສະແດງກາຟິກ
ຢູ່ໃນຈໍຄອມພິວເຕີ, ໂດຍປົກກະຕິຢູ່ໃນຄອນໂຊ. ມັນຖືກເຂົ້າເຖິງໂດຍຜ່ານອຸປະກອນໄຟລ໌
node, ປົກກະຕິແລ້ວ /dev/fb0.

ສໍາລັບລາຍລະອຽດເພີ່ມເຕີມອ່ານໄຟລ໌ Documentation/fb/framebuffer.txt ລວມຢູ່ໃນ
ຕົ້ນໄມ້ແຫຼ່ງ Linux.

ເບິ່ງນຳhttp://linux-fbdev.sourceforge.net/> , ແລະ fbset(1).

ເພື່ອບັນທຶກຈາກອຸປະກອນ framebuffer /dev/fb0 ກັບ ffmpeg:

ffmpeg -f fbdev -framerate 10 -i /dev/fb0 out.avi

ທ່ານສາມາດຖ່າຍຮູບຫນ້າຈໍດຽວດ້ວຍຄໍາສັ່ງ:

ffmpeg -f fbdev -framerate 1 -i /dev/fb0 -frames:v 1 screenshot.jpeg

ທາງເລືອກໃນການ

framerate
ກໍານົດອັດຕາເຟຣມ. ຄ່າເລີ່ມຕົ້ນແມ່ນ 25.

gdigrab
ອຸ​ປະ​ກອນ​ການ​ຈັບ​ພາບ​ຫນ້າ​ຈໍ​ທີ່ Win32 GDI​.

ອຸປະກອນນີ້ອະນຸຍາດໃຫ້ທ່ານສາມາດບັນທຶກພາກພື້ນຂອງຈໍສະແດງຜົນໃນ Windows.

ມີ​ສອງ​ທາງ​ເລືອກ​ສໍາ​ລັບ​ການ​ປ້ອນ​ຊື່​ໄຟລ​໌​:

desktop

or

ຫົວຂໍ້=

ຕົວເລືອກທໍາອິດຈະບັນທຶກ desktop ທັງຫມົດ, ຫຼືພື້ນທີ່ຄົງທີ່ຂອງ desktop. ໄດ້
ທາງ​ເລືອກ​ທີ​ສອງ​ແທນ​ທີ່​ຈະ​ເກັບ​ກໍາ​ເນື້ອ​ໃນ​ຂອງ​ປ່ອງ​ຢ້ຽມ​ດຽວ​, ໂດຍ​ບໍ່​ສົນ​ເລື່ອງ​ຂອງ​ມັນ​
ຕໍາ​ແຫນ່ງ​ໃນ​ຫນ້າ​ຈໍ​ໄດ້​.

ຕົວຢ່າງ, ເພື່ອ grab desktop ທັງຫມົດໂດຍໃຊ້ ffmpeg:

ffmpeg -f gdigrab -framerate 6 -i desktop out.mpg

ຈັບພື້ນທີ່ 640x480 ຢູ່ຕຳແໜ່ງ "10,20":

ffmpeg -f gdigrab -framerate 6 -offset_x 10 -offset_y 20 -video_size vga -i desktop out.mpg

ເອົາເນື້ອໃນຂອງປ່ອງຢ້ຽມທີ່ມີຊື່ວ່າ "ເຄື່ອງຄິດເລກ"

ffmpeg -f gdigrab -framerate 6 -i title=ເຄື່ອງຄິດໄລ່ອອກ.mpg

ທາງເລືອກໃນການ

draw_mouse
ລະບຸວ່າຈະແຕ້ມຕົວຊີ້ເມົ້າຫຼືບໍ່. ໃຊ້ຄ່າ 0 ເພື່ອບໍ່ແຕ້ມຕົວຊີ້.
ຄ່າເລີ່ມຕົ້ນແມ່ນ 1.

framerate
ກໍານົດອັດຕາກອບການຈັບ. ຄ່າເລີ່ມຕົ້ນແມ່ນ "ntsc", ທີ່ສອດຄ້ອງກັບອັດຕາເຟຣມຂອງ
"30000/1001".

show_region
ສະແດງພາກພື້ນທີ່ຈັບຢູ່ໜ້າຈໍ.

If show_region ຖືກລະບຸດ້ວຍ 1, ຫຼັງຈາກນັ້ນ, ພາກພື້ນທີ່ຈັບໄດ້ຈະຖືກຊີ້ໃສ່
ຈໍ. ດ້ວຍຕົວເລືອກນີ້, ມັນງ່າຍທີ່ຈະຮູ້ວ່າສິ່ງທີ່ຖືກຈັບຖ້າມີພຽງແຕ່ສ່ວນຫນຶ່ງ
ຂອງຫນ້າຈໍໄດ້ຖືກ grabbed.

ໃຫ້ສັງເກດວ່າ show_region ແມ່ນບໍ່ເຂົ້າກັນກັບການຈັບເນື້ອໃນຂອງປ່ອງຢ້ຽມດຽວ.

ຍົກ​ຕົວ​ຢ່າງ:

ffmpeg -f gdigrab -show_region 1 -framerate 6 -video_size cif -offset_x 10 -offset_y 20 -i desktop out.mpg

video_size
ກໍານົດຂະຫນາດກອບວິດີໂອ. ຄ່າເລີ່ມຕົ້ນແມ່ນການຈັບພາບເຕັມຈໍ if desktop is
ເລືອກ, ຫຼືຂະຫນາດປ່ອງຢ້ຽມເຕັມຖ້າ title=window_title ຖືກຄັດເລືອກ.

offset_x
ໃນເວລາທີ່ການຈັບພາກພື້ນທີ່ມີ video_size, ກໍານົດໄລຍະຫ່າງຈາກຂອບຊ້າຍຂອງ
ຫນ້າຈໍຫຼື desktop.

ໃຫ້ສັງເກດວ່າການຄິດໄລ່ຊົດເຊີຍແມ່ນມາຈາກມຸມຊ້າຍເທິງຂອງຈໍສະແດງຜົນຕົ້ນຕໍ
Windows. ຖ້າເຈົ້າມີຈໍສະແດງຜົນຢູ່ທາງຊ້າຍຂອງຈໍພາບຫຼັກຂອງເຈົ້າ, ເຈົ້າ
ຈະຕ້ອງໃຊ້ທາງລົບ offset_x ຄ່າທີ່ຈະຍ້າຍພາກພື້ນໄປຫາຈໍພາບນັ້ນ.

offset_y
ໃນເວລາທີ່ການຈັບພາກພື້ນທີ່ມີ video_size, ກໍານົດໄລຍະຫ່າງຈາກຂອບເທິງຂອງ
ຫນ້າຈໍຫຼື desktop.

ໃຫ້ສັງເກດວ່າການຄິດໄລ່ຊົດເຊີຍແມ່ນມາຈາກມຸມຊ້າຍເທິງຂອງຈໍສະແດງຜົນຕົ້ນຕໍ
Windows. ຖ້າທ່ານມີຈໍພາບຢູ່ຂ້າງເທິງຈໍພາບຕົ້ນຕໍຂອງທ່ານ, ທ່ານຈະຕ້ອງ
ໃຊ້ທາງລົບ offset_y ຄ່າທີ່ຈະຍ້າຍພາກພື້ນໄປຫາຈໍພາບນັ້ນ.

iec61883
ອຸປະກອນປ້ອນ FireWire DV/HDV ໂດຍໃຊ້ libiec61883.

ເພື່ອເປີດໃຊ້ອຸປະກອນປ້ອນຂໍ້ມູນນີ້, ທ່ານຈໍາເປັນຕ້ອງມີ libiec61883, libraw1394 ແລະ libavc1394 ຕິດຕັ້ງໃສ່.
ລະ​ບົບ​ຂອງ​ທ່ານ​. ໃຊ້ຕົວເລືອກການຕັ້ງຄ່າ "--enable-libiec61883" ເພື່ອລວບລວມກັບອຸປະກອນ.
enabled

ອຸປະກອນຈັບພາບ iec61883 ຮອງຮັບການຈັບພາບຈາກອຸປະກອນວິດີໂອທີ່ເຊື່ອມຕໍ່ຜ່ານ IEEE1394.
(FireWire), ໂດຍໃຊ້ libiec61883 ແລະ Linux FireWire stack (juju). ນີ້ແມ່ນຄ່າເລີ່ມຕົ້ນ
ວິທີການປ້ອນຂໍ້ມູນ DV/HDV ໃນ Linux Kernel 2.6.37 ແລະຕໍ່ມາ, ເນື່ອງຈາກວ່າ FireWire stack ເກົ່າແມ່ນ
ລົບອອກ.

ລະບຸພອດ FireWire ທີ່ຈະໃຊ້ເປັນໄຟລ໌ປ້ອນຂໍ້ມູນ, ຫຼື "ອັດຕະໂນມັດ" ເພື່ອເລືອກພອດທໍາອິດ
ເຊື່ອມຕໍ່.

ທາງເລືອກໃນການ

dvtype
ລົບລ້າງການກວດຫາອັດຕະໂນມັດຂອງ DV/HDV. ອັນນີ້ຄວນໃຊ້ພຽງແຕ່ຖ້າການກວດຫາອັດຕະໂນມັດບໍ່ໄດ້
ເຮັດວຽກ, ຫຼືຖ້າຫາກວ່າການນໍາໃຊ້ອຸປະກອນປະເພດທີ່ແຕກຕ່າງກັນຄວນໄດ້ຮັບການຫ້າມ. ການປິ່ນປົວ DV
ອຸປະກອນເປັນ HDV (ຫຼືໃນທາງກັບກັນ) ຈະບໍ່ເຮັດວຽກແລະສົ່ງຜົນໃຫ້ພຶດຕິກໍາທີ່ບໍ່ໄດ້ກໍານົດ. ໄດ້
ຄ່າ ອັດຕະໂນມັດ, dv ແລະ hdv ສະຫນັບສະຫນູນ.

dvbuffer
ກໍານົດຂະຫນາດສູງສຸດຂອງ buffer ສໍາລັບຂໍ້ມູນຂາເຂົ້າ, ໃນກອບ. ສໍາລັບ DV, ນີ້ແມ່ນແນ່ນອນ
ຄ່າ. ສໍາລັບ HDV, ມັນບໍ່ແມ່ນກອບທີ່ແນ່ນອນ, ເພາະວ່າ HDV ບໍ່ມີຂະຫນາດກອບຄົງທີ່.

dvguid
ເລືອກອຸປະກອນຈັບພາບໂດຍການລະບຸວ່າມັນເປັນ GUID. ການຈັບພາບຈະຖືກປະຕິບັດເທົ່ານັ້ນ
ຈາກ​ອຸ​ປະ​ກອນ​ທີ່​ກໍາ​ນົດ​ໄວ້​ແລະ​ລົ້ມ​ເຫຼວ​ຖ້າ​ຫາກ​ວ່າ​ບໍ່​ມີ​ອຸ​ປະ​ກອນ​ທີ່​ມີ GUID ທີ່​ໃຫ້​ຖືກ​ພົບ​ເຫັນ​. ນີ້​ແມ່ນ
ເປັນປະໂຫຍດທີ່ຈະເລືອກເອົາການປ້ອນຂໍ້ມູນຖ້າຫາກວ່າອຸປະກອນຫຼາຍເຊື່ອມຕໍ່ໃນເວລາດຽວກັນ. ເບິ່ງ
ຢູ່ /sys/bus/firewire/devices ເພື່ອຊອກຫາ GUIDs.

ຕົວຢ່າງ

· ຈັບ ແລະສະແດງການປ້ອນຂໍ້ມູນຂອງອຸປະກອນ FireWire DV/HDV.

ffplay -f iec61883 -i ອັດຕະໂນມັດ

· ຈັບ​ແລະ​ບັນ​ທຶກ​ການ​ປ້ອນ​ຂໍ້​ມູນ​ຂອງ​ອຸ​ປະ​ກອນ FireWire DV/HDV​, ການ​ນໍາ​ໃຊ້ packet buffer ຂອງ 100000
packets ຖ້າແຫຼ່ງແມ່ນ HDV.

ffmpeg -f iec61883 -i auto -hdvbuffer 100000 out.mpg

jack
ອຸປະກອນປ້ອນຂໍ້ມູນ JACK.

ເພື່ອເປີດໃຊ້ອຸປະກອນປ້ອນຂໍ້ມູນນີ້ໃນລະຫວ່າງການຕັ້ງຄ່າທ່ານຕ້ອງການ libjack ຕິດຕັ້ງຢູ່ໃນຂອງທ່ານ
ລະບົບ.

ອຸ​ປະ​ກອນ​ປ້ອນ​ຂໍ້​ມູນ JACK ສ້າງ​ຫນຶ່ງ​ຫຼື​ຫຼາຍ JACK ລູກ​ຄ້າ​ທີ່​ຂຽນ​ໄດ້​, ຫນຶ່ງ​ສໍາ​ລັບ​ແຕ່​ລະ​ຊ່ອງ​ສຽງ​,
ທີ່ມີຊື່ client_name:input_N, ບ່ອນທີ່ client_name ແມ່ນ​ຊື່​ສະ​ຫນອງ​ໃຫ້​ໂດຍ​ຄໍາ​ຮ້ອງ​ສະ​ຫມັກ​,
ແລະ N ແມ່ນຕົວເລກທີ່ລະບຸຊ່ອງທາງ. ລູກຄ້າທີ່ຂຽນໄດ້ແຕ່ລະຄົນຈະສົ່ງ
ຂໍ້ມູນທີ່ໄດ້ມາກັບອຸປະກອນປ້ອນຂໍ້ມູນ FFmpeg.

ເມື່ອທ່ານໄດ້ສ້າງລູກຄ້າ JACK ທີ່ສາມາດອ່ານໄດ້ຫນຶ່ງຫຼືຫຼາຍກວ່ານັ້ນ, ທ່ານຈໍາເປັນຕ້ອງເຊື່ອມຕໍ່ພວກເຂົາກັບຫນຶ່ງ
ຫຼືຫຼາຍກວ່າລູກຄ້າ JACK ທີ່ຂຽນໄດ້.

ເພື່ອເຊື່ອມຕໍ່ຫຼືຕັດການເຊື່ອມຕໍ່ລູກຄ້າ JACK ທ່ານສາມາດນໍາໃຊ້ໄດ້ jack_connect ແລະ jack_disconnect
ໂຄງ​ການ​, ຫຼື​ເຮັດ​ມັນ​ໂດຍ​ຜ່ານ​ການ​ໂຕ້​ຕອບ​ຮູບ​ພາບ​, ສໍາ​ລັບ​ການ​ຍົກ​ຕົວ​ຢ່າງ​ກັບ​ qjackctl.

ເພື່ອລາຍຊື່ລູກຄ້າ JACK ແລະຄຸນສົມບັດຂອງພວກເຂົາທ່ານສາມາດເອີ້ນຄໍາສັ່ງ jack_lsp.

ປະຕິບັດຕາມຕົວຢ່າງທີ່ສະແດງໃຫ້ເຫັນວິທີການຈັບລູກຄ້າ JACK ທີ່ອ່ານໄດ້ກັບ ffmpeg.

# ສ້າງລູກຄ້າ JACK ທີ່ຂຽນໄດ້ດ້ວຍຊື່ "ffmpeg".
$ ffmpeg -f jack -i ffmpeg -y out.wav

# ເລີ່ມຕົ້ນຕົວຢ່າງ jack_metro ລູກຄ້າທີ່ສາມາດອ່ານໄດ້.
$ jack_metro -b 120 -d 0.2 -f 4000

# ລາຍຊື່ລູກຄ້າ JACK ໃນປັດຈຸບັນ.
$ jack_lsp -c
ລະບົບ:capture_1
ລະບົບ:capture_2
ລະບົບ:playback_1
ລະບົບ:playback_2
ffmpeg:input_1
metro: 120_bpm

# ເຊື່ອມຕໍ່ metro ກັບລູກຄ້າທີ່ຂຽນໄດ້ ffmpeg.
$ jack_connect metro:120_bpm ffmpeg:input_1

ສໍາລັບຂໍ້ມູນເພີ່ມເຕີມອ່ານ:http://jackaudio.org/>

ທາງເລືອກໃນການ

ຊ່ອງທາງ
ກໍານົດຈໍານວນຊ່ອງ. ຄ່າເລີ່ມຕົ້ນແມ່ນ 2.

ລາຟີ
Libavfilter ປ້ອນອຸປະກອນສະເໝືອນ.

ອຸ​ປະ​ກອນ​ປ້ອນ​ຂໍ້​ມູນ​ນີ້​ອ່ານ​ຂໍ້​ມູນ​ຈາກ​ແຜ່ນ​ຜົນ​ຜະ​ລິດ​ທີ່​ເປີດ​ຂອງ filtergraph libavfilter​.

ສໍາລັບແຕ່ລະ filtergraph ເປີດ, ອຸປະກອນປ້ອນຂໍ້ມູນຈະສ້າງກະແສທີ່ສອດຄ້ອງກັນ
ເຊິ່ງຖືກແຜນທີ່ກັບຜົນຜະລິດທີ່ສ້າງຂຶ້ນ. ຕອນນີ້ຮອງຮັບຂໍ້ມູນວິດີໂອເທົ່ານັ້ນ. ໄດ້
filtergraph ແມ່ນລະບຸໂດຍຜ່ານທາງເລືອກ graph.

ທາງເລືອກໃນການ

graph
ລະບຸຕົວກອງເພື່ອໃຊ້ເປັນການປ້ອນຂໍ້ມູນ. ແຕ່ລະວິດີໂອທີ່ເປີດອອກມາຈະຕ້ອງຕິດສະຫຼາກໂດຍ a
string ເປັນເອກະລັກຂອງຮູບແບບ "ອອກN", ທີ່ N ແມ່ນຕົວເລກເລີ່ມຕົ້ນຈາກ 0 ທີ່ສອດຄ້ອງກັບ
ກະແສການປ້ອນຂໍ້ມູນແຜນທີ່ທີ່ສ້າງຂຶ້ນໂດຍອຸປະກອນ. ຜົນຜະລິດທີ່ບໍ່ມີປ້າຍຊື່ທໍາອິດແມ່ນ
ມອບຫມາຍໃຫ້ອັດຕະໂນມັດໃສ່ປ້າຍ "out0", ແຕ່ອື່ນໆທັງຫມົດຈໍາເປັນຕ້ອງໄດ້ລະບຸໄວ້
ຢ່າງຈະແຈ້ງ.

ຄຳຕໍ່ທ້າຍ "+subcc" ສາມາດຕໍ່ທ້າຍໃສ່ປ້າຍກຳກັບຜົນຜະລິດເພື່ອສ້າງກະແສເພີ່ມເຕີມດ້ວຍ
ຊຸດຄຳບັນຍາຍທີ່ຕິດຢູ່ກັບຜົນຜະລິດນັ້ນ (ການທົດລອງ; ສະເພາະສຳລັບ EIA-608/
CEA-708 ສໍາລັບໃນປັດຈຸບັນ). ກະແສ subcc ຖືກສ້າງຂື້ນຫຼັງຈາກສາຍນ້ໍາປົກກະຕິທັງຫມົດ, ໃນ
ຄໍາສັ່ງຂອງນ້ໍາທີ່ສອດຄ້ອງກັນ. ຕົວຢ່າງ, ຖ້າມີ "out19+subcc",
"out7+subcc" ແລະສູງສຸດ "out42", stream #43 ແມ່ນ subcc ສໍາລັບນ້ໍາ #7 ແລະນ້ໍາ #44
ແມ່ນ subcc ສຳລັບການຖ່າຍທອດ #19.

ຖ້າບໍ່ໄດ້ລະບຸໄວ້ໃນຕອນຕົ້ນຂອງຊື່ໄຟລ໌ທີ່ລະບຸໄວ້ສໍາລັບອຸປະກອນປ້ອນຂໍ້ມູນ.

graph_file
ຕັ້ງຊື່ໄຟລ໌ຂອງ filtergraph ທີ່ຈະອ່ານແລະສົ່ງໄປຫາຕົວກອງອື່ນໆ. syntax
ຂອງ filtergraph ແມ່ນຄືກັນກັບທີ່ລະບຸໄວ້ໂດຍທາງເລືອກ graph.

dumpgraph
Dump graph ກັບ stderr.

ຕົວຢ່າງ

·ສ້າງສາຍວິດີໂອສີແລະຫຼິ້ນມັນກັບ ffplay:

ffplay -f lavfi -graph "color=c=pink [out0]" dummy

· ເປັນຕົວຢ່າງທີ່ຜ່ານມາ, ແຕ່ໃຊ້ຊື່ໄຟລ໌ສໍາລັບການລະບຸຄໍາອະທິບາຍກາຟ, ແລະ
ຍົກເວັ້ນປ້າຍ "out0":

ffplay -f lavfi color=c=ສີບົວ

· ສ້າງ​ສາມ​ວິ​ດີ​ໂອ​ທີ່​ແຕກ​ຕ່າງ​ກັນ​ການ​ກັ່ນ​ຕອງ​ແຫຼ່ງ​ແລະ​ຫຼິ້ນ​ໃຫ້​ເຂົາ​ເຈົ້າ​:

ffplay -f lavfi -graph "testsrc [out0]; testsrc,hflip [out1]; testsrc,negate [out2]" test3

· ອ່ານການຖ່າຍທອດສຽງຈາກໄຟລ໌ໂດຍໃຊ້ແຫຼ່ງຮູບເງົາ ແລະຫຼິ້ນຄືນດ້ວຍ ffplay:

ffplay -f lavfi "amovie=test.wav"

· ອ່ານ​ສະ​ຕ​ຣີມ​ສຽງ​ແລະ​ວິ​ດີ​ໂອ​ແລະ​ຫຼິ້ນ​ມັນ​ກັບ​ຄືນ​ໄປ​ບ່ອນ​ ffplay:

ffplay -f lavfi "movie=test.avi[out0];amovie=test.wav[out1]"

· ຖິ້ມເຟຣມທີ່ຖອດລະຫັດໃສ່ຮູບພາບ ແລະຄຳບັນຍາຍໃສ່ໄຟລ໌ (ທົດລອງ):

ffmpeg -f lavfi -i "movie=test.ts[out0+subcc]" -map v frame%08d.png -map s -c copy -f rawvideo subcc.bin

libcdio
ອຸປະກອນປ້ອນສຽງ-CD ໂດຍອີງໃສ່ libcdio.

ເພື່ອເປີດໃຊ້ອຸປະກອນປ້ອນຂໍ້ມູນນີ້ໃນລະຫວ່າງການຕັ້ງຄ່າທ່ານຕ້ອງການ libcdio ຕິດຕັ້ງຢູ່ໃນຂອງທ່ານ
ລະບົບ. ມັນຮຽກຮ້ອງໃຫ້ມີຕົວເລືອກການຕັ້ງຄ່າ "--enable-libcdio".

ອຸ​ປະ​ກອນ​ນີ້​ອະ​ນຸ​ຍາດ​ໃຫ້​ຫຼິ້ນ​ແລະ​ຈັບ​ໄດ້​ຈາກ Audio​-CD​.

ຕົວຢ່າງເພື່ອຄັດລອກດ້ວຍ ffmpeg Audio-CD ທັງໝົດໃນ / dev / sr0, ທ່ານອາດຈະດໍາເນີນການຄໍາສັ່ງ:

ffmpeg -f libcdio -i /dev/sr0 cd.wav

ທາງເລືອກໃນການ

ຄວາມ​ໄວ
ຕັ້ງຄວາມໄວໃນການອ່ານໄດ. ຄ່າເລີ່ມຕົ້ນແມ່ນ 0.

ຄວາມໄວແມ່ນກໍານົດຫນ່ວຍຄວາມໄວ CD-ROM. ຄວາມໄວແມ່ນຖືກກໍານົດໂດຍຜ່ານ libcdio
ຟັງຊັນ "cdio_cddap_speed_set". ຢູ່ໃນໄດຣຟ໌ CD-ROM ຫຼາຍອັນ, ການລະບຸຄ່າໃຫຍ່ເກີນໄປ
ຈະສົ່ງຜົນໃຫ້ໃຊ້ຄວາມໄວທີ່ໄວທີ່ສຸດ.

paranoia_mode
ຕັ້ງທຸງຮູບແບບການຟື້ນຕົວ paranoia. ມັນຍອມຮັບຫນຶ່ງໃນຄ່າຕໍ່ໄປນີ້:

ປິດການໃຊ້ວຽກ
ກວດສອບ
ກັນຂ້າມ
ບໍ່ເຄີຍຂ້າມ
ຢ່າງເຕັມທີ່

ຄ່າເລີ່ມຕົ້ນແມ່ນ ປິດການໃຊ້ວຽກ.

ສໍາລັບຂໍ້ມູນເພີ່ມເຕີມກ່ຽວກັບຮູບແບບການຟື້ນຕົວທີ່ມີຢູ່, ໃຫ້ປຶກສາໂຄງການ paranoia
ເອກະສານ.

libdc1394
ອຸປະກອນປ້ອນຂໍ້ມູນ IIDC1394, ອີງຕາມ libdc1394 ແລະ libraw1394.

ຕ້ອງການຕົວເລືອກການຕັ້ງຄ່າ "--enable-libdc1394".

ເປີດ
ອຸປະກອນປ້ອນຂໍ້ມູນ OpenAL ໃຫ້ການບັນທຶກສຽງໃນທຸກລະບົບດ້ວຍ OpenAL 1.1 ທີ່ເຮັດວຽກ
ການຈັດຕັ້ງປະຕິບັດ.

ເພື່ອເປີດໃຊ້ອຸປະກອນປ້ອນຂໍ້ມູນນີ້ໃນລະຫວ່າງການຕັ້ງຄ່າ, ທ່ານຈໍາເປັນຕ້ອງມີສ່ວນຫົວ OpenAL ແລະຫ້ອງສະໝຸດ
ຕິດຕັ້ງຢູ່ໃນລະບົບຂອງທ່ານ, ແລະຕ້ອງການ configure FFmpeg ດ້ວຍ "--enable-openal".

ສ່ວນຫົວ ແລະຫ້ອງສະໝຸດ OpenAL ຄວນຖືກສະໜອງໃຫ້ເປັນສ່ວນຫນຶ່ງຂອງການຈັດຕັ້ງປະຕິບັດ OpenAL ຂອງທ່ານ, ຫຼື
ເປັນການດາວໂຫຼດເພີ່ມເຕີມ (ເປັນ SDK). ອີງຕາມການຕິດຕັ້ງຂອງທ່ານ, ທ່ານອາດຈະຈໍາເປັນຕ້ອງໄດ້ກໍານົດ
ທຸງເພີ່ມເຕີມໂດຍຜ່ານ "--extra-cflags" ແລະ "--extra-ldflags" ສໍາລັບການອະນຸຍາດໃຫ້ການກໍ່ສ້າງ.
ລະບົບເພື່ອຊອກຫາຫົວຂໍ້ OpenAL ແລະຫ້ອງສະຫມຸດ.

ບັນຊີລາຍຊື່ທີ່ບໍ່ຄົບຖ້ວນຂອງການປະຕິບັດ OpenAL ດັ່ງຕໍ່ໄປນີ້:

Creative
ການ​ປະ​ຕິ​ບັດ Windows ຢ່າງ​ເປັນ​ທາງ​ການ​, ການ​ສະ​ຫນອງ​ການ​ເລັ່ງ​ຮາດ​ແວ​ທີ່​ມີ​ສະ​ຫນັບ​ສະ​ຫນູນ​
ອຸ​ປະ​ກອນ​ແລະ​ຊອບ​ແວ fallback​. ເບິ່ງhttp://openal.org/>.

Openal ຄີອ່ອນ
ການປະຕິບັດຊອບແວແບບເຄື່ອນທີ່, ແຫຼ່ງເປີດ (LGPL). ລວມມີ backends ສໍາລັບຫຼາຍທີ່ສຸດ
APIs ສຽງທົ່ວໄປໃນລະບົບປະຕິບັດການ Windows, Linux, Solaris, ແລະ BSD. ເບິ່ງ
<http://kcat.strangesoft.net/openal.html>.

ຈາກຫນາກແອບເປີ
OpenAL ແມ່ນ​ສ່ວນ​ຫນຶ່ງ​ຂອງ Core Audio​, ເປັນ​ທາງ​ການ​ໃນ​ການ​ໂຕ້​ຕອບ Mac OS X Audio​. ເບິ່ງ
<http://developer.apple.com/technologies/mac/audio-and-video.html>

ອຸ​ປະ​ກອນ​ນີ້​ອະ​ນຸ​ຍາດ​ໃຫ້​ຫນຶ່ງ​ເພື່ອ​ຖ່າຍ​ຮູບ​ຈາກ​ອຸ​ປະ​ກອນ​ການ​ປ້ອນ​ຂໍ້​ມູນ​ສຽງ​ທີ່​ຈັດ​ການ​ໂດຍ​ຜ່ານ OpenAL​.

ທ່ານຈໍາເປັນຕ້ອງລະບຸຊື່ຂອງອຸປະກອນທີ່ຈະບັນທຶກໃນຊື່ໄຟລ໌ທີ່ສະຫນອງໃຫ້. ຖ້າ
ສະຕຣິງຫວ່າງເປົ່າແມ່ນໃຫ້, ອຸປະກອນຈະເລືອກອຸປະກອນເລີ່ມຕົ້ນໂດຍອັດຕະໂນມັດ. ເຈົ້າ​ສາ​ມາດ
ໄດ້​ຮັບ​ບັນ​ຊີ​ລາຍ​ຊື່​ຂອງ​ອຸ​ປະ​ກອນ​ສະ​ຫນັບ​ສະ​ຫນູນ​ໂດຍ​ການ​ນໍາ​ໃຊ້​ທາງ​ເລືອກ​ list_devices.

ທາງເລືອກໃນການ

ຊ່ອງທາງ
ກໍານົດຈໍານວນຊ່ອງໃນສຽງທີ່ຖືກຈັບ. ຄຸນຄ່າເທົ່ານັ້ນ 1 (monaural) ແລະ 2
(ສະເຕີລິໂອ) ໄດ້ຮັບການສະຫນັບສະຫນູນໃນປັດຈຸບັນ. ຄ່າເລີ່ມຕົ້ນເປັນ 2.

sample_size
ກໍານົດຂະຫນາດຕົວຢ່າງ (ເປັນບິດ) ຂອງສຽງທີ່ບັນທຶກໄວ້. ຄຸນຄ່າເທົ່ານັ້ນ 8 ແລະ 16 ມີ
ສະ​ຫນັບ​ສະ​ຫນູນ​ໃນ​ປັດ​ຈຸ​ບັນ​. ຄ່າເລີ່ມຕົ້ນເປັນ 16.

ອັດຕາຕົວຢ່າງ
ກໍານົດອັດຕາຕົວຢ່າງ (ເປັນ Hz) ຂອງສຽງທີ່ຈັບໄດ້. ຄ່າເລີ່ມຕົ້ນເປັນ 44.1k.

list_devices
ຖ້າຕັ້ງ ທີ່ແທ້ຈິງ, ພິມບັນຊີລາຍຊື່ຂອງອຸປະກອນແລະອອກ. ຄ່າເລີ່ມຕົ້ນເປັນ ທີ່ບໍ່ຖືກຕ້ອງ.

ຕົວຢ່າງ

ພິມລາຍຊື່ອຸປະກອນທີ່ຮອງຮັບ OpenAL ແລະອອກ:

$ ffmpeg -list_devices true -f openal -i dummy out.ogg

ບັນທຶກຈາກອຸປະກອນ OpenAL DR-BT101 ຜ່ານ PulseAudio:

$ ffmpeg -f openal -i 'DR-BT101 ຜ່ານ PulseAudio' out.ogg

ຈັບ​ເອົາ​ຈາກ​ອຸ​ປະ​ກອນ​ເລີ່ມ​ຕົ້ນ (ຫມາຍ​ເຫດ​ສະ​ຕ​ຣິງ​ຫວ່າງ​ເປົ່າ '' ເປັນ​ຊື່​ໄຟລ​໌​)​:

$ ffmpeg -f openal -i '' out.ogg

ບັນທຶກຈາກສອງອຸປະກອນພ້ອມໆກັນ, ຂຽນໃສ່ສອງໄຟລ໌ທີ່ແຕກຕ່າງກັນ, ພາຍໃນດຽວກັນ
ffmpeg ຄໍາສັ່ງ:

$ffmpeg -f openal -i 'DR-BT101 ຜ່ານ PulseAudio' out1.ogg -f openal -i 'ALSA Default' out2.ogg

ໝາຍເຫດ: ບໍ່ແມ່ນທຸກການປະຕິບັດ OpenAL ຮອງຮັບການຈັບພາບພ້ອມກັນຫຼາຍອັນ - ລອງໃຊ້
OpenAL Soft ຫຼ້າສຸດຖ້າຂ້າງເທິງນີ້ບໍ່ເຮັດວຽກ.

oss
ເປີດອຸປະກອນປ້ອນລະບົບສຽງ.

ຊື່ໄຟລ໌ທີ່ຈະສະໜອງໃຫ້ກັບອຸປະກອນປ້ອນຂໍ້ມູນແມ່ນ node ອຸປະກອນທີ່ເປັນຕົວແທນຂອງວັດສະດຸປ້ອນ OSS
ອຸປະກອນ, ແລະປົກກະຕິແລ້ວແມ່ນຕັ້ງເປັນ /dev/dsp.

ສໍາລັບຕົວຢ່າງທີ່ຈະ grab ຈາກ /dev/dsp ການນໍາໃຊ້ ffmpeg ໃຊ້ຄໍາສັ່ງ:

ffmpeg -f oss -i /dev/dsp /tmp/oss.wav

ສໍາລັບຂໍ້ມູນເພີ່ມເຕີມກ່ຽວກັບ OSS ເບິ່ງ:http://manuals.opensound.com/usersguide/dsp.html>

ທາງເລືອກໃນການ

ອັດຕາຕົວຢ່າງ
ກໍານົດອັດຕາຕົວຢ່າງເປັນ Hz. ຄ່າເລີ່ມຕົ້ນແມ່ນ 48000.

ຊ່ອງທາງ
ກໍານົດຈໍານວນຊ່ອງ. ຄ່າເລີ່ມຕົ້ນແມ່ນ 2.

pulse
ອຸປະກອນປ້ອນຂໍ້ມູນ PulseAudio.

ເພື່ອເປີດໃຊ້ອຸປະກອນຜົນຜະລິດນີ້, ທ່ານຈໍາເປັນຕ້ອງປັບຄ່າ FFmpeg ດ້ວຍ "--enable-libpulse".

ຊື່ໄຟລ໌ທີ່ຈະສະໜອງໃຫ້ກັບອຸປະກອນປ້ອນຂໍ້ມູນແມ່ນອຸປະກອນທີ່ມາ ຫຼື string "default"

ເພື່ອລາຍຊື່ອຸປະກອນແຫຼ່ງ PulseAudio ແລະຄຸນສົມບັດຂອງພວກມັນ, ທ່ານສາມາດເອີ້ນໃຊ້ຄໍາສັ່ງ
pactl ບັນຊີລາຍຊື່ ແຫຼ່ງຂໍ້ມູນ.

ຂໍ້ມູນເພີ່ມເຕີມກ່ຽວກັບ PulseAudio ສາມາດພົບໄດ້ໃນhttp://www.pulseaudio.org>.

ທາງເລືອກໃນການ

ເຄື່ອງແມ່ຂ່າຍ
ເຊື່ອມຕໍ່ກັບເຊີບເວີ PulseAudio ສະເພາະ, ລະບຸໂດຍທີ່ຢູ່ IP. ເຄື່ອງແມ່ຂ່າຍເລີ່ມຕົ້ນ
ຖືກນໍາໃຊ້ໃນເວລາທີ່ບໍ່ໄດ້ສະຫນອງໃຫ້.

ຊື່
ລະບຸຊື່ແອັບພລິເຄຊັນ PulseAudio ຈະໃຊ້ເມື່ອສະແດງລູກຄ້າທີ່ມີການເຄື່ອນໄຫວ, ໂດຍ
ຄ່າເລີ່ມຕົ້ນມັນແມ່ນສະຕຣິງ "LIBAVFORMAT_IDENT".

stream_name
ລະບຸຊື່ສະຕຣີມ PulseAudio ຈະໃຊ້ເມື່ອສະແດງການຖ່າຍທອດທີ່ເຄື່ອນໄຫວຢູ່, ໂດຍຄ່າເລີ່ມຕົ້ນມັນ
ແມ່ນ "ບັນທຶກ".

ອັດຕາຕົວຢ່າງ
ລະບຸຕົວຢ່າງໃນ Hz, ໂດຍຄ່າເລີ່ມຕົ້ນ 48kHz ແມ່ນໃຊ້.

ຊ່ອງທາງ
ລະບຸຊ່ອງທີ່ໃຊ້ຢູ່, ໂດຍຄ່າເລີ່ມຕົ້ນ 2 (ສະເຕຣິໂອ) ຖືກຕັ້ງໄວ້.

frame_size
ລະບຸຈໍານວນໄບຕ໌ຕໍ່ເຟຣມ, ໂດຍຄ່າເລີ່ມຕົ້ນມັນຖືກຕັ້ງເປັນ 1024.

fragment_size
ລະບຸຊິ້ນສ່ວນ buffering ໜ້ອຍສຸດໃນ PulseAudio, ມັນຈະສົ່ງຜົນກະທົບຕໍ່ສຽງ
latency. ໂດຍຄ່າເລີ່ມຕົ້ນມັນບໍ່ໄດ້ຖືກຕັ້ງ.

ຝາຜະ ໜັງ
ຕັ້ງຄ່າ PTS ເບື້ອງຕົ້ນໂດຍໃຊ້ເວລາປະຈຸບັນ. ຄ່າເລີ່ມຕົ້ນແມ່ນ 1.

ຕົວຢ່າງ

ບັນທຶກການຖ່າຍທອດຈາກອຸປະກອນເລີ່ມຕົ້ນ:

ffmpeg -f pulse -i ຄ່າເລີ່ມຕົ້ນ /tmp/pulse.wav

qtkit
ອຸປະກອນປ້ອນຂໍ້ມູນ QTKit.

ຊື່ໄຟລ໌ທີ່ຜ່ານການປ້ອນຂໍ້ມູນຖືກວິເຄາະເພື່ອໃຫ້ມີຊື່ອຸປະກອນ ຫຼືດັດຊະນີ. ໄດ້
ດັດຊະນີອຸປະກອນຍັງສາມາດໃຫ້ໄດ້ໂດຍການໃຊ້ -video_device_index. ດັດຊະນີອຸປະກອນທີ່ໃຫ້ໄວ້ຈະ
ແທນທີ່ຊື່ອຸປະກອນໃດກໍໄດ້. ຖ້າອຸປະກອນທີ່ຕ້ອງການປະກອບດ້ວຍຕົວເລກເທົ່ານັ້ນ, ໃຫ້ໃຊ້
-video_device_index ເພື່ອກໍານົດມັນ. ອຸປະກອນເລີ່ມຕົ້ນຈະຖືກເລືອກຖ້າສາຍທີ່ຫວ່າງເປົ່າ
ຫຼືຊື່ອຸປະກອນ "ຄ່າເລີ່ມຕົ້ນ" ຖືກມອບໃຫ້. ອຸປະກອນທີ່ມີຢູ່ສາມາດຖືກນັບໂດຍການນໍາໃຊ້
-list_devices.

ffmpeg -f qtkit -i "0" out.mpg

ffmpeg -f qtkit -video_device_index 0 -i "" out.mpg

ffmpeg -f qtkit -i "ຄ່າເລີ່ມຕົ້ນ" out.mpg

ffmpeg -f qtkit -list_devices true -i ""

ທາງເລືອກໃນການ

frame_rate
ກໍານົດອັດຕາເຟຣມ. ຄ່າເລີ່ມຕົ້ນແມ່ນ 30.

list_devices
ຖ້າຕັ້ງເປັນ "ຈິງ", ພິມລາຍການອຸປະກອນ ແລະອອກ. ຄ່າເລີ່ມຕົ້ນແມ່ນ "ບໍ່ຖືກຕ້ອງ".

video_device_index
ເລືອກອຸປະກອນວິດີໂອໂດຍດັດຊະນີສໍາລັບອຸປະກອນທີ່ມີຊື່ດຽວກັນ (ເລີ່ມຕົ້ນທີ່ 0).

sndio
ອຸປະກອນປ້ອນ sndio.

ເພື່ອເປີດໃຊ້ອຸປະກອນປ້ອນຂໍ້ມູນນີ້ໃນລະຫວ່າງການຕັ້ງຄ່າທ່ານຕ້ອງການ libsndio ຕິດຕັ້ງຢູ່ໃນຂອງທ່ານ
ລະບົບ.

ຊື່ໄຟລ໌ທີ່ຈະສະໜອງໃຫ້ກັບອຸປະກອນປ້ອນຂໍ້ມູນແມ່ນ node ອຸປະກອນທີ່ເປັນຕົວແທນຂອງ sndio
ອຸປະກອນປ້ອນ, ແລະປົກກະຕິແລ້ວແມ່ນຕັ້ງເປັນ /dev/audio0.

ສໍາລັບຕົວຢ່າງທີ່ຈະ grab ຈາກ /dev/audio0 ການນໍາໃຊ້ ffmpeg ໃຊ້ຄໍາສັ່ງ:

ffmpeg -f sndio -i /dev/audio0 /tmp/oss.wav

ທາງເລືອກໃນການ

ອັດຕາຕົວຢ່າງ
ກໍານົດອັດຕາຕົວຢ່າງເປັນ Hz. ຄ່າເລີ່ມຕົ້ນແມ່ນ 48000.

ຊ່ອງທາງ
ກໍານົດຈໍານວນຊ່ອງ. ຄ່າເລີ່ມຕົ້ນແມ່ນ 2.

ວິດີໂອ4linux2, v4l2
Video4Linux2 ອຸປະກອນປ້ອນຂໍ້ມູນວິດີໂອ.

"v4l2" ສາມາດໃຊ້ເປັນນາມແຝງສໍາລັບ "video4linux2".

ຖ້າ FFmpeg ຖືກສ້າງຂຶ້ນດ້ວຍການສະຫນັບສະຫນູນ v4l-utils (ໂດຍໃຊ້ການຕັ້ງຄ່າ "--enable-libv4l2"
ທາງ​ເລືອກ), ມັນ​ເປັນ​ໄປ​ໄດ້​ທີ່​ຈະ​ນໍາ​ໃຊ້​ມັນ​ກັບ "-use_libv4l2​" ທາງ​ເລືອກ​ອຸ​ປະ​ກອນ​ການ​ປ້ອນ​ຂໍ້​ມູນ​.

ຊື່ຂອງອຸປະກອນທີ່ຈະ grab ແມ່ນ node ອຸປະກອນໄຟລ໌, ປົກກະຕິແລ້ວລະບົບ Linux ມີແນວໂນ້ມທີ່ຈະ
ສ້າງໂນດດັ່ງກ່າວໂດຍອັດຕະໂນມັດເມື່ອອຸປະກອນ (ເຊັ່ນ: USB webcam) ຖືກສຽບໃສ່
ລະບົບ, ແລະມີຊື່ຂອງປະເພດ /dev/videoN, ບ່ອນທີ່ N ແມ່ນຕົວເລກທີ່ກ່ຽວຂ້ອງກັບ
ອຸປະກອນ.

ອຸປະກອນ Video4Linux2 ປົກກະຕິແລ້ວຮອງຮັບຊຸດທີ່ຈຳກັດ widthxລະດັບຄວາມສູງ ຂະໜາດ ແລະອັດຕາເຟຣມ.
ທ່ານ​ສາ​ມາດ​ກວດ​ສອບ​ການ​ທີ່​ສະ​ຫນັບ​ສະ​ຫນູນ​ການ​ນໍາ​ໃຊ້​ -list_formats ທັງຫມົດ ສໍາລັບອຸປະກອນ Video4Linux2. ບາງ
ອຸປະກອນ, ເຊັ່ນບັດໂທລະທັດ, ສະຫນັບສະຫນູນຫນຶ່ງຫຼືຫຼາຍມາດຕະຖານ. ມັນເປັນໄປໄດ້ທີ່ຈະລາຍຊື່ທັງຫມົດ
ມາດ​ຕະ​ຖານ​ສະ​ຫນັບ​ສະ​ຫນູນ​ການ​ນໍາ​ໃຊ້​ -list_standards ທັງຫມົດ.

ພື້ນຖານເວລາສຳລັບການສະແຕມເວລາແມ່ນ 1 ໄມໂຄວິນາທີ. ຂຶ້ນຢູ່ກັບສະບັບ kernel ແລະ
ການ​ຕັ້ງ​ຄ່າ, timestamps ອາດ​ຈະ​ໄດ້​ມາ​ຈາກ​ໂມງ​ທີ່​ໃຊ້​ເວ​ລາ​ທີ່​ແທ້​ຈິງ (ຕົ້ນ​ກໍາ​ເນີດ​ທີ່ Unix
Epoch) ຫຼືໂມງ monotonic (ໂດຍປົກກະຕິແມ່ນເວລາເລີ່ມຕົ້ນ, ບໍ່ໄດ້ຮັບຜົນກະທົບຈາກ NTP ຫຼືຄູ່ມື
ການປ່ຽນແປງໂມງ). ໄດ້ - ສະ​ແຕມ​ເວ​ລາ​ abs or -ts abs ທາງເລືອກສາມາດຖືກນໍາໃຊ້ເພື່ອບັງຄັບ
ປ່ຽນເປັນໂມງເວລາຈິງ.

ບາງຕົວຢ່າງການນໍາໃຊ້ຂອງອຸປະກອນ video4linux2 ກັບ ffmpeg ແລະ ffplay:

·ລາຍຊື່ຮູບແບບທີ່ຮອງຮັບສໍາລັບອຸປະກອນ video4linux2:

ffplay -f video4linux2 -list_formats ທັງໝົດ /dev/video0

· Grab ແລະສະແດງການປ້ອນຂໍ້ມູນຂອງອຸປະກອນ video4linux2:

ffplay -f video4linux2 -framerate 30 -video_size hd720 /dev/video0

· Grab ແລະ​ບັນ​ທຶກ​ການ​ປ້ອນ​ຂໍ້​ມູນ​ຂອງ​ອຸ​ປະ​ກອນ video4linux2​, ປ່ອຍ​ໃຫ້​ອັດ​ຕາ​ພາ​ແລະ​ຂະ​ຫນາດ​ເປັນ​
ທີ່​ຕັ້ງ​ໄວ້​ກ່ອນ​ຫນ້າ​ນີ້​:

ffmpeg -f video4linux2 -input_format mjpeg -i /dev/video0 out.mpeg

ສໍາລັບຂໍ້ມູນເພີ່ມເຕີມກ່ຽວກັບ Video4Linux, ກວດເບິ່ງhttp://linuxtv.org/>.

ທາງເລືອກໃນການ

ມາດຕະຖານ
ກໍານົດມາດຕະຖານ. ຕ້ອງເປັນຊື່ຂອງມາດຕະຖານທີ່ຮອງຮັບ. ເພື່ອໃຫ້ໄດ້ຮັບບັນຊີລາຍຊື່ຂອງ
ມາດຕະຖານທີ່ສະຫນັບສະຫນູນ, ການນໍາໃຊ້ list_standards ທາງເລືອກ.

ຊ່ອງ
ຕັ້ງໝາຍເລກຊ່ອງໃສ່. ຄ່າເລີ່ມຕົ້ນເປັນ -1, ຊຶ່ງຫມາຍຄວາມວ່າການນໍາໃຊ້ທີ່ເລືອກກ່ອນຫນ້ານີ້
ຊ່ອງ.

video_size
ກໍານົດຂະຫນາດກອບວິດີໂອ. ອາກິວເມັນຕ້ອງເປັນສະຕຣິງໃນຮູບແບບ WIDTHxHEIGHT ຫຼື
ຕົວຫຍໍ້ຂະໜາດທີ່ຖືກຕ້ອງ.

pixel_format
ເລືອກ​ຮູບ​ແບບ pixels (ໃຊ້​ໄດ້​ພຽງ​ແຕ່​ສໍາ​ລັບ​ການ​ປ້ອນ​ວິ​ດີ​ໂອ​ດິບ​)​.

input_format
ຕັ້ງຮູບແບບ pixels ລວງທີ່ຕ້ອງການ (ສໍາລັບວິດີໂອດິບ) ຫຼືຊື່ codec. ທາງເລືອກນີ້ອະນຸຍາດໃຫ້
ຫນຶ່ງ​ໃນ​ການ​ຄັດ​ເລືອກ​ເອົາ​ຮູບ​ແບບ​ການ​ປ້ອນ​ຂໍ້​ມູນ​, ໃນ​ເວ​ລາ​ທີ່​ມີ​ຈໍາ​ນວນ​ຫນຶ່ງ​.

framerate
ກໍານົດອັດຕາເຟຣມວິດີໂອທີ່ຕ້ອງການ.

list_formats
ລາຍຊື່ຮູບແບບທີ່ມີຢູ່ (ຮູບແບບ pixels ລວງທີ່ຮອງຮັບ, codecs, ແລະຂະຫນາດກອບ) ແລະອອກ.

ຄ່າທີ່ມີຢູ່ແມ່ນ:

ທັງຫມົດ ສະ​ແດງ​ຮູບ​ແບບ​ທີ່​ມີ​ທັງ​ຫມົດ (ບີບ​ອັດ​ແລະ​ບໍ່​ໄດ້​ບີບ​ອັດ​)​.

ວັດຖຸດິບ ສະ​ແດງ​ໃຫ້​ເຫັນ​ພຽງ​ແຕ່​ຮູບ​ແບບ​ວິ​ດີ​ໂອ​ດິບ (ບໍ່​ໄດ້​ຖືກ​ບີບ​ອັດ​)​.

ບີບອັດ
ສະແດງຮູບແບບທີ່ຖືກບີບອັດເທົ່ານັ້ນ.

list_standards
ລາຍຊື່ມາດຕະຖານທີ່ຮອງຮັບແລະອອກ.

ຄ່າທີ່ມີຢູ່ແມ່ນ:

ທັງຫມົດ ສະແດງມາດຕະຖານທີ່ຮອງຮັບທັງໝົດ.

ສະ​ແຕມ​ເວ​ລາ​, ts
ກໍານົດປະເພດຂອງເວລາສໍາລັບຂອບ grabbed.

ຄ່າທີ່ມີຢູ່ແມ່ນ:

Default
ໃຊ້ການສະແຕມເວລາຈາກ kernel.

abs ໃຊ້ການສະແຕມເວລາຢ່າງແທ້ຈິງ (ໂມງຕິດຝາ).

mono2abs
ບັງຄັບການແປງຈາກ monotonic ເປັນ timestamps ຢ່າງແທ້ຈິງ.

ຄ່າເລີ່ມຕົ້ນແມ່ນ "ຄ່າເລີ່ມຕົ້ນ".

ໃຊ້_libv4l2
ໃຊ້ຟັງຊັນການແປງ libv4l2 (v4l-utils). ຄ່າເລີ່ມຕົ້ນແມ່ນ 0.

vfwcap
VfW (ວິດີໂອສໍາລັບ Windows) ຈັບອຸປະກອນປ້ອນຂໍ້ມູນ.

ຊື່ໄຟລ໌ທີ່ຜ່ານການປ້ອນເຂົ້າແມ່ນໝາຍເລກຕົວຂັບຖ່າຍ, ຕັ້ງແຕ່ 0 ຫາ 9. ເຈົ້າອາດ
ໃຊ້ "ລາຍຊື່" ເປັນຊື່ໄຟລ໌ເພື່ອພິມລາຍຊື່ໄດເວີ. ຊື່ໄຟລ໌ອື່ນໆຈະຖືກຕີຄວາມໝາຍ
ເປັນອຸປະກອນໝາຍເລກ 0.

ທາງເລືອກໃນການ

video_size
ກໍານົດຂະຫນາດກອບວິດີໂອ.

framerate
ກໍານົດອັດຕາກອບການຈັບ. ຄ່າເລີ່ມຕົ້ນແມ່ນ "ntsc", ທີ່ສອດຄ້ອງກັບອັດຕາເຟຣມຂອງ
"30000/1001".

x11 ຈັບ
ອຸປະກອນປ້ອນວິດີໂອ X11.

ເພື່ອເປີດໃຊ້ອຸປະກອນປ້ອນຂໍ້ມູນນີ້ໃນລະຫວ່າງການຕັ້ງຄ່າທ່ານຕ້ອງການ libxcb ຕິດຕັ້ງຢູ່ໃນລະບົບຂອງທ່ານ.
ມັນຈະຖືກກວດພົບໂດຍອັດຕະໂນມັດໃນລະຫວ່າງການຕັ້ງຄ່າ.

ອີກທາງເລືອກ, ຕົວເລືອກການຕັ້ງຄ່າ --enable-x11grab ມີຢູ່ສໍາລັບຜູ້ໃຊ້ Xlib ແບບເກົ່າ.

ອຸ​ປະ​ກອນ​ນີ້​ອະ​ນຸ​ຍາດ​ໃຫ້​ຫນຶ່ງ​ໃນ​ການ​ເກັບ​ກໍາ​ພາກ​ພື້ນ​ຂອງ​ການ​ສະ​ແດງ X11 ໄດ້​.

ຊື່ໄຟລ໌ທີ່ຜ່ານການປ້ອນຂໍ້ມູນມີ syntax:

[ ]: . [+ , ]

hostname:display_number.ໝາຍເລກໜ້າຈໍ ລະບຸຊື່ສະແດງ X11 ຂອງຫນ້າຈໍທີ່ຈະ grab
ຈາກ. hostname ສາມາດຖືກລະເວັ້ນ, ແລະຄ່າເລີ່ມຕົ້ນເປັນ "localhost". ສະພາບແວດລ້ອມປ່ຽນແປງໄດ້
DISPLAY ມີຊື່ສະແດງຄ່າເລີ່ມຕົ້ນ.

x_offset ແລະ y_offset ລະບຸການຊົດເຊີຍຂອງພື້ນທີ່ grabbed ກ່ຽວກັບການເທິງຊ້າຍ
ຂອບຂອງໜ້າຈໍ X11. ພວກມັນເລີ່ມຕົ້ນເປັນ 0.

ກວດເບິ່ງເອກະສານ X11 (ຕົວຢ່າງ ຜູ້ຊາຍ X) ສໍາ​ລັບ​ຂໍ້​ມູນ​ລະ​ອຽດ​ເພີ່ມ​ເຕີມ​.

ການນໍາໃຊ້ xdpyinfo ໂຄງ​ການ​ສໍາ​ລັບ​ການ​ໄດ້​ຮັບ​ຂໍ້​ມູນ​ພື້ນ​ຖານ​ກ່ຽວ​ກັບ​ຄຸນ​ສົມ​ບັດ​ຂອງ X11 ຂອງ​ທ່ານ​
ສະແດງ (ຕົວຢ່າງ: grep ສໍາລັບ "ຊື່" ຫຼື "ຂະຫນາດ").

ສໍາລັບຕົວຢ່າງທີ່ຈະ grab ຈາກ : 0.0 ການນໍາໃຊ້ ffmpeg:

ffmpeg -f x11grab -framerate 25 -video_size cif -i :0.0 out.mpg

ຄວ້າຕໍາແໜ່ງ "10,20":

ffmpeg -f x11grab -framerate 25 -video_size cif -i :0.0+10,20 out.mpg

ທາງເລືອກໃນການ

draw_mouse
ລະບຸວ່າຈະແຕ້ມຕົວຊີ້ເມົ້າຫຼືບໍ່. ຄ່າຂອງ 0 ລະບຸບໍ່ໃຫ້ແຕ້ມ
ຕົວຊີ້. ຄ່າເລີ່ມຕົ້ນແມ່ນ 1.

follow_mouse
ເຮັດໃຫ້ພື້ນທີ່ grabbed ປະຕິບັດຕາມຫນູ. ການໂຕ້ຖຽງສາມາດເປັນ "ສູນກາງ" ຫຼືຈໍານວນຂອງ
pixels PIXELS.

ເມື່ອມັນຖືກລະບຸດ້ວຍ "ສູນກາງ", ພາກພື້ນທີ່ຈັບໄດ້ປະຕິບັດຕາມຕົວຊີ້ຫນູ
ແລະຮັກສາຕົວຊີ້ຢູ່ໃຈກາງຂອງພາກພື້ນ; ຖ້າບໍ່ດັ່ງນັ້ນ, ພາກພື້ນປະຕິບັດຕາມພຽງແຕ່ເມື່ອ
ຕົວຊີ້ເມົ້າໄປຮອດພາຍໃນ PIXELS (ໃຫຍ່ກວ່າສູນ) ໄປຫາຂອບຂອງພາກພື້ນ.

ຍົກ​ຕົວ​ຢ່າງ:

ffmpeg -f x11grab -follow_mouse centered -framerate 25 -video_size cif -i :0.0 out.mpg

ເພື່ອປະຕິບັດຕາມພຽງແຕ່ເມື່ອຕົວຊີ້ເມົ້າໄປຮອດພາຍໃນ 100 pixels ຫາຂອບ:

ffmpeg -f x11grab -follow_mouse 100 -framerate 25 -video_size cif -i :0.0 out.mpg

framerate
ກໍານົດອັດຕາກອບການຈັບ. ຄ່າເລີ່ມຕົ້ນແມ່ນ "ntsc", ທີ່ສອດຄ້ອງກັບອັດຕາເຟຣມຂອງ
"30000/1001".

show_region
ສະແດງພາກພື້ນທີ່ຈັບຢູ່ໜ້າຈໍ.

If show_region ຖືກລະບຸດ້ວຍ 1, ຫຼັງຈາກນັ້ນ, ພາກພື້ນທີ່ຈັບໄດ້ຈະຖືກຊີ້ໃສ່
ຈໍ. ດ້ວຍຕົວເລືອກນີ້, ມັນງ່າຍທີ່ຈະຮູ້ວ່າສິ່ງທີ່ຖືກຈັບຖ້າມີພຽງແຕ່ສ່ວນຫນຶ່ງ
ຂອງຫນ້າຈໍໄດ້ຖືກ grabbed.

region_border
ກໍານົດຄວາມຫນາຂອງຊາຍແດນພາກພື້ນຖ້າຫາກວ່າ -show_region 1 ຖືກນໍາໃຊ້. ຊ່ວງແມ່ນ 1 ຫາ 128 ແລະ
ຄ່າເລີ່ມຕົ້ນແມ່ນ 3 (XCB-based x11grab ເທົ່ານັ້ນ).

ຍົກ​ຕົວ​ຢ່າງ:

ffmpeg -f x11grab -show_region 1 -framerate 25 -video_size cif -i :0.0+10,20 out.mpg

ກັບ follow_mouse:

ffmpeg -f x11grab -follow_mouse centered -show_region 1 -framerate 25 -video_size cif -i :0.0 out.mpg

video_size
ກໍານົດຂະຫນາດກອບວິດີໂອ. ຄ່າເລີ່ມຕົ້ນແມ່ນ "vga".

ໃຊ້_shm
ໃຊ້ສ່ວນຂະຫຍາຍ MIT-SHM ສໍາລັບຫນ່ວຍຄວາມຈໍາທີ່ໃຊ້ຮ່ວມກັນ. ຄ່າເລີ່ມຕົ້ນແມ່ນ 1. ມັນອາດຈະມີຄວາມຈໍາເປັນ
ເພື່ອປິດການໃຊ້ງານມັນສໍາລັບຈໍສະແດງຜົນທາງໄກ (x11grab ເດີມເທົ່ານັ້ນ).

grab_x grab_y AVOption

syntax ແມ່ນ:

-grab_x -grab_y

ກໍານົດຈຸດປະສານງານພາກພື້ນທີ່ຈັບໄດ້. ພວກມັນຖືກສະແດງເປັນການຊົດເຊີຍຈາກມຸມຊ້າຍເທິງ
ຂອງປ່ອງຢ້ຽມ X11. ຄ່າເລີ່ມຕົ້ນແມ່ນ 0.

OUTPUT ອຸປະກອນຕ່າງໆ


ອຸ​ປະ​ກອນ​ຜົນ​ຜະ​ລິດ​ແມ່ນ​ອົງ​ປະ​ກອບ​ທີ່​ກໍາ​ນົດ​ໄວ້​ໃນ FFmpeg ທີ່​ສາ​ມາດ​ຂຽນ​ຂໍ້​ມູນ​ມັນ​ຕິ​ມີ​ເດຍ​ເປັນ​
ອຸ​ປະ​ກອນ​ການ​ຜະ​ລິດ​ທີ່​ຕິດ​ກັບ​ລະ​ບົບ​ຂອງ​ທ່ານ​.

ໃນເວລາທີ່ທ່ານ configure FFmpeg build ຂອງທ່ານ, ທັງຫມົດອຸປະກອນຜົນຜະລິດທີ່ສະຫນັບສະຫນູນໄດ້ຖືກເປີດໃຊ້ໂດຍ
ຄ່າເລີ່ມຕົ້ນ. ທ່ານສາມາດລາຍຊື່ອັນທີ່ມີຢູ່ທັງໝົດໂດຍໃຊ້ຕົວເລືອກການຕັ້ງຄ່າ "--list-outdevs".

ທ່ານ​ສາ​ມາດ​ປິດ​ການ​ທໍາ​ງານ​ອຸ​ປະ​ກອນ​ຜົນ​ຜະ​ລິດ​ທັງ​ຫມົດ​ໂດຍ​ນໍາ​ໃຊ້​ທາງ​ເລືອກ​ການ​ຕັ້ງ​ຄ່າ "--disable-outdevs​"​, ແລະ
ເລືອກເປີດອຸປະກອນຜົນຜະລິດໂດຍໃຊ້ຕົວເລືອກ "--enable-outdev=OUTDEV", ຫຼືເຈົ້າສາມາດ
ປິດການໃຊ້ງານອຸປະກອນປ້ອນຂໍ້ມູນໃດໜຶ່ງໂດຍໃຊ້ຕົວເລືອກ "--disable-outdev=OUTDEV".

ຕົວເລືອກ "-devices" ຂອງເຄື່ອງມື ff* ຈະສະແດງລາຍຊື່ຂອງອຸປະກອນຜົນຜະລິດທີ່ເປີດໃຊ້.

ລາຍລະອຽດຂອງອຸປະກອນຜົນຜະລິດທີ່ມີຢູ່ໃນປັດຈຸບັນດັ່ງຕໍ່ໄປນີ້.

ອັນຊາ
ALSA (Advanced Linux Sound Architecture) ອຸປະກອນອອກ.

ຕົວຢ່າງ

· ຫຼິ້ນໄຟລ໌ຢູ່ໃນອຸປະກອນ ALSA ເລີ່ມຕົ້ນ:

ffmpeg -i INPUT -f alsa ເລີ່ມຕົ້ນ

· ຫຼິ້ນໄຟລ໌ໃນ soundcard 1, ອຸປະກອນສຽງ 7:

ffmpeg -i INPUT -f alsa hw:1,7

pooh
ອຸປະກອນອອກ CACA.

ອຸ​ປະ​ກອນ​ຜົນ​ຜະ​ລິດ​ນີ້​ອະ​ນຸ​ຍາດ​ໃຫ້​ຫນຶ່ງ​ສະ​ແດງ​ໃຫ້​ເຫັນ​ການ​ສະ​ຕ​ຣີມ​ວິ​ດີ​ໂອ​ຢູ່​ໃນ​ປ່ອງ​ຢ້ຽມ CACA​. ພຽງ​ແຕ່​ຫນຶ່ງ​ປ່ອງ​ຢ້ຽມ CACA​
ແມ່ນອະນຸຍາດຕໍ່ແອັບພລິເຄຊັນ, ດັ່ງນັ້ນເຈົ້າສາມາດມີພຽງໜຶ່ງຕົວຢ່າງຂອງອຸປະກອນຜົນຜະລິດນີ້ໃນອັນ
ຄໍາຮ້ອງສະຫມັກ.

ເພື່ອເປີດໃຊ້ອຸປະກອນຜົນຜະລິດນີ້, ທ່ານຈໍາເປັນຕ້ອງປັບຄ່າ FFmpeg ດ້ວຍ "--enable-libcaca".
libcaca ເປັນຫ້ອງສະໝຸດກຣາຟິກທີ່ສະແດງຂໍ້ຄວາມແທນ pixels.

ສໍາລັບຂໍ້ມູນເພີ່ມເຕີມກ່ຽວກັບ libcaca, ກວດເບິ່ງ:http://caca.zoy.org/wiki/libcaca>

ທາງເລືອກໃນການ

window_title
ກໍານົດຫົວຂໍ້ຫນ້າຕ່າງ CACA, ຖ້າບໍ່ໄດ້ກໍານົດຄ່າເລີ່ມຕົ້ນເປັນຊື່ໄຟລ໌ທີ່ລະບຸໄວ້ສໍາລັບ
ອຸປະກອນຜົນຜະລິດ.

window_size
ກໍານົດຂະຫນາດຫນ້າຕ່າງ CACA, ສາມາດເປັນສາຍຂອງແບບຟອມ widthxລະດັບຄວາມສູງ ຫຼືຂະຫນາດວິດີໂອ
ຕົວຫຍໍ້. ຖ້າ​ຫາກ​ວ່າ​ບໍ່​ໄດ້​ລະ​ບຸ​ໄວ້​, ມັນ​ເປັນ​ມາດ​ຕະ​ຖານ​ຂະ​ຫນາດ​ຂອງ​ວິ​ດີ​ໂອ​ການ​ປ້ອນ​ຂໍ້​ມູນ​.

ຄົນຂັບ
ຕັ້ງໄດເວີຈໍສະແດງຜົນ.

ຂັ້ນຕອນວິທີ
ກໍານົດວິທີການ dithering. Dithering ແມ່ນມີຄວາມຈໍາເປັນເພາະວ່າຮູບພາບທີ່ຖືກ rendered ມີ
ປົກກະຕິແລ້ວມີສີຫຼາຍກ່ວາ palette ທີ່ມີຢູ່. ຄ່າທີ່ຍອມຮັບແມ່ນລະບຸໄວ້
ດ້ວຍ "-list_dither algorithms".

ນາມແຝງ
ກໍານົດວິທີການ antialias. Antialiasing smoothens ຮູບ rendered ແລະຫຼີກເວັ້ນການ
ຜົນກະທົບຂັ້ນໄດທີ່ເຫັນທົ່ວໄປ. ຄ່າທີ່ຍອມຮັບແມ່ນສະແດງດ້ວຍ "-list_dither
antialiases".

ສາຍໄຟ
ກໍານົດວ່າຕົວອັກສອນໃດຈະຖືກໃຊ້ໃນເວລາສະແດງຂໍ້ຄວາມ. ຄຸນຄ່າທີ່ຍອມຮັບ
ມີລາຍຊື່ດ້ວຍ "-list_dither charsets".

ສີ
ຕັ້ງສີທີ່ຈະໃຊ້ໃນເວລາສະແດງຂໍ້ຄວາມ. ຄ່າທີ່ຍອມຮັບແມ່ນລະບຸໄວ້ກັບ
"-list_dither ສີ".

list_drivers
ຖ້າຕັ້ງ ທີ່ແທ້ຈິງ, ພິມບັນຊີລາຍຊື່ຂອງໄດເວີທີ່ມີຢູ່ແລະອອກ.

list_dither
ບອກຕົວເລືອກ dither ທີ່ກ່ຽວຂ້ອງກັບການໂຕ້ຖຽງ. ການໂຕ້ຖຽງຕ້ອງເປັນຫນຶ່ງໃນ
"ສູດການຄິດໄລ່", "antialiases", "charsets", "ສີ".

ຕົວຢ່າງ

·ຄໍາສັ່ງຕໍ່ໄປນີ້ສະແດງໃຫ້ເຫັນ ffmpeg ຜົນຜະລິດແມ່ນປ່ອງຢ້ຽມ CACA, ບັງຄັບໃຫ້ຂະຫນາດຂອງມັນ
80x25:

ffmpeg -i INPUT -vcodec rawvideo -pix_fmt rgb24 -window_size 80x25 -f caca -

·​ສະ​ແດງ​ບັນ​ຊີ​ລາຍ​ຊື່​ຂອງ​ຄົນ​ຂັບ​ທີ່​ມີ​ຢູ່​ແລະ​ອອກ​:

ffmpeg -i INPUT -pix_fmt rgb24 -f caca -list_drivers true -

·​ສະ​ແດງ​ບັນ​ຊີ​ລາຍ​ການ​ຂອງ​ສີ dither ທີ່​ມີ​ຢູ່​ແລະ​ອອກ​:

ffmpeg -i INPUT -pix_fmt rgb24 -f caca -list_dither ສີ -

decklink
ອຸປະກອນອອກ decklink ໃຫ້ຄວາມສາມາດໃນການຫຼິ້ນຄືນສໍາລັບອຸປະກອນ Blackmagic DeckLink.

ເພື່ອເປີດໃຊ້ອຸປະກອນຜົນຜະລິດນີ້, ທ່ານຕ້ອງການ Blackmagic DeckLink SDK ແລະທ່ານຕ້ອງການ
ຕັ້ງຄ່າດ້ວຍ "--extra-cflags" ແລະ "--extra-ldflags" ທີ່ເຫມາະສົມ. ໃນ Windows, ທ່ານ
ຈໍາເປັນຕ້ອງດໍາເນີນການໄຟລ໌ IDL ຜ່ານ widl.

DeckLink ແມ່ນເລືອກຫຼາຍກ່ຽວກັບຮູບແບບທີ່ມັນສະຫນັບສະຫນູນ. ຮູບແບບ Pixel ສະເຫມີ uyvy422,
framerate ແລະຂະຫນາດວິດີໂອຕ້ອງໄດ້ຮັບການກໍານົດສໍາລັບອຸປະກອນຂອງທ່ານກັບ -list_formats 1. ສຽງ
ອັດຕາຕົວຢ່າງແມ່ນສະເຫມີ 48 kHz.

ທາງເລືອກໃນການ

list_devices
ຖ້າຕັ້ງ ທີ່ແທ້ຈິງ, ພິມບັນຊີລາຍຊື່ຂອງອຸປະກອນແລະອອກ. ຄ່າເລີ່ມຕົ້ນເປັນ ທີ່ບໍ່ຖືກຕ້ອງ.

list_formats
ຖ້າຕັ້ງ ທີ່ແທ້ຈິງ, ພິມບັນຊີລາຍຊື່ຂອງຮູບແບບທີ່ຮອງຮັບແລະອອກ. ຄ່າເລີ່ມຕົ້ນເປັນ ທີ່ບໍ່ຖືກຕ້ອງ.

preroll
ຈໍາ​ນວນ​ເວ​ລາ​ທີ່​ຈະ preroll ວິ​ດີ​ໂອ​ໃນ​ວິ​ນາ​ທີ​. ຄ່າເລີ່ມຕົ້ນເປັນ 0.5.

ຕົວຢ່າງ

·​ລາຍ​ການ​ອຸ​ປະ​ກອນ​ການ​ຜະ​ລິດ​:

ffmpeg -i test.avi -f decklink -list_devices 1 dummy

· ລາຍ​ຊື່​ຮູບ​ແບບ​ສະ​ຫນັບ​ສະ​ຫນູນ​:

ffmpeg -i test.avi -f decklink -list_formats 1 'DeckLink Mini Monitor'

·ຫຼິ້ນຄລິບວີດີໂອ:

ffmpeg -i test.avi -f decklink -pix_fmt uyvy422 'DeckLink Mini Monitor'

·ຫຼິ້ນຄລິບວິດີໂອທີ່ມີກອບບໍ່ມາດຕະຖານຫຼືຂະຫນາດວິດີໂອ:

ffmpeg -i test.avi -f decklink -pix_fmt uyvy422 -s 720x486 -r 24000/1001 'DeckLink Mini Monitor'

fbdev
Linux framebuffer output ອຸປະກອນ.

Linux framebuffer ເປັນຊັ້ນຂໍ້ມູນທີ່ບໍ່ມີຕົວຕົນຂອງຮາດແວທີ່ເປັນເອກະລາດເພື່ອສະແດງກາຟິກ
ຢູ່ໃນຈໍຄອມພິວເຕີ, ໂດຍປົກກະຕິຢູ່ໃນຄອນໂຊ. ມັນຖືກເຂົ້າເຖິງໂດຍຜ່ານອຸປະກອນໄຟລ໌
node, ປົກກະຕິແລ້ວ /dev/fb0.

ສໍາລັບລາຍລະອຽດເພີ່ມເຕີມອ່ານໄຟລ໌ ເອກະສານ/fb/framebuffer.txt ລວມຢູ່ໃນ
ຕົ້ນໄມ້ແຫຼ່ງ Linux.

ທາງເລືອກໃນການ

xoffset
yoffset
ຕັ້ງຈຸດປະສານງານ x/y ຂອງມຸມຊ້າຍເທິງ. ຄ່າເລີ່ມຕົ້ນແມ່ນ 0.

ຕົວຢ່າງ

ຫຼິ້ນໄຟລ໌ຢູ່ໃນອຸປະກອນ framebuffer /dev/fb0. ຮູບແບບ pixels ລວງທີ່ຕ້ອງການແມ່ນຂຶ້ນກັບປະຈຸບັນ
ການ​ຕັ້ງ​ຄ່າ framebuffer​.

ffmpeg -re -i INPUT -vcodec rawvideo -pix_fmt bgra -f fbdev /dev/fb0

ເບິ່ງນຳhttp://linux-fbdev.sourceforge.net/> , ແລະ fbset(1).

ເປີດ gl
ອຸປະກອນອອກ OpenGL.

ເພື່ອເປີດໃຊ້ອຸປະກອນຜົນຜະລິດນີ້, ທ່ານຈໍາເປັນຕ້ອງປັບຄ່າ FFmpeg ດ້ວຍ "--enable-opengl".

ອຸ​ປະ​ກອນ​ຜົນ​ຜະ​ລິດ​ນີ້​ອະ​ນຸ​ຍາດ​ໃຫ້​ຫນຶ່ງ​ເພື່ອ​ເຮັດ​ໃຫ້​ສະ​ພາບ​ການ OpenGL​. ສະພາບການອາດຈະສະຫນອງໃຫ້ໂດຍ
ແອັບພລິເຄຊັນ ຫຼືໜ້າຕ່າງ SDL ເລີ່ມຕົ້ນຖືກສ້າງຂື້ນ.

ເມື່ອອຸປະກອນໃຫ້ບໍລິບົດພາຍນອກ, ແອັບພລິເຄຊັນຕ້ອງປະຕິບັດຕົວຈັດການເພື່ອປະຕິບັດຕາມ
ຂໍ້ຄວາມ: "AV_DEV_TO_APP_CREATE_WINDOW_BUFFER" - ສ້າງ OpenGL context ໃນຫົວຂໍ້ປະຈຸບັນ.
"AV_DEV_TO_APP_PREPARE_WINDOW_BUFFER" - ເຮັດໃຫ້ບໍລິບົດ OpenGL ເປັນປັດຈຸບັນ.
"AV_DEV_TO_APP_DISPLAY_WINDOW_BUFFER" - ສະຫຼັບບັບເຟີ.
"AV_DEV_TO_APP_DESTROY_WINDOW_BUFFER" - ທໍາລາຍບໍລິບົດ OpenGL. ຄໍາ​ຮ້ອງ​ສະ​ຫມັກ​ຍັງ​
ຕ້ອງການແຈ້ງໃຫ້ອຸປະກອນກ່ຽວກັບການແກ້ໄຂໃນປະຈຸບັນໂດຍການສົ່ງ
ຂໍ້ຄວາມ "AV_APP_TO_DEV_WINDOW_SIZE".

ທາງເລືອກໃນການ

ຄວາມເປັນມາ
ຕັ້ງສີພື້ນຫຼັງ. ສີດໍາເປັນຄ່າເລີ່ມຕົ້ນ.

no_window
ປິດໃຊ້ງານໜ້າຈໍ SDL ເລີ່ມຕົ້ນເມື່ອຕັ້ງເປັນຄ່າທີ່ບໍ່ແມ່ນສູນ. ຄໍາຮ້ອງສະຫມັກຕ້ອງສະຫນອງ
ບໍລິບົດ OpenGL ແລະທັງ "window_size_cb" ແລະ "window_swap_buffers_cb" ໂທກັບຄືນເມື່ອ
ຕັ້ງ.

window_title
ກໍານົດຫົວຂໍ້ຫນ້າຕ່າງ SDL, ຖ້າບໍ່ໄດ້ກໍານົດໄວ້ໃນຕອນຕົ້ນຂອງຊື່ໄຟລ໌ທີ່ລະບຸໄວ້ສໍາລັບ
ອຸປະກອນຜົນຜະລິດ. ບໍ່ສົນໃຈເມື່ອໃດ no_window ຖືກກໍານົດ.

window_size
ກໍານົດຂະຫນາດປ່ອງຢ້ຽມທີ່ຕ້ອງການ, ສາມາດເປັນສາຍຂອງຮູບແບບ widthxheight ຫຼືຂະຫນາດວິດີໂອ
ຕົວຫຍໍ້. ຖ້າ​ຫາກ​ວ່າ​ບໍ່​ໄດ້​ລະ​ບຸ​ໄວ້​, ມັນ​ເປັນ​ຄ່າ​ເລີ່ມ​ຕົ້ນ​ກັບ​ຂະ​ຫນາດ​ຂອງ​ວິ​ດີ​ໂອ​ການ​ປ້ອນ​ຂໍ້​ມູນ​, downscaled​
ອີງຕາມອັດຕາສ່ວນ. ສ່ວນຫຼາຍແມ່ນສາມາດໃຊ້ໄດ້ເມື່ອ no_window ບໍ່ໄດ້ຕັ້ງ.

ຕົວຢ່າງ

ຫຼິ້ນໄຟລ໌ຢູ່ໃນປ່ອງຢ້ຽມ SDL ໂດຍໃຊ້ການສະແດງ OpenGL:

ffmpeg -i INPUT -f opengl "ຫົວຂໍ້ປ່ອງຢ້ຽມ"

oss
OSS (Open Sound System) ອຸປະກອນອອກ.

pulse
ອຸປະກອນອອກສຽງ PulseAudio.

ເພື່ອເປີດໃຊ້ອຸປະກອນຜົນຜະລິດນີ້, ທ່ານຈໍາເປັນຕ້ອງປັບຄ່າ FFmpeg ດ້ວຍ "--enable-libpulse".

ຂໍ້ມູນເພີ່ມເຕີມກ່ຽວກັບ PulseAudio ສາມາດພົບໄດ້ໃນhttp://www.pulseaudio.org>

ທາງເລືອກໃນການ

ເຄື່ອງແມ່ຂ່າຍ
ເຊື່ອມຕໍ່ກັບເຊີບເວີ PulseAudio ສະເພາະ, ລະບຸໂດຍທີ່ຢູ່ IP. ເຄື່ອງແມ່ຂ່າຍເລີ່ມຕົ້ນ
ຖືກນໍາໃຊ້ໃນເວລາທີ່ບໍ່ໄດ້ສະຫນອງໃຫ້.

ຊື່
ລະບຸຊື່ແອັບພລິເຄຊັນ PulseAudio ຈະໃຊ້ເມື່ອສະແດງລູກຄ້າທີ່ມີການເຄື່ອນໄຫວ, ໂດຍ
ຄ່າເລີ່ມຕົ້ນມັນແມ່ນສະຕຣິງ "LIBAVFORMAT_IDENT".

stream_name
ລະບຸຊື່ສະຕຣີມ PulseAudio ຈະໃຊ້ເມື່ອສະແດງການຖ່າຍທອດທີ່ເຄື່ອນໄຫວຢູ່, ໂດຍຄ່າເລີ່ມຕົ້ນມັນ
ຖືກຕັ້ງເປັນຊື່ຜົນຜະລິດທີ່ລະບຸ.

ອຸປະກອນ
ລະບຸອຸປະກອນທີ່ຈະໃຊ້. ອຸປະກອນເລີ່ມຕົ້ນແມ່ນໃຊ້ໃນເວລາທີ່ບໍ່ໄດ້ສະຫນອງໃຫ້. ບັນຊີລາຍຊື່ຜົນຜະລິດ
ອຸປະກອນສາມາດໄດ້ຮັບດ້ວຍຄໍາສັ່ງ pactl ບັນຊີລາຍຊື່ ບ່ອນຫລົ້ມຈົມ.

buffer_size
buffer_ໄລຍະເວລາ
ຄວບຄຸມຂະໜາດ ແລະໄລຍະເວລາຂອງ PulseAudio buffer. A buffer ຂະຫນາດນ້ອຍໃຫ້ຫຼາຍ
ການຄວບຄຸມ, ແຕ່ຮຽກຮ້ອງໃຫ້ມີການປັບປຸງເລື້ອຍໆ.

buffer_size ກໍານົດຂະຫນາດໃນ bytes ໃນຂະນະທີ່ buffer_ໄລຍະເວລາ ກໍານົດໄລຍະເວລາໃນ
ມິນລິວິນາທີ.

ເມື່ອທັງສອງທາງເລືອກໄດ້ຖືກສະຫນອງໃຫ້ຫຼັງຈາກນັ້ນມູນຄ່າສູງສຸດແມ່ນຖືກນໍາໃຊ້ (ໄລຍະເວລາແມ່ນ
ຄິດໄລ່ຄືນເປັນໄບຕ໌ໂດຍໃຊ້ຕົວກໍານົດການຖ່າຍທອດ). ຖ້າພວກເຂົາຖືກຕັ້ງເປັນ 0 (ເຊິ່ງແມ່ນ
default), ອຸປະກອນຈະໃຊ້ຄ່າໄລຍະເວລາ PulseAudio ເລີ່ມຕົ້ນ. ໂດຍຄ່າເລີ່ມຕົ້ນ
PulseAudio ກຳນົດໄລຍະເວລາບັບເຟີເປັນປະມານ 2 ວິນາທີ.

prebuf
ລະບຸຂະໜາດກ່ອນການເກັບຂໍ້ມູນເປັນໄບຕ໌. ເຊີບເວີບໍ່ໄດ້ເລີ່ມຕົ້ນດ້ວຍການຫຼິ້ນກ່ອນເວລາ
ຢ່າງຫນ້ອຍ prebuf bytes ແມ່ນມີຢູ່ໃນ buffer. ໂດຍຄ່າເລີ່ມຕົ້ນທາງເລືອກນີ້ແມ່ນເລີ່ມຕົ້ນ
ກັບຄ່າດຽວກັນກັບ buffer_size or buffer_ໄລຍະເວລາ (ອັນໃດໃຫຍ່ກວ່າ).

minreq
ລະບຸຂະໜາດການຮ້ອງຂໍຂັ້ນຕ່ຳເປັນໄບຕ໌. ເຄື່ອງແມ່ຂ່າຍບໍ່ໄດ້ຮ້ອງຂໍຫນ້ອຍກວ່າ minreq
bytes ຈາກລູກຄ້າ, ແທນທີ່ຈະລໍຖ້າຈົນກ່ວາ buffer ແມ່ນບໍ່ເສຍຄ່າພຽງພໍທີ່ຈະຮ້ອງຂໍເພີ່ມເຕີມ
bytes ໃນເວລາດຽວກັນ. ມັນແນະນໍາໃຫ້ບໍ່ຕັ້ງຕົວເລືອກນີ້, ເຊິ່ງຈະເລີ່ມຕົ້ນອັນນີ້
ຄ່າທີ່ເຊີບເວີຖືວ່າເໝາະສົມ.

ຕົວຢ່າງ

ຫຼິ້ນໄຟລ໌ຢູ່ໃນອຸປະກອນເລີ່ມຕົ້ນໃນເຊີບເວີເລີ່ມຕົ້ນ:

ffmpeg -i INPUT -f pulse "ຊື່ກະແສ"

sdl
ອຸປະກອນອອກ SDL (Simple DirectMedia Layer)

ອຸ​ປະ​ກອນ​ຜົນ​ຜະ​ລິດ​ນີ້​ອະ​ນຸ​ຍາດ​ໃຫ້​ຫນຶ່ງ​ສະ​ແດງ​ໃຫ້​ເຫັນ​ວິ​ດີ​ໂອ​ສະ​ຕ​ຣີມ​ຢູ່​ໃນ​ປ່ອງ​ຢ້ຽມ SDL​. ພຽງແຕ່ຫນຶ່ງປ່ອງຢ້ຽມ SDL
ແມ່ນອະນຸຍາດຕໍ່ແອັບພລິເຄຊັນ, ດັ່ງນັ້ນເຈົ້າສາມາດມີພຽງໜຶ່ງຕົວຢ່າງຂອງອຸປະກອນຜົນຜະລິດນີ້ໃນອັນ
ຄໍາຮ້ອງສະຫມັກ.

ເພື່ອເປີດໃຊ້ອຸປະກອນຜົນຜະລິດນີ້, ທ່ານ ຈຳ ເປັນຕ້ອງຕິດຕັ້ງ libsdl ໃນລະບົບຂອງທ່ານເມື່ອ ກຳ ນົດຄ່າ
ການ​ກໍ່​ສ້າງ​ຂອງ​ທ່ານ​.

ສໍາລັບຂໍ້ມູນເພີ່ມເຕີມກ່ຽວກັບ SDL, ກວດເບິ່ງ:http://www.libsdl.org/>

ທາງເລືອກໃນການ

window_title
ກໍານົດຫົວຂໍ້ຫນ້າຕ່າງ SDL, ຖ້າບໍ່ໄດ້ກໍານົດໄວ້ໃນຕອນຕົ້ນຂອງຊື່ໄຟລ໌ທີ່ລະບຸໄວ້ສໍາລັບ
ອຸປະກອນຜົນຜະລິດ.

icon_title
ຕັ້ງຊື່ຂອງຫນ້າຕ່າງ SDL ທີ່ເປັນສັນຍາລັກ, ຖ້າບໍ່ລະບຸມັນຈະຖືກຕັ້ງເປັນຄ່າດຽວກັນ
of window_title.

window_size
ກໍານົດຂະຫນາດປ່ອງຢ້ຽມ SDL, ສາມາດເປັນສາຍຂອງແບບຟອມ widthxລະດັບຄວາມສູງ ຫຼືຂະຫນາດວິດີໂອ
ຕົວຫຍໍ້. ຖ້າ​ຫາກ​ວ່າ​ບໍ່​ໄດ້​ລະ​ບຸ​ໄວ້​, ມັນ​ເປັນ​ຄ່າ​ເລີ່ມ​ຕົ້ນ​ກັບ​ຂະ​ຫນາດ​ຂອງ​ວິ​ດີ​ໂອ​ການ​ປ້ອນ​ຂໍ້​ມູນ​, downscaled​
ອີງຕາມອັດຕາສ່ວນ.

window_ເຕັມຈໍ
ຕັ້ງໂໝດເຕັມຈໍເມື່ອໃຫ້ຄ່າທີ່ບໍ່ແມ່ນສູນ. ຄ່າເລີ່ມຕົ້ນແມ່ນສູນ.

Interactive ຄໍາສັ່ງ

ປ່ອງຢ້ຽມທີ່ສ້າງຂຶ້ນໂດຍອຸປະກອນສາມາດຄວບຄຸມໄດ້ໂດຍຜ່ານການໂຕ້ຕອບດັ່ງຕໍ່ໄປນີ້
ຄຳ ສັ່ງ.

q, ESC
ອອກຈາກອຸປະກອນທັນທີ.

ຕົວຢ່າງ

ຄໍາສັ່ງຕໍ່ໄປນີ້ສະແດງໃຫ້ເຫັນ ffmpeg ຜົນ​ຜະ​ລິດ​ແມ່ນ​ປ່ອງ​ຢ້ຽມ SDL​, ບັງ​ຄັບ​ຂະ​ຫນາດ​ຂອງ​ຕົນ​ເປັນ​
ຮູບແບບ qcif:

ffmpeg -i INPUT -vcodec rawvideo -pix_fmt yuv420p -window_size qcif -f sdl "ຜົນຜະລິດ SDL"

sndio
ອຸປະກອນອອກສຽງ sndio.

xv
ອຸປະກອນອອກ XV (XVideo).

ອຸ​ປະ​ກອນ​ຜົນ​ຜະ​ລິດ​ນີ້​ອະ​ນຸ​ຍາດ​ໃຫ້​ຫນຶ່ງ​ເພື່ອ​ສະ​ແດງ​ໃຫ້​ເຫັນ​ວິ​ດີ​ໂອ​ໃນ​ປ່ອງ​ຢ້ຽມ X Window System​.

ທາງເລືອກໃນການ

display_name
ລະບຸຊື່ສະແດງຮາດແວ, ເຊິ່ງກໍານົດການສະແດງຜົນແລະການສື່ສານ
ໂດເມນທີ່ຈະໃຊ້.

ຊື່ສະແດງ ຫຼືຕົວແປສະພາບແວດລ້ອມ DISPLAY ສາມາດເປັນສະຕຣິງໃນຮູບແບບ
hostname[:ຈໍານວນ[.ໝາຍເລກໜ້າຈໍ]].

hostname ລະບຸຊື່ຂອງເຄື່ອງໂຮດທີ່ຈໍສະແດງຜົນແມ່ນທາງດ້ານຮ່າງກາຍ
ຕິດ. ຈໍານວນ ລະບຸຈໍານວນເຄື່ອງແມ່ຂ່າຍສະແດງຢູ່ໃນເຄື່ອງໂຮດນັ້ນ.
ໝາຍເລກໜ້າຈໍ ລະບຸໜ້າຈໍທີ່ຈະໃຊ້ໃນເຊີບເວີນັ້ນ.

ຖ້າບໍ່ໄດ້ລະບຸ, ມັນຈະເປັນຄ່າເລີ່ມຕົ້ນຂອງຕົວແປສະພາບແວດລ້ອມ DISPLAY.

ຕົວຢ່າງ, "dual-headed:0.1" ຈະລະບຸໜ້າຈໍ 1 ຂອງຈໍສະແດງຜົນ 0 ໃນເຄື່ອງ
ຊື່ວ່າ 'ຫົວສອງ'.

ກວດເບິ່ງສະເພາະ X11 ສໍາລັບລາຍລະອຽດເພີ່ມເຕີມກ່ຽວກັບຊື່ສະແດງ
ຮູບແບບ.

window_id
ເມື່ອຕັ້ງເປັນຄ່າທີ່ບໍ່ແມ່ນສູນ, ອຸປະກອນຈະບໍ່ສ້າງປ່ອງຢ້ຽມໃຫມ່, ແຕ່ໃຊ້ທີ່ມີຢູ່ແລ້ວ
ຫນຶ່ງທີ່ມີສະຫນອງໃຫ້ window_id. ໂດຍຄ່າເລີ່ມຕົ້ນຕົວເລືອກນີ້ຖືກຕັ້ງເປັນສູນ ແລະອຸປະກອນຈະສ້າງ
ປ່ອງ​ຢ້ຽມ​ຂອງ​ຕົນ​ເອງ​.

window_size
ກໍານົດຂະຫນາດຂອງປ່ອງຢ້ຽມທີ່ສ້າງ, ສາມາດເປັນສາຍຂອງແບບຟອມ widthxລະດັບຄວາມສູງ ຫຼືຂະຫນາດວິດີໂອ
ຕົວຫຍໍ້. ຖ້າ​ຫາກ​ວ່າ​ບໍ່​ໄດ້​ລະ​ບຸ​ໄວ້​, ມັນ​ເປັນ​ມາດ​ຕະ​ຖານ​ຂະ​ຫນາດ​ຂອງ​ວິ​ດີ​ໂອ​ການ​ປ້ອນ​ຂໍ້​ມູນ​. ບໍ່ສົນໃຈ
ໃນເວລາທີ່ window_id ຖືກກໍານົດ.

window_x
window_y
ກໍານົດການຊົດເຊີຍປ່ອງຢ້ຽມ X ແລະ Y ສໍາລັບປ່ອງຢ້ຽມທີ່ສ້າງຂຶ້ນ. ພວກເຂົາທັງສອງຖືກຕັ້ງຄ່າເປັນ 0 ໂດຍ
ຄ່າເລີ່ມຕົ້ນ. ຄ່າດັ່ງກ່າວອາດຈະຖືກລະເລີຍໂດຍຕົວຈັດການໜ້າຈໍ. ບໍ່ສົນໃຈເມື່ອໃດ window_id is
ຕັ້ງ.

window_title
ກໍານົດຫົວຂໍ້ປ່ອງຢ້ຽມ, ຖ້າບໍ່ໄດ້ກໍານົດໄວ້ໃນຕອນຕົ້ນຂອງຊື່ໄຟລ໌ທີ່ລະບຸໄວ້ສໍາລັບ
ອຸປະກອນຜົນຜະລິດ. ບໍ່ສົນໃຈເມື່ອໃດ window_id ຖືກກໍານົດ.

ສໍາລັບຂໍ້ມູນເພີ່ມເຕີມກ່ຽວກັບ XVideo ເບິ່ງhttp://www.x.org/>.

ຕົວຢ່າງ

·ຖອດລະຫັດ, ສະແດງແລະເຂົ້າລະຫັດວິດີໂອເຂົ້າກັບ ffmpeg ໃນ​ເວ​ລາ​ດຽວ​ກັນ:

ffmpeg -i INPUT OUTPUT -f xv ຈໍສະແດງຜົນ

· ຖອດ​ລະ​ຫັດ​ແລະ​ສະ​ແດງ​ວິ​ດີ​ໂອ​ການ​ປ້ອນ​ຂໍ້​ມູນ​ກັບ​ປ່ອງ​ຢ້ຽມ X11 ຫຼາຍ​:

ffmpeg -i INPUT -f xv ປົກກະຕິ -vf negate -f xv negated

ຮຽກເກັບຄືນ OPTIONS


ຕົວເກັບຕົວຢ່າງສຽງສະຫນັບສະຫນູນຕົວເລືອກທີ່ມີຊື່ຕໍ່ໄປນີ້.

ທາງເລືອກອາດຈະຖືກກໍານົດໂດຍການລະບຸ -ທາງເລືອກ ມູນຄ່າ ໃນ​ເຄື່ອງ​ມື FFmpeg​, ທາງເລືອກ=ມູນຄ່າ ສໍາ​ລັບ
ການກັ່ນຕອງຕົວຢ່າງ, ໂດຍການຕັ້ງຄ່າຢ່າງຊັດເຈນໃນຕົວເລືອກ "SwrContext" ຫຼືໃຊ້
libavutil/opt.h API ສໍາລັບການນໍາໃຊ້ໂປຼແກຼມ.

ອິກ, in_channel_count
ກໍານົດຈໍານວນຂອງຊ່ອງທາງການປ້ອນຂໍ້ມູນ. ຄ່າເລີ່ມຕົ້ນແມ່ນ 0. ການຕັ້ງຄ່ານີ້ບໍ່ແມ່ນ
ບັງຄັບຖ້າຫາກວ່າຮູບແບບຊ່ອງທາງທີ່ສອດຄ້ອງກັນ in_channel_layout ຖືກກໍານົດ.

ໂອ້ຍ, out_channel_count
ກໍານົດຈໍານວນຂອງຊ່ອງທາງຜົນຜະລິດ. ຄ່າເລີ່ມຕົ້ນແມ່ນ 0. ການຕັ້ງຄ່ານີ້ບໍ່ແມ່ນ
ບັງຄັບຖ້າຫາກວ່າຮູບແບບຊ່ອງທາງທີ່ສອດຄ້ອງກັນ out_channel_layout ຖືກກໍານົດ.

ອູ່, used_channel_count
ກໍານົດຈໍານວນຊ່ອງປ້ອນຂໍ້ມູນທີ່ໃຊ້ແລ້ວ. ຄ່າເລີ່ມຕົ້ນແມ່ນ 0. ຕົວເລືອກນີ້ຖືກນໍາໃຊ້ເທົ່ານັ້ນ
ສໍາລັບ remapping ພິເສດ.

isr, in_sample_rate
ກໍານົດອັດຕາຕົວຢ່າງການປ້ອນຂໍ້ມູນ. ຄ່າເລີ່ມຕົ້ນແມ່ນ 0.

osr, out_sample_rate
ກໍານົດອັດຕາຕົວຢ່າງຜົນຜະລິດ. ຄ່າເລີ່ມຕົ້ນແມ່ນ 0.

isf, in_sample_fmt
ລະບຸຮູບແບບການປ້ອນຂໍ້ມູນຕົວຢ່າງ. ມັນຖືກກໍານົດໂດຍຄ່າເລີ່ມຕົ້ນເປັນ "ບໍ່ມີ".

osf, out_sample_fmt
ລະບຸຮູບແບບຕົວຢ່າງຜົນຜະລິດ. ມັນຖືກກໍານົດໂດຍຄ່າເລີ່ມຕົ້ນເປັນ "ບໍ່ມີ".

tsf, internal_sample_fmt
ກໍານົດຮູບແບບຕົວຢ່າງພາຍໃນ. ຄ່າເລີ່ມຕົ້ນແມ່ນ "ບໍ່ມີ". ນີ້​ຈະ​ເປັນ​ອັດ​ຕະ​ໂນ​ມັດ​
ເລືອກໃນເວລາທີ່ມັນບໍ່ໄດ້ຖືກຕັ້ງຢ່າງຊັດເຈນ.

IC, in_channel_layout
ocl, out_channel_layout
ຕັ້ງ​ຮູບ​ແບບ​ຊ່ອງ​ປ້ອນ​ຂໍ້​ມູນ​ແລະ​ຜົນ​ຜະ​ລິດ​.

ເບິ່ງ ໄດ້ Channel Layout ສ່ວນ in ໄດ້ ffmpeg-utils(1​) ຄູ່ມື ສໍາລັບ syntax ທີ່ຕ້ອງການ.

ປາຍ, center_mix_level
ກໍານົດລະດັບການປະສົມສູນກາງ. ມັນເປັນຄ່າທີ່ສະແດງອອກໃນ deciBel, ແລະຕ້ອງຢູ່ໃນ
ໄລຍະຫ່າງ [-32,32].

ເລື່ອນ, surround_mix_level
ຕັ້ງ​ລະ​ດັບ​ການ​ປະ​ສົມ​ອ້ອມ​ຂ້າງ​. ມັນເປັນຄ່າທີ່ສະແດງອອກໃນ deciBel, ແລະຕ້ອງຢູ່ໃນ
ໄລຍະຫ່າງ [-32,32].

lfe_mix_level
ກໍານົດການປະສົມ LFE ເຂົ້າໄປໃນລະດັບທີ່ບໍ່ແມ່ນ LFE. ມັນຖືກນໍາໃຊ້ໃນເວລາທີ່ມີການປ້ອນຂໍ້ມູນ LFE ແຕ່ບໍ່ມີ LFE
ຜົນຜະລິດ. ມັນເປັນຄ່າທີ່ສະແດງອອກໃນ deciBel, ແລະຕ້ອງຢູ່ໃນໄລຍະ [-32,32].

rmvol, rematrix_volume
ຕັ້ງລະດັບສຽງ rematrix. ຄ່າເລີ່ມຕົ້ນແມ່ນ 1.0.

rematrix_maxval
ກໍານົດຄ່າຜົນຜະລິດສູງສຸດສໍາລັບການ rematrixing. ນີ້ສາມາດຖືກນໍາໃຊ້ເພື່ອປ້ອງກັນບໍ່ໃຫ້ clipping vs.
ການ​ປ້ອງ​ກັນ​ການ​ຫຼຸດ​ຜ່ອນ​ປະ​ລິ​ມານ​ການ A ຄ່າ​ຂອງ 1.0 ປ້ອງ​ກັນ​ການ cliping​.

ທຸງ, swr_flags
ຕັ້ງທຸງທີ່ໃຊ້ໂດຍຕົວແປງສັນຍານ. ຄ່າເລີ່ມຕົ້ນແມ່ນ 0.

ມັນສະຫນັບສະຫນູນທຸງສ່ວນບຸກຄົນດັ່ງຕໍ່ໄປນີ້:

res ບັງຄັບ resampling, ທຸງນີ້ບັງຄັບ resampling ຖືກນໍາໃຊ້ເຖິງແມ່ນວ່າໃນເວລາທີ່ input ແລະ
ອັດຕາຕົວຢ່າງຜົນຜະລິດກົງກັນ.

dither_scale
ກໍານົດຂະຫນາດ dither. ຄ່າເລີ່ມຕົ້ນແມ່ນ 1.

dither_method
ກໍານົດວິທີການ dither. ຄ່າເລີ່ມຕົ້ນແມ່ນ 0.

ຄ່າທີ່ຮອງຮັບ:

ສີ່ຫລ່ຽມ
ເລືອກຮູບສີ່ຫຼ່ຽມມົນ

ສາມຫຼ່ຽມ
ເລືອກຮູບສາມຫລ່ຽມ dither

triangular_hp
ເລືອກຮູບສາມຫລ່ຽມ dither ມີ pass ສູງ

ລິບຊິສ
ເລືອກ lipshitz ສິ່ງລົບກວນຮູບຮ່າງ dither

ຊິບາຕາ
ເລືອກ shibata noise shaping dither

low_shibata
ເລືອກ shibata ຕ່ໍາຮູບຮ່າງ disther

high_shibata
ເລືອກຮູບຮ່າງ shibata ສູງ dither

f_weighted
ເລືອກ f-weighted noise shaping dither

modified_e_weighted
ເລືອກ​ການ​ປັບ​ປຸງ​ແກ້​ໄຂ​ສິ່ງ​ລົບ​ກວນ​ທີ່​ມີ​ນ​້​ໍາ​ຫນັກ dither​

ປັບປຸງ e_weighted
ເລືອກ​ການ​ປັບ​ປຸງ​ການ​ປັບ​ປຸງ​ຮູບ​ແບບ​ສິ່ງ​ລົບ​ກວນ e​-ນ​້​ໍາ​ຫນັກ dither​

ຕົວຕົວຢ່າງ
ຕັ້ງຄ່າເຄື່ອງຈັກ resampling. ຄ່າເລີ່ມຕົ້ນແມ່ນ swr.

ຄ່າທີ່ຮອງຮັບ:

swr ເລືອກ SW Resampler ພື້ນເມືອງ; ທາງເລືອກການກັ່ນຕອງແມ່ນຍໍາແລະ cheby ບໍ່ແມ່ນ
ໃຊ້ໄດ້ໃນກໍລະນີນີ້.

soxr
ເລືອກ SoX Resampler (ບ່ອນມີຢູ່); ການຊົດເຊີຍ, ແລະຕົວເລືອກການກັ່ນຕອງ
filter_size, phase_shift, filter_type & kaiser_beta, ແມ່ນໃຊ້ບໍ່ໄດ້ໃນເລື່ອງນີ້.
ກໍລະນີ.

filter_size
ສໍາລັບ swr ເທົ່ານັ້ນ, ກໍານົດຂະຫນາດການກັ່ນຕອງ resampling, ຄ່າເລີ່ມຕົ້ນແມ່ນ 32.

phase_shift
ສໍາລັບ swr ເທົ່ານັ້ນ, ກໍານົດ resampling phase shift, ຄ່າເລີ່ມຕົ້ນແມ່ນ 10, ແລະຕ້ອງຢູ່ໃນ
ໄລຍະຫ່າງ [0,30].

linear_interp
ໃຊ້ Linear Interpolation ຖ້າຕັ້ງເປັນ 1, ຄ່າເລີ່ມຕົ້ນແມ່ນ 0.

ຕັດ​ອອກ
ກໍານົດຄວາມຖີ່ຕັດ (swr: ຈຸດ 6dB; soxr: ຈຸດ 0dB) ອັດຕາສ່ວນ; ຕ້ອງເປັນຄ່າລອຍ
ລະຫວ່າງ 0 ແລະ 1. ຄ່າເລີ່ມຕົ້ນແມ່ນ 0.97 ກັບ swr, ແລະ 0.91 ກັບ soxr (ເຊິ່ງ, ມີ a
ອັດຕາຕົວຢ່າງຂອງ 44100, ຮັກສາແຖບສຽງທັງຫມົດໃຫ້ 20kHz).

ຄວາມຖືກຕ້ອງ
ສໍາລັບ soxr ເທົ່ານັ້ນ, ຄວາມແມ່ນຍໍາໃນ bits ທີ່ສັນຍານ resampled ຈະຖືກຄິດໄລ່.
ຄ່າເລີ່ມຕົ້ນຂອງ 20 (ເຊິ່ງ, ມີການບິດເບືອນທີ່ເຫມາະສົມ, ເຫມາະສົມກັບ a
ຈຸດຫມາຍປາຍທາງ bit-depth ຂອງ 16) ໃຫ້ SoX ຂອງ 'ຄຸນນະພາບສູງ'; ຄ່າຂອງ 28 ໃຫ້ SoX's
'ຄຸນະພາບສູງຫຼາຍ'.

cheby
ສຳລັບ soxr ເທົ່ານັ້ນ, ເລືອກ passband rolloff none (Chebyshev) ແລະ ຄວາມຊັດເຈນສູງກວ່າ
ການປະມານສໍາລັບອັດຕາສ່ວນ 'ບໍ່ສົມເຫດສົມຜົນ'. ຄ່າເລີ່ມຕົ້ນແມ່ນ 0.

async
ສໍາລັບ swr ເທົ່ານັ້ນ, ງ່າຍດາຍ 1 ພາລາມິເຕີສຽງ sync ກັບ timestamps ໂດຍໃຊ້ stretching, squeezing,
ການຕື່ມແລະການຕັດ. ການຕັ້ງຄ່ານີ້ເປັນ 1 ຈະເຮັດໃຫ້ການຕື່ມຂໍ້ມູນ ແລະການຕັດ, ຂະຫນາດໃຫຍ່ກວ່າ
ຄ່າສະແດງເຖິງຈໍານວນສູງສຸດໃນຕົວຢ່າງທີ່ຂໍ້ມູນອາດຈະຖືກຍືດຍາວຫຼື
ບີບສໍາລັບແຕ່ລະວິນາທີ. ຄ່າເລີ່ມຕົ້ນແມ່ນ 0, ດັ່ງນັ້ນຈຶ່ງບໍ່ມີການຊົດເຊີຍໃດໆທີ່ຈະເຮັດ
ຕົວຢ່າງກົງກັບເວລາສຽງ.

first_pts
ສໍາລັບ swr ເທົ່ານັ້ນ, ສົມມຸດວ່າ pts ທໍາອິດຄວນຈະເປັນຄ່ານີ້. ຫນ່ວຍເວລາແມ່ນ 1 / ຕົວຢ່າງ
ອັດຕາ. ນີ້ອະນຸຍາດໃຫ້ສໍາລັບການ padding / trimming ໃນຕອນເລີ່ມຕົ້ນຂອງນ້ໍາ. ໂດຍຄ່າເລີ່ມຕົ້ນ, ບໍ່
ການສົມມຸດຕິຖານແມ່ນກ່ຽວກັບ pts ທີ່ຄາດຫວັງຂອງກອບທໍາອິດ, ດັ່ງນັ້ນບໍ່ມີ padding ຫຼື trimming ແມ່ນ
ສຳເລັດແລ້ວ. ຕົວຢ່າງ, ນີ້ສາມາດຖືກຕັ້ງເປັນ 0 ເພື່ອ pad ເລີ່ມຕົ້ນດ້ວຍ silence ຖ້າ an
ການຖ່າຍທອດສຽງເລີ່ມຕົ້ນຫຼັງຈາກການຖ່າຍທອດວິດີໂອ ຫຼືເພື່ອຕັດຕົວຢ່າງໃດໜຶ່ງດ້ວຍຈຸດລົບ
ເນື່ອງຈາກຄວາມລ່າຊ້າຂອງຕົວເຂົ້າລະຫັດ.

min_comp
ສໍາລັບ swr ເທົ່ານັ້ນ, ກໍານົດຄວາມແຕກຕ່າງຕໍາ່ສຸດທີ່ລະຫວ່າງເວລາແລະຂໍ້ມູນສຽງ (in
ວິ​ນາ​ທີ​) ເພື່ອ​ກະ​ຕຸ້ນ​ໃຫ້ stretching/squeezing/ຕື່ມ​ຫຼື trimming ຂອງ​ຂໍ້​ມູນ​ທີ່​ຈະ​ເຮັດ​ໃຫ້​ມັນ​
ກົງກັບເວລາ. ຄ່າເລີ່ມຕົ້ນແມ່ນວ່າ stretching/squeezing/filling and trimming is
ຄົນພິການ (min_comp = "FLT_MAX").

min_hard_comp
ສໍາລັບ swr ເທົ່ານັ້ນ, ກໍານົດຄວາມແຕກຕ່າງຕໍາ່ສຸດທີ່ລະຫວ່າງເວລາແລະຂໍ້ມູນສຽງ (in
ວິນາທີ) ເພື່ອກະຕຸ້ນການເພີ່ມ/ຫຼຸດລົງຕົວຢ່າງເພື່ອເຮັດໃຫ້ມັນກົງກັບເວລາ. ນີ້
ທາງ​ເລືອກ​ທີ່​ມີ​ປະ​ສິດ​ທິ​ຜົນ​ແມ່ນ​ເກນ​ທີ່​ຈະ​ເລືອກ​ເອົາ​ລະ​ຫວ່າງ​ແຂງ (trim / ຕື່ມ​ຂໍ້​ມູນ​) ແລະ​ອ່ອນ​
(ບີບ/ຍືດ) ການຊົດເຊີຍ. ໃຫ້ສັງເກດວ່າການຊົດເຊີຍທັງຫມົດແມ່ນຖືກປິດໄວ້ໃນຕອນຕົ້ນ
ໂດຍຜ່ານການ min_comp. ຄ່າເລີ່ມຕົ້ນແມ່ນ 0.1.

comp_duration
ສໍາລັບ swr ເທົ່ານັ້ນ, ກໍານົດໄລຍະເວລາ (ເປັນວິນາທີ) ໃນໄລຍະທີ່ຂໍ້ມູນຖືກ stretched/squeezed ເພື່ອເຮັດໃຫ້
ມັນກົງກັບເວລາ. ຕ້ອງເປັນຄ່າລອຍຄູ່ທີ່ບໍ່ແມ່ນລົບ, ຄ່າເລີ່ມຕົ້ນແມ່ນ
1.0​.

max_soft_comp
ສໍາລັບ swr ເທົ່ານັ້ນ, ໃຫ້ກໍານົດປັດໄຈສູງສຸດທີ່ຂໍ້ມູນຖືກຍືດອອກ / ບີບເພື່ອເຮັດໃຫ້ມັນກົງກັນ
ສະແຕມເວລາ. ຕ້ອງເປັນຄ່າລອຍຄູ່ທີ່ບໍ່ແມ່ນລົບ, ຄ່າເລີ່ມຕົ້ນແມ່ນ 0.

matrix_encoding
ເລືອກການເຂົ້າລະຫັດສະເຕີຣິໂອເມທຣິກ.

ມັນຍອມຮັບຄ່າດັ່ງຕໍ່ໄປນີ້:

none
ເລືອກບໍ່

ປາບຶກ
ເລືອກ Dolby

dplii
ເລືອກ Dolby Pro Logic II

ຄ່າເລີ່ມຕົ້ນແມ່ນ "ບໍ່ມີ".

filter_type
ສໍາລັບ swr ເທົ່ານັ້ນ, ເລືອກປະເພດການກັ່ນຕອງຄືນໃຫມ່. ນີ້ມີຜົນກະທົບພຽງແຕ່ການດໍາເນີນການຕົວຢ່າງໃຫມ່.

ມັນຍອມຮັບຄ່າດັ່ງຕໍ່ໄປນີ້:

ລູກບາດ
ເລືອກ cubic

blackman_nuttall
ເລືອກ Blackman Nuttall Windowed Sinc

Kaiser
ເລືອກ Kaiser Windowed Sinc

kaiser_beta
ສໍາລັບ swr ເທົ່ານັ້ນ, ຕັ້ງຄ່າ Kaiser Window Beta. ຕ້ອງເປັນຈຳນວນເຕັມໃນໄລຍະ [2,16],
ຄ່າເລີ່ມຕົ້ນແມ່ນ 9.

output_sample_bits
ສໍາລັບ swr ເທົ່ານັ້ນ, ກໍານົດຈໍານວນຕົວຢ່າງຜົນຜະລິດທີ່ໃຊ້ສໍາລັບການ dithering. ຕ້ອງເປັນຈຳນວນເຕັມ
ໃນໄລຍະເວລາ [0,64], ຄ່າເລີ່ມຕົ້ນແມ່ນ 0, ຊຶ່ງຫມາຍຄວາມວ່າມັນບໍ່ຖືກນໍາໃຊ້.

ເຄື່ອງສະແກນ OPTIONS


ຕົວຂະຫຍາຍວິດີໂອຮອງຮັບຕົວເລືອກທີ່ມີຊື່ຕໍ່ໄປນີ້.

ທາງເລືອກອາດຈະຖືກກໍານົດໂດຍການລະບຸ -ທາງເລືອກ ມູນຄ່າ ໃນ​ເຄື່ອງ​ມື FFmpeg​. ສໍາ​ລັບ​ການ​ນໍາ​ໃຊ້​ໂຄງ​ການ​,
ພວກເຂົາສາມາດຖືກກໍານົດຢ່າງຊັດເຈນໃນຕົວເລືອກ "SwsContext" ຫຼືຜ່ານ libavutil/opt.h API

sws_flags
ກໍານົດທຸງ scaler. ອັນນີ້ຍັງຖືກໃຊ້ເພື່ອກໍານົດວິທີການປັບຂະໜາດ. ພຽງ​ແຕ່​ດຽວ​
algorithm ຄວນຖືກເລືອກ.

ມັນຍອມຮັບຄ່າດັ່ງຕໍ່ໄປນີ້:

fast_bilinear
ເລືອກ​ວິ​ທີ​ການ​ຂະ​ຫຍາຍ bilinear ໄວ​.

bilinear
ເລືອກຂັ້ນຕອນການປັບຂະໜາດສອງເສັ້ນ.

bicubic
ເລືອກສູດການຄິດໄລ່ Bicubic.

ທົດລອງ
ເລືອກຂັ້ນຕອນການປັບຂະໜາດທົດລອງ.

ບ້ານໃກ້ເຮືອນຄຽງ
ເລືອກຂັ້ນຕອນການປັບຂະໜາດຂອງເພື່ອນບ້ານທີ່ໃກ້ທີ່ສຸດ.

ພື້ນທີ່
ເລືອກສູດການຄິດໄລ່ພື້ນທີ່ສະເລ່ຍ.

ບີຄິບລິນ
ເລືອກ​ວິ​ທີ​ການ​ຂະ​ຫຍາຍ bicubic ສໍາ​ລັບ​ອົງ​ປະ​ກອບ luma​, bilinear ສໍາ​ລັບ chroma
ສ່ວນປະກອບ

gaussian
ເລືອກສູດການຄິດໄລ່ການຂະຫຍາຍ Gaussian.

ສັງກະສີ
ເລືອກສູດການຄິດໄລ່ rescaling sinc.

Lanczos
ເລືອກ lanczos rescaling algorithm.

spline
ເລືອກ​ວິ​ທີ​ການ​ປັບ​ຂະ​ບວນ​ການ​ຂະ​ບວນ​ການ Bicubic spline ທໍາ​ມະ​ຊາດ​.

print_info
ເປີດໃຊ້ການພິມ/ບັນທຶກການດີບັ໊ກ.

ຖືກຕ້ອງ_rnd
ເປີດໃຊ້ການຮອບທີ່ຖືກຕ້ອງ.

full_chroma_int
ເປີດໃຊ້ການປະສົມໂຄຣມາເຕັມ.

full_chroma_inp
ເລືອກການປ້ອນຂໍ້ມູນ chroma ເຕັມ.

bitexact
ເປີດໃຊ້ bitexact output.

srcw
ກໍານົດຄວາມກວ້າງຂອງແຫຼ່ງ.

srch
ຕັ້ງຄວາມສູງຂອງແຫຼ່ງ.

dstw
ຕັ້ງຄວາມກວ້າງປາຍທາງ.

dsth
ຕັ້ງຄວາມສູງປາຍທາງ.

src_format
ກໍານົດຮູບແບບ pixels ລວງຂອງແຫຼ່ງ (ຕ້ອງສະແດງອອກເປັນຈໍານວນເຕັມ).

dst_format
ກໍານົດຮູບແບບ pixel ປາຍທາງ (ຕ້ອງສະແດງອອກເປັນຈໍານວນເຕັມ).

src_range
ເລືອກຊ່ວງແຫຼ່ງ.

dst_range
ເລືອກໄລຍະປາຍທາງ.

param0, param1
ຕັ້ງຄ່າພາລາມິເຕີ algorithm ຂະຫຍາຍ. ຄ່າທີ່ລະບຸໄວ້ແມ່ນສະເພາະຂອງການປັບຂະໜາດບາງອັນ
ຂັ້ນຕອນວິທີ ແລະຖືກລະເລີຍໂດຍຜູ້ອື່ນ. ຄ່າທີ່ລະບຸແມ່ນຕົວເລກຈຸດລອຍ
ຄ່າ.

sws_dither
ກໍານົດວິທີການ dithering. ຍອມຮັບຫນຶ່ງໃນຄ່າຕໍ່ໄປນີ້. ຄ່າເລີ່ມຕົ້ນແມ່ນ
ອັດຕະໂນມັດ.

ອັດຕະໂນມັດ
ທາງ​ເລືອກ​ອັດ​ຕະ​ໂນ​ມັດ​

none
ບໍ່ມີ dithering

bayer
bayer dither

ed ການແຜ່ກະຈາຍຄວາມຜິດພາດ dither

a_dither
ເລກຄະນິດສາດ dither, ອີງໃສ່ການເພີ່ມເຕີມ

x_dither
ເລກຄະນິດສາດ dither, ອີງໃສ່ການນໍາໃຊ້ xor (ຫຼາຍແບບສຸ່ມ / ຫນ້ອຍປາກົດຂື້ນວ່າ
a_dither).

ຕົວພິມຫຍໍ້
ຕັ້ງຄ່າການຜະສົມອັນຟາເພື່ອໃຊ້ເມື່ອອິນພຸດມີອັນຟາ ແຕ່ຜົນອອກມາບໍ່ເປັນ.
ຄ່າເລີ່ມຕົ້ນແມ່ນ none.

ເອກະພາບ_ສີ
ປະສົມໃສ່ສີພື້ນຫຼັງທີ່ເປັນເອກະພາບ

checkerboard
ປະສົມໃສ່ກະດານ checkerboard

none
ບໍ່ມີການປະສົມ

ການຍື່ນ ພາກສະເຫນີ


ການກັ່ນຕອງໃນ FFmpeg ຖືກເປີດໃຊ້ຜ່ານຫ້ອງສະຫມຸດ libavfilter.

ໃນ libavfilter, ການກັ່ນຕອງສາມາດມີຫຼາຍ inputs ແລະຫຼາຍຜົນໄດ້ຮັບ. ເພື່ອສະແດງໃຫ້ເຫັນເຖິງ
ປະເພດຂອງສິ່ງທີ່ເປັນໄປໄດ້, ພວກເຮົາພິຈາລະນາການກັ່ນຕອງຕໍ່ໄປນີ້.

[ຫຼັກ]
input --> split ----------------------> overlay --> output
| ^
|[tmp] [flip]|
+-----> crop --> vflip -------+

ກັ່ນ​ຕອງ​ນີ້​ແຍກ​ສະ​ຕ​ຣີມ​ປ້ອນ​ຂໍ້​ມູນ​ອອກ​ເປັນ​ສອງ​ສະ​ຕ​ຣີມ​, ຫຼັງ​ຈາກ​ນັ້ນ​ສົ່ງ​ສະ​ຕ​ຣີມ​ຫນຶ່ງ​ໂດຍ​ຜ່ານ​ການ​
ການ​ກັ່ນ​ຕອງ​ການ​ປູກ​ພືດ​ແລະ​ຕົວ​ກັ່ນ​ຕອງ vflip​, ກ່ອນ​ທີ່​ຈະ​ລວມ​ມັນ​ກັບ​ຄືນ​ໄປ​ບ່ອນ​ອື່ນໆ​ໂດຍ​
overlaying ມັນຢູ່ເທິງ. ທ່ານສາມາດນໍາໃຊ້ຄໍາສັ່ງຕໍ່ໄປນີ້ເພື່ອບັນລຸເປົ້າຫມາຍນີ້:

ffmpeg -i INPUT -vf "split [main][tmp]; [tmp] crop=iw:ih/2:0:0, vflip [flip]; [main][flip] overlay=0:H/2" OUTPUT

ຜົນໄດ້ຮັບຈະເປັນວ່າເຄິ່ງເທິງຂອງວິດີໂອແມ່ນ mirrored ໃສ່ເຄິ່ງຫນຶ່ງຂອງລຸ່ມສຸດຂອງ
ວິດີໂອຜົນຜະລິດ.

ການກັ່ນຕອງຢູ່ໃນລະບົບຕ່ອງໂສ້ເສັ້ນດຽວກັນຖືກແຍກອອກດ້ວຍເຄື່ອງໝາຍຈຸດ, ແລະຕ່ອງໂສ້ເສັ້ນຊື່ທີ່ແຕກຕ່າງຂອງ
ຕົວກອງຖືກແຍກອອກດ້ວຍເຄື່ອງໝາຍຈຸດ. ໃນຕົວຢ່າງຂອງພວກເຮົາ, ການປູກພືດ, vflip ແມ່ນ​ຢູ່​ໃນ​ຕ່ອງ​ໂສ້​ເສັ້ນ​ດຽວ​ກັນ​,
ແບ່ງປັນ ແລະ overlay ແມ່ນແຍກຕ່າງຫາກຢູ່ໃນອັນອື່ນ. ຈຸດທີ່ຕ່ອງໂສ້ເສັ້ນຊື່ເຂົ້າຮ່ວມແມ່ນ
ຕິດສະຫຼາກດ້ວຍຊື່ທີ່ຕິດຢູ່ໃນວົງເລັບສີ່ຫຼ່ຽມ. ໃນຕົວຢ່າງ, ການກັ່ນຕອງການແບ່ງປັນສ້າງ
ສອງຜົນໄດ້ຮັບທີ່ກ່ຽວຂ້ອງກັບປ້າຍຊື່ [ຫຼັກ] ແລະ [tmp].

ນ້ໍາຖືກສົ່ງໄປຫາຜົນຜະລິດທີສອງຂອງ ແບ່ງປັນ, ຕິດ​ສະ​ຫຼາກ​ເປັນ [tmp], ຖືກປຸງແຕ່ງໂດຍຜ່ານ
ການປູກພືດ ຕົວກອງ, ເຊິ່ງຕັດສ່ວນເຄິ່ງລຸ່ມຂອງວິດີໂອ, ແລະຈາກນັ້ນຕາມແນວຕັ້ງ
ພິກ. ໄດ້ overlay ການກັ່ນຕອງເອົາເຂົ້າໃນການປ້ອນຂໍ້ມູນທໍາອິດທີ່ບໍ່ປ່ຽນແປງຂອງການກັ່ນຕອງແຍກ
(ຊຶ່ງ​ໄດ້​ຖືກ​ຕິດ​ສະ​ຫຼາກ​ເປັນ [ຫຼັກ]), ແລະ overlay ສຸດເຄິ່ງຫນຶ່ງຂອງຕົນຕ່ໍາຜົນຜະລິດທີ່ສ້າງຂຶ້ນໂດຍ
ການປູກພືດ, vflip filterchain.

ບາງຕົວກອງເອົາເຂົ້າໃນບັນຊີລາຍຊື່ຂອງຕົວກໍານົດການ: ພວກມັນຖືກກໍານົດຫຼັງຈາກຊື່ການກັ່ນຕອງ
ແລະເຄື່ອງຫມາຍເທົ່າທຽມກັນ, ແລະຖືກແຍກອອກຈາກກັນແລະກັນໂດຍຈໍ້າສອງເມັດ.

ມີອັນທີ່ເອີ້ນວ່າ ແຫຼ່ງ ຕົວກອງ ທີ່ບໍ່ມີການປ້ອນຂໍ້ມູນສຽງ/ວິດີໂອ, ແລະ ຈົມລົງ
ຕົວກອງ ທີ່ຈະບໍ່ມີຜົນຜະລິດສຽງ/ວິດີໂອ.

GRAPH


ໄດ້ graph2dot ໂຄງການລວມຢູ່ໃນ FFmpeg ເຄື່ອງ​ມື ໄດເຣັກທໍຣີສາມາດຖືກນໍາໃຊ້ເພື່ອວິເຄາະ a
filtergraph ຄໍາອະທິບາຍແລະອອກຕົວແທນຂໍ້ຄວາມທີ່ສອດຄ້ອງກັນຢູ່ໃນຈຸດ
ພາສາ.

ຮຽກ​ຮ້ອງ​ຄໍາ​ສັ່ງ​:

graph2dot -h

ເພື່ອເບິ່ງວິທີການນໍາໃຊ້ graph2dot.

ຈາກນັ້ນທ່ານສາມາດຜ່ານລາຍລະອຽດຈຸດໄປຫາ ຈຸດ ໂຄງການ (ຈາກຊຸດ graphviz ຂອງ
ບັນດາໂຄງການ) ແລະໄດ້ຮັບການສະແດງຮູບພາບຂອງ filtergraph.

ສໍາລັບຕົວຢ່າງ, ລໍາດັບຄໍາສັ່ງ:

ສຽງສະທ້ອນ | \
tools/graph2dot -o graph.tmp && \
dot -Tpng graph.tmp -o graph.png && \
ສະແດງ graph.png

ສາມາດຖືກນໍາໃຊ້ເພື່ອສ້າງແລະສະແດງຮູບພາບທີ່ເປັນຕົວແທນຂອງກາຟທີ່ອະທິບາຍໂດຍ
GRAPH_DESCRIPTION ສາຍ. ຈົ່ງຈື່ໄວ້ວ່າສະຕຣິງນີ້ຕ້ອງເປັນກຣາບທີ່ປະກອບດ້ວຍຕົວມັນເອງທີ່ສົມບູນ,
ກັບວັດສະດຸປ້ອນແລະຜົນໄດ້ຮັບຂອງມັນຖືກກໍານົດຢ່າງຈະແຈ້ງ. ຕົວຢ່າງຖ້າເສັ້ນຄໍາສັ່ງຂອງເຈົ້າແມ່ນຂອງ
ແບບຟອມ:

ffmpeg -i infile -vf scale=640:360 outfile

ຂອງ​ທ່ານ GRAPH_DESCRIPTION string ຈະຕ້ອງມີຮູບແບບ:

nullsrc,scale=640:360,nullsink

ທ່ານອາດຈະຈໍາເປັນຕ້ອງໄດ້ກໍານົດ nullsrc ຕົວກໍານົດການແລະເພີ່ມ a ຮູບແບບ ການກັ່ນຕອງເພື່ອ
ຈຳລອງໄຟລ໌ປ້ອນຂໍ້ມູນສະເພາະ.

FILTERGRAPH ລາຍລະອຽດ


filtergraph ແມ່ນເສັ້ນສະແດງຂອງຕົວກອງທີ່ເຊື່ອມຕໍ່. ມັນສາມາດມີຮອບວຽນ, ແລະຢູ່ທີ່ນັ້ນ
ສາມາດເປັນການເຊື່ອມໂຍງຫຼາຍລະຫວ່າງຄູ່ຂອງຕົວກອງ. ແຕ່ລະເຊື່ອມຕໍ່ມີແຜ່ນປ້ອນຂໍ້ມູນຢູ່ຂ້າງຫນຶ່ງ
ການ​ເຊື່ອມ​ຕໍ່​ມັນ​ກັບ​ຫນຶ່ງ​ຕົວ​ກັ່ນ​ຕອງ​ຈາກ​ທີ່​ມັນ​ໃຊ້​ເວ​ລາ​ການ​ປ້ອນ​ຂໍ້​ມູນ​ຂອງ​ຕົນ​, ແລະ​ຫນຶ່ງ​ແຜ່ນ​ຜົນ​ຜະ​ລິດ​ຢູ່​ໃນ​ອື່ນໆ​
ດ້ານຂ້າງເຊື່ອມຕໍ່ມັນກັບຕົວກອງຫນຶ່ງທີ່ຍອມຮັບຜົນຜະລິດຂອງມັນ.

ແຕ່ລະຕົວກອງໃນ filtergraph ແມ່ນຕົວຢ່າງຂອງຊັ້ນການກັ່ນຕອງທີ່ລົງທະບຽນຢູ່ໃນ
ຄໍາ​ຮ້ອງ​ສະ​ຫມັກ​, ທີ່​ກໍາ​ນົດ​ລັກ​ສະ​ນະ​ແລະ​ຈໍາ​ນວນ​ຂອງ​ການ​ປ້ອນ​ຂໍ້​ມູນ​ແລະ​ຜົນ​ຜະ​ລິດ pads ຂອງ​
ຕົວກອງ

ຕົວກອງທີ່ບໍ່ມີແຜ່ນປ້ອນຂໍ້ມູນແມ່ນເອີ້ນວ່າ "ແຫຼ່ງ", ແລະຕົວກອງທີ່ບໍ່ມີແຜ່ນປ້ອນຂໍ້ມູນແມ່ນ
ເອີ້ນວ່າ "ອ່າງລ້າງ".

ການກັ່ນຕອງ syntax
filtergraph ມີການເປັນຕົວແທນຂອງຂໍ້ຄວາມ, ເຊິ່ງຖືກຮັບຮູ້ໂດຍ -ຕົວກັ່ນຕອງ/-vf/-af ແລະ
-filter_complex ທາງເລືອກໃນ ffmpeg ແລະ -vf/-af in ffplay, ແລະໂດຍ
"avfilter_graph_parse_ptr()" ຟັງຊັນທີ່ກໍານົດໃນ libavfilter/avfilter.h.

A filterchain ປະ​ກອບ​ດ້ວຍ​ລໍາ​ດັບ​ຂອງ​ການ​ກັ່ນ​ຕອງ​ເຊື່ອມ​ຕໍ່​, ແຕ່​ລະ​ຄົນ​ທີ່​ເຊື່ອມ​ຕໍ່​ກັບ​
ອັນ​ທີ່​ຜ່ານ​ມາ​ໃນ​ລໍາ​ດັບ​. filterchain ແມ່ນເປັນຕົວແທນໂດຍບັນຊີລາຍຊື່ຂອງ ","-separated
ລາຍລະອຽດການກັ່ນຕອງ.

filtergraph ປະກອບດ້ວຍລໍາດັບຂອງ filterchains. ລໍາດັບຂອງ filterchains ແມ່ນ
ເປັນຕົວແທນໂດຍບັນຊີລາຍຊື່ຂອງ ";" - ຄໍາອະທິບາຍ filterchain ແຍກຕ່າງຫາກ.

ຕົວກອງຖືກສະແດງໂດຍສະຕຣິງຂອງແບບຟອມ:
[in_link_1]...[in_link_N]filter_name=ກະທູ້ທີ່[out_link_1]...[out_link_M]

filter_name ແມ່ນຊື່ຂອງຊັ້ນການກັ່ນຕອງຂອງຕົວກອງທີ່ອະທິບາຍເປັນຕົວຢ່າງ
ຂອງ, ແລະຕ້ອງເປັນຊື່ຂອງຫນຶ່ງໃນຫ້ອງຮຽນການກັ່ນຕອງລົງທະບຽນໃນໂຄງການ. ໄດ້
ຊື່ຂອງຊັ້ນການກັ່ນຕອງແມ່ນທາງເລືອກທີ່ຕິດຕາມດ້ວຍ string "=ກະທູ້ທີ່".

ກະທູ້ທີ່ ແມ່ນສະຕຣິງທີ່ບັນຈຸພາລາມິເຕີທີ່ໃຊ້ເພື່ອເລີ່ມຕົ້ນການກັ່ນຕອງ
ຕົວຢ່າງ. ມັນ​ອາດ​ຈະ​ມີ​ຫນຶ່ງ​ໃນ​ສອງ​ຮູບ​ແບບ​:

· A ':'-separated list of key=value ຄູ່

· A ':'-separated list of ມູນຄ່າ. ໃນກໍລະນີນີ້, ຄີແມ່ນຖືວ່າທາງເລືອກ
ຊື່ໃນຄໍາສັ່ງທີ່ເຂົາເຈົ້າໄດ້ຖືກປະກາດ. ເຊັ່ນ: ການກັ່ນຕອງ "fade" ປະກາດສາມທາງເລືອກໃນ
ຄໍາ​ສັ່ງ​ນີ້ -- ປະເພດ, start_frame ແລະ nb_frames. ຫຼັງຈາກນັ້ນ, ບັນຊີລາຍຊື່ພາລາມິເຕີ ໃນ: 0:30 ວິທີການ
ວ່າມູນຄ່າ in ຖືກມອບຫມາຍໃຫ້ທາງເລືອກ ປະເພດ, 0 to start_frame ແລະ 30 to
nb_frames.

· A ':'-separated list of mixed direct ມູນຄ່າ ແລະຍາວ key=value ຄູ່. ໂດຍກົງ ມູນຄ່າ
ຕ້ອງກ່ອນ key=value ຄູ່, ແລະປະຕິບັດຕາມຄໍາສັ່ງຂໍ້ຈໍາກັດດຽວກັນຂອງ
ຈຸດທີ່ຜ່ານມາ. ຕໍ່ໄປນີ້ key=value ຄູ່ສາມາດຖືກຕັ້ງຢູ່ໃນຄໍາສັ່ງທີ່ຕ້ອງການ.

ຖ້າຄ່າທາງເລືອກຕົວມັນເອງແມ່ນບັນຊີລາຍຊື່ຂອງລາຍການ (ຕົວຢ່າງ "ຮູບແບບ" ຕົວກອງໃຊ້ເວລາບັນຊີລາຍຊື່ຂອງ
ຮູບ​ແບບ pixels), ລາຍ​ການ​ໃນ​ບັນ​ຊີ​ລາຍ​ການ​ແມ່ນ​ປົກ​ກະ​ຕິ​ແລ້ວ​ແຍກ​ອອກ​ໂດຍ​ |.

ບັນຊີລາຍຊື່ຂອງການໂຕ້ຖຽງສາມາດຖືກອ້າງອີງໂດຍໃຊ້ຕົວອັກສອນ ' ເປັນເຄື່ອງໝາຍເບື້ອງຕົ້ນ ແລະຈຸດສິ້ນສຸດ, ແລະ
ລັກສະນະ \ ສໍາລັບການຫລົບຫນີຕົວອັກສອນພາຍໃນຂໍ້ຄວາມທີ່ອ້າງອີງ; ຖ້າບໍ່ດັ່ງນັ້ນການໂຕ້ຖຽງ
string ຖືກພິຈາລະນາຖືກຍົກເລີກເມື່ອຕົວອັກສອນພິເສດຕໍ່ໄປ (ເປັນຂອງຊຸດ
[]=;,) ພົບ.

ຊື່ແລະການໂຕ້ຖຽງຂອງການກັ່ນຕອງແມ່ນທາງເລືອກກ່ອນຫນ້າແລະຕິດຕາມດ້ວຍບັນຊີລາຍຊື່ຂອງ
ປ້າຍຊື່ເຊື່ອມຕໍ່. ປ້າຍຊື່ລິ້ງອະນຸຍາດໃຫ້ຜູ້ນຶ່ງຕັ້ງຊື່ລິ້ງ ແລະເຊື່ອມໂຍງມັນກັບຜົນໄດ້ຮັບຂອງການກັ່ນຕອງ
ຫຼືແຜ່ນປ້ອນຂໍ້ມູນ. ປ້າຍຊື່ກ່ອນ in_link_1 ... in_link_N, ແມ່ນກ່ຽວຂ້ອງກັບການກັ່ນຕອງ
ແຜ່ນປ້ອນຂໍ້ມູນ, ປ້າຍຊື່ຕໍ່ໄປນີ້ out_link_1 ... out_link_M, ແມ່ນກ່ຽວຂ້ອງກັບຜົນຜະລິດ
ແຜ່ນຮອງ.

ເມື່ອສອງປ້າຍເຊື່ອມຕໍ່ທີ່ມີຊື່ດຽວກັນຖືກພົບເຫັນຢູ່ໃນ filtergraph, ການເຊື່ອມໂຍງລະຫວ່າງ
ແຜ່ນ input ແລະ output ທີ່ສອດຄ້ອງກັນແມ່ນຖືກສ້າງຂຶ້ນ.

ຖ້າແຜ່ນຜົນຜະລິດບໍ່ໄດ້ຕິດສະຫຼາກ, ມັນຈະຖືກເຊື່ອມຕໍ່ໂດຍຄ່າເລີ່ມຕົ້ນກັບອິນພຸດທີ່ບໍ່ມີປ້າຍກຳກັບທຳອິດ
pad ຂອງການກັ່ນຕອງຕໍ່ໄປໃນ filterchain. ຕົວຢ່າງໃນ filterchain

nullsrc, ແຍກ[L1], [L2]ວາງຊ້ອນ, nullsink

ຕົວກັ່ນຕອງແຍກມີສອງແຜ່ນຜົນອອກ, ແລະຕົວກັ່ນຕອງການວາງຊ້ອນຕົວປ້ອນສອງອັນ
pads. ແຜ່ນຜົນຜະລິດທໍາອິດຂອງການແບ່ງປັນແມ່ນຕິດສະຫຼາກ "L1", ແຜ່ນປ້ອນຂໍ້ມູນທໍາອິດຂອງການຊ້ອນກັນແມ່ນ
labeled "L2​"​, ແລະ pad ຜົນ​ຜະ​ລິດ​ຄັ້ງ​ທີ​ສອງ​ຂອງ​ການ​ແບ່ງ​ປັນ​ແມ່ນ​ການ​ເຊື່ອມ​ຕໍ່​ກັບ pad ປະ​ກອບ​ທີ່​ສອງ​ຂອງ​
overlay, ເຊິ່ງທັງສອງ unlabelled.

ໃນຄໍາອະທິບາຍການກັ່ນຕອງ, ຖ້າປ້າຍຊື່ຂອງຕົວກອງທໍາອິດບໍ່ໄດ້ຖືກລະບຸ, "ໃນ" ແມ່ນ
ສົມມຸດ; ຖ້າປ້າຍຜົນຜະລິດຂອງການກັ່ນຕອງສຸດທ້າຍບໍ່ໄດ້ຖືກລະບຸ, "ອອກ" ແມ່ນສົມມຸດ.

ໃນ filterchain ທີ່ສົມບູນທັງຫມົດ input ແລະ output pads ການກັ່ນຕອງຈະຕ້ອງເປັນ
ເຊື່ອມຕໍ່. A filtergraph ແມ່ນພິຈາລະນາທີ່ຖືກຕ້ອງຖ້າຫາກວ່າການກັ່ນຕອງ input ແລະ output pads ທັງຫມົດຂອງ
filterchains ທັງຫມົດແມ່ນເຊື່ອມຕໍ່.

Libavfilter ຈະໃສ່ອັດຕະໂນມັດ ຂະຫນາດ ຕົວກອງທີ່ຕ້ອງປ່ຽນຮູບແບບ.
ມັນເປັນໄປໄດ້ທີ່ຈະລະບຸທຸງ swscale ສໍາລັບຜູ້ທີ່ໃສ່ອັດຕະໂນມັດ scalers ໂດຍ
prepending "sws_flags=ທຸງ;" ກັບຄໍາອະທິບາຍການກັ່ນຕອງ.

ນີ້ແມ່ນຄໍາອະທິບາຍ BNF ຂອງ syntax filtergraph:

::= ລຳດັບຕົວອັກສອນທີ່ເປັນຕົວເລກ ແລະ '_'
::= "[" "]"
::= [ ]
::= ລຳດັບຂອງຕົວອັກສອນ (ອາດຈະອ້າງອີງ)
::= [ ] ["=" ] [ ]
::= [, ]
::= [sws_flags= ;] [ ; ]

ອ່ືນ on filtergraph ຫນີ
ອົງປະກອບຄໍາອະທິບາຍການກັ່ນຕອງປະກອບມີລະດັບການຫລົບຫນີຫຼາຍ. ເບິ່ງ ໄດ້ "ການອ້າງອີງ
ແລະ ໜີ" ສ່ວນ in ໄດ້ ffmpeg-utils(1​) ຄູ່ມື ສຳ ລັບຂໍ້ມູນເພີ່ມເຕີມກ່ຽວກັບ
ຂັ້ນຕອນການຫລົບຫນີທີ່ຖືກຈ້າງ.

ການຫລົບຫນີລະດັບທໍາອິດມີຜົນກະທົບຕໍ່ເນື້ອຫາຂອງແຕ່ລະຄ່າທາງເລືອກການກັ່ນຕອງ, ເຊິ່ງອາດມີ
ຕົວອັກສອນພິເສດ ":" ໃຊ້ເພື່ອແຍກຄ່າ, ຫຼືໜຶ່ງໃນຕົວອັກສອນທີ່ຫຼົບໜີ "\'".

ການຫລົບຫນີລະດັບທີສອງມີຜົນກະທົບຕໍ່ຄໍາອະທິບາຍການກັ່ນຕອງທັງຫມົດ, ເຊິ່ງອາດຈະປະກອບດ້ວຍ
escaping ຕົວອັກສອນ "\'" ຫຼືຕົວອັກສອນພິເສດ "[],;" ໃຊ້ໂດຍ filtergraph
ຄຳ ອະທິບາຍ.

ສຸດທ້າຍ, ເມື່ອທ່ານກໍານົດ filtergraph ໃນຄໍາສັ່ງ shell, ທ່ານຈໍາເປັນຕ້ອງປະຕິບັດ a
ລະດັບທີສາມ escaping ສໍາລັບ shell ລັກສະນະພິເສດທີ່ມີຢູ່ໃນມັນ.

ຕົວຢ່າງ, ພິຈາລະນາສາຍຕໍ່ໄປນີ້ທີ່ຈະຝັງຢູ່ໃນ drawtext ການກັ່ນຕອງ
ຄໍາອະທິບາຍ ຂໍ້ຄວາມ ມູນຄ່າ:

ນີ້ແມ່ນ 'string': ອາດມີໜຶ່ງ, ຫຼືຫຼາຍກວ່ານັ້ນ, ຕົວອັກສອນພິເສດ

ສະຕຣິງນີ້ປະກອບດ້ວຍ "'" ລັກສະນະການຫລົບຫນີພິເສດ, ແລະ ":" ລັກສະນະພິເສດ, ດັ່ງນັ້ນ
ມັນຈໍາເປັນຕ້ອງໄດ້ຫລົບຫນີດ້ວຍວິທີນີ້:

text=ນີ້ແມ່ນ \'string\'\: ອາດມີໜຶ່ງ ຫຼືຫຼາຍກວ່ານັ້ນ, ຕົວອັກສອນພິເສດ

ຕ້ອງມີລະດັບທີສອງຂອງການຫລົບຫນີໃນເວລາທີ່ຝັງຄໍາອະທິບາຍການກັ່ນຕອງໃນ a
ຄໍາອະທິບາຍຕົວກອງ, ເພື່ອຫນີທຸກຕົວອັກສອນພິເສດ filtergraph. ດັ່ງນັ້ນ
ຕົວຢ່າງຂ້າງເທິງຈະກາຍເປັນ:

drawtext=text=ນີ້ແມ່ນ \\\'string\\\'\\: ອາດມີໜຶ່ງ\, ຫຼືຫຼາຍກວ່ານັ້ນ\, ຕົວອັກສອນພິເສດ

(ສັງເກດວ່ານອກຈາກ "\'" escaping ຕົວອັກສອນພິເສດ, ຍັງ "," ຈໍາເປັນຕ້ອງມີ
ຫນີ).

ໃນທີ່ສຸດຕ້ອງມີລະດັບການຫລົບຫນີເພີ່ມເຕີມໃນເວລາທີ່ຂຽນຄໍາອະທິບາຍການກັ່ນຕອງ
ໃນຄໍາສັ່ງແກະ, ເຊິ່ງຂຶ້ນກັບກົດລະບຽບການຫລົບຫນີຂອງແກະທີ່ໄດ້ຮັບຮອງເອົາ. ຍົກ​ຕົວ​ຢ່າງ,
ສົມມຸດວ່າ "\" ແມ່ນພິເສດແລະຈໍາເປັນຕ້ອງໄດ້ຫລົບຫນີດ້ວຍ "\", ຂໍ້ຄວາມກ່ອນຫນ້າ
ສຸດທ້າຍຈະສົ່ງຜົນໃຫ້:

-vf "drawtext=text=ນີ້​ແມ່ນ \\\\\\'string\\\\\'\\\\: ອາດ​ຈະ​ມີ​ຫນຶ່ງ\\, ຫຼື​ຫຼາຍ​ກວ່າ \, ຕົວ​ອັກ​ສອນ​ພິ​ເສດ"

TIMELINE ການດັດແກ້


ບາງຕົວກອງຮອງຮັບແບບທົ່ວໄປ ເຮັດໃຫ້ສາມາດ ທາງເລືອກ. ສໍາລັບຕົວກອງທີ່ສະຫນັບສະຫນູນການແກ້ໄຂໄລຍະເວລາ,
ທາງ​ເລືອກ​ນີ້​ສາ​ມາດ​ໄດ້​ຮັບ​ການ​ຕັ້ງ​ຄ່າ​ເປັນ​ການ​ສະ​ແດງ​ອອກ​ທີ່​ໄດ້​ຮັບ​ການ​ປະ​ເມີນ​ຜົນ​ກ່ອນ​ທີ່​ຈະ​ສົ່ງ​ກອບ​ກັບ​
ການກັ່ນຕອງ. ຖ້າການປະເມີນບໍ່ແມ່ນສູນ, ຕົວກອງຈະຖືກເປີດໃຊ້, ຖ້າບໍ່ດັ່ງນັ້ນກອບ
ຈະຖືກສົ່ງໄປບໍ່ປ່ຽນແປງຕົວກອງຕໍ່ໄປໃນ filtergraph.

ການສະແດງອອກຍອມຮັບຄ່າຕໍ່ໄປນີ້:

t timestamp ສະ ແດງ ອອກ ເປັນ ວິ ນາ ທີ, NAN ຖ້າ input timestamp ບໍ່ ຮູ້ ຈັກ

n ເລກລໍາດັບຂອງກອບການປ້ອນຂໍ້ມູນ, ເລີ່ມຈາກ 0

pos ຕຳແໜ່ງໃນໄຟລ໌ຂອງກອບການປ້ອນຂໍ້ມູນ, NAN ຖ້າບໍ່ຮູ້

w
h ຄວາມກວ້າງແລະຄວາມສູງຂອງກອບການປ້ອນຂໍ້ມູນຖ້າວິດີໂອ

ນອກຈາກນັ້ນ, ການກັ່ນຕອງເຫຼົ່ານີ້ສະຫນັບສະຫນູນ an ເຮັດໃຫ້ສາມາດ ຄໍາສັ່ງທີ່ສາມາດຖືກນໍາໃຊ້ເພື່ອກໍານົດຄືນໃຫມ່
ການສະແດງອອກ.

ເຊັ່ນດຽວກັນກັບທາງເລືອກການກັ່ນຕອງອື່ນໆ, ໄດ້ ເຮັດໃຫ້ສາມາດ ທາງເລືອກປະຕິບັດຕາມກົດລະບຽບດຽວກັນ.

ຕົວຢ່າງ, ເພື່ອເປີດໃຊ້ຕົວກອງມົວ (smartblur) ຈາກ 10 ວິນາທີຫາ 3 ນາທີ, ແລະ ກ
curves ການກັ່ນຕອງເລີ່ມຕົ້ນທີ່ 3 ວິນາທີ:

smartblur = enable='ລະຫວ່າງ(t,10,3*60)',
curves = enable='gte(t,3)' : preset=cross_process

AUDIO FILTERS


ໃນເວລາທີ່ທ່ານ configure FFmpeg build ຂອງທ່ານ, ທ່ານສາມາດປິດການທໍາງານໃດໆຂອງການກັ່ນຕອງທີ່ມີຢູ່ແລ້ວໂດຍໃຊ້
"--disable-filters". ຜົນຜະລິດ configure ຈະສະແດງການກັ່ນຕອງສຽງທີ່ລວມຢູ່ໃນຂອງທ່ານ
ກໍ່ສ້າງ.

ຂ້າງລຸ່ມນີ້ແມ່ນລາຍລະອຽດຂອງຕົວກອງສຽງທີ່ມີຢູ່ໃນປັດຈຸບັນ.

ຈືດໆ
ນຳໃຊ້ຂ້າມ fade ຈາກສະຕຣີມສຽງປ້ອນເຂົ້າໜຶ່ງໄປຫາສະຕຣີມສຽງປ້ອນຂໍ້ມູນອື່ນ. ໄມ້ກາງແຂນ
fade ແມ່ນຖືກນໍາໃຊ້ສໍາລັບໄລຍະເວລາທີ່ກໍານົດຢູ່ໃກ້ກັບໃນຕອນທ້າຍຂອງການຖ່າຍທອດທໍາອິດ.

ຕົວກອງຍອມຮັບຕົວເລືອກຕໍ່ໄປນີ້:

nb_ຕົວຢ່າງ, ns
ລະບຸຈໍານວນຕົວຢ່າງທີ່ຜົນກະທົບທີ່ຂ້າມຜ່ານຕ້ອງໃຊ້ເວລາດົນ. ໃນຕອນທ້າຍ
ຜົນກະທົບຂອງຜົນກະທົບຂ້າມຜ່ານ, ສຽງປ້ອນຂໍ້ມູນທໍາອິດຈະງຽບຫມົດ. ຄ່າເລີ່ມຕົ້ນແມ່ນ
44100​.

ໄລຍະເວລາ, d
ລະບຸໄລຍະເວລາຂອງຜົນກະທົບຂອງມະລາຍຫາຍໄປຂ້າມ. ເບິ່ງ ໄດ້ ທີ່ໃຊ້ເວລາ ໄລຍະເວລາ ສ່ວນ in ໄດ້
ffmpeg-utils(1​) ຄູ່ມື ສໍາລັບ syntax ທີ່ຍອມຮັບ. ໂດຍຄ່າເລີ່ມຕົ້ນໄລຍະເວລາຖືກກໍານົດ
by nb_ຕົວຢ່າງ. ຖ້າຕັ້ງຕົວເລືອກນີ້ຖືກໃຊ້ແທນ nb_ຕົວຢ່າງ.

ຊ້ອນກັນ, o
ທໍາອິດຄວນສິ້ນສຸດການຖ່າຍທອດດ້ວຍການເລີ່ມຕົ້ນການຖ່າຍທອດທີສອງ. ຄ່າເລີ່ມຕົ້ນຖືກເປີດໃຊ້.

ເສັ້ນໂຄ້ງ 1
ກຳນົດເສັ້ນໂຄ້ງສຳລັບການປ່ຽນສີຂ້າມຜ່ານສຳລັບການຖ່າຍທອດທຳອິດ.

ເສັ້ນໂຄ້ງ 2
ກຳນົດເສັ້ນໂຄ້ງສຳລັບການປ່ຽນສີຂ້າມຜ່ານສຳລັບການຖ່າຍທອດທີສອງ.

ສໍາລັບລາຍລະອຽດຂອງປະເພດເສັ້ນໂຄ້ງທີ່ມີຢູ່ເບິ່ງ ຈາງ ລາຍລະອຽດການກັ່ນຕອງ.

ຕົວຢ່າງ

· ຂ້າມ​ຈາກ​ການ​ປ້ອນ​ຂໍ້​ມູນ​ຫນຶ່ງ​ໄປ​ຫາ​ອື່ນ​:

ffmpeg -i first.flac -i second.flac -filter_complex crossfade=d=10:c1=exp:c2=exp output.flac

· ຂ້າມ​ຈາກ​ການ​ປ້ອນ​ຂໍ້​ມູນ​ຫນຶ່ງ​ໄປ​ຫາ​ອື່ນ​ແຕ່​ບໍ່​ມີ​ການ​ທັບ​ຊ້ອນ​ກັນ​:

ffmpeg -i first.flac -i second.flac -filter_complex crossfade=d=10:o=0:c1=exp:c2=exp output.flac

ຊ້າ
ເລື່ອນຊ່ອງສຽງນຶ່ງ ຫຼືຫຼາຍຊ່ອງ.

ຕົວຢ່າງໃນຊ່ອງທີ່ຊັກຊ້າແມ່ນເຕັມໄປດ້ວຍຄວາມງຽບ.

ການກັ່ນຕອງຍອມຮັບທາງເລືອກຕໍ່ໄປນີ້:

ການຊັກຊ້າ
ກໍານົດລາຍການຄວາມລ່າຊ້າໃນ milliseconds ສໍາລັບແຕ່ລະຊ່ອງແຍກໂດຍ '|'. ຢ່າງຫນ້ອຍຫນຶ່ງ
ຄວາມລ່າຊ້າຫຼາຍກວ່າ 0 ຄວນໃຫ້. ຄວາມລ່າຊ້າທີ່ບໍ່ໄດ້ໃຊ້ຈະຖືກລະເລີຍຢ່າງງຽບໆ. ຖ້າ
ຈໍາ​ນວນ​ຂອງ​ການ​ຊັກ​ຊ້າ​ທີ່​ໃຫ້​ແມ່ນ​ຂະ​ຫນາດ​ນ້ອຍ​ກ​່​ວາ​ຈໍາ​ນວນ​ຂອງ​ຊ່ອງ​ທາງ​ທີ່​ຍັງ​ເຫຼືອ​ທັງ​ຫມົດ​ຈະ​
ບໍ່​ໄດ້​ຮັບ​ການ​ຊັກ​ຊ້າ​.

ຕົວຢ່າງ

· ຊັກ​ຊ້າ​ຊ່ອງ​ທາງ​ທໍາ​ອິດ 1.5 ວິ​ນາ​ທີ​, ຊ່ອງ​ທີ​ສາມ​ໂດຍ 0.5 ວິ​ນາ​ທີ​ແລະ​ອອກ​ຈາກ​
ຊ່ອງທີສອງ (ແລະຊ່ອງທາງອື່ນໆທີ່ອາດຈະມີຢູ່) ບໍ່ປ່ຽນແປງ.

adelay=1500|0|500

ແອໂກ
ນຳໃຊ້ສຽງສະທ້ອນກັບສຽງທີ່ປ້ອນເຂົ້າ.

ສຽງສະທ້ອນແມ່ນສະທ້ອນເຖິງສຽງ ແລະສາມາດເກີດຂຶ້ນໄດ້ຕາມທໍາມະຊາດລະຫວ່າງພູເຂົາ (ແລະບາງຄັ້ງກໍໃຫຍ່
buildings) ເມື່ອເວົ້າ ຫຼື ຮ້ອງ; ຜົນກະທົບ echo ດິຈິຕອນ emulate ພຶດຕິກໍານີ້ແລະມີ
ມັກໃຊ້ເພື່ອຊ່ວຍຕື່ມສຽງຂອງເຄື່ອງດົນຕີດຽວ ຫຼືສຽງຮ້ອງ. ຄວາມແຕກຕ່າງເວລາ
ລະຫວ່າງສັນຍານຕົ້ນສະບັບແລະການສະທ້ອນແມ່ນ "ການຊັກຊ້າ", ແລະ loudness ຂອງ
ສັນຍານທີ່ສະທ້ອນໃຫ້ເຫັນແມ່ນ "ການທໍາລາຍ". ສຽງສະທ້ອນຫຼາຍອັນສາມາດມີຄວາມລ່າຊ້າ ແລະຄວາມເສຍຫາຍແຕກຕ່າງກັນ.

ລາຍລະອຽດຂອງຕົວກໍານົດການທີ່ຍອມຮັບດັ່ງຕໍ່ໄປນີ້.

in_gain
ກໍານົດການເພີ່ມຂຶ້ນຂອງການປ້ອນຂໍ້ມູນຂອງສັນຍານສະທ້ອນ. ຄ່າເລີ່ມຕົ້ນແມ່ນ 0.6.

out_gain
ກໍານົດການໄດ້ຮັບຜົນຜະລິດຂອງສັນຍານສະທ້ອນ. ຄ່າເລີ່ມຕົ້ນແມ່ນ 0.3.

ການຊັກຊ້າ
ກໍານົດບັນຊີລາຍຊື່ຂອງຊ່ວງເວລາເປັນ milliseconds ລະຫວ່າງສັນຍານຕົ້ນສະບັບແລະການສະທ້ອນ
ແຍກໂດຍ '|'. ໄລຍະທີ່ອະນຸຍາດສຳລັບແຕ່ລະ "delay" ແມ່ນ "(0 - 90000.0]". ຄ່າເລີ່ມຕົ້ນແມ່ນ 1000.

ຊຸດໂຊມ
ກໍານົດລາຍການຄວາມດັງຂອງສັນຍານສະທ້ອນທີ່ແຍກອອກໂດຍ '|'. ຂອບເຂດອະນຸຍາດສໍາລັບແຕ່ລະຄົນ
"decay" ແມ່ນ "(0 - 1.0]". ຄ່າເລີ່ມຕົ້ນແມ່ນ 0.5.

ຕົວຢ່າງ

· ເຮັດ​ໃຫ້​ມັນ​ມີ​ສຽງ​ຄ້າຍ​ຄື​ວ່າ​ມີ​ສອງ​ເທົ່າ​ຂອງ​ເຄື່ອງ​ມື​ຫຼາຍ​ທີ່​ສຸດ​ແມ່ນ​ການ​ຫຼິ້ນ​:

aecho=0.8:0.88:60:0.4

· ຖ້າ​ຫາກ​ວ່າ​ການ​ຊັກ​ຊ້າ​ແມ່ນ​ສັ້ນ​ຫຼາຍ​, ຫຼັງ​ຈາກ​ນັ້ນ​ມັນ​ຄ້າຍ​ຄື (ໂລ​ຫະ​) ຫຸ່ນ​ຍົນ​ຫຼິ້ນ​ດົນ​ຕີ​:

aecho=0.8:0.88:6:0.4

· ຄວາມລ່າຊ້າທີ່ດົນກວ່ານັ້ນຈະມີສຽງຄືກັບຄອນເສີດເປີດອາກາດຢູ່ໃນພູເຂົາ:

aecho=0.8:0.9:1000:0.3

· ຄືກັນກັບຂ້າງເທິງ ແຕ່ມີພູອີກໜ່ວຍໜຶ່ງ:

aecho=0.8:0.9:1000|1800:0.3|0.25

aeval
ແກ້ໄຂສັນຍານສຽງຕາມການສະແດງອອກທີ່ລະບຸໄວ້.

ການກັ່ນຕອງນີ້ຍອມຮັບຫນຶ່ງຫຼືຫຼາຍສະແດງອອກ (ຫນຶ່ງສໍາລັບແຕ່ລະຊ່ອງ), ເຊິ່ງຖືກປະເມີນ
ແລະໃຊ້ເພື່ອແກ້ໄຂສັນຍານສຽງທີ່ສອດຄ້ອງກັນ.

ມັນຍອມຮັບຕົວກໍານົດການດັ່ງຕໍ່ໄປນີ້:

exprs
ກໍານົດລາຍການສະແດງອອກທີ່ແຍກຕ່າງຫາກ '|' ສໍາລັບແຕ່ລະຊ່ອງແຍກຕ່າງຫາກ. ຖ້າຫາກວ່າຈໍານວນຂອງ
ຊ່ອງ​ທາງ​ການ​ປ້ອນ​ຂໍ້​ມູນ​ແມ່ນ​ຫຼາຍ​ກ​່​ວາ​ຈໍາ​ນວນ​ຂອງ​ການ​ສະ​ແດງ​ອອກ​, ທີ່​ກໍາ​ນົດ​ສຸດ​ທ້າຍ​
ການສະແດງອອກແມ່ນໃຊ້ສໍາລັບຊ່ອງຜົນຜະລິດທີ່ຍັງເຫຼືອ.

channel_layout, c
ກໍານົດຮູບແບບຊ່ອງອອກ. ຖ້າ​ຫາກ​ວ່າ​ບໍ່​ໄດ້​ລະ​ບຸ​ໄວ້​, ຮູບ​ລັກ​ຊ່ອງ​ແມ່ນ​ລະ​ບຸ​ໄວ້​ໂດຍ​
ຈໍານວນຂອງການສະແດງອອກ. ຖ້າຕັ້ງເປັນ ດຽວກັນ, ມັນຈະໃຊ້ຕາມຄ່າເລີ່ມຕົ້ນຂອງຊ່ອງປ້ອນຂໍ້ມູນດຽວກັນ
ຮູບແບບ.

ແຕ່ລະສະແດງອອກໃນ exprs ສາ​ມາດ​ປະ​ກອບ​ດ້ວຍ​ຄົງ​ທີ່​ແລະ​ຫນ້າ​ທີ່​ດັ່ງ​ຕໍ່​ໄປ​ນີ້​:

ch ໝາຍເລກຊ່ອງຂອງການສະແດງຜົນປະຈຸບັນ

n ຈໍາ​ນວນ​ຂອງ​ຕົວ​ຢ່າງ​ການ​ປະ​ເມີນ​ຜົນ​, ເລີ່ມ​ຈາກ 0​

s ອັດຕາຕົວຢ່າງ

t ເວລາຂອງຕົວຢ່າງການປະເມີນສະແດງອອກເປັນວິນາທີ

nb_in_channels
nb_out_channels
input ແລະ output ຈໍານວນຊ່ອງ

val(CH)
ຄ່າຂອງຊ່ອງປ້ອນຂໍ້ມູນທີ່ມີຕົວເລກ CH

ໝາຍເຫດ: ການກັ່ນຕອງນີ້ຊ້າ. ສໍາລັບການປຸງແຕ່ງໄວຂຶ້ນ, ທ່ານຄວນໃຊ້ຕົວກອງສະເພາະ.

ຕົວຢ່າງ

· ເຄິ່ງ​ປະ​ລິ​ມານ​:

aveval=val(ch)/2:c=ຄືກັນ

· ໄລຍະປີ້ນຂອງຊ່ອງທີສອງ:

aeval=h(0)|-h(1​)

ຈາງ
ນຳໃຊ້ເອັບເຟັກການເຂົ້າ/ອອກໜ້ອຍລົງເພື່ອປ້ອນສຽງເຂົ້າ.

ລາຍລະອຽດຂອງຕົວກໍານົດການທີ່ຍອມຮັບດັ່ງຕໍ່ໄປນີ້.

ປະເພດ, t
ລະບຸປະເພດຜົນກະທົບ, ສາມາດເປັນ "in" ສໍາລັບ fade-in, ຫຼື "out" ສໍາລັບ fade-out.
ຜົນກະທົບ. ຄ່າເລີ່ມຕົ້ນແມ່ນ "ໃນ".

start_ຕົວຢ່າງ, ss
ລະບຸຈໍານວນຂອງຕົວຢ່າງເລີ່ມຕົ້ນສໍາລັບການເລີ່ມຕົ້ນທີ່ຈະນໍາໃຊ້ຜົນກະທົບທີ່ຈືດໆ. ຄ່າເລີ່ມຕົ້ນ
ແມ່ນ 0.

nb_ຕົວຢ່າງ, ns
ລະບຸຈໍານວນຕົວຢ່າງທີ່ຜົນກະທົບທີ່ຈະຫາຍໄປ. ໃນຕອນທ້າຍຂອງການ
ຈືດໆໃນຜົນກະທົບສຽງຜົນຜະລິດຈະມີລະດັບສຽງດຽວກັນກັບສຽງ input, ຢູ່ທີ່
ສິ້ນສຸດການຫັນປ່ຽນຫາຍໄປ, ສຽງທີ່ອອກມາຈະງຽບ. ຄ່າເລີ່ມຕົ້ນແມ່ນ 44100.

ເວລາເລີ່ມຕົ້ນ, st
ລະບຸເວລາເລີ່ມຕົ້ນຂອງຜົນກະທົບທີ່ຫາຍໄປ. ຄ່າເລີ່ມຕົ້ນແມ່ນ 0. ຄ່າຕ້ອງຖືກລະບຸ
ເປັນໄລຍະເວລາ; ເບິ່ງ ໄດ້ ທີ່ໃຊ້ເວລາ ໄລຍະເວລາ ສ່ວນ in ໄດ້ ffmpeg-utils(1​) ຄູ່ມື ສໍາລັບການ
syntax ທີ່ຍອມຮັບ. ຖ້າຕັ້ງຕົວເລືອກນີ້ຖືກໃຊ້ແທນ start_ຕົວຢ່າງ.

ໄລຍະເວລາ, d
ລະບຸໄລຍະເວລາຂອງຜົນກະທົບທີ່ຫາຍໄປ. ເບິ່ງ ໄດ້ ທີ່ໃຊ້ເວລາ ໄລຍະເວລາ ສ່ວນ in ໄດ້
ffmpeg-utils(1​) ຄູ່ມື ສໍາລັບ syntax ທີ່ຍອມຮັບ. ໃນ​ຕອນ​ທ້າຍ​ຂອງ​ຜົນ​ກະ​ທົບ​ມະ​ລາຍ​ຫາຍ​ໄປ​ໄດ້​
ສຽງອອກຈະມີລະດັບສຽງດຽວກັນກັບສຽງທີ່ປ້ອນເຂົ້າ, ໃນຕອນທ້າຍຂອງການ fade-out
ການຫັນປ່ຽນສຽງອອກຈະງຽບ. ໂດຍຄ່າເລີ່ມຕົ້ນໄລຍະເວລາຖືກກໍານົດໂດຍ
nb_ຕົວຢ່າງ. ຖ້າຕັ້ງຕົວເລືອກນີ້ຖືກໃຊ້ແທນ nb_ຕົວຢ່າງ.

ເສັ້ນໂຄ້ງ
ກໍານົດເສັ້ນໂຄ້ງສໍາລັບການຫັນປ່ຽນຫາຍໄປ.

ມັນຍອມຮັບຄ່າດັ່ງຕໍ່ໄປນີ້:

tri ເລືອກຮູບສາມຫລ່ຽມ, ລວງຊັນເສັ້ນຊື່ (ຄ່າເລີ່ມຕົ້ນ)

qsin
ເລືອກໄຕມາດຂອງຄື້ນ sine

hsin
ເລືອກເຄິ່ງຫນຶ່ງຂອງຄື້ນ sine

ແຮງບັນດານໃຈ
ເລືອກຄື້ນ sine exponential

log ເລືອກ logarithmic

ອ້າຍ​ເຂີຍ
ເລືອກ parabola ປີ້ນ

ຜ່ານ ເລືອກສີ່ຫລ່ຽມ

cub ເລືອກ cubic

Squ ເລືອກຮາກສີ່ຫລ່ຽມ

cbr ເລືອກຮາກ cubic

ໂດຍ ເລືອກ parabola

exp ເລືອກ exponential

iqsin
ເລືອກ​ໄຕ​ມາດ inverted ຂອງ sine wave

ihsin
ເລືອກເຄິ່ງຫນຶ່ງຂອງຄື້ນ sine inverted

ປາດຖະຫນາ
ເລືອກບ່ອນນັ່ງ double-exponential

ເຖິງແມ່ນວ່າ
ເລືອກ sigmoid double-exponential

ຕົວຢ່າງ

· ຈາງລົງໃນ 15 ວິນາທີທຳອິດຂອງສຽງ:

afade=t=in:ss=0:d=15

· fade out 25 ວິນາທີສຸດທ້າຍຂອງສຽງ 900 ວິນາທີ:

afade=t=out:st=875:d=25

ຮູບແບບ
ກໍານົດຂໍ້ຈໍາກັດຮູບແບບຜົນຜະລິດສໍາລັບສຽງປ້ອນຂໍ້ມູນ. ຂອບຈະເຈລະຈາໄດ້ຫຼາຍທີ່ສຸດ
ຮູບແບບທີ່ເຫມາະສົມເພື່ອຫຼຸດຜ່ອນການແປງ.

ມັນຍອມຮັບຕົວກໍານົດການດັ່ງຕໍ່ໄປນີ້:

sample_fmts
ບັນຊີລາຍຊື່ທີ່ແຍກອອກຂອງຮູບແບບຕົວຢ່າງທີ່ຮ້ອງຂໍ.

ອັດຕາຕົວຢ່າງ
A '|'-separated list of requested sample rates .

channel_layouts
ບັນຊີລາຍຊື່ທີ່ແຍກອອກ '|' ຂອງການຈັດວາງຊ່ອງທີ່ຮ້ອງຂໍ.

ເບິ່ງ ໄດ້ Channel Layout ສ່ວນ in ໄດ້ ffmpeg-utils(1​) ຄູ່ມື ສໍາລັບ syntax ທີ່ຕ້ອງການ.

ຖ້າພາຣາມິເຕີຖືກລະເວັ້ນ, ຄ່າທັງໝົດແມ່ນອະນຸຍາດ.

ບັງຄັບໃຫ້ຜົນຜະລິດເປັນ 8-bit ທີ່ບໍ່ໄດ້ເຊັນ ຫຼືເຊັນຊື່ 16-bit stereo

aformat=sample_fmts=u8|s16:channel_layouts=stereo

allpass
ນຳໃຊ້ຕົວກອງທັງໝົດສອງເສົາດ້ວຍຄວາມຖີ່ກາງ (ເປັນ Hz) ຄວາມຖີ່, ແລະການກັ່ນຕອງ -
width width. ຕົວກອງຜ່ານທັງໝົດຈະປ່ຽນຄວາມຖີ່ຂອງສຽງໄປສູ່ຄວາມສຳພັນໄລຍະ
ໂດຍ​ບໍ່​ມີ​ການ​ປ່ຽນ​ແປງ​ຄວາມ​ຖີ່​ຂອງ​ຕົນ​ກັບ​ຄວາມ​ສໍາ​ພັນ​ຄວາມ​ກວ້າງ​ຂວາງ​.

ຕົວກອງຍອມຮັບຕົວເລືອກຕໍ່ໄປນີ້:

ຄວາມຖີ່, f
ກໍານົດຄວາມຖີ່ໃນ Hz.

width_type
ກໍານົດວິທີການກໍານົດ band-width ຂອງການກັ່ນຕອງ.

h Hz

q Q-Factor

o octave

s ເປີ້ນພູ

ຄວາມກວ້າງ, w
ລະບຸແຖບຄວາມກວ້າງຂອງຕົວກອງໃນຫົວໜ່ວຍ width_type.

ລວມ
ຮວມການສະຕຣີມສຽງສອງ ຫຼືຫຼາຍກວ່ານັ້ນເຂົ້າໃນສະຕຣີມຫຼາຍຊ່ອງດຽວ.

ຕົວກອງຍອມຮັບຕົວເລືອກຕໍ່ໄປນີ້:

ວັດສະດຸປ້ອນ
ກໍານົດຈໍານວນຂອງວັດສະດຸປ້ອນ. ຄ່າເລີ່ມຕົ້ນແມ່ນ 2.

ຖ້າການຈັດວາງຊ່ອງຂອງວັດສະດຸປ້ອນແມ່ນບໍ່ເຂົ້າກັນ, ແລະດັ່ງນັ້ນຈຶ່ງເຂົ້າກັນໄດ້, ຊ່ອງທາງ
ຮູບ​ລັກ​ຂອງ​ຜົນ​ຜະ​ລິດ​ຈະ​ໄດ້​ຮັບ​ການ​ກໍາ​ນົດ​ໄວ້​ຕາມ​ຄວາມ​ເຫມາະ​ສົມ​ແລະ​ຊ່ອງ​ທາງ​ຈະ​ໄດ້​ຮັບ​ການ reordered ເປັນ​
ຈໍາເປັນ. ຖ້າການຈັດວາງຊ່ອງຂອງວັດສະດຸປ້ອນບໍ່ເຂົ້າກັນ, ຜົນຜະລິດຈະມີທັງໝົດ
ຊ່ອງ​ທາງ​ຂອງ​ການ​ປ້ອນ​ຂໍ້​ມູນ​ທໍາ​ອິດ​ຈາກ​ນັ້ນ​ຊ່ອງ​ທາງ​ການ​ທັງ​ຫມົດ​ຂອງ​ການ​ປ້ອນ​ຂໍ້​ສອງ​, ໃນ​ຄໍາ​ສັ່ງ​ນັ້ນ​,
ແລະຮູບແບບຊ່ອງຂອງຜົນຜະລິດຈະເປັນຄ່າເລີ່ມຕົ້ນທີ່ສອດຄ້ອງກັນກັບຈໍານວນທັງຫມົດ
ຈໍານວນຊ່ອງ.

ຕົວຢ່າງ, ຖ້າການປ້ອນຂໍ້ມູນທຳອິດຢູ່ໃນ 2.1 (FL+FR+LF) ແລະອິນພຸດທີສອງແມ່ນ FC+BL+BR,
ຫຼັງຈາກນັ້ນ, ຜົນຜະລິດຈະຢູ່ໃນ 5.1, ໂດຍມີຊ່ອງທາງໃນລໍາດັບຕໍ່ໄປນີ້: a1, a2, b1, a3,
b2, b3 (a1 ແມ່ນຊ່ອງທໍາອິດຂອງການປ້ອນຂໍ້ມູນທໍາອິດ, b1 ແມ່ນຊ່ອງທໍາອິດຂອງຊ່ອງທີສອງ.
ວັດສະດຸປ້ອນ).

ໃນທາງກົງກັນຂ້າມ, ຖ້າທັງສອງ input ຢູ່ໃນ stereo, ຊ່ອງທາງຜົນຜະລິດຈະຢູ່ໃນຄ່າເລີ່ມຕົ້ນ
ລຳດັບ: a1, a2, b1, b2, ແລະຮູບແບບຊ່ອງຈະຖືກຕັ້ງເປັນ 4.0 ໂດຍບໍ່ຕັ້ງໃຈ, ເຊິ່ງອາດຈະ ຫຼື
ອາດຈະບໍ່ເປັນມູນຄ່າທີ່ຄາດໄວ້.

ວັດສະດຸປ້ອນທັງໝົດຕ້ອງມີອັດຕາຕົວຢ່າງ ແລະຮູບແບບດຽວກັນ.

ຖ້າວັດສະດຸປ້ອນບໍ່ມີໄລຍະເວລາດຽວກັນ, ຜົນຜະລິດຈະຢຸດດ້ວຍສັ້ນທີ່ສຸດ.

ຕົວຢ່າງ

·ລວມສອງໄຟລ໌ mono ເຂົ້າໄປໃນສະເຕີລິໂອສະຕຣີມ:

amovie=ຊ້າຍ.wav [l] ; amovie=right.mp3 [r] ; [l​] [r​] ລວມ​

· ການຮວມຫຼາຍອັນສົມມຸດວ່າ 1 ສະຕຣີມວິດີໂອ ແລະ 6 ສະຕຣີມສຽງໃນ input.mkv:

ffmpeg -i input.mkv -filter_complex "[0:1][0:2][0:3][0:4][0:5][0:6] amerge=inputs=6" -c:a pcm_s16le output.mkv

ປະສົມ
ປະ​ສົມ​ການ​ປ້ອນ​ຂໍ້​ມູນ​ສຽງ​ຫຼາຍ​ເຂົ້າ​ໄປ​ໃນ​ຜົນ​ຜະ​ລິດ​ດຽວ​.

ໃຫ້ສັງເກດວ່າການກັ່ນຕອງນີ້ພຽງແຕ່ສະຫນັບສະຫນູນຕົວຢ່າງທີ່ເລື່ອນໄດ້ (the ລວມ ແລະ Pan ການກັ່ນຕອງສຽງ
ສະ​ຫນັບ​ສະ​ຫນູນ​ຫຼາຍ​ຮູບ​ແບບ​)​. ຖ້າ ປະສົມ ການປ້ອນຂໍ້ມູນມີຕົວຢ່າງຈຳນວນເຕັມແລ້ວ ຕົວຢ່າງ ຈະ​ເປັນ
ໃສ່ອັດຕະໂນມັດເພື່ອປະຕິບັດການປ່ຽນເປັນຕົວຢ່າງທີ່ເລື່ອນໄດ້.

ຍົກ​ຕົວ​ຢ່າງ

ffmpeg -i INPUT1 -i INPUT2 -i INPUT3 -filter_complex amix=inputs=3:duration=first:dropout_transition=3 OUTPUT

ຈະປະສົມ 3 input audio streams ກັບ output ດຽວທີ່ມີໄລຍະເວລາດຽວກັນກັບຄັ້ງທໍາອິດ
ການປ້ອນຂໍ້ມູນ ແລະເວລາປ່ຽນເວລາອອກຈາກໂຮງຮຽນ 3 ວິນາທີ.

ມັນຍອມຮັບຕົວກໍານົດການດັ່ງຕໍ່ໄປນີ້:

ວັດສະດຸປ້ອນ
ຈໍານວນຂອງວັດສະດຸປ້ອນ. ຖ້າບໍ່ລະບຸ, ມັນຈະເລີ່ມເປັນ 2.

ໄລຍະເວລາ
ວິທີການກໍານົດການສິ້ນສຸດຂອງນ້ໍາ.

ຍາວທີ່ສຸດ
ໄລຍະເວລາຂອງການປ້ອນຂໍ້ມູນຍາວທີ່ສຸດ. (ຄ່າເລີ່ມຕົ້ນ)

ສັ້ນທີ່ສຸດ
ໄລຍະເວລາຂອງການປ້ອນຂໍ້ມູນສັ້ນທີ່ສຸດ.

ຄັ້ງທໍາອິດ
ໄລຍະເວລາຂອງການປ້ອນຂໍ້ມູນທໍາອິດ.

dropout_transition
ໄລຍະເວລາຂອງການປ່ຽນແປງ, ເປັນວິນາທີ, ສໍາລັບການປັບລະດັບສຽງໃນເວລາທີ່ກະແສການປ້ອນຂໍ້ມູນສິ້ນສຸດລົງ.
ຄ່າເລີ່ມຕົ້ນແມ່ນ 2 ວິນາທີ.

anull
ສົ່ງແຫຼ່ງສຽງທີ່ບໍ່ປ່ຽນແປງໄປຫາຜົນຜະລິດ.

apad
ຈົບການຖ່າຍທອດສຽງດ້ວຍຄວາມງຽບ.

ນີ້ສາມາດຖືກນໍາໃຊ້ຮ່ວມກັນກັບ ffmpeg - ສັ້ນ​ທີ່​ສຸດ​ ເພື່ອຂະຫຍາຍການຖ່າຍທອດສຽງໃຫ້ຍາວເທົ່າກັນ
ເປັນກະແສວິດີໂອ.

ລາຍລະອຽດຂອງທາງເລືອກທີ່ຍອມຮັບດັ່ງຕໍ່ໄປນີ້.

packet_size
ຕັ້ງຄ່າຂະໜາດຊຸດປິດສຽງ. ຄ່າເລີ່ມຕົ້ນແມ່ນ 4096.

pad_len
ກໍານົດຈໍານວນຕົວຢ່າງຂອງຄວາມງຽບທີ່ຈະເພີ່ມໃສ່ທີ່ສຸດ. ຫຼັງຈາກທີ່ໄດ້ບັນລຸມູນຄ່າ,
ກະແສຖືກຢຸດ. ທາງເລືອກນີ້ແມ່ນສະເພາະເຊິ່ງກັນແລະກັນກັບ whole_len.

whole_len
ກຳນົດຈຳນວນຕົວຢ່າງທັງໝົດຕໍ່າສຸດໃນກະແສສຽງທີ່ອອກມາ. ຖ້າມູນຄ່າແມ່ນ
ຍາວກວ່າຄວາມຍາວຂອງສຽງທີ່ປ້ອນເຂົ້າ, ຄວາມງຽບຈະຖືກເພີ່ມໃສ່ທີ່ສຸດ, ຈົນກ່ວາມູນຄ່າແມ່ນ
ຮອດ. ທາງເລືອກນີ້ແມ່ນສະເພາະເຊິ່ງກັນແລະກັນກັບ pad_len.

ຖ້າບໍ່ແມ່ນ pad_len ຫລື whole_len ທາງ​ເລືອກ​ທີ່​ຖືກ​ຕັ້ງ​ໄວ້​, ການ​ກັ່ນ​ຕອງ​ຈະ​ເພີ່ມ​ຄວາມ​ງຽບ​ຂອງ​
ສິ້ນສຸດການປ້ອນຂໍ້ມູນແບບບໍ່ມີກຳນົດ.

ຕົວຢ່າງ

· ເພີ່ມ 1024 ຕົວຢ່າງຂອງຄວາມງຽບໄປໃນຕອນທ້າຍຂອງການປ້ອນຂໍ້ມູນ:

apad=pad_len=1024

· ໃຫ້​ແນ່​ໃຈວ່​າ​ຜົນ​ຜະ​ລິດ​ສຽງ​ຈະ​ປະ​ກອບ​ດ້ວຍ​ຢ່າງ​ຫນ້ອຍ 10000 ຕົວ​ຢ່າງ​, pad input ກັບ​
ຄວາມງຽບຖ້າຕ້ອງການ:

apad=whole_len=10000

· ການ​ນໍາ​ໃຊ້ ffmpeg ເພື່ອ pad ການປ້ອນຂໍ້ມູນສຽງດ້ວຍຄວາມງຽບ, ດັ່ງນັ້ນການຖ່າຍທອດວິດີໂອຈະສະເຫມີ
ຜົນໄດ້ຮັບສັ້ນທີ່ສຸດແລະຈະຖືກປ່ຽນຈົນກ່ວາໃນຕອນທ້າຍຂອງໄຟລ໌ຜົນຜະລິດໃນເວລາທີ່ການນໍາໃຊ້
ໄດ້ ສັ້ນທີ່ສຸດ ຕົວເລືອກ:

ffmpeg -i VIDEO -i AUDIO -filter_complex "[1:0]apad" -shortest OUTPUT

ຕົວຫຍໍ້
ເພີ່ມເອັບເຟັກໄລຍະເຂົ້າໃສ່ສຽງ.

ການກັ່ນຕອງ phaser ສ້າງຊຸດຂອງຈຸດສູງສຸດແລະ troughs ໃນ spectrum ຄວາມຖີ່. ໄດ້
ຕໍາແຫນ່ງຂອງຈຸດສູງສຸດແລະ troughs ແມ່ນ modulated ເພື່ອໃຫ້ພວກມັນແຕກຕ່າງກັນໄປຕາມເວລາ, ການສ້າງ a
ຜົນ​ກະ​ທົບ​ກວາດ​.

ລາຍລະອຽດຂອງຕົວກໍານົດການທີ່ຍອມຮັບດັ່ງຕໍ່ໄປນີ້.

in_gain
ກໍານົດການເພີ່ມການປ້ອນຂໍ້ມູນ. ຄ່າເລີ່ມຕົ້ນແມ່ນ 0.4.

out_gain
ກໍານົດການໄດ້ຮັບຜົນຜະລິດ. ຄ່າເລີ່ມຕົ້ນແມ່ນ 0.74

ຊັກຊ້າ
ກໍານົດຄວາມລ່າຊ້າໃນມິນລິວິນາທີ. ຄ່າເລີ່ມຕົ້ນແມ່ນ 3.0.

ທະລາຍ
ກໍານົດການທໍາລາຍ. ຄ່າເລີ່ມຕົ້ນແມ່ນ 0.4.

ຄວາມ​ໄວ
ຕັ້ງຄ່າຄວາມໄວໂມດູນເປັນ Hz. ຄ່າເລີ່ມຕົ້ນແມ່ນ 0.5.

ປະເພດ
ກໍານົດປະເພດ modulation. ຄ່າເລີ່ມຕົ້ນແມ່ນສາມຫຼ່ຽມ.

ມັນຍອມຮັບຄ່າດັ່ງຕໍ່ໄປນີ້:

ສາມ​ຫຼ່ຽມ​, t
sinusoidal, s

ຕົວຢ່າງ
Resample ສຽງ input ກັບພາລາມິເຕີທີ່ລະບຸ, ໂດຍໃຊ້ libswresample library. ຖ້າ
ບໍ່​ມີ​ການ​ລະ​ບຸ​ໄວ້​ດັ່ງ​ນັ້ນ​ຕົວ​ກັ່ນ​ຕອງ​ອັດ​ຕະ​ໂນ​ມັດ​ຈະ​ປ່ຽນ​ລະ​ຫວ່າງ​ການ​ປ້ອນ​ຂໍ້​ມູນ​ຂອງ​ຕົນ​ແລະ​
ຜົນຜະລິດ.

ການກັ່ນຕອງນີ້ຍັງສາມາດຍືດ / ບີບຂໍ້ມູນສຽງເພື່ອເຮັດໃຫ້ມັນກົງກັບເວລາ
ຫຼືເພື່ອສີດ silence / ຕັດອອກສຽງເພື່ອເຮັດໃຫ້ມັນກົງກັບ timestamps, ເຮັດປະສົມປະສານຂອງ
ທັງ​ສອງ​ຫຼື​ບໍ່​.

ການກັ່ນຕອງຍອມຮັບ syntax [ອັດຕາຕົວຢ່າງ:]resampler_options, ບ່ອນທີ່ ອັດຕາຕົວຢ່າງ ສະແດງອອກ
ອັດຕາຕົວຢ່າງ ແລະ resampler_options ແມ່ນບັນຊີລາຍຊື່ຂອງ ທີ່ສໍາຄັນ=ມູນຄ່າ ຄູ່, ແຍກໂດຍ ":". ເບິ່ງ
ຄູ່ມື ffmpeg-resampler ສໍາລັບບັນຊີລາຍຊື່ຄົບຖ້ວນຂອງທາງເລືອກທີ່ສະຫນັບສະຫນູນ.

ຕົວຢ່າງ

· Resample ສຽງ input ເປັນ 44100Hz:

ຕົວຢ່າງ=44100

· stretch/squeeze ຕົວ​ຢ່າງ​ທີ່​ກໍາ​ນົດ​ເວ​ລາ​ທີ່​ກໍາ​ນົດ​ໄວ້​, ມີ​ສູງ​ສຸດ​ຂອງ 1000 ຕົວ​ຢ່າງ​ຕໍ່
ການ​ຊົດ​ເຊີຍ​ຄັ້ງ​ທີ​ສອງ​:

aresample=async=1000

ຕົວຢ່າງຊັບສິນ
ກໍານົດຈໍານວນຂອງຕົວຢ່າງຕໍ່ແຕ່ລະກອບສຽງຜົນຜະລິດ.

ຊຸດຜົນຜະລິດສຸດທ້າຍອາດມີຈໍານວນຕົວຢ່າງທີ່ແຕກຕ່າງກັນ, ເພາະວ່າຕົວກອງຈະ flush
ຕົວຢ່າງທີ່ຍັງເຫຼືອທັງໝົດເມື່ອສຽງເຂົ້າສັນຍານຈະສິ້ນສຸດ.

ຕົວກອງຍອມຮັບຕົວເລືອກຕໍ່ໄປນີ້:

nb_out_samples, n
ກໍານົດຈໍານວນຂອງເຟຣມຕໍ່ແຕ່ລະກອບສຽງຜົນຜະລິດ. ຕົວເລກແມ່ນມີຈຸດປະສົງເປັນ
ຈໍານວນຕົວຢ່າງ ຕໍ່ ແຕ່ລະຄົນ ຊ່ອງ. ຄ່າເລີ່ມຕົ້ນແມ່ນ 1024.

ແຜ່ນຮອງ, p
ຖ້າຕັ້ງເປັນ 1, ການກັ່ນຕອງຈະ pad ກອບສຽງສຸດທ້າຍທີ່ມີສູນ, ດັ່ງນັ້ນສຸດທ້າຍ
ກອບຈະມີຈໍານວນຕົວຢ່າງດຽວກັນກັບຕົວກ່ອນຫນ້າ. ຄ່າເລີ່ມຕົ້ນແມ່ນ
1.

ຕົວຢ່າງ, ເພື່ອກໍານົດຈໍານວນຕົວຢ່າງຕໍ່ກອບເປັນ 1234 ແລະປິດການໃຊ້ງານ padding ສໍາລັບ
ກອບສຸດທ້າຍ, ໃຊ້:

asetnsamples=n=1234:p=0

ຊັບສົມບັດ
ກໍານົດອັດຕາຕົວຢ່າງໂດຍບໍ່ມີການປ່ຽນແປງຂໍ້ມູນ PCM. ນີ້ຈະສົ່ງຜົນໃຫ້ມີການປ່ຽນແປງຄວາມໄວ
ແລະ pitch.

ຕົວກອງຍອມຮັບຕົວເລືອກຕໍ່ໄປນີ້:

ອັດຕາຕົວຢ່າງ, r
ກໍານົດອັດຕາຕົວຢ່າງຜົນຜະລິດ. ຄ່າເລີ່ມຕົ້ນແມ່ນ 44100 Hz.

ຂໍ້ມູນສະແດງໃຫ້ເຫັນ
ສະແດງແຖວທີ່ມີຂໍ້ມູນຕ່າງໆສຳລັບແຕ່ລະກອບສຽງທີ່ປ້ອນເຂົ້າ. ສຽງປ້ອນເຂົ້າແມ່ນ
ບໍ່ໄດ້ດັດແກ້.

ແຖວທີ່ສະແດງມີລຳດັບຂອງຄູ່ຄີ/ຄ່າຂອງແບບຟອມ ທີ່ສໍາຄັນ:ມູນຄ່າ.

ຄ່າຕໍ່ໄປນີ້ແມ່ນສະແດງຢູ່ໃນຜົນຜະລິດ:

n ຕົວເລກ (ຕາມລໍາດັບ) ຂອງກອບການປ້ອນຂໍ້ມູນ, ເລີ່ມຈາກ 0.

pts ເວ​ລາ​ການ​ນໍາ​ສະ​ເຫນີ​ຂອງ​ກອບ​ການ​ນໍາ​ເຂົ້າ​, ໃນ​ຫົວ​ຫນ່ວຍ​ຖານ​ທີ່​ໃຊ້​ເວ​ລາ​; ຖານ​ທີ່​ໃຊ້​ເວ​ລາ​
ຂຶ້ນກັບແຜ່ນປ້ອນການກັ່ນຕອງ, ແລະປົກກະຕິແລ້ວແມ່ນ 1/ອັດຕາຕົວຢ່າງ.

pts_time
ເວລາການນຳສະເໜີຂອງກອບການປ້ອນຂໍ້ມູນເປັນວິນາທີ.

pos ຕໍາແໜ່ງຂອງກອບໃນກະແສການປ້ອນຂໍ້ມູນ, -1 ຖ້າຂໍ້ມູນນີ້ບໍ່ສາມາດໃຊ້ໄດ້
ແລະ/ຫຼື ບໍ່ມີຄວາມຫມາຍ (ຕົວຢ່າງໃນກໍລະນີຂອງສຽງສັງເຄາະ)

fmt ຮູບແບບຕົວຢ່າງ.

ແຜນຜັງ
ຮູບແບບຊ່ອງ.

ອັດຕາການ
ອັດຕາຕົວຢ່າງສໍາລັບກອບສຽງ.

nb_ຕົວຢ່າງ
ຈໍານວນຕົວຢ່າງ (ຕໍ່ຊ່ອງ) ໃນກອບ.

Checkum
ການກວດສອບ Adler-32 (ພິມເປັນເລກຖານສິບຫົກ) ຂອງຂໍ້ມູນສຽງ. ສໍາລັບສຽງແບບແຜນ,
ຂໍ້​ມູນ​ໄດ້​ຮັບ​ການ​ປະ​ຕິ​ບັດ​ເປັນ​ຖ້າ​ຫາກ​ວ່າ​ຍົນ​ທັງ​ຫມົດ​ໄດ້​ຮັບ​ການ concatenated​.

plane_checksums
ບັນຊີລາຍຊື່ຂອງການກວດສອບ Adler-32 ສໍາລັບແຕ່ລະຍົນຂໍ້ມູນ.

astats
ສະແດງຂໍ້ມູນສະຖິຕິໂດເມນເວລາກ່ຽວກັບຊ່ອງສຽງ. ສະຖິຕິແມ່ນ
ຄິດໄລ່ແລະສະແດງສໍາລັບແຕ່ລະຊ່ອງສຽງແລະ, ບ່ອນທີ່ນໍາໃຊ້, ຕົວເລກໂດຍລວມ
ຍັງໄດ້ມອບໃຫ້.

ມັນຍອມຮັບທາງເລືອກຕໍ່ໄປນີ້:

ຄວາມຍາວ
ຄວາມຍາວຂອງປ່ອງຢ້ຽມສັ້ນໃນວິນາທີ, ໃຊ້ສໍາລັບການວັດແທກສູງສຸດ ແລະ trough RMS. ຄ່າເລີ່ມຕົ້ນແມ່ນ
0.05 (50 ມິນລິວິນາທີ). ໄລຍະອະນຸຍາດແມ່ນ "[0.1 - 10]".

metadata
ກໍານົດການສັກຢາ metadata. ລະຫັດເມຕາເດຕາທັງໝົດຖືກນຳໜ້າດ້ວຍ "lavfi.astats.X",
ບ່ອນທີ່ "X" ແມ່ນໝາຍເລກຊ່ອງເລີ່ມຕົ້ນຈາກ 1 ຫຼື string "ໂດຍລວມ". ຄ່າເລີ່ມຕົ້ນຖືກປິດໃຊ້ງານ.

ລະຫັດທີ່ມີຢູ່ສໍາລັບແຕ່ລະຊ່ອງແມ່ນ: DC_offset Min_level Max_level Min_difference
Max_difference Mean_difference Peak_level RMS_peak RMS_trough Crest_factor Flat_factor
Peak_count Bit_depth

ແລະສໍາລັບໂດຍລວມ: DC_offset Min_level Max_level Min_difference Max_difference
Mean_difference Peak_level RMS_level RMS_peak RMS_trough Flat_factor Peak_count
Bit_depth Number_of_samples

ຕົວຢ່າງ full key ເບິ່ງຄື "lavfi.astats.1.DC_offset" ຫຼືອັນນີ້
"lavfi.astats.Overall.Peak_count".

ສໍາລັບລາຍລະອຽດຂອງແຕ່ລະຄີຫມາຍຄວາມວ່າແນວໃດອ່ານຂ້າງລຸ່ມນີ້.

reset
ກໍານົດຈໍານວນຂອງກອບຫຼັງຈາກນັ້ນສະຖິຕິຈະຖືກຄິດໄລ່ຄືນໃຫມ່. ຄ່າເລີ່ມຕົ້ນແມ່ນ
ພິການ.

ລາຍລະອຽດຂອງແຕ່ລະພາລາມິເຕີທີ່ສະແດງດັ່ງຕໍ່ໄປນີ້:

DC ຊົດເຊີຍ
ການຍ້າຍຄວາມກວ້າງໃຫຍ່ສະເລ່ຍຈາກສູນ.

min ລະດັບ
ລະດັບຕົວຢ່າງຕໍ່າສຸດ.

ສູງສຸດທີ່ເຄຍ ລະດັບ
ລະດັບຕົວຢ່າງສູງສຸດ.

min ຄວາມແຕກຕ່າງ
ຄວາມແຕກຕ່າງຫນ້ອຍລະຫວ່າງສອງຕົວຢ່າງຕິດຕໍ່ກັນ.

ສູງສຸດທີ່ເຄຍ ຄວາມແຕກຕ່າງ
ຄວາມແຕກຕ່າງສູງສຸດລະຫວ່າງສອງຕົວຢ່າງຕິດຕໍ່ກັນ.

ຫມາຍຄວາມວ່າ ຄວາມແຕກຕ່າງ
ຄວາມແຕກຕ່າງລະຫວ່າງສອງຕົວຢ່າງຕິດຕໍ່ກັນ. ຄ່າສະເລ່ຍຂອງແຕ່ລະຄວາມແຕກຕ່າງ
ລະຫວ່າງສອງຕົວຢ່າງຕິດຕໍ່ກັນ.

ຈຸດສູງສຸດ ລະດັບ dB
RMS ລະດັບ dB
ລະດັບສູງສຸດມາດຕະຖານແລະ RMS ວັດແທກໃນ dBFS.

RMS ຈຸດສູງ dB
RMS ເຕົ່າ dB
ສູງສຸດແລະຄ່າ trough ສໍາລັບລະດັບ RMS ວັດແທກໃນໄລຍະປ່ອງຢ້ຽມສັ້ນ.

Crest ປັດໄຈ
ອັດ​ຕາ​ສ່ວນ​ມາດ​ຕະ​ຖານ​ຂອງ​ສູງ​ສຸດ​ກັບ​ລະ​ດັບ RMS (ຫມາຍ​ເຫດ​: ບໍ່​ແມ່ນ​ໃນ dB​)​.

Flat ປັດໄຈ
Flatness (ເຊັ່ນຕົວຢ່າງຕິດຕໍ່ກັນທີ່ມີຄ່າດຽວກັນ) ຂອງສັນຍານຢູ່ທີ່ຈຸດສູງສຸດຂອງມັນ
ລະດັບ (ເຊັ່ນ min ລະດັບ or ສູງສຸດທີ່ເຄຍ ລະດັບ).

ຈຸດສູງສຸດ ນັບ
ຈໍານວນໂອກາດ (ບໍ່ແມ່ນຈໍານວນຕົວຢ່າງ) ທີ່ສັນຍານບັນລຸໄດ້ min
ລະດັບ or ສູງສຸດທີ່ເຄຍ ລະດັບ.

ບິດ ຄວາມເລິກ
ຄວາມເລິກເລັກນ້ອຍຂອງສຽງໂດຍລວມ. ຈໍານວນບິດທີ່ໃຊ້ສໍາລັບແຕ່ລະຕົວຢ່າງ.

astreamsync
ສົ່ງຕໍ່ສອງສາຍສຽງແລະຄວບຄຸມຄໍາສັ່ງຂອງ buffers ຖືກສົ່ງຕໍ່.

ຕົວກອງຍອມຮັບຕົວເລືອກຕໍ່ໄປນີ້:

expr, e
ກໍານົດການສະແດງອອກທີ່ຕັດສິນໃຈວ່ານ້ໍາໃດຄວນຖືກສົ່ງຕໍ່ໄປ: ຖ້າຜົນໄດ້ຮັບແມ່ນ
ໃນທາງລົບ, ກະແສທໍາອິດຖືກສົ່ງຕໍ່; ຖ້າຜົນໄດ້ຮັບເປັນບວກຫຼືສູນ, ທີສອງ
ກະແສຖືກສົ່ງຕໍ່. ມັນສາມາດໃຊ້ຕົວແປຕໍ່ໄປນີ້:

b1 b2
ຈໍານວນ buffers ທີ່ສົ່ງຕໍ່ມາເຖິງຕອນນັ້ນໃນແຕ່ລະສາຍ

s1 s2
ຈໍານວນຕົວຢ່າງທີ່ສົ່ງຕໍ່ມາຮອດປະຈຸບັນໃນແຕ່ລະສາຍ

t1 t2
ເວລາປະຈຸບັນຂອງແຕ່ລະສະຕຣີມ

ຄ່າເລີ່ມຕົ້ນແມ່ນ "t1-t2", ຊຶ່ງຫມາຍຄວາມວ່າຈະສົ່ງຕໍ່ສະຕຣີມທີ່ມີ a
ເວລານ້ອຍລົງ.

ຕົວຢ່າງ

ການທົດສອບຄວາມຄຽດ "ລວມ" ໂດຍການສຸ່ມສົ່ງ buffers ໃນການປ້ອນຂໍ້ມູນທີ່ບໍ່ຖືກຕ້ອງ, ໃນຂະນະທີ່ຫຼີກເວັ້ນຄືກັນ.
desynchronization ຫຼາຍ:

amovie=file.ogg [a] ; amovie=file.mp3 [b] ;
[a] [b] astreamsync=(2*random(1))-1+tanh(5*(t1-t2)) [a2] [b2] ;
[a2​] [b2​] ລວມ​

ບໍ່ສອດຄ່ອງກັນ
ຊິ້ງຂໍ້ມູນສຽງກັບເວລາໂດຍການບີບ/ຍືດມັນ ແລະ/ຫຼືປ່ອຍລົງ
ຕົວຢ່າງ/ເພີ່ມຄວາມງຽບເມື່ອຕ້ອງການ.

ຕົວກອງນີ້ບໍ່ໄດ້ສ້າງຂຶ້ນໂດຍຄ່າເລີ່ມຕົ້ນ, ກະລຸນາໃຊ້ ຕົວຢ່າງ ເພື່ອເຮັດການບີບ / stretching.

ມັນຍອມຮັບຕົວກໍານົດການດັ່ງຕໍ່ໄປນີ້:

ຊົດເຊີຍ
ເປີດໃຊ້ການຍືດ/ບີບຂໍ້ມູນເພື່ອເຮັດໃຫ້ມັນກົງກັບເວລາ. ປິດການໃຊ້ງານໂດຍ
ຄ່າເລີ່ມຕົ້ນ. ເມື່ອຄົນພິການ, ຊ່ອງຫວ່າງເວລາຖືກປົກຄຸມດ້ວຍຄວາມງຽບ.

min_delta
ຄວາມແຕກຕ່າງຕໍາ່ສຸດທີ່ລະຫວ່າງເວລາແລະຂໍ້ມູນສຽງ (ເປັນວິນາທີ) ເພື່ອກະຕຸ້ນ
ເພີ່ມ/ຫຼຸດຕົວຢ່າງ. ຄ່າເລີ່ມຕົ້ນແມ່ນ 0.1. ຖ້າ​ຫາກ​ວ່າ​ທ່ານ​ໄດ້​ຮັບ sync ທີ່​ບໍ່​ສົມ​ບູນ​ແບບ​ກັບ​
ຕົວກອງນີ້, ລອງຕັ້ງພາລາມິເຕີນີ້ເປັນ 0.

max_comp
ການຊົດເຊີຍສູງສຸດໃນຕົວຢ່າງຕໍ່ວິນາທີ. ພຽງແຕ່ກ່ຽວຂ້ອງກັບການຊົດເຊີຍ=1. ໄດ້
ຄ່າເລີ່ມຕົ້ນແມ່ນ 500.

first_pts
ສົມມຸດວ່າ PTS ທໍາອິດຄວນຈະເປັນຄ່ານີ້. ພື້ນຖານເວລາແມ່ນ 1 / ອັດຕາຕົວຢ່າງ. ນີ້
ອະ​ນຸ​ຍາດ​ໃຫ້​ສໍາ​ລັບ​ການ padding / trimming ໃນ​ຕອນ​ຕົ້ນ​ຂອງ​ການ​ນ​້​ໍ​າ​. ໂດຍຄ່າເລີ່ມຕົ້ນ, ບໍ່ມີສົມມຸດຕິຖານ
ໄດ້ເຮັດກ່ຽວກັບ PTS ທີ່ຄາດໄວ້ຂອງກອບທໍາອິດ, ດັ່ງນັ້ນບໍ່ມີ padding ຫຼື trimming ແມ່ນເຮັດ. ສໍາລັບ
ຕົວຢ່າງ, ນີ້ສາມາດຖືກຕັ້ງເປັນ 0 ເພື່ອ pad ເລີ່ມຕົ້ນດ້ວຍຄວາມງຽບຖ້າການຖ່າຍທອດສຽງ
ເລີ່ມ​ຕົ້ນ​ຫຼັງ​ຈາກ​ການ​ສະ​ຕ​ຣີມ​ວິ​ດີ​ໂອ​ຫຼື​ການ​ຕັດ​ຕົວ​ຢ່າງ​ໃດ​ຫນຶ່ງ​ທີ່​ມີ PTS ລົບ​ເນື່ອງ​ຈາກ​
ຄວາມລ່າຊ້າຂອງຕົວເຂົ້າລະຫັດ.

ບົດຟ້ອນ
ປັບຊ່ວງສຽງ.

ການກັ່ນຕອງຍອມຮັບຢ່າງແນ່ນອນຫນຶ່ງພາລາມິເຕີ, tempo ສຽງ. ຖ້າບໍ່ໄດ້ລະບຸ, ຫຼັງຈາກນັ້ນ
ການກັ່ນຕອງຈະສົມມຸດ 1.0 tempo nominal. Tempo ຈະຕ້ອງຢູ່ໃນຂອບເຂດ [0.5, 2.0].

ຕົວຢ່າງ

· ຊ້າລົງສຽງເປັນ 80% tempo:

tempo=0.8

· ເພື່ອເລັ່ງສຽງເຖິງ 125% tempo:

tempo=1.25

ເສື້ອຍືດ
ຕັດວັດສະດຸປ້ອນເພື່ອໃຫ້ຜົນຜະລິດມີສ່ວນຍ່ອຍຕໍ່ເນື່ອງຂອງວັດສະດຸປ້ອນ.

ມັນຍອມຮັບຕົວກໍານົດການດັ່ງຕໍ່ໄປນີ້:

ການເລີ່ມຕົ້ນ
Timestamp (ເປັນວິນາທີ) ຂອງການເລີ່ມຕົ້ນຂອງພາກສ່ວນທີ່ຈະຮັກສາ. ເຊັ່ນຕົວຢ່າງສຽງກັບ
ສະແຕມເວລາ ການເລີ່ມຕົ້ນ ຈະເປັນຕົວຢ່າງທໍາອິດໃນຜົນຜະລິດ.

ໃນຕອນທ້າຍ ລະບຸເວລາຂອງຕົວຢ່າງສຽງທໍາອິດທີ່ຈະຖືກຫຼຸດລົງ, ເຊັ່ນຕົວຢ່າງສຽງ
ທັນທີທັນໃດກ່ອນຫນຶ່ງທີ່ມີເວລາ ໃນຕອນທ້າຍ ຈະເປັນຕົວຢ່າງສຸດທ້າຍໃນ
ຜົນຜະລິດ.

start_pts
ຄື​ກັນ​ກັບ ການເລີ່ມຕົ້ນ, ຍົກເວັ້ນທາງເລືອກນີ້ກໍານົດເວລາເລີ່ມຕົ້ນໃນຕົວຢ່າງແທນທີ່ຈະເປັນ
ວິນາທີ.

end_pts
ຄື​ກັນ​ກັບ ໃນຕອນທ້າຍ, ຍົກເວັ້ນທາງເລືອກນີ້ກໍານົດເວລາສິ້ນສຸດໃນຕົວຢ່າງແທນທີ່ຈະເປັນວິນາທີ.

ໄລຍະເວລາ
ໄລຍະເວລາສູງສຸດຂອງຜົນຜະລິດໃນວິນາທີ.

start_ຕົວຢ່າງ
ຈໍານວນຕົວຢ່າງທໍາອິດທີ່ຄວນຈະເປັນຜົນຜະລິດ.

end_sample
ຈໍານວນຕົວຢ່າງທໍາອິດທີ່ຄວນຈະຖືກຫຼຸດລົງ.

ການເລີ່ມຕົ້ນ, ໃນຕອນທ້າຍ, ແລະ ໄລຍະເວລາ ສະແດງອອກເປັນການກໍານົດໄລຍະເວລາ; ເບິ່ງ ໄດ້ ທີ່ໃຊ້ເວລາ
ໄລຍະເວລາ ສ່ວນ in ໄດ້ ffmpeg-utils(1​) ຄູ່ມື.

ໃຫ້ສັງເກດວ່າສອງຊຸດທໍາອິດຂອງຕົວເລືອກເລີ່ມຕົ້ນ / ສິ້ນສຸດແລະ ໄລຍະເວລາ ທາງເລືອກເບິ່ງຢູ່ໃນ
frame timestamp, ໃນຂະນະທີ່ຕົວເລືອກ _sample ພຽງແຕ່ນັບຕົວຢ່າງທີ່ຜ່ານ
ການກັ່ນຕອງ. ດັ່ງນັ້ນ start/end_pts ແລະ start/end_sample ຈະໃຫ້ຜົນໄດ້ຮັບທີ່ແຕກຕ່າງກັນເມື່ອ
ການສະແຕມເວລາແມ່ນຜິດພາດ, ບໍ່ແນ່ນອນ ຫຼືບໍ່ໄດ້ເລີ່ມຕົ້ນທີ່ສູນ. ໃຫ້ສັງເກດວ່າການກັ່ນຕອງນີ້ບໍ່ໄດ້
ປັບປ່ຽນເວລາ. ຖ້າ​ຫາກ​ວ່າ​ທ່ານ​ຕ້ອງ​ການ​ທີ່​ຈະ​ມີ​ການ​ສະ​ແຕມ​ຜົນ​ໄດ້​ຮັບ​ເລີ່ມ​ຕົ້ນ​ທີ່​ສູນ​, ໃສ່​
ການກັ່ນຕອງ asetpts ຫຼັງຈາກການກັ່ນຕອງ atrim.

ຖ້າຫຼາຍທາງເລືອກເລີ່ມຕົ້ນຫຼືສິ້ນສຸດຖືກຕັ້ງ, ຕົວກອງນີ້ພະຍາຍາມທີ່ຈະໂລບແລະຮັກສາທັງຫມົດ
ຕົວຢ່າງທີ່ກົງກັນຢ່າງໜ້ອຍໜຶ່ງໃນຂໍ້ຈຳກັດທີ່ລະບຸໄວ້. ເພື່ອຮັກສາພຽງແຕ່ສ່ວນທີ່
ກົງກັບຂໍ້ຈຳກັດທັງໝົດໃນຄັ້ງດຽວ, ສາຍຕ່ອງໂສ້ການກັ່ນຕອງ atrim ຫຼາຍ.

ຄ່າເລີ່ມຕົ້ນແມ່ນແບບນັ້ນທີ່ວັດສະດຸປ້ອນທັງຫມົດຖືກເກັບຮັກສາໄວ້. ສະນັ້ນມັນເປັນໄປໄດ້ທີ່ຈະກໍານົດຕົວຢ່າງພຽງແຕ່ໄດ້
ຄ່າສິ້ນສຸດເພື່ອຮັກສາທຸກຢ່າງກ່ອນເວລາທີ່ກໍານົດໄວ້.

ຕົວຢ່າງ:

· ວາງທຸກຢ່າງຍົກເວັ້ນນາທີທີສອງຂອງການປ້ອນຂໍ້ມູນ:

ffmpeg -i INPUT -af atrim=60:120

· ຮັກສາພຽງແຕ່ 1000 ຕົວຢ່າງທໍາອິດ:

ffmpeg -i INPUT -af atrim=end_sample=1000

bandpass
ນຳໃຊ້ຕົວກອງສອງເສົາ Butterworth band-pass ທີ່ມີຄວາມຖີ່ກາງ ຄວາມຖີ່, ແລະ
(3dB-point) ຄວາມກວ້າງຂອງແຖບຄວາມກວ້າງ. ໄດ້ csg ທາງ​ເລືອກ​ເລືອກ​ການ​ຮັບ skirt ຄົງ​ທີ່ (ການ​ເພີ່ມ​ສູງ​ສຸດ =
Q) ແທນທີ່ຈະເປັນຄ່າເລີ່ມຕົ້ນ: ຄົງທີ່ 0dB ເພີ່ມຂຶ້ນສູງສຸດ. ການກັ່ນຕອງມ້ວນອອກຢູ່ທີ່ 6dB ຕໍ່ octave
(20dB ຕໍ່ທົດສະວັດ).

ຕົວກອງຍອມຮັບຕົວເລືອກຕໍ່ໄປນີ້:

ຄວາມຖີ່, f
ກໍານົດຄວາມຖີ່ສູນກາງຂອງການກັ່ນຕອງ. ຄ່າເລີ່ມຕົ້ນແມ່ນ 3000.

csg ການເພີ່ມ skirt ຄົງທີ່ຖ້າຕັ້ງເປັນ 1. ຄ່າເລີ່ມຕົ້ນເປັນ 0.

width_type
ກໍານົດວິທີການກໍານົດ band-width ຂອງການກັ່ນຕອງ.

h Hz

q Q-Factor

o octave

s ເປີ້ນພູ

ຄວາມກວ້າງ, w
ລະບຸແຖບຄວາມກວ້າງຂອງຕົວກອງໃນຫົວໜ່ວຍ width_type.

ປະຕິເສດ
ນຳໃຊ້ການກັ່ນຕອງການປະຕິເສດແຖບ Butterworth ສອງເສົາທີ່ມີຄວາມຖີ່ກາງ ຄວາມຖີ່, ແລະ
(3dB-point) ແຖບຄວາມກວ້າງ width. ການກັ່ນຕອງມ້ວນອອກຢູ່ທີ່ 6dB ຕໍ່ octave (20dB ຕໍ່ທົດສະວັດ).

ຕົວກອງຍອມຮັບຕົວເລືອກຕໍ່ໄປນີ້:

ຄວາມຖີ່, f
ກໍານົດຄວາມຖີ່ສູນກາງຂອງການກັ່ນຕອງ. ຄ່າເລີ່ມຕົ້ນແມ່ນ 3000.

width_type
ກໍານົດວິທີການກໍານົດ band-width ຂອງການກັ່ນຕອງ.

h Hz

q Q-Factor

o octave

s ເປີ້ນພູ

ຄວາມກວ້າງ, w
ລະບຸແຖບຄວາມກວ້າງຂອງຕົວກອງໃນຫົວໜ່ວຍ width_type.

bass
ເພີ່ມ ຫຼືຕັດຄວາມຖີ່ຂອງສຽງເບດ (ຕ່ໍາ) ຂອງສຽງໂດຍໃຊ້ຕົວກອງຊັ້ນວາງສອງເສົາ
ດ້ວຍ​ການ​ຕອບ​ສະ​ຫນອງ​ຄ້າຍ​ຄື​ກັນ​ກັບ​ມາດ​ຕະ​ຖານ​ຂອງ​ການ​ຄວບ​ຄຸມ​ສຽງ​ຂອງ hi-fi​. ອັນນີ້ຍັງເອີ້ນວ່າ
shelving equalization (EQ).

ຕົວກອງຍອມຮັບຕົວເລືອກຕໍ່ໄປນີ້:

ໄດ້​ຮັບ​, g
ໃຫ້ກຳໄລຢູ່ທີ່ 0 Hz. ລະດັບທີ່ເປັນປະໂຫຍດຂອງມັນແມ່ນປະມານ -20 (ສໍາລັບການຕັດຂະຫນາດໃຫຍ່) ເຖິງ +20 (ສໍາລັບ a
ການ​ຂະ​ຫຍາຍ​ຕົວ​ຂະ​ຫນາດ​ໃຫຍ່​)​. ລະວັງຂອງ clipping ໃນເວລາທີ່ນໍາໃຊ້ຜົນປະໂຫຍດໃນທາງບວກ.

ຄວາມຖີ່, f
ກໍານົດຄວາມຖີ່ສູນກາງຂອງການກັ່ນຕອງແລະອື່ນໆສາມາດຖືກນໍາໃຊ້ເພື່ອຂະຫຍາຍຫຼືຫຼຸດຜ່ອນການ
ຊ່ວງຄວາມຖີ່ທີ່ຈະເພີ່ມ ຫຼືຕັດ. ຄ່າເລີ່ມຕົ້ນແມ່ນ 100 Hz.

width_type
ກໍານົດວິທີການກໍານົດ band-width ຂອງການກັ່ນຕອງ.

h Hz

q Q-Factor

o octave

s ເປີ້ນພູ

ຄວາມກວ້າງ, w
ກຳນົດໄລຍະການປ່ຽນຊັ້ນວາງຂອງຕົວກອງ.

biquad
ນຳໃຊ້ຕົວກອງ biquad IIR ດ້ວຍຄ່າສຳປະສິດທີ່ໃຫ້ໄວ້. ຢູ່ໃສ b0, b1, b2 ແລະ a0, a1, a2
ແມ່ນຕົວຫານຕົວຫານ ແລະ ຕົວຫານຕາມລໍາດັບ.

bs2b
Bauer stereo ກັບການຫັນເປັນ binaural, ເຊິ່ງປັບປຸງການຟັງຫູຟັງຂອງ stereo
ບັນທຶກສຽງ.

ມັນຍອມຮັບຕົວກໍານົດການດັ່ງຕໍ່ໄປນີ້:

ຂໍ້​ມູນ
ລະດັບ crossfeed ທີ່ກຳນົດໄວ້ລ່ວງໜ້າ.

Default
ລະດັບເລີ່ມຕົ້ນ (fcut=700, feed=50).

cmoy
ວົງຈອນ Chu Moy (fcut=700, feed=60).

ເຈມີຍ
ວົງຈອນ Jan Meier (fcut=650, feed=95).

fcut
ຕັດຄວາມຖີ່ (ເປັນ Hz).

ອາ​ຫານ
ລະດັບອາຫານ (ເປັນ Hz).

ແຜນທີ່ຊ່ອງ
Remap ຊ່ອງທາງການປ້ອນຂໍ້ມູນໄປຫາສະຖານທີ່ໃຫມ່.

ມັນຍອມຮັບຕົວກໍານົດການດັ່ງຕໍ່ໄປນີ້:

channel_layout
ຮູບແບບຊ່ອງຂອງນ້ໍາຜົນຜະລິດ.

ແຜນທີ່ ຊ່ອງທາງແຜນທີ່ຈາກວັດສະດຸປ້ອນໄປຫາຜົນຜະລິດ. argument ເປັນ '|' - ແຍກລາຍຊື່ແຜນທີ່,
ແຕ່​ລະ​ຄົນ​ໃນ "in_channel-out_channel" or in_channel ແບບຟອມ. in_channel ສາມາດເປັນໄດ້
ຊື່ຂອງຊ່ອງປ້ອນຂໍ້ມູນ (ເຊັ່ນ: FL ສໍາລັບດ້ານຊ້າຍ) ຫຼືດັດຊະນີຂອງມັນຢູ່ໃນຊ່ອງປ້ອນຂໍ້ມູນ
ຮູບແບບ. out_channel ແມ່ນຊື່ຂອງຊ່ອງທາງຜົນຜະລິດຫຼືດັດຊະນີຂອງມັນຢູ່ໃນຜົນຜະລິດ
ຮູບ​ແບບ​ຊ່ອງ​. ຖ້າ out_channel ບໍ່ໄດ້ໃຫ້ຫຼັງຈາກນັ້ນມັນແມ່ນ implicitly ດັດຊະນີ, ເລີ່ມຕົ້ນ
ກັບສູນແລະເພີ່ມຂຶ້ນຫນຶ່ງສໍາລັບແຕ່ລະແຜນທີ່.

ຖ້າບໍ່ມີການສ້າງແຜນທີ່, ຕົວກອງຈະສ້າງແຜນທີ່ຊ່ອງທາງການປ້ອນຂໍ້ມູນໄປຫາຜົນໄດ້ຮັບ
ຊ່ອງທາງ, ຮັກສາດັດຊະນີ.

ຕົວຢ່າງ, ສົມມຸດວ່າໄຟລ໌ MOV 5.1+ downmix,

ffmpeg -i in.mov -filter 'channelmap=map=DL-FL|DR-FR' out.wav

ຈະສ້າງໄຟລ໌ WAV ຜົນຜະລິດທີ່ຖືກ tagged ເປັນ stereo ຈາກຊ່ອງ downmix ຂອງວັດສະດຸປ້ອນ.

ເພື່ອແກ້ໄຂ 5.1 WAV ທີ່ເຂົ້າລະຫັດບໍ່ຖືກຕ້ອງໃນຄໍາສັ່ງຊ່ອງພື້ນເມືອງຂອງ AAC

ffmpeg -i in.wav -filter 'channelmap=1|2|0|5|3|4:5.1' out.wav

ຊ່ອງ​ທາງ
ແຍກແຕ່ລະຊ່ອງຈາກສະຕຣີມສຽງປ້ອນເຂົ້າເຂົ້າໄປໃນສະຕຣີມຜົນຜະລິດແຍກຕ່າງຫາກ.

ມັນຍອມຮັບຕົວກໍານົດການດັ່ງຕໍ່ໄປນີ້:

channel_layout
ຮູບແບບຊ່ອງຂອງກະແສການປ້ອນຂໍ້ມູນ. ຄ່າເລີ່ມຕົ້ນແມ່ນ "stereo".

ສໍາ​ລັບ​ຕົວ​ຢ່າງ​, ສົມ​ມຸດ​ວ່າ​ໄຟລ​໌ MP3 stereo ປ້ອນ​,

ffmpeg -i in.mp3 -filter_complex channelsplit out.mkv

ຈະສ້າງໄຟລ໌ Matroska ທີ່ມີຜົນຜະລິດສອງສາຍສຽງ, ອັນໜຶ່ງມີພຽງທາງຊ້າຍ
ຊ່ອງ​ທາງ​ແລະ​ອື່ນໆ​ຊ່ອງ​ທາງ​ທີ່​ຖືກ​ຕ້ອງ​.

ແຍກໄຟລ໌ 5.1 WAV ເປັນໄຟລ໌ຕໍ່ຊ່ອງ:

ffmpeg -i in.wav -filter_complex
'channelspit=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

ຮ້ອງເພງ
ເພີ່ມເອັບເຟັກ chorus ໃສ່ສຽງ.

ສາມາດເຮັດໃຫ້ສຽງຮ້ອງດຽວຄືກັບສຽງຮ້ອງ, ແຕ່ຍັງສາມາດໃຊ້ກັບເຄື່ອງດົນຕີໄດ້.

Chorus ຄ້າຍຄືກັບຜົນກະທົບຂອງສຽງສະທ້ອນກັບການຊັກຊ້າສັ້ນ, ແຕ່ໃນຂະນະທີ່ສຽງສະທ້ອນແມ່ນຄວາມລ່າຊ້າ
ຄົງທີ່, ມີ chorus, ມັນແຕກຕ່າງກັນໂດຍການນໍາໃຊ້ modulation sinusoidal ຫຼືສາມຫຼ່ຽມ. ໄດ້
ຄວາມເລິກ modulation ກໍານົດຂອບເຂດຄວາມລ່າຊ້າ modulated ແມ່ນຫຼິ້ນກ່ອນຫຼືຫຼັງຈາກ
ຊັກຊ້າ. ດັ່ງນັ້ນສຽງທີ່ຊັກຊ້າຈະສຽງຊ້າລົງຫຼືໄວ, ນັ້ນແມ່ນສຽງທີ່ຊັກຊ້າ
ປັບຮອບສຽງຕົ້ນສະບັບ, ຄືກັບການຮ້ອງເພງທີ່ບາງສຽງຮ້ອງບໍ່ສຳຄັນ.

ມັນຍອມຮັບຕົວກໍານົດການດັ່ງຕໍ່ໄປນີ້:

in_gain
ກໍານົດການເພີ່ມການປ້ອນຂໍ້ມູນ. ຄ່າເລີ່ມຕົ້ນແມ່ນ 0.4.

out_gain
ກໍານົດການໄດ້ຮັບຜົນຜະລິດ. ຄ່າເລີ່ມຕົ້ນແມ່ນ 0.4.

ການຊັກຊ້າ
ກໍານົດຄວາມລ່າຊ້າ. ຄວາມລ່າຊ້າປົກກະຕິແມ່ນປະມານ 40ms ຫາ 60ms.

ຊຸດໂຊມ
ກໍານົດການທໍາລາຍ.

ຄວາມໄວ
ກໍານົດຄວາມໄວ.

ຄວາມເລິກ
ກໍານົດຄວາມເລິກ.

ຕົວຢ່າງ

· ການ​ຊັກ​ຊ້າ​ດຽວ​:

chorus=0.7:0.9:55:0.4:0.25:2

· ສອງ​ຄວາມ​ຊັກ​ຊ້າ​:

chorus=0.6:0.9:50|60:0.4|0.32:0.25|0.4:2|1.3

· chorus ສຽງ​ເຕັມ​ທີ່​ມີ​ສາມ​ການ​ຊັກ​ຊ້າ​:

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

ບັງຄັບ
ບີບອັດ ຫຼືຂະຫຍາຍໄລຍະໄດນາມິກຂອງສຽງ.

ມັນຍອມຮັບຕົວກໍານົດການດັ່ງຕໍ່ໄປນີ້:

ການໂຈມຕີ
ຊຸດໂຊມ
ບັນຊີລາຍຊື່ຂອງເວລາເປັນວິນາທີສໍາລັບແຕ່ລະຊ່ອງໃນໄລຍະທີ່ລະດັບທັນທີທັນໃດຂອງ
ສັນຍານ input ແມ່ນສະເລ່ຍເພື່ອກໍານົດປະລິມານຂອງມັນ. ການໂຈມຕີ ຫມາຍເຖິງການເພີ່ມປະລິມານ
ແລະ ຊຸດໂຊມ ຫມາຍເຖິງການຫຼຸດລົງຂອງປະລິມານ. ສໍາລັບສະຖານະການສ່ວນໃຫຍ່, ເວລາການໂຈມຕີ
(ການ​ຕອບ​ສະ​ຫນອງ​ກັບ​ສຽງ​ໄດ້​ຮັບ louder​) ຄວນ​ຈະ​ສັ້ນ​ກ​່​ວາ​ທີ່​ໃຊ້​ເວ​ລາ​ເສຍ​ຫາຍ​, ເນື່ອງ​ຈາກ​ວ່າ​
ຫູຂອງມະນຸດມີຄວາມອ່ອນໄຫວຕໍ່ກັບສຽງດັງກະທັນຫັນກວ່າສຽງອ່ອນໆຢ່າງກະທັນຫັນ. ປົກກະຕິ
ຄ່າສໍາລັບການໂຈມຕີແມ່ນ 0.3 ວິນາທີ ແລະຄ່າປົກກະຕິສໍາລັບການທໍາລາຍແມ່ນ 0.8 ວິນາທີ. ຖ້າ
ຈໍາ​ນວນ​ການ​ໂຈມ​ຕີ & decays ທີ່​ກໍາ​ນົດ​ໄວ້​ແມ່ນ​ຕ​່​ໍ​າ​ກ​່​ວາ​ຈໍາ​ນວນ​ຊ່ອງ​, ຊຸດ​ສຸດ​ທ້າຍ​
ການໂຈມຕີ/ການເສື່ອມໂຊມຈະຖືກນໍາໃຊ້ສໍາລັບຊ່ອງທີ່ຍັງເຫຼືອທັງໝົດ.

ຈຸດ
ບັນຊີລາຍຊື່ຂອງຈຸດສໍາລັບຫນ້າທີ່ໂອນ, ລະບຸໄວ້ໃນ dB ທຽບກັບສູງສຸດ
ຄວາມກວ້າງຂອງສັນຍານທີ່ເປັນໄປໄດ້. ແຕ່ລະລາຍການຈຸດສໍາຄັນຕ້ອງຖືກກໍານົດໂດຍໃຊ້ຕໍ່ໄປນີ້
syntax: "x0/y0|x1/y1|x2/y2|...." ຫຼື "x0/y0 x1/y1 x2/y2 ...."

ຄ່າການປ້ອນຂໍ້ມູນຕ້ອງຢູ່ໃນລໍາດັບທີ່ເພີ່ມຂຶ້ນຢ່າງເຂັ້ມງວດແຕ່ຫນ້າທີ່ໂອນຍ້າຍເຮັດ
ບໍ່ຈໍາເປັນຕ້ອງເພີ່ມຂຶ້ນ monotonically. ຈຸດ "0/0" ແມ່ນສົມມຸດວ່າແຕ່ອາດຈະຖືກ overridden
(ໂດຍ "0/out-dBn"). ຄ່າປົກກະຕິສໍາລັບຟັງຊັນການໂອນແມ່ນ "-70/-70|-60/-20".

ເຈັບຫົວເຂົ່າ
ຕັ້ງລັດສະໝີເສັ້ນໂຄ້ງເປັນ dB ສໍາລັບຂໍ້ຕໍ່ທັງໝົດ. ມັນເລີ່ມຕົ້ນເປັນ 0.01.

ເພີ່ມ
ກໍານົດການໄດ້ຮັບເພີ່ມເຕີມໃນ dB ທີ່ຈະນໍາໃຊ້ໃນທຸກຈຸດໃນຟັງຊັນການໂອນ.
ນີ້ອະນຸຍາດໃຫ້ສໍາລັບການປັບຕົວງ່າຍຂອງການໄດ້ຮັບໂດຍລວມ. ມັນຕັ້ງໄວ້ເປັນ 0.

ປະລິມານ
ກໍານົດປະລິມານເບື້ອງຕົ້ນ, ໃນ dB, ທີ່ຈະສົມມຸດສໍາລັບແຕ່ລະຊ່ອງໃນເວລາທີ່ການກັ່ນຕອງເລີ່ມຕົ້ນ.
ນີ້ອະນຸຍາດໃຫ້ຜູ້ໃຊ້ສະຫນອງລະດັບນາມເບື້ອງຕົ້ນ, ດັ່ງນັ້ນ, ສໍາລັບຕົວຢ່າງ, a
ການໄດ້ຮັບຂະຫນາດໃຫຍ່ຫຼາຍບໍ່ໄດ້ຖືກນໍາໃຊ້ກັບລະດັບສັນຍານເບື້ອງຕົ້ນກ່ອນທີ່ຈະ companding ມີ
ໄດ້​ເລີ່ມ​ຕົ້ນ​ການ​ດໍາ​ເນີນ​ງານ​. ຄ່າປົກກະຕິສໍາລັບສຽງທີ່ງຽບໃນເບື້ອງຕົ້ນແມ່ນ -90 dB. ມັນ
ຄ່າເລີ່ມຕົ້ນເປັນ 0.

ຊັກຊ້າ
ກໍານົດການຊັກຊ້າ, ໃນວິນາທີ. ສຽງທີ່ປ້ອນເຂົ້າຈະຖືກວິເຄາະທັນທີ, ແຕ່ສຽງແມ່ນຊັກຊ້າ
ກ່ອນຈະຖືກປ້ອນໃສ່ເຄື່ອງປັບລະດັບສຽງ. ກໍານົດຄວາມລ່າຊ້າປະມານເທົ່າກັບ
ເວລາການໂຈມຕີ/ການເສື່ອມໂຊມເຮັດໃຫ້ຕົວກອງສາມາດເຮັດວຽກໄດ້ຢ່າງມີປະສິດທິພາບໃນການຄາດເດົາຫຼາຍກວ່າ
ໂໝດປະຕິກິລິຍາ. ມັນຕັ້ງໄວ້ເປັນ 0.

ຕົວຢ່າງ

· ເຮັດດົນຕີທີ່ມີທັງສຽງງຽບ ແລະສຽງດັງ ເໝາະສຳລັບການຟັງສຽງດັງ
ສະພາບແວດລ້ອມ:

compand=.3|.3:1|1:-90/-60|-60/-40|-40/-30|-20/-20:6:0:-90:0.2

ຕົວຢ່າງອີກອັນໜຶ່ງສຳລັບສຽງທີ່ມີສຽງກະຊິບ ແລະ ຊິ້ນສ່ວນລະເບີດ:

compand=0|0:1|1:-90/-900|-70/-70|-30/-9|0/-3:6:0:0:0

· ປະຕູ​ສຽງ​ສຳລັບ​ເມື່ອ​ສຽງ​ດັງ​ຢູ່​ໃນ​ລະດັບ​ຕ່ຳ​ກວ່າ​ສັນຍານ:

compand=.1|.1:.2|.2:-900/-900|-50.1/-900|-50/-50:.01:0:-90:.1

·ນີ້ແມ່ນປະຕູສິ່ງລົບກວນອີກອັນຫນຶ່ງ, ເວລານີ້ສໍາລັບເວລາທີ່ສິ່ງລົບກວນຢູ່ໃນລະດັບສູງກວ່າ
ສັນຍານ (ເຮັດໃຫ້ມັນ, ໃນບາງວິທີ, ຄ້າຍຄືກັບ squelch):

compand=.1|.1:.1|.1:-45.1/-45.1|-45/-900|0/-900:.01:45:-90:.1

dcshift
ນຳໃຊ້ການປ່ຽນ DC ກັບສຽງ.

ນີ້ສາມາດເປັນປະໂຫຍດທີ່ຈະເອົາການຊົດເຊີຍ DC (ເກີດຈາກບັນຫາຮາດແວໃນ
ລະບົບຕ່ອງໂສ້ການບັນທຶກ) ຈາກສຽງ. ຜົນກະທົບຂອງການຊົດເຊີຍ DC ແມ່ນຫຼຸດລົງ headroom ແລະເພາະສະນັ້ນ
ປະລິມານ. ໄດ້ astats ການກັ່ນຕອງສາມາດຖືກນໍາໃຊ້ເພື່ອກໍານົດວ່າສັນຍານມີການຊົດເຊີຍ DC.

ປ່ຽນແປງ
ກໍານົດການປ່ຽນ DC, ໄລຍະທີ່ອະນຸຍາດແມ່ນ [-1, 1]. ມັນຊີ້ໃຫ້ເຫັນຈໍານວນທີ່ຈະປ່ຽນ
ສຽງ.

ຈຳກັດ
ທາງເລືອກ. ມັນຄວນຈະມີຄ່າໜ້ອຍກວ່າ 1 (ຕົວຢ່າງ: 0.05 ຫຼື 0.02) ແລະໃຊ້ເພື່ອ
ປ້ອງກັນບໍ່ໃຫ້ clipping.

dynaudnorm
ໄດນາມິກສຽງປົກກະຕິ.

ການກັ່ນຕອງນີ້ໃຊ້ຈໍານວນທີ່ແນ່ນອນຂອງການເພີ່ມຂຶ້ນຂອງສຽງທີ່ປ້ອນເຂົ້າເພື່ອນໍາເອົາຈຸດສູງສຸດຂອງມັນ
ຂະຫນາດໃນລະດັບເປົ້າຫມາຍ (ຕົວຢ່າງ: 0 dBFS). ຢ່າງໃດກໍຕາມ, ກົງກັນຂ້າມກັບ "ງ່າຍດາຍ" ຫຼາຍ.
ສູດການຄິດໄລ່ການເຮັດໃຫ້ເປັນປົກກະຕິ, Dynamic Audio Normalizer *ແບບໄດນາມິກ* ປັບການຮັບຄືນໃໝ່
ປັດໄຈໃນການປ້ອນຂໍ້ມູນສຽງ. ນີ້ອະນຸຍາດໃຫ້ສໍາລັບການນໍາໃຊ້ປະໂຫຍດເພີ່ມເຕີມຕໍ່ກັບພາກສ່ວນ "ງຽບ" ຂອງ
ສຽງໃນຂະນະທີ່ຫຼີກເວັ້ນການບິດເບືອນຫຼືຕັດພາກສ່ວນ "ດັງ". ໃນຄໍາສັບຕ່າງໆອື່ນໆ: ໄດ້
Dynamic Audio Normalizer ຈະ "ເຖິງແມ່ນວ່າອອກ" ປະລິມານຂອງພາກສ່ວນທີ່ງຽບແລະ loud, ໃນ
ຮູ້ສຶກວ່າປະລິມານຂອງແຕ່ລະພາກສ່ວນຖືກນໍາມາສູ່ລະດັບເປົ້າຫມາຍດຽວກັນ. ຫມາຍເຫດ, ຢ່າງໃດກໍຕາມ,
ວ່າ Dynamic Audio Normalizer ບັນ​ລຸ​ເປົ້າ​ຫມາຍ​ນີ້ * ໂດຍ​ບໍ່​ມີ * ການ​ນໍາ​ໃຊ້ "ໄລ​ຍະ​ການ​ເຄື່ອນ​ໄຫວ​
ການບີບອັດ". ມັນຈະຮັກສາ 100% ຂອງຊ່ວງໄດນາມິກ *ພາຍໃນ* ແຕ່ລະພາກສ່ວນຂອງສຽງ
ຍື່ນ.

f ກໍານົດຄວາມຍາວຂອງກອບເປັນ milliseconds. ໃນລະຫວ່າງ 10 ຫາ 8000 ມິນລິວິນາທີ. ຄ່າເລີ່ມຕົ້ນ
ແມ່ນ 500 ມິນລິວິນາທີ. Dynamic Audio Normalizer ປະມວນຜົນສຽງປ້ອນເຂົ້າເປັນຂະໜາດນ້ອຍ
chunks, ເອີ້ນວ່າກອບ. ອັນນີ້ແມ່ນຕ້ອງການ, ເພາະວ່າລະດັບສູງສຸດແມ່ນບໍ່ມີ
ຄວາມຫມາຍສໍາລັບຄ່າຕົວຢ່າງດຽວ. ແທນທີ່ຈະ, ພວກເຮົາຈໍາເປັນຕ້ອງກໍານົດຈຸດສູງສຸດ
ຂະໜາດສຳລັບລຳດັບທີ່ຕິດກັນຂອງຄ່າຕົວຢ່າງ. ໃນຂະນະທີ່ "ມາດຕະຖານ" normalizer
ພຽງແຕ່ຈະໃຊ້ຂະຫນາດສູງສຸດຂອງໄຟລ໌ທີ່ສົມບູນ, ໄດນາມິກສຽງປົກກະຕິ
ກຳນົດຂະໜາດສູງສຸດເປັນສ່ວນບຸກຄົນສຳລັບແຕ່ລະກອບ. ຄວາມຍາວຂອງກອບແມ່ນ
ລະບຸເປັນ milliseconds. ໂດຍຄ່າເລີ່ມຕົ້ນ, ໄດນາມິກສຽງປົກກະຕິໃຊ້ກອບ
ຄວາມຍາວຂອງ 500 milliseconds, ເຊິ່ງໄດ້ຖືກພົບເຫັນວ່າໃຫ້ຜົນໄດ້ຮັບທີ່ດີກັບໄຟລ໌ສ່ວນໃຫຍ່.
ໃຫ້ສັງເກດວ່າຄວາມຍາວຂອງກອບທີ່ແນ່ນອນ, ໃນຈໍານວນຕົວຢ່າງ, ຈະຖືກກໍານົດ
ອັດຕະໂນມັດ, ອີງຕາມອັດຕາການເກັບຕົວຢ່າງຂອງໄຟລ໌ສຽງທີ່ປ້ອນເຂົ້າແຕ່ລະຄົນ.

g ກໍານົດຂະຫນາດປ່ອງຢ້ຽມການກັ່ນຕອງ Gaussian. ໃນລະຫວ່າງ 3 ຫາ 301, ຕ້ອງເປັນຕົວເລກຄີກ.
ຄ່າເລີ່ມຕົ້ນແມ່ນ 31. ອາດຈະເປັນພາຣາມິເຕີທີ່ສໍາຄັນທີ່ສຸດຂອງ Dynamic Audio Normalizer
ແມ່ນ "ຂະຫນາດປ່ອງຢ້ຽມ" ຂອງການກັ່ນຕອງກ້ຽງ Gaussian. ຂະຫນາດປ່ອງຢ້ຽມຂອງການກັ່ນຕອງແມ່ນ
ລະບຸໄວ້ໃນເຟຣມ, ວາງໄວ້ກາງຂອງກອບປັດຈຸບັນ. ສໍາລັບ sake ຂອງຄວາມງ່າຍດາຍ,
ອັນນີ້ຕ້ອງເປັນຕົວເລກຄີກ. ດັ່ງນັ້ນ, ຄ່າເລີ່ມຕົ້ນຂອງ 31 ພິຈາລະນາ
ກອບປະຈຸບັນ, ເຊັ່ນດຽວກັນກັບ 15 ກອບກ່ອນຫນ້າແລະ 15 ເຟຣມຕໍ່ມາ.
ການ​ນໍາ​ໃຊ້​ປ່ອງ​ຢ້ຽມ​ຂະ​ຫນາດ​ໃຫຍ່​ເຮັດ​ໃຫ້​ມີ​ຜົນ​ກະ​ທົບ smoothing ທີ່​ເຂັ້ມ​ແຂງ​ແລະ​ດັ່ງ​ນັ້ນ​ໄດ້​ຮັບ​ຫນ້ອຍ​
ການປ່ຽນແປງ, ເຊັ່ນ: ການປັບຕົວຊ້າລົງ. ໃນທາງກົງກັນຂ້າມ, ການນໍາໃຊ້ປ່ອງຢ້ຽມຂະຫນາດນ້ອຍກວ່າຜົນໄດ້ຮັບ
ຜົນກະທົບ smoothing ອ່ອນເພຍແລະດັ່ງນັ້ນໃນການປ່ຽນແປງການໄດ້ຮັບຫຼາຍ, ie ໄດ້ຮັບໄວຂຶ້ນ
ການປັບຕົວ. ໃນຄໍາສັບຕ່າງໆອື່ນໆ, ຫຼາຍທ່ານເພີ່ມມູນຄ່ານີ້, Dynamic ຫຼາຍ
Audio Normalizer ຈະປະຕິບັດຕົວຄືກັບຕົວກອງປົກກະຕິ "ແບບດັ້ງເດີມ". ສຸດ
ກົງກັນຂ້າມ, ຍິ່ງເຈົ້າຫຼຸດລົງຄ່ານີ້ຫຼາຍເທົ່າໃດ, Dynamic Audio Normalizer ຈະຫຼາຍຂຶ້ນ
ປະຕິບັດຕົວຄືກັບເຄື່ອງອັດລະດັບໄດນາມິກ.

p ກໍານົດມູນຄ່າສູງສຸດເປົ້າຫມາຍ. ນີ້​ລະ​ບຸ​ລະ​ດັບ​ທີ່​ສູງ​ທີ່​ສຸດ​ທີ່​ອະ​ນຸ​ຍາດ​ໃຫ້​ສໍາ​ລັບ​ການ​
ການປ້ອນຂໍ້ມູນສຽງປົກກະຕິ. ການກັ່ນຕອງນີ້ຈະພະຍາຍາມເຂົ້າຫາຂະຫນາດສູງສຸດເປົ້າຫມາຍ
ຢ່າງໃກ້ຊິດເທົ່າທີ່ເປັນໄປໄດ້, ແຕ່ໃນເວລາດຽວກັນມັນຍັງເຮັດໃຫ້ແນ່ໃຈວ່າປົກກະຕິ
ສັນຍານຈະບໍ່ເກີນຂະໜາດສູງສຸດ. ປັດໄຈທີ່ໄດ້ຮັບສູງສຸດໃນທ້ອງຖິ່ນຂອງກອບແມ່ນ
imposed ໂດຍກົງໂດຍຂະຫນາດສູງສຸດເປົ້າຫມາຍ. ຄ່າເລີ່ມຕົ້ນແມ່ນ 0.95 ແລະດັ່ງນັ້ນ
ອອກຈາກ headroom ຂອງ 5%*. ມັນບໍ່ໄດ້ຖືກແນະນໍາໃຫ້ໄປຂ້າງເທິງມູນຄ່ານີ້.

m ກໍານົດປັດໄຈການໄດ້ຮັບສູງສຸດ. ໃນລະຫວ່າງ 1.0 ຫາ 100.0. ຄ່າເລີ່ມຕົ້ນແມ່ນ 10.0. ໄດນາມິກ
Audio Normalizer ກຳນົດປັດໄຈການຮັບສູງສຸດທີ່ເປັນໄປໄດ້ (ທ້ອງຖິ່ນ) ສຳລັບແຕ່ລະວັດສະດຸປ້ອນ
ກອບ, ie ປັດໄຈການໄດ້ຮັບສູງສຸດທີ່ບໍ່ໄດ້ສົ່ງຜົນໃນການ clip ຫຼືບິດເບືອນ.
ປັດໄຈການໄດ້ຮັບສູງສຸດແມ່ນຖືກກໍານົດໂດຍຕົວຢ່າງທີ່ສູງທີ່ສຸດຂອງກອບ.
ຢ່າງໃດກໍຕາມ, ໄດນາມິກສຽງປົກກະຕິຍັງຜູກມັດການເພີ່ມສູງສຸດຂອງກອບ
ປັດ​ໄຈ​ໂດຍ​ປັດ​ໄຈ​ການ​ໄດ້​ຮັບ​ສູງ​ສຸດ​ທີ່​ກໍາ​ນົດ​ໄວ້​ລ່ວງ​ຫນ້າ (ໂລກ​)​. ນີ້ແມ່ນເຮັດເພື່ອຫຼີກເວັ້ນການ
ປັດໃຈການໄດ້ຮັບຫຼາຍເກີນໄປໃນ "silent" ຫຼືເກືອບ silent frames. ໂດຍຄ່າເລີ່ມຕົ້ນ, ສູງສຸດ
ປັດໄຈທີ່ໄດ້ຮັບແມ່ນ 10.0, ສໍາລັບວັດສະດຸປ້ອນສ່ວນໃຫຍ່, ຄ່າເລີ່ມຕົ້ນຄວນຈະພຽງພໍແລະມັນ
ປົກກະຕິແລ້ວແມ່ນບໍ່ແນະນໍາໃຫ້ເພີ່ມມູນຄ່ານີ້. ຢ່າງໃດກໍຕາມ, ສໍາລັບການປ້ອນຂໍ້ມູນທີ່ມີທີ່ສຸດ
ລະດັບສຽງໂດຍລວມຕ່ໍາ, ມັນອາດຈະມີຄວາມຈໍາເປັນທີ່ຈະອະນຸຍາດໃຫ້ມີປັດໄຈທີ່ສູງຂຶ້ນ. ຫມາຍ​ເຫດ​,
ແນວໃດກໍ່ຕາມ, Dynamic Audio Normalizer ບໍ່ໄດ້ໃຊ້ພຽງແຕ່ເກນ "ຍາກ" ເທົ່ານັ້ນ
(ເຊັ່ນ: ຕັດຄ່າເກີນຂອບເຂດ). ແທນທີ່ຈະ, ຫນ້າທີ່ກໍານົດຂອບເຂດ "sigmoid".
ຈະຖືກນຳໃຊ້. ດ້ວຍວິທີນີ້, ປັດໃຈການໄດ້ຮັບຈະເຂົ້າໃກ້ຂອບເຂດ
ມູນຄ່າ, ແຕ່ບໍ່ເຄີຍເກີນມູນຄ່ານັ້ນ.

r ກໍານົດເປົ້າຫມາຍ RMS. ໃນລະຫວ່າງ 0.0 ຫາ 1.0. ຄ່າເລີ່ມຕົ້ນແມ່ນ 0.0 - ປິດໃຊ້ງານ. ໂດຍຄ່າເລີ່ມຕົ້ນ,
Dynamic Audio Normalizer ປະຕິບັດການປົກກະຕິ "ສູງສຸດ". ນີ້ຫມາຍຄວາມວ່າ
ປັດໄຈທີ່ໄດ້ຮັບສູງສຸດໃນທ້ອງຖິ່ນສໍາລັບແຕ່ລະກອບແມ່ນຖືກກໍານົດ (ພຽງແຕ່) ໂດຍສູງສຸດຂອງກອບ
ຕົວຢ່າງຂະຫນາດ. ວິທີນີ້, ຕົວຢ່າງສາມາດຂະຫຍາຍໄດ້ຫຼາຍເທົ່າທີ່ເປັນໄປໄດ້ໂດຍບໍ່ມີການ
ເກີນລະດັບສັນຍານສູງສຸດ, ie ໂດຍບໍ່ມີການ clipping. ທາງເລືອກ, ຢ່າງໃດກໍຕາມ, ໄດ້
Dynamic Audio Normalizer ຍັງສາມາດຄຳນຶງເຖິງ root mean square ຂອງກອບ,
RMS ຫຍໍ້. ໃນວິສະວະກໍາໄຟຟ້າ, RMS ຖືກນໍາໃຊ້ໂດຍທົ່ວໄປເພື່ອກໍານົດ
ພະລັງງານຂອງສັນຍານທີ່ມີການປ່ຽນແປງເວລາ. ດັ່ງນັ້ນ, ມັນໄດ້ຖືກພິຈາລະນາວ່າ RMS ແມ່ນດີກວ່າ
ປະມານຂອງ "ການຮັບຮູ້ສຽງດັງ" ກ່ວາພຽງແຕ່ເບິ່ງຈຸດສູງສຸດຂອງສັນຍານ
ຂະໜາດ. ດັ່ງນັ້ນ, ໂດຍການປັບເຟຣມທັງຫມົດໃຫ້ກັບຄ່າ RMS ຄົງທີ່, ເປັນເອກະພາບ
"ສຽງດັງ" ສາມາດຖືກສ້າງຕັ້ງຂຶ້ນ. ຖ້າຄ່າ RMS ເປົ້າໝາຍໄດ້ຖືກລະບຸ, a
ປັດໄຈການໄດ້ຮັບໃນທ້ອງຖິ່ນຂອງກອບແມ່ນຖືກກໍານົດວ່າເປັນປັດໃຈທີ່ຈະສົ່ງຜົນໃຫ້ຢ່າງແທ້ຈິງ
ຄ່າ RMS. ຢ່າງໃດກໍຕາມ, ໃຫ້ສັງເກດວ່າປັດໄຈການໄດ້ຮັບສູງສຸດໃນທ້ອງຖິ່ນຍັງຖືກຈໍາກັດໂດຍ
ຕົວ​ຢ່າງ​ຂະ​ຫນາດ​ສູງ​ທີ່​ສຸດ​ຂອງ​ກອບ​, ເພື່ອ​ປ້ອງ​ກັນ​ການ​ຕັດ​.

n ເປີດໃຊ້ການເຊື່ອມຊ່ອງ. ໂດຍຄ່າເລີ່ມຕົ້ນແມ່ນເປີດໃຊ້ງານ. ໂດຍຄ່າເລີ່ມຕົ້ນ, ສຽງແບບໄດນາມິກ
Normalizer ຈະຂະຫຍາຍຊ່ອງທັງຫມົດໂດຍຈໍານວນດຽວກັນ. ນີ້ຫມາຍຄວາມວ່າໄດ້ຮັບຜົນປະໂຫຍດດຽວກັນ
ປັດ​ໄຈ​ຈະ​ຖືກ​ນໍາ​ໃຊ້​ກັບ​ທຸກ​ຊ່ອງ​ທາງ​, ເຊັ່ນ​ວ່າ​ປັດ​ໄຈ​ການ​ໄດ້​ຮັບ​ສູງ​ສຸດ​ທີ່​ເປັນ​ໄປ​ໄດ້​ແມ່ນ​
ກໍານົດໂດຍຊ່ອງທາງ "ດັງທີ່ສຸດ". ຢ່າງໃດກໍຕາມ, ໃນບາງບັນທຶກ, ມັນອາດຈະເກີດຂຶ້ນນັ້ນ
ປະ​ລິ​ມານ​ຂອງ​ຊ່ອງ​ທາງ​ທີ່​ແຕກ​ຕ່າງ​ກັນ​ແມ່ນ​ບໍ່​ສະ​ເຫມີ​ພາບ​, ຕົວ​ຢ່າງ​ຫນຶ່ງ​ຊ່ອງ​ທາງ​ອາດ​ຈະ "ງຽບ​" ກ​່​ວາ​
ອີກອັນນຶ່ງ. ໃນກໍລະນີນີ້, ທາງເລືອກນີ້ສາມາດຖືກນໍາໃຊ້ເພື່ອປິດຊ່ອງທາງການ
ການເຊື່ອມ. ດ້ວຍວິທີນີ້, ປັດໃຈການໄດ້ຮັບຈະຖືກ ກຳ ນົດເປັນເອກະລາດ ສຳ ລັບແຕ່ລະຊ່ອງທາງ,
ຂຶ້ນກັບຕົວຢ່າງຂະໜາດສູງສຸດຂອງຊ່ອງແຕ່ລະຄົນເທົ່ານັ້ນ. ນີ້ອະນຸຍາດໃຫ້ສໍາລັບການ
ການປະສົມກົມກຽວຂອງປະລິມານຂອງຊ່ອງທາງທີ່ແຕກຕ່າງກັນ.

c ເປີດໃຊ້ການແກ້ໄຂອະຄະຕິ DC. ໂດຍຄ່າເລີ່ມຕົ້ນຖືກປິດໃຊ້ງານ. ສັນຍານສຽງ (ໃນເວລາ
domain) ແມ່ນລໍາດັບຂອງຄ່າຕົວຢ່າງ. ໃນ Dynamic Audio Normalizer ຕົວຢ່າງເຫຼົ່ານີ້
ຄ່າແມ່ນສະແດງຢູ່ໃນຂອບເຂດ -1.0 ຫາ 1.0, ໂດຍບໍ່ຄໍານຶງເຖິງການປ້ອນຂໍ້ມູນຕົ້ນສະບັບ
ຮູບແບບ. ໂດຍປົກກະຕິ, ສັນຍານສຽງ, ຫຼື "ຮູບແບບຄື້ນ", ຄວນຢູ່ໃຈກາງປະມານສູນ
ຈຸດ. ນັ້ນຫມາຍຄວາມວ່າຖ້າພວກເຮົາຄິດໄລ່ຄ່າສະເລ່ຍຂອງຕົວຢ່າງທັງຫມົດໃນເອກະສານ, ຫຼືໃນ a
ກອບດຽວ, ຫຼັງຈາກນັ້ນຜົນໄດ້ຮັບຄວນຈະເປັນ 0.0 ຫຼືຢ່າງຫນ້ອຍຢູ່ໃກ້ກັບຄ່ານັ້ນ. ຖ້າ,
ແນວໃດກໍ່ຕາມ, ມີການບິດເບືອນທີ່ສໍາຄັນຂອງຄ່າສະເລ່ຍຈາກ 0.0, ໃນທັງສອງ
ທິດທາງໃນທາງບວກຫຼືທາງລົບ, ນີ້ແມ່ນເອີ້ນວ່າ DC bias ຫຼື DC offset. ນັບຕັ້ງແຕ່ ກ
ຄວາມລຳອຽງຂອງ DC ເປັນສິ່ງທີ່ບໍ່ຕ້ອງການຢ່າງຊັດເຈນ, Dynamic Audio Normalizer ສະໜອງຄວາມລຳອຽງຂອງ DC ທີ່ເປັນທາງເລືອກ
ການແກ້ໄຂ. ດ້ວຍການເປີດໃຊ້ການແກ້ໄຂອະຄະຕິ DC, ໄດນາມິກສຽງປົກກະຕິຈະ
ກໍານົດຄ່າສະເລ່ຍ, ຫຼື "ການແກ້ໄຂ DC" ຊົດເຊີຍ, ຂອງແຕ່ລະກອບການປ້ອນແລະລົບ
ຄ່ານັ້ນຈາກຄ່າຕົວຢ່າງທັງໝົດຂອງກອບທີ່ຮັບປະກັນຕົວຢ່າງເຫຼົ່ານັ້ນ
ສູນກາງປະມານ 0.0 ອີກເທື່ອຫນຶ່ງ. ນອກຈາກນັ້ນ, ເພື່ອຫຼີກເວັ້ນການ "ຊ່ອງຫວ່າງ" ຢູ່ໃນຂອບເຂດຂອງກອບ, ໄດ້
ຄ່າຊົດເຊີຍການແກ້ໄຂ DC ຈະຖືກຂັດກັນຢ່າງຄ່ອງແຄ້ວລະຫວ່າງກອບໃກ້ຄຽງ.

b ເປີດໃຊ້ຮູບແບບຂອບເຂດທາງເລືອກ. ໂດຍຄ່າເລີ່ມຕົ້ນຖືກປິດໃຊ້ງານ. ສຽງແບບໄດນາມິກ
Normalizer ໃຊ້ເວລາເຂົ້າໄປໃນບັນຊີຂອງບ້ານທີ່ແນ່ນອນປະມານແຕ່ລະກອບ. ນີ້ປະກອບມີ
ກອບກ່ອນຫນ້າເຊັ່ນດຽວກັນກັບກອບຕໍ່ມາ. ຢ່າງໃດກໍຕາມ, ສໍາລັບ "ຊາຍແດນ"
ກອບ, ທີ່ຕັ້ງຢູ່ໃນຕອນຕົ້ນແລະໃນຕອນທ້າຍຂອງໄຟລ໌ສຽງ, ບໍ່ແມ່ນທັງຫມົດ
ເຟຣມໃກ້ຄຽງແມ່ນມີຢູ່. ໂດຍສະເພາະ, ສໍາລັບສອງສາມເຟຣມທໍາອິດໃນ
ໄຟລ​໌​ສຽງ​, ຂອບ​ກ່ອນ​ຫນ້າ​ນີ້​ແມ່ນ​ບໍ່​ຮູ້​ຈັກ​. ແລະ, ເຊັ່ນດຽວກັນ, ສໍາລັບສອງສາມຄັ້ງສຸດທ້າຍ
ກອບໃນໄຟລ໌ສຽງ, ກອບຕໍ່ມາບໍ່ຮູ້ຈັກ. ດັ່ງນັ້ນ, ຄໍາຖາມ
ເກີດຂື້ນທີ່ປັດໃຈທີ່ໄດ້ຮັບຄວນຈະຖືກສົມມຸດຕິຖານສໍາລັບກອບທີ່ຂາດຫາຍໄປໃນ "ຂອບເຂດ"
ພາກພື້ນ. Dynamic Audio Normalizer ປະຕິບັດສອງໂຫມດເພື່ອຈັດການກັບສະຖານະການນີ້.
ຮູບ​ແບບ​ຂອບ​ເຂດ​ໃນ​ຕອນ​ຕົ້ນ​ສົມ​ມຸດ​ວ່າ​ປັດ​ໄຈ​ການ​ໄດ້​ຮັບ​ທີ່​ແນ່​ນອນ 1.0 ສໍາ​ລັບ​ເຟຣມ​ທີ່​ຂາດ​ຫາຍ​ໄປ​,
ຜົນອອກມາໃນກ້ຽງ "fade in" ແລະ "fade out" ໃນຕອນເລີ່ມຕົ້ນແລະໃນຕອນທ້າຍຂອງ
ວັດສະດຸປ້ອນ, ຕາມລໍາດັບ.

s ກໍານົດປັດໄຈການບີບອັດ. ໃນລະຫວ່າງ 0.0 ຫາ 30.0. ຄ່າເລີ່ມຕົ້ນແມ່ນ 0.0. ໂດຍຄ່າເລີ່ມຕົ້ນ, ໄດ້
Dynamic Audio Normalizer ບໍ່ນຳໃຊ້ການບີບອັດແບບ "ດັ້ງເດີມ". ນີ້ຫມາຍຄວາມວ່າ
ຈຸດສູງສຸດຂອງສັນຍານຈະບໍ່ຖືກຕັດອອກ ແລະດັ່ງນັ້ນ ລະດັບໄດນາມິກເຕັມຈະຖືກຮັກສາໄວ້
ພາຍໃນແຕ່ລະບ້ານໃກ້ຄຽງ. ຢ່າງໃດກໍຕາມ, ໃນບາງກໍລະນີມັນອາດຈະຕ້ອງການທີ່ຈະສົມທົບ
ສູດການຄິດໄລ່ປົກກະຕິຂອງຕົວປ່ຽນສຽງແບບໄດນາມິກ ທີ່ມີ "ແບບດັ້ງເດີມ" ຫຼາຍຂຶ້ນ.
ການບີບອັດ. ສໍາລັບຈຸດປະສົງນີ້, Dynamic Audio Normalizer ສະຫນອງທາງເລືອກ
ຟັງຊັນ compression (thresholding). ຖ້າ (ແລະພຽງແຕ່ຖ້າ) ຄຸນສົມບັດການບີບອັດແມ່ນ
ເປີດໃຊ້ງານແລ້ວ, ເຟຣມການປ້ອນຂໍ້ມູນທັງໝົດຈະຖືກປະມວນຜົນໂດຍຟັງຊັນການວາງຫົວເຂົ່າອ່ອນກ່ອນ
ໄປສູ່ຂະບວນການປົກກະຕິຕົວຈິງ. ເວົ້າງ່າຍໆ, ຫນ້າທີ່ກໍານົດຂອບເຂດຈະໄປ
ຕັດຕົວຢ່າງທັງໝົດທີ່ມີຂະໜາດເກີນຄ່າເກນທີ່ແນ່ນອນ. ຢ່າງໃດກໍຕາມ, ໄດ້
Dynamic Audio Normalizer ບໍ່ພຽງແຕ່ນຳໃຊ້ຄ່າເກນກຳນົດ. ແທນທີ່ຈະ, ໄດ້
ຄ່າເກນຈະຖືກປັບສຳລັບແຕ່ລະເຟຣມບຸກຄົນ. ໂດຍທົ່ວໄປ, ຂະຫນາດນ້ອຍກວ່າ
ພາລາມິເຕີເຮັດໃຫ້ການບີບອັດທີ່ເຂັ້ມແຂງ, ແລະໃນທາງກັບກັນ. ຄ່າຕ່ຳກວ່າ 3.0 ບໍ່ແມ່ນ
ແນະນໍາ, ເພາະວ່າການບິດເບືອນທີ່ໄດ້ຍິນອາດຈະປາກົດ.

ຕຸ້ມຫູ
ເຮັດໃຫ້ສຽງຟັງງ່າຍຂຶ້ນໃນຫູຟັງ.

ການກັ່ນຕອງນີ້ເພີ່ມ 'cues' ກັບ 44.1kHz stereo (ເຊັ່ນ: ຮູບແບບ CD ສຽງ) ດັ່ງນັ້ນໃນເວລາທີ່
ຟັງຢູ່ໃນຫູຟັງ, ຮູບພາບສະເຕີລິໂອໄດ້ຖືກຍ້າຍຈາກພາຍໃນຫົວຂອງທ່ານ (ມາດຕະຖານສໍາລັບ
headphones) ອອກໄປຂ້າງນອກແລະທາງຫນ້າຂອງຜູ້ຟັງ (ມາດຕະຖານສໍາລັບລໍາໂພງ).

Ported ຈາກ SoX.

ຄວາມສະ ເໝີ ພາບ
ນຳໃຊ້ຕົວກອງຄວາມສະເໝີພາບສູງສຸດສອງເສົາ (EQ). ດ້ວຍການກັ່ນຕອງນີ້, ລະດັບສັນຍານຢູ່ທີ່
ແລະປະມານຄວາມຖີ່ທີ່ເລືອກສາມາດເພີ່ມຂຶ້ນຫຼືຫຼຸດລົງ, ໃນຂະນະທີ່ (ບໍ່ຄືກັບ bandpass ແລະ
bandreject filters) ທີ່ທຸກຄວາມຖີ່ອື່ນໆແມ່ນບໍ່ປ່ຽນແປງ.

ເພື່ອຜະລິດເສັ້ນໂຄ້ງຄວາມສະເຫມີພາບທີ່ສັບສົນ, ການກັ່ນຕອງນີ້ສາມາດໄດ້ຮັບຫຼາຍຄັ້ງ,
ແຕ່ລະຄົນມີຄວາມຖີ່ກາງທີ່ແຕກຕ່າງກັນ.

ຕົວກອງຍອມຮັບຕົວເລືອກຕໍ່ໄປນີ້:

ຄວາມຖີ່, f
ຕັ້ງຄ່າຄວາມຖີ່ກາງຂອງຕົວກອງເປັນ Hz.

width_type
ກໍານົດວິທີການກໍານົດ band-width ຂອງການກັ່ນຕອງ.

h Hz

q Q-Factor

o octave

s ເປີ້ນພູ

ຄວາມກວ້າງ, w
ລະບຸແຖບຄວາມກວ້າງຂອງຕົວກອງໃນຫົວໜ່ວຍ width_type.

ໄດ້​ຮັບ​, g
ກໍາ​ນົດ​ການ​ເພີ່ມ​ຫຼື​ການ​ຫຼຸດ​ຜ່ອນ​ທີ່​ຕ້ອງ​ການ​ໃນ dB​. ລະວັງການຕັດຕໍ່ເມື່ອໃຊ້ບວກ
ໄດ້ຮັບ.

ຕົວຢ່າງ

· Attenuate 10 dB ທີ່ 1000 Hz, ມີແບນວິດຂອງ 200 Hz:

equalizer=f=1000:width_type=h:width=200:g=-10

· ນຳໃຊ້ 2 dB ເພີ່ມຢູ່ທີ່ 1000 Hz ກັບ Q 1 ແລະຫຼຸດ 5 dB ທີ່ 100 Hz ດ້ວຍ Q 2:

equalizer=f=1000:width_type=q:width=1:g=2,equalizer=f=100:width_type=q:width=2:g=-5

flanger
ນໍາໃຊ້ຜົນກະທົບ flanging ກັບສຽງ.

ຕົວກອງຍອມຮັບຕົວເລືອກຕໍ່ໄປນີ້:

ຊັກຊ້າ
ຕັ້ງຄວາມລ່າຊ້າພື້ນຖານເປັນ milliseconds. ໄລຍະຈາກ 0 ຫາ 30. ຄ່າເລີ່ມຕົ້ນແມ່ນ 0.

ຄວາມເລິກ
ກໍານົດຄວາມລ່າຊ້າ swep ເພີ່ມເປັນ milliseconds. ໄລຍະຈາກ 0 ຫາ 10. ຄ່າເລີ່ມຕົ້ນແມ່ນ 2.

ຝົນຕົກ
ກໍາ​ນົດ​ເປີ​ເຊັນ​ການ​ຟື້ນ​ຟູ (ການ​ຕອບ​ສະ​ຫນອງ​ສັນ​ຍານ​ຊັກ​ຊ້າ​)​. ໄລຍະຈາກ -95 ຫາ 95. ຄ່າເລີ່ມຕົ້ນ
ຄ່າແມ່ນ 0.

width
ກໍານົດເປີເຊັນຂອງສັນຍານຊັກຊ້າປະສົມກັບຕົ້ນສະບັບ. ໄລຍະຈາກ 0 ຫາ 100. ຄ່າເລີ່ມຕົ້ນ
ຄ່າແມ່ນ 71.

ຄວາມ​ໄວ
ກຳນົດການກວາດຕໍ່ວິນາທີ (Hz). ໄລຍະຈາກ 0.1 ຫາ 10. ຄ່າເລີ່ມຕົ້ນແມ່ນ 0.5.

ຮູບຮ່າງ
ກໍານົດຮູບຮ່າງຄື້ນ swept, ສາມາດ ສາມຫຼ່ຽມ or sinusoidal. ຄ່າເລີ່ມຕົ້ນແມ່ນ sinusoidal.

ໂຄງການໄລຍະ
ຕັ້ງຄ່າ swept wave percentage-shift ສໍາລັບຫຼາຍຊ່ອງ. ໄລຍະຈາກ 0 ຫາ 100. ຄ່າເລີ່ມຕົ້ນ
ແມ່ນ 25.

ແປ
ກໍານົດການແຊກແຊງເສັ້ນຊັກຊ້າ, ເສັ້ນຊື່ or ສີ່ຫລ່ຽມ. ຄ່າເລີ່ມຕົ້ນແມ່ນ ເສັ້ນຊື່.

ທາງຫຼວງ
ນຳໃຊ້ຕົວກອງຜ່ານສູງທີ່ມີຄວາມຖີ່ຈຸດ 3dB. ການກັ່ນຕອງສາມາດເປັນເສົາດຽວ,
ຫຼືສອງເສົາ (ຄ່າເລີ່ມຕົ້ນ). ການກັ່ນຕອງມ້ວນອອກຢູ່ທີ່ 6dB ຕໍ່ເສົາຕໍ່ octave (20dB ຕໍ່
ເສົາຕໍ່ທົດສະວັດ).

ຕົວກອງຍອມຮັບຕົວເລືອກຕໍ່ໄປນີ້:

ຄວາມຖີ່, f
ກໍານົດຄວາມຖີ່ໃນ Hz. ຄ່າເລີ່ມຕົ້ນແມ່ນ 3000.

ເສົາ​, p
ກໍານົດຈໍານວນເສົາ. ຄ່າເລີ່ມຕົ້ນແມ່ນ 2.

width_type
ກໍານົດວິທີການກໍານົດ band-width ຂອງການກັ່ນຕອງ.

h Hz

q Q-Factor

o octave

s ເປີ້ນພູ

ຄວາມກວ້າງ, w
ລະບຸແຖບຄວາມກວ້າງຂອງຕົວກອງໃນຫົວໜ່ວຍ width_type. ນຳໃຊ້ກັບເສົາສອງເທົ່າເທົ່ານັ້ນ
ການກັ່ນຕອງ. ຄ່າເລີ່ມຕົ້ນແມ່ນ 0.707q ແລະໃຫ້ຄໍາຕອບ Butterworth.

ເຂົ້າຮ່ວມ
ເຂົ້າຮ່ວມການຖ່າຍທອດຫຼາຍຊ່ອງເຂົ້າໃນການຖ່າຍທອດຫຼາຍຊ່ອງ.

ມັນຍອມຮັບຕົວກໍານົດການດັ່ງຕໍ່ໄປນີ້:

ວັດສະດຸປ້ອນ
ຈໍານວນກະແສການປ້ອນຂໍ້ມູນ. ມັນຕັ້ງໄວ້ເປັນ 2.

channel_layout
ແຜນຜັງຊ່ອງທາງຜົນຜະລິດທີ່ຕ້ອງການ. ມັນເລີ່ມເປັນສະເຕີຣິໂອ.

ແຜນທີ່ ຊ່ອງແຜນທີ່ຈາກວັດສະດຸປ້ອນໄປຫາຜົນຜະລິດ. argument ເປັນ '|' - ແຍກລາຍຊື່ແຜນທີ່,
ແຕ່​ລະ​ຄົນ​ໃນ "input_idx.in_channel-out_channel" ແບບຟອມ. input_idx ແມ່ນດັດຊະນີ 0 ທີ່ອີງໃສ່
ກະແສການປ້ອນຂໍ້ມູນ. in_channel ສາມາດເປັນຊື່ຂອງຊ່ອງປ້ອນຂໍ້ມູນ (ເຊັ່ນ: FL for
ດ້ານໜ້າຊ້າຍ) ຫຼືດັດຊະນີຂອງມັນຢູ່ໃນກະແສການປ້ອນຂໍ້ມູນທີ່ລະບຸ. out_channel ແມ່ນຊື່ຂອງ
ຊ່ອງ​ທາງ​ອອກ​.

ຕົວກອງຈະພະຍາຍາມເດົາແຜນທີ່ເມື່ອພວກມັນບໍ່ໄດ້ລະບຸຢ່າງຊັດເຈນ. ມັນ
ເຮັດແນວນັ້ນໂດຍທໍາອິດພະຍາຍາມຊອກຫາຊ່ອງທາງການປ້ອນຂໍ້ມູນທີ່ກົງກັນທີ່ບໍ່ໄດ້ໃຊ້ແລະຖ້າມັນລົ້ມເຫລວ
ເລືອກຊ່ອງປ້ອນຂໍ້ມູນທຳອິດທີ່ບໍ່ໄດ້ໃຊ້.

ເຂົ້າຮ່ວມ 3 ວັດສະດຸປ້ອນ (ດ້ວຍການຈັດວາງຊ່ອງຢ່າງຖືກຕ້ອງ):

ffmpeg -i INPUT1 -i INPUT2 -i INPUT3 -filter_complex join=inputs=3 OUTPUT

ສ້າງຜົນຜະລິດ 5.1 ຈາກ 6 ຊ່ອງສາຍດຽວ:

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'
ອອກ

ladspa
ໂຫລດປລັກອິນ LADSPA (Linux Audio Developer's Simple Plugin API).

ເພື່ອເປີດໃຊ້ການລວບລວມຕົວກອງນີ້, ທ່ານຈໍາເປັນຕ້ອງກໍາຫນົດຄ່າ FFmpeg ດ້ວຍ "--enable-ladspa".

ແຟ້ມ, f
ລະບຸຊື່ຂອງຫ້ອງສະໝຸດປລັກອິນ LADSPA ທີ່ຈະໂຫລດ. ຖ້າສະພາບແວດລ້ອມປ່ຽນແປງ
LADSPA_PATH ຖືກກໍານົດ, plugin LADSPA ແມ່ນຊອກຫາຢູ່ໃນແຕ່ລະໄດເລກະທໍລີ
ລະບຸໄວ້ໂດຍລາຍການທີ່ແຍກອອກຈາກຈໍ້າສອງເມັດໃນ LADSPA_PATH, ຖ້າບໍ່ດັ່ງນັ້ນຢູ່ໃນມາດຕະຖານ LADSPA
ເສັ້ນທາງ, ເຊິ່ງຢູ່ໃນລໍາດັບນີ້: ຫນ້າທໍາອິດ/.ladspa/lib/, /usr/local/lib/ladspa/,
/usr/lib/ladspa/.

ປັ,ກອິນ, p
ລະບຸປລັກອິນພາຍໃນຫ້ອງສະໝຸດ. ບາງຫ້ອງສະຫມຸດມີພຽງແຕ່ຫນຶ່ງ plugin, ແຕ່
ອື່ນບັນຈຸຈໍານວນຫຼາຍຂອງພວກເຂົາ. ຖ້າອັນນີ້ບໍ່ໄດ້ຕັ້ງຕົວກອງຈະສະແດງລາຍການປລັກອິນທີ່ມີຢູ່ທັງໝົດ
ພາຍ​ໃນ​ຫ້ອງ​ສະ​ຫມຸດ​ທີ່​ກໍາ​ນົດ​ໄວ້​.

ການ​ຄວບ​ຄຸມ​, c
ຕັ້ງ '|' ລາຍຊື່ຕົວຄວບຄຸມທີ່ແຍກອອກເປັນສູນ ຫຼືຫຼາຍກວ່າຄ່າຈຸດລອຍ
ທີ່ກໍານົດພຶດຕິກໍາຂອງ plugin ທີ່ໂຫລດ (ຕົວຢ່າງການຊັກຊ້າ, threshold ຫຼື
ໄດ້ຮັບ). ການຄວບຄຸມຕ້ອງຖືກກໍານົດໂດຍໃຊ້ syntax ຕໍ່ໄປນີ້:
c0=ມູນຄ່າ 0|c1=ມູນຄ່າ 1|c2=ມູນຄ່າ 2|... , ຢູ່ໃສ ຄຸນຄ່າ ແມ່ນມູນຄ່າທີ່ກໍານົດໄວ້ໃນ i-th ການ​ຄວບ​ຄຸມ​.
If ຄວບຄຸມ ຖືກຕັ້ງເປັນ "ຊ່ວຍ", ການຄວບຄຸມທີ່ມີຢູ່ທັງຫມົດແລະຂອບເຂດທີ່ຖືກຕ້ອງຂອງພວກເຂົາແມ່ນ
ພິມອອກ.

ອັດຕາຕົວຢ່າງ, s
ລະບຸອັດຕາຕົວຢ່າງ, ຄ່າເລີ່ມຕົ້ນເປັນ 44100. ໃຊ້ພຽງແຕ່ຖ້າປລັກອິນມີສູນອິນພຸດ.

nb_ຕົວຢ່າງ, n
ກໍານົດຈໍານວນຕົວຢ່າງຕໍ່ຊ່ອງຕໍ່ແຕ່ລະກອບຜົນຜະລິດ, ຄ່າເລີ່ມຕົ້ນແມ່ນ 1024. ເທົ່ານັ້ນ
ໃຊ້ຖ້າ plugin ບໍ່ມີ inputs.

ໄລຍະເວລາ, d
ກໍານົດໄລຍະເວລາຕໍາ່ສຸດທີ່ຂອງສຽງທີ່ມາຈາກ. ເບິ່ງ ໄດ້ ທີ່ໃຊ້ເວລາ ໄລຍະເວລາ ສ່ວນ in ໄດ້
ffmpeg-utils(1​) ຄູ່ມື ສໍາລັບ syntax ທີ່ຍອມຮັບ. ໃຫ້ສັງເກດວ່າໄລຍະເວລາຜົນໄດ້ຮັບອາດຈະ
ຈະໃຫຍ່ກວ່າໄລຍະເວລາທີ່ລະບຸໄວ້, ເພາະວ່າສຽງທີ່ສ້າງຂຶ້ນຈະຖືກຕັດຢູ່ສະເໝີ
ສິ້ນສຸດຂອງກອບທີ່ສົມບູນ. ຖ້າບໍ່ໄດ້ລະບຸ, ຫຼືໄລຍະເວລາທີ່ສະແດງອອກເປັນລົບ, the
ສຽງແມ່ນຄວນຈະຖືກສ້າງຂື້ນຕະຫຼອດໄປ. ໃຊ້ພຽງແຕ່ຖ້າປລັກອິນບໍ່ມີວັດສະດຸປ້ອນເຂົ້າ.

ຕົວຢ່າງ

·ລາຍຊື່ plugins ທີ່ມີຢູ່ທັງຫມົດພາຍໃນ amp (LADSPA ຕົວຢ່າງ plugin) ຫ້ອງສະຫມຸດ:

ladspa=file=amp

·ລາຍຊື່ການຄວບຄຸມທີ່ມີຢູ່ທັງຫມົດແລະຂອບເຂດທີ່ຖືກຕ້ອງຂອງພວກເຂົາສໍາລັບ "vcf_notch" plugin ຈາກ "VCF"
ຫ້ອງສະຫມຸດ:

ladspa=f=vcf:p=vcf_notch:c=help

· ຈຳລອງອຸປະກອນສຽງທີ່ມີຄຸນນະພາບຕໍ່າໂດຍໃຊ້ "Computer Music Toolkit" (CMT) plugin
ຫ້ອງສະຫມຸດ:

ladspa=file=cmt:plugin=lofi:controls=c0=22|c1=12|c2=12

· ຕື່ມການ reverberation ກັບສຽງໂດຍໃຊ້ TAP-plugins (Tom's Audio Processing plugins):

ladspa=file=tap_reverb:tap_reverb

· ສ້າງສິ່ງລົບກວນສີຂາວ, ມີ 0.2 ຄວາມກວ້າງຂອງຂວາງ:

ladspa=file=cmt:noise_source_white:c=c0=.2

· ສ້າງການຄລິກ 20 bpm ໂດຍໃຊ້ປລັກອິນ "C* Click - Metronome" ຈາກ "C* Audio Plugin
ຫ້ອງສະໝຸດ Suite" (CAPS):

ladspa=file=caps:Click:c=c1=20'

· ນຳໃຊ້ "C* Eq10X2 - Stereo 10-band equaliser" ເອັບເຟັກ:

ladspa=caps:Eq10X2:c=c0=-48|c9=-24|c3=12|c4=2

ຄໍາສັ່ງ

ການກັ່ນຕອງນີ້ສະຫນັບສະຫນູນຄໍາສັ່ງຕໍ່ໄປນີ້:

cN ແກ້ໄຂໄດ້ N-th ມູນ​ຄ່າ​ການ​ຄວບ​ຄຸມ​.

ຖ້າຄ່າທີ່ລະບຸບໍ່ຖືກຕ້ອງ, ມັນຖືກລະເລີຍແລະກ່ອນຫນ້າຈະຖືກເກັບໄວ້.

ທາງລຸ່ມ
ນຳໃຊ້ຕົວກອງຕໍ່າຜ່ານທີ່ມີຄວາມຖີ່ຈຸດ 3dB. ການກັ່ນຕອງສາມາດເປັນເສົາດຽວຫຼື
double-pole (ຄ່າເລີ່ມຕົ້ນ). ການກັ່ນຕອງມ້ວນອອກຢູ່ທີ່ 6dB ຕໍ່ເສົາຕໍ່ octave (20dB ຕໍ່ເສົາ
ຕໍ່ທົດສະວັດ).

ຕົວກອງຍອມຮັບຕົວເລືອກຕໍ່ໄປນີ້:

ຄວາມຖີ່, f
ກໍານົດຄວາມຖີ່ໃນ Hz. ຄ່າເລີ່ມຕົ້ນແມ່ນ 500.

ເສົາ​, p
ກໍານົດຈໍານວນເສົາ. ຄ່າເລີ່ມຕົ້ນແມ່ນ 2.

width_type
ກໍານົດວິທີການກໍານົດ band-width ຂອງການກັ່ນຕອງ.

h Hz

q Q-Factor

o octave

s ເປີ້ນພູ

ຄວາມກວ້າງ, w
ລະບຸແຖບຄວາມກວ້າງຂອງຕົວກອງໃນຫົວໜ່ວຍ width_type. ນຳໃຊ້ກັບເສົາສອງເທົ່າເທົ່ານັ້ນ
ການກັ່ນຕອງ. ຄ່າເລີ່ມຕົ້ນແມ່ນ 0.707q ແລະໃຫ້ຄໍາຕອບ Butterworth.

Pan
ປະສົມຊ່ອງທີ່ມີລະດັບການໄດ້ຮັບສະເພາະ. ການກັ່ນຕອງຍອມຮັບຮູບແບບຊ່ອງຜົນຜະລິດ
ຕິດຕາມດ້ວຍຊຸດຄໍານິຍາມຊ່ອງ.

ການກັ່ນຕອງນີ້ຍັງຖືກອອກແບບມາເພື່ອ remap ຊ່ອງຂອງການຖ່າຍທອດສຽງຢ່າງມີປະສິດທິພາບ.

ຕົວກອງຍອມຮັບພາລາມິເຕີຂອງແບບຟອມ: "l|outdef|outdef|..."

l ຮູບ​ແບບ​ຊ່ອງ​ທາງ​ອອກ​ຫຼື​ຈໍາ​ນວນ​ຂອງ​ຊ່ອງ​

outdef
ສະເພາະຊ່ອງຜົນຜະລິດ, ຂອງແບບຟອມ:
"out_name=[ເພີ່ມ*]in_name[+[ເພີ່ມ*]in_name...]"

out_name
ຊ່ອງ​ທາງ​ອອກ​ເພື່ອ​ກໍາ​ນົດ​, ບໍ່​ວ່າ​ຈະ​ເປັນ​ຊື່​ຊ່ອງ (FL​, FR​, ແລະ​ອື່ນໆ​) ຫຼື​ຈໍາ​ນວນ​ຊ່ອງ​
(c0, c1, ແລະອື່ນໆ)

ເພີ່ມ
ຕົວຄູນຄູນສໍາລັບຊ່ອງ, 1 ເຮັດໃຫ້ປະລິມານບໍ່ປ່ຽນແປງ

in_name
ຊ່ອງທາງການປ້ອນຂໍ້ມູນເພື່ອໃຊ້, ເບິ່ງ out_name ສໍາລັບລາຍລະອຽດ; ມັນເປັນໄປບໍ່ໄດ້ທີ່ຈະປະສົມຊື່ແລະ
ຊ່ອງທາງການປ້ອນຂໍ້ມູນຕົວເລກ

ຖ້າ `=' ໃນສະເພາະຊ່ອງຖືກແທນທີ່ດ້ວຍ `<', ຜົນປະໂຫຍດນັ້ນ
ຂໍ້ມູນຈໍາເພາະຈະຖືກປັບປຸງໃຫມ່ເພື່ອໃຫ້ຈໍານວນທັງຫມົດແມ່ນ 1, ດັ່ງນັ້ນຈຶ່ງຫຼີກເວັ້ນການ clipping ສິ່ງລົບກວນ.

ການປະສົມ ຕົວຢ່າງ

ຕົວຢ່າງ, ຖ້າທ່ານຕ້ອງການລົງປະສົມຈາກສະເຕີລິໂອໄປຫາໂມໂນ, ແຕ່ມີປັດໃຈທີ່ໃຫຍ່ກວ່າສໍາລັບ
ຊ່ອງ​ທາງ​ຊ້າຍ​:

pan=1c|c0=0.9*c0+0.1*c1

ການປະສົມລົງແບບກຳນົດເອງເປັນສະເຕຣິໂອທີ່ເຮັດວຽກໂດຍອັດຕະໂນມັດສຳລັບຊ່ອງ 3-, 4-, 5- ແລະ 7-channel
ລ້ອມຮອບ:

pan=stereo| FL < FL + 0.5*FC + 0.6*BL + 0.6*SL | FR < FR + 0.5*FC + 0.6*BR + 0.6*SR

ໃຫ້ສັງເກດວ່າ ffmpeg ປະສົມປະສານລະບົບ down-mix (ແລະ up-mix) ເລີ່ມຕົ້ນທີ່ຄວນຈະເປັນ
ມັກ (ເບິ່ງ "-ac" ທາງເລືອກ) ເວັ້ນເສຍແຕ່ວ່າທ່ານມີຄວາມຕ້ອງການສະເພາະຫຼາຍ.

ການສ້າງແຜນທີ່ຄືນໃໝ່ ຕົວຢ່າງ

ການສ້າງແຜນທີ່ຊ່ອງຄືນໃໝ່ຈະມີຜົນຖ້າ, ແລະພຽງແຕ່ຖ້າ:

*
*

ຖ້າເງື່ອນໄຂທັງຫມົດເຫຼົ່ານີ້ແມ່ນພໍໃຈ, ການກັ່ນຕອງຈະແຈ້ງໃຫ້ຜູ້ໃຊ້ ("ຊ່ອງບໍລິສຸດ
ກວດພົບແຜນທີ່"), ແລະໃຊ້ວິທີການທີ່ເໝາະສົມ ແລະບໍ່ມີການສູນເສຍເພື່ອເຮັດແຜນທີ່ຄືນໃໝ່.

ຕົວຢ່າງ, ຖ້າທ່ານມີແຫຼ່ງ 5.1 ແລະຕ້ອງການສະຕຣີມສຽງສະເຕີລິໂອໂດຍການລຸດລົງເພີ່ມເຕີມ
ຊ່ອງທາງການ:

pan="stereo|c0=FL|c1=FR"

ເນື່ອງຈາກແຫຼ່ງດຽວກັນ, ທ່ານຍັງສາມາດປ່ຽນທາງຫນ້າຊ້າຍແລະທາງຫນ້າຂວາແລະຮັກສາ
ຮູບ​ລັກ​ຊ່ອງ​ທາງ​ການ​ປ້ອນ​ຂໍ້​ມູນ​:

pan="5.1| c0=c1|c1=c0|c2=c2|c3=c3|c4=c4|c5=c5"

ຖ້າ​ຫາກ​ວ່າ​ການ​ປ້ອນ​ຂໍ້​ມູນ​ເປັນ​ສະ​ຕ​ຣີມ​ສຽງ​ສະ​ເຕີ​ຣິ​ໂອ​, ທ່ານ​ສາ​ມາດ​ປິດ​ຊ່ອງ​ທາງ​ດ້ານ​ຊ້າຍ​ດ້ານ​ຫນ້າ (ແລະ​ຍັງ​ຄົງ​ທີ່​
ຮູບແບບຊ່ອງສະເຕີລິໂອ) ກັບ:

pan="stereo|c1=c1"

ຍັງມີການປ້ອນຂໍ້ມູນການຖ່າຍທອດສຽງສະເຕີລິໂອ, ທ່ານສາມາດສຳເນົາຊ່ອງຂວາໄດ້ທັງດ້ານໜ້າຊ້າຍ
ແລະຂວາ:

pan="stereo|c0=FR|c1=FR"

ຫຼິ້ນຄືນ
ການກັ່ນຕອງເຄື່ອງສະແກນ ReplayGain. ການກັ່ນຕອງນີ້ໃຊ້ເວລາການຖ່າຍທອດສຽງເປັນ input ແລະ outputs ມັນ
ບໍ່ປ່ຽນແປງ. ໃນຕອນທ້າຍຂອງການກັ່ນຕອງມັນສະແດງ "track_gain" ແລະ "track_peak".

ຕົວຢ່າງ
ປ່ຽນຮູບແບບຕົວຢ່າງສຽງ, ອັດຕາຕົວຢ່າງ ແລະຮູບແບບຊ່ອງ. ມັນບໍ່ໄດ້ຫມາຍຄວາມວ່າຈະ
ໃຊ້ໂດຍກົງ.

sidechaincompress
ການກັ່ນຕອງນີ້ເຮັດຄືກັບເຄື່ອງອັດປົກກະຕິແຕ່ມີຄວາມສາມາດບີບອັດສັນຍານທີ່ກວດພົບ
ໃຊ້ສັນຍານເຂົ້າທີສອງ. ມັນຕ້ອງການການປ້ອນຂໍ້ມູນສອງສະຕຣີມ ແລະສົ່ງຄືນກະແສການປ້ອນຂໍ້ມູນໜຶ່ງອັນ.
ກະແສປ້ອນຂໍ້ມູນທຳອິດຈະຖືກປະມວນຜົນໂດຍຂຶ້ນກັບສັນຍານການຖ່າຍທອດທີສອງ. ການກັ່ນຕອງ
ສັນຍານຫຼັງຈາກນັ້ນສາມາດຖືກກັ່ນຕອງດ້ວຍຕົວກອງອື່ນໆໃນຂັ້ນຕອນຕໍ່ມາຂອງການປຸງແຕ່ງ. ເບິ່ງ Pan ແລະ
ລວມ ຕົວກອງ

ຕົວກອງຍອມຮັບຕົວເລືອກຕໍ່ໄປນີ້:

threshold
ຖ້າສັນຍານຂອງກະແສທີສອງເພີ່ມຂຶ້ນສູງກວ່າລະດັບນີ້, ມັນຈະສົ່ງຜົນກະທົບຕໍ່ການຫຼຸດຜ່ອນການໄດ້ຮັບ
ຂອງ​ການ​ສາຍ​ທໍາ​ອິດ​. ໂດຍຄ່າເລີ່ມຕົ້ນແມ່ນ 0.125. ໄລຍະຢູ່ລະຫວ່າງ 0.00097563 ແລະ 1.

ອັດຕາສ່ວນ
ກໍານົດອັດຕາສ່ວນທີ່ສັນຍານຫຼຸດລົງ. 1:2 ຫມາຍຄວາມວ່າຖ້າລະດັບຍົກຂຶ້ນມາ 4dB
ເຫນືອຂອບເຂດ, ມັນຈະມີພຽງແຕ່ 2dB ຂ້າງເທິງຫຼັງຈາກການຫຼຸດຜ່ອນ. ຄ່າເລີ່ມຕົ້ນແມ່ນ 2.
ໄລຍະຢູ່ລະຫວ່າງ 1 ຫາ 20.

ການໂຈມຕີ
ຈໍານວນ milliseconds ສັນຍານຕ້ອງເພີ່ມຂຶ້ນເກີນຂອບເຂດກ່ອນທີ່ຈະໄດ້ຮັບ
ການ​ຫຼຸດ​ຜ່ອນ​ເລີ່ມ​ຕົ້ນ​. ຄ່າເລີ່ມຕົ້ນແມ່ນ 20. ໄລຍະຢູ່ລະຫວ່າງ 0.01 ຫາ 2000.

ປ່ອຍ
ຈໍານວນ milliseconds ສັນຍານຕ້ອງຫຼຸດລົງຕໍ່າກວ່າຂອບເຂດກ່ອນທີ່ຈະຫຼຸດລົງ
ຫຼຸດລົງອີກ. ຄ່າເລີ່ມຕົ້ນແມ່ນ 250. ໄລຍະຢູ່ລະຫວ່າງ 0.01 ຫາ 9000.

ແຕ່ງ​ຫນ້າ
ກໍາ​ນົດ​ຈໍາ​ນວນ​ໂດຍ​ການ​ຫຼາຍ​ປານ​ໃດ​ສັນ​ຍານ​ຈະ​ໄດ້​ຮັບ​ການ​ຂະ​ຫຍາຍ​ຫຼັງ​ຈາກ​ການ​ປຸງ​ແຕ່ງ​. ຄ່າເລີ່ມຕົ້ນແມ່ນ 2.
ຊ່ວງແມ່ນຕັ້ງແຕ່ 1 ແລະ 64.

ເຈັບ​ທີ່​ຫົວ​ເຂົ່າ
ກົ້ມຫົວເຂົ່າແຫຼມປະມານເກນເພື່ອເຂົ້າສູ່ການຫຼຸດຜ່ອນຄວາມອ່ອນໂຍນຫຼາຍ.
ຄ່າເລີ່ມຕົ້ນແມ່ນ 2.82843. ໄລຍະຢູ່ລະຫວ່າງ 1 ຫາ 8.

ການເຊື່ອມຕໍ່
ເລືອກວ່າລະດັບ "ສະເລ່ຍ" ລະຫວ່າງທຸກຊ່ອງທາງຂອງສາຍຕ່ອງໂສ້ຂ້າງຫຼື
ຊ່ອງທາງທີ່ດັງກວ່າ ("ສູງສຸດ") ຂອງສາຍຕ່ອງໂສ້ຂ້າງຄຽງຜົນກະທົບຕໍ່ການຫຼຸດຜ່ອນ. ຄ່າເລີ່ມຕົ້ນແມ່ນ
"ສະເລ່ຍ".

ການກວດພົບ
ຄວນສັນຍານທີ່ແນ່ນອນຖືກປະຕິບັດໃນກໍລະນີຂອງ "ສູງສຸດ" ຫຼື RMS ຫນຶ່ງໃນກໍລະນີຂອງ "rms".
ຄ່າເລີ່ມຕົ້ນແມ່ນ "rms" ເຊິ່ງສ່ວນໃຫຍ່ແມ່ນກ້ຽງກວ່າ.

ຕົວຢ່າງ

· ຕົວຢ່າງ ffmpeg ເຕັມທີ່ເອົາ 2 ວັດສະດຸປ້ອນສຽງ, ວັດສະດຸປ້ອນທີ 1 ຈະຖືກບີບອັດຂຶ້ນຢູ່ກັບ
ສັນ​ຍານ​ຂອງ​ການ​ປ້ອນ​ຂໍ້​ມູນ​ທີ 2 ແລະ​ຕໍ່​ມາ​ຖືກ​ບີບ​ອັດ​ສັນ​ຍານ​ທີ່​ຈະ​ຖືກ​ລວມ​ເຂົ້າ​ກັບ​ການ​ປ້ອນ​ຂໍ້​ມູນ​ທີ 2​:

ffmpeg -i main.flac -i sidechain.flac -filter_complex "[1:a]asplit=2[sc][mix];[0:a][sc]sidechaincompress[compr];[compr][mix]amerge"

ກວດ​ພົບ​ຄວາມ​ງຽບ
ກວດພົບຄວາມງຽບຢູ່ໃນກະແສສຽງ.

ຕົວກອງນີ້ຈະບັນທຶກຂໍ້ຄວາມເມື່ອມັນກວດພົບວ່າປະລິມານສຽງທີ່ປ້ອນເຂົ້າໜ້ອຍລົງ ຫຼືເທົ່າກັບ
ຄ່າ​ຄວາມ​ທົນ​ທານ​ຕໍ່​ສິ່ງ​ລົບ​ກວນ​ສໍາ​ລັບ​ໄລ​ຍະ​ເວ​ລາ​ຫຼາຍ​ກວ່າ​ຫຼື​ເທົ່າ​ກັບ​ຕໍາ​່​ສຸດ​ທີ່​ກວດ​ພົບ​ສິ່ງ​ລົບ​ກວນ​
ໄລຍະເວລາ.

ເວລາພິມແລະໄລຍະເວລາຖືກສະແດງອອກເປັນວິນາທີ.

ຕົວກອງຍອມຮັບຕົວເລືອກຕໍ່ໄປນີ້:

ໄລຍະເວລາ, d
ກໍານົດໄລຍະເວລາງຽບຈົນກ່ວາການແຈ້ງເຕືອນ (ຄ່າເລີ່ມຕົ້ນແມ່ນ 2 ວິນາທີ).

ສິ່ງລົບກວນ, n
ຕັ້ງຄ່າຄວາມທົນທານຕໍ່ສຽງ. ສາມາດຖືກລະບຸໄວ້ໃນ dB (ໃນກໍລະນີທີ່ "dB" ຖືກຕື່ມໃສ່ກັບທີ່ລະບຸໄວ້
ມູນ​ຄ່າ​) ຫຼື​ອັດ​ຕາ​ສ່ວນ​ຄວາມ​ກວ້າງ​ຂວາງ​. ຄ່າເລີ່ມຕົ້ນແມ່ນ -60dB, ຫຼື 0.001.

ຕົວຢ່າງ

· ກວດພົບຄວາມງຽບ 5 ວິນາທີດ້ວຍຄວາມທົນທານຕໍ່ສຽງລົບກວນ -50dB:

silencedetect=n=-50dB:d=5

· ຕົວຢ່າງທີ່ສົມບູນກັບ ffmpeg ກວດຫາຄວາມງຽບດ້ວຍ 0.0001 noise tolerance in
ງຽບ.mp3:

ffmpeg -i silence.mp3 -af silencedetect=noise=0.0001 -f null -

ງຽບ​ອອກ
ເອົາຄວາມງຽບອອກຈາກຕົ້ນ, ກາງ ຫຼືຕອນທ້າຍຂອງສຽງ.

ຕົວກອງຍອມຮັບຕົວເລືອກຕໍ່ໄປນີ້:

start_periods
ຄ່ານີ້ຖືກໃຊ້ເພື່ອລະບຸວ່າສຽງຄວນຖືກຕັດໃນຕອນຕົ້ນຂອງສຽງຫຼືບໍ່. ກ
ຄ່າຂອງສູນສະແດງເຖິງຄວາມງຽບບໍ່ຄວນຖືກຕັດຕັ້ງແຕ່ຕົ້ນ. ເມື່ອ​ໃດ​
ການ​ລະ​ບຸ​ຄ່າ​ທີ່​ບໍ່​ແມ່ນ​ສູນ, ມັນ​ຕັດ​ສຽງ​ຂຶ້ນ​ຈົນ​ກ​່​ວາ​ມັນ​ພົບ​ເຫັນ​ຄວາມ​ບໍ່​ງຽບ. ປົກກະຕິ,
ໃນ​ເວ​ລາ​ທີ່​ຕັດ​ຄວາມ​ງຽບ​ຈາກ​ການ​ເລີ່ມ​ຕົ້ນ​ຂອງ​ສຽງ​ໄດ້​ start_periods ຈະເປັນ 1 ແຕ່ມັນສາມາດເຮັດໄດ້
ໄດ້ຮັບການເພີ່ມຂຶ້ນເປັນມູນຄ່າທີ່ສູງຂຶ້ນເພື່ອຕັດສຽງທັງຫມົດເຖິງຈໍານວນສະເພາະຂອງການບໍ່ງຽບ
ໄລຍະເວລາ. ຄ່າເລີ່ມຕົ້ນແມ່ນ 0.

ໄລຍະເວລາເລີ່ມຕົ້ນ
ລະບຸໄລຍະເວລາທີ່ຕ້ອງກວດພົບຄວາມບໍ່ງຽບກ່ອນທີ່ມັນຈະຢຸດການຕັດ
ສຽງ. ໂດຍການເພີ່ມໄລຍະເວລາ, ການລະເບີດຂອງສິ່ງລົບກວນສາມາດໄດ້ຮັບການປະຕິບັດເປັນຄວາມງຽບແລະ
ຕັດອອກ. ຄ່າເລີ່ມຕົ້ນແມ່ນ 0.

start_threshold
ອັນນີ້ຊີ້ບອກວ່າຄ່າຕົວຢ່າງອັນໃດຄວນຖືກຖືວ່າເປັນຄວາມງຽບ. ສໍາລັບສຽງດິຈິຕອນ, ກ
ຄ່າຂອງ 0 ອາດຈະດີແຕ່ສໍາລັບສຽງທີ່ບັນທຶກໄວ້ຈາກອະນາລັອກ, ທ່ານອາດຈະຕ້ອງການເພີ່ມຂຶ້ນ
ຄ່າທີ່ຈະບັນຊີສໍາລັບສິ່ງລົບກວນພື້ນຖານ. ສາມາດຖືກກໍານົດໃນ dB (ໃນກໍລະນີທີ່ "dB" ແມ່ນ
ຕື່ມໃສ່ກັບຄ່າທີ່ລະບຸ) ຫຼືອັດຕາສ່ວນຄວາມກວ້າງຂອງກາງ. ຄ່າເລີ່ມຕົ້ນແມ່ນ 0.

stop_periods
ກໍານົດການນັບສໍາລັບການຕັດຄວາມງຽບຈາກໃນຕອນທ້າຍຂອງສຽງ. ເພື່ອເອົາຄວາມງຽບອອກຈາກ
ກາງຂອງໄຟລ໌, ລະບຸ a stop_periods ນັ້ນແມ່ນທາງລົບ. ມູນຄ່ານີ້ຖືກປະຕິບັດຫຼັງຈາກນັ້ນ
ເປັນມູນຄ່າບວກແລະຖືກນໍາໃຊ້ເພື່ອຊີ້ບອກຜົນກະທົບຄວນຈະ restart ການປະມວນຜົນເປັນ
ລະບຸໂດຍ start_periods, ເຮັດໃຫ້ມັນເຫມາະສົມສໍາລັບການຖອນໄລຍະເວລາຂອງ silence ໃນ
ກາງຂອງສຽງ. ຄ່າເລີ່ມຕົ້ນແມ່ນ 0.

ໄລຍະເວລາຢຸດ
ລະບຸໄລຍະເວລາຂອງຄວາມງຽບທີ່ຈະຕ້ອງມີກ່ອນທີ່ສຽງຈະບໍ່ຖືກຄັດລອກອີກຕໍ່ໄປ. ໂດຍ
ການລະບຸໄລຍະເວລາທີ່ສູງກວ່າ, ຄວາມງຽບທີ່ຕ້ອງການສາມາດຖືກປະໄວ້ໃນສຽງ.
ຄ່າເລີ່ມຕົ້ນແມ່ນ 0.

stop_threshold
ນີ້ແມ່ນຄືກັນກັບ start_threshold ແຕ່ເພື່ອຕັດຄວາມງຽບຈາກທ້າຍສຽງ.
ສາມາດຖືກລະບຸໄວ້ໃນ dB (ໃນກໍລະນີທີ່ "dB" ຖືກຕໍ່ໃສ່ກັບຄ່າທີ່ລະບຸ) ຫຼືຄວາມກວ້າງໃຫຍ່
ອັດຕາສ່ວນ. ຄ່າເລີ່ມຕົ້ນແມ່ນ 0.

leave_silence
ນີ້ຊີ້ບອກວ່າ ໄລຍະເວລາຢຸດ ຄວາມຍາວຂອງສຽງຄວນຈະຖືກປະໄວ້ intact ຢູ່ທີ່
ການເລີ່ມຕົ້ນຂອງແຕ່ລະໄລຍະຂອງຄວາມງຽບ. ຕົວຢ່າງ: ຖ້າທ່ານຕ້ອງການລຶບການຢຸດຊົ່ວຄາວ
ລະຫວ່າງຄໍາສັບຕ່າງໆແຕ່ບໍ່ຕ້ອງການທີ່ຈະເອົາການຢຸດຊົ່ວຄາວຫມົດ. ຄ່າເລີ່ມຕົ້ນແມ່ນ 0.

ຕົວຢ່າງ

· ຕົວຢ່າງຕໍ່ໄປນີ້ສະແດງໃຫ້ເຫັນວິທີການນໍາໃຊ້ການກັ່ນຕອງນີ້ເພື່ອເລີ່ມຕົ້ນການບັນທຶກທີ່ເຮັດ
ບໍ່ມີຄວາມລ່າຊ້າໃນຕອນເລີ່ມຕົ້ນທີ່ມັກຈະເກີດຂື້ນລະຫວ່າງການກົດບັນທຶກ
ປຸ່ມ​ແລະ​ການ​ເລີ່ມ​ຕົ້ນ​ຂອງ​ການ​ປະ​ຕິ​ບັດ​:

silenceremove=1:5:0.02

treble
ເພີ່ມຫຼືຕັດຄວາມຖີ່ຂອງສຽງ (ເທິງ) ຂອງສຽງໂດຍໃຊ້ຕົວກອງຊັ້ນວາງສອງເສົາທີ່ມີ
ການຕອບສະ ໜອງ ທີ່ຄ້າຍຄືກັບການຄວບຄຸມສຽງຂອງ hi-fi ມາດຕະຖານ. ອັນນີ້ຍັງເອີ້ນວ່າ
shelving equalization (EQ).

ຕົວກອງຍອມຮັບຕົວເລືອກຕໍ່ໄປນີ້:

ໄດ້​ຮັບ​, g
ໃຫ້ກຳໄລທີ່ຕ່ຳກວ່າ ~22 kHz ແລະຄວາມຖີ່ Nyquist. ຂອງມັນ
ຂອບເຂດທີ່ເປັນປະໂຫຍດແມ່ນປະມານ -20 (ສໍາລັບການຕັດຂະຫນາດໃຫຍ່) ເຖິງ +20 (ສໍາລັບການຊຸກຍູ້ຂະຫນາດໃຫຍ່). ລະວັງ
clipping ໃນເວລາທີ່ນໍາໃຊ້ຜົນປະໂຫຍດໃນທາງບວກ.

ຄວາມຖີ່, f
ກໍານົດຄວາມຖີ່ສູນກາງຂອງການກັ່ນຕອງແລະອື່ນໆສາມາດຖືກນໍາໃຊ້ເພື່ອຂະຫຍາຍຫຼືຫຼຸດຜ່ອນການ
ຊ່ວງຄວາມຖີ່ທີ່ຈະເພີ່ມ ຫຼືຕັດ. ຄ່າເລີ່ມຕົ້ນແມ່ນ 3000 Hz.

width_type
ກໍານົດວິທີການກໍານົດ band-width ຂອງການກັ່ນຕອງ.

h Hz

q Q-Factor

o octave

s ເປີ້ນພູ

ຄວາມກວ້າງ, w
ກຳນົດໄລຍະການປ່ຽນຊັ້ນວາງຂອງຕົວກອງ.

ປະລິມານ
ປັບລະດັບສຽງປ້ອນເຂົ້າ.

ມັນຍອມຮັບຕົວກໍານົດການດັ່ງຕໍ່ໄປນີ້:

ປະລິມານ
ຕັ້ງຄ່າການສະແດງອອກລະດັບສຽງ.

ຄ່າ​ທີ່​ໄດ້​ຮັບ​ແມ່ນ​ໄດ້​ຖືກ​ຕັດ​ກັບ​ຄ່າ​ສູງ​ສຸດ​.

ລະດັບສຽງອອກແມ່ນໃຫ້ໂດຍການພົວພັນ:

= *

ຄ່າເລີ່ມຕົ້ນ ສຳ ລັບ ປະລິມານ ແມ່ນ "1.0".

ຄວາມຖືກຕ້ອງ
ພາລາມິເຕີນີ້ສະແດງເຖິງຄວາມແມ່ນຍໍາທາງຄະນິດສາດ.

ມັນກໍານົດຮູບແບບຕົວຢ່າງການປ້ອນຂໍ້ມູນຈະຖືກອະນຸຍາດໃຫ້, ເຊິ່ງຜົນກະທົບຕໍ່ຄວາມແມ່ນຍໍາ
ຂອງ​ການ​ຂະ​ຫຍາຍ​ປະ​ລິ​ມານ​.

ຄົງ
8-bit ຄົງຈຸດ; ອັນນີ້ຈຳກັດຮູບແບບການປ້ອນຂໍ້ມູນໃສ່ U8, S16, ແລະ S32.

float
ຈຸດລອຍ 32-ບິດ; ອັນນີ້ຈຳກັດຮູບແບບຕົວຢ່າງການປ້ອນຂໍ້ມູນໃສ່ FLT. (ຄ່າເລີ່ມຕົ້ນ)

double
ຈຸດລອຍ 64-ບິດ; ອັນນີ້ຈຳກັດຮູບແບບການປ້ອນຂໍ້ມູນໃສ່ DBL.

ຫຼິ້ນຄືນ
ເລືອກພຶດຕິກໍາກ່ຽວກັບການປະເຊີນກັບຂໍ້ມູນດ້ານຂ້າງ ReplayGain ໃນກອບການປ້ອນຂໍ້ມູນ.

ວາງ
ເອົາຂໍ້ມູນດ້ານຂ້າງ ReplayGain ອອກ, ບໍ່ສົນໃຈເນື້ອຫາຂອງມັນ (ຄ່າເລີ່ມຕົ້ນ).

ບໍ່ສົນໃຈ
ບໍ່ສົນໃຈຂໍ້ມູນດ້ານຂ້າງ ReplayGain, ແຕ່ປ່ອຍໃຫ້ມັນຢູ່ໃນກອບ.

ຕິດຕາມ
ຕ້ອງການເພີ່ມການຕິດຕາມ, ຖ້າມີ.

ອັລບັມ
ຕ້ອງການເພີ່ມອັນລະບັ້ມ, ຖ້າມີ.

replaygain_preamp
ການເພີ່ມຂຶ້ນຂອງການຂະຫຍາຍກ່ອນການຂະຫຍາຍຢູ່ໃນ dB ເພື່ອນໍາໃຊ້ກັບການເພີ່ມຂຶ້ນຂອງ replaygain ທີ່ເລືອກ.

ຄ່າເລີ່ມຕົ້ນສໍາລັບ replaygain_preamp ແມ່ນ 0.0.

ການປະເມີນ
ກໍານົດເວລາທີ່ການສະແດງອອກຂອງປະລິມານໄດ້ຖືກປະເມີນ.

ມັນຍອມຮັບຄ່າດັ່ງຕໍ່ໄປນີ້:

ຄັ້ງຫນຶ່ງ
ປະເມີນການສະແດງອອກພຽງແຕ່ຄັ້ງດຽວໃນລະຫວ່າງການເລີ່ມຕົ້ນການກັ່ນຕອງ, ຫຼືໃນເວລາທີ່ ປະລິມານ
ຄໍາສັ່ງຖືກສົ່ງ

frame
ປະເມີນການສະແດງອອກສໍາລັບແຕ່ລະກອບທີ່ເຂົ້າມາ

ຄ່າເລີ່ມຕົ້ນແມ່ນ ຄັ້ງຫນຶ່ງ.

ການສະແດງອອກຂອງປະລິມານສາມາດມີພາລາມິເຕີຕໍ່ໄປນີ້.

n ຕົວເລກກອບ (ເລີ່ມຕົ້ນທີ່ສູນ)

nb_channels
ຈຳ ນວນຊ່ອງທາງ

nb_consumed_samples
ຈໍານວນຂອງຕົວຢ່າງທີ່ບໍລິໂພກໂດຍການກັ່ນຕອງ

nb_ຕົວຢ່າງ
ຈໍານວນຕົວຢ່າງໃນກອບປະຈຸບັນ

pos ຕໍາແໜ່ງກອບຕົ້ນສະບັບໃນໄຟລ໌

pts ກອບ PTS

ອັດຕາຕົວຢ່າງ
ອັດຕາຕົວຢ່າງ

ເລີ່ມ
PTS ໃນຕອນເລີ່ມຕົ້ນຂອງການຖ່າຍທອດ

ເລີ່ມ
ເວລາເລີ່ມຕົ້ນຂອງການຖ່າຍທອດ

t ເວລາກອບ

tb timebase timebase

ປະລິມານ
ຄ່າປະລິມານຊຸດສຸດທ້າຍ

ໃຫ້ສັງເກດວ່າເມື່ອ ການປະເມີນ ຖືກກໍານົດໃຫ້ ຄັ້ງຫນຶ່ງ ພຽງແຕ່ໄດ້ ອັດຕາຕົວຢ່າງ ແລະ tb ຕົວ​ແປ​ທີ່​ມີ​ຢູ່​,
ຕົວແປອື່ນທັງໝົດຈະປະເມີນເປັນ NAN.

ຄໍາສັ່ງ

ການກັ່ນຕອງນີ້ສະຫນັບສະຫນູນຄໍາສັ່ງຕໍ່ໄປນີ້:

ປະລິມານ
ແກ້ໄຂການສະແດງອອກຂອງປະລິມານ. ຄໍາສັ່ງຍອມຮັບ syntax ດຽວກັນຂອງ
ທາງ​ເລືອກ​ທີ່​ສອດ​ຄ້ອງ​ກັນ​.

ຖ້າການສະແດງອອກທີ່ລະບຸບໍ່ຖືກຕ້ອງ, ມັນຖືກເກັບໄວ້ໃນມູນຄ່າປະຈຸບັນຂອງມັນ.

replaygain_noclip
ປ້ອງກັນການຕັດໂດຍການຈໍາກັດການໄດ້ຮັບທີ່ນໍາໃຊ້.

ຄ່າເລີ່ມຕົ້ນສໍາລັບ replaygain_noclip ແມ່ນ 1.

ຕົວຢ່າງ

· ຫຼຸດປະລິມານສຽງເຂົ້າເຄິ່ງໜຶ່ງ:

volume=volume=0.5
volume=volume=1/2
volume=volume=-6.0206dB

ໃນຕົວຢ່າງຂ້າງເທິງທັງຫມົດ, ລະຫັດຊື່ສໍາລັບ ປະລິມານ ສາມາດຖືກຍົກເວັ້ນ, ຕົວຢ່າງເຊັ່ນໃນ:

ປະລິມານ=0.5

·ເພີ່ມພະລັງງານສຽງເຂົ້າ 6 decibels ໂດຍໃຊ້ຄວາມແມ່ນຍໍາຈຸດຄົງທີ່:

ປະລິມານ = ປະລິມານ = 6dB: ຄວາມແມ່ນຍໍາ = ຄົງທີ່

· ປະລິມານການຈາງລົງຫຼັງຈາກເວລາ 10 ດ້ວຍໄລຍະເວລາການທໍາລາຍ 5 ວິນາທີ:

volume='if(lt(t,10),1,max(1-(t-10)/5,0))':eval=frame

ກວດຫາປະລິມານ
ກວດພົບລະດັບສຽງຂອງວິດີໂອທີ່ປ້ອນຂໍ້ມູນ.

ການກັ່ນຕອງບໍ່ມີຕົວກໍານົດການ. ການປ້ອນຂໍ້ມູນບໍ່ໄດ້ຖືກດັດແກ້. ສະຖິຕິກ່ຽວກັບປະລິມານຈະ
ພິມໃນບັນທຶກເມື່ອຮອດທ້າຍກະແສການປ້ອນຂໍ້ມູນ.

ໂດຍສະເພາະມັນຈະສະແດງປະລິມານສະເລ່ຍ (ຮາກຫມາຍຄວາມວ່າສີ່ຫລ່ຽມ), ປະລິມານສູງສຸດ (ຕໍ່ຕໍ່,
ພື້ນຖານຕົວຢ່າງ), ແລະການເລີ່ມຕົ້ນຂອງ histogram ຂອງມູນຄ່າປະລິມານທີ່ລົງທະບຽນ (ຈາກ
ຄ່າສູງສຸດເຖິງ 1/1000 ຂອງຕົວຢ່າງ).

ປະລິມານທັງໝົດຢູ່ໃນ decibels ທຽບກັບຄ່າ PCM ສູງສຸດ.

ຕົວຢ່າງ

ນີ້ແມ່ນບົດຄັດຫຍໍ້ຂອງຜົນຜະລິດ:

[parsed_volumedetect_0 0xa23120] mean_volume: -27 dB
[parsed_volumedetect_0 0xa23120] ສູງສຸດ_ປະລິມານ: -4 dB
[parsed_volumedetect_0 0xa23120] histogram_4db: 6
[parsed_volumedetect_0 0xa23120] histogram_5db: 62
[parsed_volumedetect_0 0xa23120] histogram_6db: 286
[parsed_volumedetect_0 0xa23120] histogram_7db: 1042
[parsed_volumedetect_0 0xa23120] histogram_8db: 2551
[parsed_volumedetect_0 0xa23120] histogram_9db: 4609
[parsed_volumedetect_0 0xa23120] histogram_10db: 8409

ມັນ ໝາຍ ຄວາມວ່າ:

· ພະລັງງານສີ່ຫຼ່ຽມມົນສະເລ່ຍແມ່ນປະມານ -27 dB, ຫຼື 10^-2.7.

·ຕົວຢ່າງທີ່ໃຫຍ່ທີ່ສຸດແມ່ນຢູ່ທີ່ -4 dB, ຫຼືຫຼາຍກວ່າທີ່ຊັດເຈນລະຫວ່າງ -4 dB ແລະ -5 dB.

· ມີ 6 ຕົວຢ່າງຢູ່ທີ່ -4 dB, 62 ທີ່ -5 dB, 286 ທີ່ -6 dB, ແລະອື່ນໆ.

ໃນຄໍາສັບຕ່າງໆອື່ນໆ, ການເພີ່ມລະດັບສຽງໂດຍ +4 dB ບໍ່ໄດ້ເຮັດໃຫ້ເກີດການຕັດໃດໆ, ເພີ່ມມັນໂດຍ +5
dB ເຮັດໃຫ້ເກີດການຕັດສໍາລັບ 6 ຕົວຢ່າງ, ແລະອື່ນໆ.

AUDIO ແຫຼ່ງຂໍ້ມູນ


ຂ້າງລຸ່ມນີ້ແມ່ນລາຍລະອຽດຂອງແຫຼ່ງສຽງທີ່ມີຢູ່ໃນປັດຈຸບັນ.

abuffer
Buffer ເຟຣມສຽງ, ແລະເຮັດໃຫ້ເຂົາເຈົ້າມີຢູ່ໃນຕ່ອງໂສ້ການກັ່ນຕອງ.

ແຫຼ່ງນີ້ແມ່ນມີຈຸດປະສົງຕົ້ນຕໍສໍາລັບການນໍາໃຊ້ໂຄງການ, ໂດຍສະເພາະໂດຍຜ່ານການໂຕ້ຕອບ
ກຳ ນົດໃນ libavfilter/asrc_abuffer.h.

ມັນຍອມຮັບຕົວກໍານົດການດັ່ງຕໍ່ໄປນີ້:

time_base
ໄລຍະເວລາທີ່ຈະໃຊ້ສໍາລັບການປະທັບຕາເວລາຂອງກອບທີ່ສົ່ງມາ. ມັນຕ້ອງເປັນ
ຕົວເລກຈຸດລອຍຕົວ ຫຼື ຢູ່ໃນ ຕົວເລກ/ຕົວຫານ ແບບຟອມ.

ອັດຕາຕົວຢ່າງ
ອັດຕາຕົວຢ່າງຂອງ buffers ສຽງທີ່ເຂົ້າມາ.

ຕົວຢ່າງ_fmt
ຮູບແບບຕົວຢ່າງຂອງ buffers ສຽງທີ່ເຂົ້າມາ. ບໍ່ວ່າຈະເປັນຊື່ຮູບແບບຕົວຢ່າງຫຼືຂອງມັນ
ການເປັນຕົວແທນຈຳນວນເຕັມທີ່ສອດຄ້ອງກັນຈາກ enum AVSampleFormat in
libavutil/samplefmt.h

channel_layout
ຮູບແບບຊ່ອງຂອງ buffers ສຽງທີ່ເຂົ້າມາ. ບໍ່ວ່າຈະເປັນຊື່ໂຄງຮ່າງຊ່ອງຈາກ
channel_layout_map ໃນ libavutil/channel_layout.c ຫຼືຈໍານວນທີ່ສອດຄ້ອງກັນຂອງມັນ
ຕົວແທນຈາກ AV_CH_LAYOUT_* macros in libavutil/channel_layout.h

ຊ່ອງທາງ
ຈໍາ​ນວນ​ຂອງ​ຊ່ອງ​ທາງ​ຂອງ​ການ​ເກັບ​ກໍາ​ສຽງ​ເຂົ້າ​ມາ​. ຖ້າທັງສອງ ຊ່ອງທາງ ແລະ
channel_layout ຖືກກໍານົດ, ຫຼັງຈາກນັ້ນພວກເຂົາຕ້ອງສອດຄ່ອງ.

ຕົວຢ່າງ

abuffer=sample_rate=44100:sample_fmt=s16p:channel_layout=stereo

ຈະສັ່ງໃຫ້ແຫຼ່ງຮັບສັນຍານສະເຕຣິໂອ planar 16bit ທີ່ 44100Hz. ນັບຕັ້ງແຕ່
ຮູບແບບຕົວຢ່າງທີ່ມີຊື່ "s16p" ກົງກັບຕົວເລກ 6 ແລະຮູບແບບຊ່ອງ "stereo"
ເທົ່າກັບ 0x3, ອັນນີ້ເທົ່າກັບ:

abuffer=sample_rate=44100:sample_fmt=6:channel_layout=0x3

aevalsrc
ສ້າງສັນຍານສຽງທີ່ລະບຸໄວ້ໂດຍການສະແດງອອກ.

ແຫຼ່ງນີ້ຍອມຮັບໃນການປ້ອນຂໍ້ມູນຫນຶ່ງຫຼືຫຼາຍສະແດງອອກ (ຫນຶ່ງສໍາລັບແຕ່ລະຊ່ອງ), ຊຶ່ງເປັນ
ການ​ປະ​ເມີນ​ຜົນ​ແລະ​ການ​ນໍາ​ໃຊ້​ເພື່ອ​ສ້າງ​ສັນ​ຍານ​ສຽງ​ທີ່​ສອດ​ຄ້ອງ​ກັນ​.

ແຫຼ່ງນີ້ຍອມຮັບທາງເລືອກຕໍ່ໄປນີ້:

exprs
ກໍານົດລາຍການສະແດງອອກທີ່ແຍກຕ່າງຫາກ '|' ສໍາລັບແຕ່ລະຊ່ອງແຍກຕ່າງຫາກ. ໃນ​ກໍ​ລະ​ນີ​
channel_layout ທາງ​ເລືອກ​ແມ່ນ​ບໍ່​ໄດ້​ລະ​ບຸ​ໄວ້​, ຮູບ​ລັກ​ຊ່ອງ​ທາງ​ເລືອກ​ແມ່ນ​ຂຶ້ນ​ກັບ​
ຈໍານວນຂອງການສະແດງອອກ. ຖ້າບໍ່ດັ່ງນັ້ນການສະແດງອອກສຸດທ້າຍແມ່ນຖືກນໍາໃຊ້ກັບ
ຊ່ອງ​ທາງ​ການ​ຜະ​ລິດ​ທີ່​ຍັງ​ເຫຼືອ​.

channel_layout, c
ກໍານົດຮູບແບບຊ່ອງ. ຈໍາ​ນວນ​ຊ່ອງ​ທາງ​ໃນ​ຮູບ​ແບບ​ທີ່​ກໍາ​ນົດ​ໄວ້​ຕ້ອງ​ເທົ່າ​ທຽມ​ກັນ​
ກັບຈໍານວນຂອງການສະແດງອອກ.

ໄລຍະເວລາ, d
ກໍານົດໄລຍະເວລາຕໍາ່ສຸດທີ່ຂອງສຽງທີ່ມາຈາກ. ເບິ່ງ ໄດ້ ທີ່ໃຊ້ເວລາ ໄລຍະເວລາ ສ່ວນ in ໄດ້
ffmpeg-utils(1​) ຄູ່ມື ສໍາລັບ syntax ທີ່ຍອມຮັບ. ໃຫ້ສັງເກດວ່າໄລຍະເວລາຜົນໄດ້ຮັບອາດຈະ
ຈະໃຫຍ່ກວ່າໄລຍະເວລາທີ່ລະບຸໄວ້, ເພາະວ່າສຽງທີ່ສ້າງຂຶ້ນຈະຖືກຕັດຢູ່ສະເໝີ
ສິ້ນສຸດຂອງກອບທີ່ສົມບູນ.

ຖ້າບໍ່ໄດ້ລະບຸ, ຫຼືໄລຍະເວລາທີ່ສະແດງອອກເປັນລົບ, ສຽງຄວນຈະເປັນ
ສ້າງຂຶ້ນຕະຫຼອດໄປ.

nb_ຕົວຢ່າງ, n
ກໍານົດຈໍານວນຕົວຢ່າງຕໍ່ຊ່ອງຕໍ່ແຕ່ລະກອບຜົນຜະລິດ, ເລີ່ມຕົ້ນເປັນ 1024.

ອັດຕາຕົວຢ່າງ, s
ລະບຸອັດຕາຕົວຢ່າງ, ຄ່າເລີ່ມຕົ້ນເປັນ 44100.

ແຕ່ລະສະແດງອອກໃນ exprs ສາມາດປະກອບມີຄ່າຄົງທີ່ຕໍ່ໄປນີ້:

n ຈໍາ​ນວນ​ຂອງ​ຕົວ​ຢ່າງ​ການ​ປະ​ເມີນ​ຜົນ​, ເລີ່ມ​ຈາກ 0​

t ເວລາຂອງຕົວຢ່າງການປະເມີນສະແດງອອກເປັນວິນາທີ, ເລີ່ມຈາກ 0

s ອັດຕາຕົວຢ່າງ

ຕົວຢ່າງ

· ສ້າງຄວາມງຽບ:

aevalsrc=0

· ສ້າງສັນຍານ sin ທີ່ມີຄວາມຖີ່ 440 Hz, ຕັ້ງອັດຕາຕົວຢ່າງເປັນ 8000 Hz:

aevalsrc="/sin(440*2*PI*t): s=8000"

· ສ້າງ​ສັນ​ຍານ​ສອງ​ຊ່ອງ​ທາງ​, ລະ​ບຸ​ຮູບ​ແບບ​ຊ່ອງ (ສູນ​ຫນ້າ + ກັບ​ຄືນ​ໄປ​ບ່ອນ​
ສູນ) ຢ່າງຈະແຈ້ງ:

aevalsrc="/sin(420*2*PI*t)|cos(430*2*PI*t):c=FC|BC"

· ສ້າງສິ່ງລົບກວນສີຂາວ:

aevalsrc="/-2+random(0) "

·ສ້າງສັນຍານ modulated ຄວາມກວ້າງໃຫຍ່:

aevalsrc="/sin(10*2*PI*t)*sin(880*2*PI*t)"

· ສ້າງ 2.5 Hz binaural beats ໃນ 360 Hz ຜູ້ໃຫ້ບໍລິການ:

aevalsrc="/0.1*sin(2*PI*(360-2.5/2)*t) | 0.1*sin(2*PI*(360+2.5/2)*t)"

anullsrc
ແຫຼ່ງສຽງ null, ສົ່ງຄືນກອບສຽງທີ່ຍັງບໍ່ໄດ້ປະມວນຜົນ. ມັນເປັນປະໂຫຍດສ່ວນໃຫຍ່ເປັນແມ່ແບບ
ແລະ​ຈະ​ໄດ້​ຮັບ​ການ​ຈ້າງ​ງານ​ໃນ​ເຄື່ອງ​ມື​ການ​ວິ​ເຄາະ / debugging​, ຫຼື​ເປັນ​ແຫຼ່ງ​ສໍາ​ລັບ​ການ​ກັ່ນ​ຕອງ​ທີ່​
ບໍ່ສົນໃຈຂໍ້ມູນການປ້ອນຂໍ້ມູນ (ຕົວຢ່າງ: sox synth filter).

ແຫຼ່ງນີ້ຍອມຮັບທາງເລືອກຕໍ່ໄປນີ້:

channel_layout, cl
ລະບຸຮູບແບບຊ່ອງ, ແລະສາມາດເປັນຈໍານວນເຕັມຫຼືສະຕຣິງທີ່ເປັນຕົວແທນຂອງ a
ຮູບ​ແບບ​ຊ່ອງ​. ຄ່າເລີ່ມຕົ້ນຂອງ channel_layout ແມ່ນ "stereo".

ກວດເບິ່ງຄໍານິຍາມ channel_layout_map ໃນ libavutil/channel_layout.c ສໍາ​ລັບ​ການ​ສ້າງ​ແຜນ​ທີ່​
ລະຫວ່າງສະຕຣິງ ແລະຄ່າໂຄງຮ່າງຊ່ອງ.

ອັດຕາຕົວຢ່າງ, r
ລະບຸອັດຕາຕົວຢ່າງ, ແລະຄ່າເລີ່ມຕົ້ນເປັນ 44100.

nb_ຕົວຢ່າງ, n
ກໍານົດຈໍານວນຕົວຢ່າງຕໍ່ກອບທີ່ຮ້ອງຂໍ.

ຕົວຢ່າງ

·ຕັ້ງອັດຕາຕົວຢ່າງເປັນ 48000 Hz ແລະຮູບແບບຊ່ອງເປັນ AV_CH_LAYOUT_MONO.

anullsrc=r=48000:cl=4

·ດໍາເນີນການດຽວກັນກັບ syntax ທີ່ຊັດເຈນກວ່າ:

anullsrc=r=48000:cl=ໂມໂນ

ຕົວກໍານົດການທັງຫມົດຈໍາເປັນຕ້ອງໄດ້ຖືກກໍານົດຢ່າງຈະແຈ້ງ.

ບິນ
ສັງເຄາະສຽງເວົ້າໂດຍໃຊ້ຫ້ອງສະໝຸດ libflite.

ເພື່ອເປີດໃຊ້ການລວບລວມຕົວກອງນີ້, ທ່ານຈໍາເປັນຕ້ອງຕັ້ງຄ່າ FFmpeg ດ້ວຍ
"--enable-libflite".

ກະລຸນາຮັບຊາບວ່າຫ້ອງສະໝຸດ flite ບໍ່ປອດໄພດ້ວຍກະທູ້.

ຕົວກອງຍອມຮັບຕົວເລືອກຕໍ່ໄປນີ້:

list_voices
ຖ້າຕັ້ງເປັນ 1, ບອກຊື່ສຽງທີ່ມີຢູ່ ແລະອອກທັນທີ. ຄ່າເລີ່ມຕົ້ນ
ຄ່າແມ່ນ 0.

nb_ຕົວຢ່າງ, n
ກໍານົດຈໍານວນຕົວຢ່າງສູງສຸດຕໍ່ກອບ. ຄ່າເລີ່ມຕົ້ນແມ່ນ 512.

ໄຟລ໌ຂໍ້ຄວາມ
ຕັ້ງຊື່ໄຟລ໌ທີ່ມີຂໍ້ຄວາມທີ່ຈະເວົ້າ.

ຂໍ້ຄວາມ
ຕັ້ງຂໍ້ຄວາມໃຫ້ເວົ້າ.

ສຽງ, v
ຕັ້ງສຽງທີ່ຈະໃຊ້ສໍາລັບການສັງເຄາະສຽງເວົ້າ. ຄ່າເລີ່ມຕົ້ນແມ່ນ "kal". ເບິ່ງຍັງ
list_voices ທາງເລືອກ.

ຕົວຢ່າງ

·ອ່ານຈາກໄຟລ໌ speech.txt, ແລະສັງເຄາະຂໍ້ຄວາມໂດຍໃຊ້ສຽງ flite ມາດຕະຖານ:

flite=textfile=speech.txt

· ອ່ານ​ຂໍ້​ຄວາມ​ທີ່​ກໍາ​ນົດ​ໄວ້​ໂດຍ​ການ​ເລືອກ "slt​" ສຽງ​:

flite=text='ສະບາຍດີ, ຜີມານຮ້າຍຂອງກຸ່ມຍ່ອຍ, ຂ້ອຍເປັນຜູ້ສະແດງຄວາມຄິດເຫັນ':voice=slt

· ປ້ອນຂໍ້ຄວາມໃສ່ ffmpeg:

ffmpeg -f lavfi -i flite=text='ສະບາຍດີ, ຜີມານຮ້າຍຂອງກຸ່ມຍ່ອຍ, ຂ້ອຍເປັນຜູ້ສະແດງຄວາມຄິດເຫັນ':voice=slt

· ເຮັດ ffplay ເວົ້າຂໍ້ຄວາມທີ່ລະບຸ, ໂດຍໃຊ້ "flite" ແລະ "lavfi" ອຸປະກອນ:

ffplay -f lavfi flite=text='ບໍ່ຕ້ອງເສຍໃຈກັບສິ່ງທີ່ເຈົ້າໄດ້ເຮັດ.'

ສໍາລັບຂໍ້ມູນເພີ່ມເຕີມກ່ຽວກັບ libflite, ກວດເບິ່ງ:http://www.speech.cs.cmu.edu/flite/>

ຊີນ
ສ້າງສັນຍານສຽງທີ່ເຮັດດ້ວຍຄື້ນ sine ທີ່ມີຄວາມກວ້າງ 1/8.

ສັນຍານສຽງແມ່ນແນ່ນອນເລັກນ້ອຍ.

ຕົວກອງຍອມຮັບຕົວເລືອກຕໍ່ໄປນີ້:

ຄວາມຖີ່, f
ຕັ້ງຄວາມຖີ່ຂອງຜູ້ໃຫ້ບໍລິການ. ຄ່າເລີ່ມຕົ້ນແມ່ນ 440 Hz.

beep_factor, b
ເປີດໃຊ້ສຽງບີບເປັນໄລຍະທຸກວິນາທີດ້ວຍຄວາມຖີ່ beep_factor ເວລາຜູ້ໃຫ້ບໍລິການ
ຄວາມຖີ່. ຄ່າເລີ່ມຕົ້ນແມ່ນ 0, ຊຶ່ງຫມາຍຄວາມວ່າສຽງບີບຖືກປິດການໃຊ້ງານ.

ອັດຕາຕົວຢ່າງ, r
ລະບຸອັດຕາຕົວຢ່າງ, ຄ່າເລີ່ມຕົ້ນແມ່ນ 44100.

ໄລຍະເວລາ, d
ລະບຸໄລຍະເວລາຂອງການຖ່າຍທອດສຽງທີ່ສ້າງຂຶ້ນ.

samples_per_frame
ກໍານົດຈໍານວນຕົວຢ່າງຕໍ່ກອບຜົນຜະລິດ, ຄ່າເລີ່ມຕົ້ນແມ່ນ 1024.

ຕົວຢ່າງ

· ສ້າງຄື້ນ sine 440 Hz ແບບງ່າຍດາຍ:

ຊີນ

· ສ້າງຄື້ນໄຊນ 220 Hz ດ້ວຍສຽງບີບ 880 Hz ໃນແຕ່ລະວິນາທີເປັນເວລາ 5 ວິນາທີ:

sine=220:4:d=5
sine=f=220:b=4:d=5
sine=frequency=220:beep_factor=4:duration=5

AUDIO ລິ້ງ


ຂ້າງລຸ່ມນີ້ແມ່ນລາຍລະອຽດຂອງອ່າງລ້າງສຽງທີ່ມີຢູ່ໃນປັດຈຸບັນ.

abuffersink
Buffer ເຟຣມສຽງ, ແລະເຮັດໃຫ້ເຂົາເຈົ້າມີຢູ່ໃນຕອນທ້າຍຂອງຕ່ອງໂສ້ການກັ່ນຕອງ.

ການຫລົ້ມຈົມນີ້ແມ່ນມີຈຸດປະສົງຕົ້ນຕໍສໍາລັບການນໍາໃຊ້ໂປຼແກຼມ, ໂດຍສະເພາະໂດຍຜ່ານການໂຕ້ຕອບ
ກຳ ນົດໃນ libavfilter/buffersink.h ຫຼືລະບົບທາງເລືອກ.

ມັນຍອມຮັບຕົວຊີ້ໄປຫາໂຄງສ້າງ AVABufferSinkContext, ເຊິ່ງກໍານົດການເຂົ້າມາ.
ຮູບແບບຂອງ buffers, ທີ່ຈະສົ່ງຜ່ານເປັນພາລາມິເຕີ opaque ກັບ "avfilter_init_filter" ສໍາລັບ
ການເລີ່ມຕົ້ນ.

anullsink
ອ່າງລ້າງສຽງ null; ບໍ່ເຮັດຫຍັງເລີຍກັບສຽງປ້ອນຂໍ້ມູນ. ມັນເປັນປະໂຫຍດສ່ວນໃຫຍ່ເປັນ
ແມ່ແບບແລະສໍາລັບການນໍາໃຊ້ໃນການວິເຄາະ / debugging ເຄື່ອງມື.

VIDEO FILTERS


ໃນເວລາທີ່ທ່ານ configure FFmpeg build ຂອງທ່ານ, ທ່ານສາມາດປິດການທໍາງານໃດໆຂອງການກັ່ນຕອງທີ່ມີຢູ່ແລ້ວໂດຍໃຊ້
"--disable-filters". ຜົນຜະລິດ configure ຈະສະແດງການກັ່ນຕອງວິດີໂອລວມຢູ່ໃນຂອງທ່ານ
ກໍ່ສ້າງ.

ຂ້າງລຸ່ມນີ້ແມ່ນລາຍລະອຽດຂອງຕົວກອງວິດີໂອທີ່ມີຢູ່ໃນປັດຈຸບັນ.

ສານສະກັດຈາກຕົວອັກສອນ
ສະກັດອົງປະກອບອັນຟາຈາກການປ້ອນຂໍ້ມູນເປັນວິດີໂອທີ່ມີສີຂີ້ເຖົ່າ. ນີ້ແມ່ນເປັນປະໂຫຍດໂດຍສະເພາະ
ກັບ ອັກຂະລະ ຕົວກອງ

ອັກຂະລະ
ເພີ່ມ ຫຼື ແທນທີ່ອົງປະກອບອັນຟາຂອງວັດສະດຸປ້ອນຫຼັກດ້ວຍຄ່າສີເທົາຂອງ a
ການປ້ອນຂໍ້ມູນທີສອງ. ນີ້ແມ່ນມີຈຸດປະສົງເພື່ອນໍາໃຊ້ກັບ ສານສະກັດຈາກຕົວອັກສອນ ເພື່ອອະນຸຍາດໃຫ້ສົ່ງຫຼື
ການເກັບຮັກສາລໍາດັບເຟຣມທີ່ມີອັນຟາໃນຮູບແບບທີ່ບໍ່ຮອງຮັບອັນຟາ
ຊ່ອງ.

ຕົວຢ່າງ, ເພື່ອສ້າງເຟຣມເຕັມຄືນໃຫມ່ຈາກວິດີໂອທີ່ເຂົ້າລະຫັດ YUV ປົກກະຕິແລະແຍກຕ່າງຫາກ
ວິດີໂອທີ່ສ້າງຂຶ້ນດ້ວຍ ສານສະກັດຈາກຕົວອັກສອນ, ທ່ານອາດຈະໃຊ້:

movie=in_alpha.mkv [alpha] ; [ໃນ][alpha] alphamerge [ອອກ]

ນັບຕັ້ງແຕ່ການກັ່ນຕອງນີ້ຖືກອອກແບບມາສໍາລັບການກໍ່ສ້າງຄືນໃຫມ່, ມັນດໍາເນີນການຢູ່ໃນລໍາດັບກອບໂດຍບໍ່ມີການ
ພິຈາລະນາການສະແຕມເວລາ, ແລະສິ້ນສຸດເມື່ອການປ້ອນຂໍ້ມູນເຂົ້າເຖິງຈຸດສິ້ນສຸດຂອງການຖ່າຍທອດ. ນີ້ຈະ
ເຮັດໃຫ້ເກີດບັນຫາຖ້າຫາກວ່າທໍ່ການເຂົ້າລະຫັດຂອງທ່ານຫຼຸດລົງກອບ. ຖ້າເຈົ້າພະຍາຍາມໃຊ້ຮູບພາບ
ໃນ​ຖາ​ນະ​ເປັນ overlay ກັບ​ການ​ສະ​ຕ​ຣີມ​ວິ​ດີ​ໂອ​, ພິ​ຈາ​ລະ​ນາ​ overlay ການກັ່ນຕອງແທນ.

ກົ້ນ
ຄືກັນກັບ ຄໍາບັນຍາຍ ການກັ່ນຕອງ, ຍົກເວັ້ນວ່າມັນບໍ່ຕ້ອງການ libavcodec ແລະ libavformat
ເຮັດວຽກ. ໃນທາງກົງກັນຂ້າມ, ມັນຖືກຈໍາກັດພຽງແຕ່ໄຟລ໌ຄໍາບັນຍາຍ ASS (Advanced Substation Alpha).

ການກັ່ນຕອງນີ້ຍອມຮັບທາງເລືອກຕໍ່ໄປນີ້ນອກເຫນືອໄປຈາກທາງເລືອກທົ່ວໄປຈາກ
ຄໍາບັນຍາຍ ການກັ່ນຕອງ:

ຮູບຮ່າງ
ກໍານົດເຄື່ອງຈັກຮູບຮ່າງ

ຄ່າທີ່ມີຢູ່ແມ່ນ:

ອັດຕະໂນມັດ
ເຄື່ອງຈັກຮູບຮ່າງ libass ເລີ່ມຕົ້ນ, ຊຶ່ງເປັນທີ່ດີທີ່ສຸດທີ່ມີຢູ່.

ງ່າຍດາຍ
ໄວ, ຕົວສ້າງແບບອັກສອນທີ່ບໍ່ເຊື່ອຟັງທີ່ສາມາດເຮັດໄດ້ພຽງແຕ່ການທົດແທນ

ສະລັບສັບຊ້ອນ
ຕົວຮູບຮ່າງຊ້າລົງໂດຍໃຊ້ OpenType ສຳລັບການປ່ຽນແທນ ແລະການຈັດຕຳແໜ່ງ

ຄ່າເລີ່ມຕົ້ນແມ່ນ "ອັດຕະໂນມັດ".

atadenoise
ນຳໃຊ້ເຄື່ອງປັບຄ່າສະເລ່ຍຊົ່ວຄາວແບບປັບຕົວໄດ້ກັບການປ້ອນຂໍ້ມູນວິດີໂອ.

ຕົວກອງຍອມຮັບຕົວເລືອກຕໍ່ໄປນີ້:

0a ຕັ້ງເກນ A ສໍາລັບຍົນທີ 1. ຄ່າເລີ່ມຕົ້ນແມ່ນ 0.02. ໄລຍະທີ່ຖືກຕ້ອງແມ່ນ 0 ຫາ 0.3.

0b ຕັ້ງເກນ B ສໍາລັບຍົນທີ 1. ຄ່າເລີ່ມຕົ້ນແມ່ນ 0.04. ໄລຍະທີ່ຖືກຕ້ອງແມ່ນ 0 ຫາ 5.

1a ຕັ້ງເກນ A ສໍາລັບຍົນທີ 2. ຄ່າເລີ່ມຕົ້ນແມ່ນ 0.02. ໄລຍະທີ່ຖືກຕ້ອງແມ່ນ 0 ຫາ 0.3.

1b ກໍານົດເກນ B ສໍາລັບຍົນທີ 2. ຄ່າເລີ່ມຕົ້ນແມ່ນ 0.04. ໄລຍະທີ່ຖືກຕ້ອງແມ່ນ 0 ຫາ 5.

2a ກໍານົດຂອບເຂດ A ສໍາລັບຍົນທີ 3. ຄ່າເລີ່ມຕົ້ນແມ່ນ 0.02. ໄລຍະທີ່ຖືກຕ້ອງແມ່ນ 0 ຫາ 0.3.

2b ກໍານົດເກນ B ສໍາລັບຍົນທີ 3. ຄ່າເລີ່ມຕົ້ນແມ່ນ 0.04. ໄລຍະທີ່ຖືກຕ້ອງແມ່ນ 0 ຫາ 5.

ເກນ A ຖືກອອກແບບເພື່ອຕອບສະໜອງຕໍ່ການປ່ຽນແປງຢ່າງກະທັນຫັນຂອງສັນຍານເຂົ້າ ແລະເກນ B
ຖືກອອກແບບມາເພື່ອປະຕິກິລິຍາຕໍ່ການປ່ຽນແປງຢ່າງຕໍ່ເນື່ອງຂອງສັນຍານຂາເຂົ້າ.

s ກໍານົດຈໍານວນຕົວກອງເຟຣມຈະໃຊ້ສໍາລັບການສະເລ່ຍ. ຄ່າເລີ່ມຕົ້ນແມ່ນ 33. ຕ້ອງເປັນຕົວເລກຄີກ
ໃນຂອບເຂດ [5, 129].

bbox
ຄິດໄລ່ກ່ອງຂອບສໍາລັບ pixels ທີ່ບໍ່ແມ່ນສີດໍາໃນຍົນກອບການແສງສະຫວ່າງກອບ.

ການກັ່ນຕອງນີ້ຄິດໄລ່ກ່ອງຂອບທີ່ມີ pixels ທັງຫມົດທີ່ມີຄ່າຄວາມສະຫວ່າງ
ຫຼາຍກວ່າຄ່າຕໍ່າສຸດທີ່ອະນຸຍາດ. ຕົວກໍານົດການອະທິບາຍກ່ອງ bounding ແມ່ນ
ພິມຢູ່ໃນບັນທຶກການກັ່ນຕອງ.

ການກັ່ນຕອງຍອມຮັບທາງເລືອກຕໍ່ໄປນີ້:

min_val
ກໍານົດຄ່າ luminance ຫນ້ອຍທີ່ສຸດ. ຄ່າເລີ່ມຕົ້ນແມ່ນ 16.

ກວດ​ຈັບ​ດຳ
ກວດ​ສອບ​ໄລ​ຍະ​ເວ​ລາ​ວິ​ດີ​ໂອ​ທີ່ (ເກືອບ​) ເປັນ​ສີ​ດໍາ​ຫມົດ​. ສາມາດເປັນປະໂຫຍດໃນການກວດສອບບົດ
ການຫັນປ່ຽນ, ການໂຄສະນາ, ຫຼືການບັນທຶກທີ່ບໍ່ຖືກຕ້ອງ. ສາຍຜົນຜະລິດປະກອບດ້ວຍເວລາສໍາລັບການ
ເລີ່ມຕົ້ນ, ສິ້ນສຸດແລະໄລຍະເວລາຂອງໄລຍະຫ່າງສີດໍາທີ່ກວດພົບສະແດງອອກເປັນວິນາທີ.

ໃນ​ຄໍາ​ສັ່ງ​ທີ່​ຈະ​ສະ​ແດງ​ສາຍ​ຜົນ​ຜະ​ລິດ​ໄດ້​, ທ່ານ​ຈໍາ​ເປັນ​ຕ້ອງ​ໄດ້​ກໍາ​ນົດ​ລະ​ດັບ loglevel ຢ່າງ​ຫນ້ອຍ​ເພື່ອ​
ຄ່າ AV_LOG_INFO.

ຕົວກອງຍອມຮັບຕົວເລືອກຕໍ່ໄປນີ້:

black_min_ໄລຍະເວລາ, d
ກໍານົດໄລຍະເວລາສີດໍາທີ່ກວດພົບຕໍາ່ສຸດທີ່ສະແດງອອກເປັນວິນາທີ. ມັນ​ຕ້ອງ​ເປັນ​ສິ່ງ​ທີ່​ບໍ່​ແມ່ນ
ຕົວເລກຈຸດລອຍລົບ.

ຄ່າເລີ່ມຕົ້ນແມ່ນ 2.0.

picture_black_ratio_th, pic_th
ກໍານົດຂອບເຂດສໍາລັບການພິຈາລະນາຮູບພາບ "ສີດໍາ". ສະແດງຄ່າຕໍ່າສຸດສໍາລັບ
ອັດ​ຕາ​ສ່ວນ​:

/

ສໍາລັບຮູບພາບທີ່ຖືວ່າເປັນສີດໍາ. ຄ່າເລີ່ມຕົ້ນແມ່ນ 0.98.

pixel_black_th, pix_th
ກໍານົດຂອບເຂດສໍາລັບການພິຈາລະນາ pixel "ສີດໍາ".

ເກນສະແດງຄ່າຄວາມສະຫວ່າງຂອງ pixels ລວງສູງສຸດທີ່ pixel ເປັນ
ພິຈາລະນາ "ສີດໍາ". ຄ່າທີ່ສະໜອງໃຫ້ຖືກປັບຂະໜາດຕາມສົມຜົນຕໍ່ໄປນີ້:

= + *

luminance_range_size ແລະ luminance_minimum_value ແມ່ນ​ຂຶ້ນ​ກັບ​ຮູບ​ແບບ​ວິ​ດີ​ໂອ​ການ​ປ້ອນ​ຂໍ້​ມູນ​, ໄດ້​
ຊ່ວງແມ່ນ [0-255] ສໍາລັບຮູບແບບເຕັມລະດັບ YUV ແລະ [16-235] ສໍາລັບ YUV ທີ່ບໍ່ແມ່ນເຕັມລະດັບ
ຮູບແບບຕ່າງໆ.

ຄ່າເລີ່ມຕົ້ນແມ່ນ 0.10.

ຕົວຢ່າງຕໍ່ໄປນີ້ກໍານົດຂອບເຂດ pixels ສູງສຸດເປັນຄ່າຕໍາ່ສຸດທີ່, ແລະກວດພົບ
ໄລຍະຫ່າງສີດໍາພຽງແຕ່ 2 ຫຼືຫຼາຍກວ່ານັ້ນ:

blackdetect=d=2:pix_th=0.00

ຂອບດຳ
ກວດພົບເຟຣມທີ່ມີ (ເກືອບ) ສີດໍາຫມົດ. ສາມາດເປັນປະໂຫຍດໃນການກວດສອບບົດ
ການຫັນປ່ຽນ ຫຼືການໂຄສະນາ. ສາຍຜົນຜະລິດປະກອບດ້ວຍຕົວເລກກອບຂອງທີ່ກວດພົບ
ກອບ, ເປີເຊັນຂອງຄວາມດໍາ, ຕໍາແຫນ່ງໃນໄຟລ໌ຖ້າຫາກວ່າຮູ້ຈັກຫຼື -1 ແລະ
ເວລາເປັນວິນາທີ.

ໃນ​ຄໍາ​ສັ່ງ​ທີ່​ຈະ​ສະ​ແດງ​ສາຍ​ຜົນ​ຜະ​ລິດ​ໄດ້​, ທ່ານ​ຈໍາ​ເປັນ​ຕ້ອງ​ໄດ້​ກໍາ​ນົດ​ລະ​ດັບ loglevel ຢ່າງ​ຫນ້ອຍ​ເພື່ອ​
ຄ່າ AV_LOG_INFO.

ມັນຍອມຮັບຕົວກໍານົດການດັ່ງຕໍ່ໄປນີ້:

ຈໍານວນເງິນ
ເປີເຊັນຂອງ pixels ທີ່ຕ້ອງຢູ່ຂ້າງລຸ່ມ; ມັນຕັ້ງໄວ້ເປັນ 98.

ໃກ້ຈະເຂົ້າສູ່, ສົດຊື່ນ
ເກນຂ້າງລຸ່ມທີ່ຄ່າ pixels ລວງຖືວ່າເປັນສີດຳ; ມັນຕັ້ງໄວ້ເປັນ 32.

ຜະ​ສົມ​ຜະ​ສານ​, tblend
ປະສົມສອງກອບວິດີໂອເຂົ້າກັນ.

ການກັ່ນຕອງ "ປະສົມ" ໃຊ້ເວລາສອງກະແສການປ້ອນຂໍ້ມູນແລະຜົນໄດ້ຮັບຫນຶ່ງກະແສ, ການປ້ອນຂໍ້ມູນທໍາອິດແມ່ນ
ຊັ້ນ "ເທິງ" ແລະວັດສະດຸປ້ອນທີສອງແມ່ນຊັ້ນ "ລຸ່ມ". ຜົນອອກມາຈະສິ້ນສຸດເມື່ອອິນພຸດສັ້ນທີ່ສຸດ
ສິ້ນສຸດ.

ການກັ່ນຕອງ "tblend" (ການຜະສົມຜະສານເວລາ) ໃຊ້ເວລາສອງເຟຣມຕິດຕໍ່ກັນຈາກສາຍນ້ໍາດຽວ, ແລະ
ເອົາຜົນໄດ້ຮັບທີ່ໄດ້ຮັບໂດຍການຜະສົມກອບໃຫມ່ຢູ່ເທິງຂອງກອບເກົ່າ.

ລາຍລະອຽດຂອງທາງເລືອກທີ່ຍອມຮັບດັ່ງຕໍ່ໄປນີ້.

c0_mode
c1_mode
c2_mode
c3_mode
all_mode
ຕັ້ງຮູບແບບການຜະສົມຜະສານສໍາລັບອົງປະກອບ pixels ລວງສະເພາະຫຼືອົງປະກອບ pixels ລວງທັງຫມົດໃນກໍລະນີຂອງ
all_mode. ຄ່າເລີ່ມຕົ້ນແມ່ນ "ປົກກະຕິ".

ຄ່າທີ່ມີໃຫ້ສຳລັບໂໝດອົງປະກອບແມ່ນ:

ນອກຈາກນັ້ນ
ແລະ
ໂດຍສະເລ່ຍ
ເຜົາໄຫມ້
ເຮັດໃຫ້ມືດມົວ
ຄວາມແຕກຕ່າງ
ຄວາມແຕກຕ່າງ 128
ແບ່ງປັນ
dodge
ການຍົກເວັ້ນ
ໂກລ
ແສງຍາກ
ຮາດມິກ
ເບົາບາງລົງ
ແສງເສັ້ນ
multiply
ການປະຕິເສດ
ປົກກະຕິ
or
overlay
phoenix
ແສງໄຟ
ສະທ້ອນໃຫ້ເຫັນ
ຫນ້າຈໍ
ແສງສະຫວ່າງ
ຫັກອອກ
vividlight
xor
c0_opacity
c1_opacity
c2_opacity
c3_opacity
all_opacity
ກໍານົດຄວາມໂປ່ງໃສການຜະສົມຜະສານສໍາລັບອົງປະກອບ pixels ລວງສະເພາະຫຼືອົງປະກອບ pixels ລວງທັງຫມົດໃນກໍລະນີຂອງ
all_opacity. ໃຊ້ໃນການປະສົມປະສານກັບຮູບແບບການຜະສົມຂອງອົງປະກອບ pixels ເທົ່ານັ້ນ.

c0_expr
c1_expr
c2_expr
c3_expr
all_expr
ກໍານົດການຜະສົມຜະສານສໍາລັບອົງປະກອບ pixels ລວງສະເພາະຫຼືອົງປະກອບ pixels ລວງທັງຫມົດໃນກໍລະນີຂອງ
all_expr. ກະລຸນາຮັບຊາບວ່າຕົວເລືອກໂໝດທີ່ກ່ຽວຂ້ອງຈະຖືກລະເລີຍຫາກຖືກຕັ້ງໄວ້.

ການສະແດງອອກສາມາດໃຊ້ຕົວແປຕໍ່ໄປນີ້:

N ຕົວເລກລໍາດັບຂອງກອບການກັ່ນຕອງ, ເລີ່ມຈາກ 0.

X
Y ພິກັດຂອງຕົວຢ່າງປະຈຸບັນ

W
H ຄວາມກວ້າງແລະຄວາມສູງຂອງຍົນທີ່ຖືກກັ່ນຕອງໃນປັດຈຸບັນ

SW
SH ຂະໜາດຄວາມກວ້າງແລະຄວາມສູງຂຶ້ນກັບຍົນທີ່ກັ່ນຕອງໃນປັດຈຸບັນ. ມັນແມ່ນອັດຕາສ່ວນ
ລະຫວ່າງຕົວເລກຍົນ luma ທີ່ສອດຄ້ອງກັນຂອງ pixels ແລະຍົນປະຈຸບັນ.
ຕົວຢ່າງ: ສໍາລັບ YUV4:2:0 ຄ່າແມ່ນ "1,1" ສໍາລັບຍົນ luma, ແລະ "0.5,0.5" ສໍາລັບ.
ຍົນ chroma.

T ເວລາຂອງກອບປະຈຸບັນ, ສະແດງອອກເປັນວິນາທີ.

ຫົວຂໍ້, A
ຄ່າຂອງອົງປະກອບ pixels ລວງຢູ່ສະຖານທີ່ປະຈຸບັນສໍາລັບກອບວິດີໂອທໍາອິດ (ຊັ້ນເທິງ).

ລຸ່ມ, B
ຄ່າຂອງອົງປະກອບ pixels ລວງຢູ່ສະຖານທີ່ປະຈຸບັນສໍາລັບກອບວິດີໂອທີສອງ (ລຸ່ມ
ຊັ້ນ).

ສັ້ນທີ່ສຸດ
ບັງຄັບການປິດເວລາການປ້ອນຂໍ້ມູນສັ້ນທີ່ສຸດສິ້ນສຸດລົງ. ຄ່າເລີ່ມຕົ້ນແມ່ນ 0. ທາງເລືອກນີ້ແມ່ນ
ກໍານົດພຽງແຕ່ສໍາລັບການກັ່ນຕອງ "ປະສົມ".

ຊໍ້າຄືນຫຼ້າສຸດ
ສືບຕໍ່ນຳໃຊ້ຂອບລຸ່ມສຸດຫຼັງຈາກສິ້ນສຸດການຖ່າຍທອດ. ຄ່າຂອງ 0
ປິດການທໍາງານການກັ່ນຕອງຫຼັງຈາກຂອບສຸດທ້າຍຂອງຊັ້ນລຸ່ມແມ່ນບັນລຸໄດ້. ຄ່າເລີ່ມຕົ້ນແມ່ນ 1.
ຕົວເລືອກນີ້ຖືກກໍານົດພຽງແຕ່ສໍາລັບການກັ່ນຕອງ "ປະສົມ".

ຕົວຢ່າງ

· ນຳໃຊ້ການປ່ຽນຈາກຊັ້ນລຸ່ມໄປຫາຊັ້ນເທິງໃນ 10 ວິນາທີທຳອິດ:

blend=all_expr='A*(if(gte(T,10),1,T/10))+B*(1-(if(gte(T,10),1,T/10)))'

· ນຳໃຊ້ຜົນກະທົບ 1x1 checkerboard:

blend=all_expr='if(eq(mod(X,2),mod(Y,2)),A,B)'

·​ນໍາ​ໃຊ້​ຜົນ​ກະ​ທົບ uncover ຊ້າຍ​:

blend=all_expr='if(gte(N*SW+X,W),A,B)'

· ນຳ ໃຊ້ຜົນກະທົບທີ່ເປີດເຜີຍ:

blend=all_expr='if(gte(YN*SH,0),A,B)'

· ນຳໃຊ້ເອັບເຟັກເປີດຂຶ້ນ-ຊ້າຍ:

blend=all_expr='if(gte(T*SH*40+Y,H)*gte((T*40*SW+X)*W/H,W),A,B)'

·ສະແດງຄວາມແຕກຕ່າງລະຫວ່າງກອບປະຈຸບັນແລະທີ່ຜ່ານມາ:

tblend=all_mode=difference128

boxblur
ນຳໃຊ້ສູດການຄິດໄລ່ຂອງ boxblur ກັບວິດີໂອປ້ອນຂໍ້ມູນ.

ມັນຍອມຮັບຕົວກໍານົດການດັ່ງຕໍ່ໄປນີ້:

luma_radius, lr
luma_power, lp
chroma_radius, cr
chroma_power, cp
alpha_radius, ar
alpha_power, ap

ລາຍລະອຽດຂອງທາງເລືອກທີ່ຍອມຮັບດັ່ງຕໍ່ໄປນີ້.

luma_radius, lr
chroma_radius, cr
alpha_radius, ar
ກໍານົດການສະແດງອອກສໍາລັບ radius ກ່ອງເປັນ pixels ທີ່ໃຊ້ສໍາລັບການເຮັດໃຫ້ມົວທີ່ສອດຄ້ອງກັນ
ຍົນປ້ອນ.

ຄ່າລັດສະໝີຕ້ອງເປັນຕົວເລກທີ່ບໍ່ແມ່ນລົບ, ແລະຈະຕ້ອງບໍ່ໃຫຍ່ກວ່າຄ່າ
ຂອງສຳນວນ "min(w,h)/2" ສຳລັບຍົນ luma ແລະ alpha, ແລະ "min(cw,ch)/2"
ສໍາລັບຍົນ chroma.

ຄ່າເລີ່ມຕົ້ນສໍາລັບ luma_radius ແມ່ນ "2". ຖ້າບໍ່ລະບຸ, chroma_radius ແລະ alpha_radius
ຄ່າເລີ່ມຕົ້ນເປັນຄ່າທີ່ສອດຄ້ອງກັນທີ່ກໍານົດໄວ້ສໍາລັບ luma_radius.

ການສະແດງອອກສາມາດມີຄ່າຄົງທີ່ຕໍ່ໄປນີ້:

w
h ຄວາມກວ້າງແລະຄວາມສູງຂອງວັດສະດຸປ້ອນເປັນ pixels.

cw
ch ຄວາມກວ້າງ ແລະລວງສູງຂອງຮູບພາບ input chroma ເປັນ pixels.

hsub
vsub
ຄ່າຍ່ອຍ chroma ແນວນອນ ແລະແນວຕັ້ງ. ສໍາລັບຕົວຢ່າງ, ສໍາລັບ pixels ລວງ
ຮູບແບບ "yuv422p", hsub ແມ່ນ 2 ແລະ vsub ແມ່ນ 1.

luma_power, lp
chroma_power, cp
alpha_power, ap
ລະບຸຈຳນວນຄັ້ງທີ່ຕົວກອງ boxblur ຖືກນຳໃຊ້ກັບຍົນທີ່ສອດຄ້ອງກັນ.

ຄ່າເລີ່ມຕົ້ນສໍາລັບ luma_power ແມ່ນ 2. ຖ້າບໍ່ລະບຸ, chroma_power ແລະ alpha_power
ຄ່າເລີ່ມຕົ້ນເປັນຄ່າທີ່ສອດຄ້ອງກັນທີ່ກໍານົດໄວ້ສໍາລັບ luma_power.

ຄ່າຂອງ 0 ຈະປິດການໃຊ້ງານຜົນກະທົບ.

ຕົວຢ່າງ

· ນຳໃຊ້ຟິວເຕີ boxblur ກັບ luma, chroma, ແລະ alpha radii ທີ່ຕັ້ງເປັນ 2:

boxblur=luma_radius=2:luma_power=1
boxblur=2:1

· ຕັ້ງລັດສະໝີ luma ເປັນ 2, ແລະລັດສະໝີ alpha ແລະ chroma ເປັນ 0:

boxblur=2:1:cr=0:ar=0

·ຕັ້ງ luma ແລະ chroma radii ເປັນສ່ວນຫນຶ່ງຂອງຂະຫນາດວິດີໂອ:

boxblur=luma_radius=min(h\,w)/10:luma_power=1:chroma_radius=min(cw\,ch)/10:chroma_power=1

codecview
ເບິ່ງເຫັນຂໍ້ມູນທີ່ຖືກສົ່ງອອກໂດຍຕົວແປງສັນຍານບາງອັນ.

ບາງຕົວແປງສັນຍານສາມາດສົ່ງອອກຂໍ້ມູນຜ່ານກອບໂດຍໃຊ້ຂໍ້ມູນຂ້າງຄຽງຫຼືວິທີການອື່ນໆ. ສໍາລັບ
ຕົວຢ່າງ, ບາງຕົວແປງສັນຍານ MPEG ສົ່ງອອກ vectors motion ຜ່ານ ສົ່ງອອກ_mvs ທຸງໃນ
ຕົວແປງສັນຍານ ທຸງ2 ທາງເລືອກ.

ການກັ່ນຕອງຍອມຮັບທາງເລືອກຕໍ່ໄປນີ້:

mv ຕັ້ງຄ່າ vectors motion ເພື່ອສະແດງພາບ.

ທຸງທີ່ມີຢູ່ສໍາລັບ mv ແມ່ນ:

pf MVs ຄາດຄະເນລ່ວງໜ້າຂອງ P-frames

bf MVs ທີ່ຄາດຄະເນໄວ້ຂ້າງຫນ້າຂອງ B-frames

bb MVs ຄາດຄະເນຍ້ອນຫຼັງຂອງ B-frames

ຕົວຢ່າງ

· Visualizes MVs ຫຼາຍທິດທາງຈາກ P ແລະ B-Frames ໂດຍໃຊ້ ffplay:

ffplay -flags2 +export_mvs input.mpg -vf codecview=mv=pf+bf+bb

ການສົມດຸນສີ
ແກ້ໄຂຄວາມເຂັ້ມຂອງສີຫຼັກ (ສີແດງ, ສີຂຽວ ແລະສີຟ້າ) ຂອງກອບການປ້ອນຂໍ້ມູນ.

ຕົວກອງອະນຸຍາດໃຫ້ປັບກອບການປ້ອນຂໍ້ມູນໃນເງົາ, ສຽງກາງ ຫຼືຈຸດເດັ່ນ
ພາກພື້ນສໍາລັບການດຸ່ນດ່ຽງສີແດງ-cyan, ສີຂຽວ-ສີມ່ວງຫຼືສີຟ້າ-ສີເຫຼືອງ.

ມູນຄ່າການປັບຕົວເປັນບວກຈະປ່ຽນຄວາມສົມດຸນໄປສູ່ສີຫຼັກ, ເປັນຄ່າລົບ
ໄປສູ່ສີທີ່ສົມບູນ.

ຕົວກອງຍອມຮັບຕົວເລືອກຕໍ່ໄປນີ້:

rs
gs
bs ປັບເງົາສີແດງ, ສີຂຽວ ແລະສີຟ້າ (ພິກເຊວທີ່ມືດທີ່ສຸດ).

rm
gm
bm ປັບສຽງກາງສີແດງ, ສີຂຽວ ແລະສີຟ້າ (ພິກເຊວປານກາງ).

rh
gh
bh ປັບຈຸດເດັ່ນສີແດງ, ສີຂຽວ ແລະສີຟ້າ (ພິກເຊວທີ່ສົດໃສທີ່ສຸດ).

ໄລຍະທີ່ອະນຸຍາດສໍາລັບທາງເລືອກແມ່ນ "[-1.0, 1.0]". ຄ່າເລີ່ມຕົ້ນແມ່ນ 0.

ຕົວຢ່າງ

· ເພີ່ມ​ສີ​ແດງ​ໃຫ້​ເປັນ​ເງົາ​:

colorbalance=rs=.3

colorkey
ການກົດປຸ່ມສີ RGB colorspace.

ຕົວກອງຍອມຮັບຕົວເລືອກຕໍ່ໄປນີ້:

ສີ
ສີທີ່ຈະຖືກແທນທີ່ດ້ວຍຄວາມໂປ່ງໃສ.

ຄວາມຄ້າຍຄືກັນ
ເປີເຊັນຄວາມຄ້າຍຄືກັນກັບສີທີ່ສໍາຄັນ.

0.01 ກົງກັບສີຫຼັກທີ່ແນ່ນອນ, ໃນຂະນະທີ່ 1.0 ກົງກັບທຸກຢ່າງ.

ຜະສົມຜະສານ
ອັດຕາສ່ວນປະສົມ.

0.0 ເຮັດໃຫ້ pixels ມີຄວາມໂປ່ງໃສຢ່າງເຕັມທີ່, ຫຼືບໍ່ໂປ່ງໃສເລີຍ.

ຄ່າທີ່ສູງຂຶ້ນສົ່ງຜົນໃຫ້ pixels ເຄິ່ງໂປ່ງໃສ, ມີຄວາມໂປ່ງໃສສູງກວ່າຫຼາຍ
ສີ pixels ຄ້າຍຄືກັນກັບສີທີ່ສໍາຄັນ.

ຕົວຢ່າງ

· ເຮັດໃຫ້ທຸກ pixels ສີຂຽວໃນຮູບພາບທີ່ປ້ອນເຂົ້າມີຄວາມໂປ່ງໃສ:

ffmpeg -i input.png -vf colorkey=green out.png

· ວາງວິດີໂອໜ້າຈໍສີຂຽວຢູ່ເທິງສຸດຂອງພາບພື້ນຫຼັງແບບຄົງທີ່.

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

ລະດັບສີ
ປັບກອບການປ້ອນວິດີໂອໂດຍໃຊ້ລະດັບ.

ຕົວກອງຍອມຮັບຕົວເລືອກຕໍ່ໄປນີ້:

rimin
ຈີມິນ
ບິມິນ
ເປົ້າໝາຍ
ປັບສີແດງ, ສີຂຽວ, ສີຟ້າ ແລະ alpha input ຈຸດສີດໍາ. ໄລຍະທີ່ອະນຸຍາດສໍາລັບທາງເລືອກແມ່ນ
"[-1.0, 1.0]". ຄ່າເລີ່ມຕົ້ນແມ່ນ 0.

rimax
gimax
bimax
aimax
ປັບສີແດງ, ສີຂຽວ, ສີຟ້າ ແລະ alpha input ຈຸດສີຂາວ. ໄລຍະທີ່ອະນຸຍາດສໍາລັບທາງເລືອກແມ່ນ
"[-1.0, 1.0]". ຄ່າເລີ່ມຕົ້ນແມ່ນ 1.

ລະດັບການປ້ອນຂໍ້ມູນແມ່ນໃຊ້ເພື່ອເຮັດໃຫ້ຈຸດເດັ່ນ (ສຽງສົດໃສ), ເງົາມືດ (ມືດ
ໂຕນ), ປ່ຽນຄວາມສົມດູນຂອງໂຕນສົດໃສແລະຊ້ໍາ.

ໂລມານີ
gomin
ໂບມິນ
ອາມິນ
ປັບຈຸດສີດຳອອກສີແດງ, ສີຂຽວ, ສີຟ້າ ແລະອັນຟາ. ໄລຍະທີ່ອະນຸຍາດສໍາລັບທາງເລືອກແມ່ນ
"[0, 1.0]". ຄ່າເລີ່ມຕົ້ນແມ່ນ 0.

ໂຣແມັກ
gomax
ໂບແມັກ
aomax
ປັບຈຸດອອກສີແດງ, ສີຂຽວ, ສີຟ້າ ແລະອັນຟາເປັນສີຂາວ. ໄລຍະທີ່ອະນຸຍາດສໍາລັບທາງເລືອກແມ່ນ
"[0, 1.0]". ຄ່າເລີ່ມຕົ້ນແມ່ນ 1.

ລະດັບຜົນຜະລິດອະນຸຍາດໃຫ້ເລືອກຄູ່ມືຂອງລະດັບຜົນຜະລິດທີ່ມີຂໍ້ຈໍາກັດ.

ຕົວຢ່າງ

·​ເຮັດ​ໃຫ້​ຜົນ​ຜະ​ລິດ​ວິ​ດີ​ໂອ​ທີ່​ມືດ​ມົວ​:

colorlevels=rimin=0.058:gimin=0.058:bimin=0.058

· ເພີ່ມຄວາມຄົມຊັດ:

colorlevels=rimin=0.039:gimin=0.039:bimin=0.039:rimax=0.96:gimax=0.96:bimax=0.96

· ເຮັດໃຫ້ຜົນຜະລິດວິດີໂອເບົາລົງ:

colorlevels=rimax=0.902:gimax=0.902:bimax=0.902

· ເພີ່ມຄວາມສະຫວ່າງ:

colorlevels=romin=0.5:gomin=0.5:bomin=0.5

colorchannelmixer
ປັບກອບການປ້ອນວິດີໂອໂດຍການປະສົມຊ່ອງສີຄືນໃໝ່.

ການກັ່ນຕອງນີ້ດັດແປງຊ່ອງສີໂດຍການເພີ່ມຄ່າທີ່ກ່ຽວຂ້ອງກັບຊ່ອງອື່ນໆ
ຂອງ pixels ດຽວກັນ. ຕົວຢ່າງຖ້າຄ່າທີ່ຈະແກ້ໄຂເປັນສີແດງ, ມູນຄ່າຜົນຜະລິດຈະເປັນ:

= * + * + * + *

ຕົວກອງຍອມຮັບຕົວເລືອກຕໍ່ໄປນີ້:

rr
rg
rb
ra ປັບການປະກອບສ່ວນຂອງຊ່ອງ input ສີແດງ, ສີຂຽວ, ສີຟ້າ ແລະ alpha ສໍາລັບການອອກສີແດງ
ຊ່ອງ. ຄ່າເລີ່ມຕົ້ນແມ່ນ 1 ສໍາລັບ rr, ແລະ 0 ສຳ ລັບ rg, rb ແລະ ra.

gr
gg
gb
ga ປັບການປະກອບສ່ວນຂອງຊ່ອງປ້ອນຂໍ້ມູນສີແດງ, ສີຂຽວ, ສີຟ້າ ແລະ alpha ສໍາລັບສີຂຽວຜົນຜະລິດ
ຊ່ອງ. ຄ່າເລີ່ມຕົ້ນແມ່ນ 1 ສໍາລັບ gg, ແລະ 0 ສຳ ລັບ gr, gb ແລະ ga.

br
bg
bb
ba ປັບການປະກອບສ່ວນຂອງຊ່ອງ input ສີແດງ, ສີຂຽວ, ສີຟ້າ ແລະ alpha ສໍາລັບການອອກສີຟ້າ
ຊ່ອງ. ຄ່າເລີ່ມຕົ້ນແມ່ນ 1 ສໍາລັບ bb, ແລະ 0 ສຳ ລັບ br, bg ແລະ ba.

ar
ag
ab
aa ປັບການປະກອບສ່ວນຂອງຊ່ອງ input ສີແດງ, ສີຂຽວ, ສີຟ້າ ແລະ alpha ສໍາລັບຜົນຜະລິດ alpha
ຊ່ອງ. ຄ່າເລີ່ມຕົ້ນແມ່ນ 1 ສໍາລັບ aa, ແລະ 0 ສຳ ລັບ ar, ag ແລະ ab.

ໄລຍະທີ່ອະນຸຍາດສໍາລັບທາງເລືອກແມ່ນ "[-2.0, 2.0]".

ຕົວຢ່າງ

· ແປງ​ແຫຼ່ງ​ທີ່​ເປັນ​ສີ​ຂີ້​ເຖົ່າ​:

colorchannelmixer=.3:.4:.3:0:.3:.4:.3:0:.3:.4:.3

·ຈໍາລອງສຽງ sepia:

colorchannelmixer=.393:.769:.189:0:.349:.686:.168:0:.272:.534:.131

colormatrix
ແປງເມຕຣິກສີ.

ຕົວກອງຍອມຮັບຕົວເລືອກຕໍ່ໄປນີ້:

src
ລະບຸມາຕຣິກເບື້ອງສີທີ່ມາ ແລະປາຍທາງ. ຕ້ອງລະບຸຄ່າທັງສອງ.

ຄ່າທີ່ຍອມຮັບແມ່ນ:

bt709
ບາດ 709

bt601
ບາດ 601

smte 240m
SMPTE-240M

FCC FCC

ຕົວຢ່າງເພື່ອປ່ຽນຈາກ BT.601 ເປັນ SMPTE-240M, ໃຊ້ຄໍາສັ່ງ:

colormatrix=bt601:smpte240m

ຄັດລອກ
ຄັດລອກແຫຼ່ງປ້ອນຂໍ້ມູນທີ່ບໍ່ປ່ຽນແປງໄປຫາຜົນໄດ້ຮັບ. ນີ້ສ່ວນໃຫຍ່ແມ່ນເປັນປະໂຫຍດສໍາລັບຈຸດປະສົງການທົດສອບ.

ການປູກພືດ
ຕັດວິດີໂອການປ້ອນຂໍ້ມູນໃສ່ຂະໜາດທີ່ກຳນົດ.

ມັນຍອມຮັບຕົວກໍານົດການດັ່ງຕໍ່ໄປນີ້:

w, out_w
ຄວາມກວ້າງຂອງວິດີໂອຜົນຜະລິດ. ມັນເລີ່ມຕົ້ນເປັນ "iw". ການສະແດງອອກນີ້ຖືກປະເມີນເທົ່ານັ້ນ
ຫນຶ່ງຄັ້ງໃນລະຫວ່າງການກໍາຫນົດຄ່າການກັ່ນຕອງ, ຫຼືໃນເວລາທີ່ w or out_w ຄໍາສັ່ງຖືກສົ່ງ.

h, out_h
ຄວາມສູງຂອງວິດີໂອຜົນຜະລິດໄດ້. ມັນເລີ່ມຕົ້ນເປັນ "ih". ການສະແດງອອກນີ້ຖືກປະເມີນ
ພຽງແຕ່ຄັ້ງດຽວໃນລະຫວ່າງການກໍາຫນົດຄ່າການກັ່ນຕອງ, ຫຼືໃນເວລາທີ່ h or out_h ຄໍາສັ່ງຖືກສົ່ງ.

x ຕໍາແຫນ່ງແນວນອນ, ໃນວິດີໂອປ້ອນຂໍ້ມູນ, ຂອງຂອບຊ້າຍຂອງວິດີໂອຜົນຜະລິດໄດ້. ມັນ
ເລີ່ມຕົ້ນເປັນ "(in_w-out_w)/2". ການສະແດງອອກນີ້ຖືກປະເມີນຕໍ່ກອບ.

y ຕໍາແຫນ່ງຕັ້ງ, ໃນວິດີໂອປ້ອນ, ຂອງຂອບເທິງຂອງວິດີໂອຜົນຜະລິດໄດ້. ມັນ
ເລີ່ມຕົ້ນເປັນ "(in_h-out_h)/2". ການສະແດງອອກນີ້ຖືກປະເມີນຕໍ່ກອບ.

keep_aspect
ຖ້າຕັ້ງເປັນ 1 ຈະບັງຄັບໃຫ້ອັດຕາສ່ວນການສະແດງຜົນອອກມາເປັນອັນດຽວກັນຂອງວັດສະດຸປ້ອນ, ໂດຍ
ການປ່ຽນແປງອັດຕາສ່ວນຕົວຢ່າງຜົນຜະລິດ. ມັນຕັ້ງໄວ້ເປັນ 0.

ໄດ້ out_w, out_h, x, y ພາລາມິເຕີແມ່ນການສະແດງອອກທີ່ມີຄ່າຄົງທີ່ຕໍ່ໄປນີ້:

x
y ຄ່າ​ທີ່​ຄິດ​ໄລ່​ສໍາ​ລັບ​ການ​ x ແລະ y. ພວກເຂົາເຈົ້າໄດ້ຖືກປະເມີນສໍາລັບແຕ່ລະກອບໃຫມ່.

in_w
in_h
ຄວາມກວ້າງແລະຄວາມສູງຂອງວັດສະດຸປ້ອນ.

iw
ih ເຫຼົ່ານີ້ແມ່ນຄືກັນກັບ in_w ແລະ in_h.

out_w
out_h
ຜົນຜະລິດ (ຕັດ) ຄວາມກວ້າງແລະຄວາມສູງ.

ow
oh ເຫຼົ່ານີ້ແມ່ນຄືກັນກັບ out_w ແລະ out_h.

a ຄື​ກັນ​ກັບ iw / ih

sar ອັດຕາສ່ວນຕົວຢ່າງການປ້ອນຂໍ້ມູນ

dar ອັດ​ຕາ​ສ່ວນ​ການ​ສະ​ແດງ​ຜົນ​ການ​ປ້ອນ​ຂໍ້​ມູນ​, ມັນ​ຄື​ກັນ​ກັບ (iw / ih) * sar

hsub
vsub
ຄ່າຍ່ອຍ chroma ແນວນອນ ແລະແນວຕັ້ງ. ຕົວຢ່າງສໍາລັບຮູບແບບ pixels ລວງ
"yuv422p" hsub ແມ່ນ 2 ແລະ vsub ແມ່ນ 1.

n ຈໍານວນຂອງກອບການປ້ອນຂໍ້ມູນ, ເລີ່ມຈາກ 0.

pos ຕຳແໜ່ງໃນໄຟລ໌ຂອງກອບການປ້ອນຂໍ້ມູນ, NAN ຖ້າບໍ່ຮູ້

t ເວລາສະແດງອອກເປັນວິນາທີ. ມັນເປັນ NAN ຖ້າເວລາປ້ອນຂໍ້ມູນບໍ່ຮູ້ຈັກ.

ການສະແດງອອກສໍາລັບ out_w ອາດຈະຂຶ້ນກັບມູນຄ່າຂອງ out_h, ແລະສໍານວນສໍາລັບ out_h
ອາດຈະຂຶ້ນກັບ out_w, ແຕ່ພວກເຂົາບໍ່ສາມາດຂຶ້ນກັບ x ແລະ y, as x ແລະ y ຖືກປະເມີນພາຍຫຼັງ
out_w ແລະ out_h.

ໄດ້ x ແລະ y ຕົວກໍານົດການລະບຸການສະແດງອອກສໍາລັບຕໍາແຫນ່ງຂອງແຈເທິງຊ້າຍຂອງ
ພື້ນທີ່ຜົນຜະລິດ (ບໍ່ຖືກຕັດ). ພວກເຂົາເຈົ້າໄດ້ຖືກປະເມີນສໍາລັບແຕ່ລະກອບ. ຖ້າ​ຫາກ​ວ່າ​ມູນ​ຄ່າ​ການ​ປະ​ເມີນ​ຜົນ​
ບໍ່ຖືກຕ້ອງ, ມັນແມ່ນປະມານຄ່າທີ່ຖືກຕ້ອງທີ່ໃກ້ທີ່ສຸດ.

ການສະແດງອອກສໍາລັບ x ອາດຈະຂຶ້ນກັບ y, ແລະສໍານວນສໍາລັບ y ອາດຈະຂຶ້ນກັບ x.

ຕົວຢ່າງ

· ເນື້ອທີ່ປູກພືດມີຂະໜາດ 100x100 ຢູ່ຕຳແໜ່ງ (12,34).

crop=100:100:12:34

ການນໍາໃຊ້ທາງເລືອກທີ່ມີຊື່, ຕົວຢ່າງຂ້າງເທິງຈະກາຍເປັນ:

crop=w=100:h=100:x=12:y=34

· ຕັດພື້ນທີ່ປ້ອນຂໍ້ມູນສູນກາງດ້ວຍຂະໜາດ 100x100:

crop=100:100

· ຕັດພື້ນທີ່ປ້ອນຂໍ້ມູນກາງດ້ວຍຂະໜາດ 2/3 ຂອງວິດີໂອປ້ອນຂໍ້ມູນ:

crop=2/3*in_w:2/3*in_h

· ການ​ປູກ​ພືດ​ວິ​ດີ​ໂອ​ການ​ປ້ອນ​ຂໍ້​ມູນ​ສີ່​ຫຼ່ຽມ​ມົນ​ກາງ​:

crop=out_w=in_h
crop=in_h

· ຈຳກັດຮູບສີ່ຫຼ່ຽມມົນດ້ວຍມຸມຊ້າຍເທິງທີ່ວາງໄວ້ຢູ່ຕຳແໜ່ງ 100:100 ແລະ
ມຸມຂວາລຸ່ມກົງກັບມຸມຂວາລຸ່ມຂອງຮູບທີ່ປ້ອນເຂົ້າ.

crop=in_w-100:in_h-100:100:100

· ຕັດ 10 pixels ຈາກຂອບຊ້າຍແລະຂວາ, ແລະ 20 pixels ຈາກເທິງແລະລຸ່ມ
ຊາຍແດນ

crop=in_w-2*10:in_h-2*20

· ຮັກສາພຽງແຕ່ສ່ວນລຸ່ມຂວາຂອງຮູບທີ່ປ້ອນເຂົ້າ:

crop=in_w/2:in_h/2:in_w/2:in_h/2

· ຄວາມສູງຂອງການປູກພືດເພື່ອໃຫ້ໄດ້ຄວາມກົມກຽວກເຣັກ:

crop=in_w:1/PHI*in_w

· ນຳໃຊ້ຜົນກະທົບການສັ່ນສະເທືອນ:

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)

· ນຳໃຊ້ຜົນກະທົບກ້ອງຖ່າຍຮູບທີ່ຜິດພາດຂຶ້ນກັບເວລາ:

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)"

· ກຳນົດ x ຂຶ້ນກັບຄ່າຂອງ y:

crop=in_w/2:in_h/2:y:10+10*sin(n/10)

ຄໍາສັ່ງ

ການກັ່ນຕອງນີ້ສະຫນັບສະຫນູນຄໍາສັ່ງຕໍ່ໄປນີ້:

w, out_w
h, out_h
x
y ກໍານົດຄວາມກວ້າງ/ຄວາມສູງຂອງວິດີໂອຜົນຜະລິດ ແລະຕໍາແໜ່ງແນວນອນ/ແນວຕັ້ງໃນການປ້ອນຂໍ້ມູນ
ວິດີໂອ. ຄໍາສັ່ງຍອມຮັບ syntax ດຽວກັນຂອງທາງເລືອກທີ່ສອດຄ້ອງກັນ.

ຖ້າການສະແດງອອກທີ່ລະບຸບໍ່ຖືກຕ້ອງ, ມັນຖືກເກັບໄວ້ໃນມູນຄ່າປະຈຸບັນຂອງມັນ.

ກວດ​ຫາ​ການ​ປູກ​ພືດ​
ກວດຫາຂະໜາດການປູກພືດໂດຍອັດຕະໂນມັດ.

ມັນຄິດໄລ່ຕົວກໍານົດການການປູກພືດທີ່ຈໍາເປັນແລະພິມຕົວກໍານົດການແນະນໍາໂດຍຜ່ານ
ລະບົບບັນທຶກ. ຂະຫນາດທີ່ກວດພົບແມ່ນກົງກັບພື້ນທີ່ທີ່ບໍ່ແມ່ນສີດໍາຂອງວັດສະດຸປ້ອນ
ວິດີໂອ.

ມັນຍອມຮັບຕົວກໍານົດການດັ່ງຕໍ່ໄປນີ້:

ກໍານົດຂອບເຂດ
ກໍານົດຂອບເຂດມູນຄ່າສີດໍາທີ່ສູງຂຶ້ນ, ເຊິ່ງສາມາດຖືກກໍານົດເປັນທາງເລືອກຈາກບໍ່ມີຫຍັງ (0)
ກັບທຸກສິ່ງທຸກຢ່າງ (255 ສໍາລັບຮູບແບບທີ່ອີງໃສ່ 8bit). ຄ່າຄວາມເຂັ້ມງວດໃຫຍ່ກວ່າຕໍ່ກັບຊຸດ
ຄ່າຖືວ່າບໍ່ແມ່ນສີດຳ. ມັນຄ່າເລີ່ມຕົ້ນເປັນ 24. ທ່ານຍັງສາມາດລະບຸຄ່າໄດ້
ລະ​ຫວ່າງ 0.0 ແລະ 1.0 ທີ່​ຈະ​ໄດ້​ຮັບ​ການ​ຂະ​ຫຍາຍ​ຂຶ້ນ​ກັບ bitdepth ຂອງ pixels ລວງ​ໄດ້​
ຮູບແບບ.

ໄດ້ຕະຫຼອດ
ຄ່າທີ່ຄວາມກວ້າງ/ລວງສູງຄວນແບ່ງອອກດ້ວຍ. ມັນເລີ່ມຕົ້ນເປັນ 16. ການຊົດເຊີຍ
ຈະຖືກປັບອັດຕະໂນມັດໃຫ້ຢູ່ກາງວິດີໂອ. ໃຊ້ 2 ເພື່ອໃຫ້ໄດ້ຮັບຂະຫນາດຄູ່ເທົ່ານັ້ນ
(ຕ້ອງການສໍາລັບວິດີໂອ 4:2:2). 16 ແມ່ນດີທີ່ສຸດເມື່ອເຂົ້າລະຫັດໄປຫາຕົວແປງສັນຍານວິດີໂອສ່ວນໃຫຍ່.

reset_count, reset
ຕັ້ງຄ່າຕົວນັບທີ່ກໍານົດຫຼັງຈາກຈໍານວນເຟຣມ Cropdetect ຈະປັບຄ່າ
ກ່ອນຫນ້ານີ້ໄດ້ກວດພົບພື້ນທີ່ວິດີໂອທີ່ໃຫຍ່ທີ່ສຸດແລະເລີ່ມຕົ້ນໃຫມ່ເພື່ອກວດພົບທີ່ດີທີ່ສຸດໃນປະຈຸບັນ
ເນື້ອທີ່ປູກພືດ. ຄ່າເລີ່ມຕົ້ນແມ່ນ 0.

ນີ້ສາມາດເປັນປະໂຫຍດເມື່ອໂລໂກ້ຊ່ອງບິດເບືອນພື້ນທີ່ວິດີໂອ. 0 ຊີ້ໃຫ້ເຫັນ 'ບໍ່ເຄີຍ
ຣີເຊັດ', ແລະສົ່ງຄືນພື້ນທີ່ທີ່ໃຫຍ່ທີ່ສຸດທີ່ພົບໃນລະຫວ່າງການຫຼິ້ນ.

curves
ນຳໃຊ້ການປັບສີໂດຍໃຊ້ເສັ້ນໂຄ້ງ.

ການກັ່ນຕອງນີ້ແມ່ນຄ້າຍຄືກັບ Adobe Photoshop ແລະ GIMP curves tools. ແຕ່ລະອົງປະກອບ (ສີແດງ,
ສີຂຽວແລະສີຟ້າ) ມີມູນຄ່າຂອງມັນຖືກກໍານົດໂດຍ N ຈຸດສໍາຄັນ tied ຈາກກັນແລະກັນໂດຍໃຊ້ກ້ຽງ
ເສັ້ນໂຄ້ງ. ແກນ x ເປັນຕົວແທນຂອງຄ່າ pixels ລວງຈາກກອບການປ້ອນຂໍ້ມູນ, ແລະແກນ y ເປັນອັນໃຫມ່
ຄ່າ pixels ລວງທີ່ຈະຖືກກໍານົດສໍາລັບກອບຜົນຜະລິດ.

ໂດຍຄ່າເລີ່ມຕົ້ນ, ເສັ້ນໂຄ້ງອົງປະກອບແມ່ນຖືກກໍານົດໂດຍສອງຈຸດ (0;0) ແລະ (1;1). ນີ້ສ້າງເປັນ
ເສັ້ນຊື່ທີ່ແຕ່ລະຄ່າຂອງ pixels ລວງຕົ້ນສະບັບແມ່ນ "ປັບ" ກັບມູນຄ່າຂອງຕົນເອງ, ຊຶ່ງຫມາຍຄວາມວ່າ
ບໍ່ມີການປ່ຽນແປງຮູບພາບ.

ການກັ່ນຕອງຊ່ວຍໃຫ້ທ່ານສາມາດກໍານົດສອງຈຸດນີ້ຄືນໃຫມ່ແລະເພີ່ມບາງສ່ວນຕື່ມອີກ. ເສັ້ນໂຄ້ງໃໝ່ (ໃຊ້ a
interpolation cubic spline ທໍາມະຊາດ) ຈະຖືກກໍານົດເພື່ອຜ່ານຢ່າງລຽບງ່າຍໂດຍຜ່ານການໃຫມ່ທັງຫມົດເຫຼົ່ານີ້
ພິກັດ. ຈຸດທີ່ກໍານົດໄວ້ໃຫມ່ຕ້ອງໄດ້ຮັບການເພີ່ມຂຶ້ນຢ່າງເຂັ້ມງວດໃນໄລຍະແກນ x, ແລະ
ຂອງເຂົາເຈົ້າ x ແລະ y ຄ່າຈະຕ້ອງຢູ່ໃນ [0;1] ໄລຍະຫ່າງ. ຖ້າເສັ້ນໂຄ້ງທີ່ຄິດໄລ່ໄດ້ເກີດຂຶ້ນ
ຢູ່ນອກຊ່ອງ vector, ຄ່າຈະຖືກຕັດຕາມຄວາມເຫມາະສົມ.

ຖ້າບໍ່ມີຈຸດສໍາຄັນທີ່ກໍານົດໄວ້ໃນ "x=0", ຕົວກອງຈະໃສ່ a ໂດຍອັດຕະໂນມັດ (0;0)
ຈຸດ. ໃນທາງດຽວກັນ, ຖ້າບໍ່ມີຈຸດສໍາຄັນທີ່ກໍານົດໄວ້ໃນ "x=1", ການກັ່ນຕອງຈະ
ໃສ່ a (1;1) ຈຸດ

ຕົວກອງຍອມຮັບຕົວເລືອກຕໍ່ໄປນີ້:

ຕັ້ງໄວ້ລ່ວງ ໜ້າ
ເລືອກຫນຶ່ງຂອງ presets ສີທີ່ມີຢູ່. ທາງ​ເລືອກ​ນີ້​ສາ​ມາດ​ຖືກ​ນໍາ​ໃຊ້​ນອກ​ຈາກ​ນັ້ນ​
r, g, b ຕົວກໍານົດການ; ໃນ​ກໍ​ລະ​ນີ​ນີ້​, ທາງ​ເລືອກ​ໃນ​ການ​ຕໍ່​ມາ​ຈະ​ມີ​ຄວາມ​ສໍາ​ຄັນ​ໃນ​ການ preset ໄດ້​
ຄຸນຄ່າ. presets ທີ່​ມີ​ຢູ່​ແມ່ນ​:

none
color_negative
ຂະບວນການຂ້າມ
darker
ເພີ່ມຄວາມຄົມຊັດ
ເບົາກວ່າ
linear_contrast
medium_contrast
ກະທົບທາງລົບ
strong_contrast
vintage

ຄ່າເລີ່ມຕົ້ນແມ່ນ "ບໍ່ມີ".

master, m
ກໍານົດຈຸດສໍາຄັນຕົ້ນຕໍ. ຈຸດເຫຼົ່ານີ້ຈະກໍານົດແຜນທີ່ຜ່ານທີສອງ. ມັນ​ແມ່ນ
ບາງຄັ້ງເອີ້ນວ່າແຜນທີ່ "luminance" ຫຼື "ມູນຄ່າ". ມັນສາມາດໃຊ້ກັບ r, g, b or ທັງຫມົດ
ເນື່ອງຈາກວ່າມັນເຮັດຫນ້າທີ່ຄ້າຍຄື LUT ຫລັງການປຸງແຕ່ງ.

ສີແດງ, r
ກໍານົດຈຸດສໍາຄັນສໍາລັບອົງປະກອບສີແດງ.

ສີຂຽວ, g
ກໍານົດຈຸດສໍາຄັນສໍາລັບອົງປະກອບສີຂຽວ.

ສີຟ້າ, b
ກໍານົດຈຸດສໍາຄັນສໍາລັບອົງປະກອບສີຟ້າ.

ທັງຫມົດ ກໍານົດຈຸດສໍາຄັນສໍາລັບອົງປະກອບທັງຫມົດ (ບໍ່ລວມເອົາຕົ້ນສະບັບ). ສາມາດນໍາໃຊ້ນອກຈາກນັ້ນ
ກັບຕົວເລືອກອົງປະກອບຈຸດສໍາຄັນອື່ນໆ. ໃນກໍລະນີນີ້, ອົງປະກອບທີ່ບໍ່ໄດ້ຕັ້ງຈະ
ຜົນຕອບແທນກ່ຽວກັບເລື່ອງນີ້ ທັງຫມົດ ຕັ້ງ.

psfile
ລະບຸໄຟລ໌ Photoshop curves (.asv") ເພື່ອນໍາເຂົ້າການຕັ້ງຄ່າຈາກ.

ເພື່ອຫຼີກເວັ້ນການຂັດກັນບາງ syntax filtergraph, ແຕ່ລະລາຍການຈຸດສໍາຄັນຈໍາເປັນຕ້ອງຖືກກໍານົດໂດຍໃຊ້
syntax ຕໍ່ໄປນີ້: "x0/y0 x1/y1 x2/y2 ... ".

ຕົວຢ່າງ

· ເພີ່ມ​ລະ​ດັບ​ກາງ​ຂອງ​ສີ​ຟ້າ​ເລັກ​ນ້ອຍ​:

curves=blue='0.5/0.58'

· ຜົນ​ກະ​ທົບ Vintage​:

curves=r='0/0.11 .42/.51 1/0.95':g='0.50/0.48':b='0/0.22 .49/.44 1/0.8'

ໃນທີ່ນີ້ພວກເຮົາໄດ້ຮັບຈຸດປະສານງານຕໍ່ໄປນີ້ສໍາລັບແຕ່ລະອົງປະກອບ:

ສີແດງ "(0;0.11) (0.42;0.51) (1;0.95)"

ສີຂຽວ
"(0;0) (0.50;0.48) (1;1)"

ສີຟ້າ
"(0;0.22) (0.49;0.44) (1;0.80)"

·ຕົວຢ່າງທີ່ຜ່ານມາຍັງສາມາດບັນລຸໄດ້ກັບ preset ໃນຕົວທີ່ກ່ຽວຂ້ອງ:

curves=preset=vintage

· ຫຼື​ງ່າຍ​ດາຍ​:

curves=vintage

·ໃຊ້ Photoshop preset ແລະ redefine ຈຸດຂອງອົງປະກອບສີຂຽວ:

curves=psfile='MyCurvesPresets/purple.asv':green='0.45/0.53'

dctdnoiz
Denoise frames ໂດຍໃຊ້ 2D DCT (ການກັ່ນຕອງໂດເມນຄວາມຖີ່).

ຕົວກອງນີ້ບໍ່ໄດ້ຖືກອອກແບບມາສໍາລັບເວລາຈິງ.

ຕົວກອງຍອມຮັບຕົວເລືອກຕໍ່ໄປນີ້:

ຊິກມາ, s
ກໍານົດສຽງລົບກວນ sigma ຄົງທີ່.

ນີ້ sigma ກໍານົດຂອບເຂດຍາກຂອງ "3 * sigma"; ທຸກໆຄ່າສໍາປະສິດ DCT (ຢ່າງແທ້ຈິງ
ຄ່າ) ຕໍ່າກວ່າເກນນີ້, ຈະຖືກຫຼຸດລົງ.

ຖ້າທ່ານຕ້ອງການການກັ່ນຕອງແບບພິເສດ, ເບິ່ງ ຕົວຢ່າງ.

ຄ່າເລີ່ມຕົ້ນແມ່ນ 0.

ກັນຂ້າມ
ກໍານົດຈໍານວນ pixels ທັບຊ້ອນສໍາລັບແຕ່ລະຕັນ. ເນື່ອງຈາກການກັ່ນຕອງສາມາດຊ້າ, ທ່ານອາດຈະ
ຕ້ອງການທີ່ຈະຫຼຸດຜ່ອນມູນຄ່ານີ້, ໃນຄ່າໃຊ້ຈ່າຍຂອງການກັ່ນຕອງປະສິດທິພາບຫນ້ອຍແລະຄວາມສ່ຽງຂອງ
ປອມ​ຕ່າງໆ.

ຖ້າຄ່າທັບຊ້ອນກັນບໍ່ອະນຸຍາດໃຫ້ປະມວນຜົນຄວາມກວ້າງ ຫຼື ຄວາມສູງທັງໝົດ, a
ການເຕືອນໄພຈະຖືກສະແດງແລະຕາມຊາຍແດນຈະບໍ່ຖືກປະຕິເສດ.

ຄ່າເລີ່ມຕົ້ນແມ່ນ ຂະໜາດ-1, ຊຶ່ງເປັນການຕັ້ງຄ່າທີ່ດີທີ່ສຸດທີ່ເປັນໄປໄດ້.

expr, e
ກຳນົດຄ່າສຳປະສິດການສະແດງອອກ.

ສໍາລັບແຕ່ລະຕົວຄູນຂອງຕັນ DCT, ການສະແດງອອກນີ້ຈະຖືກປະເມີນເປັນຕົວຄູນ
ຄ່າສໍາປະສິດ.

ຖ້າ​ຫາກ​ວ່າ​ນີ້​ແມ່ນ​ທາງ​ເລືອກ​ທີ່​ຖືກ​ກໍາ​ນົດ​, ໄດ້​ sigma ທາງເລືອກຈະຖືກລະເລີຍ.

ຄ່າຢ່າງແທ້ຈິງຂອງຄ່າສໍາປະສິດສາມາດເຂົ້າເຖິງໄດ້ໂດຍຜ່ານ c ຕົວແປ.

n ຕັ້ງຄ່າ ຂະໜາດ ການ​ນໍາ​ໃຊ້​ຈໍາ​ນວນ​ຂອງ bits​. "1<n" ກໍານົດ ຂະໜາດ, ເຊິ່ງແມ່ນ
ຄວາມກວ້າງແລະຄວາມສູງຂອງທ່ອນໄມ້ທີ່ປຸງແຕ່ງ.

ຄ່າເລີ່ມຕົ້ນແມ່ນ 3 (8x8) ແລະສາມາດຍົກຂຶ້ນມາເປັນ 4 ສໍາ​ລັບ ຂະໜາດ ຂະໜາດ 16x16. ຫມາຍ​ເຫດ​
ວ່າການປ່ຽນແປງການຕັ້ງຄ່ານີ້ມີຜົນສະທ້ອນອັນໃຫຍ່ຫຼວງຕໍ່ການປະມວນຜົນຄວາມໄວ. ນອກຈາກນີ້, ກ
ຂະ​ຫນາດ​ຂອງ​ຕັນ​ຂະ​ຫນາດ​ໃຫຍ່​ບໍ່​ຈໍາ​ເປັນ​ຕ້ອງ​ຫມາຍ​ຄວາມ​ວ່າ​ເປັນ de-noising ທີ່​ດີກ​ວ່າ​.

ຕົວຢ່າງ

ສະຫມັກຂໍເອົາ denoise ກັບ a sigma ຂອງ 4.5:

dctdnoiz=4.5

ການດໍາເນີນງານດຽວກັນສາມາດເຮັດໄດ້ໂດຍໃຊ້ລະບົບການສະແດງອອກ:

dctdnoiz=e='gte(c, 4.5*3)'

ການປະຕິເສດທີ່ຮຸນແຮງໂດຍໃຊ້ຂະໜາດບລັອກຂອງ "16x16":

dctdnoiz=15:n=4

ປົດປ່ອຍ
ເອົາສິ່ງປະດິດຂອງວົງດົນຕີອອກຈາກວິດີໂອທີ່ປ້ອນເຂົ້າ. ມັນເຮັດວຽກໂດຍການປ່ຽນແຖບ pixels ກັບ
ຄ່າສະເລ່ຍຂອງ pixels ອ້າງອີງ.

ຕົວກອງຍອມຮັບຕົວເລືອກຕໍ່ໄປນີ້:

1 ທ
2 ທ
3 ທ
4 ທ
ກໍານົດຂອບເຂດການກວດສອບແຖບສໍາລັບແຕ່ລະຍົນ. ຄ່າເລີ່ມຕົ້ນແມ່ນ 0.02. ໄລຍະທີ່ຖືກຕ້ອງແມ່ນ
0.00003 ຫາ 0.5. ຖ້າຄວາມແຕກຕ່າງລະຫວ່າງ pixel ໃນປັດຈຸບັນແລະ pixel ອ້າງອີງແມ່ນຫນ້ອຍກວ່າ
ຂອບເຂດ, ມັນຈະຖືກພິຈາລະນາເປັນ banded.

ຊ່ວງ, r
ໄລຍະການກວດສອບແຖບເປັນ pixels. ຄ່າເລີ່ມຕົ້ນແມ່ນ 16. ຖ້າເປັນບວກ, ຕົວເລກສຸ່ມຢູ່ໃນຂອບເຂດ
0 ເພື່ອກໍານົດຄ່າຈະຖືກນໍາໃຊ້. ຖ້າເປັນລົບ, ຄ່າຢ່າງແທ້ຈິງທີ່ແນ່ນອນຈະຖືກນໍາໃຊ້. ໄດ້
range ກຳນົດສີ່ຫຼ່ຽມ pixels ປະມານ pixels ປະຈຸບັນ.

ທິດທາງ, d
ກຳນົດທິດທາງເປັນເຣດຽນຈາກທີ່ສີ່ pixels ຈະຖືກປຽບທຽບ. ຖ້າເປັນບວກ, ສຸ່ມ
ທິດທາງຈາກ 0 ໄປຫາທິດທາງທີ່ກໍານົດໄວ້ຈະຖືກເລືອກ. ຖ້າເປັນລົບ, ແນ່ນອນຂອງມູນຄ່າຢ່າງແທ້ຈິງ
ຈະຖືກເລືອກ. ຕົວຢ່າງທິດທາງ 0, -PI ຫຼື -2*PI ເຣດຽນຈະເລືອກພຽງແຕ່ pixels ສຸດ
ແຖວດຽວກັນ ແລະ -PI/2 ຈະເລືອກພຽງແຕ່ pixels ໃນຖັນດຽວກັນ.

ເຮັດໃຫ້ມົວ
ຖ້າເປີດໃຊ້, pixels ປະຈຸບັນຈະຖືກປຽບທຽບກັບຄ່າສະເລ່ຍຂອງສີ່ສິ່ງອ້ອມຂ້າງ
ພິກເຊລ. ຄ່າເລີ່ມຕົ້ນຖືກເປີດໃຊ້. ຖ້າ pixels ປະຈຸບັນປິດການໃຊ້ງານແມ່ນປຽບທຽບກັບທັງສີ່
pixels ອ້ອມຂ້າງ. pixels ລວງໄດ້ຖືກພິຈາລະນາ banded ຖ້າຫາກວ່າພຽງແຕ່ທັງຫມົດສີ່ຄວາມແຕກຕ່າງກັບ
pixels ອ້ອມຂ້າງແມ່ນຫນ້ອຍກວ່າເກນ.

ນິຍົມ
ວາງເຟຣມທີ່ຊ້ຳກັນໃນໄລຍະປົກກະຕິ.

ຕົວກອງຍອມຮັບຕົວເລືອກຕໍ່ໄປນີ້:

ວົງຈອນ
ກໍາ​ນົດ​ຈໍາ​ນວນ​ຂອງ​ເຟຣມ​ທີ່​ຈະ​ໄດ້​ຮັບ​ການ​ຫຼຸດ​ລົງ​. ການ​ຕັ້ງ​ຄ່າ​ນີ້​ເປັນ​ N ຫມາຍ​ຄວາມ​ວ່າ​ຫນຶ່ງ​
ກອບໃນທຸກໆຊຸດຂອງ N ເຟຣມຈະຖືກຫຼຸດລົງ. ຄ່າເລີ່ມຕົ້ນແມ່ນ 5.

dupthresh
ກໍານົດຂອບເຂດສໍາລັບການກວດພົບຊໍ້າກັນ. ຖ້າຄວາມແຕກຕ່າງ metric ສໍາລັບກອບແມ່ນ
ໜ້ອຍກວ່າ ຫຼືເທົ່າກັບຄ່ານີ້, ຈາກນັ້ນມັນຖືກປະກາດວ່າຊໍ້າກັນ. ຄ່າເລີ່ມຕົ້ນແມ່ນ 1.1

ຂູດ
ກໍານົດຂອບເຂດການປ່ຽນແປງ scene. ຄ່າເລີ່ມຕົ້ນແມ່ນ 15.

blockx
ອຸດຕັນ
ກໍານົດຂະຫນາດຂອງແກນ x ແລະ y-axis ທີ່ໃຊ້ໃນລະຫວ່າງການຄິດໄລ່ metric. ໃຫຍ່ກວ່າ
ຕັນເຮັດໃຫ້ການສະກັດກັ້ນສິ່ງລົບກວນທີ່ດີກວ່າ, ແຕ່ຍັງໃຫ້ການກວດສອບຂະຫນາດນ້ອຍກວ່າ
ການເຄື່ອນໄຫວ. ຕ້ອງເປັນພະລັງງານຂອງສອງ. ຄ່າເລີ່ມຕົ້ນແມ່ນ 32.

ppsrc
ໝາຍການປ້ອນຂໍ້ມູນຫຼັກເປັນການປ້ອນຂໍ້ມູນກ່ອນການປະມວນຜົນ ແລະເປີດໃຊ້ການປ້ອນຂໍ້ມູນແຫຼ່ງທີ່ມາທີ່ສະອາດ. ນີ້
ອະນຸຍາດໃຫ້ປ້ອນຂໍ້ມູນກ່ອນການປະມວນຜົນດ້ວຍຕົວກອງຕ່າງໆເພື່ອຊ່ວຍວັດແທກ
ການຄິດໄລ່ໃນຂະນະທີ່ຮັກສາການເລືອກເຟຣມບໍ່ສູນເສຍ. ເມື່ອຕັ້ງເປັນ 1, ທໍາອິດ
ກະແສແມ່ນສໍາລັບການປ້ອນຂໍ້ມູນກ່ອນການປຸງແຕ່ງ, ແລະກະແສທີສອງແມ່ນແຫຼ່ງທີ່ສະອາດຈາກ
ບ່ອນທີ່ກອບເກັບຮັກສາຖືກເລືອກ. ຄ່າເລີ່ມຕົ້ນແມ່ນ 0.

ໂຄລາ
ກໍານົດວ່າຈະພິຈາລະນາ chroma ຫຼືບໍ່ໃນການຄິດໄລ່ metric. ຄ່າເລີ່ມຕົ້ນແມ່ນ 1.

ເຮັດໃຫ້ຂາດ
ໃຊ້ຜົນກະທົບ deflate ກັບວິດີໂອ.

ການກັ່ນຕອງນີ້ແທນ pixels ລວງໂດຍ ທ້ອງຖິ່ນ(3x3) ໂດຍສະເລ່ຍໂດຍຄໍານຶງເຖິງພຽງແຕ່
ຄ່າຕ່ໍາກວ່າ pixels ລວງ.

ມັນຍອມຮັບທາງເລືອກຕໍ່ໄປນີ້:

ຂອບເຂດ 0
ຂອບເຂດ 1
ຂອບເຂດ 2
ຂອບເຂດ 3
ຈໍາກັດການປ່ຽນແປງສູງສຸດສໍາລັບແຕ່ລະຍົນ, ຄ່າເລີ່ມຕົ້ນແມ່ນ 65535. ຖ້າ 0, ຍົນຈະຍັງຄົງຢູ່
ບໍ່ປ່ຽນແປງ.

ຕົກໃຈ
ເອົາ judder ທີ່ຜະລິດໂດຍເນື້ອໃນ telecined interlaced ບາງສ່ວນ.

Judder ສາມາດຖືກນໍາສະເຫນີ, ສໍາລັບການຍົກຕົວຢ່າງ, ໂດຍ ດຶງ​ຂຶ້ນ ການກັ່ນຕອງ. ຖ້າແຫຼ່ງຕົ້ນສະບັບແມ່ນ
ເນື້ອໃນ telecined ບາງສ່ວນຫຼັງຈາກນັ້ນຜົນຜະລິດຂອງ "ດຶງ, dejudder" ຈະມີຕົວແປ.
ອັດຕາເຟຣມ. ອາດຈະມີການປ່ຽນແປງອັດຕາເຟມທີ່ບັນທຶກໄວ້ຂອງບັນຈຸ. ນອກ​ເໜືອ​ຈາກ​ການ​ປ່ຽນ​ແປງ​ນັ້ນ,
ຕົວກອງນີ້ຈະບໍ່ມີຜົນຕໍ່ວິດີໂອອັດຕາເຟມຄົງທີ່.

ທາງເລືອກທີ່ມີຢູ່ໃນຕົວກອງນີ້ແມ່ນ:

ວົງຈອນ
ລະບຸຄວາມຍາວຂອງປ່ອງຢ້ຽມທີ່ judder ເຮັດຊ້ໍາ.

ຍອມຮັບຈຳນວນເຕັມທີ່ໃຫຍ່ກວ່າ 1. ຄ່າທີ່ເປັນປະໂຫຍດແມ່ນ:

4 ຖ້າຕົ້ນສະບັບຖືກ telecined ຈາກ 24 ຫາ 30 fps (Film to NTSC).

5 ຖ້າຕົ້ນສະບັບຖືກ telecined ຈາກ 25 ຫາ 30 fps (PAL ກັບ NTSC).

20 ຖ້າປະສົມຂອງທັງສອງ.

ຄ່າເລີ່ມຕົ້ນແມ່ນ 4.

delogo
ສະກັດກັ້ນໂລໂກ້ຂອງສະຖານີໂທລະທັດໂດຍການລວມເອົາ pixels ອ້ອມຂ້າງແບບງ່າຍໆ. ພຽງແຕ່ຕັ້ງ a
ຮູບສີ່ຫລ່ຽມທີ່ກວມເອົາໂລໂກ້ແລະເບິ່ງມັນຫາຍໄປ (ແລະບາງຄັ້ງບາງສິ່ງບາງຢ່າງທີ່ຂີ້ຮ້າຍກວ່າ
ປາກົດ - ໄລຍະທາງຂອງທ່ານອາດຈະແຕກຕ່າງກັນ).

ມັນຍອມຮັບຕົວກໍານົດການດັ່ງຕໍ່ໄປນີ້:

x
y ລະບຸຈຸດປະສານງານມຸມຊ້າຍເທິງຂອງໂລໂກ້. ພວກເຂົາຕ້ອງໄດ້ຮັບການລະບຸ.

w
h ລະບຸຄວາມກວ້າງແລະຄວາມສູງຂອງໂລໂກ້ເພື່ອແຈ້ງ. ພວກເຂົາຕ້ອງໄດ້ຮັບການລະບຸ.

ວົງດົນຕີ, t
ກໍານົດຄວາມຫນາຂອງຂອບ fuzzy ຂອງສີ່ຫລ່ຽມ (ເພີ່ມໃສ່ w ແລະ h) The
ຄ່າເລີ່ມຕົ້ນແມ່ນ 4.

ສະແດງໃຫ້ເຫັນ
ເມື່ອຕັ້ງເປັນ 1, ຮູບສີ່ຫຼ່ຽມສີຂຽວຈະຖືກແຕ້ມເທິງໜ້າຈໍເພື່ອເຮັດໃຫ້ການຊອກຫາທີ່ຖືກຕ້ອງງ່າຍຂຶ້ນ
x, y, w, ແລະ h ຕົວກໍານົດການ. ຄ່າເລີ່ມຕົ້ນແມ່ນ 0.

ຮູບສີ່ຫລ່ຽມຖືກແຕ້ມຢູ່ໃນ pixels ຊັ້ນນອກທີ່ສຸດເຊິ່ງຈະຖືກແທນທີ່ (ບາງສ່ວນ).
ຄ່າ interpolated. ຄ່າຂອງ pixels ຕໍ່ໄປທັນທີຢູ່ນອກສີ່ຫລ່ຽມນີ້
ໃນແຕ່ລະທິດທາງຈະຖືກນໍາໃຊ້ເພື່ອຄິດໄລ່ຄ່າ pixels ລວງພາຍໃນ
ຮູບສີ່ແຈສາກ.

ຕົວຢ່າງ

· ຕັ້ງຮູບສີ່ຫລ່ຽມທີ່ກວມເອົາພື້ນທີ່ທີ່ມີຈຸດປະສານງານມຸມຊ້າຍເທິງ 0,0 ແລະຂະຫນາດ
100x77, ແລະແຖບຂະຫນາດ 10:

delogo=x=0:y=0:w=100:h=77:band=10

ສັ່ນ
ພະຍາຍາມແກ້ໄຂການປ່ຽນແປງເລັກນ້ອຍໃນການປ່ຽນແປງແນວນອນແລະ / ຫຼືແນວຕັ້ງ. ການກັ່ນຕອງນີ້ຊ່ວຍເອົາອອກ
ກ້ອງສັ່ນຈາກການຈັບກ້ອງດ້ວຍມື, ຕຳຂາຂາຕັ້ງ, ເຄື່ອນຍ້າຍໃນລົດ, ແລະອື່ນໆ.

ຕົວກອງຍອມຮັບຕົວເລືອກຕໍ່ໄປນີ້:

x
y
w
h ລະບຸພື້ນທີ່ສີ່ຫຼ່ຽມເພື່ອຈຳກັດການຊອກຫາ vectors ການເຄື່ອນໄຫວ. ຖ້າຕ້ອງການ
ການຊອກຫາ vectors ການເຄື່ອນໄຫວສາມາດຖືກຈໍາກັດຢູ່ໃນພື້ນທີ່ສີ່ຫລ່ຽມຂອງກອບ
ກໍາ​ນົດ​ໂດຍ​ແຈ​ເບື້ອງ​ຊ້າຍ​ດ້ານ​ເທິງ​ຂອງ​ຕົນ​, width ແລະ​ຄວາມ​ສູງ​. ຕົວກໍານົດການເຫຼົ່ານີ້ມີຄືກັນ
ຫມາຍຄວາມວ່າເປັນຕົວກອງ drawbox ທີ່ສາມາດຖືກນໍາໃຊ້ເພື່ອເບິ່ງເຫັນຕໍາແຫນ່ງຂອງ
ປ່ອງ​ຜູກ​ມັດ​.

ນີ້ເປັນປະໂຫຍດໃນເວລາທີ່ການເຄື່ອນໄຫວພ້ອມກັນຂອງຫົວຂໍ້ພາຍໃນກອບອາດຈະເປັນ
ສັບສົນສໍາລັບການເຄື່ອນໄຫວຂອງກ້ອງຖ່າຍຮູບໂດຍການຊອກຫາ vector motion.

ຖ້າມີ ຫຼືທັງໝົດ x, y, w ແລະ h ຖືກຕັ້ງເປັນ -1 ຫຼັງຈາກນັ້ນກອບເຕັມຖືກນໍາໃຊ້. ນີ້ອະນຸຍາດໃຫ້
ທາງ​ເລືອກ​ໃນ​ພາຍ​ຫຼັງ​ທີ່​ຈະ​ໄດ້​ຮັບ​ການ​ກໍາ​ນົດ​ໂດຍ​ບໍ່​ມີ​ການ​ລະ​ບຸ​ປ່ອງ​ຜູກ​ພັນ​ສໍາ​ລັບ​ vector motion​
ຄົ້ນຫາ

ຄ່າເລີ່ມຕົ້ນ - ຄົ້ນຫາກອບທັງຫມົດ.

rx
ry ລະບຸຂອບເຂດການເຄື່ອນໄຫວສູງສຸດໃນທິດທາງ x ແລະ y ໃນໄລຍະ 0-64 pixels.
ຄ່າເລີ່ມຕົ້ນ 16.

ແຂບ
ລະບຸວິທີການສ້າງ pixels ເພື່ອຕື່ມໃສ່ຊ່ອງຫວ່າງຢູ່ຂອບຂອງກອບ. ມີ
ຄຸນຄ່າແມ່ນ:

ຫວ່າງ, 0
ຕື່ມສູນຢູ່ບ່ອນຫວ່າງເປົ່າ

ຕົ້ນສະບັບ, 1
ຮູບຕົ້ນສະບັບຢູ່ບ່ອນຫວ່າງເປົ່າ

ຍຶດ, 2
ຄ່າຂອບ extruded ຢູ່ບ່ອນຫວ່າງເປົ່າ

ບ່ອນແລກປ່ຽນ, 3
ຂອບແວ່ນຢູ່ບ່ອນຫວ່າງເປົ່າ

ຄ່າເລີ່ມຕົ້ນແມ່ນ mirror.

ຂະໜາດ
ລະບຸຂະໜາດບລັອກເພື່ອໃຊ້ສຳລັບການຊອກຫາການເຄື່ອນໄຫວ. ຊ່ວງ 4-128 ພິກເຊວ, ຄ່າເລີ່ມຕົ້ນ 8.

ກົງກັນຂ້າມ
ກໍານົດຂອບເຂດຄວາມຄົມຊັດສໍາລັບຕັນ. ພຽງແຕ່ຕັນທີ່ມີຫຼາຍກ່ວາທີ່ກໍານົດໄວ້
contrast (ຄວາມແຕກຕ່າງລະຫວ່າງ pixels ມືດທີ່ສຸດແລະແສງສະຫວ່າງທີ່ສຸດ) ຈະຖືກພິຈາລະນາ. ຊ່ວງ
1-255, ຄ່າເລີ່ມຕົ້ນ 125.

ຄົ້ນຫາ
ລະບຸຍຸດທະສາດການຄົ້ນຫາ. ຄ່າທີ່ມີຢູ່ແມ່ນ:

ຄົບ​ຖ້ວນ​ສົມ​ບູນ​, 0
ກໍານົດການຄົ້ນຫາທີ່ຄົບຖ້ວນ

ໜ້ອຍ ກວ່າ, 1
ກໍານົດການຄົ້ນຫາທີ່ຄົບຖ້ວນຫນ້ອຍລົງ.

ຄ່າເລີ່ມຕົ້ນແມ່ນ ຢ່າງສິ້ນເຊີງ.

ຊື່​ເອ​ກະ​ສານ
ຖ້າຕັ້ງແລ້ວບັນທຶກລາຍລະອຽດຂອງການຄົ້ນຫາການເຄື່ອນໄຫວຈະຖືກຂຽນໃສ່ໄຟລ໌ທີ່ລະບຸ.

opencl
ຖ້າຕັ້ງເປັນ 1, ລະບຸໂດຍໃຊ້ຄວາມສາມາດ OpenCL, ມີພຽງແຕ່ຖ້າ FFmpeg ແມ່ນ
ຕັ້ງຄ່າດ້ວຍ "--enable-opencl". ຄ່າເລີ່ມຕົ້ນແມ່ນ 0.

detelecine
ນຳໃຊ້ການປີ້ນກົງກັນຂອງການປະຕິບັດການໂທລະທັດ. ມັນຮຽກຮ້ອງໃຫ້ມີຮູບແບບທີ່ກໍານົດໄວ້ກ່ອນ
ລະບຸໄວ້ໂດຍໃຊ້ຕົວເລືອກຮູບແບບທີ່ຕ້ອງຄືກັນກັບທີ່ຜ່ານໄປຫາ telecine
ຕົວກອງ

ຕົວກອງນີ້ຍອມຮັບຕົວເລືອກຕໍ່ໄປນີ້:

first_field
ເທິງ, t
ພາກສະຫນາມເທິງທໍາອິດ

ທາງລຸ່ມ, b
ພາກສະຫນາມລຸ່ມທໍາອິດ ຄ່າເລີ່ມຕົ້ນແມ່ນ "ເທິງ".

ຮູບແບບ
ສະຕຣິງຂອງຕົວເລກທີ່ເປັນຕົວແທນຂອງຮູບແບບການດຶງລົງທີ່ທ່ານຕ້ອງການນໍາໃຊ້. ຄ່າເລີ່ມຕົ້ນ
ຄ່າແມ່ນ 23.

start_frame
ຕົວເລກທີ່ເປັນຕົວແທນຂອງກອບທໍາອິດກ່ຽວກັບ telecine ໄດ້
ຮູບແບບ. ນີ້ຈະຖືກນໍາໃຊ້ຖ້າສາຍນ້ໍາຖືກຕັດ. ຄ່າເລີ່ມຕົ້ນແມ່ນ 0.

ການຂະຫຍາຍ
ນຳໃຊ້ຜົນກະທົບການຂະຫຍາຍໃສ່ວິດີໂອ.

ການກັ່ນຕອງນີ້ແທນ pixels ລວງໂດຍ ທ້ອງຖິ່ນ(3x3) ສູງສຸດ.

ມັນຍອມຮັບທາງເລືອກຕໍ່ໄປນີ້:

ຂອບເຂດ 0
ຂອບເຂດ 1
ຂອບເຂດ 2
ຂອບເຂດ 3
ຈໍາກັດການປ່ຽນແປງສູງສຸດສໍາລັບແຕ່ລະຍົນ, ຄ່າເລີ່ມຕົ້ນແມ່ນ 65535. ຖ້າ 0, ຍົນຈະຍັງຄົງຢູ່
ບໍ່ປ່ຽນແປງ.

coordinates
ທຸງທີ່ລະບຸ pixel ເພື່ອອ້າງອີງ. ຄ່າເລີ່ມຕົ້ນແມ່ນ 255 ie ທັງແປດ pixels ແມ່ນ
ໃຊ້ແລ້ວ.

ທຸງໄປຫາແຜນທີ່ຈຸດປະສານງານ 3x3 ທ້ອງຖິ່ນເຊັ່ນນີ້:

+1 2 3
4 5
+6 7 8

ຕູ້ຊັກເຄື່ອງ
ແຕ້ມກ່ອງສີໃສ່ຮູບທີ່ປ້ອນເຂົ້າ.

ມັນຍອມຮັບຕົວກໍານົດການດັ່ງຕໍ່ໄປນີ້:

x
y ການສະແດງອອກທີ່ລະບຸຈຸດພິກັດມຸມຊ້າຍເທິງຂອງກ່ອງ. ມັນເປັນຄ່າເລີ່ມຕົ້ນ
to 0

ຄວາມກວ້າງ, w
ລະດັບຄວາມສູງ, h
ການສະແດງອອກທີ່ລະບຸຄວາມກວ້າງແລະຄວາມສູງຂອງກ່ອງ; ຖ້າ 0 ພວກເຂົາແມ່ນ
ແປເປັນຄວາມກວ້າງ ແລະລວງສູງຂອງວັດສະດຸປ້ອນ. ມັນຕັ້ງໄວ້ເປັນ 0.

ສີ, c
ລະບຸສີຂອງກ່ອງທີ່ຈະຂຽນ. ສໍາລັບ syntax ທົ່ວໄປຂອງທາງເລືອກນີ້, ໃຫ້ກວດເບິ່ງ
ພາກສ່ວນ "ສີ" ໃນຄູ່ມື ffmpeg-utils. ຖ້າຄ່າພິເສດ "invert" ຖືກໃຊ້,
ສີຂອບກ່ອງແມ່ນຄືກັນກັບວິດີໂອທີ່ມີ luma ປີ້ນ.

ຄວາມ ໜາ, t
ການສະແດງອອກທີ່ກໍານົດຄວາມຫນາຂອງຂອບກ່ອງ. ຄ່າເລີ່ມຕົ້ນແມ່ນ 3.

ເບິ່ງຂ້າງລຸ່ມນີ້ສໍາລັບບັນຊີລາຍຊື່ຂອງຄ່າຄົງທີ່ທີ່ຍອມຮັບ.

ຕົວກໍານົດການສໍາລັບ x, y, w ແລະ h ແລະ t ແມ່ນສຳນວນທີ່ມີຄ່າຄົງທີ່ຕໍ່ໄປນີ້:

dar ອັດ​ຕາ​ສ່ວນ​ການ​ສະ​ແດງ​ຜົນ​ການ​ປ້ອນ​ຂໍ້​ມູນ​, ມັນ​ຄື​ກັນ​ກັບ (w / h) * sar.

hsub
vsub
ຄ່າຍ່ອຍ chroma ແນວນອນ ແລະແນວຕັ້ງ. ຕົວຢ່າງສໍາລັບຮູບແບບ pixels ລວງ
"yuv422p" hsub ແມ່ນ 2 ແລະ vsub ແມ່ນ 1.

in_h, ih
in_w, iw
ຄວາມກວ້າງແລະຄວາມສູງຂອງວັດສະດຸປ້ອນ.

sar ອັດຕາສ່ວນຕົວຢ່າງການປ້ອນຂໍ້ມູນ.

x
y ຈຸດປະສານງານ x ແລະ y offset ບ່ອນທີ່ກ່ອງຖືກແຕ້ມ.

w
h ຄວາມກວ້າງແລະຄວາມສູງຂອງກ່ອງແຕ້ມ.

t ຄວາມຫນາຂອງກ່ອງແຕ້ມ.

ຄົງທີ່ເຫຼົ່ານີ້ອະນຸຍາດໃຫ້ x, y, w, h ແລະ t ການສະແດງອອກເພື່ອອ້າງເຖິງກັນແລະກັນ, ດັ່ງນັ້ນທ່ານ
ຕົວຢ່າງອາດຈະລະບຸ "y = x / dar" ຫຼື "h = w / dar".

ຕົວຢ່າງ

· ແຕ້ມກ່ອງດຳອ້ອມຂອບຂອງຮູບທີ່ປ້ອນເຂົ້າ:

ຕູ້ຊັກເຄື່ອງ

· ແຕ້ມກ່ອງດ້ວຍສີແດງ ແລະ ຄວາມໜາຂອງ 50%:

drawbox=10:20:200:60:[email protected]

ຕົວຢ່າງກ່ອນຫນ້ານີ້ສາມາດຖືກກໍານົດເປັນ:

drawbox=x=10:y=20:w=200:h=60:color=[email protected]

· ຕື່ມໃສ່ກ່ອງດ້ວຍສີບົວ:

drawbox=x=10:y=10:w=100:h=100:color=[email protected]:t=ສູງສຸດ

· ແຕ້ມໜ້າກາກສີແດງ 2:2.40 1 ພິກເຊລ:

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

ແຕ້ມ, ຮູບແຕ້ມ
ແຕ້ມເສັ້ນສະແດງໂດຍການປ້ອນຂໍ້ມູນວິດີໂອ ຫຼືເມຕາເດຕາຂອງສຽງ.

ມັນຍອມຮັບຕົວກໍານົດການດັ່ງຕໍ່ໄປນີ້:

m1 ຕັ້ງລະຫັດເມຕາເດຕາເຟຣມທີ 1 ເຊິ່ງຄ່າເມຕາເດຕາຈະຖືກໃຊ້ເພື່ອແຕ້ມກຣາຟ.

fg1 ກຳນົດການສະແດງອອກສີດ້ານໜ້າທີ 1.

m2 ຕັ້ງລະຫັດເມຕາເດຕາເຟຣມທີ 2 ທີ່ຄ່າເມຕາເດຕາຈະຖືກໃຊ້ເພື່ອແຕ້ມກຣາຟ.

fg2 ກຳນົດການສະແດງອອກສີດ້ານໜ້າທີ 2.

m3 ຕັ້ງລະຫັດເມຕາເດຕາເຟຣມທີ 3 ທີ່ຄ່າເມຕາເດຕາຈະຖືກໃຊ້ເພື່ອແຕ້ມກຣາຟ.

fg3 ກຳນົດການສະແດງອອກສີດ້ານໜ້າທີ 3.

m4 ຕັ້ງລະຫັດເມຕາເດຕາເຟຣມທີ 4 ທີ່ຄ່າເມຕາເດຕາຈະຖືກໃຊ້ເພື່ອແຕ້ມກຣາຟ.

fg4 ກໍານົດການສະແດງອອກສີ foreground ທີ 4.

ນາທີ ກໍານົດຄ່າຕໍາ່ສຸດທີ່ຂອງຄ່າ metadata.

ສູງສຸດທີ່ເຄຍ ກໍານົດຄ່າສູງສຸດຂອງຄ່າ metadata.

bg ຕັ້ງສີພື້ນຫຼັງກຣາບ. ຄ່າເລີ່ມຕົ້ນແມ່ນສີຂາວ.

ຮູບແບບການ
ຕັ້ງໂໝດກຣາບ.

ຄ່າທີ່ສາມາດໃຊ້ໄດ້ສຳລັບໂໝດແມ່ນ:

ພາທະນາຍຄວາມ
ຈຸດ
ອອນໄລນ໌

ຄ່າເລີ່ມຕົ້ນແມ່ນ "ເສັ້ນ".

ບໍລິການ
ຕັ້ງໂໝດສະໄລ້.

ຄ່າທີ່ມີໃຫ້ສຳລັບສະໄລ້ແມ່ນ:

frame
ແຕ້ມຂອບໃໝ່ເມື່ອຮອດຂອບຂວາ.

ທົດແທນ
ປ່ຽນຖັນເກົ່າດ້ວຍຖັນໃໝ່.

ເລື່ອນ
ເລື່ອນຈາກຂວາໄປຊ້າຍ.

rscroll
ເລື່ອນຈາກຊ້າຍໄປຂວາ.

ຄ່າເລີ່ມຕົ້ນແມ່ນ "ກອບ".

ຂະຫນາດ
ກໍານົດຂະຫນາດຂອງວິດີໂອກາຟ. ສໍາລັບ syntax ຂອງທາງເລືອກນີ້, ໃຫ້ກວດເບິ່ງ "ວິດີໂອ ຂະໜາດ" ສ່ວນ
in ໄດ້ ffmpeg-utils ຄູ່ມື. ຄ່າເລີ່ມຕົ້ນແມ່ນ "900x256".

ການສະແດງສີດ້ານໜ້າສາມາດໃຊ້ຕົວແປຕໍ່ໄປນີ້:

MIN ຄ່າຕໍ່າສຸດຂອງຄ່າ metadata.

MAX ຄ່າສູງສຸດຂອງຄ່າ metadata.

VAL ຄ່າກະແຈ metadata ໃນປັດຈຸບັນ.

ສີຖືກກໍານົດເປັນ 0xAABBGGRR.

ຕົວຢ່າງການໃຊ້ metadata ຈາກ ສະຖິຕິສັນຍານ ການກັ່ນຕອງ:

signalstats,drawgraph=lavfi.signalstats.YAVG:min=0:max=255

ຕົວຢ່າງການໃຊ້ metadata ຈາກ ebur128 ການກັ່ນຕອງ:

ebur128=metadata=1,adrawgraph=lavfi.r128.M:min=-120:max=5

ເສັ້ນແຕ້ມ
ແຕ້ມຕາຂ່າຍໄຟຟ້າຢູ່ໃນຮູບທີ່ປ້ອນຂໍ້ມູນ.

ມັນຍອມຮັບຕົວກໍານົດການດັ່ງຕໍ່ໄປນີ້:

x
y ການສະແດງອອກທີ່ລະບຸຈຸດປະສານງານຂອງຈຸດຕັດກັນຕາຂ່າຍ
(ໝາຍເຖິງການຕັ້ງຄ່າການຊົດເຊີຍ). ທັງສອງຄ່າເລີ່ມຕົ້ນເປັນ 0.

ຄວາມກວ້າງ, w
ລະດັບຄວາມສູງ, h
ການສະແດງອອກທີ່ລະບຸຄວາມກວ້າງແລະຄວາມສູງຂອງຕາລາງຕາຂ່າຍໄຟຟ້າ, ຖ້າ 0 ແມ່ນ
ຕີຄວາມກວ້າງຂອງວັດສະດຸປ້ອນແລະຄວາມສູງ, ຕາມລໍາດັບ, ລົບ "ຄວາມຫນາ", ດັ່ງນັ້ນຮູບພາບ
ໄດ້ຮັບກອບ. ຄ່າເລີ່ມຕົ້ນເປັນ 0.

ສີ, c
ລະບຸສີຂອງຕາຂ່າຍໄຟຟ້າ. ສໍາລັບ syntax ທົ່ວໄປຂອງທາງເລືອກນີ້, ໃຫ້ກວດເບິ່ງ
ສ່ວນ "ສີ" ໃນຄູ່ມື ffmpeg-utils. ຖ້າຄ່າພິເສດ "invert" ຖືກນໍາໃຊ້, the
ສີຕາຂ່າຍແມ່ນຄືກັນກັບວິດີໂອທີ່ມີ luma ປີ້ນ.

ຄວາມ ໜາ, t
ການສະແດງອອກທີ່ກໍານົດຄວາມຫນາຂອງເສັ້ນຕາຂ່າຍໄຟຟ້າ. ຄ່າເລີ່ມຕົ້ນແມ່ນ 1.

ເບິ່ງຂ້າງລຸ່ມນີ້ສໍາລັບບັນຊີລາຍຊື່ຂອງຄ່າຄົງທີ່ທີ່ຍອມຮັບ.

ຕົວກໍານົດການສໍາລັບ x, y, w ແລະ h ແລະ t ແມ່ນສຳນວນທີ່ມີຄ່າຄົງທີ່ຕໍ່ໄປນີ້:

dar ອັດ​ຕາ​ສ່ວນ​ການ​ສະ​ແດງ​ຜົນ​ການ​ປ້ອນ​ຂໍ້​ມູນ​, ມັນ​ຄື​ກັນ​ກັບ (w / h) * sar.

hsub
vsub
ຄ່າຍ່ອຍ chroma ແນວນອນ ແລະແນວຕັ້ງ. ຕົວຢ່າງສໍາລັບຮູບແບບ pixels ລວງ
"yuv422p" hsub ແມ່ນ 2 ແລະ vsub ແມ່ນ 1.

in_h, ih
in_w, iw
ຄວາມກວ້າງ ແລະ ຄວາມສູງຂອງຕາລາງ input.

sar ອັດຕາສ່ວນຕົວຢ່າງການປ້ອນຂໍ້ມູນ.

x
y ຈຸດພິກັດ x ແລະ y ຂອງຈຸດຕັດກັນຂອງຕາຂ່າຍໄຟຟ້າບາງຈຸດ (ໝາຍເຖິງການກຳນົດຄ່າ
ຊົດເຊີຍ).

w
h ຄວາມກວ້າງແລະຄວາມສູງຂອງຕາລາງທີ່ແຕ້ມ.

t ຄວາມຫນາຂອງເຊນທີ່ແຕ້ມ.

ຄົງທີ່ເຫຼົ່ານີ້ອະນຸຍາດໃຫ້ x, y, w, h ແລະ t ການສະແດງອອກເພື່ອອ້າງເຖິງກັນແລະກັນ, ດັ່ງນັ້ນທ່ານ
ຕົວຢ່າງອາດຈະລະບຸ "y = x / dar" ຫຼື "h = w / dar".

ຕົວຢ່າງ

· ແຕ້ມຕາຕະລາງທີ່ມີຕາລາງ 100x100 pixels, ຄວາມຫນາ 2 pixels, ມີສີແດງແລະສີ
ຄວາມ​ໂປ່ງ​ໃສ 50​%​:

drawgrid=width=100:height=100:thickness=2:color=[email protected]

· ແຕ້ມຕາຂ່າຍ 3x3 ສີຂາວ ທີ່ມີຄວາມໂປ່ງໃສ 50%:

drawgrid=w=iw/3:h=ih/3:t=2:c=[email protected]

drawtext
ແຕ້ມສາຍຂໍ້ຄວາມ ຫຼືຂໍ້ຄວາມຈາກໄຟລ໌ທີ່ລະບຸໄວ້ຢູ່ເທິງສຸດຂອງວິດີໂອ, ໂດຍໃຊ້ libfreetype
ຫ້ອງສະຫມຸດ.

ເພື່ອເປີດໃຊ້ການລວບລວມຕົວກອງນີ້, ທ່ານຈໍາເປັນຕ້ອງຕັ້ງຄ່າ FFmpeg ກັບ
"--enable-libfreetype". ເພື່ອເປີດໃຊ້ font fallback ເລີ່ມຕົ້ນແລະ font ທາງ​ເລືອກ​ທີ່​ທ່ານ​ຕ້ອງ​ການ​
ຕັ້ງຄ່າ FFmpeg ດ້ວຍ "--enable-libfontconfig". ເພື່ອເປີດໃຊ້ງານ text_shaping ທາງເລືອກ, ເຈົ້າ
ຈໍາເປັນຕ້ອງຕັ້ງຄ່າ FFmpeg ດ້ວຍ "--enable-libfribidi".

syntax

ມັນຍອມຮັບຕົວກໍານົດການດັ່ງຕໍ່ໄປນີ້:

ຫມາຍໃສ່ໃນປ່ອງ ໃຊ້ເພື່ອແຕ້ມກ່ອງໃສ່ຂໍ້ຄວາມໂດຍໃຊ້ສີພື້ນຫຼັງ. ຄ່າຈະຕ້ອງເປັນ 1
(ເປີດໃຊ້ງານ) ຫຼື 0 (ປິດການໃຊ້ງານ). ຄ່າເລີ່ມຕົ້ນຂອງ ຫມາຍໃສ່ໃນປ່ອງ ແມ່ນ 0.

boxborderw
ກໍາ​ນົດ​ຄວາມ​ກວ້າງ​ຂອງ​ຊາຍ​ແດນ​ທີ່​ຈະ​ໄດ້​ຮັບ​ການ​ແຕ້ມ​ອ້ອມ​ຂ້າງ​ປ່ອງ​ໂດຍ​ການ​ນໍາ​ໃຊ້​ ສີກ່ອງ. ຄ່າເລີ່ມຕົ້ນ
ມູນຄ່າຂອງ boxborderw ແມ່ນ 0.

ສີກ່ອງ
ສີທີ່ຈະໃຊ້ສໍາລັບການແຕ້ມກ່ອງໃສ່ຂໍ້ຄວາມ. ສໍາລັບ syntax ຂອງທາງເລືອກນີ້, ໃຫ້ກວດເບິ່ງ
ພາກສ່ວນ "ສີ" ໃນຄູ່ມື ffmpeg-utils.

ຄ່າເລີ່ມຕົ້ນຂອງ ສີກ່ອງ ແມ່ນ "ສີຂາວ".

ຊາຍແດນ
ກໍາ​ນົດ​ຄວາມ​ກວ້າງ​ຂອງ​ເສັ້ນ​ຊາຍ​ແດນ​ທີ່​ຈະ​ແຕ້ມ​ອ້ອມ​ຂ້າງ​ຂໍ້​ຄວາມ​ໂດຍ​ການ​ນໍາ​ໃຊ້​ ສີຊາຍແດນ. ໄດ້
ຄ່າເລີ່ມຕົ້ນຂອງ ຊາຍແດນ ແມ່ນ 0.

ສີຊາຍແດນ
ກໍານົດສີທີ່ຈະໃຊ້ສໍາລັບການແຕ້ມຂອບຮອບຂໍ້ຄວາມ. ສໍາລັບ syntax ຂອງເລື່ອງນີ້
ທາງເລືອກ, ກວດເບິ່ງສ່ວນ "ສີ" ໃນຄູ່ມື ffmpeg-utils.

ຄ່າເລີ່ມຕົ້ນຂອງ ສີຊາຍແດນ ແມ່ນ "ສີດໍາ".

ການຂະຫຍາຍຕົວ
ເລືອກວິທີການ ຂໍ້ຄວາມ ແມ່ນຂະຫຍາຍ. ສາມາດເປັນ "none", "strftime" (ປະຕິເສດ) ຫຼື
"ປົກກະຕິ" (ຄ່າເລີ່ມຕົ້ນ). ເບິ່ງ drawtext_expansion, ຂໍ້ຄວາມ ການຂະຫຍາຍຕົວ ພາກ​ສ່ວນ​ຂ້າງ​ລຸ່ມ​ນີ້​ສໍາ​ລັບ​ການ​
ລາຍລະອຽດ.

fix_bounds
ຖ້າຖືກຕ້ອງ, ໃຫ້ກວດເບິ່ງ ແລະແກ້ໄຂຕົວໜັງສືເພື່ອຫຼີກເວັ້ນການຕັດ.

ສີຕົວອັກສອນ
ສີທີ່ຈະໃຊ້ສໍາລັບການແຕ້ມຕົວອັກສອນ. ສໍາລັບ syntax ຂອງທາງເລືອກນີ້, ໃຫ້ກວດເບິ່ງ
ສ່ວນ "ສີ" ໃນຄູ່ມື ffmpeg-utils.

ຄ່າເລີ່ມຕົ້ນຂອງ ສີຕົວອັກສອນ ແມ່ນ "ສີດໍາ".

fontcolor_expr
String ທີ່ຖືກຂະຫຍາຍໃນແບບດຽວກັນກັບ ຂໍ້ຄວາມ ເພື່ອ​ໃຫ້​ໄດ້​ຮັບ​ການ​ເຄື່ອນ​ໄຫວ​ ສີຕົວອັກສອນ ຄ່າ. ໂດຍ
ຄ່າເລີ່ມຕົ້ນຕົວເລືອກນີ້ມີມູນຄ່າຫວ່າງເປົ່າ ແລະບໍ່ໄດ້ຖືກປະມວນຜົນ. ເມື່ອຕົວເລືອກນີ້ຖືກຕັ້ງ, ມັນ
overrides ສີຕົວອັກສອນ ທາງເລືອກ.

font
ຄອບຄົວຕົວອັກສອນທີ່ຈະໃຊ້ສໍາລັບການແຕ້ມຂໍ້ຄວາມ. ໂດຍຄ່າເລີ່ມຕົ້ນ Sans.

ໄຟລ໌ຕົວອັກສອນ
ໄຟລ໌ຕົວອັກສອນທີ່ຈະໃຊ້ສໍາລັບການແຕ້ມຂໍ້ຄວາມ. ເສັ້ນທາງຕ້ອງຖືກລວມເຂົ້າ. ພາລາມິເຕີນີ້
ແມ່ນບັງຄັບຖ້າການສະຫນັບສະຫນູນ fontconfig ຖືກປິດໃຊ້ງານ.

ແຕ້ມ
ບໍ່ມີທາງເລືອກນີ້, ກະລຸນາເບິ່ງລະບົບກໍານົດເວລາ

alpha
ແຕ້ມຂໍ້ຄວາມໂດຍໃຊ້ການຜະສົມອັນຟາ. ຄ່າສາມາດເປັນຕົວເລກລະຫວ່າງ 0.0
ແລະ 1.0 ການສະແດງອອກຍອມຮັບຕົວແປດຽວກັນ x, y ເຮັດ. ຄ່າເລີ່ມຕົ້ນແມ່ນ 1.
ກະລຸນາເບິ່ງ fontcolor_expr

ຂະໜາດຕົວອັກສອນ
ຂະຫນາດຕົວອັກສອນທີ່ຈະໃຊ້ສໍາລັບການແຕ້ມຂໍ້ຄວາມ. ຄ່າເລີ່ມຕົ້ນຂອງ ຂະໜາດຕົວອັກສອນ ແມ່ນ 16.

text_shaping
ຖ້າຕັ້ງເປັນ 1, ພະຍາຍາມສ້າງຕົວໜັງສື (ຕົວຢ່າງ, ປີ້ນລຳດັບຂອງຂວາຫາ-
ຂໍ້ຄວາມຊ້າຍແລະເຂົ້າຮ່ວມຕົວອັກສອນ Arabic) ກ່ອນທີ່ຈະແຕ້ມມັນ. ຖ້າບໍ່ດັ່ງນັ້ນ, ພຽງແຕ່ແຕ້ມ
ຂໍ້ຄວາມກົງກັບທີ່ໃຫ້. ໂດຍຄ່າເລີ່ມຕົ້ນ 1 (ຖ້າຮອງຮັບ).

ft_load_flags
ທຸງທີ່ຈະໃຊ້ສໍາລັບການໂຫຼດຕົວອັກສອນ.

ທຸງແຜນທີ່ເປັນທຸງທີ່ສອດຄ້ອງກັນທີ່ສະຫນັບສະຫນູນໂດຍ libfreetype, ແລະເປັນການປະສົມປະສານ
ຂອງຄ່າຕໍ່ໄປນີ້:

Default
no_scale
no_hinting
render
no_bitmap
vertical_layout
force_autohint
crop_bitmap
pedantic
ignore_global_advance_width
no_recurse
ignore_transform
monochrome
linear_design
no_autohint

ຄ່າເລີ່ມຕົ້ນແມ່ນ "ຄ່າເລີ່ມຕົ້ນ".

ສໍາລັບຂໍ້ມູນເພີ່ມເຕີມໃຫ້ເບິ່ງເອກະສານສໍາລັບທຸງ FT_LOAD_* libfreetype.

ສີເງົາ
ສີທີ່ຈະໃຊ້ສໍາລັບການແຕ້ມເງົາຢູ່ຫລັງຂໍ້ຄວາມທີ່ແຕ້ມ. ສໍາລັບ syntax ຂອງ
ຕົວເລືອກນີ້, ໃຫ້ກວດເບິ່ງສ່ວນ "ສີ" ໃນຄູ່ມື ffmpeg-utils.

ຄ່າເລີ່ມຕົ້ນຂອງ ສີເງົາ ແມ່ນ "ສີດໍາ".

shadowx
ເງົາ
x ແລະ y ຊົດເຊີຍສໍາລັບຕໍາແຫນ່ງເງົາຂອງຂໍ້ຄວາມກ່ຽວກັບຕໍາແຫນ່ງຂອງ
ຂໍ້​ຄວາມ. ພວກເຂົາສາມາດເປັນຄ່າບວກຫຼືລົບ. ຄ່າເລີ່ມຕົ້ນຂອງທັງສອງແມ່ນ
"0".

start_number
ໝາຍເລກກອບເລີ່ມຕົ້ນສຳລັບຕົວແປ n/frame_num. ຄ່າເລີ່ມຕົ້ນແມ່ນ "0".

ຂະໜາດແຖບ
ຂະຫນາດໃນຈໍານວນຊ່ອງທີ່ຈະໃຊ້ສໍາລັບການສະແດງແຖບ. ຄ່າເລີ່ມຕົ້ນແມ່ນ 4.

ລະຫັດເວລາ
ກໍານົດການເປັນຕົວແທນຂອງລະຫັດເວລາເບື້ອງຕົ້ນໃນຮູບແບບ "hh:mm:ss[:;.]ff". ມັນສາມາດນໍາໃຊ້ໄດ້
ມີຫຼືບໍ່ມີຕົວກໍານົດການຂໍ້ຄວາມ. timecode_rate ທາງເລືອກຕ້ອງໄດ້ຮັບການລະບຸ.

timecode_rate, ອັດຕາ, r
ກໍານົດອັດຕາເຟຣມລະຫັດເວລາ (timecode ເທົ່ານັ້ນ).

ຂໍ້ຄວາມ
ສະຕຣິງຂໍ້ຄວາມທີ່ຈະແຕ້ມ. ຂໍ້ຄວາມຕ້ອງເປັນລໍາດັບຂອງຕົວອັກສອນທີ່ເຂົ້າລະຫັດ UTF-8.
ພາລາມິເຕີນີ້ແມ່ນບັງຄັບຖ້າບໍ່ມີໄຟລ໌ຖືກລະບຸດ້ວຍພາລາມິເຕີ ໄຟລ໌ຂໍ້ຄວາມ.

ໄຟລ໌ຂໍ້ຄວາມ
ໄຟລ໌ຂໍ້ຄວາມທີ່ມີຂໍ້ຄວາມທີ່ຈະແຕ້ມ. ຂໍ້ຄວາມຕ້ອງເປັນລໍາດັບຂອງ UTF-8 ທີ່ເຂົ້າລະຫັດ
ລັກສະນະ.

ພາຣາມິເຕີນີ້ແມ່ນບັງຄັບຖ້າບໍ່ມີສະຕຣິງຂໍ້ຄວາມຖືກລະບຸກັບພາລາມິເຕີ ຂໍ້ຄວາມ.

ຖ້າທັງສອງ ຂໍ້ຄວາມ ແລະ ໄຟລ໌ຂໍ້ຄວາມ ຖືກລະບຸ, ຂໍ້ຜິດພາດຖືກຖິ້ມ.

ໂຫຼດ ໃໝ່
ຖ້າຕັ້ງເປັນ 1, the ໄຟລ໌ຂໍ້ຄວາມ ຈະຖືກໂຫຼດຄືນໃໝ່ກ່ອນແຕ່ລະກອບ. ໃຫ້ແນ່ໃຈວ່າຈະປັບປຸງມັນ
atomically, ຫຼືມັນອາດຈະຖືກອ່ານບາງສ່ວນ, ຫຼືແມ້ກະທັ້ງລົ້ມເຫລວ.

x
y ການສະແດງອອກທີ່ລະບຸການຊົດເຊີຍທີ່ຂໍ້ຄວາມຈະຖືກແຕ້ມພາຍໃນວິດີໂອ
ກອບ. ພວກມັນແມ່ນກ່ຽວຂ້ອງກັບຂອບເທິງ/ຊ້າຍຂອງຮູບຜົນຜະລິດ.

ຄ່າເລີ່ມຕົ້ນຂອງ x ແລະ y ແມ່ນ "0".

ເບິ່ງຂ້າງລຸ່ມນີ້ສໍາລັບບັນຊີລາຍຊື່ຂອງຄ່າຄົງທີ່ແລະຫນ້າທີ່ຍອມຮັບ.

ຕົວກໍານົດການສໍາລັບ x ແລະ y ແມ່ນການສະແດງອອກທີ່ມີຄ່າຄົງທີ່ຕໍ່ໄປນີ້ ແລະ
ຫນ້າທີ່:

dar ອັດ​ຕາ​ສ່ວນ​ການ​ສະ​ແດງ​ຜົນ​ການ​ປ້ອນ​ຂໍ້​ມູນ​, ມັນ​ຄື​ກັນ​ກັບ (w / h) * sar

hsub
vsub
ຄ່າຍ່ອຍ chroma ແນວນອນ ແລະແນວຕັ້ງ. ຕົວຢ່າງສໍາລັບຮູບແບບ pixels ລວງ
"yuv422p" hsub ແມ່ນ 2 ແລະ vsub ແມ່ນ 1.

line_h, lh
ຄວາມສູງຂອງແຕ່ລະແຖວຂໍ້ຄວາມ

main_h, h, H
ຄວາມສູງຂອງວັດສະດຸປ້ອນ

main_w, w, W
ຄວາມກວ້າງຂອງວັດສະດຸປ້ອນ

max_glyph_a, ຈຸດປະສົງ
ໄລຍະທາງສູງສຸດຈາກເສັ້ນພື້ນຖານໄປຫາຈຸດປະສານງານຕາຂ່າຍໄຟຟ້າສູງສຸດ/ເທິງສຸດທີ່ໃຊ້
ວາງຈຸດໂຄງຮ່າງ glyph, ສໍາລັບທຸກ glyphs ທີ່ສະແດງ. ມັນເປັນມູນຄ່າບວກ, ເນື່ອງຈາກ
ໄປສູ່ທິດທາງຂອງຕາຂ່າຍໄຟຟ້າທີ່ມີແກນ Y ຂຶ້ນໄປ.

max_glyph_d, ສືບເຊື້ອສາຍ
ໄລຍະທາງສູງສຸດຈາກເສັ້ນພື້ນຖານໄປຫາຈຸດປະສານງານຕາຂ່າຍໄຟຟ້າຕໍ່າສຸດທີ່ໃຊ້ເພື່ອວາງ a
glyph outline point, ສໍາລັບທຸກ glyphs rendered. ນີ້ແມ່ນມູນຄ່າທາງລົບ, ເນື່ອງຈາກ
ທິດທາງຂອງຕາຂ່າຍໄຟຟ້າ, ໂດຍມີແກນ Y ຂຶ້ນໄປ.

max_glyph_h
ຄວາມສູງ glyph ສູງສຸດ, ນັ້ນແມ່ນຄວາມສູງສູງສຸດສໍາລັບ glyphs ທັງຫມົດທີ່ມີຢູ່ໃນ
rendered text, ມັນເທົ່າກັບ ຈຸດປະສົງ - ສືບເຊື້ອສາຍ.

max_glyph_w
ຄວາມກວ້າງ glyph ສູງສຸດ, ນັ້ນແມ່ນຄວາມກວ້າງສູງສຸດສໍາລັບ glyphs ທັງຫມົດທີ່ມີຢູ່ໃນ
ຂໍ້ຄວາມທີ່ສະແດງ

n ຈໍານວນຂອງກອບການປ້ອນຂໍ້ມູນ, ເລີ່ມຈາກ 0

ແຣນ (ນທ, ສູງສຸດ)
ສົ່ງຄືນຕົວເລກສຸ່ມລວມລະຫວ່າງ ນາທີ ແລະ ສູງສຸດທີ່ເຄຍ

sar ອັດຕາສ່ວນຕົວຢ່າງການປ້ອນຂໍ້ມູນ.

t timestamp ສະ ແດງ ອອກ ເປັນ ວິ ນາ ທີ, NAN ຖ້າ input timestamp ບໍ່ ຮູ້ ຈັກ

text_h, th
ຄວາມສູງຂອງຂໍ້ຄວາມທີ່ສະແດງ

text_w, tw
ຄວາມກວ້າງຂອງຂໍ້ຄວາມທີ່ສະແດງ

x
y x ແລະ y offset ພິກັດທີ່ຂໍ້ຄວາມຖືກແຕ້ມ.

ຕົວກໍານົດການເຫຼົ່ານີ້ອະນຸຍາດໃຫ້ x ແລະ y ການສະແດງອອກເພື່ອອ້າງອີງເຊິ່ງກັນແລະກັນ, ດັ່ງນັ້ນທ່ານສາມາດສໍາລັບ
ຕົວຢ່າງລະບຸ "y=x/dar".

ຂໍ້ຄວາມ ການຂະຫຍາຍຕົວ

If ການຂະຫຍາຍຕົວ ຖືກກໍານົດເປັນ "strftime", ການກັ່ນຕອງຮັບຮູ້ strftime() ລໍາດັບໃນ
ໃຫ້ຂໍ້ຄວາມແລະຂະຫຍາຍພວກມັນຕາມຄວາມເຫມາະສົມ. ກວດເບິ່ງເອກະສານຂອງ strftime(). ນີ້
ຄຸນສົມບັດຖືກປະຕິເສດ.

If ການຂະຫຍາຍຕົວ ຖືກຕັ້ງເປັນ "ບໍ່ມີ", ຂໍ້ຄວາມຖືກພິມອອກເປັນຄໍາສັບ.

If ການຂະຫຍາຍຕົວ ຖືກກໍານົດເປັນ "ປົກກະຕິ" (ເຊິ່ງເປັນຄ່າເລີ່ມຕົ້ນ), ກົນໄກການຂະຫຍາຍຕໍ່ໄປນີ້
ຖືກນໍາໃຊ້.

ລັກສະນະ backslash \, ຕິດຕາມດ້ວຍຕົວລະຄອນໃດນຶ່ງ, ສະເຫມີຂະຫຍາຍໄປຫາຕົວທີສອງ
ລັກສະນະ.

ລໍາດັບຂອງແບບຟອມ "%{...}" ຖືກຂະຫຍາຍ. ຂໍ້ຄວາມລະຫວ່າງວົງເລັບແມ່ນຫນ້າທີ່
ຊື່, ອາດຈະຕິດຕາມດ້ວຍການໂຕ້ຖຽງທີ່ແຍກອອກດ້ວຍ ':'. ຖ້າການໂຕ້ຖຽງປະກອບດ້ວຍພິເສດ
ຕົວອັກສອນ ຫຼືຕົວຂັ້ນ (':' ຫຼື '}'), ພວກມັນຄວນຈະຖືກຫລົບໜີ.

ໃຫ້ສັງເກດວ່າພວກເຂົາອາດຈະຕ້ອງຖືກຫລົບຫນີເຊັ່ນດຽວກັນເປັນມູນຄ່າສໍາລັບ ຂໍ້ຄວາມ ທາງເລືອກໃນການ
filter argument string ແລະເປັນ filter argument ໃນຄຳອະທິບາຍ filtergraph, ແລະ
ອາດຈະຍັງສໍາລັບແກະ, ທີ່ເຮັດໃຫ້ເຖິງສີ່ລະດັບຂອງການ escaping; ການ​ນໍາ​ໃຊ້​ໄຟລ​໌​ຂໍ້​ຄວາມ​
ຫຼີກເວັ້ນບັນຫາເຫຼົ່ານີ້.

ຟັງຊັນຕໍ່ໄປນີ້ສາມາດໃຊ້ໄດ້:

expr, e
ຜົນ​ການ​ປະ​ເມີນ​ຜົນ​ການ​ສະ​ແດງ​ອອກ​.

ມັນຕ້ອງໃຊ້ເວລາຫນຶ່ງ argument ລະບຸການສະແດງອອກທີ່ຈະປະເມີນຜົນ, ເຊິ່ງຍອມຮັບ
ຄົງທີ່ແລະຫນ້າທີ່ດຽວກັນກັບ x ແລະ y ຄຸນຄ່າ. ໃຫ້ສັງເກດວ່າບໍ່ແມ່ນຄ່າຄົງທີ່ທັງຫມົດຄວນ
ຖືກນໍາໃຊ້, ສໍາລັບການຍົກຕົວຢ່າງ, ຂະຫນາດຂໍ້ຄວາມບໍ່ເປັນທີ່ຮູ້ຈັກໃນເວລາທີ່ການປະເມີນຜົນການສະແດງອອກ, ດັ່ງນັ້ນ
ຄົງທີ່ text_w ແລະ text_h ຈະມີມູນຄ່າທີ່ບໍ່ໄດ້ກໍານົດ.

expr_int_format, ອີຟ
ປະເມີນຄ່າຂອງການສະແດງຜົນ ແລະຜົນຜະລິດເປັນຈຳນວນເຕັມຮູບແບບ.

ການໂຕ້ຖຽງທໍາອິດແມ່ນການສະແດງອອກທີ່ຈະໄດ້ຮັບການປະເມີນ, ຄືກັນກັບການ ຕົວຢ່າງ function
ການໂຕ້ຖຽງທີສອງກໍານົດຮູບແບບຜົນຜະລິດ. ຄ່າທີ່ອະນຸຍາດແມ່ນ x, X, d ແລະ u.
ພວກເຂົາຖືກປະຕິບັດຢ່າງແນ່ນອນໃນຫນ້າທີ່ "printf". ຕົວກໍານົດການທີສາມແມ່ນທາງເລືອກ
ແລະກໍານົດຈໍານວນຂອງຕໍາແຫນ່ງປະຕິບັດໂດຍຜົນໄດ້ຮັບ. ມັນສາມາດຖືກນໍາໃຊ້ເພື່ອເພີ່ມ padding
ມີສູນຈາກຊ້າຍ.

gmtime
ເວລາທີ່ຕົວກອງກຳລັງແລ່ນ, ສະແດງຢູ່ໃນ UTC. ມັນສາມາດຍອມຮັບການໂຕ້ຖຽງ:
a strftime() ຮູບແບບສະຕຣິງ.

ທ້ອງຖິ່ນ
ເວລາທີ່ໃຊ້ຕົວກອງ, ສະແດງຢູ່ໃນເຂດເວລາທ້ອງຖິ່ນ. ມັນ​ສາ​ມາດ
ຍອມຮັບການໂຕ້ຖຽງ: ກ strftime() ຮູບແບບສະຕຣິງ.

metadata
ເມຕາເດຕາຂອງກອບ. ມັນຕ້ອງໃຊ້ເວລາຫນຶ່ງ argument ລະບຸລະຫັດ metadata.

n, frame_num
ຕົວເລກກອບ, ເລີ່ມຈາກ 0.

pict_type
ລາຍລະອຽດ 1 ຕົວອັກສອນຂອງປະເພດຮູບປະຈຸບັນ.

pts ເວລາຂອງກອບປັດຈຸບັນ. ມັນສາມາດໃຊ້ເວລາເຖິງສອງການໂຕ້ຖຽງ.

ການໂຕ້ຖຽງທໍາອິດແມ່ນຮູບແບບຂອງເວລາ; ມັນເລີ່ມຕົ້ນເປັນ "flt" ສໍາລັບວິນາທີເປັນ
ຕົວເລກທົດສະນິຍົມທີ່ມີຄວາມຖືກຕ້ອງຂອງ microsecond; "hms" ຫຍໍ້ມາຈາກຮູບແບບ
[-]HH:MM:SS.mmm ເວລາທີ່ມີຄວາມຖືກຕ້ອງຂອງ millisecond.

ການໂຕ້ຖຽງທີສອງແມ່ນການຊົດເຊີຍທີ່ເພີ່ມໃສ່ເວລາ.

ຕົວຢ່າງ

· ແຕ້ມ "Test Text" ດ້ວຍ font FreeSerif, ໂດຍໃຊ້ຄ່າເລີ່ມຕົ້ນສຳລັບທາງເລືອກ
ຕົວກໍານົດການ.

drawtext="fontfile=/usr/share/fonts/truetype/freefont/FreeSerif.ttf: text='Test Text'"

· ແຕ້ມ 'Test Text' ດ້ວຍ font FreeSerif ຂະໜາດ 24 ຢູ່ຕຳແໜ່ງ x=100 ແລະ y=50 (ນັບ
ຈາກ​ມຸມ​ຊ້າຍ​ເທິງ​ຂອງ​ຫນ້າ​ຈໍ​)​, ຂໍ້​ຄວາມ​ເປັນ​ສີ​ເຫຼືອງ​ທີ່​ມີ​ປ່ອງ​ສີ​ແດງ​ປະ​ມານ​ມັນ​. ທັງສອງ
ຂໍ້ຄວາມແລະກ່ອງມີຄວາມໂປ່ງໃສຂອງ 20%.

drawtext="fontfile=/usr/share/fonts/truetype/freefont/FreeSerif.ttf: text='Test Text':\
x=100: y=50: fontsize=24: fontcolor=[email protected]:box=1:boxcolor=[email protected]"

ໃຫ້ສັງເກດວ່າວົງຢືມຄູ່ແມ່ນບໍ່ຈໍາເປັນຖ້າຫາກວ່າຊ່ອງຫວ່າງບໍ່ໄດ້ຖືກນໍາໃຊ້ພາຍໃນ
ບັນຊີລາຍຊື່ພາລາມິເຕີ.

·​ສະ​ແດງ​ຂໍ້​ຄວາມ​ຢູ່​ໃນ​ໃຈ​ກາງ​ຂອງ​ກອບ​ວິ​ດີ​ໂອ​ໄດ້​:

drawtext="fontsize=30:fontfile=FreeSerif.ttf:text='ສະບາຍດີໂລກ':x=(w-text_w)/2:y=(h-text_h)/2"

·ສະແດງແຖວຂໍ້ຄວາມທີ່ເລື່ອນຈາກຂວາໄປຊ້າຍໃນແຖວສຸດທ້າຍຂອງກອບວິດີໂອ. ໄດ້
ເອກະສານ LONG_LINE ຖືວ່າມີແຖວດຽວທີ່ບໍ່ມີແຖວໃໝ່.

drawtext="fontsize=15:fontfile=FreeSerif.ttf:text=LONG_LINE:y=h-line_h:x=-50*t"

·ສະແດງເນື້ອໃນຂອງໄຟລ໌ CREDITS ອອກຈາກດ້ານລຸ່ມຂອງກອບແລະເລື່ອນຂຶ້ນ.

drawtext="fontsize=20:fontfile=FreeSerif.ttf:textfile=CREDITS:y=h-20*t"

· ແຕ້ມຕົວອັກສອນສີຂຽວຕົວດຽວ "g", ຢູ່ໃຈກາງຂອງວິດີໂອທີ່ປ້ອນຂໍ້ມູນ. ພື້ນຖານ glyph
ແມ່ນຖືກຈັດໃສ່ຢູ່ທີ່ຄວາມສູງເຄິ່ງຫນຶ່ງຂອງຫນ້າຈໍ.

drawtext="fontsize=60:fontfile=FreeSerif.ttf:fontcolor=green:text=g:x=(w-max_glyph_w)/2:y=h/2-ascent"

·ສະແດງຂໍ້ຄວາມເປັນເວລາ 1 ວິນາທີທຸກໆ 3 ວິນາທີ:

drawtext="fontfile=FreeSerif.ttf:fontcolor=white:x=100:y=x/dar:enable=lt(mod(t\,3)\,1):text='blink'"

·ໃຊ້ fontconfig ເພື່ອກໍານົດຕົວອັກສອນ. ໃຫ້ສັງເກດວ່າຈໍ້າສອງເມັດຈໍາເປັນຕ້ອງຖືກຫລົບຫນີ.

drawtext='fontfile=Linux Libertine O-40\:style=Semibold:text=FFmpeg'

· ພິມວັນທີຂອງການເຂົ້າລະຫັດແບບສົດໆ (ເບິ່ງ ເວລາຕໍ່ເວລາ(3)):

drawtext='fontfile=FreeSans.ttf:text=%{localtime\:%a %b %d %Y}'

· ສະ​ແດງ​ໃຫ້​ເຫັນ​ຕົວ​ຫນັງ​ສື​ຈາງ​ເຂົ້າ​ແລະ​ອອກ (ປະ​ກົດ​ຂຶ້ນ / ຫາຍ​ໄປ​)​:

#!/ ຖັງ / sh
DS=1.0 # ການສະແດງຜົນເລີ່ມຕົ້ນ
DE=10.0 # ສິ້ນສຸດການສະແດງຜົນ
FID=1.5 # ຫາຍໄປໃນໄລຍະເວລາ
FOD=5 # ໄລຍະເວລາຫາຍໄປ
ffplay -f lavfi "color,drawtext=text=TEST:fontsize=50:fontfile=FreeSerif.ttf:fontcolor_expr=ff0000%{eif\\\\:clip(255*(1* between(t\\, $DS + $FID\\, $DE - $FOD) + ((t - $DS)/$FID)* ລະຫວ່າງ(t\\, $DS\\, $DS + $FID) + (-(t - $DE) /$FOD)*ລະຫວ່າງ(t\\, $DE - $FOD\\, $DE) )\\, 0\\, 255) \\\\: x\\\\: 2 }"

ສໍາລັບຂໍ້ມູນເພີ່ມເຕີມກ່ຽວກັບ libfreetype, ກວດເບິ່ງ:http://www.freetype.org/>.

ສໍາລັບຂໍ້ມູນເພີ່ມເຕີມກ່ຽວກັບ fontconfig, ກວດເບິ່ງ:
<http://freedesktop.org/software/fontconfig/fontconfig-user.html>.

ສໍາລັບຂໍ້ມູນເພີ່ມເຕີມກ່ຽວກັບ libfribidi, ກວດເບິ່ງ:http://fribidi.org/>.

ກວດຫາຂອບ
ກວດພົບແລະແຕ້ມຂອບ. ການກັ່ນຕອງໃຊ້ສູດການຄິດໄລ່ Canny Edge Detection.

ຕົວກອງຍອມຮັບຕົວເລືອກຕໍ່ໄປນີ້:

ຕ່ໍາ
ສູງ
ກຳນົດຄ່າເກນຕ່ຳ ແລະສູງທີ່ໃຊ້ໂດຍລະບົບການກຳນົດເກນ Canny.

ເກນສູງເລືອກ pixels ຂອບ "ທີ່ເຂັ້ມແຂງ", ເຊິ່ງຫຼັງຈາກນັ້ນເຊື່ອມຕໍ່ຜ່ານ
8- ການເຊື່ອມຕໍ່ກັບ pixels ຂອບ "ອ່ອນແອ" ເລືອກໂດຍເກນຕ່ໍາ.

ຕ່ໍາ ແລະ ສູງ ຄ່າເກນຕ້ອງຖືກເລືອກໃນໄລຍະ [0,1], ແລະ ຕ່ໍາ ຄວນ​ຈະ​ເປັນ
ຫນ້ອຍຫຼືເທົ່າກັບ ສູງ.

ຄ່າເລີ່ມຕົ້ນສໍາລັບ ຕ່ໍາ ແມ່ນ "20/255", ແລະຄ່າເລີ່ມຕົ້ນສໍາລັບ ສູງ ແມ່ນ "50/255".

ຮູບແບບການ
ກໍານົດຮູບແບບການແຕ້ມຮູບ.

ສາຍໄຟ
ແຕ້ມສາຍສີຂາວ/ສີເທົາໃສ່ພື້ນຫຼັງສີດຳ.

ຄໍ ລຳ
ປົນສີເພື່ອສ້າງຜົນກະທົບສີ / ກາຕູນ.

ຄ່າເລີ່ມຕົ້ນແມ່ນ ສາຍໄຟ.

ຕົວຢ່າງ

· ການ​ກວດ​ສອບ​ຂອບ​ມາດ​ຕະ​ຖານ​ທີ່​ມີ​ຄຸນ​ຄ່າ​ທີ່​ກໍາ​ນົດ​ໄວ້​ສໍາ​ລັບ​ການ hysteresis thresholding​:

edgedetect=low=0.1:high=0.4

· ຜົນ​ກະ​ທົບ​ການ​ແຕ້ມ​ຮູບ​ໂດຍ​ບໍ່​ມີ​ການ​ກໍາ​ນົດ​ຂອບ​ເຂດ​:

edgedetect=mode=colormix:high=0

eq
ກໍານົດຄວາມສະຫວ່າງ, ກົງກັນຂ້າມ, ຄວາມອີ່ມຕົວແລະການປັບ gamma ໂດຍປະມານ.

ຕົວກອງຍອມຮັບຕົວເລືອກຕໍ່ໄປນີ້:

ກົງກັນຂ້າມ
ກໍານົດການສະແດງອອກທາງກົງກັນຂ້າມ. ຄ່າດັ່ງກ່າວຕ້ອງເປັນຄ່າລອຍຢູ່ໃນໄລຍະ "-2.0" ຫາ 2.0.
ຄ່າເລີ່ມຕົ້ນແມ່ນ "0".

ຄວາມສະຫວ່າງ
ກໍານົດການສະແດງອອກຂອງຄວາມສະຫວ່າງ. ຄ່າດັ່ງກ່າວຕ້ອງເປັນຄ່າລອຍຢູ່ໃນໄລຍະ "-1.0" ຫາ 1.0.
ຄ່າເລີ່ມຕົ້ນແມ່ນ "0".

ການອີ່ມຕົວ
ກໍານົດການສະແດງອອກຂອງການອີ່ມຕົວ. ຄ່າຕ້ອງເປັນຄ່າລອຍຢູ່ໃນຂອບເຂດ 0.0 ຫາ 3.0. ໄດ້
ຄ່າເລີ່ມຕົ້ນແມ່ນ "1".

gamma
ກໍານົດ gamma expression. ຄ່າຕ້ອງເປັນຄ່າລອຍຢູ່ໃນຂອບເຂດ 0.1 ຫາ 10.0. ຄ່າເລີ່ມຕົ້ນ
ມູນຄ່າແມ່ນ "1".

gamma_r
ກໍານົດ gamma expression ສໍາລັບສີແດງ. ຄ່າຕ້ອງເປັນຄ່າລອຍຢູ່ໃນຂອບເຂດ 0.1 ຫາ 10.0. ໄດ້
ຄ່າເລີ່ມຕົ້ນແມ່ນ "1".

gamma_g
ກໍານົດ gamma expression ສໍາລັບສີຂຽວ. ຄ່າຕ້ອງເປັນຄ່າລອຍຢູ່ໃນຂອບເຂດ 0.1 ຫາ 10.0.
ຄ່າເລີ່ມຕົ້ນແມ່ນ "1".

gamma_b
ກໍານົດ gamma expression ສໍາລັບສີຟ້າ. ຄ່າຕ້ອງເປັນຄ່າລອຍຢູ່ໃນຂອບເຂດ 0.1 ຫາ 10.0. ໄດ້
ຄ່າເລີ່ມຕົ້ນແມ່ນ "1".

gamma_weight
ກໍານົດການສະແດງອອກນ້ໍາຫນັກ gamma. ມັນສາມາດຖືກນໍາໃຊ້ເພື່ອຫຼຸດຜ່ອນຜົນກະທົບຂອງ gamma ສູງ
ມູນຄ່າໃນພື້ນທີ່ຮູບພາບທີ່ສົດໃສ, e.g. ຮັກສາໃຫ້ເຂົາເຈົ້າຈາກການ overamplified ແລະພຽງແຕ່ທໍາມະດາ
ສີຂາວ. ຄ່າຕ້ອງເປັນຄ່າລອຍຢູ່ໃນໄລຍະ 0.0 ຫາ 1.0. ຄ່າຂອງ 0.0 ປ່ຽນແກມມາ
ການແກ້ໄຂທັງຫມົດລົງໃນຂະນະທີ່ 1.0 ເຮັດໃຫ້ມັນຢູ່ໃນຄວາມເຂັ້ມແຂງຢ່າງເຕັມທີ່. ຄ່າເລີ່ມຕົ້ນແມ່ນ "1".

ການປະເມີນ
ກໍານົດເວລາທີ່ສະແດງອອກສໍາລັບຄວາມສະຫວ່າງ, ກົງກັນຂ້າມ, ຄວາມອີ່ມຕົວແລະການສະແດງອອກ gamma
ຖືກປະເມີນ.

ມັນຍອມຮັບຄ່າດັ່ງຕໍ່ໄປນີ້:

ໃນ​ມັນ
ປະເມີນການສະແດງອອກພຽງແຕ່ຄັ້ງດຽວໃນລະຫວ່າງການເລີ່ມຕົ້ນການກັ່ນຕອງຫຼືໃນເວລາທີ່ຄໍາສັ່ງ
ແມ່ນການປຸງແຕ່ງ

frame
ປະເມີນການສະແດງອອກສໍາລັບແຕ່ລະກອບທີ່ເຂົ້າມາ

ຄ່າເລີ່ມຕົ້ນແມ່ນ ໃນ​ມັນ.

ການສະແດງອອກຍອມຮັບຕົວກໍານົດການດັ່ງຕໍ່ໄປນີ້:

n ການນັບກອບຂອງກອບການປ້ອນຂໍ້ມູນເລີ່ມຕົ້ນຈາກ 0

pos ຕຳແໜ່ງ byte ຂອງແພັກເກັດທີ່ສອດຄ້ອງກັນໃນໄຟລ໌ປ້ອນຂໍ້ມູນ, NAN ຖ້າບໍ່ໄດ້ລະບຸ

r ອັດຕາເຟຣມຂອງວິດີໂອປ້ອນຂໍ້ມູນ, NAN ຖ້າອັດຕາເຟຣມປ້ອນຂໍ້ມູນບໍ່ຮູ້ຈັກ

t timestamp ສະ ແດງ ອອກ ເປັນ ວິ ນາ ທີ, NAN ຖ້າ input timestamp ບໍ່ ຮູ້ ຈັກ

ຄໍາສັ່ງ

ການກັ່ນຕອງສະຫນັບສະຫນູນຄໍາສັ່ງຕໍ່ໄປນີ້:

ກົງກັນຂ້າມ
ກໍານົດການສະແດງອອກທາງກົງກັນຂ້າມ.

ຄວາມສະຫວ່າງ
ກໍານົດການສະແດງອອກຂອງຄວາມສະຫວ່າງ.

ການອີ່ມຕົວ
ກໍານົດການສະແດງອອກຂອງການອີ່ມຕົວ.

gamma
ກໍານົດ gamma expression.

gamma_r
ກໍານົດການສະແດງອອກ gamma_r.

gamma_g
ຕັ້ງ gamma_g expression.

gamma_b
ຕັ້ງ gamma_b expression.

gamma_weight
ກໍານົດ gamma_weight expression.

ຄໍາສັ່ງຍອມຮັບ syntax ດຽວກັນຂອງທາງເລືອກທີ່ສອດຄ້ອງກັນ.

ຖ້າການສະແດງອອກທີ່ລະບຸບໍ່ຖືກຕ້ອງ, ມັນຖືກເກັບໄວ້ໃນມູນຄ່າປະຈຸບັນຂອງມັນ.

erosion
ນຳໃຊ້ຜົນກະທົບການເຊາະເຈື່ອນໃສ່ວິດີໂອ.

ການກັ່ນຕອງນີ້ແທນ pixels ລວງໂດຍ ທ້ອງຖິ່ນ(3x3) ຕໍາ່ສຸດທີ່.

ມັນຍອມຮັບທາງເລືອກຕໍ່ໄປນີ້:

ຂອບເຂດ 0
ຂອບເຂດ 1
ຂອບເຂດ 2
ຂອບເຂດ 3
ຈໍາກັດການປ່ຽນແປງສູງສຸດສໍາລັບແຕ່ລະຍົນ, ຄ່າເລີ່ມຕົ້ນແມ່ນ 65535. ຖ້າ 0, ຍົນຈະຍັງຄົງຢູ່
ບໍ່ປ່ຽນແປງ.

coordinates
ທຸງທີ່ລະບຸ pixel ເພື່ອອ້າງອີງ. ຄ່າເລີ່ມຕົ້ນແມ່ນ 255 ie ທັງແປດ pixels ແມ່ນ
ໃຊ້ແລ້ວ.

ທຸງໄປຫາແຜນທີ່ຈຸດປະສານງານ 3x3 ທ້ອງຖິ່ນເຊັ່ນນີ້:

+1 2 3
4 5
+6 7 8

ຍົນສະກັດ
ສະກັດອົງປະກອບຊ່ອງສີຈາກການປ້ອນວິດີໂອສະຕຣີມເຂົ້າໄປໃນວິດີໂອທີ່ມີສີຂີ້ເຖົ່າແຍກຕ່າງຫາກ
ສາຍນ້ ຳ.

ການກັ່ນຕອງຍອມຮັບທາງເລືອກຕໍ່ໄປນີ້:

ແຜນການ
ຕັ້ງຍົນເພື່ອສະກັດ.

ຄ່າທີ່ສາມາດໃຊ້ໄດ້ສຳລັບຍົນແມ່ນ:

y
u
v
a
r
g
b

ການເລືອກຍົນທີ່ບໍ່ມີຢູ່ໃນວັດສະດຸປ້ອນຈະສົ່ງຜົນໃຫ້ເກີດຄວາມຜິດພາດ. ນັ້ນຫມາຍຄວາມວ່າເຈົ້າ
ບໍ່ສາມາດເລືອກຍົນ "r", "g", "b" ທີ່ມີຍົນ "y", "u", "v" ໃນເວລາດຽວກັນ.

ຕົວຢ່າງ

·ສະກັດອົງປະກອບຊ່ອງສີ luma, u ແລະ v ຈາກກອບວິດີໂອເຂົ້າໄປໃນ 3 ສີເທົາ
ຜົນໄດ້ຮັບ:

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

ສອກ
ນຳໃຊ້ເອັບເຟັກ posterize ໂດຍໃຊ້ ELBG (Enhanced LBG) algorithm.

ສໍາ​ລັບ​ຮູບ​ພາບ​ການ​ປ້ອນ​ຂໍ້​ມູນ​ແຕ່​ລະ​ຄົນ​, ຕົວ​ກັ່ນ​ຕອງ​ຈະ​ຄິດ​ໄລ່​ການ​ສ້າງ​ແຜນ​ທີ່​ທີ່​ດີ​ທີ່​ສຸດ​ຈາກ​ການ​ປ້ອນ​ຂໍ້​ມູນ​ໄປ​ໃນ​
ຜົນ​ຜະ​ລິດ​ໄດ້​ຮັບ​ຄວາມ​ຍາວ codebook​, ນັ້ນ​ແມ່ນ​ຈໍາ​ນວນ​ຂອງ​ສີ​ຜົນ​ຜະ​ລິດ​ທີ່​ແຕກ​ຕ່າງ​ກັນ​.

ຕົວກອງນີ້ຍອມຮັບຕົວເລືອກຕໍ່ໄປນີ້.

codebook_length, l
ກໍານົດຄວາມຍາວຂອງປື້ມລະຫັດ. ຄ່າຈະຕ້ອງເປັນຈຳນວນບວກ, ແລະເປັນຕົວແທນຂອງຕົວເລກ
ຂອງສີຜົນຜະລິດທີ່ແຕກຕ່າງກັນ. ຄ່າເລີ່ມຕົ້ນແມ່ນ 256.

nb_steps, n
ກໍານົດຈໍານວນການຊໍ້າຄືນສູງສຸດເພື່ອນໍາໃຊ້ສໍາລັບການຄິດໄລ່ແຜນທີ່ທີ່ດີທີ່ສຸດ. ໄດ້
ມູນຄ່າສູງກວ່າຜົນໄດ້ຮັບທີ່ດີກວ່າແລະເວລາຄໍານວນສູງກວ່າ. ຄ່າເລີ່ມຕົ້ນ
ຄ່າແມ່ນ 1.

ແກ່ນ​, s
ຕັ້ງແກ່ນແບບສຸ່ມ, ຕ້ອງເປັນຈຳນວນເຕັມທີ່ລວມຢູ່ລະຫວ່າງ 0 ຫາ UINT32_MAX. ຖ້າ​ບໍ່
ລະບຸໄວ້, ຫຼືຖ້າຕັ້ງໄວ້ຢ່າງຈະແຈ້ງເປັນ -1, ຕົວກອງຈະພະຍາຍາມໃຊ້ແນວພັນແບບສຸ່ມທີ່ດີ
ບົນພື້ນຖານຄວາມພະຍາຍາມທີ່ດີທີ່ສຸດ.

ເພື່ອນ 8
ກໍານົດຮູບແບບຜົນຜະລິດ pixels ລວງ pal8. ຕົວເລືອກນີ້ໃຊ້ບໍ່ໄດ້ກັບ codebook ຍາວກວ່າ
ກ່ວາ 256.

ມະລາຍຫາຍໄປ
ນຳໃຊ້ເອັບເຟັກເຂົ້າ/ອອກກັບວິດີໂອທີ່ປ້ອນເຂົ້າ.

ມັນຍອມຮັບຕົວກໍານົດການດັ່ງຕໍ່ໄປນີ້:

ປະເພດ, t
ປະເພດຜົນກະທົບສາມາດເປັນ "in" ສໍາລັບ fade-in, ຫຼື "out" ສໍາລັບ fade-out.
ຄ່າເລີ່ມຕົ້ນແມ່ນ "ໃນ".

start_frame, s
ລະ​ບຸ​ຈໍາ​ນວນ​ຂອງ​ກອບ​ເພື່ອ​ເລີ່ມ​ຕົ້ນ​ການ​ນໍາ​ໃຊ້​ຜົນ​ກະ​ທົບ​ມະ​ລາຍ​ຫາຍ​ໄປ​ທີ່​. ຄ່າເລີ່ມຕົ້ນແມ່ນ 0.

nb_frames, n
ຈໍານວນຂອງເຟຣມທີ່ມີຜົນກະທົບທີ່ຫາຍໄປດົນ. ໃນຕອນທ້າຍຂອງຜົນກະທົບທີ່ຫາຍໄປ, ໄດ້
ວິ​ດີ​ໂອ​ຜົນ​ຜະ​ລິດ​ຈະ​ມີ​ຄວາມ​ເຂັ້ມ​ດຽວ​ກັນ​ກັບ​ວິ​ດີ​ໂອ​ການ​ປ້ອນ​ຂໍ້​ມູນ​. ໃນ​ຕອນ​ທ້າຍ​ຂອງ​ມະ​ລາຍ​ຫາຍ​ໄປ -
ການ​ປ່ຽນ​ແປງ​ອອກ​, ວິ​ດີ​ໂອ​ຜົນ​ຜະ​ລິດ​ຈະ​ໄດ້​ຮັບ​ການ​ເຕັມ​ໄປ​ດ້ວຍ​ການ​ຄັດ​ເລືອກ​ ສີ. ຄ່າເລີ່ມຕົ້ນແມ່ນ
25​.

alpha
ຖ້າຕັ້ງເປັນ 1, ຈືດໆພຽງແຕ່ຊ່ອງ alpha, ຖ້າມີອັນໜຶ່ງຢູ່ໃນອິນພຸດ. ຄ່າເລີ່ມຕົ້ນແມ່ນ 0.

ເວລາເລີ່ມຕົ້ນ, st
ລະບຸເວລາ (ເປັນວິນາທີ) ຂອງເຟຣມເພື່ອເລີ່ມນຳໃຊ້ເອັບເຟັກການຈາງລົງ. ຖ້າ
ທັງ start_frame ແລະ start_time ແມ່ນໄດ້ລະບຸໄວ້, ການຈາງຈະເລີ່ມຈາກອັນໃດກໍໄດ້
ສຸດທ້າຍ. ຄ່າເລີ່ມຕົ້ນແມ່ນ 0.

ໄລຍະເວລາ, d
ຈໍານວນວິນາທີທີ່ຜົນກະທົບຈະຫາຍໄປ. ໃນຕອນທ້າຍຂອງການມະລາຍຫາຍໄປ
ຜົນ​ກະ​ທົບ​ວິ​ດີ​ໂອ​ຜົນ​ຜະ​ລິດ​ຈະ​ມີ​ຄວາມ​ເຂັ້ມ​ຄື​ກັນ​ກັບ​ວິ​ດີ​ໂອ​ການ​ປ້ອນ​ຂໍ້​ມູນ​, ໃນ​ຕອນ​ທ້າຍ​ຂອງ​
ການ​ຫັນ​ປ່ຽນ​ມະ​ລາຍ​ຫາຍ​ໄປ​ວິ​ດີ​ໂອ​ຜົນ​ຜະ​ລິດ​ຈະ​ເຕັມ​ໄປ​ດ້ວຍ​ການ​ຄັດ​ເລືອກ​ ສີທີ່ຢູ່ ຖ້າຫາກວ່າ
ທັງໄລຍະເວລາແລະ nb_frames ແມ່ນຖືກກໍານົດ, ໄລຍະເວລາແມ່ນຖືກນໍາໃຊ້. ຄ່າເລີ່ມຕົ້ນແມ່ນ 0 (nb_frames
ຖືກນໍາໃຊ້ໂດຍຄ່າເລີ່ມຕົ້ນ).

ສີ, c
ລະບຸສີຂອງມະລາຍຫາຍໄປ. ຄ່າເລີ່ມຕົ້ນແມ່ນ "ສີດໍາ".

ຕົວຢ່າງ

· ຈາງລົງໃນ 30 ເຟຣມທຳອິດຂອງວິດີໂອ:

fade=in:0:30

ຄໍາສັ່ງຂ້າງເທິງແມ່ນເທົ່າກັບ:

fade=t=in:s=0:n=30

· ຫຼຸດ 45 ເຟຣມສຸດທ້າຍຂອງວິດີໂອ 200 ເຟຣມ:

fade=out:155:45
fade=type=out:start_frame=155:nb_frames=45

· ຈາງລົງໃນ 25 ເຟຣມທຳອິດ ແລະຫຼຸດອອກໃນ 25 ເຟຣມສຸດທ້າຍຂອງວິດີໂອ 1000 ເຟຣມ:

fade=in:0:25, fade=out:975:25

· ເຮັດ 5 ເຟຣມທໍາອິດເປັນສີເຫຼືອງ, ຫຼັງຈາກນັ້ນຈືດໆຈາກກອບ 5-24:

fade=in:5:20:color=yellow

· ຈາງລົງໃນອັນຟາຫຼາຍກວ່າ 25 ເຟຣມທຳອິດຂອງວິດີໂອ:

fade=in:0:25:alpha=1

· ເຮັດ​ໃຫ້ 5.5 ວິນາທີ​ທໍາ​ອິດ​ເປັນ​ສີ​ດໍາ​, ຈາກ​ນັ້ນ​ຈາງ​ລົງ​ໃນ​ເວ​ລາ 0.5 ວິ​ນາ​ທີ​:

fade=t=in:st=5.5:d=0.5

fftfilt
ນຳໃຊ້ການສະແດງອອກຕາມລຳພັງໃຈກັບຕົວຢ່າງໃນໂດເມນຄວາມຖີ່

dc_Y
ປັບຄ່າ dc (ຮັບ) ຂອງຍົນ luma ຂອງຮູບ. ການກັ່ນຕອງຍອມຮັບ
ຄ່າຈຳນວນເຕັມໃນໄລຍະ 0 ຫາ 1000. ຄ່າເລີ່ມຕົ້ນຖືກຕັ້ງເປັນ 0.

dc_U
ປັບຄ່າ dc (ຮັບ) ຂອງຍົນ chroma ທີ 1 ຂອງຮູບ. ການກັ່ນຕອງຍອມຮັບ
ຄ່າຈຳນວນເຕັມໃນໄລຍະ 0 ຫາ 1000. ຄ່າເລີ່ມຕົ້ນຖືກຕັ້ງເປັນ 0.

dc_V
ປັບຄ່າ dc (ຮັບ) ຂອງຍົນ chroma ທີ 2 ຂອງຮູບ. ການກັ່ນຕອງຍອມຮັບ
ຄ່າຈຳນວນເຕັມໃນໄລຍະ 0 ຫາ 1000. ຄ່າເລີ່ມຕົ້ນຖືກຕັ້ງເປັນ 0.

ນ້ຳໜັກ_Y
ກໍານົດການສະແດງອອກນ້ໍາຫນັກໂດເມນຄວາມຖີ່ສໍາລັບຍົນ luma.

weight_U
ກຳນົດການສະແດງອອກນ້ຳໜັກຂອງໂດເມນຄວາມຖີ່ສຳລັບຍົນ chroma ທີ 1.

ນ້ຳໜັກ_V
ກໍານົດການສະແດງອອກນ້ໍາຫນັກຂອງໂດເມນຄວາມຖີ່ສໍາລັບຍົນ chroma ທີສອງ.

ຕົວກອງຍອມຮັບຕົວແປຕໍ່ໄປນີ້:

X
Y ຈຸດປະສານງານຂອງຕົວຢ່າງປະຈຸບັນ.

W
H ຄວາມກວ້າງແລະຄວາມສູງຂອງຮູບ.

ຕົວຢ່າງ

· ການ​ຜ່ານ​ສູງ​:

fftfilt=dc_Y=128:weight_Y='squish(1-(Y+X)/100)'

· low-pass:

fftfilt=dc_Y=0:weight_Y='squish((Y+X)/100-1)'

· ແຫຼມ:

fftfilt=dc_Y=0:weight_Y='1+squish(1-(Y+X)/100)'

ພາກສະຫນາມ
ສະກັດຊ່ອງຂໍ້ມູນດຽວຈາກຮູບພາບທີ່ຊ້ອນກັນໂດຍໃຊ້ເລກເລກຂັ້ນໄດເພື່ອຫຼີກເວັ້ນການເສຍເງິນ
ເວລາ CPU. ກອບຜົນຜະລິດຖືກໝາຍວ່າບໍ່ຕິດກັນ.

ຕົວກອງຍອມຮັບຕົວເລືອກຕໍ່ໄປນີ້:

ປະເພດ
ລະບຸວ່າຈະສະກັດດ້ານເທິງ (ຖ້າຄ່າແມ່ນ 0 ຫຼື "ເທິງ") ຫຼືຊ່ອງຂໍ້ມູນລຸ່ມສຸດ
(ຖ້າຄ່າແມ່ນ 1 ຫຼື "ລຸ່ມ").

ການແຂ່ງຂັນສະໜາມ
ການກັ່ນຕອງການຈັບຄູ່ພາກສະຫນາມສໍາລັບ telecine ປີ້ນກັນ. ມັນຫມາຍຄວາມວ່າຈະສ້າງຄືນໃຫມ່ຄວາມກ້າວຫນ້າ
ເຟຣມຈາກກະແສໂທລະທັດ. ການກັ່ນຕອງບໍ່ລຸດລົງກອບທີ່ຊ້ໍາກັນ, ດັ່ງນັ້ນເພື່ອບັນລຸ
telecine inverse "fieldmatch" ທີ່ສົມບູນຕ້ອງໄດ້ຮັບການປະຕິບັດຕາມໂດຍການກັ່ນຕອງການ decimation ເຊັ່ນ
as ນິຍົມ ໃນ filtergraph.

ການ​ແຍກ​ຕົວ​ຂອງ​ການ​ຈັບ​ຄູ່​ພາກ​ສະ​ຫນາມ​ແລະ​ການ​ຕັດ​ສິນ​ໃຈ​ໂດຍ​ສະ​ເພາະ​ແມ່ນ​ການ​ຊຸກ​ຍູ້​
ຄວາມເປັນໄປໄດ້ຂອງການໃສ່ຕົວກອງ de-interlacing fallback ລະຫວ່າງທັງສອງ. ຖ້າແຫຼ່ງ
ມີເນື້ອໃນ telecined ປະສົມແລະ interlaced ທີ່ແທ້ຈິງ, "fieldmatch" ຈະບໍ່ສາມາດຈັບຄູ່ໄດ້
ທົ່ງນາສໍາລັບພາກສ່ວນ interlaced. ແຕ່ກອບ combed ທີ່ຍັງເຫຼືອເຫຼົ່ານີ້ຈະຖືກຫມາຍເປັນ
interlaced, ແລະດັ່ງນັ້ນຈຶ່ງສາມາດໄດ້ຮັບການ de-interlaced ໂດຍການກັ່ນຕອງຕໍ່ມາເຊັ່ນ: ຢາດີຟ ກ່ອນທີ່ຈະ
ທົດສະນິຍົມ.

ນອກເຫນືອໄປຈາກທາງເລືອກໃນການຕັ້ງຄ່າຕ່າງໆ, "fieldmatch" ສາມາດໃຊ້ເວລາທີສອງທາງເລືອກ
stream, activated ຜ່ານ ppsrc ທາງເລືອກ. ຖ້າເປີດໃຊ້, ການສ້າງເຟຣມຄືນໃຫມ່ຈະເປັນ
ອີງໃສ່ທົ່ງນາ ແລະກອບຈາກກະແສທີສອງນີ້. ນີ້ອະນຸຍາດໃຫ້ປ້ອນຂໍ້ມູນທໍາອິດ
pre-processed ເພື່ອຊ່ວຍໃຫ້ algorithms ຕ່າງໆຂອງການກັ່ນຕອງ, ໃນຂະນະທີ່ຮັກສາ
ຜົນຜະລິດ lossless (ສົມມຸດວ່າທົ່ງນາຖືກຈັບຄູ່ຢ່າງຖືກຕ້ອງ). ໂດຍປົກກະຕິ, ການຮັບຮູ້ພາກສະຫນາມ
denoiser, ຫຼືການປັບຄວາມສະຫວ່າງ/ຄວາມຄົມຊັດສາມາດຊ່ວຍໄດ້.

ໃຫ້ສັງເກດວ່າການກັ່ນຕອງນີ້ໃຊ້ວິທີດຽວກັນກັບ TIVTC/TFM (ໂຄງການ AviSynth) ແລະ
VIVTC/VFM (ໂຄງການ VapourSynth). ຕໍ່ມາແມ່ນການໂຄນແສງສະຫວ່າງຂອງ TFM ທີ່ "ການແຂ່ງຂັນພາກສະຫນາມ"
ແມ່ນອີງໃສ່. ໃນຂະນະທີ່ semantic ແລະການນໍາໃຊ້ແມ່ນໃກ້ຊິດ, ບາງພຶດຕິກໍາແລະຊື່ທາງເລືອກ
ສາມາດແຕກຕ່າງກັນ.

ໄດ້ ນິຍົມ ປະຈຸບັນການກັ່ນຕອງເຮັດວຽກພຽງແຕ່ສໍາລັບການປ້ອນອັດຕາເຟຣມຄົງທີ່. ຖ້າຂໍ້ມູນຂອງທ່ານມີ
telecined ປະສົມ (30fps) ແລະເນື້ອຫາກ້າວຫນ້າທີ່ມີກອບຕ່ໍາເຊັ່ນ 24fps ໃຊ້
ຕໍ່ໄປນີ້ filterchain ເພື່ອຜະລິດກະແສ cfr ທີ່ຈໍາເປັນ:
"dejudder,fps=30000/1001,fieldmatch,decimate".

ຕົວກອງຍອມຮັບຕົວເລືອກຕໍ່ໄປນີ້:

ຄໍາສັ່ງ
ລະບຸຄໍາສັ່ງພາກສະຫນາມສົມມຸດຕິຖານຂອງກະແສການປ້ອນຂໍ້ມູນ. ຄ່າທີ່ມີຢູ່ແມ່ນ:

ອັດຕະໂນມັດ
ກວດຫາຄວາມສະເໝີພາບອັດຕະໂນມັດ (ໃຊ້ຄ່າ parity ພາຍໃນຂອງ FFmpeg).

BFF ສົມມຸດຊ່ອງລຸ່ມສຸດກ່ອນ.

tff ສົມມຸດຊ່ອງຂໍ້ມູນເທິງສຸດກ່ອນ.

ກະລຸນາຮັບຊາບວ່າບາງຄັ້ງມັນແນະນຳບໍ່ໃຫ້ເຊື່ອຄວາມສະເໝີພາບທີ່ປະກາດໂດຍກະແສ.

ຄ່າເລີ່ມຕົ້ນແມ່ນ ອັດຕະໂນມັດ.

ຮູບແບບການ
ກໍານົດຮູບແບບການຈັບຄູ່ຫຼືຍຸດທະສາດທີ່ຈະໃຊ້. pc ໂຫມດແມ່ນປອດໄພທີ່ສຸດໃນຄວາມຫມາຍວ່າມັນ
ຈະບໍ່ມີຄວາມສ່ຽງຕໍ່ການສ້າງ jerkiness ເນື່ອງຈາກກອບຊ້ໍາກັນໃນເວລາທີ່ເປັນໄປໄດ້, ແຕ່ຖ້າຫາກວ່າມີ
ການແກ້ໄຂທີ່ບໍ່ດີຫຼືພາກສະຫນາມປະສົມມັນຈະສິ້ນສຸດເຖິງການອອກກອບ combed ເມື່ອການແຂ່ງຂັນທີ່ດີ
ຕົວຈິງແລ້ວອາດຈະມີຢູ່. ໃນທາງກົງກັນຂ້າມ, pcn_ub ໂຫມດແມ່ນມີຄວາມສ່ຽງຫຼາຍທີ່ສຸດໃນແງ່ຂອງ
ສ້າງຄວາມກະຕືລືລົ້ນ, ແຕ່ເກືອບສະເຫມີຈະຊອກຫາກອບທີ່ດີຖ້າມີ. ໄດ້
ຄ່າອື່ນໆແມ່ນຢູ່ບ່ອນໃດບ່ອນໜຶ່ງລະຫວ່າງ pc ແລະ pcn_ub ໃນແງ່ຂອງຄວາມສ່ຽງຕໍ່ການ jerkiness
ແລະການສ້າງກອບທີ່ຊ້ໍາກັນກັບການຊອກຫາຄໍາທີ່ກົງກັນໃນພາກສ່ວນທີ່ມີການແກ້ໄຂທີ່ບໍ່ດີ,
ທົ່ງນາເດັກກຳພ້າ, ທົ່ງນາປະສົມ, ແລະອື່ນໆ.

ລາຍລະອຽດເພີ່ມເຕີມກ່ຽວກັບ p/c/n/u/b ແມ່ນມີຢູ່ໃນ p/c/n/u/b ຊຶ່ງຫມາຍຄວາມວ່າ ສ່ວນ.

ຄ່າທີ່ມີຢູ່ແມ່ນ:

pc ການຈັບຄູ່ 2 ທາງ (p/c)

pc_n
ການ​ຈັບ​ຄູ່ 2 ທາງ, ແລະ​ພະ​ຍາ​ຍາມ​ການ​ແຂ່ງ​ຂັນ​ທີ 3 ຖ້າ​ຫາກ​ວ່າ​ຍັງ combed (p/c + n)

pc_u
ການ​ຈັບ​ຄູ່ 2 ທາງ, ແລະ​ພະ​ຍາ​ຍາມ​ການ​ແຂ່ງ​ຂັນ​ທີ 3 (ຄໍາ​ສັ່ງ​ດຽວ​ກັນ​) ຖ້າ​ຫາກ​ວ່າ​ຍັງ combed (p/c + u​)

pc_n_ub
ການ​ແຂ່ງ​ຂັນ 2 ທາງ, ລອງ​ແຂ່ງ​ຂັນ​ທີ 3 ຖ້າ​ຫາກ​ວ່າ​ຍັງ combed, ແລະ​ພະ​ຍາ​ຍາມ​ການ​ແຂ່ງ​ຂັນ​ທີ 4/5 ຖ້າ
ຍັງ combed (p/c + n + u/b)

pcn ການຈັບຄູ່ 3 ທາງ (p/c/n)

pcn_ub
ການຈັບຄູ່ແບບ 3 ທາງ, ແລະພະຍາຍາມຈັບຄູ່ທີ 4/5 ຖ້າທັງໝົດ 3 ຄູ່ທີ່ກົງກັນ
ກວດພົບວ່າເປັນຫວີ (p/c/n + u/b)

ວົງເລັບຢູ່ທ້າຍຊີ້ບອກການຈັບຄູ່ທີ່ຈະໃຊ້ສຳລັບໂໝດນັ້ນ
assuming ຄໍາສັ່ງ=tff (ແລະ ພາກສະຫນາມ on ອັດຕະໂນມັດ or top).

ໃນແງ່ຂອງຄວາມໄວ pc ຮູບ​ແບບ​ແມ່ນ​ໂດຍ​ໄກ​ທີ່​ໄວ​ທີ່​ສຸດ​ແລະ​ pcn_ub ແມ່ນຊ້າທີ່ສຸດ.

ຄ່າເລີ່ມຕົ້ນແມ່ນ pc_n.

ppsrc
ໝາຍກະແສການປ້ອນຂໍ້ມູນຫຼັກເປັນການປ້ອນຂໍ້ມູນກ່ອນການປະມວນຜົນ, ແລະເປີດໃຊ້ການປ້ອນຂໍ້ມູນສຳຮອງ
ຖ່າຍທອດເປັນແຫຼ່ງທີ່ສະອາດເພື່ອເລືອກທົ່ງນາ. ເບິ່ງການແນະນໍາການກັ່ນຕອງສໍາລັບ
ລາຍ​ລະ​ອຽດ​ເພີ່ມ​ເຕີມ. ມັນຄ້າຍຄືກັນກັບ ຄລິບ 2 ຄຸນສົມບັດຈາກ VFM/TFM.

ຄ່າເລີ່ມຕົ້ນແມ່ນ 0 (ປິດໃຊ້ງານ).

ພາກສະຫນາມ
ກໍານົດພາກສະຫນາມເພື່ອຈັບຄູ່ຈາກ. ຂໍແນະນຳໃຫ້ຕັ້ງຄ່ານີ້ເປັນຄ່າດຽວກັນກັບ ຄໍາສັ່ງ
ເວັ້ນເສຍແຕ່ວ່າທ່ານປະສົບກັບຄວາມລົ້ມເຫລວທີ່ກົງກັນກັບການຕັ້ງຄ່ານັ້ນ. ໃນບາງສະຖານະການ
ການປ່ຽນແປງພາກສະຫນາມທີ່ຖືກນໍາໃຊ້ເພື່ອຈັບຄູ່ຈາກສາມາດມີຜົນກະທົບຢ່າງຫຼວງຫຼາຍຕໍ່ການຈັບຄູ່
ການປະຕິບັດ. ຄ່າທີ່ມີຢູ່ແມ່ນ:

ອັດຕະໂນມັດ
ອັດຕະໂນມັດ (ຄ່າດຽວກັນກັບ ຄໍາສັ່ງ).

ທາງລຸ່ມ
ແຂ່ງຂັນຈາກພາກສະຫນາມລຸ່ມ.

top ການແຂ່ງຂັນຈາກພາກສະຫນາມເທິງ.

ຄ່າເລີ່ມຕົ້ນແມ່ນ ອັດຕະໂນມັດ.

mchroma
ກໍານົດວ່າຈະລວມເອົາ chroma ຫຼືບໍ່ໃນລະຫວ່າງການປຽບທຽບການແຂ່ງຂັນ. ໃນກໍລະນີຫຼາຍທີ່ສຸດ, ມັນ
ແນະນຳໃຫ້ເປີດສິ່ງນີ້. ທ່ານ​ຄວນ​ຈະ​ຕັ້ງ​ຄ່າ​ນີ້​ເປັນ 0 ພຽງ​ແຕ່​ຖ້າ​ຫາກ​ວ່າ clip ຂອງ​ທ່ານ​ມີ​
ບັນຫາ chroma ທີ່ບໍ່ດີເຊັ່ນ: rainbowing ຫນັກຫຼືຂອງປອມອື່ນໆ. ການ​ຕັ້ງ​ຄ່າ​ນີ້​ເປັນ 0​
ຍັງສາມາດຖືກນໍາໃຊ້ເພື່ອເລັ່ງສິ່ງຕ່າງໆໂດຍຄ່າໃຊ້ຈ່າຍຂອງຄວາມຖືກຕ້ອງບາງຢ່າງ.

ຄ່າເລີ່ມຕົ້ນແມ່ນ 1.

y0
y1 ເຫຼົ່ານີ້ກໍານົດແຖບການຍົກເວັ້ນເຊິ່ງຍົກເວັ້ນເສັ້ນລະຫວ່າງ y0 ແລະ y1 ຈາກການເປັນ
ລວມຢູ່ໃນການຕັດສິນໃຈຂອງການແຂ່ງຂັນພາກສະຫນາມ. ແຖບການຍົກເວັ້ນສາມາດຖືກນໍາໃຊ້ເພື່ອບໍ່ສົນໃຈ
ຄໍາບັນຍາຍ, ໂລໂກ້, ຫຼືສິ່ງອື່ນໆທີ່ອາດຈະຂັດຂວາງການຈັບຄູ່. y0 ກໍານົດ
ເລີ່ມສາຍສະແກນ ແລະ y1 ກໍານົດເສັ້ນສິ້ນສຸດ; ເສັ້ນທັງຫມົດໃນລະຫວ່າງ y0 ແລະ y1
(ລວມທັງ y0 ແລະ y1) ຈະ​ຖືກ​ລະ​ເລີຍ​. ການຕັ້ງຄ່າ y0 ແລະ y1 ກັບມູນຄ່າດຽວກັນຈະ
ປິດການທໍາງານຄຸນນະສົມບັດ. y0 ແລະ y1 ຄ່າເລີ່ມຕົ້ນເປັນ 0.

ຂູດ
ກໍານົດຂອບເຂດການກວດສອບການປ່ຽນແປງ scene ເປັນເປີເຊັນຂອງການປ່ຽນແປງສູງສຸດໃນ luma
ຍົນ. ຄ່າທີ່ດີຢູ່ໃນຂອບເຂດ "[8.0, 14.0]". ການກວດຫາການປ່ຽນແປງສາກແມ່ນພຽງແຕ່
ທີ່ກ່ຽວຂ້ອງໃນກໍລະນີ ການ​ຕໍ່​ສູ້=sc. ຂອບເຂດສໍາລັບ ຂູດ ແມ່ນ "[0.0, 100.0]".

ຄ່າເລີ່ມຕົ້ນແມ່ນ 12.0.

ການ​ຕໍ່​ສູ້
ເມື່ອ​ໃດ​ ການ​ຕໍ່​ສູ້ ບໍ່​ແມ່ນ none, "fieldmatch" ຈະຄໍານຶງເຖິງຄະແນນ combed ຂອງ
ກົງກັນໃນເວລາຕັດສິນໃຈວ່າຈະໃຊ້ຄູ່ໃດເປັນນັດສຸດທ້າຍ. ຄ່າທີ່ມີຢູ່ແມ່ນ:

none
ບໍ່ມີການແຂ່ງຂັນສຸດທ້າຍໂດຍອີງໃສ່ຄະແນນ combed.

sc ຄະແນນ combed ແມ່ນໃຊ້ພຽງແຕ່ເມື່ອມີການກວດພົບການປ່ຽນແປງ scene.

ຢ່າງເຕັມທີ່
ໃຊ້ຄະແນນ combed ຕະຫຼອດເວລາ.

ເລີ່ມຕົ້ນແມ່ນ sc.

combdbg
ບັງຄັບ "fieldmatch" ເພື່ອຄິດໄລ່ metrics combed ສໍາລັບການແຂ່ງຂັນທີ່ແນ່ນອນແລະພິມໃຫ້ເຂົາເຈົ້າ.
ການຕັ້ງຄ່ານີ້ເອີ້ນວ່າ ໄມອອກ ໃນຄໍາສັບ TFM/VFM. ຄ່າທີ່ມີຢູ່ແມ່ນ:

none
ບໍ່ມີການຄິດໄລ່ບັງຄັບ.

pcn ບັງຄັບການຄິດໄລ່ p/c/n.

pcnub
ບັງຄັບການຄິດໄລ່ p/c/n/u/b.

ຄ່າເລີ່ມຕົ້ນແມ່ນ none.

cthresh
ນີ້ແມ່ນຂອບເຂດ combing ພື້ນທີ່ທີ່ໃຊ້ສໍາລັບການກວດພົບກອບຂອງ combed. ນີ້ເປັນສິ່ງຈໍາເປັນ
ຄວບຄຸມວິທີການ "ແຂງແຮງ" ຫຼື "ເບິ່ງເຫັນ" combing ຕ້ອງຖືກກວດພົບ. ຄ່າໃຫຍ່ກວ່າໝາຍເຖິງ
combing ຕ້ອງໄດ້ຮັບການສັງເກດເຫັນຫຼາຍແລະຄ່າຂະຫນາດນ້ອຍກວ່າຫມາຍຄວາມວ່າ combing ສາມາດເຫັນໄດ້ຫນ້ອຍຫຼື
ແຂງແຮງ ແລະຍັງຖືກກວດພົບ. ການຕັ້ງຄ່າທີ່ຖືກຕ້ອງແມ່ນມາຈາກ "-1" (ທຸກໆ pixels ຈະເປັນ
ກວດພົບວ່າເປັນ combed) ເຖິງ 255 (ບໍ່ມີ pixels ຈະຖືກກວດພົບວ່າເປັນ combed). ນີ້ແມ່ນພື້ນຖານ a
ຄ່າຄວາມແຕກຕ່າງຂອງ pixels ລວງ. ລະດັບທີ່ດີແມ່ນ "[8, 12]".

ຄ່າເລີ່ມຕົ້ນແມ່ນ 9.

ໂຄລາ
ກໍານົດວ່າຈະພິຈາລະນາຫຼືບໍ່ chroma ໃນການຕັດສິນໃຈກອບຂອງ combed. ພຽງແຕ່ປິດການໃຊ້ງານ
ນີ້ຖ້າແຫຼ່ງຂອງທ່ານມີບັນຫາ chroma (ສາຍຮຸ້ງ, ແລະອື່ນໆ) ທີ່ເຮັດໃຫ້ເກີດບັນຫາ
ສໍາລັບການຊອກຄົ້ນຫາກອບຂອງ combed ກັບ chroma ເປີດ. ໃນຄວາມເປັນຈິງ, ການນໍາໃຊ້ ໂຄລາ=0 is
ປົກກະຕິແລ້ວທີ່ເຊື່ອຖືໄດ້ຫຼາຍ, ຍົກເວັ້ນສໍາລັບກໍລະນີທີ່ມີ chroma ພຽງແຕ່ combing ໃນ
ແຫຼ່ງ.

ຄ່າເລີ່ມຕົ້ນແມ່ນ 0.

blockx
ອຸດຕັນ
ຕາມລໍາດັບກໍານົດຂະຫນາດແກນ x ແລະແກນ y ຂອງປ່ອງຢ້ຽມທີ່ໃຊ້ໃນກອບ combed
ການກວດຫາ. ນີ້ຕ້ອງເຮັດກັບຂະຫນາດຂອງພື້ນທີ່ທີ່ Combpel pixels ແມ່ນ
ຈໍາເປັນຕ້ອງໄດ້ກວດພົບວ່າເປັນ combed ສໍາລັບກອບທີ່ຈະປະກາດເປັນ combed. ເບິ່ງ Combpel
ຄໍາອະທິບາຍພາລາມິເຕີສໍາລັບຂໍ້ມູນເພີ່ມເຕີມ. ຄ່າທີ່ເປັນໄປໄດ້ແມ່ນຕົວເລກໃດນຶ່ງທີ່ເປັນພະລັງງານ
ຂອງ 2 ເລີ່ມຈາກ 4 ແລະເພີ່ມຂຶ້ນເຖິງ 512.

ຄ່າເລີ່ມຕົ້ນແມ່ນ 16.

Combpel
ຈໍານວນຂອງ pixels combed ພາຍໃນໃດໆຂອງ ອຸດຕັນ by blockx ຕັນຂະຫນາດກ່ຽວກັບ
ກອບສໍາລັບກອບທີ່ຈະກວດພົບວ່າເປັນ combed. ໃນຂະນະທີ່ cthresh ຄວບຄຸມວິທີການ "ເບິ່ງເຫັນ" ໄດ້
combing ຈະຕ້ອງເປັນ, ການຕັ້ງຄ່ານີ້ຄວບຄຸມ "ຫຼາຍປານໃດ" combing ຕ້ອງມີຢູ່ໃນໃດ
ພື້ນທີ່ທ້ອງຖິ່ນ (ປ່ອງຢ້ຽມທີ່ກໍານົດໂດຍ blockx ແລະ ອຸດຕັນ ການ​ຕັ້ງ​ຄ່າ​) ໃນ​ກອບ​.
ຄ່າຕໍາ່ສຸດແມ່ນ 0 ແລະສູງສຸດແມ່ນ "blocky x blockx" (ໃນຈຸດນັ້ນບໍ່ມີກອບ
ເຄີຍຖືກກວດພົບວ່າເປັນ combed). ການຕັ້ງຄ່ານີ້ຖືກເອີ້ນວ່າ MI ໃນຄໍາສັບ TFM/VFM.

ຄ່າເລີ່ມຕົ້ນແມ່ນ 80.

p/c/n/u/b ຊຶ່ງຫມາຍຄວາມວ່າ

p/c/n

ພວກເຮົາສົມມຸດວ່າກະແສໂທລະທັດຕໍ່ໄປນີ້:

ດ້ານເທິງ: 1 2 2 3 4
ຊ່ອງລຸ່ມສຸດ: 1 2 3 4 4

ຕົວເລກກົງກັບກອບຄວາມຄືບໜ້າຂອງຊ່ອງຂໍ້ມູນທີ່ກ່ຽວຂ້ອງ. ນີ້, ສອງຄັ້ງທໍາອິດ
ເຟຣມມີຄວາມຄືບຫນ້າ, ທີ 3 ແລະ 4 ແມ່ນ combed, ແລະອື່ນໆ.

ເມື່ອ "fieldmatch" ຖືກຕັ້ງຄ່າໃຫ້ດໍາເນີນການຈັບຄູ່ຈາກລຸ່ມ (ພາກສະຫນາມ=ທາງລຸ່ມ) ນີ້​ແມ່ນ​ວິ​ທີ​ການ​
ກະແສການປ້ອນຂໍ້ມູນນີ້ໄດ້ຮັບການຫັນປ່ຽນ:

ການປ້ອນຂໍ້ມູນ:
ທ 1 2 2 3 4
B 1 2 3 4 4 <-- ການອ້າງອີງທີ່ກົງກັນ

ການແຂ່ງຂັນ: ccnnc

ກະແສອອກ:
ທ 1 2 3 4 4
B 1 2 3 4 4

ເນື່ອງຈາກການຈັບຄູ່ພາກສະຫນາມ, ພວກເຮົາສາມາດເຫັນໄດ້ວ່າບາງກອບຖືກຊ້ໍາກັນ. ເພື່ອປະຕິບັດ
telecine inverse ສົມບູນ, ທ່ານຈໍາເປັນຕ້ອງໄດ້ອີງໃສ່ການກັ່ນຕອງ decimation ຫຼັງຈາກການດໍາເນີນງານນີ້.
ເບິ່ງຕົວຢ່າງເຊັ່ນ ນິຍົມ ຕົວກອງ

ການ​ດໍາ​ເນີນ​ງານ​ດຽວ​ກັນ​ໃນ​ປັດ​ຈຸ​ບັນ​ການ​ຈັບ​ຄູ່​ຈາກ​ຊ່ອງ​ທາງ​ເທິງ (ພາກສະຫນາມ=top) ເບິ່ງ​ຄື​ນີ້​:

ການປ້ອນຂໍ້ມູນ:
T 1 2 2 3 4 <-- ການອ້າງອີງທີ່ກົງກັນ
B 1 2 3 4 4

ການແຂ່ງຂັນ: ccppc

ກະແສອອກ:
ທ 1 2 2 3 4
B 1 2 2 3 4

ໃນຕົວຢ່າງເຫຼົ່ານີ້, ພວກເຮົາສາມາດເຫັນສິ່ງທີ່ p, c ແລະ n ຫມາຍຄວາມວ່າ; ໂດຍພື້ນຖານແລ້ວ, ພວກເຂົາຫມາຍເຖິງກອບແລະ
ພາກສະຫນາມຂອງ parity ກົງກັນຂ້າມ:

*<p ກົງກັບພາກສະຫນາມຂອງ parity ກົງກັນຂ້າມໃນກອບທີ່ຜ່ານມາ>
*<c ກົງກັບພາກສະຫນາມຂອງ parity ກົງກັນຂ້າມໃນກອບປະຈຸບັນ>
*<n ກົງກັບພາກສະຫນາມຂອງ parity ກົງກັນຂ້າມໃນກອບຕໍ່ໄປ>

u/b

ໄດ້ u ແລະ b ການຈັບຄູ່ແມ່ນມີຄວາມພິເສດເລັກນ້ອຍໃນຄວາມຮູ້ສຶກທີ່ພວກເຂົາຈັບຄູ່ຈາກກົງກັນຂ້າມ
ທຸງ parity. ໃນຕົວຢ່າງຕໍ່ໄປນີ້, ພວກເຮົາສົມມຸດວ່າພວກເຮົາກໍາລັງຈັບຄູ່ 2 ໃນປະຈຸບັນ
ຂອບ (ເທິງ:2, ລຸ່ມ:2). ອີງຕາມການຈັບຄູ່, a 'x' ແມ່ນຖືກຈັດໃສ່ຂ້າງເທິງແລະຂ້າງລຸ່ມນີ້ແຕ່ລະຄົນ
ຊ່ອງທີ່ກົງກັນ.

ດ້ວຍການຈັບຄູ່ລຸ່ມ (ພາກສະຫນາມ=ທາງລຸ່ມ):

ການແຂ່ງຂັນ: cpnbu

xxxxx
ອັນດັບ 1 2 2 1 2 2 1 2 2 1 2 2 1 2 2
ລຸ່ມ 1 2 3 1 2 3 1 2 3 1 2 3 1 2 3
xxxxx

ກອບຜົນຜະລິດ:
2 1 2 2 2
2 2 2 1 3

ມີ​ການ​ຈັບ​ຄູ່​ທາງ​ເທິງ (ພາກສະຫນາມ=top):

ການແຂ່ງຂັນ: cpnbu

xxxxx
ອັນດັບ 1 2 2 1 2 2 1 2 2 1 2 2 1 2 2
ລຸ່ມ 1 2 3 1 2 3 1 2 3 1 2 3 1 2 3
xxxxx

ກອບຜົນຜະລິດ:
2 2 2 1 2
2 1 3 2 2

ຕົວຢ່າງ

IVTC ງ່າຍດາຍຂອງຊ່ອງເທິງສຸດສາຍນ້ໍາທໍາອິດ telecined:

fieldmatch=order=tff:combmatch=none, decimate

Advanced IVTC, ດ້ວຍການຕອບໂຕ້ຄືນ ຢາດີຟ ສໍາລັບກອບ combed ຍັງ:

fieldmatch=order=tff:combmatch=full, yadif=deint=interlaced, ຕັດ​ສິນ​ໃຈ

ຄໍາສັ່ງພາກສະຫນາມ
ຫັນປ່ຽນຄໍາສັ່ງພາກສະຫນາມຂອງວິດີໂອປ້ອນຂໍ້ມູນ.

ມັນຍອມຮັບຕົວກໍານົດການດັ່ງຕໍ່ໄປນີ້:

ຄໍາສັ່ງ
ຄໍາສັ່ງພາກສະຫນາມຜົນຜະລິດ. ຄ່າທີ່ຖືກຕ້ອງແມ່ນ tff ສໍາລັບພາກສະຫນາມເທິງທໍາອິດຫຼື BFF ສໍາລັບລຸ່ມ
ພາກສະຫນາມທໍາອິດ.

ຄ່າເລີ່ມຕົ້ນແມ່ນ tff.

ການ​ຫັນ​ປ່ຽນ​ແມ່ນ​ເຮັດ​ໄດ້​ໂດຍ​ການ​ປ່ຽນ​ເນື້ອ​ໃນ​ຮູບ​ພາບ​ຂຶ້ນ​ຫຼື​ລົງ​ໂດຍ​ເສັ້ນ​ຫນຶ່ງ​, ແລະ​
ຕື່ມເສັ້ນທີ່ຍັງເຫຼືອດ້ວຍເນື້ອໃນຮູບພາບທີ່ເຫມາະສົມ. ວິທີການນີ້ແມ່ນສອດຄ່ອງ
ກັບຕົວແປງຄໍາສັ່ງພາກສະໜາມອອກອາກາດສ່ວນໃຫຍ່.

ຖ້າ​ວິ​ດີ​ໂອ​ການ​ປ້ອນ​ຂໍ້​ມູນ​ບໍ່​ໄດ້​ຖືກ​ຫມາຍ​ວ່າ​ເປັນ interlaced​, ຫຼື​ມັນ​ໄດ້​ຖືກ​ຫມາຍ​ແລ້ວ​ວ່າ​ເປັນ​
ຂອງຄໍາສັ່ງພາກສະຫນາມຜົນຜະລິດທີ່ກໍານົດໄວ້, ຫຼັງຈາກນັ້ນການກັ່ນຕອງນີ້ບໍ່ປ່ຽນແປງວິດີໂອທີ່ເຂົ້າມາ.

ມັນເປັນປະໂຫຍດຫຼາຍໃນເວລາທີ່ປ່ຽນເປັນຫຼືຈາກວັດສະດຸ PAL DV, ເຊິ່ງເປັນພາກສະຫນາມລຸ່ມທໍາອິດ.

ຍົກ​ຕົວ​ຢ່າງ:

ffmpeg -i in.vob -vf "fieldorder=bff" out.dv

ຟີໂຟ
Buffer ປ້ອນຮູບພາບແລະສົ່ງໃຫ້ເຂົາເຈົ້າໃນເວລາທີ່ເຂົາເຈົ້າໄດ້ຖືກຮ້ອງຂໍ.

ມັນເປັນປະໂຫຍດສ່ວນໃຫຍ່ເມື່ອໃສ່ອັດຕະໂນມັດໂດຍກອບຂອງ libavfilter.

ມັນບໍ່ໄດ້ໃຊ້ຕົວກໍານົດການ.

find_rect
ຊອກຫາວັດຖຸສີ່ຫລ່ຽມ

ມັນຍອມຮັບທາງເລືອກຕໍ່ໄປນີ້:

ຈຸດ​ປະ​ສົງ
Filepath ຂອງຮູບພາບວັດຖຸ, ຈໍາເປັນຕ້ອງຢູ່ໃນສີຂີ້ເຖົ່າ 8.

threshold
ເກນການກວດສອບ, ຄ່າເລີ່ມຕົ້ນແມ່ນ 0.5.

ແຜນທີ່
ຈໍານວນ mipmaps, ຄ່າເລີ່ມຕົ້ນແມ່ນ 3.

xmin, ymin, xmax, ymax
ລະບຸຮູບສີ່ຫລ່ຽມທີ່ຈະຄົ້ນຫາ.

ຕົວຢ່າງ

· ສ້າງ palette ຕົວ​ແທນ​ຂອງ​ວິ​ດີ​ໂອ​ໄດ້​ຮັບ​ການ​ນໍາ​ໃຊ້​ ffmpeg:

ffmpeg -i file.ts -vf find_rect=newref.pgm,cover_rect=cover.jpg:mode=cover new.mkv

cover_rect
ກວມເອົາວັດຖຸສີ່ຫລ່ຽມ

ມັນຍອມຮັບທາງເລືອກຕໍ່ໄປນີ້:

ການປົກຫຸ້ມຂອງ
Filepath ຂອງຮູບພາບການປົກຫຸ້ມຂອງທາງເລືອກ, ຈໍາເປັນຕ້ອງຢູ່ໃນ yuv420.

ຮູບແບບການ
ຕັ້ງຮູບແບບການປົກຫຸ້ມ.

ມັນຍອມຮັບຄ່າດັ່ງຕໍ່ໄປນີ້:

ການປົກຫຸ້ມຂອງ
ກວມເອົາມັນໂດຍຮູບພາບທີ່ສະຫນອງ

ເຮັດໃຫ້ມົວ
ກວມເອົາມັນໂດຍການແຊກແຊງ pixels ອ້ອມຂ້າງ

ຄ່າເລີ່ມຕົ້ນແມ່ນ ເຮັດໃຫ້ມົວ.

ຕົວຢ່າງ

· ສ້າງ palette ຕົວ​ແທນ​ຂອງ​ວິ​ດີ​ໂອ​ໄດ້​ຮັບ​ການ​ນໍາ​ໃຊ້​ ffmpeg:

ffmpeg -i file.ts -vf find_rect=newref.pgm,cover_rect=cover.jpg:mode=cover new.mkv

ຮູບແບບ
ແປງ​ວິ​ດີ​ໂອ​ການ​ປ້ອນ​ຂໍ້​ມູນ​ເປັນ​ຫນຶ່ງ​ໃນ​ຮູບ​ແບບ pixel ທີ່​ກໍາ​ນົດ​ໄວ້​. Libavfilter ຈະພະຍາຍາມ
ເລືອກອັນໜຶ່ງທີ່ເໝາະສົມເປັນການປ້ອນຂໍ້ມູນໃສ່ຕົວກອງຕໍ່ໄປ.

ມັນຍອມຮັບຕົວກໍານົດການດັ່ງຕໍ່ໄປນີ້:

pix_fmts
A '|'-separated list of pixels format names, ເຊັ່ນ: "pix_fmts=yuv420p|monow|rgb24".

ຕົວຢ່າງ

· ແປງ​ວິ​ດີ​ໂອ​ການ​ປ້ອນ​ຂໍ້​ມູນ​ກັບ​ yuv420p ຮູບແບບ

format=pix_fmts=yuv420p

ແປງ​ວິ​ດີ​ໂອ​ການ​ປ້ອນ​ຂໍ້​ມູນ​ກັບ​ຮູບ​ແບບ​ໃດ​ຫນຶ່ງ​ໃນ​ບັນ​ຊີ​ລາຍ​ການ​

format=pix_fmts=yuv420p|yuv444p|yuv410p

ເຟມຕໍ່ວິນາ
ແປງວິດີໂອເປັນອັດຕາເຟຣມຄົງທີ່ທີ່ລະບຸໄວ້ໂດຍການຊໍ້າກັນ ຫຼືຫຼຸດລົງເຟຣມເປັນ
ຈໍາເປັນ.

ມັນຍອມຮັບຕົວກໍານົດການດັ່ງຕໍ່ໄປນີ້:

ເຟມຕໍ່ວິນາ ອັດຕາກອບຜົນຜະລິດທີ່ຕ້ອງການ. ຄ່າເລີ່ມຕົ້ນແມ່ນ 25.

ໄດ້ຕະຫຼອດ
ວິທີການຮອບ.

ຄ່າທີ່ເປັນໄປໄດ້ແມ່ນ:

ສູນ
ຮອບສູນໄປສູ່ 0

inf ຮອບຫ່າງຈາກ 0

ລົງ
ຮອບໄປສູ່ -infinity

up ຮອບໄປສູ່ +infinity

ຢູ່ໃກ້
ຮອບໄປຫາໃກ້ທີ່ສຸດ

ຄ່າເລີ່ມຕົ້ນແມ່ນ "ຢູ່ໃກ້".

start_time
ສົມມຸດວ່າ PTS ທໍາອິດຄວນຈະເປັນຄ່າທີ່ໃຫ້, ໃນວິນາທີ. ນີ້ອະນຸຍາດໃຫ້ສໍາລັບ
padding/trimming ໃນຕອນເລີ່ມຕົ້ນຂອງການຖ່າຍທອດ. ໂດຍຄ່າເລີ່ມຕົ້ນ, ບໍ່ມີການສົມມຸດຕິຖານໃດໆກ່ຽວກັບ
PTS ຄາດໄວ້ຂອງເຟຣມທໍາອິດ, ດັ່ງນັ້ນບໍ່ມີ padding ຫຼື trimming ແມ່ນສໍາເລັດ. ຕົວຢ່າງ, ນີ້
ສາມາດຖືກຕັ້ງເປັນ 0 ເພື່ອ pad ເລີ່ມຕົ້ນດ້ວຍການຊ້ໍາກັນຂອງກອບທໍາອິດຖ້າຫາກວ່າວິດີໂອ
ການຖ່າຍທອດເລີ່ມຕົ້ນຫຼັງຈາກການຖ່າຍທອດສຽງ ຫຼືເພື່ອຕັດຂອບໃດໆດ້ວຍ PTS ລົບ.

ອີກທາງເລືອກ, ທາງເລືອກສາມາດຖືກກໍານົດເປັນສາຍແປ: ເຟມຕໍ່ວິນາ[:ໄດ້ຕະຫຼອດ].

ເບິ່ງອີກ setpts ຕົວກອງ

ຕົວຢ່າງ

· ການ​ນໍາ​ໃຊ້​ປົກ​ກະ​ຕິ​ເພື່ອ​ກໍາ​ນົດ fps ເປັນ 25​:

fps=fps=25

· ກຳນົດ fps ເປັນ 24, ໂດຍໃຊ້ຕົວຫຍໍ້ ແລະວິທີການຮອບເພື່ອຮອບໄປຫາໃກ້ທີ່ສຸດ:

fps=fps=film:round=ໃກ້

ກອບ
ບັນຈຸສອງສະຕຣີມວິດີໂອທີ່ແຕກຕ່າງກັນເຂົ້າໄປໃນວິດີໂອ stereoscopic, ຕັ້ງຄ່າ metadata ທີ່ເຫມາະສົມ
ຕົວແປງສັນຍານທີ່ຮອງຮັບ. ທັງສອງມຸມເບິ່ງຄວນຈະມີຂະຫນາດດຽວກັນແລະກອບແລະການປຸງແຕ່ງ
ຈະຢຸດເມື່ອວິດີໂອສັ້ນກວ່າສິ້ນສຸດລົງ. ກະ​ລຸ​ນາ​ສັງ​ເກດ​ວ່າ​ທ່ານ​ສາ​ມາດ​ປັບ​ການ​ເບິ່ງ​ໄດ້​ຢ່າງ​ສະ​ດວກ​
ຄຸນ​ສົມ​ບັດ​ທີ່​ມີ​ ຂະຫນາດ ແລະ ເຟມຕໍ່ວິນາ ຕົວກອງ

ມັນຍອມຮັບຕົວກໍານົດການດັ່ງຕໍ່ໄປນີ້:

ຮູບແບບ
ຮູບແບບການຫຸ້ມຫໍ່ທີ່ຕ້ອງການ. ຄ່າ​ທີ່​ສະ​ຫນັບ​ສະ​ຫນູນ​ແມ່ນ​:

sbs ມຸມເບິ່ງຢູ່ຂ້າງກັນ (ຄ່າເລີ່ມຕົ້ນ).

ແຖບ ທັດສະນະແມ່ນຢູ່ເທິງສຸດຂອງກັນແລະກັນ.

ສາຍ
ທັດສະນະແມ່ນເຕັມໄປດ້ວຍເສັ້ນ.

ຄໍລໍາ
ທັດສະນະແມ່ນບັນຈຸໂດຍຖັນ.

frameseq
ທັດສະນະຖືກແຊກແຊງຊົ່ວຄາວ.

ບາງຕົວຢ່າງ:

# ປ່ຽນມຸມເບິ່ງຊ້າຍແລະຂວາເປັນວິດີໂອຕາມລໍາດັບຂອງກອບ
ffmpeg -i ຊ້າຍ -i ຂວາ -filter_complex framepack=frameseq OUTPUT

# ປ່ຽນການເບິ່ງເປັນວິດີໂອຂ້າງຄຽງທີ່ມີຄວາມລະອຽດຜົນອອກມາຄືກັນກັບການປ້ອນຂໍ້ມູນ
ffmpeg -i ຊ້າຍ -i ຂວາ -filter_complex [0:v]scale=w=iw/2[left],[1:v]scale=w=iw/2[right],[ຊ້າຍ][right]framepack=sbs ອອກ

framerate
ປ່ຽນອັດຕາເຟຣມໂດຍການແຊກແຊງເຟຣມຜົນຜະລິດວິດີໂອໃໝ່ຈາກກອບແຫຼ່ງ.

ການກັ່ນຕອງນີ້ບໍ່ໄດ້ຖືກອອກແບບມາເພື່ອເຮັດວຽກຢ່າງຖືກຕ້ອງກັບສື່ interlaced. ຖ້າທ່ານຕ້ອງການ
ການ​ປ່ຽນ​ແປງ​ອັດ​ຕາ​ພາ​ຂອງ​ສື່​ມວນ​ຊົນ interlaced ຫຼັງ​ຈາກ​ນັ້ນ​ທ່ານ​ຈໍາ​ເປັນ​ຕ້ອງ deinterlace ກ່ອນ​ຫນ້າ​ນີ້​
ການກັ່ນຕອງແລະ re-interlace ຫຼັງຈາກການກັ່ນຕອງນີ້.

ລາຍລະອຽດຂອງທາງເລືອກທີ່ຍອມຮັບດັ່ງຕໍ່ໄປນີ້.

ເຟມຕໍ່ວິນາ ລະບຸກອບຜົນຜະລິດຕໍ່ວິນາທີ. ຕົວເລືອກນີ້ຍັງສາມາດລະບຸເປັນຄ່າໄດ້
ຄົນດຽວ. ຄ່າເລີ່ມຕົ້ນແມ່ນ 50.

interp_start
ລະບຸຈຸດເລີ່ມຕົ້ນຂອງໄລຍະທີ່ກອບຜົນຜະລິດຈະຖືກສ້າງເປັນເສັ້ນຊື່
interpolation ຂອງສອງກອບ. ໄລຍະແມ່ນ [0-255], ຄ່າເລີ່ມຕົ້ນແມ່ນ 15.

interp_end
ລະບຸຈຸດສິ້ນສຸດຂອງຂອບເຂດທີ່ກອບຜົນຜະລິດຈະຖືກສ້າງເປັນເສັ້ນຊື່
interpolation ຂອງສອງກອບ. ໄລຍະແມ່ນ [0-255], ຄ່າເລີ່ມຕົ້ນແມ່ນ 240.

scene
ລະບຸລະດັບທີ່ກວດພົບການປ່ຽນແປງສາກເປັນຄ່າລະຫວ່າງ 0 ຫາ 100 ຫາ
ຊີ້ໃຫ້ເຫັນ scene ໃຫມ່; ຄ່າຕໍ່າສະທ້ອນເຖິງຄວາມເປັນໄປໄດ້ຕໍ່າສໍາລັບກອບປັດຈຸບັນ
ແນະນໍາ scene ໃຫມ່, ໃນຂະນະທີ່ມູນຄ່າທີ່ສູງຂຶ້ນຫມາຍຄວາມວ່າກອບປະຈຸບັນມີແນວໂນ້ມທີ່ຈະຫຼາຍ
ເປັນຫນຶ່ງ. ຄ່າເລີ່ມຕົ້ນແມ່ນ 7.

ທົງ
ລະບຸທຸງທີ່ມີອິດທິພົນຕໍ່ຂະບວນການກອງ.

ມູນຄ່າທີ່ມີຢູ່ສໍາລັບ ທົງ ແມ່ນ:

scene_change_detect, scd
ເປີດໃຊ້ການກວດສອບການປ່ຽນແປງ scene ໂດຍໃຊ້ຄ່າຂອງຕົວເລືອກ scene. ທຸງນີ້ແມ່ນ
ເປີດໃຊ້ຕາມຄ່າເລີ່ມຕົ້ນ.

ຂອບ
ເລືອກຫນຶ່ງເຟຣມທຸກໆ N-th frame.

ຕົວກອງນີ້ຍອມຮັບທາງເລືອກຕໍ່ໄປນີ້:

ຂັ້ນ​ຕອນ
ເລືອກກອບຫຼັງຈາກທຸກໆ "ຂັ້ນຕອນ" ເຟຣມ. ຄ່າທີ່ອະນຸຍາດແມ່ນຈຳນວນເຕັມບວກສູງກວ່າ
ຫຼາຍກວ່າ 0. ຄ່າເລີ່ມຕົ້ນແມ່ນ 1.

free0r
ນຳໃຊ້ເອັບເຟັກ frei0r ກັບວິດີໂອທີ່ປ້ອນເຂົ້າ.

ເພື່ອເປີດໃຊ້ການລວບລວມຕົວກອງນີ້, ທ່ານຈໍາເປັນຕ້ອງຕິດຕັ້ງສ່ວນຫົວ frei0r ແລະ
ຕັ້ງຄ່າ FFmpeg ດ້ວຍ "--enable-frei0r".

ມັນຍອມຮັບຕົວກໍານົດການດັ່ງຕໍ່ໄປນີ້:

filter_name
ຊື່ຂອງຜົນກະທົບ frei0r ທີ່ຈະໂຫລດ. ຖ້າສະພາບແວດລ້ອມປ່ຽນແປງ FREI0R_PATH is
ຖືກກໍານົດ, ຜົນກະທົບ frei0r ແມ່ນຊອກຫາໃນແຕ່ລະໄດເລກະທໍລີທີ່ລະບຸໄວ້ໂດຍ
ບັນຊີລາຍຊື່ທີ່ແຍກອອກຈາກຈໍ້າສອງເມັດໃນ FREIOR_PATH. ຖ້າບໍ່ດັ່ງນັ້ນ, ເສັ້ນທາງ frei0r ມາດຕະຖານແມ່ນ
ຄົ້ນຫາ, ໃນຄໍາສັ່ງນີ້: ໜ້າຫຼັກ/.free0r-1/lib/, /usr/local/lib/frei0r-1/,
/usr/lib/frei0r-1/.

filter_params
ບັນຊີລາຍຊື່ຕົວກໍານົດການທີ່ແຍກອອກ '|' ເພື່ອສົ່ງຕໍ່ຜົນກະທົບ frei0r.

ພາລາມິເຕີຜົນກະທົບ frei0r ສາມາດເປັນ boolean (ຄ່າຂອງມັນແມ່ນ "y" ຫຼື "n"), ສອງເທົ່າ, a
ສີ (ລະບຸເປັນ R/G/B, ບ່ອນທີ່ R, G, ແລະ B ແມ່ນຕົວເລກຈຸດລອຍລະຫວ່າງ 0.0 ແລະ
1.0, ລວມ​) ຫຼື​ໂດຍ​ການ​ອະ​ທິ​ບາຍ​ສີ​ທີ່​ລະ​ບຸ​ໄວ້​ໃນ​ພາກ "ສີ​" ໃນ ffmpeg-
utils manual), ຕໍາແໜ່ງ (ລະບຸເປັນ X/Y, ບ່ອນທີ່ X ແລະ Y ແມ່ນຕົວເລກຈຸດລອຍ)
ແລະ/ຫຼື string.

ຈໍານວນແລະປະເພດຂອງພາລາມິເຕີແມ່ນຂຶ້ນກັບຜົນກະທົບທີ່ໂຫລດ. ຖ້າຕົວກໍານົດຜົນກະທົບແມ່ນ
ບໍ່ໄດ້ລະບຸ, ຄ່າເລີ່ມຕົ້ນຖືກຕັ້ງ.

ຕົວຢ່າງ

· ນຳ​ໃຊ້​ຜົນ​ກະ​ທົບ distort0r, ການ​ຕັ້ງ​ຄ່າ​ສອງ​ຕົວ​ກໍາ​ນົດ​ການ​ທໍາ​ອິດ​ສອງ​:

frei0r=filter_name=distort0r:filter_params=0.5|0.01

· ນຳ​ໃຊ້​ຜົນ​ກະ​ທົບ colordistance, ເອົາ​ສີ​ເປັນ​ຕົວ​ກໍາ​ນົດ​ການ​ທໍາ​ອິດ​:

frei0r=colordistance:0.2/0.3/0.4
frei0r=ໄລຍະຫ່າງສີ:ສີມ່ວງ
frei0r=ໄລຍະສີ:0x112233

·​ນໍາ​ໃຊ້​ຜົນ​ກະ​ທົບ​ທັດ​ສະ​ນະ​, ການ​ລະ​ບຸ​ຕໍາ​ແຫນ່ງ​ຮູບ​ພາບ​ເທິງ​ຊ້າຍ​ແລະ​ຂວາ​ເທິງ​:

frei0r=perspective:0.2/0.2|0.8/0.2

ສໍາລັບຂໍ້ມູນເພີ່ມເຕີມ, ເບິ່ງhttp://frei0r.dyne.org>

fspp
ນຳໃຊ້ການປະມວນຜົນຫຼັງໄວ ແລະງ່າຍດາຍ. ມັນ​ເປັນ​ສະ​ບັບ​ທີ່​ໄວ​ຂຶ້ນ​ຂອງ​ sp.

ມັນແຍກ (I)DCT ເຂົ້າໄປໃນທາງຂວາງ/ແນວຕັ້ງ. ບໍ່ຄືກັບການປຸງແຕ່ງຫຼັງແບບງ່າຍໆ
ການກັ່ນຕອງ, ຫນຶ່ງໃນພວກມັນຖືກປະຕິບັດຫນຶ່ງຄັ້ງຕໍ່ຕັນ, ບໍ່ແມ່ນຕໍ່ pixels. ນີ້ອະນຸຍາດໃຫ້ສໍາລັບການຫຼາຍ
ຄວາມ​ໄວ​ສູງ​ຂຶ້ນ​.

ຕົວກອງຍອມຮັບຕົວເລືອກຕໍ່ໄປນີ້:

ຄຸນ​ນະ​ພາບ
ກໍານົດຄຸນນະພາບ. ຕົວເລືອກນີ້ກໍານົດຈໍານວນລະດັບສໍາລັບການສະເລ່ຍ. ມັນຍອມຮັບເປັນ
ຈຳນວນເຕັມໃນຂອບເຂດ 4-5. ຄ່າເລີ່ມຕົ້ນແມ່ນ 4.

qp ບັງຄັບພາລາມິເຕີປະລິມານຄົງທີ່. ມັນຍອມຮັບຈໍານວນເຕັມໃນໄລຍະ 0-63. ຖ້າ​ບໍ່
ທີ່ກໍານົດໄວ້, ຕົວກອງຈະໃຊ້ QP ຈາກການຖ່າຍທອດວິດີໂອ (ຖ້າມີ).

ຄວາມ​ເຂັ້ມ​ແຂງ
ກໍານົດຄວາມແຮງຂອງການກັ່ນຕອງ. ມັນຍອມຮັບຈໍານວນເຕັມໃນໄລຍະ -15 ຫາ 32. ຄ່າຕ່ໍາກວ່າຫມາຍຄວາມວ່າຫຼາຍ
ລາຍ​ລະ​ອຽດ​ແຕ່​ຍັງ​ມີ​ຂອງ​ປອມ​ຫຼາຍ​, ໃນ​ຂະ​ນະ​ທີ່​ຄຸນ​ຄ່າ​ທີ່​ສູງ​ກວ່າ​ເຮັດ​ໃຫ້​ຮູບ​ພາບ​ທີ່​ກ້ຽງ​ແຕ່​ຍັງ​
ມົວ. ຄ່າເລີ່ມຕົ້ນແມ່ນ 0 X PSNR ທີ່ດີທີ່ສຸດ.

ໃຊ້_bframe_qp
ເປີດໃຊ້ QP ຈາກ B-Frames ຖ້າຕັ້ງເປັນ 1. ການນໍາໃຊ້ທາງເລືອກນີ້ອາດຈະເຮັດໃຫ້ເກີດ
flicker ນັບຕັ້ງແຕ່ B-Frames ມັກຈະມີ QP ໃຫຍ່ກວ່າ. ຄ່າເລີ່ມຕົ້ນແມ່ນ 0 (ບໍ່ໄດ້ເປີດໃຊ້).

geq
ຕົວກອງຍອມຮັບຕົວເລືອກຕໍ່ໄປນີ້:

lum_expr, lum
ກໍານົດການສະແດງອອກ luminance.

cb_expr, cb
ກໍານົດການສະແດງອອກສີຟ້າ chrominance.

cr_expr, cr
ກໍານົດການສະແດງອອກສີແດງ chrominance.

alpha_expr, a
ກໍານົດການສະແດງອອກ alpha.

red_expr, r
ກໍານົດການສະແດງອອກສີແດງ.

ສີຂຽວ_expr, g
ກໍານົດການສະແດງອອກສີຂຽວ.

blue_expr, b
ກໍານົດການສະແດງອອກສີຟ້າ.

ພື້ນທີ່ສີຖືກເລືອກຕາມຕົວເລືອກທີ່ລະບຸ. ຖ້າຫາກວ່າຫນຶ່ງຂອງ lum_expr,
cb_expr, ຫຼື cr_expr ທາງເລືອກແມ່ນຖືກກໍານົດ, ຕົວກອງຈະເລືອກ YCbCr ໂດຍອັດຕະໂນມັດ
colorspace. ຖ້າຫາກວ່າຫນຶ່ງຂອງ red_expr, ສີຂຽວ_expr, ຫຼື blue_expr ທາງ​ເລືອກ​ທີ່​ກໍາ​ນົດ​ໄວ້​, ມັນ​ຈະ​
ເລືອກພື້ນທີ່ສີ RGB.

ຖ້າຫນຶ່ງໃນການສະແດງອອກ chrominance ບໍ່ໄດ້ຖືກກໍານົດ, ມັນຈະກັບຄືນໄປຫາອີກອັນຫນຶ່ງ. ຖ້າບໍ່ມີ
ການສະແດງອອກ alpha ແມ່ນລະບຸໄວ້ມັນຈະປະເມີນເປັນຄ່າ opaque. ຖ້າບໍ່ມີ chrominance
ການສະແດງອອກແມ່ນຖືກກໍານົດ, ພວກເຂົາຈະປະເມີນກັບການສະແດງອອກຂອງ luminance.

ການສະແດງອອກສາມາດນໍາໃຊ້ຕົວແປແລະຫນ້າທີ່ດັ່ງຕໍ່ໄປນີ້:

N ຕົວເລກລໍາດັບຂອງກອບການກັ່ນຕອງ, ເລີ່ມຈາກ 0.

X
Y ຈຸດປະສານງານຂອງຕົວຢ່າງປະຈຸບັນ.

W
H ຄວາມກວ້າງແລະຄວາມສູງຂອງຮູບ.

SW
SH ຂະໜາດຄວາມກວ້າງແລະຄວາມສູງຂຶ້ນກັບຍົນທີ່ກັ່ນຕອງໃນປັດຈຸບັນ. ມັນແມ່ນອັດຕາສ່ວນ
ລະຫວ່າງຕົວເລກຍົນ luma ທີ່ສອດຄ້ອງກັນຂອງ pixels ແລະຍົນປະຈຸບັນ. ຕົວຢ່າງ
ສໍາລັບ YUV4:2:0 ຄ່າແມ່ນ "1,1" ສໍາລັບຍົນ luma, ແລະ "0.5,0.5" ສໍາລັບຍົນ chroma.

T ເວລາຂອງກອບປະຈຸບັນ, ສະແດງອອກເປັນວິນາທີ.

p(x, y)
ຕອບຄ່າຂອງ pixels ລວງທີ່ຕັ້ງ (x,y) ຂອງ​ຍົນ​ໃນ​ປັດ​ຈຸ​ບັນ​.

lum(x, y)
ຕອບຄ່າຂອງ pixels ລວງທີ່ຕັ້ງ (x,y) ຂອງຍົນ luminance ໄດ້.

cb(x, y)
ຕອບຄ່າຂອງ pixels ລວງທີ່ຕັ້ງ (x,y) ຂອງຍົນ chroma ຄວາມແຕກຕ່າງສີຟ້າ.
ກັບຄືນ 0 ຖ້າບໍ່ມີຍົນດັ່ງກ່າວ.

cr(x, y)
ຕອບຄ່າຂອງ pixels ລວງທີ່ຕັ້ງ (x,y) ຂອງຍົນ chroma ຄວາມແຕກຕ່າງສີແດງ.
ກັບຄືນ 0 ຖ້າບໍ່ມີຍົນດັ່ງກ່າວ.

r(x, y)
g(x, y)
b(x, y)
ຕອບຄ່າຂອງ pixels ລວງທີ່ຕັ້ງ (x,y) ຂອງອົງປະກອບສີແດງ / ສີຂຽວ / ສີຟ້າ.
ກັບຄືນ 0 ຖ້າບໍ່ມີອົງປະກອບດັ່ງກ່າວ.

alpha(x, y)
ຕອບຄ່າຂອງ pixels ລວງທີ່ຕັ້ງ (x,y) ຂອງຍົນອັນຟາ. ກັບຄືນ 0 ຖ້າມີ
ບໍ່ແມ່ນຍົນດັ່ງກ່າວ.

ສໍາລັບຫນ້າທີ່, ຖ້າ x ແລະ y ຢູ່ນອກພື້ນທີ່, ຄ່າຈະຖືກຕັດໂດຍອັດຕະໂນມັດ
ແຂບທີ່ໃກ້ຊິດ.

ຕົວຢ່າງ

· ພິກຮູບຕາມແນວນອນ:

geq=p(WX\,Y)

· ສ້າງຄື້ນ sine bidimensional, ມີມຸມ "PI/3" ແລະຄວາມຍາວຄື້ນຂອງ 100 pixels:

geq=128 + 100*sin(2*(PI/100)*(cos(PI/3)*(X-50*T) + sin(PI/3)*Y)):128:128

· ສ້າງ​ແສງ​ສະ​ຫວ່າງ​ການ​ເຄື່ອນ​ໄຫວ enigmatic fancy​:

nullsrc=s=256x256,geq=random(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

· ສ້າງຜົນກະທົບ emboss ໄວ:

format=grey,geq=lum_expr='(p(X,Y)+(256-p(X-4,Y-4)))/2'

· ປັບ​ປຸງ​ແກ້​ໄຂ​ອົງ​ປະ​ກອບ RGB ຂຶ້ນ​ກັບ​ຕໍາ​ແຫນ່ງ pixels ລວງ​:

geq=r='X/W*r(X,Y)':g='(1-X/W)*g(X,Y)':b='(HY)/H*b(X,Y) )'

· ສ້າງ gradient radial ທີ່ມີຂະຫນາດດຽວກັນກັບການປ້ອນຂໍ້ມູນ (ຍັງເບິ່ງ the ຂອບມືດ
ການກັ່ນຕອງ):

geq=lum=255*gauss((X/W-0.5)*3)*gauss((Y/H-0.5)*3)/gaussian(0) /gaussian(0), format=grey

· ສ້າງ gradient ເສັ້ນເພື່ອໃຊ້ເປັນຫນ້າກາກສໍາລັບການກັ່ນຕອງອື່ນ, ຫຼັງຈາກນັ້ນປະກອບດ້ວຍ
overlay. ໃນຕົວຢ່າງນີ້ວິດີໂອຈະຄ່ອຍໆມົວຫຼາຍຈາກເທິງຫາ
ລຸ່ມສຸດຂອງແກນ y ຕາມທີ່ກຳນົດໂດຍການສີເສັ້ນຊື່:

ffmpeg -i input.mp4 -filter_complex "geq=lum=255*(Y/H),format=grey[grad];[0:v]boxblur=4[blur];[blur][grad]alphamerge[alpha] ;[0:v][alpha]overlay" output.mp4

gradfun
ແກ້ໄຂສິ່ງປະດິດຂອງແຖບທີ່ບາງຄັ້ງຖືກນໍາສະເຫນີເຂົ້າໄປໃນພື້ນທີ່ເກືອບຮາບພຽງໂດຍ
ການຕັດໃຫ້ຄວາມເລິກສີ 8bit. Interpolate gradients ທີ່ຄວນຈະໄປບ່ອນທີ່ແຖບ
ແມ່ນ, ແລະ dither ເຂົາເຈົ້າ.

ມັນຖືກອອກແບບມາສໍາລັບການຫຼິ້ນເທົ່ານັ້ນ. ຢ່າໃຊ້ມັນກ່ອນທີ່ຈະສູນເສຍການບີບອັດ, ເພາະວ່າ
compression ມີແນວໂນ້ມທີ່ຈະສູນເສຍ dither ແລະເຮັດໃຫ້ແຖບກັບຄືນໄປບ່ອນ.

ມັນຍອມຮັບຕົວກໍານົດການດັ່ງຕໍ່ໄປນີ້:

ຄວາມ​ເຂັ້ມ​ແຂງ
ຈໍານວນສູງສຸດທີ່ຕົວກອງຈະປ່ຽນແປງຫນຶ່ງ pixels. ນີ້​ແມ່ນ​ຍັງ
ເກນສໍາລັບການກວດສອບພື້ນທີ່ເກືອບຮາບພຽງ. ຄ່າທີ່ຍອມຮັບໄດ້ຕັ້ງແຕ່ .51 ຫາ 64;
ຄ່າເລີ່ມຕົ້ນແມ່ນ 1.2. ຄ່ານອກຂອບເຂດຈະຖືກຕັດໃສ່ຂອບເຂດທີ່ຖືກຕ້ອງ.

radius
ຄຸ້ມບ້ານໃຫ້ພໍດີກັບ gradient. ລັດສະໝີທີ່ໃຫຍ່ກວ່າເຮັດໃຫ້ການເລື່ອນຊັ້ນທີ່ລຽບກວ່າ,
ແຕ່ຍັງປ້ອງກັນຕົວກອງຈາກການດັດແກ້ pixels ໃກ້ກັບພາກພື້ນລະອຽດ.
ຄ່າທີ່ຍອມຮັບໄດ້ແມ່ນ 8-32; ຄ່າເລີ່ມຕົ້ນແມ່ນ 16. ຄ່ານອກຂອບເຂດຈະເປັນ
ຕັດໄປໃສ່ຂອບເຂດທີ່ຖືກຕ້ອງ.

ອີກທາງເລືອກ, ທາງເລືອກສາມາດຖືກກໍານົດເປັນສາຍແປ: ຄວາມ​ເຂັ້ມ​ແຂງ[:radius]

ຕົວຢ່າງ

· ນຳ​ໃຊ້​ກອງ​ທີ່​ມີ​ຄວາມ​ເຂັ້ມ​ແຂງ 3.5 ແລະ ລັດ​ສະ​ໝີ 8:

gradfun=3.5:8

· ກໍາ​ນົດ​ລັດ​ສະ​ໝີ​, ຍົກ​ເວັ້ນ​ຄວາມ​ເຂັ້ມ​ແຂງ (ຊຶ່ງ​ຈະ​ຫຼຸດ​ລົງ - ກັບ​ຄືນ​ໄປ​ບ່ອນ​ຄ່າ​ເລີ່ມ​ຕົ້ນ​)​:

gradfun=ລັດສະໝີ=8

ໜວດ
ນຳໃຊ້ Hald CLUT ກັບການຖ່າຍທອດວິດີໂອ.

ຂໍ້ມູນທໍາອິດແມ່ນການຖ່າຍທອດວິດີໂອເພື່ອປະມວນຜົນ, ແລະອັນທີສອງແມ່ນ Hald CLUT. ຫໍ
ການປ້ອນຂໍ້ມູນ CLUT ສາມາດເປັນຮູບພາບທີ່ງ່າຍດາຍ ຫຼືການຖ່າຍທອດວິດີໂອທີ່ສົມບູນ.

ຕົວກອງຍອມຮັບຕົວເລືອກຕໍ່ໄປນີ້:

ສັ້ນທີ່ສຸດ
ບັງຄັບການປິດເວລາການປ້ອນຂໍ້ມູນສັ້ນທີ່ສຸດສິ້ນສຸດລົງ. ຄ່າເລີ່ມຕົ້ນແມ່ນ 0.

ຊໍ້າຄືນຫຼ້າສຸດ
ສືບຕໍ່ນຳໃຊ້ CLUT ສຸດທ້າຍຫຼັງຈາກສິ້ນສຸດການຖ່າຍທອດ. ຄ່າຂອງ 0 ປິດການໃຊ້ງານ
ການກັ່ນຕອງຫຼັງຈາກຂອບສຸດທ້າຍຂອງ CLUT ມາຮອດ. ຄ່າເລີ່ມຕົ້ນແມ່ນ 1.

"haldclut" ຍັງມີທາງເລືອກ interpolation ຄືກັນ lut3d (ຕົວກອງທັງສອງແບ່ງປັນຄືກັນ
ພາຍໃນ).

ຂໍ້ມູນເພີ່ມເຕີມກ່ຽວກັບ Hald CLUT ສາມາດພົບໄດ້ຢູ່ໃນເວັບໄຊທ໌ຂອງ Eskil Steenberg (Hald CLUT
author) ທີ່http://www.quelsolaar.com/technology/clut.html>.

workflow ຕົວຢ່າງ

ຢຸດການຖ່າຍທອດວິດີໂອ CLUT

ສ້າງຕົວຕົນຂອງສະຕຣີມ Hald CLUT ປ່ຽນແປງດ້ວຍເອັບເຟັກຕ່າງໆ:

ffmpeg -f lavfi -i B =8 -vf "hue=H=2*PI*t:s=sin(2*PI*t)+1, curves=cross_process" -t 10 -c:v ffv1 clut.nut

ຫມາຍເຫດ: ໃຫ້ແນ່ໃຈວ່າທ່ານໃຊ້ຕົວແປງສັນຍານທີ່ສູນເສຍ.

ຫຼັງຈາກນັ້ນ, ໃຊ້ມັນກັບ "haldclut" ເພື່ອນໍາໃຊ້ມັນຢູ່ໃນບາງນ້ໍາແບບສຸ່ມ:

ffmpeg -f lavfi -i mandelbrot -i clut.nut -filter_complex '[0][1] haldclut' -t 20 mandelclut.mkv

Hald CLUT ຈະຖືກນໍາໃຊ້ກັບ 10 ວິນາທີທໍາອິດ (ໄລຍະເວລາຂອງ clut.nut), ຫຼັງຈາກນັ້ນ
ຮູບພາບຫຼ້າສຸດຂອງກະແສ CLUT ນັ້ນຈະຖືກນຳໃຊ້ກັບຂອບທີ່ຍັງເຫຼືອຂອງ
ກະແສ "mandelbrot".

ຖື CLUT ດ້ວຍການເບິ່ງຕົວຢ່າງ

A Hald CLUT ຄວນເປັນຮູບສີ່ຫຼ່ຽມຂອງ "ລະດັບ*ລະດັບ*ລະດັບ" ໂດຍ
"ລະດັບ*ລະດັບ*ລະດັບ" pixels. ສໍາລັບ Hald CLUT ທີ່ໃຫ້, FFmpeg ຈະເລືອກເອົາທີ່ໃຫຍ່ທີ່ສຸດທີ່ເປັນໄປໄດ້
ສີ່ຫຼ່ຽມເລີ່ມຕົ້ນຢູ່ເບື້ອງຊ້າຍເທິງຂອງຮູບ. pixels padding ທີ່ຍັງເຫຼືອ (ລຸ່ມຫຼື
ສິດ) ຈະຖືກລະເລີຍ. ພື້ນທີ່ນີ້ສາມາດຖືກນໍາໃຊ້ເພື່ອເພີ່ມຕົວຢ່າງຂອງ Hald CLUT.

ໂດຍປົກກະຕິ, Hald CLUT ທີ່ສ້າງຂຶ້ນຕໍ່ໄປນີ້ຈະໄດ້ຮັບການສະຫນັບສະຫນູນໂດຍການກັ່ນຕອງ "haldclut":

ffmpeg -f lavfi -i B =8 -vf "
pad=iw+320 [padded_clut];
smptebars=s=320x256, ແຍກ [a][b];
[padded_clut][a] overlay=W-320:h, curves=color_negative [ຫຼັກ];
[main][b] overlay=W-320" -frames:v 1 clut.png

ມັນປະກອບດ້ວຍຕົ້ນສະບັບແລະການສະແດງຜົນຂອງ CLUT: ແຖບສີ SMPTE ແມ່ນ
ສະ​ແດງ​ຢູ່​ທາງ​ເທິງ​ຂວາ​, ແລະ​ຂ້າງ​ລຸ່ມ​ນີ້​ແຖບ​ສີ​ດຽວ​ກັນ​ການ​ປຸງ​ແຕ່ງ​ໂດຍ​ການ​ປ່ຽນ​ແປງ​ສີ​.

ຫຼັງຈາກນັ້ນ, ຜົນກະທົບຂອງ Hald CLUT ນີ້ສາມາດເຫັນໄດ້ດ້ວຍ:

ffplay input.mkv -vf "movie=clut.png, [in]haldclut"

hflip
ປີ້ນວິດີໂອປ້ອນຂໍ້ມູນຕາມແນວນອນ.

ສໍາ​ລັບ​ຕົວ​ຢ່າງ​, ເພື່ອ​ຢຽດ​ຕາມ​ລວງ​ນອນ flip ວິ​ດີ​ໂອ​ການ​ປ້ອນ​ຂໍ້​ມູນ​ດ້ວຍ​ ffmpeg:

ffmpeg -i in.avi -vf "hflip" out.avi

histeq
ການກັ່ນຕອງນີ້ໃຊ້ຄວາມເທົ່າທຽມຂອງ histogram ສີທົ່ວໂລກບົນພື້ນຖານຕໍ່ເຟຣມ.

ມັນສາມາດຖືກໃຊ້ເພື່ອແກ້ໄຂວິດີໂອທີ່ມີລະດັບຄວາມເຂັ້ມຂອງ pixels ລວງທີ່ຖືກບີບອັດ. ໄດ້
ການກັ່ນຕອງແຈກຢາຍຄວາມເຂັ້ມຂອງ pixels ລວງຄືນໃຫມ່ເພື່ອໃຫ້ເທົ່າທຽມການແຈກຢາຍຂອງພວກເຂົາໃນທົ່ວ
ລະ​ດັບ​ຄວາມ​ເຂັ້ມ​ແຂງ​. ມັນອາດຈະຖືກເບິ່ງເປັນ "ປັບຕົວກອງຄວາມຄົມຊັດໂດຍອັດຕະໂນມັດ". ນີ້
ການກັ່ນຕອງແມ່ນເປັນປະໂຫຍດພຽງແຕ່ສໍາລັບການແກ້ໄຂວິດີໂອຕົ້ນສະບັບທີ່ຊຸດໂຊມຫຼື captured ບໍ່ດີ.

ຕົວກອງຍອມຮັບຕົວເລືອກຕໍ່ໄປນີ້:

ຄວາມ​ເຂັ້ມ​ແຂງ
ກໍານົດຈໍານວນຄວາມສະເຫມີພາບທີ່ຈະນໍາໃຊ້. ໃນຂະນະທີ່ຄວາມເຂັ້ມແຂງໄດ້ຖືກຫຼຸດລົງ, ໄດ້
ການແຈກຢາຍຄວາມເຂັ້ມຂອງ pixels ລວງຫຼາຍຂື້ນແມ່ນວິທີການຂອງກອບການປ້ອນຂໍ້ມູນ.
ຄ່າຕ້ອງເປັນຕົວເລກທີ່ເລື່ອນຢູ່ໃນໄລຍະ [0,1] ແລະຄ່າເລີ່ມຕົ້ນເປັນ 0.200.

ຄວາມຫນາແຫນ້ນ
ກໍານົດຄວາມເຂັ້ມສູງສຸດທີ່ສາມາດສ້າງແລະຂະຫນາດຂອງມູນຄ່າຜົນຜະລິດໄດ້
ຢ່າງເໝາະສົມ. ຄວາມເຂັ້ມແຂງຄວນໄດ້ຮັບການກໍານົດຕາມຄວາມຕ້ອງການແລະຫຼັງຈາກນັ້ນຄວາມເຂັ້ມຂົ້ນສາມາດເປັນ
ຈໍາກັດຖ້າຈໍາເປັນເພື່ອຫຼີກເວັ້ນການລ້າງອອກ. ຄ່າຕ້ອງເປັນຕົວເລກທີ່ລອຍຢູ່ໃນຂອບເຂດ
[0,1] ແລະຄ່າເລີ່ມຕົ້ນເປັນ 0.210.

ການຕ້ານການ banding
ກໍານົດລະດັບ antibanding. ຖ້າເປີດໃຊ້, ຕົວກອງຈະປ່ຽນແປງຄວາມສະຫວ່າງແບບສຸ່ມ
ຜົນຜະລິດ pixels ເປັນຈໍານວນເລັກນ້ອຍເພື່ອຫຼີກເວັ້ນການ banding ຂອງ histogram. ຄ່າທີ່ເປັນໄປໄດ້ແມ່ນ
"ບໍ່ມີ", "ອ່ອນແອ" ຫຼື "ເຂັ້ມແຂງ". ມັນເລີ່ມຕົ້ນເປັນ "ບໍ່ມີ".

histogram
ຄິດ​ໄລ່​ແລະ​ແຕ້ມ histogram ການ​ແຜ່​ກະ​ຈາຍ​ສີ​ສໍາ​ລັບ​ວິ​ດີ​ໂອ​ການ​ປ້ອນ​ຂໍ້​ມູນ​.

ຮິສໂຕແກຣມທີ່ຄຳນວນແລ້ວແມ່ນເປັນຕົວແທນຂອງການແຈກຢາຍອົງປະກອບສີໃນອັນ
ຮູບພາບ.

ຕົວກອງຍອມຮັບຕົວເລືອກຕໍ່ໄປນີ້:

ຮູບແບບການ
ຕັ້ງໂໝດ histogram.

ມັນຍອມຮັບຄ່າດັ່ງຕໍ່ໄປນີ້:

ລະດັບ
ຮິສໂຕແກຣມມາດຕະຖານທີ່ສະແດງການກະຈາຍອົງປະກອບສີໃນຮູບໃດໜຶ່ງ.
ສະແດງເສັ້ນສະແດງສີສໍາລັບແຕ່ລະອົງປະກອບສີ. ສະແດງໃຫ້ເຫັນການແຈກຢາຍຂອງ Y, U, V,
ອົງປະກອບ A ຫຼື R, G, B, ຂຶ້ນກັບຮູບແບບການປ້ອນຂໍ້ມູນ, ໃນກອບປະຈຸບັນ. ຂ້າງລຸ່ມນີ້
ແຕ່ລະເສັ້ນສະແດງເຄື່ອງວັດແທກຂະໜາດອົງປະກອບສີ.

ສີ
ສະແດງຄ່າ chroma (ການຈັດວາງສີ U/V) ໃນເສັ້ນສະແດງສອງມິຕິ (ເຊິ່ງແມ່ນ
ເອີ້ນວ່າ vectorscope). ຄວາມສະຫວ່າງຂອງ pixels ລວງໃນ vectorscope, pixels ຫຼາຍຂອງ
ກອບການປ້ອນຂໍ້ມູນກົງກັບ pixels ລວງນັ້ນ (ເຊັ່ນ, pixels ຫຼາຍມີ chroma ນີ້
ມູນຄ່າ). ອົງປະກອບ V ແມ່ນສະແດງຢູ່ໃນແກນແນວນອນ (X), ຊ້າຍສຸດ
ຂ້າງເປັນ V = 0 ແລະດ້ານຂວາສຸດເປັນ V = 255. ອົງປະກອບ U ແມ່ນ
ສະແດງຢູ່ໃນແກນຕັ້ງ (Y) ໂດຍດ້ານເທິງເປັນຕົວແທນ U = 0 ແລະດ້ານລຸ່ມ
ເປັນຕົວແທນ U = 255.

ຕໍາແໜ່ງຂອງ pixels ລວງສີຂາວໃນກຣາບກົງກັບຄ່າ chroma ຂອງ a
pixel ຂອງ clip ການປ້ອນຂໍ້ມູນ. ເສັ້ນສະແດງສາມາດຖືກນໍາໃຊ້ເພື່ອອ່ານ hue (ສີ
ລົດຊາດ) ແລະການອີ່ມຕົວ (ການເດັ່ນຂອງ hue ໃນສີ). ເປັນ hue ຂອງ
ການປ່ຽນສີ, ມັນເຄື່ອນທີ່ອ້ອມຮອບສີ່ຫຼ່ຽມມົນ. ຢູ່ໃຈກາງຂອງສີ່ຫຼ່ຽມມົນ
ການອີ່ມຕົວແມ່ນສູນ, ຊຶ່ງຫມາຍຄວາມວ່າ pixels ລວງທີ່ສອດຄ້ອງກັນບໍ່ມີສີ. ຖ້າ
ປະລິມານຂອງສີສະເພາະແມ່ນເພີ່ມຂຶ້ນ (ໃນຂະນະທີ່ເຮັດໃຫ້ສີອື່ນໆບໍ່ປ່ຽນແປງ)
ການອີ່ມຕົວເພີ່ມຂຶ້ນ, ແລະຕົວຊີ້ວັດຍ້າຍໄປສູ່ຂອບຂອງສີ່ຫຼ່ຽມມົນ.

color2
ຄ່າ Chroma ໃນ vectorscope, ຄ້າຍຄືກັນກັບ "ສີ" ແຕ່ຄ່າ chroma ຕົວຈິງແມ່ນ
ສະແດງ.

ຮູບແບບຄື້ນ
ກຣາຟອົງປະກອບສີຕໍ່ແຖວ/ຖັນ. ໃນໂຫມດແຖວ, ເສັ້ນສະແດງຢູ່ເບື້ອງຊ້າຍ
ແທນຄ່າອົງປະກອບສີ 0 ແລະດ້ານຂວາສະແດງຄ່າ = 255. ໃນ
ຮູບ​ແບບ​ຖັນ​, ດ້ານ​ເທິງ​ສະ​ແດງ​ໃຫ້​ເຫັນ​ຄ່າ​ອົງ​ປະ​ກອບ​ສີ = 0 ແລະ​ດ້ານ​ລຸ່ມ​
ແທນຄ່າ = 255.

ຄ່າເລີ່ມຕົ້ນແມ່ນ "ລະດັບ".

level_height
ກໍານົດຄວາມສູງຂອງລະດັບໃນ "ລະດັບ". ຄ່າເລີ່ມຕົ້ນແມ່ນ 200. ໄລຍະອະນຸຍາດແມ່ນ [50, 2048].

scale_height
ກໍານົດຄວາມສູງຂອງຂະຫນາດສີໃນ "ລະດັບ". ຄ່າເລີ່ມຕົ້ນແມ່ນ 12. ໄລຍະອະນຸຍາດແມ່ນ [0, 40].

ຂັ້ນ​ຕອນ
ກໍານົດຂັ້ນຕອນສໍາລັບຮູບແບບ "waveform". ຄ່າທີ່ນ້ອຍກວ່າແມ່ນເປັນປະໂຫຍດເພື່ອຊອກຫາຈໍານວນຄ່າຂອງ
ຄວາມສະຫວ່າງດຽວກັນແມ່ນແຈກຢາຍໄປທົ່ວແຖວປ້ອນຂໍ້ມູນ/ຖັນ. ຄ່າເລີ່ມຕົ້ນແມ່ນ 10.
ໄລຍະອະນຸຍາດແມ່ນ [1, 255].

waveform_mode
ຕັ້ງຄ່າໂຫມດສໍາລັບ "ຮູບແບບຄື້ນ". ສາມາດເປັນ "ແຖວ", ຫຼື "ຖັນ". ຄ່າເລີ່ມຕົ້ນແມ່ນ "ແຖວ".

waveform_mirror
ຕັ້ງຄ່າຮູບແບບການສະທ້ອນສໍາລັບ "ຮູບແບບຄື້ນ". 0 ຫມາຍຄວາມວ່າ unmirrored, 1 ຫມາຍຄວາມວ່າ mirrored. ໃນ mirrored
ຮູບແບບ, ຄ່າທີ່ສູງກວ່າຈະຖືກສະແດງຢູ່ເບື້ອງຊ້າຍສໍາລັບຮູບແບບ "ແຖວ" ແລະຢູ່ເທິງສຸດ
ສໍາລັບຮູບແບບ "ຖັນ". ຄ່າເລີ່ມຕົ້ນແມ່ນ 0 (ບໍ່ໄດ້ສະທ້ອນ).

ໂໝດສະແດງຜົນ
ຕັ້ງຄ່າຮູບແບບການສະແດງຜົນສໍາລັບ "ຮູບແບບຄື້ນ" ແລະ "ລະດັບ". ມັນຍອມຮັບຄ່າດັ່ງຕໍ່ໄປນີ້:

ຂະບວນແຫ່
ສະແດງກາຟແຍກຕ່າງຫາກສໍາລັບອົງປະກອບສີຂ້າງຄຽງໃນຮູບແບບຄື້ນ "ແຖວ".
ຮູບ​ແບບ​ຫຼື​ຫນຶ່ງ​ຂ້າງ​ລຸ່ມ​ນີ້​ອື່ນໆ​ໃນ "ຖັນ​" ຮູບ​ແບບ​ຮູບ​ແບບ​ຄື້ນ​ສໍາ​ລັບ "waveform​" histogram​
ໂໝດ. ສໍາລັບໂຫມດ histogram "ລະດັບ", ຕໍ່ກຣາຟອົງປະກອບສີແມ່ນຖືກຈັດໃສ່ຂ້າງລຸ່ມນີ້
ເຊິ່ງ​ກັນ​ແລະ​ກັນ.

ການ​ນໍາ​ໃຊ້​ຮູບ​ແບບ​ການ​ສະ​ແດງ​ນີ້​ໃນ​ຮູບ​ແບບ histogram "waveform​" ເຮັດ​ໃຫ້​ມັນ​ງ່າຍ​ທີ່​ຈະ​ຈຸດ​ສີ​
casts ໃນຈຸດເດັ່ນແລະເງົາຂອງຮູບພາບໃດຫນຶ່ງ, ໂດຍການປຽບທຽບ contours ຂອງ
ກຣາຟເທິງ ແລະລຸ່ມຂອງແຕ່ລະຮູບຄື່ນ. ນັບຕັ້ງແຕ່ສີຂາວ, ສີເທົາ, ແລະສີດໍາແມ່ນ
ສະ​ເພາະ​ຈໍາ​ນວນ​ເທົ່າ​ທຽມ​ກັນ​ແທ້​ຂອງ​ສີ​ແດງ​, ສີ​ຂຽວ​, ແລະ​ສີ​ຟ້າ​, ພື້ນ​ທີ່​ເປັນ​ກາງ​ຂອງ​
ຮູບ​ພາບ​ຄວນ​ຈະ​ສະ​ແດງ​ສາມ​ຮູບ​ແບບ​ຄື້ນ​ຄວາມ​ກວ້າງ / ຄວາມ​ສູງ​ປະ​ມານ​ເທົ່າ​ທຽມ​ກັນ​. ຖ້າ​ບໍ່,
ການ​ແກ້​ໄຂ​ແມ່ນ​ງ່າຍ​ທີ່​ຈະ​ປະ​ຕິ​ບັດ​ໂດຍ​ການ​ເຮັດ​ໃຫ້​ການ​ປັບ​ລະ​ດັບ​ສາມ​ຮູບ​ແບບ waves​.

overlay
ນໍາສະເຫນີຂໍ້ມູນດຽວກັນກັບວ່າໃນ "ຂະບວນແຫ່", ຍົກເວັ້ນວ່າກາຟ
ອົງປະກອບຂອງສີທີ່ເປັນຕົວແທນແມ່ນຖືກທັບຊ້ອນໂດຍກົງໃສ່ກັນແລະກັນ.

ໂໝດສະແດງຜົນນີ້ຢູ່ໃນໂໝດ histogram "waveform" ເຮັດໃຫ້ມັນງ່າຍຕໍ່ການສັງເກດ
ຄວາມແຕກຕ່າງຫຼືຄວາມຄ້າຍຄືກັນໃນພື້ນທີ່ທັບຊ້ອນຂອງອົງປະກອບສີທີ່ເປັນ
ຄວນຈະຄືກັນ, ເຊັ່ນ: ສີຂາວກາງ, ສີຂີ້ເຖົ່າ, ຫຼືສີດໍາ.

ຄ່າເລີ່ມຕົ້ນແມ່ນ "ຂະບວນແຫ່".

Level_mode
ຕັ້ງຄ່າໂຫມດສໍາລັບ "ລະດັບ". ສາມາດເປັນ "linear", ຫຼື "logarithmic". ຄ່າເລີ່ມຕົ້ນແມ່ນ "linear".

ອົງປະກອບ
ກໍານົດອົງປະກອບສີໃດທີ່ຈະສະແດງສໍາລັບຮູບແບບ "ລະດັບ". ຄ່າເລີ່ມຕົ້ນແມ່ນ 7.

ຕົວຢ່າງ

·​ການ​ຄິດ​ໄລ່​ແລະ​ແຕ້ມ histogram​:

ffplay -i input -vf histogram

hqdn3d
ນີ້ແມ່ນຕົວກອງ 3d denoise ຄວາມແມ່ນຍໍາສູງ/ຄຸນນະພາບ. ມັນມີຈຸດປະສົງເພື່ອຫຼຸດຜ່ອນສິ່ງລົບກວນຮູບພາບ,
ການຜະລິດຮູບພາບທີ່ລຽບງ່າຍແລະສ້າງຮູບພາບທີ່ຍັງຄົງຢູ່. ມັນຄວນຈະເສີມຂະຫຍາຍ
ການບີບອັດ.

ມັນຍອມຮັບຕົວກໍານົດການທາງເລືອກຕໍ່ໄປນີ້:

luma_spatial
ຕົວເລກຈຸດລອຍທີ່ບໍ່ເປັນລົບທີ່ລະບຸຄວາມແຮງຂອງ luma ທາງກວ້າງຂອງພື້ນ. ມັນ
ຄ່າເລີ່ມຕົ້ນເປັນ 4.0.

chroma_spatial
ຕົວເລກຈຸດລອຍທີ່ບໍ່ເປັນລົບທີ່ລະບຸຄວາມແຮງຂອງ chroma spatial. ມັນ
ເລີ່ມຕົ້ນເປັນ 3.0*luma_spatial/ 4.0

luma_tmp
ຕົວເລກຈຸດລອຍທີ່ລະບຸຄວາມແຮງຂອງ luma. ມັນຕັ້ງໄວ້ໃນຕອນຕົ້ນ
6.0 *luma_spatial/ 4.0

chroma_tmp
ຕົວເລກຈຸດລອຍທີ່ລະບຸຄວາມແຮງຂອງ chroma temporal. ມັນຕັ້ງໄວ້ໃນຕອນຕົ້ນ
luma_tmp*chroma_spatial/luma_spatial.

hqx
ນຳໃຊ້ຕົວກອງການຂະຫຍາຍຄຸນນະພາບສູງທີ່ອອກແບບມາສຳລັບສິລະປະ pixels ລວງ. ການກັ່ນຕອງນີ້ແມ່ນ
ໃນເບື້ອງຕົ້ນສ້າງໂດຍ Maxim Stepin.

ມັນຍອມຮັບທາງເລືອກຕໍ່ໄປນີ້:

n ກໍານົດຂະຫນາດຂະຫນາດ: 2 ສໍາລັບ "hq2x", 3 ສໍາລັບ "hq3x" ແລະ 4 ສໍາລັບ "hq4x". ຄ່າເລີ່ມຕົ້ນແມ່ນ 3.

hstack
ວາງວິດີໂອການປ້ອນຂໍ້ມູນຕາມແນວນອນ.

ການຖ່າຍທອດທັງໝົດຕ້ອງມີຮູບແບບ pixels ລວງດຽວກັນ ແລະມີຄວາມສູງດຽວກັນ.

ໃຫ້ສັງເກດວ່າການກັ່ນຕອງນີ້ໄວກວ່າການນໍາໃຊ້ overlay ແລະ pad ການກັ່ນຕອງເພື່ອສ້າງຜົນຜະລິດດຽວກັນ.

ການກັ່ນຕອງຍອມຮັບທາງເລືອກຕໍ່ໄປນີ້:

nb_inputs
ກໍານົດຈໍານວນການປ້ອນຂໍ້ມູນ. ຄ່າເລີ່ມຕົ້ນແມ່ນ 2.

hue
ປັບປ່ຽນສີ ແລະ/ຫຼື ຄວາມອີ່ມຕົວຂອງວັດສະດຸປ້ອນ.

ມັນຍອມຮັບຕົວກໍານົດການດັ່ງຕໍ່ໄປນີ້:

h ລະບຸມຸມສີເປັນຕົວເລກຂອງອົງສາ. ມັນຍອມຮັບການສະແດງອອກ, ແລະຄ່າເລີ່ມຕົ້ນ
ເຖິງ "0".

s ລະບຸຄວາມອີ່ມຕົວໃນຂອບເຂດ [-10,10]. ມັນຍອມຮັບການສະແດງອອກແລະຄ່າເລີ່ມຕົ້ນທີ່ຈະ
"1".

H ລະບຸມຸມສີເປັນຈຳນວນເຣດຽນ. ມັນຍອມຮັບການສະແດງອອກ, ແລະຄ່າເລີ່ມຕົ້ນ
ເຖິງ "0".

b ລະບຸຄວາມສະຫວ່າງໃນຂອບເຂດ [-10,10]. ມັນຍອມຮັບການສະແດງອອກແລະຄ່າເລີ່ມຕົ້ນທີ່ຈະ
"0".

h ແລະ H ແມ່ນສະເພາະເຊິ່ງກັນແລະກັນ, ແລະບໍ່ສາມາດລະບຸໄດ້ໃນເວລາດຽວກັນ.

ໄດ້ b, h, H ແລະ s ຄ່າທາງເລືອກແມ່ນສະແດງອອກທີ່ມີຄ່າຄົງທີ່ຕໍ່ໄປນີ້:

n ການນັບກອບຂອງກອບການປ້ອນຂໍ້ມູນເລີ່ມຕົ້ນຈາກ 0

pts ເວ​ລາ​ການ​ນໍາ​ສະ​ເຫນີ​ຂອງ​ກອບ​ການ​ປ້ອນ​ຂໍ້​ມູນ​ສະ​ແດງ​ອອກ​ໃນ​ຫົວ​ຫນ່ວຍ​ຖານ​ທີ່​ໃຊ້​ເວ​ລາ​

r ອັດຕາເຟຣມຂອງວິດີໂອປ້ອນຂໍ້ມູນ, NAN ຖ້າອັດຕາເຟຣມປ້ອນຂໍ້ມູນບໍ່ຮູ້ຈັກ

t timestamp ສະ ແດງ ອອກ ເປັນ ວິ ນາ ທີ, NAN ຖ້າ input timestamp ບໍ່ ຮູ້ ຈັກ

tb ພື້ນຖານເວລາຂອງວິດີໂອທີ່ປ້ອນຂໍ້ມູນ

ຕົວຢ່າງ

· ຕັ້ງສີເປັນ 90 ອົງສາ ແລະ ຄວາມອີ່ມຕົວເປັນ 1.0:

hue=h=90:s=1

· ຄຳສັ່ງດຽວກັນແຕ່ສະແດງສີໃນເຣດຽນ:

hue=H=PI/2:s=1

· ໝຸນ​ສີ​ສີ ແລະ​ເຮັດ​ໃຫ້​ຄວາມ​ອີ່ມ​ຕົວ​ປ່ຽນ​ໄປ​ລະ​ຫວ່າງ 0 ຫາ 2 ໃນ​ໄລ​ຍະ​ເວ​ລາ 1 ວິ​ນາ​ທີ:

hue="H=2*PI*t: s=sin(2*PI*t)+1"

· ນຳໃຊ້ເອັບເຟັກຄວາມອີ່ມຕົວ 3 ວິນາທີ ເລີ່ມຈາກ 0:

hue="s=min(t/3\,1)"

ການສະແດງອອກທົ່ວໄປສາມາດຂຽນເປັນ:

hue="s=min(0\, ສູງສຸດ((t-START)/DURATION\, 1))"

· ນຳໃຊ້ເອັບເຟັກຄວາມອີ່ມຕົວ 3 ວິນາທີ ເລີ່ມແຕ່ 5 ວິນາທີ:

hue="s=max(0\, min(1\, (8-t)/3))"

ການສະແດງອອກທົ່ວໄປສາມາດຂຽນເປັນ:

hue="s=max(0\, ນາທີ(1\, (START+DURATION-t)/DURATION))"

ຄໍາສັ່ງ

ການກັ່ນຕອງນີ້ສະຫນັບສະຫນູນຄໍາສັ່ງຕໍ່ໄປນີ້:

b
s
h
H ປັບປ່ຽນສີສີ ແລະ/ຫຼື ຄວາມອີ່ມຕົວ ແລະ/ຫຼື ຄວາມສະຫວ່າງຂອງວິດີໂອທີ່ປ້ອນເຂົ້າ. ໄດ້
ຄໍາສັ່ງຍອມຮັບ syntax ດຽວກັນຂອງທາງເລືອກທີ່ສອດຄ້ອງກັນ.

ຖ້າການສະແດງອອກທີ່ລະບຸບໍ່ຖືກຕ້ອງ, ມັນຖືກເກັບໄວ້ໃນມູນຄ່າປະຈຸບັນຂອງມັນ.

ໄອເດດ
ກວດ​ສອບ​ປະ​ເພດ interlacing ວິ​ດີ​ໂອ​.

ການກັ່ນຕອງນີ້ພະຍາຍາມກວດສອບວ່າກອບການປ້ອນຂໍ້ມູນເປັນ interlaced, ກ້າວຫນ້າ, ເທິງຫຼືລຸ່ມ
ພາກສະຫນາມທໍາອິດ. ມັນຍັງຈະພະຍາຍາມ ແລະກວດຫາຊ່ອງຂໍ້ມູນທີ່ຊ້ຳກັນລະຫວ່າງກອບທີ່ຢູ່ຕິດກັນ
(ສັນຍານຂອງ telecine).

ການກວດສອບເຟຣມດຽວຈະພິຈາລະນາພຽງແຕ່ເຟຣມຕິດກັນທັນທີເມື່ອຈັດປະເພດແຕ່ລະອັນ
ກອບ. ການກວດຫາກອບຫຼາຍອັນລວມເອົາປະຫວັດການຈັດປະເພດກ່ອນໜ້າ
ກອບ.

ຕົວກອງຈະບັນທຶກຄ່າ metadata ເຫຼົ່ານີ້:

single.current_frame
ປະເພດທີ່ກວດພົບຂອງກອບປະຈຸບັນໂດຍໃຊ້ການກວດພົບເຟຣມດຽວ. ໜຶ່ງໃນ: ``tff'' (ເທິງ
ພາກສະຫນາມທໍາອິດ), ``bff'' (ພາກສະຫນາມລຸ່ມທໍາອິດ), ``ກ້າວຫນ້າ'', ຫຼື ``ບໍ່ໄດ້ກໍານົດ''

single.tff
ຕົວເລກສະສົມຂອງເຟຣມຖືກກວດພົບເປັນຊ່ອງຂໍ້ມູນເທິງສຸດທຳອິດໂດຍໃຊ້ການກວດຫາເຟຣມດຽວ.

multiple.tff
ຈຳນວນເຟຣມສະສົມທີ່ກວດພົບວ່າເປັນຊ່ອງຂໍ້ມູນເທິງສຸດກ່ອນໂດຍໃຊ້ຫຼາຍເຟຣມ
ການຊອກຄົ້ນຫາ.

single.bff
ຈຳນວນເຟຣມສະສົມທີ່ກວດພົບວ່າເປັນຊ່ອງລຸ່ມສຸດທຳອິດໂດຍໃຊ້ກອບດ່ຽວ
ການຊອກຄົ້ນຫາ.

multiple.current_frame
ກວດພົບປະເພດຂອງເຟຣມປັດຈຸບັນໂດຍໃຊ້ການກວດສອບຫຼາຍເຟຣມ. ໜຶ່ງໃນ: ``tff'' (ເທິງ
ພາກສະຫນາມທໍາອິດ), ``bff'' (ພາກສະຫນາມລຸ່ມທໍາອິດ), ``ກ້າວຫນ້າ'', ຫຼື ``ບໍ່ໄດ້ກໍານົດ''

multiple.bff
ຈຳນວນເຟຣມສະສົມທີ່ກວດພົບວ່າເປັນຊ່ອງລຸ່ມສຸດກ່ອນໂດຍໃຊ້ຫຼາຍເຟຣມ
ການຊອກຄົ້ນຫາ.

single.progressive
ຈຳນວນເຟຣມສະສົມທີ່ກວດພົບວ່າມີຄວາມຄືບໜ້າໂດຍໃຊ້ການກວດຫາເຟຣມດຽວ.

multiple.progressive
ຈຳນວນເຟຣມສະສົມທີ່ກວດພົບວ່າມີຄວາມຄືບໜ້າໂດຍໃຊ້ການກວດຫາຫຼາຍເຟຣມ.

single.undetermined
ຈຳນວນເຟຣມສະສົມທີ່ບໍ່ສາມາດຈຳແນກໄດ້ໂດຍໃຊ້ການກວດຫາເຟຣມດຽວ.

multiple.undetermined
ຈຳນວນເຟຣມສະສົມທີ່ບໍ່ສາມາດຈັດປະເພດໄດ້ໂດຍໃຊ້ຫຼາຍເຟຣມ
ການຊອກຄົ້ນຫາ.

repeated.current_frame
ຊ່ອງຂໍ້ມູນໃດໃນກອບປັດຈຸບັນແມ່ນຊ້ຳຈາກອັນສຸດທ້າຍ. ຫນຶ່ງ​ໃນ "ບໍ່​ມີ​"​,
``ເທິງ'', ຫຼື ``ລຸ່ມ''.

repeated.neither
ຕົວເລກສະສົມຂອງເຟຣມທີ່ບໍ່ມີຊ່ອງຂໍ້ມູນຊ້ຳໆ.

repeated.top
ຕົວເລກສະສົມຂອງເຟຣມທີ່ມີຊ່ອງດ້ານເທິງຊໍ້າຄືນຈາກດ້ານເທິງຂອງເຟຣມກ່ອນໜ້າ
ພາກສະຫນາມ.

repeated.ລຸ່ມ
ຕົວເລກສະສົມຂອງເຟຣມທີ່ມີຊ່ອງລຸ່ມຊໍ້າຄືນມາຈາກກອບກ່ອນໜ້າ
ພາກສະຫນາມລຸ່ມ.

ຕົວກອງຍອມຮັບຕົວເລືອກຕໍ່ໄປນີ້:

intl_thres
ກໍານົດຂອບເຂດ interlacing.

prog_thres
ກໍານົດຂອບເຂດກ້າວຫນ້າ.

repeat_thres
ເກນສຳລັບການກວດຫາຊ່ອງຂໍ້ມູນຊ້ຳໆ.

ເຄິ່ງ​ຊີ​ວິດ
ຈໍານວນຂອງເຟຣມຫຼັງຈາກນັ້ນການປະກອບສ່ວນຂອງກອບທີ່ໃຫ້ກັບສະຖິຕິໄດ້ຖືກຫຼຸດລົງເຄິ່ງຫນຶ່ງ
(ເຊັ່ນ, ມັນປະກອບສ່ວນພຽງແຕ່ 0.5 ເຂົ້າໃນການຈັດປະເພດຂອງມັນ). ຄ່າເລີ່ມຕົ້ນຂອງ 0 ຫມາຍຄວາມວ່າ
ເຟຣມທັງຫມົດທີ່ເຫັນແມ່ນໄດ້ຮັບນ້ໍາຫນັກເຕັມ 1.0 ຕະຫຼອດໄປ.

analysis_interlaced_flag
ເມື່ອນີ້ບໍ່ແມ່ນ 0 ຫຼັງຈາກນັ້ນ idet ຈະໃຊ້ຈໍານວນກອບທີ່ກໍານົດໄວ້ເພື່ອກໍານົດວ່າ
ທຸງ interlaced ແມ່ນຖືກຕ້ອງ, ມັນຈະບໍ່ນັບກອບທີ່ບໍ່ໄດ້ກໍານົດ. ຖ້າທຸງ
ຖືກພົບເຫັນວ່າຖືກຕ້ອງມັນຈະຖືກນໍາໃຊ້ໂດຍບໍ່ມີການຄິດໄລ່ຕື່ມອີກ, ຖ້າມັນເປັນ
ພົບເຫັນວ່າບໍ່ຖືກຕ້ອງ, ມັນຈະຖືກລຶບລ້າງໂດຍບໍ່ມີການຄິດໄລ່ຕື່ມອີກ. ນີ້
ອະນຸຍາດໃຫ້ໃສ່ຕົວກອງ idet ເປັນວິທີການຄິດໄລ່ຕ່ໍາເພື່ອເຮັດຄວາມສະອາດ
ທຸງ interlaced

il
ຊ່ອງຂໍ້ມູນ Deinterleave ຫຼື interleave.

ການກັ່ນຕອງນີ້ອະນຸຍາດໃຫ້ຫນຶ່ງສາມາດປະມວນຜົນຊ່ອງຮູບພາບ interlaced ໂດຍບໍ່ມີການ deinterlacing ໃຫ້ເຂົາເຈົ້າ.
Deinterleaving ແຍກກອບການປ້ອນຂໍ້ມູນອອກເປັນ 2 ຊ່ອງຂໍ້ມູນ (ເອີ້ນວ່າຮູບເຄິ່ງ). ສາຍຄີກ
ຖືກຍ້າຍໄປເຄິ່ງເທິງຂອງຮູບພາບຜົນຜະລິດ, ເຖິງແມ່ນວ່າເສັ້ນໄປຫາເຄິ່ງລຸ່ມ. ເຈົ້າ​ສາ​ມາດ
ຂະບວນການ (ການກັ່ນຕອງ) ໃຫ້ເຂົາເຈົ້າເປັນເອກະລາດແລະຫຼັງຈາກນັ້ນ re: interleave ໃຫ້ເຂົາເຈົ້າ.

ຕົວກອງຍອມຮັບຕົວເລືອກຕໍ່ໄປນີ້:

luma_mode, l
chroma_mode, c
alpha_mode, a
ຄ່າທີ່ມີຢູ່ສໍາລັບ ໂໝດ ລູມາ, chroma_mode ແລະ alpha_mode ແມ່ນ:

none
ບໍ່​ໄດ້​ເຮັດ​ຫຍັງ.

deinterleave, d
ທົ່ງນາ Deinterleave, ວາງອັນໜຶ່ງຢູ່ເໜືອບ່ອນອື່ນ.

ແຊກແຊງ, i
ຊ່ອງຫວ່າງ. ປີ້ນກັບຜົນກະທົບຂອງ deinterleaving.

ຄ່າເລີ່ມຕົ້ນແມ່ນ "ບໍ່ມີ".

luma_swap, ls
chroma_swap, cs
alpha_swap, as
ສະຫຼັບຊ່ອງຂໍ້ມູນ luma/chroma/alpha. ແລກປ່ຽນເສັ້ນຄູ່ & ຄີກ. ຄ່າເລີ່ມຕົ້ນແມ່ນ 0.

ອັດຕາເງິນເຟີ້
ນຳໃຊ້ເອັບເຟັກຂະຫຍາຍໃສ່ວິດີໂອ.

ການກັ່ນຕອງນີ້ແທນ pixels ລວງໂດຍ ທ້ອງຖິ່ນ(3x3) ໂດຍສະເລ່ຍໂດຍຄໍານຶງເຖິງພຽງແຕ່
ຄ່າສູງກວ່າ pixels.

ມັນຍອມຮັບທາງເລືອກຕໍ່ໄປນີ້:

ຂອບເຂດ 0
ຂອບເຂດ 1
ຂອບເຂດ 2
ຂອບເຂດ 3
ຈໍາກັດການປ່ຽນແປງສູງສຸດສໍາລັບແຕ່ລະຍົນ, ຄ່າເລີ່ມຕົ້ນແມ່ນ 65535. ຖ້າ 0, ຍົນຈະຍັງຄົງຢູ່
ບໍ່ປ່ຽນແປງ.

interlace
ການກັ່ນຕອງ interlacing ງ່າຍດາຍຈາກເນື້ອໃນກ້າວຫນ້າ. ນີ້ interleaves ເທິງ (ຫຼືຕ່ໍາ)
ເສັ້ນຈາກຂອບຄີກທີ່ມີເສັ້ນຕ່ໍາ (ຫຼືເທິງ) ຈາກເຟຣມຄູ່, ຫຼຸດລົງເຄິ່ງຫນຶ່ງຂອງອັດຕາເຟຣມ
ແລະຮັກສາຄວາມສູງຂອງຮູບພາບ.

Original Original New Frame
ກອບ 'j' ກອບ 'j+1' (tff)
=============== ===============================
ແຖວ 0 --------------------> ກອບ 'j' ເສັ້ນ 0
ແຖວທີ 1 ແຖວທີ 1 ----> ກອບ 'j+1' ແຖວ 1
ແຖວທີ 2 ---------------------> ກອບ 'j' ແຖວ 2
ແຖວທີ 3 ແຖວທີ 3 ----> ກອບ 'j+1' ແຖວ 3
... ... ...
New Frame + 1 ຈະຖືກສ້າງຂື້ນໂດຍ Frame 'j+2' ແລະ Frame 'j+3' ແລະອື່ນໆ.

ມັນຍອມຮັບຕົວກໍານົດການທາງເລືອກຕໍ່ໄປນີ້:

ສະແກນ
ນີ້ກໍານົດວ່າກອບ interlaced ໄດ້ຖືກເອົາມາຈາກແມ້ກະທັ້ງ (tff - ເລີ່ມຕົ້ນ) ຫຼື
odd (bff) ເສັ້ນຂອງກອບກ້າວຫນ້າ.

ທາງລຸ່ມ
ເປີດໃຊ້ (ຄ່າເລີ່ມຕົ້ນ) ຫຼືປິດການໃຊ້ງານຕົວກອງ lowpass ຕັ້ງເພື່ອຫຼີກເວັ້ນການ interlacing twitter
ແລະຫຼຸດຜ່ອນຮູບແບບ moire.

kerndeint
ວິດີໂອການປ້ອນຂໍ້ມູນ Deinterlace ໂດຍການໃຊ້ການປັບຕົວຂອງແກ່ນຂອງ Donald Graft. ເຮັດວຽກຢູ່
ພາກສ່ວນທີ່ຕິດກັນຂອງວິດີໂອເພື່ອຜະລິດຂອບທີ່ກ້າວໜ້າ.

ລາຍລະອຽດຂອງຕົວກໍານົດການທີ່ຍອມຮັບດັ່ງຕໍ່ໄປນີ້.

ສົດຊື່ນ
ກໍານົດຂອບເຂດທີ່ມີຜົນກະທົບຕໍ່ຄວາມທົນທານຂອງການກັ່ນຕອງໃນເວລາທີ່ກໍານົດວ່າ pixels ລວງ
ເສັ້ນຕ້ອງໄດ້ຮັບການປຸງແຕ່ງ. ມັນຕ້ອງເປັນຈໍານວນເຕັມໃນໄລຍະ [0,255] ແລະຄ່າເລີ່ມຕົ້ນເປັນ 10.
ຄ່າຂອງ 0 ຈະສົ່ງຜົນໃຫ້ນຳໃຊ້ຂະບວນການໃນທຸກໆ pixels.

ແຜນທີ່ ທາສີ pixels ເກີນຄ່າເກນເປັນສີຂາວ ຖ້າຕັ້ງເປັນ 1. ຄ່າເລີ່ມຕົ້ນແມ່ນ 0.

ຄໍາສັ່ງ
ກໍານົດຄໍາສັ່ງພາກສະຫນາມ. ສະຫຼັບຊ່ອງຂໍ້ມູນຖ້າຕັ້ງເປັນ 1, ປ່ອຍໃຫ້ຊ່ອງຫວ່າງຢູ່ຄົນດຽວຖ້າ 0. ຄ່າເລີ່ມຕົ້ນແມ່ນ 0.

ແຫຼມ
ເປີດໃຊ້ການແຫຼມເພີ່ມເຕີມຖ້າຕັ້ງເປັນ 1. ຄ່າເລີ່ມຕົ້ນແມ່ນ 0.

ສອງທາງ
ເປີດໃຊ້ການເຮັດໃຫ້ຄົມຊັດສອງທາງ ຖ້າຕັ້ງເປັນ 1. ຄ່າເລີ່ມຕົ້ນແມ່ນ 0.

ຕົວຢ່າງ

· ນຳໃຊ້ຄ່າເລີ່ມຕົ້ນ:

kerndeint=thresh=10:map=0:order=0:sharp=0:twoway=0

· ເປີດ​ໃຊ້​ງານ​ການ​ແຫຼມ​ເພີ່ມ​ເຕີມ​:

kerndeint=sharp=1

· ທາສີ pixels ປະມວນຜົນເປັນສີຂາວ:

kerndeint=ແຜນທີ່=1

ການແກ້ໄຂເລນ
ແກ້ໄຂການບິດເບືອນຂອງເລນ radial

ການກັ່ນຕອງນີ້ສາມາດຖືກນໍາໃຊ້ເພື່ອແກ້ໄຂການບິດເບືອນ radial ເປັນສາມາດເປັນຜົນມາຈາກການນໍາໃຊ້ຂອງ
ເລນມຸມກວ້າງ, ແລະດັ່ງນັ້ນຈຶ່ງແກ້ໄຂຮູບພາບຄືນໃຫມ່. ເພື່ອຊອກຫາຕົວກໍານົດການທີ່ເຫມາະສົມຫນຶ່ງສາມາດເຮັດໄດ້
ໃຊ້ເຄື່ອງມືທີ່ມີຢູ່ສໍາລັບຕົວຢ່າງເປັນສ່ວນຫນຶ່ງຂອງ opencv ຫຼືພຽງແຕ່ການທົດລອງແລະຄວາມຜິດພາດ. ການນໍາໃຊ້
opencv ໃຊ້ຕົວຢ່າງການປັບທຽບ (ພາຍໃຕ້ຕົວຢ່າງ / cpp) ຈາກແຫຼ່ງ opencv ແລະສະກັດ
ຄ່າສໍາປະສິດ k1 ແລະ k2 ຈາກ matrix ຜົນໄດ້ຮັບ.

ໃຫ້ສັງເກດວ່າປະສິດທິຜົນການກັ່ນຕອງດຽວກັນແມ່ນມີຢູ່ໃນເຄື່ອງມືເປີດແຫຼ່ງ Krita ແລະ
Digikam ຈາກໂຄງການ KDE.

ກົງກັນຂ້າມກັບ ຂອບມືດ ການກັ່ນຕອງ, ເຊິ່ງຍັງສາມາດຖືກນໍາໃຊ້ເພື່ອຊົດເຊີຍຄວາມຜິດພາດຂອງເລນ, ນີ້
ການກັ່ນຕອງແກ້ໄຂການບິດເບືອນຂອງຮູບພາບ, ໃນຂະນະທີ່ ຂອບມືດ ແກ້​ໄຂ​ຄວາມ​ສະ​ຫວ່າງ​
ການແຜ່ກະຈາຍ, ດັ່ງນັ້ນທ່ານອາດຈະຕ້ອງການໃຊ້ການກັ່ນຕອງທັງສອງຮ່ວມກັນໃນບາງກໍລະນີ, ເຖິງແມ່ນວ່າທ່ານ
ຈະຕ້ອງໃຊ້ເວລາດູແລຂອງຄໍາສັ່ງ, ie ບໍ່ວ່າຈະເປັນ vignetting ຄວນຖືກນໍາໃຊ້ກ່ອນຫຼື
ຫຼັງຈາກການແກ້ໄຂເລນ.

ທາງເລືອກໃນການ

ຕົວກອງຍອມຮັບຕົວເລືອກຕໍ່ໄປນີ້:

cx ການປະສານງານ x ພີ່ນ້ອງຂອງຈຸດປະສານງານຂອງຮູບພາບ, ແລະດັ່ງນັ້ນຈຸດສູນກາງຂອງ
ການບິດເບືອນ. ຄ່ານີ້ມີໄລຍະ [0,1] ແລະສະແດງອອກເປັນສ່ວນໜຶ່ງຂອງຮູບ
ຄວາມກວ້າງ.

cy Relative y-coordinate ຂອງຈຸດປະສານງານຂອງຮູບພາບ, ແລະດັ່ງນັ້ນຈຸດສູນກາງຂອງ
ການບິດເບືອນ. ຄ່ານີ້ມີໄລຍະ [0,1] ແລະສະແດງອອກເປັນສ່ວນໜຶ່ງຂອງຮູບ
ລະດັບຄວາມສູງ.

k1 ຄ່າສໍາປະສິດຂອງໄລຍະການແກ້ໄຂສີ່ຫລ່ຽມ. 0.5 ຫມາຍຄວາມວ່າບໍ່ມີການແກ້ໄຂ.

k2 ຄ່າສໍາປະສິດຂອງໄລຍະການແກ້ໄຂສອງເທົ່າ. 0.5 ຫມາຍຄວາມວ່າບໍ່ມີການແກ້ໄຂ.

ສູດທີ່ສ້າງການແກ້ໄຂແມ່ນ:

r_src = r_tgt * (1 + k1 *(r_tgt / r_0)^2 + k2 *(r_tgt / r_0)^4)

ບ່ອນທີ່ r_0 ແມ່ນເຄິ່ງຫນຶ່ງຂອງເສັ້ນຂວາງຮູບພາບແລະ r_src ແລະ r_tgt ແມ່ນໄລຍະຫ່າງຈາກ
ຈຸດປະສານງານໃນແຫຼ່ງແລະຮູບພາບເປົ້າຫມາຍ, ຕາມລໍາດັບ.

lut3d
ນຳໃຊ້ 3D LUT ກັບວິດີໂອທີ່ປ້ອນເຂົ້າ.

ຕົວກອງຍອມຮັບຕົວເລືອກຕໍ່ໄປນີ້:

ເອກະສານ
ຕັ້ງຊື່ໄຟລ໌ 3D LUT.

ຮູບແບບທີ່ຮອງຮັບໃນປັດຈຸບັນ:

3 ລລ ຜົນກະທົບຕໍ່

cube
ໄອຣິດາ

that DaVinci

m3d Pandora

ແປ
ເລືອກຮູບແບບການແຊກແຊງ.

ຄ່າທີ່ມີຢູ່ແມ່ນ:

more
ໃຊ້ຄ່າຈາກຈຸດທີ່ກຳນົດໄວ້ທີ່ໃກ້ທີ່ສຸດ.

ສາມເສັ້ນ
Interpolate ຄ່າໂດຍໃຊ້ 8 ຈຸດທີ່ກໍານົດ cube.

ຕຶກໂບດ
Interpolate ຄ່າໂດຍໃຊ້ tetrahedron.

lut, lutrgb, lutyuv
ຄິດ​ໄລ່​ຕາ​ຕະ​ລາງ​ການ​ຊອກ​ຫາ​ສໍາ​ລັບ​ການ​ຜູກ​ມັດ​ການ​ປ້ອນ​ຂໍ້​ມູນ​ຂອງ​ອົງ​ປະ​ກອບ pixel ແຕ່​ລະ​ກັບ​ຄ່າ​ຜົນ​ຜະ​ລິດ​ໄດ້​,
ແລະ​ນໍາ​ໃຊ້​ມັນ​ກັບ​ວິ​ດີ​ໂອ​ການ​ປ້ອນ​ຂໍ້​ມູນ​.

lutyuv ນໍາ​ໃຊ້​ຕາ​ຕະ​ລາງ​ການ​ຊອກ​ຫາ​ກັບ​ວິ​ດີ​ໂອ​ການ​ປ້ອນ​ຂໍ້​ມູນ YUV​, lutrgb ກັບວິດີໂອ RGB ປ້ອນຂໍ້ມູນ.

ຕົວກອງເຫຼົ່ານີ້ຍອມຮັບພາລາມິເຕີຕໍ່ໄປນີ້:

c0 ຕັ້ງການສະແດງອອກອົງປະກອບ pixel ທໍາອິດ

c1 ກໍານົດການສະແດງອອກອົງປະກອບ pixel ທີສອງ

c2 ກໍານົດການສະແດງອອກອົງປະກອບ pixel ທີສາມ

c3 ກໍານົດການສະແດງອອກອົງປະກອບ pixel ສີ່, ກົງກັບອົງປະກອບອັນຟາ

r ກໍານົດການສະແດງອອກອົງປະກອບສີແດງ

g ກໍານົດການສະແດງອອກອົງປະກອບສີຂຽວ

b ກໍານົດການສະແດງອອກອົງປະກອບສີຟ້າ

a ການສະແດງອອກຂອງອົງປະກອບອັນຟາ

y ຕັ້ງຄ່າການສະແດງອອກອົງປະກອບ Y/luminance

u ຕັ້ງຄ່າການສະແດງອອກອົງປະກອບ U/Cb

v ຕັ້ງການສະແດງອອກອົງປະກອບ V/Cr

ພວກເຂົາແຕ່ລະກໍານົດການສະແດງອອກທີ່ຈະໃຊ້ສໍາລັບການຄິດໄລ່ຕາຕະລາງຊອກຫາສໍາລັບ
ຄ່າອົງປະກອບ pixel ທີ່ສອດຄ້ອງກັນ.

ອົງປະກອບທີ່ແນ່ນອນທີ່ກ່ຽວຂ້ອງກັບແຕ່ລະຄົນ c* ທາງເລືອກແມ່ນຂຶ້ນກັບຮູບແບບໃນການປ້ອນຂໍ້ມູນ.

ໄດ້ ຕາດ ການກັ່ນຕອງຕ້ອງການຮູບແບບ YUV ຫຼື RGB pixels ໃນການປ້ອນຂໍ້ມູນ, lutrgb ຕ້ອງການ RGB
ຮູບແບບ pixels ລວງ input, ແລະ lutyuv ຕ້ອງການ YUV.

ການສະແດງອອກສາມາດປະກອບມີຄ່າຄົງທີ່ແລະຫນ້າທີ່ດັ່ງຕໍ່ໄປນີ້:

w
h ຄວາມກວ້າງແລະຄວາມສູງຂອງວັດສະດຸປ້ອນ.

h ຄ່າການປ້ອນຂໍ້ມູນສໍາລັບອົງປະກອບຂອງ pixels ລວງ.

clipval
ມູນຄ່າການປ້ອນຂໍ້ມູນ, clipped ກັບ minval-ສູງສຸດທີ່ເຄຍ range

ສູງສຸດທີ່ເຄຍ
ຄ່າສູງສຸດສໍາລັບອົງປະກອບ pixels.

minval
ຄ່າຕໍ່າສຸດສໍາລັບອົງປະກອບຂອງ pixels ລວງ.

ລົບ
ຄ່າລົບສໍາລັບຄ່າອົງປະກອບ pixels, clipped ກັບ minval-ສູງສຸດທີ່ເຄຍ ຊ່ວງ;
ມັນສອດຄ່ອງກັບການສະແດງອອກ "maxval-clipval+minval".

ຄລິບ(val)
ຄ່າ​ທີ່​ຄິດ​ໄລ່​ໃນ​ h, clipped ກັບ minval-ສູງສຸດທີ່ເຄຍ range

ແກມມາ
ຄ່າການແກ້ໄຂແກມມາທີ່ຄຳນວນຂອງຄ່າອົງປະກອບຂອງ pixels ລວງ, ຖືກຕັດໃສ່
minval-ສູງສຸດທີ່ເຄຍ ຊ່ວງ. ມັນກົງກັນກັບການສະແດງອອກ
"pow((clipval-minval)/(maxval-minval)\,gamma)*(maxval-minval)+minval"

ການສະແດງອອກທັງໝົດເປັນຄ່າເລີ່ມຕົ້ນເປັນ "val".

ຕົວຢ່າງ

· ລົບ​ລ້າງ​ວິ​ດີ​ໂອ​ການ​ປ້ອນ​ຂໍ້​ມູນ​:

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"

ຂ້າງເທິງແມ່ນຄືກັນກັບ:

lutrgb="r=negval:g=negval:b=negval"
lutyuv="y=negval:u=negval:v=negval"

· negate luminance:

lutyuv=y=negval

· ເອົາອົງປະກອບ chroma ອອກ, ປ່ຽນວິດີໂອໃຫ້ເປັນຮູບສີຂີ້ເຖົ່າ:

lutyuv="u=128:v=128"

·ສະຫມັກຂໍເອົາຜົນກະທົບການເຜົາໄຫມ້ luma:

lutyuv="y=2*val"

· ເອົາອົງປະກອບສີຂຽວ ແລະສີຟ້າອອກ:

lutergb="g=0:b=0"

·ຕັ້ງຄ່າຊ່ອງ alpha ຄົງທີ່ກ່ຽວກັບການປ້ອນຂໍ້ມູນ:

format=rgba,lutrgb=a="maxval-minval/2"

· ແກ້​ໄຂ gamma luminance ໂດຍ​ປັດ​ໄຈ 0.5​:

lutyuv=y=gammaval(0.5)

· ຍົກເລີກການບິດທີ່ສຳຄັນຂອງ luma:

lutyuv=y='bitand(val, 128+64+32)'

ຍົນລວມ
ລວມອົງປະກອບຊ່ອງສີຈາກການຖ່າຍທອດວິດີໂອຫຼາຍອັນ.

ການກັ່ນຕອງຍອມຮັບເຖິງ 4 ກະແສການປ້ອນຂໍ້ມູນ, ແລະລວມເອົາແຜນການປ້ອນຂໍ້ມູນທີ່ເລືອກໃສ່ກັບຜົນໄດ້ຮັບ
ວິດີໂອ.

ຕົວກອງນີ້ຍອມຮັບຕົວເລືອກຕໍ່ໄປນີ້:

ແຜນທີ່
ຕັ້ງຄ່າການປ້ອນຂໍ້ມູນເພື່ອສົ່ງອອກແຜນທີ່ຍົນ. ຄ່າເລີ່ມຕົ້ນແມ່ນ 0.

ແຜນທີ່ແມ່ນຖືກກໍານົດເປັນ bitmap. ມັນຄວນຈະຖືກລະບຸເປັນເລກຖານສິບຫົກ
ໃນຮູບແບບ 0xAa[Bb[Cc[Dd]]]. 'Aa' ອະທິບາຍແຜນທີ່ສໍາລັບຍົນທໍາອິດຂອງຍົນ
ກະແສຜົນຜະລິດ. 'A' ກໍານົດຈໍານວນການປ້ອນຂໍ້ມູນເພື່ອໃຊ້ (ຈາກ 0 ຫາ 3), ແລະ 'a'
ເລກຍົນຂອງວັດສະດຸປ້ອນທີ່ສອດຄ້ອງກັນທີ່ຈະໃຊ້ (ຈາກ 0 ຫາ 3). ສ່ວນທີ່ເຫຼືອຂອງ
ແຜນທີ່ແມ່ນຄ້າຍຄືກັນ, 'Bb' ອະທິບາຍແຜນທີ່ສໍາລັບການຖ່າຍທອດຜົນຜະລິດຍົນທີສອງ,
'cc' ອະທິບາຍການສ້າງແຜນທີ່ສໍາລັບການຖ່າຍທອດຍົນທີສາມ ແລະ 'Dd' ອະທິບາຍເຖິງ
ການສ້າງແຜນທີ່ສໍາລັບກະແສຜົນຜະລິດຍົນສີ່.

ຮູບແບບ
ກໍານົດຮູບແບບ pixels ລວງຜົນຜະລິດ. ຄ່າເລີ່ມຕົ້ນແມ່ນ "yuva444p".

ຕົວຢ່າງ

· ຮວມສະຕຣີມວິດີໂອສີເທົາສາມອັນທີ່ມີຄວາມກວ້າງແລະຄວາມສູງດຽວກັນເຂົ້າໄປໃນສະຕຣີມວິດີໂອດຽວ:

[a0][a1][a2]mergeplanes=0x001020:yuv444p

· ຮວມການຖ່າຍທອດສົດທີ 1 yuv444p ແລະສະຕຣີມວິດີໂອສີເທົາທີ 2 ເຂົ້າໄປໃນສະຕຣີມວິດີໂອ yuva444p:

[a0][a1]mergeplanes=0x00010210:yuva444p

· Swap Y ແລະ A ຍົນໃນ yuva444p stream:

format=yuva444p,mergeplanes=0x03010200:yuva444p

· Swap U ແລະ V ຍົນໃນ yuv420p stream:

format=yuv420p,mergeplanes=0x000201:yuv420p

· Cast a rgb24 clip to yuv444p:

format=rgb24,mergeplanes=0x000102:yuv444p

mcdeint
ນຳໃຊ້ motion-compensation deinterlacing.

ມັນຕ້ອງການຫນຶ່ງຊ່ອງຂໍ້ມູນຕໍ່ກອບເປັນ input ແລະດັ່ງນັ້ນຈຶ່ງຕ້ອງຖືກນໍາໃຊ້ຮ່ວມກັນກັບ yadif = 1/3 ຫຼື
ທຽບເທົ່າ.

ຕົວກອງນີ້ຍອມຮັບຕົວເລືອກຕໍ່ໄປນີ້:

ຮູບແບບການ
ກໍານົດຮູບແບບ deinterlacing.

ມັນຍອມຮັບຫນຶ່ງໃນຄ່າຕໍ່ໄປນີ້:

ໄວ
ຂະຫນາດກາງ
ຊ້າ
ໃຊ້ການປະເມີນການເຄື່ອນໄຫວຊ້ຳໆ

extra_slow
ຄື ຊ້າ, ແຕ່ໃຊ້ກອບການອ້າງອີງຫຼາຍ.

ຄ່າເລີ່ມຕົ້ນແມ່ນ ໄວ.

ຄວາມສະເີພາບ
ກໍານົດຄວາມເທົ່າທຽມພາກສະຫນາມຮູບພາບທີ່ສົມມຸດສໍາລັບວິດີໂອທີ່ປ້ອນຂໍ້ມູນ. ມັນຕ້ອງເປັນຫນຶ່ງໃນ
ຄ່າຕໍ່ໄປນີ້:

0, tff
ສົມມຸດວ່າຊັ້ນເທິງກ່ອນ

1, BFF
ສົມມຸດຊ່ອງລຸ່ມສຸດກ່ອນ

ຄ່າເລີ່ມຕົ້ນແມ່ນ BFF.

qp ຕັ້ງຕົວກໍານົດການປະລິມານຕໍ່ບລັອກ (QP) ທີ່ໃຊ້ໂດຍຕົວເຂົ້າລະຫັດພາຍໃນ.

ຄ່າທີ່ສູງກວ່າຄວນສົ່ງຜົນໃຫ້ຊ່ອງ vector vector ຄ່ອງຕົວກວ່າ ແຕ່ຈະດີທີ່ສຸດໜ້ອຍລົງ
vectors ສ່ວນບຸກຄົນ. ຄ່າເລີ່ມຕົ້ນແມ່ນ 1.

mpdecimate
ວາງກອບທີ່ບໍ່ແຕກຕ່າງກັນຢ່າງຫຼວງຫຼາຍຈາກກອບທີ່ຜ່ານມາເພື່ອຫຼຸດຜ່ອນກອບ
ອັດຕາ.

ການນໍາໃຊ້ຫຼັກຂອງການກັ່ນຕອງນີ້ແມ່ນສໍາລັບການເຂົ້າລະຫັດອັດຕາບິດຕ່ໍາຫຼາຍ (ເຊັ່ນ: ການຖ່າຍທອດຜ່ານ dialup
ໂມເດັມ), ແຕ່ໃນທາງທິດສະດີສາມາດຖືກນໍາໃຊ້ສໍາລັບການແກ້ໄຂຮູບເງົາທີ່ກົງກັນຂ້າມກັບໂທລະທັດ
ບໍ່ຖືກຕ້ອງ.

ລາຍລະອຽດຂອງທາງເລືອກທີ່ຍອມຮັບດັ່ງຕໍ່ໄປນີ້.

ສູງສຸດທີ່ເຄຍ ກໍານົດຈໍານວນສູງສຸດຂອງເຟຣມຕິດຕໍ່ກັນທີ່ສາມາດຖືກຫຼຸດລົງ (ຖ້າເປັນບວກ), ຫຼື
ໄລຍະຫ່າງຕໍ່າສຸດລະຫວ່າງກອບທີ່ຫຼຸດລົງ (ຖ້າເປັນລົບ). ຖ້າຄ່າແມ່ນ 0, the
ກອບຖືກຫຼຸດລົງໂດຍບໍ່ຄໍານຶງເຖິງຈໍານວນຂອງກອບທີ່ຫຼຸດລົງຕາມລໍາດັບທີ່ຜ່ານມາ.

ຄ່າເລີ່ມຕົ້ນແມ່ນ 0.

hi
lo
ເສື້ອຜ້າ
ກໍານົດຄ່າເລີ່ມຕົ້ນຫຼຸດລົງ.

ຄຸນຄ່າສໍາລັບ hi ແລະ lo ແມ່ນສໍາລັບ 8x8 pixel blocks ແລະເປັນຕົວແທນຂອງມູນຄ່າ pixels ຕົວຈິງ
ຄວາມແຕກຕ່າງ, ດັ່ງນັ້ນຂອບເຂດຂອງ 64 ເທົ່າກັບ 1 ຫນ່ວຍຂອງຄວາມແຕກຕ່າງສໍາລັບແຕ່ລະ pixels,
ຫຼືດຽວກັນແຜ່ຂະຫຍາຍອອກທີ່ແຕກຕ່າງກັນໃນໄລຍະຕັນ.

ກອບແມ່ນຜູ້ສະຫມັກສໍາລັບການຫຼຸດລົງຖ້າຫາກວ່າບໍ່ມີ 8x8 ຕັນແຕກຕ່າງກັນຫຼາຍກ່ວາເກນ
of hi, ແລະຖ້າຫາກວ່າບໍ່ມີຫຼາຍກ່ວາ ເສື້ອຜ້າ blocks (1 ຫມາຍຄວາມວ່າຮູບພາບທັງຫມົດ) ແຕກຕ່າງກັນຫຼາຍກ່ວາ
ເກນຂອງ lo.

ຄ່າເລີ່ມຕົ້ນສໍາລັບ hi ແມ່ນ 64*12, ຄ່າເລີ່ມຕົ້ນຂອງ lo ແມ່ນ 64*5, ແລະຄ່າເລີ່ມຕົ້ນຂອງ
ເສື້ອຜ້າ ແມ່ນ 0.33.

ປະຕິເສດ
ລົບ​ລ້າງ​ວິ​ດີ​ໂອ​ການ​ປ້ອນ​ຂໍ້​ມູນ​.

ມັນຍອມຮັບຈໍານວນຈໍານວນ input; ຖ້າບໍ່ແມ່ນສູນ, ມັນຈະລົບລ້າງອົງປະກອບອັນຟາ (ຖ້າມີ).
ຄ່າເລີ່ມຕົ້ນໃນການປ້ອນຂໍ້ມູນແມ່ນ 0.

ຮູບແບບ
ບັງຄັບ libavfilter ບໍ່ໃຫ້ໃຊ້ຮູບແບບ pixels ໃດໆທີ່ລະບຸໄວ້ສໍາລັບການປ້ອນຂໍ້ມູນຕໍ່ໄປ
ຕົວກອງ

ມັນຍອມຮັບຕົວກໍານົດການດັ່ງຕໍ່ໄປນີ້:

pix_fmts
A '|'-separated list of pixels format names, ເຊັ່ນ: apix_fmts=yuv420p|monow|rgb24".

ຕົວຢ່າງ

·ບັງຄັບ libavfilter ໃຊ້ຮູບແບບທີ່ແຕກຕ່າງຈາກ yuv420p ສໍາລັບການປ້ອນກັບ vflip ໄດ້
ການກັ່ນຕອງ:

noformat=pix_fmts=yuv420p,vflip

· ແປງ​ວິ​ດີ​ໂອ​ການ​ປ້ອນ​ຂໍ້​ມູນ​ເປັນ​ຮູບ​ແບບ​ໃດ​ຫນຶ່ງ​ທີ່​ບໍ່​ມີ​ຢູ່​ໃນ​ບັນ​ຊີ​ລາຍ​ການ​:

noformat=yuv420p|yuv444p|yuv410p

ສຽງຮົບກວນ
ເພີ່ມສິ່ງລົບກວນໃນກອບການປ້ອນຂໍ້ມູນວິດີໂອ.

ຕົວກອງຍອມຮັບຕົວເລືອກຕໍ່ໄປນີ້:

all_seed
c0_ແກ່ນ
c1_ແກ່ນ
c2_ແກ່ນ
c3_ແກ່ນ
ກໍານົດເມັດສິ່ງລົບກວນສໍາລັບອົງປະກອບ pixels ລວງສະເພາະຫຼືອົງປະກອບ pixels ລວງທັງຫມົດໃນກໍລະນີຂອງ
all_seed. ຄ່າເລີ່ມຕົ້ນແມ່ນ 123457.

ຄວາມ​ເຂັ້ມ​ແຂງ​ທັງ​ຫມົດ​, ທັງ ໝົດ
c0_strength, c0s
c1_strength, c1s
c2_strength, c2s
c3_strength, c3s
ກໍານົດຄວາມແຮງຂອງສຽງສໍາລັບອົງປະກອບ pixels ລວງສະເພາະຫຼືອົງປະກອບ pixels ລວງທັງຫມົດໃນກໍລະນີ
all_strength. ຄ່າເລີ່ມຕົ້ນແມ່ນ 0. ໄລຍະອະນຸຍາດແມ່ນ [0, 100].

ທຸງທັງໝົດ, ທັງໝົດ
c0_flags, c0f
c1_flags, c1f
c2_flags, c2f
c3_flags, c3f
ຕັ້ງທຸງອົງປະກອບ pixels ຫຼືຕັ້ງທຸງສໍາລັບອົງປະກອບທັງຫມົດ if all_flags. ມີ
ຄ່າຂອງທຸງອົງປະກອບແມ່ນ:

a ສຽງລົບກວນຊົ່ວຄາວໂດຍສະເລ່ຍ (ອ່ອນກວ່າ)

p ປະສົມສຽງສຸ່ມກັບຮູບແບບປົກກະຕິ (ເຄິ່ງ).

t ສິ່ງລົບກວນຊົ່ວຄາວ (ການປ່ຽນແປງຮູບແບບສຽງລະຫວ່າງກອບ)

u ສິ່ງລົບກວນທີ່ເປັນເອກະພາບ (gaussian ຖ້າບໍ່ດັ່ງນັ້ນ)

ຕົວຢ່າງ

ເພີ່ມສຽງລົບກວນຊົ່ວຄາວ ແລະ ເປັນເອກະພາບໃນການປ້ອນວິດີໂອ:

noise=alls=20:allf=t+u

null
ຜ່ານແຫຼ່ງວິດີໂອທີ່ບໍ່ປ່ຽນແປງໄປຫາຜົນຜະລິດ.

ocv
ນຳໃຊ້ການຫັນປ່ຽນວິດີໂອໂດຍໃຊ້ libopencv.

ເພື່ອເປີດໃຊ້ການກັ່ນຕອງນີ້, ຕິດຕັ້ງຫ້ອງສະຫມຸດ libopencv ແລະສ່ວນຫົວແລະກໍາຫນົດຄ່າ FFmpeg ກັບ
"--enable-libopencv".

ມັນຍອມຮັບຕົວກໍານົດການດັ່ງຕໍ່ໄປນີ້:

filter_name
ຊື່ຂອງຕົວກອງ libopencv ທີ່ຈະນໍາໃຊ້.

filter_params
ຕົວກໍານົດການທີ່ຈະສົ່ງກັບການກັ່ນຕອງ libopencv. ຖ້າບໍ່ໄດ້ລະບຸ, ຄ່າເລີ່ມຕົ້ນ
ຄາດວ່າ.

ອ້າງອີງເຖິງເອກະສານ libopencv ທີ່ເປັນທາງການສໍາລັບຂໍ້ມູນເພີ່ມເຕີມທີ່ຊັດເຈນ:
<http://docs.opencv.org/master/modules/imgproc/doc/filtering.html>

ການກັ່ນຕອງ libopencv ຫຼາຍແມ່ນສະຫນັບສະຫນູນ; ເບິ່ງພາກສ່ວນຍ່ອຍຕໍ່ໄປນີ້.

ເຈືອຈາງ

ຂະຫຍາຍຮູບພາບໂດຍການໃຊ້ອົງປະກອບໂຄງສ້າງສະເພາະ. ມັນກົງກັບ libopencv
ຟັງຊັນ "cvDilate".

ມັນຍອມຮັບຕົວກໍານົດການ: struct_el|nb_iterations.

struct_el ເປັນຕົວແທນຂອງອົງປະກອບໂຄງສ້າງ, ແລະມີ syntax:
ຄໍxແຖວ+anchor_xxanchor_y/ຮູບຮ່າງ

ຄໍ ແລະ ແຖວ ເປັນຕົວແທນຂອງຈໍານວນຖັນແລະແຖວຂອງອົງປະກອບໂຄງສ້າງ,
anchor_x ແລະ anchor_y ຈຸດສະມໍ, ແລະ ຮູບຮ່າງ ຮູບຮ່າງສໍາລັບອົງປະກອບໂຄງສ້າງ.
ຮູບຮ່າງ ຈະຕ້ອງເປັນ "rect", "ຂ້າມ", "ellipse", ຫຼື "custom".

ຖ້າມູນຄ່າສໍາລັບ ຮູບຮ່າງ ແມ່ນ "ກຳນົດເອງ", ມັນຕ້ອງຖືກຕິດຕາມດ້ວຍສາຍຂອງແບບຟອມ
"=ຊື່​ເອ​ກະ​ສານ". ໄຟລ໌ທີ່ມີຊື່ ຊື່​ເອ​ກະ​ສານ ແມ່ນສົມມຸດວ່າເປັນຕົວແທນຂອງຮູບພາບຄູ່, ມີແຕ່ລະຄົນ
ຕົວອັກສອນທີ່ສາມາດພິມໄດ້ທີ່ສອດຄ້ອງກັບ pixels ລວງສົດໃສ. ເມື່ອປະເພນີ ຮູບຮ່າງ ຖືກນໍາໃຊ້, ຄໍ ແລະ
ແຖວ ແມ່ນຖືກລະເລີຍ, ຕົວເລກ ຫຼືຖັນ ແລະແຖວຂອງໄຟລ໌ທີ່ອ່ານນັ້ນຈະຖືກສົມມຸດແທນ.

ຄ່າເລີ່ມຕົ້ນ ສຳ ລັບ struct_el ແມ່ນ "3x3+0x0/rect".

nb_iterations ກໍານົດຈໍານວນເວລາທີ່ການຫັນປ່ຽນຖືກນໍາໃຊ້ກັບຮູບພາບ, ແລະ
ຄ່າເລີ່ມຕົ້ນເປັນ 1.

ບາງຕົວຢ່າງ:

# ໃຊ້ຄ່າເລີ່ມຕົ້ນ
ocv=ຂະຫຍາຍ

# Dilate ໂດຍໃຊ້ອົງປະກອບໂຄງສ້າງດ້ວຍໄມ້ກາງແຂນ 5x5, ເຮັດຊ້ຳສອງເທື່ອ
ocv=filter_name=dilate:filter_params=5x5+2x2/cross|2

# ອ່ານຮູບຮ່າງຈາກໄຟລ໌ diamond.shape, iterating ສອງຄັ້ງ.
# ໄຟລ໌ diamond.shape ອາດຈະມີຮູບແບບຂອງຕົວອັກສອນແບບນີ້
# *
# ***
# *****
# ***
# *
# ຖັນ ແລະແຖວທີ່ລະບຸນັ້ນຖືກລະເລີຍ
# ແຕ່ຈຸດປະສານງານຂອງສະມໍແມ່ນບໍ່
ocv=dilate:0x0+2x2/custom=diamond.shape|2

ເຊາະເຈື່ອນ

ລົບຮູບພາບໂດຍການໃຊ້ອົງປະກອບໂຄງສ້າງສະເພາະ. ມັນກົງກັບ libopencv
ຟັງຊັນ "cvErode".

ມັນຍອມຮັບຕົວກໍານົດການ: struct_el:nb_iterations, ມີ syntax ແລະ semantics ດຽວກັນກັບ
ໄດ້ ເຈືອຈາງ ຕົວກອງ

ກ້ຽງ

ເລື່ອນວິດີໂອການປ້ອນຂໍ້ມູນ.

ການກັ່ນຕອງເອົາຕົວກໍານົດການດັ່ງຕໍ່ໄປນີ້: ປະເພດ|param1|param2|param3|param4.

ປະເພດ ແມ່ນປະເພດຂອງການກັ່ນຕອງກ້ຽງເພື່ອນໍາໃຊ້, ແລະຕ້ອງເປັນຫນຶ່ງໃນຄ່າຕໍ່ໄປນີ້:
"ມົວ", "blur_no_scale", "ປານກາງ", "gaussian", ຫຼື "ສອງຝ່າຍ". ຄ່າເລີ່ມຕົ້ນແມ່ນ
"ໂກສຊຽນ".

ຄວາມ ໝາຍ ຂອງ param1, param2, param3, ແລະ param4 ຂຶ້ນກັບປະເພດກ້ຽງ. param1 ແລະ
param2 ຍອມຮັບຄ່າບວກຈຳນວນເຕັມ ຫຼື 0. param3 ແລະ param4 ຍອມຮັບຈຸດລອຍ
ຄ່າ.

ຄ່າເລີ່ມຕົ້ນ ສຳ ລັບ param1 ແມ່ນ 3. ຄ່າເລີ່ມຕົ້ນຂອງພາລາມິເຕີອື່ນໆແມ່ນ 0.

ພາລາມິເຕີເຫຼົ່ານີ້ກົງກັບພາລາມິເຕີທີ່ຖືກມອບໃຫ້ກັບຟັງຊັນ libopencv
"cvSmooth".

overlay
ວາງວິດີໂອໜຶ່ງຢູ່ເທິງສຸດຂອງວິດີໂອອື່ນ.

ມັນໃຊ້ເວລາສອງວັດສະດຸປ້ອນແລະມີຫນຶ່ງຜົນຜະລິດ. ການປ້ອນຂໍ້ມູນທໍາອິດແມ່ນ "ຕົ້ນຕໍ" ວິດີໂອທີ່
ການປ້ອນຂໍ້ມູນທີສອງຖືກວາງທັບ.

ມັນຍອມຮັບຕົວກໍານົດການດັ່ງຕໍ່ໄປນີ້:

ລາຍລະອຽດຂອງທາງເລືອກທີ່ຍອມຮັບດັ່ງຕໍ່ໄປນີ້.

x
y ກໍາ​ນົດ​ການ​ສະ​ແດງ​ອອກ​ສໍາ​ລັບ​ການ​ພິ​ກັດ x ແລະ y ຂອງ​ວິ​ດີ​ໂອ​ການ​ວາງ​ຊ້ອນ​ໃນ​ຕົ້ນ​ຕໍ​ໄດ້​
ວິດີໂອ. ຄ່າເລີ່ມຕົ້ນແມ່ນ "0" ສໍາລັບທັງສອງສະແດງອອກ. ໃນກໍລະນີທີ່ການສະແດງອອກບໍ່ຖືກຕ້ອງ,
ມັນຖືກກໍານົດເປັນມູນຄ່າອັນໃຫຍ່ຫຼວງ (ຫມາຍຄວາມວ່າ overlay ຈະບໍ່ສະແດງຢູ່ໃນ
ຜົນຜະລິດພື້ນທີ່ເບິ່ງເຫັນ).

eof_action
ການປະຕິບັດທີ່ຈະຕ້ອງປະຕິບັດໃນເວລາທີ່ EOF ຖືກພົບຢູ່ໃນວັດສະດຸປ້ອນທີສອງ; ມັນຍອມຮັບຫນຶ່ງໃນ
ຄຸນ​ຄ່າ​ດັ່ງ​ຕໍ່​ໄປ​ນີ້​:

ຊ້ໍາ
ເຮັດຊ້ໍາກອບສຸດທ້າຍ (ຄ່າເລີ່ມຕົ້ນ).

ສິ້ນສຸດ
ສິ້ນສຸດທັງສອງສາຍ.

ຜ່ານ
ຜ່ານການປ້ອນຂໍ້ມູນຕົ້ນຕໍ.

ການປະເມີນ
ກໍານົດເວລາທີ່ສໍານວນສໍາລັບ x, ແລະ y ຖືກປະເມີນ.

ມັນຍອມຮັບຄ່າດັ່ງຕໍ່ໄປນີ້:

ໃນ​ມັນ
ປະເມີນການສະແດງອອກພຽງແຕ່ຄັ້ງດຽວໃນລະຫວ່າງການເລີ່ມຕົ້ນການກັ່ນຕອງຫຼືໃນເວລາທີ່ຄໍາສັ່ງ
ແມ່ນການປຸງແຕ່ງ

frame
ປະເມີນການສະແດງອອກສໍາລັບແຕ່ລະກອບທີ່ເຂົ້າມາ

ຄ່າເລີ່ມຕົ້ນແມ່ນ frame.

ສັ້ນທີ່ສຸດ
ຖ້າຕັ້ງເປັນ 1, ບັງຄັບໃຫ້ຜົນຜະລິດຢຸດເມື່ອອິນພຸດສັ້ນທີ່ສຸດສິ້ນສຸດ. ຄ່າເລີ່ມຕົ້ນ
ຄ່າແມ່ນ 0.

ຮູບແບບ
ກໍາ​ນົດ​ຮູບ​ແບບ​ສໍາ​ລັບ​ວິ​ດີ​ໂອ​ຜົນ​ຜະ​ລິດ​ໄດ້​.

ມັນຍອມຮັບຄ່າດັ່ງຕໍ່ໄປນີ້:

yuv420
ບັງຄັບໃຫ້ຜົນຜະລິດ YUV420

yuv422
ບັງຄັບໃຫ້ຜົນຜະລິດ YUV422

yuv444
ບັງຄັບໃຫ້ຜົນຜະລິດ YUV444

rgb ບັງຄັບໃຫ້ຜົນຜະລິດ RGB

ຄ່າເລີ່ມຕົ້ນແມ່ນ yuv420.

rgb (ຄັດຄ້ານ)
ຖ້າຕັ້ງເປັນ 1, ບັງຄັບຕົວກອງໃຫ້ຍອມຮັບການປ້ອນຂໍ້ມູນໃນພື້ນທີ່ສີ RGB. ຄ່າເລີ່ມຕົ້ນ
ແມ່ນ 0. ຕົວເລືອກນີ້ຖືກຍົກເລີກ, ໃຊ້ ຮູບແບບ ແທນທີ່ຈະເປັນ.

ຊໍ້າຄືນຫຼ້າສຸດ
ຖ້າຕັ້ງເປັນ 1, ບັງຄັບຕົວກອງໃຫ້ແຕ້ມກອບການວາງຊ້ອນສຸດທ້າຍໃສ່ກັບວັດສະດຸປ້ອນຫຼັກຈົນກ່ວາ
ໃນຕອນທ້າຍຂອງກະແສ. ຄ່າຂອງ 0 ປິດການເຮັດວຽກນີ້. ຄ່າເລີ່ມຕົ້ນແມ່ນ 1.

ໄດ້ x, ແລະ y ການສະແດງອອກສາມາດມີພາລາມິເຕີຕໍ່ໄປນີ້.

main_w, W
main_h, H
ຄວາມກວ້າງແລະຄວາມສູງຂອງວັດສະດຸປ້ອນຕົ້ນຕໍ.

overlay_w, w
overlay_h, h
ຄວາມກວ້າງ ແລະລວງສູງຂອງວັດສະດຸປ້ອນທັບຊ້ອນ.

x
y ຄ່າ​ທີ່​ຄິດ​ໄລ່​ສໍາ​ລັບ​ການ​ x ແລະ y. ພວກເຂົາເຈົ້າໄດ້ຖືກປະເມີນສໍາລັບແຕ່ລະກອບໃຫມ່.

hsub
vsub
ຄ່າຍ່ອຍ chroma ແນວນອນ ແລະແນວຕັ້ງຂອງຮູບແບບຜົນຜະລິດ. ຕົວຢ່າງສໍາລັບ
ຮູບແບບ pixel "yuv422p" hsub ແມ່ນ 2 ແລະ vsub ແມ່ນ 1.

n ຈໍານວນຂອງກອບການປ້ອນຂໍ້ມູນ, ເລີ່ມຈາກ 0

pos ຕຳແໜ່ງໃນໄຟລ໌ຂອງກອບການປ້ອນຂໍ້ມູນ, NAN ຖ້າບໍ່ຮູ້

t ສະແຕມເວລາ, ສະແດງອອກເປັນວິນາທີ. ມັນເປັນ NAN ຖ້າເວລາປ້ອນຂໍ້ມູນບໍ່ຮູ້ຈັກ.

ຫມາຍເຫດວ່າ n, pos, t ຕົວແປສາມາດໃຊ້ໄດ້ພຽງແຕ່ເມື່ອການປະເມີນຜົນສໍາເລັດ ຕໍ່ frame,
ແລະຈະປະເມີນໃຫ້ NAN ເມື່ອໃດ ການປະເມີນ ຖືກກໍານົດໃຫ້ ໃນ​ມັນ.

ຈົ່ງຈື່ໄວ້ວ່າເຟຣມຖືກເອົາມາຈາກແຕ່ລະວິດີໂອການປ້ອນຂໍ້ມູນຕາມລໍາດັບເວລາ, ດັ່ງນັ້ນ, ຖ້າພວກມັນ
ເວລາເບື້ອງຕົ້ນແຕກຕ່າງກັນ, ມັນເປັນຄວາມຄິດທີ່ດີທີ່ຈະຜ່ານສອງວັດສະດຸປ້ອນໂດຍຜ່ານ a
setpts=PTS-STARTPTS ການກັ່ນຕອງເພື່ອໃຫ້ພວກມັນເລີ່ມຕົ້ນໃນສູນເວລາດຽວກັນ, ດັ່ງຕົວຢ່າງ
ສໍາ​ລັບ ຮູບເງົາ ການກັ່ນຕອງເຮັດ.

ທ່ານສາມາດຕ່ອງໂສ້ການຊ້ອນກັນຫຼາຍຂື້ນແຕ່ທ່ານຄວນທົດສອບປະສິດທິພາບຂອງວິທີການດັ່ງກ່າວ.

ຄໍາສັ່ງ

ການກັ່ນຕອງນີ້ສະຫນັບສະຫນູນຄໍາສັ່ງຕໍ່ໄປນີ້:

x
y ແກ້ໄຂ x ແລະ y ຂອງການປ້ອນຂໍ້ມູນທັບຊ້ອນ. ຄໍາສັ່ງຍອມຮັບ syntax ດຽວກັນຂອງ
ທາງ​ເລືອກ​ທີ່​ສອດ​ຄ້ອງ​ກັນ​.

ຖ້າການສະແດງອອກທີ່ລະບຸບໍ່ຖືກຕ້ອງ, ມັນຖືກເກັບໄວ້ໃນມູນຄ່າປະຈຸບັນຂອງມັນ.

ຕົວຢ່າງ

· ແຕ້ມທັບຊ້ອນທີ່ 10 pixels ຈາກມຸມຂວາລຸ່ມຂອງວິດີໂອຫຼັກ:

overlay=main_w-overlay_w-10:main_h-overlay_h-10

ການນໍາໃຊ້ຕົວເລືອກທີ່ມີຊື່ຕົວຢ່າງຂ້າງເທິງຈະກາຍເປັນ:

overlay=x=main_w-overlay_w-10:y=main_h-overlay_h-10

· ໃສ່ໂລໂກ້ PNG ໂປ່ງໃສຢູ່ມຸມຊ້າຍລຸ່ມຂອງວັດສະດຸປ້ອນ, ໂດຍໃຊ້ປຸ່ມ ffmpeg
ເຄື່ອງມືທີ່ມີຕົວເລືອກ "-filter_complex":

ffmpeg -i input -i logo -filter_complex 'overlay=10:main_h-overlay_h-10' output

· ໃສ່ 2 ໂລໂກ້ PNG ໂປ່ງໃສທີ່ແຕກຕ່າງກັນ (ໂລໂກ້ທີສອງຢູ່ແຈລຸ່ມຂວາ) ໂດຍໃຊ້
ໄດ້ ffmpeg ເຄື່ອງມື:

ffmpeg -i input -i logo1 -i logo2 -filter_complex 'overlay=x=10:y=Hh-10,overlay=x=Ww-10:y=Hh-10' output

· ເພີ່ມຊັ້ນສີທີ່ໂປ່ງໃສຢູ່ເທິງສຸດຂອງວິດີໂອຫຼັກ; "WxH" ຕ້ອງລະບຸຂະຫນາດຂອງ
ການປ້ອນຂໍ້ມູນຕົ້ນຕໍຕໍ່ກັບການກັ່ນຕອງການວາງຊ້ອນ:

[email protected]:size=WxH [ຫຼາຍກວ່າ]; [in][over] overlay [out]

·ຫຼິ້ນວິດີໂອຕົ້ນສະບັບແລະສະບັບການກັ່ນຕອງ (ທີ່ນີ້ກັບຕົວກອງ deshake) ຂ້າງ
ດ້ານ​ການ​ນໍາ​ໃຊ້​ ffplay ເຄື່ອງມື:

ffplay input.avi -vf 'ແຍກ[a][b]; [a]pad=iw*2:ih[src]; [b]deshake[filt]; [src][filt]overlay=w'

ຄໍາສັ່ງຂ້າງເທິງແມ່ນຄືກັນກັບ:

ffplay input.avi -vf 'split[b], pad=iw*2[src], [b]deshake, [src]overlay=w'

· ເຮັດ​ໃຫ້​ການ​ວາງ​ຊ້ອນ​ເລື່ອນ​ຈາກ​ຊ້າຍ​ໄປ​ດ້ານ​ຂວາ​ເທິງ​ຂອງ​ຫນ້າ​ຈໍ​ໄດ້​
ເລີ່ມ​ຕັ້ງ​ແຕ່​ເວ​ລາ 2​:

overlay=x='if(gte(t,2), -w+(t-2)*20, NAN)':y=0

· ປະກອບຜົນຜະລິດໂດຍການວາງສອງວິດີໂອເຂົ້າຂ້າງກັນ:

ffmpeg -i left.avi -i right.avi -filter_complex "
nullsrc=size=200x100 [ພື້ນຫລັງ];
[0:v] setpts=PTS-STARTPTS, scale=100x100 [ຊ້າຍ];
[1:v] setpts=PTS-STARTPTS, scale=100x100 [ຂວາ];
[ພື້ນຫລັງ][ຊ້າຍ] overlay=shortest=1 [ພື້ນຫຼັງ+ຊ້າຍ];
[ພື້ນຫຼັງ+ຊ້າຍ][ຂວາ] overlay=shortest=1:x=100 [ຊ້າຍ+ຂວາ]
"

· ເຮັດໜ້າກາກ 10-20 ວິນາທີຂອງວິດີໂອໂດຍການນຳໃຊ້ຕົວກອງ delogo ໃສ່ພາກສ່ວນໃດໜຶ່ງ

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]'
masked.avi

·ຕ່ອງໂສ້ການຊ້ອນກັນຫຼາຍອັນໃນ cascade:

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]

owdenoise
ໃຊ້ Overcomplete Wavelet denoiser.

ຕົວກອງຍອມຮັບຕົວເລືອກຕໍ່ໄປນີ້:

ຄວາມເລິກ
ກໍານົດຄວາມເລິກ.

ຄ່າຄວາມເລິກທີ່ໃຫຍ່ກວ່າຈະປະຕິເສດອົງປະກອບຄວາມຖີ່ຕ່ໍາກວ່າ, ແຕ່ຊ້າລົງ
ການກັ່ນຕອງ.

ຕ້ອງເປັນ int ໃນຊ່ວງ 8-16, ຄ່າເລີ່ມຕົ້ນແມ່ນ 8.

luma_strength, ls
ກໍານົດຄວາມເຂັ້ມແຂງ luma.

ຕ້ອງເປັນຄ່າສອງເທົ່າໃນໄລຍະ 0-1000, ຄ່າເລີ່ມຕົ້ນແມ່ນ 1.0.

chroma_strength, cs
ກໍານົດຄວາມເຂັ້ມແຂງ chroma.

ຕ້ອງເປັນຄ່າສອງເທົ່າໃນໄລຍະ 0-1000, ຄ່າເລີ່ມຕົ້ນແມ່ນ 1.0.

pad
ເພີ່ມ paddings ໃສ່ຮູບ input, ແລະວາງ input ຕົ້ນສະບັບຢູ່ທີ່ສະຫນອງໃຫ້ x, y
ປະສານງານ.

ມັນຍອມຮັບຕົວກໍານົດການດັ່ງຕໍ່ໄປນີ້:

ຄວາມກວ້າງ, w
ລະດັບຄວາມສູງ, h
ລະບຸການສະແດງອອກສໍາລັບຂະຫນາດຂອງຮູບພາບຜົນຜະລິດທີ່ມີການເພີ່ມ paddings. ຖ້າ
ມູນຄ່າສໍາລັບ width or ລະດັບຄວາມສູງ ແມ່ນ 0, ຂະຫນາດວັດສະດຸປ້ອນທີ່ສອດຄ້ອງກັນແມ່ນໃຊ້ສໍາລັບຜົນຜະລິດ.

ໄດ້ width ການສະແດງອອກສາມາດອ້າງອີງເຖິງມູນຄ່າທີ່ກໍານົດໄວ້ໂດຍ ລະດັບຄວາມສູງ ການສະແດງອອກ, ແລະຮອງ
ກົງກັນຂ້າມ.

ຄ່າເລີ່ມຕົ້ນຂອງ width ແລະ ລະດັບຄວາມສູງ ແມ່ນ 0.

x
y ລະບຸການຊົດເຊີຍເພື່ອວາງຮູບພາບການປ້ອນຂໍ້ມູນພາຍໃນພື້ນທີ່ padded, ດ້ວຍຄວາມນັບຖື
ໄປທາງເທິງ/ຊ້າຍຂອງຮູບຜົນຜະລິດ.

ໄດ້ x ການສະແດງອອກສາມາດອ້າງອີງເຖິງມູນຄ່າທີ່ກໍານົດໄວ້ໂດຍ y ການສະແດງອອກ, ແລະໃນທາງກັບກັນ.

ຄ່າເລີ່ມຕົ້ນຂອງ x ແລະ y ແມ່ນ 0.

ສີ
ລະບຸສີຂອງພື້ນທີ່ padded. ສໍາລັບ syntax ຂອງທາງເລືອກນີ້, ໃຫ້ກວດເບິ່ງ "ສີ".
ພາກສ່ວນໃນຄູ່ມື ffmpeg-utils.

ຄ່າເລີ່ມຕົ້ນຂອງ ສີ ແມ່ນ "ສີດໍາ".

ມູນຄ່າ ສຳ ລັບ width, ລະດັບຄວາມສູງ, x, ແລະ y ທາງ​ເລືອກ​ແມ່ນ​ການ​ສະ​ແດງ​ອອກ​ທີ່​ມີ​ດັ່ງ​ຕໍ່​ໄປ​ນີ້​
ຄົງທີ່:

in_w
in_h
ຄວາມກວ້າງແລະຄວາມສູງຂອງວິດີໂອທີ່ປ້ອນເຂົ້າ.

iw
ih ເຫຼົ່ານີ້ແມ່ນຄືກັນກັບ in_w ແລະ in_h.

out_w
out_h
ຄວາມກວ້າງຂອງຜົນຜະລິດແລະຄວາມສູງ (ຂະຫນາດຂອງພື້ນທີ່ padded), ຕາມທີ່ລະບຸໄວ້ໂດຍ width
ແລະ ລະດັບຄວາມສູງ ສຳ ນວນ.

ow
oh ເຫຼົ່ານີ້ແມ່ນຄືກັນກັບ out_w ແລະ out_h.

x
y x ແລະ y ຊົດເຊີຍຕາມທີ່ລະບຸໄວ້ໂດຍ x ແລະ y expressions, ຫຼື NAN ຖ້າຍັງບໍ່ໄດ້
ລະບຸ.

a ຄື​ກັນ​ກັບ iw / ih

sar ອັດຕາສ່ວນຕົວຢ່າງການປ້ອນຂໍ້ມູນ

dar ອັດ​ຕາ​ສ່ວນ​ການ​ສະ​ແດງ​ຜົນ​ການ​ປ້ອນ​ຂໍ້​ມູນ​, ມັນ​ຄື​ກັນ​ກັບ (iw / ih) * sar

hsub
vsub
ຄ່າຍ່ອຍ chroma ແນວນອນ ແລະແນວຕັ້ງ. ຕົວຢ່າງສໍາລັບຮູບແບບ pixels ລວງ
"yuv422p" hsub ແມ່ນ 2 ແລະ vsub ແມ່ນ 1.

ຕົວຢ່າງ

· ເພີ່ມ paddings ດ້ວຍສີ "violet" ໃສ່ວິດີໂອການປ້ອນຂໍ້ມູນ. ຂະຫນາດວິດີໂອຜົນຜະລິດແມ່ນ
640x480, ແລະມຸມຊ້າຍເທິງຂອງວິດີໂອການປ້ອນຂໍ້ມູນຖືກວາງຢູ່ທີ່ຖັນ 0, ແຖວ 40

pad=640:480:0:40:ສີມ່ວງ

ຕົວຢ່າງຂ້າງເທິງແມ່ນເທົ່າກັບຄໍາສັ່ງຕໍ່ໄປນີ້:

pad=width=640:height=480:x=0:y=40:color=violet

· pad ວັດສະດຸປ້ອນເພື່ອໃຫ້ໄດ້ຜົນຜະລິດທີ່ມີຂະຫນາດເພີ່ມຂຶ້ນ 3/2, ແລະເອົາວັດສະດຸປ້ອນ
ວິດີໂອຢູ່ໃຈກາງຂອງພື້ນທີ່ padded:

pad="3/2*iw:3/2*ih:(ow-iw)/2:(oh-ih)/2"

· pad ວັດສະດຸປ້ອນເພື່ອໃຫ້ໄດ້ຮັບຜົນອອກເປັນສີ່ຫລ່ຽມທີ່ມີຂະຫນາດເທົ່າກັບຄ່າສູງສຸດລະຫວ່າງ
ຄວາມກວ້າງແລະຄວາມສູງຂອງວັດສະດຸປ້ອນ, ແລະວາງວິດີໂອການປ້ອນຂໍ້ມູນຢູ່ໃຈກາງຂອງພື້ນທີ່ padded:

pad="max(iw\,ih):ow:(ow-iw)/2:(oh-ih)/2"

· pad ການ​ປ້ອນ​ຂໍ້​ມູນ​ເພື່ອ​ໃຫ້​ໄດ້​ຮັບ​ອັດ​ຕາ​ສ່ວນ w/h ສຸດ​ທ້າຍ​ຂອງ 16:9​:

pad="ih*16/9:ih:(ow-iw)/2:(oh-ih)/2"

· ໃນ​ກໍ​ລະ​ນີ​ຂອງ​ວິ​ດີ​ໂອ anamorphic​, ໃນ​ຄໍາ​ສັ່ງ​ທີ່​ຈະ​ກໍາ​ນົດ​ລັກ​ສະ​ນະ​ການ​ສະ​ແດງ​ຜົນ​ຜະ​ລິດ​ໄດ້​ຖືກ​ຕ້ອງ​, ມັນ​
ມີຄວາມຈໍາເປັນທີ່ຈະນໍາໃຊ້ sar ໃນການສະແດງອອກ, ອີງຕາມການກ່ຽວຂ້ອງ:

(ih * X / ih) * sar = output_dar
X = output_dar / sar

ດັ່ງນັ້ນ, ຕົວຢ່າງທີ່ຜ່ານມາຕ້ອງໄດ້ຮັບການດັດແກ້ເພື່ອ:

pad="ih*16/9/sar:ih:(ow-iw)/2:(oh-ih)/2"

· ຂະຫຍາຍຂະໜາດຜົນຜະລິດເປັນສອງເທົ່າ ແລະວາງວິດີໂອການປ້ອນຂໍ້ມູນໃສ່ໃນມຸມຂວາລຸ່ມຂອງ
ພື້ນທີ່ padded ຜົນຜະລິດ:

pad="2*iw:2*ih:ow-iw:oh-ih"

palettegen
ສ້າງຫນຶ່ງ palette ສໍາລັບການຖ່າຍທອດວິດີໂອທັງຫມົດ.

ມັນຍອມຮັບທາງເລືອກຕໍ່ໄປນີ້:

max_colors
ກໍານົດຈໍານວນສີສູງສຸດເພື່ອກໍານົດປະລິມານໃນ palette. ຫມາຍເຫດ: palette ຈະ
ຍັງປະກອບດ້ວຍ 256 ສີ; ລາຍການ palette ທີ່ບໍ່ໄດ້ໃຊ້ຈະເປັນສີດໍາ.

reserve_transparent
ສ້າງ palette ຂອງ 255 ສີສູງສຸດແລະສະຫງວນອັນສຸດທ້າຍສໍາລັບຄວາມໂປ່ງໃສ.
ການສະຫງວນສີຄວາມໂປ່ງໃສແມ່ນເປັນປະໂຫຍດສໍາລັບການເພີ່ມປະສິດທິພາບ GIF. ຖ້າບໍ່ໄດ້ກໍານົດ, ໄດ້
ສູງສຸດຂອງສີໃນ palette ຈະເປັນ 256. ທ່ານອາດຈະຕ້ອງການປິດການທໍາງານທາງເລືອກນີ້
ສໍາລັບຮູບພາບ standalone. ກໍານົດໂດຍຄ່າເລີ່ມຕົ້ນ.

stats_mode
ຕັ້ງໂໝດສະຖິຕິ.

ມັນຍອມຮັບຄ່າດັ່ງຕໍ່ໄປນີ້:

ຢ່າງເຕັມທີ່
ຄິດໄລ່ histograms ເຕັມກອບ.

diff
ຄິດໄລ່ histograms ພຽງແຕ່ສໍາລັບສ່ວນທີ່ແຕກຕ່າງຈາກກອບທີ່ຜ່ານມາ. ນີ້ອາດຈະ
ມີຄວາມກ່ຽວຂ້ອງເພື່ອໃຫ້ຄວາມສໍາຄັນຫຼາຍຂຶ້ນຕໍ່ກັບສ່ວນທີ່ເຄື່ອນຍ້າຍຂອງວັດສະດຸປ້ອນຂອງທ່ານຖ້າ
ພື້ນຫຼັງແມ່ນຄົງທີ່.

ຄ່າເລີ່ມຕົ້ນແມ່ນ ຢ່າງເຕັມທີ່.

ການກັ່ນຕອງຍັງສົ່ງອອກ metadata ຂອງກອບ "lavfi.color_quant_ratio" ("nb_color_in /
nb_color_out") ທີ່ທ່ານສາມາດນໍາໃຊ້ເພື່ອປະເມີນລະດັບຂອງປະລິມານສີຂອງ
palette. ຂໍ້ມູນນີ້ຍັງເຫັນໄດ້ຢູ່ ຂໍ້ມູນ ລະດັບການບັນທຶກ.

ຕົວຢ່າງ

· ສ້າງ palette ຕົວ​ແທນ​ຂອງ​ວິ​ດີ​ໂອ​ໄດ້​ຮັບ​ການ​ນໍາ​ໃຊ້​ ffmpeg:

ffmpeg -i input.mkv -vf palettegen palette.png

paletteuse
ໃຊ້ palette ເພື່ອຫຼຸດຕົວຢ່າງການຖ່າຍທອດວິດີໂອການປ້ອນຂໍ້ມູນ.

ການກັ່ນຕອງໃຊ້ເວລາສອງ inputs: ຫນຶ່ງນ້ໍາວິດີໂອແລະ palette. palette ຕ້ອງເປັນ 256
ຮູບພາບ pixels.

ມັນຍອມຮັບທາງເລືອກຕໍ່ໄປນີ້:

ຮ້າຍກາດ
ເລືອກ​ຮູບ​ແບບ disthering​. ສູດການຄິດໄລ່ທີ່ມີຢູ່ແມ່ນ:

bayer
ສັ່ງ 8x8 bayer dithering (ກໍານົດ)

heckbert
Dithering ຕາມທີ່ໄດ້ກໍານົດໂດຍ Paul Heckbert ໃນປີ 1982 (ການແຜ່ກະຈາຍຄວາມຜິດພາດງ່າຍດາຍ). ຫມາຍ​ເຫດ​:
dithering ນີ້ບາງຄັ້ງຖືກພິຈາລະນາ "ຜິດ" ແລະຖືກລວມເຂົ້າເປັນເອກະສານອ້າງອີງ.

floyd_steinberg
Floyd ແລະ Steingberg dithering (ການແຜ່ກະຈາຍຄວາມຜິດພາດ)

ເລື່ອຍ 2
Frankie Sierra dithering v2 (ການແຜ່ກະຈາຍຄວາມຜິດພາດ)

sierra2_4a
Frankie Sierra dithering v2 "Lite" (ການແຜ່ກະຈາຍຄວາມຜິດພາດ)

ເລີ່ມຕົ້ນແມ່ນ sierra2_4a.

bayer_scale
ເມື່ອ​ໃດ​ bayer dithering ຖືກເລືອກ, ທາງເລືອກນີ້ກໍານົດຂະຫນາດຂອງຮູບແບບ (ວິທີການ
ຫຼາຍຮູບແບບ crosshatch ແມ່ນເຫັນໄດ້). ມູນຄ່າຕໍ່າຫມາຍເຖິງຮູບແບບທີ່ເຫັນໄດ້ຊັດເຈນສໍາລັບ
banding ຫນ້ອຍ, ແລະມູນຄ່າທີ່ສູງຂຶ້ນຫມາຍຄວາມວ່າຮູບແບບທີ່ເຫັນໄດ້ຫນ້ອຍໃນຄ່າໃຊ້ຈ່າຍຂອງ banding ຫຼາຍ.

ຕົວເລືອກຕ້ອງເປັນຄ່າຈຳນວນເຕັມໃນໄລຍະ [0,5]. ຄ່າເລີ່ມຕົ້ນແມ່ນ 2.

diff_mode
ຖ້າຕັ້ງ, ກໍານົດເຂດທີ່ຈະດໍາເນີນການ

ຮູບສີ່ແຈສາກ
ພຽງແຕ່ຮູບສີ່ຫລ່ຽມທີ່ມີການປ່ຽນແປງຈະຖືກປຸງແຕ່ງໃຫມ່. ນີ້ແມ່ນຄ້າຍຄືກັນກັບ GIF
ກົນໄກການບີບອັດ/ການຕັດຄ່າ. ທາງເລືອກນີ້ສາມາດເປັນປະໂຫຍດສໍາລັບຄວາມໄວຖ້າຫາກວ່າ
ມີພຽງແຕ່ສ່ວນຫນຶ່ງຂອງຮູບພາບທີ່ມີການປ່ຽນແປງ, ແລະມີກໍລະນີການນໍາໃຊ້ເຊັ່ນການຈໍາກັດຂອບເຂດ
ການແຜ່ກະຈາຍຄວາມຜິດພາດ ຮ້າຍກາດ ກັບສີ່ຫລ່ຽມທີ່ຜູກມັດ scene ເຄື່ອນຍ້າຍ (ມັນ
ນໍາໄປສູ່ຜົນຜະລິດທີ່ກໍານົດຫຼາຍຖ້າຫາກວ່າ scene ບໍ່ມີການປ່ຽນແປງຫຼາຍ, ແລະເປັນ
ຜົນ​ໄດ້​ຮັບ​ການ​ເຄື່ອນ​ໄຫວ​ຫນ້ອຍ​ແລະ​ການ​ບີບ​ອັດ GIF ທີ່​ດີກ​ວ່າ​)​.

ເລີ່ມຕົ້ນແມ່ນ none.

ຕົວຢ່າງ

· ໃຊ້ palette (ສ້າງຕົວຢ່າງເຊັ່ນ palettegen) ເພື່ອເຂົ້າລະຫັດ GIF ໂດຍໃຊ້ ffmpeg:

ffmpeg -i input.mkv -i palette.png -lavfi paletteuse output.gif

ທັດສະນະ
ທັດສະນະທີ່ຖືກຕ້ອງຂອງວິດີໂອບໍ່ໄດ້ບັນທຶກໄວ້ໃນມຸມຂວາງກັບຫນ້າຈໍ.

ລາຍລະອຽດຂອງຕົວກໍານົດການທີ່ຍອມຮັບດັ່ງຕໍ່ໄປນີ້.

x0
y0
x1
y1
x2
y2
x3
y3 ກໍານົດການສະແດງອອກຂອງພິກັດສໍາລັບຊ້າຍເທິງ, ຂວາເທິງ, ລຸ່ມຊ້າຍແລະຂວາລຸ່ມ
ມຸມ. ຄ່າເລີ່ມຕົ້ນແມ່ນ "0:0:W:0:0:H:W:H" ເຊິ່ງທັດສະນະຈະຍັງຄົງຢູ່
ບໍ່ປ່ຽນແປງ. ຖ້າຕົວເລືອກ "ຄວາມຮູ້ສຶກ" ຖືກຕັ້ງເປັນ "ແຫຼ່ງ", ຫຼັງຈາກນັ້ນຈຸດທີ່ລະບຸໄວ້ຈະ
ຖືກສົ່ງໄປຫາມຸມຂອງປາຍທາງ. ຖ້າ "ຄວາມຮູ້ສຶກ" ທາງເລືອກຖືກຕັ້ງຄ່າ
"ຈຸດຫມາຍປາຍທາງ", ຫຼັງຈາກນັ້ນມຸມຂອງແຫຼ່ງຈະຖືກສົ່ງໄປຫາທີ່ກໍານົດໄວ້
ປະສານງານ.

ການສະແດງອອກສາມາດໃຊ້ຕົວແປຕໍ່ໄປນີ້:

W
H ຄວາມກວ້າງແລະຄວາມສູງຂອງກອບວິດີໂອ.

interpolation ທີ່
ກໍານົດ interpolation ສໍາລັບການແກ້ໄຂທັດສະນະ.

ມັນຍອມຮັບຄ່າດັ່ງຕໍ່ໄປນີ້:

ເສັ້ນຊື່
ລູກບາດ

ຄ່າເລີ່ມຕົ້ນແມ່ນ ເສັ້ນຊື່.

ຄວາມຮູ້ສຶກ
ກໍານົດການຕີຄວາມຫມາຍຂອງທາງເລືອກການປະສານງານ.

ມັນຍອມຮັບຄ່າດັ່ງຕໍ່ໄປນີ້:

0, ແຫຼ່ງ
ສົ່ງຈຸດໃນແຫຼ່ງທີ່ລະບຸໄວ້ໂດຍຈຸດປະສານງານທີ່ໃຫ້ໄປມຸມຂອງ
ປາຍທາງ.

1, ຈຸດຫມາຍປາຍທາງ
ສົ່ງມຸມຂອງແຫຼ່ງໄປຫາຈຸດທີ່ຢູ່ໃນຈຸດຫມາຍປາຍທາງທີ່ລະບຸໄວ້ໂດຍ
ຈຸດປະສານງານ.

ຄ່າເລີ່ມຕົ້ນແມ່ນ ແຫຼ່ງ.

ໂຄງການໄລຍະ
ເລື່ອນວິດີໂອ interlaced ໂດຍເວລາພາກສະຫນາມຫນຶ່ງເພື່ອໃຫ້ຄໍາສັ່ງພາກສະຫນາມມີການປ່ຽນແປງ.

ການນໍາໃຊ້ທີ່ມີຈຸດປະສົງແມ່ນເພື່ອແກ້ໄຂຮູບເງົາ PAL ທີ່ຖືກຈັບກັບພາກສະຫນາມກົງກັນຂ້າມ
ສັ່ງ​ໃຫ້​ໂອນ​ຮູບ​ເງົາ​ໄປ​ວິ​ດີ​ໂອ​.

ລາຍລະອຽດຂອງຕົວກໍານົດການທີ່ຍອມຮັບດັ່ງຕໍ່ໄປນີ້.

ຮູບແບບການ
ຕັ້ງໂໝດໄລຍະ.

ມັນຍອມຮັບຄ່າດັ່ງຕໍ່ໄປນີ້:

t ບັນທຶກຄໍາສັ່ງພາກສະຫນາມເທິງ-ທໍາອິດ, ໂອນລຸ່ມທໍາອິດ. ການກັ່ນຕອງຈະຊັກຊ້າ
ພາກສະຫນາມລຸ່ມ.

b ບັນທຶກຄໍາສັ່ງພາກສະຫນາມລຸ່ມສຸດ, ທໍາອິດ, ໂອນເທິງ-ທໍາອິດ. ການກັ່ນຕອງຈະຊັກຊ້າເທິງ
ພາກສະຫນາມ.

p ຈັບແລະໂອນດ້ວຍຄໍາສັ່ງພາກສະຫນາມດຽວກັນ. ຮູບ​ແບບ​ນີ້​ມີ​ພຽງ​ແຕ່​ສໍາ​ລັບ​ການ​
ເອກະສານຂອງທາງເລືອກອື່ນທີ່ຈະອ້າງເຖິງ, ແຕ່ຖ້າຫາກວ່າທ່ານຕົວຈິງເລືອກມັນ, ໄດ້
ການກັ່ນຕອງຢ່າງຊື່ສັດຈະບໍ່ເຮັດຫຍັງເລີຍ.

a ບັນທຶກຄໍາສັ່ງພາກສະຫນາມກໍານົດອັດຕະໂນມັດໂດຍທຸງພາກສະຫນາມ, ໂອນກົງກັນຂ້າມ.
ການກັ່ນຕອງເລືອກລະຫວ່າງ t ແລະ b ຮູບແບບໃນກອບໂດຍພື້ນຖານກອບໂດຍໃຊ້ທຸງພາກສະຫນາມ. ຖ້າ
ບໍ່ມີຂໍ້ມູນພາກສະຫນາມ, ຫຼັງຈາກນັ້ນນີ້ເຮັດວຽກຄືກັນກັບ u.

u ຈັບພາບທີ່ບໍ່ຮູ້ຈັກຫຼືແຕກຕ່າງກັນ, ໂອນກົງກັນຂ້າມ. ການກັ່ນຕອງເລືອກລະຫວ່າງ t ແລະ b ເທິງ
ກອບໂດຍພື້ນຖານກອບໂດຍການວິເຄາະຮູບພາບແລະເລືອກທາງເລືອກທີ່
ຜະລິດການແຂ່ງຂັນທີ່ດີທີ່ສຸດລະຫວ່າງທົ່ງນາ.

T ບັນທຶກເທິງສຸດກ່ອນ, ໂອນທີ່ບໍ່ຮູ້ຈັກ ຫຼືແຕກຕ່າງກັນ. ການກັ່ນຕອງເລືອກລະຫວ່າງ t ແລະ p
ການນໍາໃຊ້ການວິເຄາະຮູບພາບ.

B ບັນທຶກລຸ່ມສຸດກ່ອນ, ໂອນທີ່ບໍ່ຮູ້ຈັກ ຫຼືແຕກຕ່າງກັນ. ການກັ່ນຕອງເລືອກລະຫວ່າງ b ແລະ p
ການນໍາໃຊ້ການວິເຄາະຮູບພາບ.

A ການ​ຈັບ​ພາບ​ທີ່​ກໍາ​ນົດ​ໂດຍ​ທຸງ​ພາກ​ສະ​ຫນາມ​, ການ​ໂອນ​ບໍ່​ຮູ້​ຈັກ​ຫຼື​ແຕກ​ຕ່າງ​ກັນ​. ເລືອກຕົວກອງ
ໃນບັນດາ t, b ແລະ p ການນໍາໃຊ້ທຸງພາກສະຫນາມແລະການວິເຄາະຮູບພາບ. ຖ້າບໍ່ມີຂໍ້ມູນພາກສະຫນາມ
ສາມາດໃຊ້ໄດ້, ຫຼັງຈາກນັ້ນນີ້ເຮັດວຽກຄືກັນກັບ U. ນີ້ແມ່ນຮູບແບບເລີ່ມຕົ້ນ.

U ທັງ​ການ​ຈັບ​ແລະ​ໂອນ​ບໍ່​ຮູ້​ຈັກ​ຫຼື​ແຕກ​ຕ່າງ​ກັນ​. ການກັ່ນຕອງເລືອກລະຫວ່າງ t, b ແລະ p
ການນໍາໃຊ້ການວິເຄາະຮູບພາບເທົ່ານັ້ນ.

pixdectest
ການກັ່ນຕອງການທົດສອບຕົວອະທິບາຍຮູບແບບ Pixel, ສ່ວນໃຫຍ່ແມ່ນເປັນປະໂຫຍດສໍາລັບການທົດສອບພາຍໃນ. ວິດີໂອຜົນຜະລິດ
ຄວນເທົ່າກັບວິດີໂອປ້ອນຂໍ້ມູນ.

ຍົກ​ຕົວ​ຢ່າງ:

format=monow, pixdesctest

ສາມາດຖືກນໍາໃຊ້ເພື່ອທົດສອບຄໍານິຍາມຮູບແບບ monowhite pixel descriptor.

pp
ເປີດໃຊ້ລະບົບຕ່ອງໂສ້ທີ່ລະບຸໄວ້ຂອງຕົວກອງຍ່ອຍຫຼັງການປະມວນຜົນໂດຍໃຊ້ libpostproc. ຫ້ອງສະໝຸດນີ້
ຄວນຈະຖືກເລືອກໂດຍອັດຕະໂນມັດດ້ວຍ GPL build ("--enable-gpl"). ການກັ່ນຕອງຍ່ອຍຕ້ອງເປັນ
ແຍກອອກດ້ວຍ '/' ແລະສາມາດປິດການໃຊ້ງານໄດ້ໂດຍ prepending a '-'. ແຕ່ລະຕົວກອງຍ່ອຍແລະບາງທາງເລືອກ
ມີຊື່ສັ້ນແລະຍາວທີ່ສາມາດໃຊ້ແລກປ່ຽນກັນໄດ້, ie dr/dering ແມ່ນ
ດຽວກັນ.

ຕົວກອງຍອມຮັບຕົວເລືອກຕໍ່ໄປນີ້:

ຕົວກອງຍ່ອຍ
ຕັ້ງສະຕຣິງຕົວກອງຍ່ອຍຫຼັງການປະມວນຜົນ.

subfilters ທັງຫມົດແບ່ງປັນທາງເລືອກທົ່ວໄປເພື່ອກໍານົດຂອບເຂດຂອງເຂົາເຈົ້າ:

a/autoq
ໃຫ້ກຽດແກ່ຄໍາສັ່ງທີ່ມີຄຸນນະພາບສໍາລັບຕົວກອງຍ່ອຍນີ້.

c/chrom
ເຮັດການກັ່ນຕອງ chrominance, ເຊັ່ນດຽວກັນ (ຄ່າເລີ່ມຕົ້ນ).

y/nochrom
ເຮັດການກັ່ນຕອງ luminance ເທົ່ານັ້ນ (ບໍ່ມີ chrominance).

n/noluma
ເຮັດການກັ່ນຕອງ chrominance ເທົ່ານັ້ນ (ບໍ່ມີ luminance).

ທາງ​ເລືອກ​ເຫຼົ່າ​ນີ້​ສາ​ມາດ​ໄດ້​ຮັບ​ການ​ຕໍ່​ທ້າຍ​ຫຼັງ​ຈາກ​ຊື່ subfilter​, ແຍກ​ໂດຍ '|​'​.

ຕົວກອງຍ່ອຍທີ່ມີຢູ່ແມ່ນ:

hb/hdeblock[|ຄວາມແຕກຕ່າງ[|ຄວາມແປ]]
ການກັ່ນຕອງການປິດກັ້ນແນວນອນ

ຄວາມແຕກຕ່າງ
ປັດໄຈຄວາມແຕກຕ່າງທີ່ຄ່າສູງກວ່າຫມາຍເຖິງການຂັດຂວາງຫຼາຍ (ຄ່າເລີ່ມຕົ້ນ: 32).

ແປ
Flatness threshold ທີ່ຄ່າຕ່ໍາຫມາຍເຖິງການຂັດຂວາງຫຼາຍ (ຄ່າເລີ່ມຕົ້ນ: 39).

vb/vdeblock[|ຄວາມແຕກຕ່າງ[|ຄວາມແປ]]
ການກັ່ນຕອງການປິດກັ້ນແນວຕັ້ງ

ຄວາມແຕກຕ່າງ
ປັດໄຈຄວາມແຕກຕ່າງທີ່ຄ່າສູງກວ່າຫມາຍເຖິງການຂັດຂວາງຫຼາຍ (ຄ່າເລີ່ມຕົ້ນ: 32).

ແປ
Flatness threshold ທີ່ຄ່າຕ່ໍາຫມາຍເຖິງການຂັດຂວາງຫຼາຍ (ຄ່າເລີ່ມຕົ້ນ: 39).

ha/hadeblock[|ຄວາມແຕກຕ່າງ[|ຄວາມແປ]]
ການກັ່ນຕອງການຂັດຂວາງແນວນອນທີ່ຖືກຕ້ອງ

ຄວາມແຕກຕ່າງ
ປັດໄຈຄວາມແຕກຕ່າງທີ່ຄ່າສູງກວ່າຫມາຍເຖິງການຂັດຂວາງຫຼາຍ (ຄ່າເລີ່ມຕົ້ນ: 32).

ແປ
Flatness threshold ທີ່ຄ່າຕ່ໍາຫມາຍເຖິງການຂັດຂວາງຫຼາຍ (ຄ່າເລີ່ມຕົ້ນ: 39).

va/vadeblock[|ຄວາມແຕກຕ່າງ[|ຄວາມແປ]]
ການກັ່ນຕອງການປິດກັ້ນແນວຕັ້ງທີ່ຖືກຕ້ອງ

ຄວາມແຕກຕ່າງ
ປັດໄຈຄວາມແຕກຕ່າງທີ່ຄ່າສູງກວ່າຫມາຍເຖິງການຂັດຂວາງຫຼາຍ (ຄ່າເລີ່ມຕົ້ນ: 32).

ແປ
Flatness threshold ທີ່ຄ່າຕ່ໍາຫມາຍເຖິງການຂັດຂວາງຫຼາຍ (ຄ່າເລີ່ມຕົ້ນ: 39).

ການກັ່ນຕອງ deblocking ຕາມແນວນອນແລະແນວຕັ້ງແບ່ງປັນຄວາມແຕກຕ່າງແລະຄ່າ flatness ດັ່ງນັ້ນ
ທ່ານບໍ່ສາມາດກຳນົດເກນແນວນອນ ແລະແນວຕັ້ງທີ່ແຕກຕ່າງກັນ.

h1/x1hdeblock
ທົດລອງຕົວກັ່ນຕອງການປິດກັ້ນລວງນອນ

v1/x1vdeblock
ທົດລອງຕົວກັ່ນຕອງການປິດກັ້ນແນວຕັ້ງ

dr/dering
ການກັ່ນຕອງ

tn/tmpnoise[|threshold1[|threshold2[|threshold3]]], ໂລກ ສຽງຮົບກວນ reducer
ຂອບເຂດ 1
ໃຫຍ່ -> ການກັ່ນຕອງທີ່ເຂັ້ມແຂງ

ຂອບເຂດ 2
ໃຫຍ່ -> ການກັ່ນຕອງທີ່ເຂັ້ມແຂງ

ຂອບເຂດ 3
ໃຫຍ່ -> ການກັ່ນຕອງທີ່ເຂັ້ມແຂງ

al/autolevels[:f/fullyrange], ອັດຕະໂນມັດ ຄວາມສະຫວ່າງ / ກົງກັນຂ້າມ ແກ້ໄຂ
f/fullyrange
stretch luminance ເປັນ "0-255".

lb/linblenddeint
ຕົວກອງ deinterlacing ປະສົມປະສານ Linear ທີ່ deinterlaces ບລັອກທີ່ໃຫ້ໂດຍການກັ່ນຕອງທັງຫມົດ
ສາຍທີ່ມີຕົວກອງ "(1 2 1)".

li/linipoldeint
ຕົວກອງ deinterlacing linear interpolating ທີ່ deinterlaces ຕັນທີ່ໃຫ້ໂດຍ
linearly interpolating ທຸກໆແຖວທີສອງ.

ci/cubicipoldeint
Cubic interpolating deinterlacing filter deinterlaces ຕັນທີ່ໃຫ້ໂດຍ cubic
interpolating ທຸກແຖວທີສອງ.

md/mediandeint
ການກັ່ນຕອງ deinterlacing ປານກາງທີ່ deinterlaces ບລັອກທີ່ໃຫ້ໂດຍການໃຊ້ຄ່າປານກາງ
ການກັ່ນຕອງໄປຫາທຸກໆແຖວທີສອງ.

fd/ffmpegdeint
ຕົວກອງ deinterlacing FFmpeg ທີ່ deinterlaces ບລັອກທີ່ໃຫ້ໂດຍການກັ່ນຕອງທຸກ
ແຖວທີສອງທີ່ມີຕົວກອງ "(-1 4 2 4 -1)".

l5/lowpass5
ນຳໃຊ້ການກັ່ນຕອງ FIR lowpass deinterlacing ໃນແນວຕັ້ງທີ່ deinterlaces ບລັອກທີ່ໃຫ້
ໂດຍການກັ່ນຕອງເສັ້ນທັງໝົດດ້ວຍຕົວກອງ "(-1 2 6 2 -1)".

fq/forceQuant[|quantizer]
overrides ຕາຕະລາງ quantizer ຈາກ input ດ້ວຍ quantizer ຄົງທີ່ທ່ານລະບຸ.

quantizer
ປະລິມານທີ່ໃຊ້

de/default
ການປະສົມປະສານການກັ່ນຕອງ pp ເລີ່ມຕົ້ນ ("hb|a,vb|a,dr|a")

fa/fast
ການປະສົມປະສານຕົວກອງ pp ໄວ ("h1|a,v1|a,dr|a")

ac ການປະສົມປະສານການກັ່ນຕອງ pp ທີ່ມີຄຸນນະພາບສູງ ("ha|a|128|7,va|a,dr|a")

ຕົວຢ່າງ

· ນຳ​ໃຊ້​ການ​ປິດ​ກັ້ນ​ແນວ​ນອນ​ແລະ​ແນວ​ຕັ້ງ, deringing ແລະ​ຄວາມ​ສະ​ຫວ່າງ / ກົງ​ກັນ​ຂ້າມ​ອັດ​ຕະ​ໂນ​ມັດ​:

pp=hb/vb/dr/al

· ນຳໃຊ້ຕົວກອງເລີ່ມຕົ້ນໂດຍບໍ່ມີການແກ້ໄຂຄວາມສະຫວ່າງ/ຄວາມຄົມຊັດ:

pp=de/-al

· ນຳໃຊ້ຕົວກອງຄ່າເລີ່ມຕົ້ນ ແລະຕົວແຍກຊົ່ວຄາວ:

pp=default/tmpnoise|1|2|3

· ນຳໃຊ້ການປິດກັ້ນເທິງ luminance ເທົ່ານັ້ນ, ແລະເປີດ ຫຼືປິດການປິດກັ້ນແນວຕັ້ງ
ອັດຕະໂນມັດຂຶ້ນຢູ່ກັບເວລາ CPU ທີ່ມີຢູ່:

pp=hb|y/vb|a

pp7
ສະຫມັກຂໍເອົາການກັ່ນຕອງ Postprocessing 7. ມັນເປັນ variant ຂອງ sp ການກັ່ນຕອງ, ຄ້າຍຄືກັນກັບ spp = 6 ກັບ 7
ຈຸດ DCT, ບ່ອນທີ່ພຽງແຕ່ຕົວຢ່າງສູນກາງຖືກນໍາໃຊ້ຫຼັງຈາກ IDCT.

ຕົວກອງຍອມຮັບຕົວເລືອກຕໍ່ໄປນີ້:

qp ບັງຄັບພາລາມິເຕີປະລິມານຄົງທີ່. ມັນຍອມຮັບຈໍານວນເຕັມໃນຂອບເຂດ 0 ຫາ 63. ຖ້າ
ບໍ່ໄດ້ຕັ້ງ, ຕົວກອງຈະໃຊ້ QP ຈາກການຖ່າຍທອດວິດີໂອ (ຖ້າມີ).

ຮູບແບບການ
ຕັ້ງຄ່າໂໝດເກນ. ໂໝດທີ່ມີຢູ່ແມ່ນ:

ຍາກ
ກໍານົດຂອບເຂດຍາກ.

ອ່ອນໆ
ກໍານົດຂອບເຂດອ່ອນໆ (ຜົນການປິດສຽງດັງທີ່ດີຂຶ້ນ, ແຕ່ອາດຈະມົວກວ່າ).

ຂະຫນາດກາງ
ກໍານົດຂອບເຂດຂະຫນາດກາງ (ຜົນໄດ້ຮັບທີ່ດີ, ຄ່າເລີ່ມຕົ້ນ).

psnr
ໄດ້​ຮັບ PSNR ໂດຍ​ສະ​ເລ່ຍ​, ສູງ​ສຸດ​ແລະ​ຕໍາ​່​ສຸດ​ທີ່ (ຈຸດ​ສູງ​ສຸດ​ສັນ​ຍານ​ກັບ​ອັດ​ຕາ​ສ່ວນ​ສຽງ​) ລະ​ຫວ່າງ​ສອງ​
ປ້ອນວິດີໂອ.

ການກັ່ນຕອງນີ້ໃຊ້ເວລາໃນການປ້ອນຂໍ້ມູນສອງວິດີໂອ, ການປ້ອນຂໍ້ມູນທໍາອິດຖືວ່າເປັນ "ຕົ້ນຕໍ"
ແຫຼ່ງແລະຖືກສົ່ງຕໍ່ບໍ່ປ່ຽນແປງກັບຜົນຜະລິດ. ການປ້ອນຂໍ້ມູນທີສອງຖືກໃຊ້ເປັນ "ການອ້າງອີງ"
ວິດີໂອສໍາລັບການຄິດໄລ່ PSNR.

ທັງສອງວັດສະດຸປ້ອນວິດີໂອຕ້ອງມີຄວາມລະອຽດ ແລະຮູບແບບ pixels ດຽວກັນເພື່ອໃຫ້ການກັ່ນຕອງນີ້ເຮັດວຽກ
ຢ່າງຖືກຕ້ອງ. ນອກຈາກນີ້ມັນສົມມຸດວ່າທັງສອງວັດສະດຸປ້ອນມີຈໍານວນເຟຣມດຽວກັນ, ເຊິ່ງແມ່ນ
ປຽບທຽບຫນຶ່ງໂດຍຫນຶ່ງ.

PSNR ສະເລ່ຍທີ່ໄດ້ຮັບແມ່ນພິມຜ່ານລະບົບບັນທຶກ.

ການກັ່ນຕອງເກັບຮັກສາ MSE ທີ່ສະສົມ (ຫມາຍຄວາມວ່າຄວາມຜິດພາດສອງເທົ່າ) ຂອງແຕ່ລະກອບ, ແລະໃນຕອນທ້າຍ
ຂອງການປຸງແຕ່ງມັນແມ່ນສະເລ່ຍໃນທົ່ວກອບທັງຫມົດເທົ່າທຽມກັນ, ແລະສູດຕໍ່ໄປນີ້ແມ່ນ
ໄດ້​ນໍາ​ໃຊ້​ເພື່ອ​ໄດ້​ຮັບ PSNR​:

PSNR = 10*log10(MAX^2/MSE)

ບ່ອນທີ່ MAX ເປັນຄ່າສະເລ່ຍຂອງຄ່າສູງສຸດຂອງແຕ່ລະອົງປະກອບຂອງຮູບ.

ລາຍລະອຽດຂອງຕົວກໍານົດການທີ່ຍອມຮັບດັ່ງຕໍ່ໄປນີ້.

stats_file, f
ຖ້າລະບຸຕົວກອງຈະໃຊ້ໄຟລ໌ທີ່ມີຊື່ເພື່ອບັນທຶກ PSNR ຂອງແຕ່ລະຄົນ
ກອບ.

ໄຟລ໌ທີ່ພິມອອກຖ້າ stats_file ຖືກເລືອກ, ມີລໍາດັບຂອງຄູ່ຄີ / ຄ່າຂອງ
ຮູບແບບ ທີ່ສໍາຄັນ:ມູນຄ່າ ສໍາລັບແຕ່ລະຄູ່ສົມທຽບຂອງກອບ.

ລາຍລະອຽດຂອງແຕ່ລະພາລາມິເຕີທີ່ສະແດງດັ່ງຕໍ່ໄປນີ້:

n ເລກລໍາດັບຂອງກອບການປ້ອນຂໍ້ມູນ, ເລີ່ມຈາກ 1

mse_avg
Mean Square Error pixel-by-pixel ຄວາມແຕກຕ່າງສະເລ່ຍຂອງເຟຣມທີ່ປຽບທຽບ, ໂດຍສະເລ່ຍ
ຫຼາຍກວ່າອົງປະກອບຮູບພາບທັງຫມົດ.

mse_y, mse_u, mse_v, mse_r, mse_g, mse_g, mse_a
Mean Square Error pixel-by-pixel ຄວາມແຕກຕ່າງສະເລ່ຍຂອງເຟຣມທີ່ສົມທຽບກັນສໍາລັບ
ອົງປະກອບທີ່ລະບຸໄວ້ໂດຍຄໍາຕໍ່ທ້າຍ.

psnr_y, psnr_u, psnr_v, psnr_r, psnr_g, psnr_b, psnr_a
ອັດຕາສ່ວນສັນຍານສູງສຸດຕໍ່ກັບສິ່ງລົບກວນຂອງເຟຣມປຽບທຽບສໍາລັບອົງປະກອບທີ່ລະບຸໄວ້ໂດຍ
បច្ច័យ.

ຍົກ​ຕົວ​ຢ່າງ:

movie=ref_movie.mpg, setpts=PTS-STARTPTS [ຫຼັກ];
[main][ref] psnr="stats_file=stats.log" [ອອກ]

ໃນຕົວຢ່າງນີ້, ໄຟລ໌ປ້ອນຂໍ້ມູນທີ່ຖືກປະມວນຜົນຖືກປຽບທຽບກັບເອກະສານອ້າງອີງ
ref_movie.mpg. PSNR ຂອງແຕ່ລະເຟຣມແຕ່ລະຄົນຖືກເກັບໄວ້ໃນ stats.log.

ດຶງ​ຂຶ້ນ
Pulldown reversal (inverse telecine​) ການ​ກັ່ນ​ຕອງ​, ມີ​ຄວາມ​ສາ​ມາດ​ໃນ​ການ​ຈັດ​ການ​ແຂງ​, telecine ປະ​ສົມ​,
24000/1001 fps ກ້າວຫນ້າ, ແລະ 30000/1001 fps ເນື້ອໃນກ້າວຫນ້າ.

ການກັ່ນຕອງດຶງໄດ້ຖືກອອກແບບເພື່ອໃຊ້ປະໂຍດຈາກສະພາບການໃນອະນາຄົດໃນການຕັດສິນໃຈຂອງຕົນ.
ຕົວກອງນີ້ແມ່ນບໍ່ມີລັດໃນຄວາມຮູ້ສຶກວ່າມັນບໍ່ໄດ້ລັອກໃສ່ຮູບແບບທີ່ຈະປະຕິບັດຕາມ, ແຕ່
ມັນແທນທີ່ຈະຊອກຫາຊ່ອງຂໍ້ມູນຕໍ່ໄປນີ້ເພື່ອກໍານົດການຈັບຄູ່ແລະສ້າງໃຫມ່
ເຟຣມກ້າວຫນ້າ.

ເພື່ອຜະລິດເນື້ອໃນທີ່ມີອັດຕາເຟຣມຄູ່, ໃສ່ຕົວກອງ fps ຫຼັງຈາກດຶງ, ໃຊ້
"fps=24000/1001" ຖ້າອັດຕາເຟຣມປ້ອນຂໍ້ມູນແມ່ນ 29.97fps, "fps=24" ສໍາລັບ 30fps ແລະ (ຫາຍາກ)
telecined 25fps ປ້ອນຂໍ້ມູນ.

ຕົວກອງຍອມຮັບຕົວເລືອກຕໍ່ໄປນີ້:

jl
jr
jt
jb ຕົວເລືອກເຫຼົ່ານີ້ກໍານົດຈໍານວນ "ຂີ້ເຫຍື້ອ" ທີ່ຈະບໍ່ສົນໃຈຢູ່ເບື້ອງຊ້າຍ, ຂວາ, ເທິງ, ແລະລຸ່ມ
ຂອງຮູບພາບ, ຕາມລໍາດັບ. ຊ້າຍແລະຂວາແມ່ນຢູ່ໃນຫນ່ວຍຂອງ 8 pixels, ໃນຂະນະທີ່ເທິງແລະ
ລຸ່ມສຸດແມ່ນຢູ່ໃນຫົວໜ່ວຍຂອງ 2 ແຖວ. ຄ່າເລີ່ມຕົ້ນແມ່ນ 8 pixels ໃນແຕ່ລະດ້ານ.

sb ກໍານົດການພັກຜ່ອນຢ່າງເຂັ້ມງວດ. ການຕັ້ງຄ່າຕົວເລືອກນີ້ເປັນ 1 ຈະຫຼຸດຜ່ອນໂອກາດຂອງການກັ່ນຕອງ
ການສ້າງກອບທີ່ບໍ່ກົງກັນໃນບາງຄັ້ງຄາວ, ແຕ່ມັນອາດຈະເຮັດໃຫ້ຕົວເລກຫຼາຍເກີນໄປ
ຂອງເຟຣມທີ່ຈະຫຼຸດລົງໃນລະຫວ່າງລໍາດັບການເຄື່ອນໄຫວສູງ. ໃນທາງກົງກັນຂ້າມ, ກໍານົດມັນເປັນ -1
ຈະເຮັດໃຫ້ການກັ່ນຕອງການຈັບຄູ່ຊ່ອງຂໍ້ມູນງ່າຍຂຶ້ນ. ນີ້ອາດຈະຊ່ວຍໃຫ້ການປະມວນຜົນວິດີໂອທີ່
ມີການມົວເລັກນ້ອຍລະຫວ່າງທົ່ງນາ, ແຕ່ອາດເຮັດໃຫ້ບ່ອນນັ້ນມີການຊ້ອນກັນ
ກອບໃນຜົນຜະລິດ. ຄ່າເລີ່ມຕົ້ນແມ່ນ 0.

mp ກໍານົດແຜນການວັດແທກເພື່ອໃຊ້. ມັນຍອມຮັບຄ່າດັ່ງຕໍ່ໄປນີ້:

l ໃຊ້ຍົນ luma.

u ໃຊ້ຍົນໂຄຣມາສີຟ້າ.

v ໃຊ້ຍົນສີແດງ chroma.

ຕົວເລືອກນີ້ອາດຈະຖືກຕັ້ງໃຫ້ໃຊ້ຍົນ chroma ແທນຍົນ luma ເລີ່ມຕົ້ນສໍາລັບການເຮັດ
ການ​ຄິດ​ໄລ່​ຕົວ​ກັ່ນ​ຕອງ​. ນີ້ອາດຈະປັບປຸງຄວາມຖືກຕ້ອງຂອງວັດສະດຸແຫຼ່ງທີ່ສະອາດຫຼາຍ, ແຕ່
ອາດຈະຫຼຸດລົງຄວາມຖືກຕ້ອງ, ໂດຍສະເພາະຖ້າມີສຽງ chroma (ຮຸ້ງ
ຜົນ​ກະ​ທົບ​) ຫຼື​ວິ​ດີ​ໂອ​ສີ​ຂີ້​ເຖົ່າ​ໃດໆ​. ຈຸດປະສົງຕົ້ນຕໍຂອງການສ້າງຕັ້ງ mp ກັບຍົນ chroma ແມ່ນ
ເພື່ອຫຼຸດຜ່ອນການໂຫຼດ CPU ແລະເຮັດໃຫ້ການດຶງຂໍ້ມູນສາມາດໃຊ້ງານໄດ້ໃນເວລາຈິງໃນເຄື່ອງຊ້າ.

ສໍາລັບຜົນໄດ້ຮັບທີ່ດີທີ່ສຸດ (ໂດຍບໍ່ມີການຊ້ໍາຊ້ອນໃນໄຟລ໌ຜົນຜະລິດ) ມັນຈໍາເປັນຕ້ອງມີການປ່ຽນແປງ
ອັດຕາຜົນຜະລິດຂອງກອບ. ຕົວຢ່າງ, ເພື່ອ inverse telecine NTSC input:

ffmpeg -i input -vf pullup -r 24000/1001 ...

qp
ປ່ຽນຕົວກໍານົດການປະລິມານວິດີໂອ (QP).

ການກັ່ນຕອງຍອມຮັບທາງເລືອກຕໍ່ໄປນີ້:

qp ກໍານົດການສະແດງອອກສໍາລັບຕົວກໍານົດການປະລິມານ.

ການສະແດງອອກໄດ້ຖືກປະເມີນໂດຍຜ່ານ API eval ແລະສາມາດບັນຈຸ, ໃນບັນດາສິ່ງອື່ນໆ,
ຄົງທີ່ຕໍ່ໄປນີ້:

ເປັນທີ່ຮູ້ຈັກ
1 ຖ້າດັດຊະນີບໍ່ແມ່ນ 129, 0 ຖ້າບໍ່ດັ່ງນັ້ນ.

qp ດັດຊະນີຕາມລໍາດັບເລີ່ມຕົ້ນຈາກ -129 ຫາ 128.

ຕົວຢ່າງ

·ສົມຜົນບາງຢ່າງເຊັ່ນ:

qp=2+2*sin(PI*qp)

random
ລ້າງເຟຣມວິດີໂອຈາກແຄສພາຍໃນຂອງເຟຣມເຂົ້າໄປໃນລໍາດັບແບບສຸ່ມ. ບໍ່ມີກອບ
ຍົກເລີກ. ດົນໃຈໂດຍ free0r ການກັ່ນຕອງປະສາດ.

ນໍາ
ກໍານົດຂະຫນາດໃນຈໍານວນກອບຂອງແຄດພາຍໃນ, ໃນລະຫວ່າງ 2 ຫາ 512. ຄ່າເລີ່ມຕົ້ນແມ່ນ 30.

ແກ່ນ
ກໍານົດແກ່ນສໍາລັບເຄື່ອງກໍາເນີດຕົວເລກແບບສຸ່ມ, ຕ້ອງເປັນຈໍານວນເຕັມທີ່ລວມຢູ່ລະຫວ່າງ 0 ແລະ
"UINT32_MAX". ຖ້າບໍ່ໄດ້ລະບຸ, ຫຼືຖ້າຕັ້ງຢ່າງຈະແຈ້ງເປັນຫນ້ອຍກວ່າ 0, ຕົວກອງຈະ
ພະຍາຍາມໃຊ້ແນວພັນແບບສຸ່ມທີ່ດີບົນພື້ນຖານຄວາມພະຍາຍາມທີ່ດີທີ່ສຸດ.

ເອົາເມັດພືດ
ການກັ່ນຕອງ removegrain ແມ່ນ denoiser spatial ສໍາລັບວິດີໂອກ້າວຫນ້າ.

m0 ຕັ້ງໂຫມດສໍາລັບຍົນທໍາອິດ.

m1 ຕັ້ງຄ່າໂຫມດສໍາລັບຍົນທີສອງ.

m2 ຕັ້ງຄ່າໂຫມດສໍາລັບຍົນທີສາມ.

m3 ຕັ້ງຄ່າໂຫມດສໍາລັບຍົນທີ່ສີ່.

ຊ່ວງຂອງໂໝດແມ່ນຕັ້ງແຕ່ 0 ຫາ 24. ລາຍລະອຽດຂອງແຕ່ລະໂຫມດຕໍ່ໄປນີ້:

0 ປ່ອຍໃຫ້ລະບົບການປ້ອນຂໍ້ມູນບໍ່ປ່ຽນແປງ. ຄ່າເລີ່ມຕົ້ນ.

1 ຕັດ pixels ລວງຕໍ່າສຸດ ແລະສູງສຸດຂອງ 8 pixels ເພື່ອນບ້ານ.

2 ຕັດ pixels ລວງດ້ວຍຕໍາ່ສຸດທີ່ສອງແລະສູງສຸດຂອງ 8 pixels ໃກ້ຄຽງ.

3 ຕັດ pixels ລວງດ້ວຍຕໍາ່ສຸດທີ່ສາມແລະສູງສຸດຂອງ 8 pixels ໃກ້ຄຽງ.

4 ຕັດ pixels ລວງດ້ວຍຕໍາ່ສຸດທີ່ສີ່ແລະສູງສຸດຂອງ 8 pixels ໃກ້ຄຽງ. ນີ້
ເທົ່າກັບຕົວກອງປານກາງ.

5 ການຕັດເສັ້ນທີ່ລະອຽດອ່ອນໃຫ້ການປ່ຽນແປງໜ້ອຍທີ່ສຸດ.

6 ການຕັດເສັ້ນທີ່ລະອຽດອ່ອນ, ລະດັບປານກາງ.

7 ການຕັດເສັ້ນທີ່ລະອຽດອ່ອນ, ລະດັບປານກາງ.

8 ການຕັດເສັ້ນທີ່ລະອຽດອ່ອນ, ລະດັບປານກາງ.

9 ການຕັດເສັ້ນທີ່ລະອຽດອ່ອນຢູ່ໃນເສັ້ນທີ່ pixels ຂອງເພື່ອນບ້ານຢູ່ໃກ້ທີ່ສຸດ.

10 ແທນທີ່ pixels ລວງເປົ້າໝາຍດ້ວຍເພື່ອນບ້ານໃກ້ຄຽງ.

11 [1 2 1] kernel ແນວນອນ ແລະແນວຕັ້ງມົວ.

12 ເຊັ່ນ​ດຽວ​ກັນ​ກັບ​ຮູບ​ແບບ 11​.

13 ໂຫມດ Bob, interpolates ພາກສະຫນາມເທິງຈາກເສັ້ນທີ່ pixels ເພື່ອນບ້ານແມ່ນ
ໃກ້ທີ່ສຸດ.

14 ໂຫມດ Bob, interpolates ພາກສະຫນາມລຸ່ມຈາກເສັ້ນທີ່ pixels ເພື່ອນບ້ານແມ່ນ
ໃກ້ທີ່ສຸດ.

15 ໂຫມດ Bob, interpolates ພາກສະຫນາມເທິງ. ຄືກັນກັບ 13 ແຕ່ມີການແຊກແຊງທີ່ສັບສົນກວ່າ
ສູດ.

16 ໂໝດ Bob, interpolates ຊ່ອງລຸ່ມ. ຄືກັນກັບ 14 ແຕ່ມີຄວາມສັບສົນຫຼາຍ
ສູດ interpolation.

17 ຕັດ pixels ລວງດ້ວຍຕໍາ່ສຸດທີ່ແລະສູງສຸດຕາມລໍາດັບສູງສຸດແລະຕໍາ່ສຸດທີ່
ຂອງແຕ່ລະຄູ່ຂອງ pixels ເພື່ອນບ້ານກົງກັນຂ້າມ.

18 ການຕັດເສັ້ນທີ່ລະອຽດອ່ອນໂດຍໃຊ້ເພື່ອນບ້ານກົງກັນຂ້າມທີ່ມີໄລຍະໄກທີ່ສຸດຈາກ
pixel ໃນປັດຈຸບັນແມ່ນຫນ້ອຍ.

19 ແທນທີ່ pixels ລວງດ້ວຍຄ່າສະເລ່ຍຂອງ 8 ປະເທດເພື່ອນບ້ານ.

20 ສະເລ່ຍ 9 ພິກເຊວ ([1 1 1] ມົວແນວນອນ ແລະລວງຕັ້ງ).

21 Clips pixels ໂດຍໃຊ້ຄ່າສະເລ່ຍຂອງເພື່ອນບ້ານກົງກັນຂ້າມ.

22 ຄືກັນກັບໂໝດ 21 ແຕ່ງ່າຍກວ່າ ແລະໄວກວ່າ.

23 ຂອບຂະຫນາດນ້ອຍແລະການໂຍກຍ້າຍ halo, ແຕ່ຊື່ສຽງທີ່ບໍ່ມີປະໂຫຍດ.

24 ຄ້າຍ​ຄື 23.

ລຶບໂລໂກ້
ສະກັດກັ້ນສັນຍາລັກຂອງສະຖານີໂທລະພາບ, ໂດຍໃຊ້ໄຟລ໌ຮູບພາບເພື່ອກໍານົດວ່າ pixels ໃດປະກອບດ້ວຍ
ໂລໂກ້. ມັນເຮັດວຽກໂດຍການຕື່ມ pixels ທີ່ປະກອບດ້ວຍໂລໂກ້ກັບ pixels ໃກ້ຄຽງ.

ຕົວກອງຍອມຮັບຕົວເລືອກຕໍ່ໄປນີ້:

ຊື່​ເອ​ກະ​ສານ, f
ກໍານົດໄຟລ໌ bitmap ການກັ່ນຕອງ, ເຊິ່ງສາມາດເປັນຮູບແບບຮູບພາບໃດໆທີ່ສະຫນັບສະຫນູນໂດຍ libavformat.
ຄວາມກວ້າງແລະຄວາມສູງຂອງໄຟລ໌ຮູບພາບຕ້ອງກົງກັບໄຟລ໌ວິດີໂອທີ່ກໍາລັງເປັນ
ການປຸງແຕ່ງ.

pixels ໃນຮູບ bitmap ທີ່ສະຫນອງໃຫ້ກັບຄ່າຂອງສູນບໍ່ໄດ້ພິຈາລະນາເປັນສ່ວນຫນຶ່ງຂອງ
ໂລໂກ້, pixels ທີ່ບໍ່ແມ່ນສູນແມ່ນພິຈາລະນາເປັນສ່ວນຫນຶ່ງຂອງໂລໂກ້. ຖ້າທ່ານໃຊ້ສີຂາວ (255) ສໍາລັບໂລໂກ້
ແລະສີດໍາ (0) ສໍາລັບສ່ວນທີ່ເຫຼືອ, ທ່ານຈະປອດໄພ. ສໍາລັບການເຮັດໃຫ້ການກັ່ນຕອງ bitmap, ມັນແມ່ນ
ແນະນໍາໃຫ້ຖ່າຍຮູບຫນ້າຈໍຂອງກອບສີດໍາທີ່ມີໂລໂກ້ທີ່ເຫັນໄດ້, ແລະຫຼັງຈາກນັ້ນ
ການ​ນໍາ​ໃຊ້​ຕົວ​ກັ່ນ​ຕອງ​ຂອບ​ເຂດ​ປະ​ຕິ​ບັດ​ຕາມ​ໂດຍ​ການ​ກັ່ນ​ຕອງ erode ຫນຶ່ງ​ຫຼື​ສອງ​ຄັ້ງ​.

ຖ້າຈໍາເປັນ, ຮອຍແຕກເລັກນ້ອຍສາມາດແກ້ໄຂໄດ້ດ້ວຍຕົນເອງ. ຈື່ໄວ້ວ່າຖ້າໂລໂກ້ pixels ບໍ່ແມ່ນ
ກວມເອົາ, ຄຸນນະພາບການກັ່ນຕອງຈະຫຼຸດລົງຫຼາຍ. ການໝາຍ pixels ຫຼາຍເກີນໄປເປັນສ່ວນຫນຶ່ງຂອງ
ໂລໂກ້ບໍ່ເຈັບປວດຫຼາຍ, ແຕ່ມັນຈະເພີ່ມປະລິມານຄວາມມົວທີ່ຈໍາເປັນເພື່ອໃຫ້ກວມເອົາ
ໃນໄລຍະຮູບພາບແລະຈະທໍາລາຍຂໍ້ມູນຫຼາຍກ່ວາຄວາມຈໍາເປັນ, ແລະ pixels ພິເສດຈະ
ຊ້າລົງສິ່ງທີ່ຢູ່ໃນໂລໂກ້ຂະຫນາດໃຫຍ່.

ສະໜາມຊ້ຳ
ການກັ່ນຕອງນີ້ໃຊ້ທຸງ repeat_field ຈາກສ່ວນຫົວຂອງ Video ES ແລະຊ່ອງຂໍ້ມູນຊໍ້າຄືນຍາກ
ອີງໃສ່ມູນຄ່າຂອງມັນ.

ປີ້ນກັບກັນ, ກົງກັນຂ້າມ
ປີ້ນຄລິບ.

ຄໍາເຕືອນ: ການກັ່ນຕອງນີ້ຕ້ອງການຄວາມຊົງຈໍາເພື່ອ buffer ຄລິບທັງຫມົດ, ດັ່ງນັ້ນການຕັດແມ່ນແນະນໍາ.

ຕົວຢ່າງ

· ໃຊ້ເວລາ 5 ວິນາທີທຳອິດຂອງຄລິບ, ແລະປີ້ນກັບມັນ.

trim=end=5,ປີ້ນກັບ

ຫມຸນວຽນ
ໝຸນວິດີໂອຕາມມຸມທີ່ກຳນົດເອງສະແດງອອກເປັນເຣດຽນ.

ຕົວກອງຍອມຮັບຕົວເລືອກຕໍ່ໄປນີ້:

ລາຍລະອຽດຂອງຕົວກໍານົດການທາງເລືອກດັ່ງຕໍ່ໄປນີ້.

ມຸມ, a
ກໍານົດການສະແດງອອກສໍາລັບມຸມທີ່ຈະຫມຸນວິດີໂອການປ້ອນຂໍ້ມູນຕາມເຂັມໂມງ,
ສະແດງອອກເປັນຈໍານວນເຣດຽນ. ຄ່າລົບຈະສົ່ງຜົນໃຫ້ກົງກັນຂ້າມກັບເຂັມໂມງ
ພືດຫມູນວຽນ. ໂດຍຄ່າເລີ່ມຕົ້ນມັນຖືກກໍານົດເປັນ "0".

ການສະແດງອອກນີ້ຖືກປະເມີນສໍາລັບແຕ່ລະກອບ.

out_w, ow
ກໍານົດການສະແດງອອກຄວາມກວ້າງຂອງຜົນຜະລິດ, ຄ່າເລີ່ມຕົ້ນແມ່ນ "iw". ການສະແດງອອກນີ້ຖືກປະເມີນ
ພຽງ​ແຕ່​ຄັ້ງ​ດຽວ​ໃນ​ລະ​ຫວ່າງ​ການ​ຕັ້ງ​ຄ່າ​.

out_h, oh
ກໍານົດການສະແດງອອກຄວາມສູງຜົນຜະລິດ, ຄ່າເລີ່ມຕົ້ນແມ່ນ "ih". ການສະແດງອອກນີ້ຖືກປະເມີນ
ພຽງ​ແຕ່​ຄັ້ງ​ດຽວ​ໃນ​ລະ​ຫວ່າງ​ການ​ຕັ້ງ​ຄ່າ​.

bilinear
ເປີດໃຊ້ການແຊກແຊງ bilinear ຖ້າຕັ້ງເປັນ 1, ຄ່າ 0 ຈະປິດມັນ. ຄ່າເລີ່ມຕົ້ນແມ່ນ
1.

ສີເຕັມ, c
ກໍານົດສີທີ່ໃຊ້ເພື່ອຕື່ມໃສ່ພື້ນທີ່ຜົນຜະລິດທີ່ບໍ່ໄດ້ກວມເອົາໂດຍຮູບທີ່ຫມຸນ. ສໍາ​ລັບ
syntax ທົ່ວໄປຂອງຕົວເລືອກນີ້, ກວດເບິ່ງສ່ວນ "ສີ" ໃນຄູ່ມື ffmpeg-utils.
ຖ້າຄ່າພິເສດ "none" ຖືກເລືອກແລ້ວບໍ່ມີການພິມພື້ນຫລັງ (ເປັນປະໂຫຍດສໍາລັບ
ຕົວຢ່າງ ຖ້າພື້ນຫຼັງບໍ່ເຄີຍສະແດງ).

ຄ່າເລີ່ມຕົ້ນແມ່ນ "ສີດໍາ".

ການສະແດງອອກສໍາລັບມຸມແລະຂະຫນາດຜົນຜະລິດສາມາດມີຄ່າຄົງທີ່ຕໍ່ໄປນີ້ແລະ
ຫນ້າທີ່:

n ເລກລໍາດັບຂອງກອບການປ້ອນຂໍ້ມູນ, ເລີ່ມຈາກ 0. ມັນເປັນ NAN ສະເໝີກ່ອນ
ເຟຣມທໍາອິດຖືກກັ່ນຕອງ.

t ເວລາເປັນວິນາທີຂອງກອບການປ້ອນຂໍ້ມູນ, ມັນຖືກກໍານົດເປັນ 0 ເມື່ອຕົວກອງຖືກຕັ້ງຄ່າ. ມັນ
ແມ່ນ NAN ສະເໝີ ກ່ອນທີ່ເຟຣມທຳອິດຈະຖືກກັ່ນຕອງ.

hsub
vsub
ຄ່າຍ່ອຍ chroma ແນວນອນ ແລະແນວຕັ້ງ. ຕົວຢ່າງສໍາລັບຮູບແບບ pixels ລວງ
"yuv422p" hsub ແມ່ນ 2 ແລະ vsub ແມ່ນ 1.

in_w, iw
in_h, ih
ຄວາມກວ້າງແລະຄວາມສູງຂອງວິດີໂອປ້ອນຂໍ້ມູນ

out_w, ow
out_h, oh
ຄວາມກວ້າງແລະຄວາມສູງຂອງຜົນຜະລິດ, ນັ້ນແມ່ນຂະຫນາດຂອງພື້ນທີ່ padded ຕາມທີ່ລະບຸໄວ້ໂດຍ
width ແລະ ລະດັບຄວາມສູງ expressions

rotw(a)
roth(ກ)
ຄວາມກວ້າງ/ຄວາມສູງຕໍ່າສຸດທີ່ຕ້ອງການສໍາລັບການບັນຈຸວິດີໂອປ້ອນຂໍ້ມູນທີ່ຫມຸນໂດຍ
a ເຣດຽນ

ເຫຼົ່ານີ້ແມ່ນມີພຽງແຕ່ໃນເວລາທີ່ຄອມພິວເຕີ out_w ແລະ out_h ສຳ ນວນ.

ຕົວຢ່າງ

· ໝຸນການປ້ອນຂໍ້ມູນດ້ວຍ PI/6 ເຣດຽນຕາມເຂັມໂມງ:

rotate=PI/6

· ໝຸນ​ການ​ປ້ອນ​ຂໍ້​ມູນ​ໂດຍ PI/6 ເຣດຽນ​ທວນ​ເຂັມ​ໂມງ:

rotate=-PI/6

· ໝຸນການປ້ອນຂໍ້ມູນດ້ວຍ 45 ອົງສາຕາມເຂັມໂມງ:

rotate=45*PI/180

· ນຳໃຊ້ການໝູນວຽນຄົງທີ່ດ້ວຍໄລຍະເວລາ T, ເລີ່ມຈາກມຸມຂອງ PI/3:

rotate=PI/3+2*PI*t/T

· ເຮັດ​ໃຫ້​ການ​ປ້ອນ​ຂໍ້​ມູນ​ການ​ຫມຸນ​ວິ​ດີ​ໂອ oscillating ມີ​ໄລ​ຍະ​ເວ​ລາ​ຂອງ T ວິ​ນາ​ທີ​ແລະ​ຄວາມ​ກວ້າງ​ຂວາງ​
ຂອງ A radians:

rotate=A*sin(2*PI/T*t)

· rotate ວິ​ດີ​ໂອ​, ຂະ​ຫນາດ​ຜົນ​ຜະ​ລິດ​ໄດ້​ຖືກ​ຄັດ​ເລືອກ​ດັ່ງ​ນັ້ນ​ວິ​ດີ​ໂອ​ການ​ປ້ອນ​ຂໍ້​ມູນ​ພືດ​ຫມູນ​ວຽນ​ທັງ​ຫມົດ​ແມ່ນ​
ສະ​ເຫມີ​ໄປ​ມີ​ຢູ່​ໃນ​ຜົນ​ຜະ​ລິດ​ໄດ້​ຢ່າງ​ສົມ​ບູນ​:

rotate='2*PI*t:ow=hypot(iw,ih):oh=ow'

· rotate ວິ​ດີ​ໂອ​, ຫຼຸດ​ຜ່ອນ​ຂະ​ຫນາດ​ຜົນ​ຜະ​ລິດ​ເພື່ອ​ບໍ່​ໃຫ້​ມີ​ພື້ນ​ຖານ​ທີ່​ເຄີຍ​ສະ​ແດງ​ໃຫ້​ເຫັນ​:

rotate=2*PI*t:ow='min(iw,ih)/sqrt(2)':oh=ow:c=none

ຄໍາສັ່ງ

ການກັ່ນຕອງສະຫນັບສະຫນູນຄໍາສັ່ງຕໍ່ໄປນີ້:

a, ມຸມ
ກໍານົດການສະແດງອອກມຸມ. ຄໍາສັ່ງຍອມຮັບ syntax ດຽວກັນຂອງທີ່ສອດຄ້ອງກັນ
ທາງເລືອກ.

ຖ້າການສະແດງອອກທີ່ລະບຸບໍ່ຖືກຕ້ອງ, ມັນຖືກເກັບໄວ້ໃນມູນຄ່າປະຈຸບັນຂອງມັນ.

sab
ນຳໃຊ້ Shape Adaptive Blur.

ຕົວກອງຍອມຮັບຕົວເລືອກຕໍ່ໄປນີ້:

luma_radius, lr
ຕັ້ງຄ່າຄວາມແຮງຂອງການກັ່ນຕອງ luma blur, ຕ້ອງເປັນຄ່າໃນໄລຍະ 0.1-4.0, ຄ່າເລີ່ມຕົ້ນແມ່ນ 1.0.
ຄ່າທີ່ໃຫຍ່ກວ່າຈະສົ່ງຜົນໃຫ້ຮູບພາບທີ່ມົວຫຼາຍ, ແລະການປະມວນຜົນຊ້າລົງ.

luma_pre_filter_radius, lpfr
ຕັ້ງລັດສະໝີຂອງຕົວກອງ luma, ຕ້ອງເປັນຄ່າໃນຂອບເຂດ 0.1-2.0, ຄ່າເລີ່ມຕົ້ນແມ່ນ
1.0​.

luma_strength, ls
ກໍານົດຄວາມແຕກຕ່າງສູງສຸດຂອງ luma ລະຫວ່າງ pixels ທີ່ຈະຍັງພິຈາລະນາ, ຕ້ອງເປັນຄ່າໃນ
ໄລຍະ 0.1-100.0, ຄ່າເລີ່ມຕົ້ນແມ່ນ 1.0.

chroma_radius, cr
ຕັ້ງຄ່າຄວາມແຮງຂອງການກັ່ນຕອງ chroma blur, ຕ້ອງເປັນຄ່າໃນໄລຍະ 0.1-4.0. ມູນຄ່າຫຼາຍກວ່າເກົ່າ
ຈະສົ່ງຜົນໃຫ້ຮູບພາບທີ່ມົວຫຼາຍ, ແລະການປະມວນຜົນຊ້າລົງ.

chroma_pre_filter_radius, cpfr
ຕັ້ງລັດສະໝີຂອງຕົວກອງ chroma, ຕ້ອງເປັນຄ່າໃນຂອບເຂດ 0.1-2.0.

chroma_strength, cs
ກໍານົດຄວາມແຕກຕ່າງສູງສຸດ chroma ລະຫວ່າງ pixels ທີ່ຈະຍັງພິຈາລະນາ, ຕ້ອງເປັນຄ່າ
ໃນລະດັບ 0.1-100.0.

ແຕ່ລະຄ່າຂອງທາງເລືອກ chroma, ຖ້າບໍ່ໄດ້ລະບຸຢ່າງຊັດເຈນ, ຖືກຕັ້ງເປັນ luma ທີ່ສອດຄ້ອງກັນ
ຄ່າທາງເລືອກ.

ຂະຫນາດ
ປັບຂະໜາດ (ປັບຂະໜາດ) ວິດີໂອປ້ອນຂໍ້ມູນ, ໂດຍໃຊ້ຫ້ອງສະໝຸດ libswscale.

ຕົວກອງຂະໜາດບັງຄັບໃຫ້ອັດຕາສ່ວນການສະແດງຜົນອອກມາເປັນອັນດຽວກັນຂອງວັດສະດຸປ້ອນ, ໂດຍ
ການປ່ຽນແປງອັດຕາສ່ວນຕົວຢ່າງຜົນຜະລິດ.

ຖ້າ​ຮູບ​ແບບ​ຮູບ​ພາບ​ການ​ປ້ອນ​ຂໍ້​ມູນ​ແຕກ​ຕ່າງ​ຈາກ​ຮູບ​ແບບ​ທີ່​ຮ້ອງ​ຂໍ​ໂດຍ​ການ​ກັ່ນ​ຕອງ​ຕໍ່​ໄປ​, ໄດ້​
ຕົວກອງຂະໜາດຈະປ່ຽນການປ້ອນຂໍ້ມູນໃຫ້ເປັນຮູບແບບທີ່ຮ້ອງຂໍ.

ທາງເລືອກໃນການ

ການກັ່ນຕອງຍອມຮັບທາງເລືອກຕໍ່ໄປນີ້, ຫຼືທາງເລືອກໃດໆທີ່ສະຫນັບສະຫນູນໂດຍ
ຕົວຂະຫຍາຍຂະໜາດ libswscale.

ເບິ່ງ ໄດ້ ffmpeg-scaler ຄູ່ມື ສໍາລັບບັນຊີລາຍຊື່ຄົບຖ້ວນຂອງຕົວເລືອກ scaler.

ຄວາມກວ້າງ, w
ລະດັບຄວາມສູງ, h
ກໍານົດການສະແດງອອກຂະຫນາດວິດີໂອຜົນຜະລິດ. ຄ່າເລີ່ມຕົ້ນແມ່ນຂະໜາດການປ້ອນຂໍ້ມູນ.

ຖ້າຄ່າແມ່ນ 0, ຄວາມກວ້າງຂອງວັດສະດຸປ້ອນແມ່ນໃຊ້ສໍາລັບຜົນຜະລິດ.

ຖ້າຫນຶ່ງຂອງຄ່າແມ່ນ -1, ຕົວກອງຂະຫນາດຈະໃຊ້ຄ່າທີ່ຮັກສາ
ອັດຕາສ່ວນຂອງຮູບພາບທີ່ປ້ອນເຂົ້າ, ຄິດໄລ່ຈາກມິຕິທີ່ລະບຸອື່ນ. ຖ້າ
ທັງສອງຂອງພວກເຂົາແມ່ນ -1, ຂະຫນາດປ້ອນຂໍ້ມູນຖືກນໍາໃຊ້

ຖ້າຫນຶ່ງຂອງຄ່າແມ່ນ -n ກັບ n > 1, ຕົວກອງຂະຫນາດຈະໃຊ້ຄ່າທີ່
ຮັກສາອັດຕາສ່ວນຂອງຮູບພາບທີ່ປ້ອນເຂົ້າ, ຄິດໄລ່ຈາກອັນອື່ນທີ່ລະບຸໄວ້
ມິຕິ. ຫຼັງຈາກນັ້ນມັນຈະ, ຢ່າງໃດກໍຕາມ, ໃຫ້ແນ່ໃຈວ່າຂະຫນາດທີ່ຄິດໄລ່ແມ່ນ
ແບ່ງດ້ວຍ n ແລະປັບຄ່າຖ້າຈໍາເປັນ.

ເບິ່ງຂ້າງລຸ່ມນີ້ສໍາລັບບັນຊີລາຍຊື່ຂອງຄ່າຄົງທີ່ທີ່ຍອມຮັບສໍາລັບການນໍາໃຊ້ໃນການສະແດງມິຕິ.

ອິນເຕີ
ຕັ້ງຄ່າໂໝດ interlacing. ມັນຍອມຮັບຄ່າດັ່ງຕໍ່ໄປນີ້:

1 ບັງ​ຄັບ​ການ​ປັບ​ຂະ​ຫນາດ​ການ​ຮູ້ interlaced​.

0 ຢ່າໃຊ້ການປັບຂະຫນາດແບບ interlaced.

-1 ເລືອກ​ການ​ຂະ​ຫຍາຍ​ການ​ຮູ້ interlaced ຂຶ້ນ​ກັບ​ວ່າ​ເຟຣມ​ແຫຼ່ງ​ທີ່​ຖືກ​ຫມາຍ​
ເປັນ interlaced ຫຼືບໍ່.

ຄ່າເລີ່ມຕົ້ນແມ່ນ 0.

ທົງ
ກໍານົດທຸງຂະຫນາດ libswscale. ເບິ່ງ ໄດ້ ffmpeg-scaler ຄູ່ມື ສໍາລັບບັນຊີລາຍຊື່ຄົບຖ້ວນຂອງ
ຄຸນຄ່າ. ຖ້າບໍ່ໄດ້ລະບຸຢ່າງຊັດເຈນຕົວກອງຈະໃຊ້ທຸງເລີ່ມຕົ້ນ.

ຂະ ໜາດ, s
ກໍານົດຂະຫນາດວິດີໂອ. ສໍາລັບ syntax ຂອງທາງເລືອກນີ້, ໃຫ້ກວດເບິ່ງ "ວິດີໂອ ຂະໜາດ" ສ່ວນ in
ໄດ້ ffmpeg-utils ຄູ່ມື.

in_color_matrix
out_color_matrix
ກໍານົດປະເພດພື້ນທີ່ສີ YCbCr ໃນ/ອອກ.

ນີ້ອະນຸຍາດໃຫ້ຄ່າທີ່ກວດພົບອັດຕະໂນມັດຖືກ overridden ເຊັ່ນດຽວກັນກັບອະນຸຍາດໃຫ້ບັງຄັບ a
ຄ່າສະເພາະທີ່ໃຊ້ສຳລັບຜົນຜະລິດ ແລະຕົວເຂົ້າລະຫັດ.

ຖ້າບໍ່ໄດ້ລະບຸ, ປະເພດພື້ນທີ່ສີແມ່ນຂຶ້ນກັບຮູບແບບ pixels ລວງ.

ຄ່າທີ່ເປັນໄປໄດ້:

ອັດຕະໂນມັດ
ເລືອກອັດຕະໂນມັດ.

bt709
ຮູບແບບທີ່ສອດຄ່ອງກັບຄຳແນະນຳຂອງສະຫະພັນໂທລະຄົມມະນາຄົມສາກົນ (ITU).
BT.709.

FCC ກໍານົດພື້ນທີ່ສີທີ່ສອດຄ່ອງກັບຄະນະກໍາມະການການສື່ສານຂອງລັດຖະບານກາງສະຫະລັດ
(FCC) ລະຫັດກົດລະບຽບຂອງລັດຖະບານກາງ (CFR) ຫົວຂໍ້ 47 (2003) 73.682 (a).

bt601
ຕັ້ງພື້ນທີ່ສີທີ່ສອດຄ່ອງກັບ:

· ຂະແໜງວິທະຍຸສື່ສານ ITU (ITU-R) ຄຳແນະນຳ BT.601

· ITU-R Rec. BT.470-6 (1998) ລະບົບ B, B1, ແລະ G

· ສະມາຄົມນັກວິສະວະກອນພາບເຄື່ອນໄຫວ ແລະໂທລະພາບ (SMPTE) ST 170:2004

smte 240m
ຕັ້ງພື້ນທີ່ສີທີ່ສອດຄ່ອງກັບ SMPTE ST 240:1999.

in_range
out_range
ກໍານົດຂອບເຂດຕົວຢ່າງ YCbCr ໃນ / ຜົນຜະລິດ.

ນີ້ອະນຸຍາດໃຫ້ຄ່າທີ່ກວດພົບອັດຕະໂນມັດຖືກ overridden ເຊັ່ນດຽວກັນກັບອະນຸຍາດໃຫ້ບັງຄັບ a
ຄ່າສະເພາະທີ່ໃຊ້ສໍາລັບຜົນຜະລິດ ແລະຕົວເຂົ້າລະຫັດ. ຖ້າບໍ່ໄດ້ລະບຸ, ໄລຍະແມ່ນຂຶ້ນກັບ
ຮູບແບບ pixels ລວງ. ຄ່າທີ່ເປັນໄປໄດ້:

ອັດຕະໂນມັດ
ເລືອກອັດຕະໂນມັດ.

jpeg/full/pc
ກໍານົດຂອບເຂດເຕັມ (0-255 ໃນກໍລະນີຂອງ 8-bit luma).

mpeg/tv
ກໍານົດຂອບເຂດ "MPEG" (16-235 ໃນກໍລະນີຂອງ 8-bit luma).

force_original_aspect_ratio
ເຮັດ​ໃຫ້​ການ​ຫຼຸດ​ລົງ​ຫຼື​ເພີ່ມ​ຄວາມ​ກວ້າງ​ຂອງ​ວິ​ດີ​ໂອ​ຜົນ​ຜະ​ລິດ​ຫຼື​ຄວາມ​ສູງ​ຖ້າ​ຫາກ​ວ່າ​ຈໍາ​ເປັນ​ເພື່ອ​ຮັກ​ສາ​
ອັດຕາສ່ວນຕົ້ນສະບັບ. ຄ່າທີ່ເປັນໄປໄດ້:

ປິດການໃຊ້ວຽກ
ຂະຫຍາຍວິດີໂອຕາມທີ່ລະບຸໄວ້ ແລະປິດຄຸນສົມບັດນີ້.

ຫຼຸດລົງ
ຂະ​ຫນາດ​ວິ​ດີ​ໂອ​ຜົນ​ຜະ​ລິດ​ຈະ​ຖືກ​ຫຼຸດ​ລົງ​ອັດ​ຕະ​ໂນ​ມັດ​ຖ້າ​ຫາກ​ວ່າ​ຈໍາ​ເປັນ​.

ເພີ່ມ​ຂຶ້ນ
ຂະ​ຫນາດ​ວິ​ດີ​ໂອ​ຜົນ​ຜະ​ລິດ​ຈະ​ໄດ້​ຮັບ​ການ​ເພີ່ມ​ຂຶ້ນ​ອັດ​ຕະ​ໂນ​ມັດ​ຖ້າ​ຫາກ​ວ່າ​ຈໍາ​ເປັນ​.

ຫນຶ່ງໃນຕົວຢ່າງທີ່ເປັນປະໂຫຍດຂອງທາງເລືອກນີ້ແມ່ນວ່າເມື່ອທ່ານຮູ້ເຖິງສູງສຸດຂອງອຸປະກອນສະເພາະໃດຫນຶ່ງ
ການ​ແກ້​ໄຂ​ທີ່​ອະ​ນຸ​ຍາດ​ໃຫ້​, ທ່ານ​ສາ​ມາດ​ນໍາ​ໃຊ້​ນີ້​ເພື່ອ​ຈໍາ​ກັດ​ວິ​ດີ​ໂອ​ຜົນ​ຜະ​ລິດ​ທີ່​, ໃນ​ຂະ​ນະ​ທີ່​
ຮັກສາອັດຕາສ່ວນລັກສະນະ. ຕົວຢ່າງ, ອຸປະກອນ A ອະນຸຍາດໃຫ້ຫຼິ້ນ 1280x720, ແລະຂອງທ່ານ
ວິດີໂອແມ່ນ 1920x800. ການ​ນໍາ​ໃຊ້​ທາງ​ເລືອກ​ນີ້ (ຕັ້ງ​ໃຫ້​ມັນ​ຫຼຸດ​ລົງ​) ແລະ​ລະ​ບຸ 1280x720 ກັບ​
ເສັ້ນຄໍາສັ່ງເຮັດໃຫ້ຜົນຜະລິດ 1280x533.

ກະລຸນາສັງເກດວ່ານີ້ແມ່ນສິ່ງທີ່ແຕກຕ່າງກັນກ່ວາການລະບຸ -1 ສໍາລັບ w or h, ທ່ານ​ຍັງ
ຈໍາ​ເປັນ​ຕ້ອງ​ລະ​ບຸ​ຄວາມ​ລະ​ອຽດ​ຜົນ​ຜະ​ລິດ​ສໍາ​ລັບ​ທາງ​ເລືອກ​ນີ້​ຈະ​ເຮັດ​ວຽກ​.

ຄຸນ​ຄ່າ​ຂອງ​ w ແລະ h ທາງເລືອກແມ່ນສະແດງອອກທີ່ມີຄ່າຄົງທີ່ຕໍ່ໄປນີ້:

in_w
in_h
ຄວາມກວ້າງແລະຄວາມສູງຂອງວັດສະດຸປ້ອນ

iw
ih ເຫຼົ່ານີ້ແມ່ນຄືກັນກັບ in_w ແລະ in_h.

out_w
out_h
ຜົນຜະລິດ (ຂະຫນາດ) ຄວາມກວ້າງແລະຄວາມສູງ

ow
oh ເຫຼົ່ານີ້ແມ່ນຄືກັນກັບ out_w ແລະ out_h

a ຄື​ກັນ​ກັບ iw / ih

sar ອັດຕາສ່ວນຕົວຢ່າງການປ້ອນຂໍ້ມູນ

dar ອັດຕາສ່ວນການສະແດງຜົນການປ້ອນຂໍ້ມູນ. ຄິດໄລ່ຈາກ "(iw / ih) * sar".

hsub
vsub
ຄ່າຍ່ອຍ chroma input ແນວນອນ ແລະແນວຕັ້ງ. ສໍາລັບຕົວຢ່າງ, ສໍາລັບ pixels ລວງ
ຮູບແບບ "yuv422p" hsub ແມ່ນ 2 ແລະ vsub ແມ່ນ 1.

ohsub
ovsub
ຄ່າຍ່ອຍ chroma ຜົນຜະລິດແນວນອນ ແລະແນວຕັ້ງ. ສໍາລັບຕົວຢ່າງ, ສໍາລັບ pixels ລວງ
ຮູບແບບ "yuv422p" hsub ແມ່ນ 2 ແລະ vsub ແມ່ນ 1.

ຕົວຢ່າງ

· ປັບ​ຂະ​ຫນາດ​ວິ​ດີ​ໂອ​ການ​ປ້ອນ​ຂໍ້​ມູນ​ເປັນ​ຂະ​ຫນາດ 200x100​

scale=w=200:h=100

ອັນນີ້ເທົ່າກັບ:

ຂະໜາດ=200:100

ຫລື:

ຂະໜາດ=200x100

· ລະບຸຂະໜາດຫຍໍ້ຂອງຂະໜາດຜົນຜະລິດ:

scale=qcif

ເຊິ່ງຍັງສາມາດຂຽນເປັນ:

scale=size=qcif

· ປັບຂະໜາດການປ້ອນຂໍ້ມູນເປັນ 2x:

scale=w=2*iw:h=2*ih

·ຂ້າງເທິງນີ້ແມ່ນຄືກັນກັບ:

scale=2*in_w:2*in_h

· ຂະ​ຫຍາຍ​ການ​ປ້ອນ​ຂໍ້​ມູນ​ເປັນ 2x ດ້ວຍ​ການ​ບັງ​ຄັບ​ຂະ​ຫນາດ interlaced​:

scale=2*iw:2*ih:interl=1

· ຂະ​ຫນາດ​ການ​ປ້ອນ​ຂໍ້​ມູນ​ເປັນ​ເຄິ່ງ​ຂະ​ຫນາດ​:

scale=w=iw/2:h=ih/2

·ເພີ່ມຄວາມກວ້າງ, ແລະກໍານົດຄວາມສູງເປັນຂະຫນາດດຽວກັນ:

scale=3/2*iw:ow

·ຊອກຫາຄວາມກົມກຽວກເຣັກ:

scale=iw:1/PHI*iw
scale=ih*PHI:ih

·ເພີ່ມຄວາມສູງ, ແລະກໍານົດຄວາມກວ້າງເປັນ 3/2 ຂອງຄວາມສູງ:

scale=w=3/2*oh:h=3/5*ih

·​ເພີ່ມ​ຂະ​ຫນາດ​, ເຮັດ​ໃຫ້​ຂະ​ຫນາດ​ເປັນ​ຫຼາຍ​ຂອງ​ຄ່າ​ຕົວ​ຢ່າງ chroma​:

scale="trunc(3/2*iw/hsub)*hsub:trunc(3/2*ih/vsub)*vsub"

· ເພີ່ມຄວາມກວ້າງໃຫ້ສູງສຸດ 500 pixels, ຮັກສາອັດຕາສ່ວນລັກສະນະດຽວກັນກັບ
input:

scale=w='min(500\, iw*3/2):h=-1'

ຄໍາສັ່ງ

ການກັ່ນຕອງນີ້ສະຫນັບສະຫນູນຄໍາສັ່ງຕໍ່ໄປນີ້:

ຄວາມກວ້າງ, w
ລະດັບຄວາມສູງ, h
ກໍານົດການສະແດງອອກຂະຫນາດວິດີໂອຜົນຜະລິດ. ຄໍາສັ່ງຍອມຮັບ syntax ດຽວກັນຂອງ
ທາງ​ເລືອກ​ທີ່​ສອດ​ຄ້ອງ​ກັນ​.

ຖ້າການສະແດງອອກທີ່ລະບຸບໍ່ຖືກຕ້ອງ, ມັນຖືກເກັບໄວ້ໃນມູນຄ່າປະຈຸບັນຂອງມັນ.

scale2ref
ປັບຂະໜາດ (ປັບຂະໜາດ) ວິດີໂອປ້ອນຂໍ້ມູນ, ອີງຕາມວິດີໂອອ້າງອີງ.

ເບິ່ງຕົວກອງຂະຫນາດສໍາລັບທາງເລືອກທີ່ມີ, scale2ref ສະຫນັບສະຫນູນດຽວກັນແຕ່ໃຊ້
ວິດີໂອອ້າງອີງແທນການປ້ອນຂໍ້ມູນຫຼັກເປັນພື້ນຖານ.

ຕົວຢ່າງ

· ປັບຂະໜາດການສະຕຣີມຄຳບັນຍາຍໃຫ້ກົງກັບວິດີໂອຫຼັກໃນຂະໜາດກ່ອນການວາງຊ້ອນ

'scale2ref[b][a];[a][b]ການວາງຊ້ອນ'

ທົ່ງນາ
"separatefields" ໃຊ້ເວລາການປ້ອນວິດີໂອໂດຍອີງໃສ່ກອບແລະແຍກແຕ່ລະກອບເຂົ້າໄປໃນຂອງຕົນ
ຊ່ອງຂໍ້ມູນອົງປະກອບ, ການຜະລິດ clip ຄວາມສູງເຄິ່ງຫນຶ່ງໃຫມ່ທີ່ມີອັດຕາເຟມສອງເທົ່າແລະສອງຄັ້ງ
ນັບກອບ.

ຕົວກອງນີ້ໃຊ້ຂໍ້ມູນການຄອບຄອງພາກສະຫນາມໃນກອບເພື່ອຕັດສິນໃຈວ່າແຕ່ລະຄູ່ຂອງຄູ່ໃດ
ຊ່ອງຂໍ້ມູນທີ່ຈະຈັດວາງທໍາອິດໃນຜົນຜະລິດ. ຖ້າ​ຫາກ​ວ່າ​ມັນ​ໄດ້​ຮັບ​ມັນ​ໃຊ້​ຜິດ​ພາດ​ setfield ການກັ່ນຕອງກ່ອນ
ຕົວກອງ "separatefields".

setdar, setsar
ຕົວກອງ "setdar" ກໍານົດອັດຕາສ່ວນການສະແດງຜົນສໍາລັບວິດີໂອຜົນຜະລິດການກັ່ນຕອງ.

ນີ້ແມ່ນເຮັດໄດ້ໂດຍການປ່ຽນແປງຕົວຢ່າງທີ່ກໍານົດໄວ້ (aka Pixel) Aspect Ratio, ອີງຕາມການ
ສົມຜົນຕໍ່ໄປນີ້:

= / *

ຈົ່ງຈື່ໄວ້ວ່າຕົວກອງ "setdar" ບໍ່ໄດ້ດັດແປງຂະຫນາດ pixels ລວງຂອງວິດີໂອ
ກອບ. ນອກຈາກນີ້, ອັດຕາສ່ວນການສະແດງຜົນທີ່ກໍານົດໂດຍການກັ່ນຕອງນີ້ອາດຈະມີການປ່ຽນແປງໂດຍການກັ່ນຕອງຕໍ່ມາ
ໃນ filterchain, ເຊັ່ນ: ໃນກໍລະນີຂອງການຂະຫຍາຍຫຼືຖ້າ "setdar" ຫຼື "setsar" ອື່ນແມ່ນການກັ່ນຕອງ.
ນຳ ໃຊ້.

ຕົວກອງ "setsar" ກໍານົດອັດຕາຕົວຢ່າງ (aka Pixel) Aspect Ratio ສໍາລັບວິດີໂອຜົນຜະລິດການກັ່ນຕອງ.

ໃຫ້ສັງເກດວ່າເປັນຜົນສະທ້ອນຂອງຄໍາຮ້ອງສະຫມັກຂອງການກັ່ນຕອງນີ້, ຜົນໄດ້ຮັບສະແດງລັກສະນະ
ອັດຕາສ່ວນຈະປ່ຽນແປງຕາມສົມຜົນຂ້າງເທິງ.

ຈົ່ງຈື່ໄວ້ວ່າອັດຕາສ່ວນຕົວຢ່າງທີ່ກໍານົດໂດຍການກັ່ນຕອງ "setsar" ອາດຈະມີການປ່ຽນແປງໂດຍ
ການກັ່ນຕອງຕໍ່ມາໃນ filterchain, ເຊັ່ນວ່າ "setsar" ຫຼື "setdar" ອື່ນແມ່ນການກັ່ນຕອງ
ນຳ ໃຊ້.

ມັນຍອມຮັບຕົວກໍານົດການດັ່ງຕໍ່ໄປນີ້:

r, ອັດ​ຕາ​ສ່ວນ​, dar ("setdar" ເທົ່ານັ້ນ), sar ("setsar" ພຽງແຕ່)
ກໍານົດອັດຕາສ່ວນການນໍາໃຊ້ໂດຍການກັ່ນຕອງ.

ພາລາມິເຕີສາມາດເປັນສະຕຣິງຕົວເລກຈຸດລອຍ, ການສະແດງຜົນ, ຫຼືສາຍຂອງ
ຮູບແບບ num:ໄດ້, ບ່ອນທີ່ num ແລະ ໄດ້ ແມ່ນຕົວເລກແລະຕົວຫານຂອງອັດຕາສ່ວນ.
ຖ້າພາລາມິເຕີບໍ່ໄດ້ລະບຸ, ມັນສົມມຸດວ່າ "0". ໃນ​ກໍ​ລະ​ນີ​ຮູບ​ແບບ​
"num:ໄດ້" ຖືກນໍາໃຊ້, " : " ຕົວອັກສອນຄວນຈະຖືກຫລົບຫນີ.

ສູງສຸດທີ່ເຄຍ ກໍານົດຄ່າຈໍານວນສູງສຸດທີ່ຈະໃຊ້ສໍາລັບການສະແດງອອກຕົວເລກແລະຕົວຫານເມື່ອ
ການຫຼຸດຜ່ອນອັດຕາສ່ວນທີ່ສະແດງອອກໄປສູ່ສົມເຫດສົມຜົນ. ຄ່າເລີ່ມຕົ້ນແມ່ນ 100.

ພາລາມິເຕີ sar ແມ່ນການສະແດງອອກທີ່ມີຄ່າຄົງທີ່ຕໍ່ໄປນີ້:

E, PI, PHI
ເຫຼົ່ານີ້ແມ່ນຄ່າໂດຍປະມານສໍາລັບຄ່າຄົງທີ່ທາງຄະນິດສາດ e (ຕົວເລກຂອງ Euler), pi
(ປີກເຣັກ), ແລະ phi (ອັດຕາສ່ວນທອງ).

w, h
ຄວາມກວ້າງແລະຄວາມສູງຂອງວັດສະດຸປ້ອນ.

a ເຫຼົ່ານີ້ແມ່ນຄືກັນກັບ w / h.

sar ອັດຕາສ່ວນຕົວຢ່າງການປ້ອນຂໍ້ມູນ.

dar ອັດຕາສ່ວນການສະແດງຜົນຂອງວັດສະດຸປ້ອນ. ມັນ​ຄື​ກັນ​ກັບ (w / h) * sar.

hsub, vsub
ຄ່າຍ່ອຍ chroma ແນວນອນ ແລະແນວຕັ້ງ. ສໍາລັບຕົວຢ່າງ, ສໍາລັບຮູບແບບ pixels ລວງ
"yuv422p" hsub ແມ່ນ 2 ແລະ vsub ແມ່ນ 1.

ຕົວຢ່າງ

· ການ​ປ່ຽນ​ແປງ​ອັດ​ຕາ​ສ່ວນ​ການ​ສະ​ແດງ​ໃຫ້​ເຫັນ​ເປັນ 16:9​, ໃຫ້​ລະ​ບຸ​ຫນຶ່ງ​ດັ່ງ​ຕໍ່​ໄປ​ນີ້​:

setdar=dar=1.77777
setdar=dar=16/9
setdar=dar=1.77777

· ເພື່ອປ່ຽນອັດຕາສ່ວນຕົວຢ່າງເປັນ 10:11, ໃຫ້ລະບຸ:

setsar=sar=10/11

· ເພື່ອ​ຕັ້ງ​ອັດ​ຕາ​ສ່ວນ​ການ​ສະ​ແດງ​ຂອງ 16:9​, ແລະ​ລະ​ບຸ​ຄ່າ​ຈໍາ​ນວນ​ເຕັມ​ສູງ​ສຸດ 1000 ໃນ
ການຫຼຸດຜ່ອນອັດຕາສ່ວນ, ໃຊ້ຄໍາສັ່ງ:

setdar=ratio=16/9:ສູງສຸດ=1000

setfield
ບັງຄັບພາກສະຫນາມສໍາລັບກອບວິດີໂອຜົນຜະລິດ.

ການກັ່ນຕອງ "setfield" ຫມາຍໃສ່ພາກສະຫນາມປະເພດ interlace ສໍາລັບກອບຜົນຜະລິດ. ມັນບໍ່ໄດ້
ການ​ປ່ຽນ​ແປງ​ກອບ​ການ​ປ້ອນ​ຂໍ້​ມູນ​, ແຕ່​ພຽງ​ແຕ່​ກໍາ​ນົດ​ຊັບ​ສິນ​ທີ່​ສອດ​ຄ້ອງ​ກັນ​, ທີ່​ມີ​ຜົນ​ກະ​ທົບ​ວິ​ທີ​ການ​
ກອບຖືກປະຕິບັດໂດຍການປະຕິບັດຕາມການກັ່ນຕອງ (ຕົວຢ່າງ "fieldorder" ຫຼື "yadif").

ຕົວກອງຍອມຮັບຕົວເລືອກຕໍ່ໄປນີ້:

ຮູບແບບການ
ຄ່າທີ່ມີຢູ່ແມ່ນ:

ອັດຕະໂນມັດ
ຮັກສາຊັບສິນພາກສະຫນາມດຽວກັນ.

BFF ໝາຍຂອບເປັນລຸ່ມສຸດ-ຊ່ອງ-ທຳອິດ.

tff ໝາຍຂອບເປັນບ່ອນເທິງ-ບ່ອນທຳອິດ.

ໂປຣແກມ
ໝາຍຂອບວ່າມີຄວາມຄືບໜ້າ.

ຂໍ້ມູນການສະແດງ
ສະແດງແຖວທີ່ມີຂໍ້ມູນຕ່າງໆສຳລັບແຕ່ລະກອບວິດີໂອທີ່ປ້ອນເຂົ້າ. ວິດີໂອປ້ອນຂໍ້ມູນແມ່ນ
ບໍ່ໄດ້ດັດແກ້.

ແຖວທີ່ສະແດງມີລຳດັບຂອງຄູ່ຄີ/ຄ່າຂອງແບບຟອມ ທີ່ສໍາຄັນ:ມູນຄ່າ.

ຄ່າຕໍ່ໄປນີ້ແມ່ນສະແດງຢູ່ໃນຜົນຜະລິດ:

n ຕົວເລກ (ຕາມລໍາດັບ) ຂອງກອບການປ້ອນຂໍ້ມູນ, ເລີ່ມຈາກ 0.

pts ເວ​ລາ​ສະ​ແຕມ​ການ​ນໍາ​ສະ​ເຫນີ​ຂອງ​ກອບ​ການ​ປ້ອນ​ຂໍ້​ມູນ​, ສະ​ແດງ​ອອກ​ເປັນ​ຈໍາ​ນວນ​ຂອງ​ຖານ​ທີ່​ໃຊ້​ເວ​ລາ​
ໜ່ວຍ. ຫົວໜ່ວຍພື້ນຖານເວລາແມ່ນຂຶ້ນກັບແຜ່ນປ້ອນການກັ່ນຕອງ.

pts_time
ເວ​ລາ​ສະ​ແຕມ​ການ​ນໍາ​ສະ​ເຫນີ​ຂອງ​ກອບ​ການ​ປ້ອນ​ຂໍ້​ມູນ​, ສະ​ແດງ​ອອກ​ເປັນ​ຈໍາ​ນວນ​ວິ​ນາ​ທີ​.

pos ຕໍາແຫນ່ງຂອງກອບໃນກະແສການປ້ອນຂໍ້ມູນ, ຫຼື -1 ຖ້າຂໍ້ມູນນີ້ແມ່ນ
ບໍ່ສາມາດໃຊ້ໄດ້ ແລະ/ຫຼືບໍ່ມີຄວາມໝາຍ (ຕົວຢ່າງໃນກໍລະນີຂອງວິດີໂອສັງເຄາະ).

fmt ຊື່ຮູບແບບ pixels ລວງ.

sar ອັດຕາສ່ວນຕົວຢ່າງຂອງກອບວັດສະດຸປ້ອນ, ສະແດງອອກໃນຮູບແບບ num/ໄດ້.

s ຂະຫນາດຂອງກອບການປ້ອນຂໍ້ມູນ. ສໍາລັບ syntax ຂອງທາງເລືອກນີ້, ໃຫ້ກວດເບິ່ງ "ວິດີໂອ ຂະໜາດ"
ສ່ວນ in ໄດ້ ffmpeg-utils ຄູ່ມື.

i ປະເພດຂອງຮູບແບບ interlaced ("P" ສໍາລັບ "ກ້າວຫນ້າ", "T" ສໍາລັບພາກສະຫນາມເທິງທໍາອິດ, "B" ສໍາລັບ
ພາກສະຫນາມລຸ່ມທໍາອິດ).

iskey
ນີ້ແມ່ນ 1 ຖ້າກອບເປັນກອບທີ່ສໍາຄັນ, 0 ຖ້າບໍ່ດັ່ງນັ້ນ.

ປະເພດ
ປະເພດຮູບຂອງກອບການປ້ອນຂໍ້ມູນ ("I" ສໍາລັບກອບ I, "P" ສໍາລັບກອບ P, "B" ສໍາລັບ a
B-frame, ຫຼື "?" ສໍາລັບປະເພດທີ່ບໍ່ຮູ້ຈັກ). ອ້າງເຖິງເອກະສານຂອງ ກ
"AVPictureType" enum ແລະຂອງຟັງຊັນ "av_get_picture_type_char" ທີ່ກໍານົດໄວ້ໃນ
libavutil/avutil.h.

Checkum
ການກວດສອບ Adler-32 (ພິມເປັນເລກຖານສິບຫົກ) ຂອງຍົນທັງໝົດຂອງກອບການປ້ອນຂໍ້ມູນ.

plane_checksum
ການກວດສອບ Adler-32 (ພິມອອກເປັນເລກຖານສິບຫົກ) ຂອງແຕ່ລະຍົນຂອງກອບການປ້ອນຂໍ້ມູນ,
ສະແດງອອກໃນຮູບແບບ "[c0 c1 c2 c3]".

showpalette
ສະແດງ 256 ສີ palette ຂອງແຕ່ລະກອບ. ຕົວກອງນີ້ແມ່ນກ່ຽວຂ້ອງພຽງແຕ່ສໍາລັບ ເພື່ອນ 8 pixel
ກອບຮູບແບບ.

ມັນຍອມຮັບທາງເລືອກຕໍ່ໄປນີ້:

s ກໍານົດຂະຫນາດຂອງກ່ອງທີ່ໃຊ້ເພື່ອສະແດງການປ້ອນສີ palette ຫນຶ່ງ. ຄ່າເລີ່ມຕົ້ນແມ່ນ 30 (ສຳລັບ
ກ່ອງ "30x30" pixel).

ຍົນສະຫຼັບ
ຈັດລຳດັບໃໝ່ ແລະ/ຫຼື ສຳເນົາຍົນວິດີໂອ.

ມັນຍອມຮັບຕົວກໍານົດການດັ່ງຕໍ່ໄປນີ້:

map0
ດັດຊະນີຂອງຍົນປ້ອນຂໍ້ມູນທີ່ຈະໃຊ້ເປັນຍົນຜົນຜະລິດທໍາອິດ.

map1
ດັດຊະນີຂອງຍົນປ້ອນຂໍ້ມູນທີ່ຈະໃຊ້ເປັນຍົນຜົນຜະລິດທີສອງ.

map2
ດັດຊະນີຂອງຍົນປ້ອນຂໍ້ມູນທີ່ຈະໃຊ້ເປັນຍົນຜົນຜະລິດທີສາມ.

map3
ດັດຊະນີຂອງຍົນປ້ອນຂໍ້ມູນທີ່ຈະໃຊ້ເປັນຍົນຜົນຜະລິດທີ່ສີ່.

ຍົນທໍາອິດມີດັດຊະນີ 0. ຄ່າເລີ່ມຕົ້ນແມ່ນເພື່ອຮັກສາການປ້ອນຂໍ້ມູນບໍ່ປ່ຽນແປງ.

ສະຫຼັບຍົນທີສອງ ແລະທີສາມຂອງການປ້ອນຂໍ້ມູນ:

ffmpeg -i INPUT -vf shuffleplanes=0:2:1:3 ອອກ

ສະຖິຕິສັນຍານ
ການ​ປະ​ເມີນ​ຜົນ​ການ​ວັດ​ສະ​ພາບ​ຕ່າງໆ​ທີ່​ຊ່ວຍ​ໃນ​ການ​ກໍາ​ນົດ​ບັນ​ຫາ​ທີ່​ກ່ຽວ​ຂ້ອງ​ກັບ​
ດິຈິຕອລຂອງສື່ວິດີໂອອະນາລັອກ.

ໂດຍຄ່າເລີ່ມຕົ້ນຕົວກອງຈະບັນທຶກຄ່າ metadata ເຫຼົ່ານີ້:

YMIN
ສະແດງຄ່າ Y ໜ້ອຍສຸດທີ່ມີຢູ່ໃນກອບການປ້ອນຂໍ້ມູນ. ສະແດງອອກໃນຂອບເຂດຂອງ
[0-255].

ສີເຫຼືອງ
ສະແດງຄ່າ Y ຢູ່ທີ່ເປີເຊັນ 10% ພາຍໃນກອບການປ້ອນຂໍ້ມູນ. ສະແດງອອກໃນຂອບເຂດ
ຂອງ [0-255].

YAVG
ສະແດງຄ່າ Y ສະເລ່ຍພາຍໃນກອບການປ້ອນຂໍ້ມູນ. ສະແດງຢູ່ໃນຂອບເຂດຂອງ [0-255].

ສູງ
ສະແດງຄ່າ Y ຢູ່ທີ່ເປີເຊັນ 90% ພາຍໃນກອບການປ້ອນຂໍ້ມູນ. ສະແດງອອກໃນຂອບເຂດ
ຂອງ [0-255].

YMAX
ສະແດງຄ່າ Y ສູງສຸດທີ່ມີຢູ່ໃນກອບການປ້ອນຂໍ້ມູນ. ສະແດງອອກໃນຂອບເຂດຂອງ
[0-255].

UMIN
ສະແດງຄ່າ U ໜ້ອຍສຸດທີ່ມີຢູ່ໃນກອບການປ້ອນຂໍ້ມູນ. ສະແດງອອກໃນຂອບເຂດຂອງ
[0-255].

ULOW
ສະແດງຄ່າ U ຢູ່ທີ່ເປີເຊັນ 10% ພາຍໃນກອບການປ້ອນຂໍ້ມູນ. ສະແດງອອກໃນຂອບເຂດ
ຂອງ [0-255].

UAVG
ສະແດງຄ່າ U ສະເລ່ຍພາຍໃນກອບການປ້ອນຂໍ້ມູນ. ສະແດງຢູ່ໃນຂອບເຂດຂອງ [0-255].

ສູງ
ສະແດງຄ່າ U ຢູ່ທີ່ເປີເຊັນ 90% ພາຍໃນກອບການປ້ອນຂໍ້ມູນ. ສະແດງອອກໃນຂອບເຂດ
ຂອງ [0-255].

UMAX
ສະແດງຄ່າ U ສູງສຸດທີ່ມີຢູ່ໃນກອບການປ້ອນຂໍ້ມູນ. ສະແດງອອກໃນຂອບເຂດຂອງ
[0-255].

VMIN
ສະແດງຄ່າ V ໜ້ອຍສຸດທີ່ມີຢູ່ໃນກອບການປ້ອນຂໍ້ມູນ. ສະແດງອອກໃນຂອບເຂດຂອງ
[0-255].

VLOW
ສະແດງຄ່າ V ຢູ່ທີ່ເປີເຊັນ 10% ພາຍໃນກອບການປ້ອນຂໍ້ມູນ. ສະແດງອອກໃນຂອບເຂດ
ຂອງ [0-255].

VAVG
ສະແດງຄ່າສະເລ່ຍ V ພາຍໃນກອບການປ້ອນຂໍ້ມູນ. ສະແດງຢູ່ໃນຂອບເຂດຂອງ [0-255].

VHIGH
ສະແດງຄ່າ V ຢູ່ທີ່ເປີເຊັນ 90% ພາຍໃນກອບການປ້ອນຂໍ້ມູນ. ສະແດງອອກໃນຂອບເຂດ
ຂອງ [0-255].

VMAX
ສະແດງຄ່າ V ສູງສຸດທີ່ມີຢູ່ໃນກອບການປ້ອນຂໍ້ມູນ. ສະແດງອອກໃນຂອບເຂດຂອງ
[0-255].

SATMIN
ສະແດງຄ່າຄວາມອີ່ມຕົວໜ້ອຍສຸດທີ່ມີຢູ່ໃນກອບການປ້ອນຂໍ້ມູນ. ສະແດງອອກໃນ
ໄລຍະ [0-~181.02].

SATTOW
ສະແດງຄ່າຄວາມອີ່ມຕົວຢູ່ທີ່ເປີເຊັນ 10% ພາຍໃນກອບການປ້ອນຂໍ້ມູນ. ສະແດງອອກ
ໃນລະຫວ່າງ [0-~181.02].

SATAVG
ສະແດງຄ່າຄວາມອີ່ມຕົວສະເລ່ຍພາຍໃນກອບການປ້ອນຂໍ້ມູນ. ສະແດງອອກໃນຂອບເຂດຂອງ
[0-~181.02].

SATHIGH
ສະແດງຄ່າຄວາມອີ່ມຕົວຢູ່ທີ່ເປີເຊັນ 90% ພາຍໃນກອບການປ້ອນຂໍ້ມູນ. ສະແດງອອກ
ໃນລະຫວ່າງ [0-~181.02].

SATMAX
ສະແດງຄ່າຄວາມອີ່ມຕົວສູງສຸດທີ່ມີຢູ່ໃນກອບການປ້ອນຂໍ້ມູນ. ສະແດງອອກໃນ
ໄລຍະ [0-~181.02].

ຕົກໃຈ
ສະແດງຄ່າປານກາງສຳລັບສີສີພາຍໃນກອບການປ້ອນຂໍ້ມູນ. ສະແດງອອກໃນຂອບເຂດຂອງ
[0-360].

HUEAVG
ສະແດງຄ່າສະເລ່ຍຂອງສີພາຍໃນກອບການປ້ອນຂໍ້ມູນ. ສະແດງອອກໃນຂອບເຂດຂອງ
[0-360].

YDIF
ສະແດງຄ່າສະເລ່ຍຂອງຄ່າຕົວຢ່າງຄວາມແຕກຕ່າງລະຫວ່າງຄ່າທັງໝົດຂອງຍົນ Y ໃນ
ກອບປັດຈຸບັນ ແລະຄ່າທີ່ສອດຄ້ອງກັນຂອງກອບການປ້ອນຂໍ້ມູນຜ່ານມາ. ສະແດງອອກໃນ
ລະດັບຂອງ [0-255].

UDIF
ສະແດງຄ່າສະເລ່ຍຂອງຄ່າຕົວຢ່າງຄວາມແຕກຕ່າງລະຫວ່າງຄ່າທັງໝົດຂອງຍົນ U ໃນ
ກອບປັດຈຸບັນ ແລະຄ່າທີ່ສອດຄ້ອງກັນຂອງກອບການປ້ອນຂໍ້ມູນຜ່ານມາ. ສະແດງອອກໃນ
ລະດັບຂອງ [0-255].

VDIF
ສະແດງຄ່າສະເລ່ຍຂອງຄ່າຕົວຢ່າງຄວາມແຕກຕ່າງລະຫວ່າງຄ່າທັງໝົດຂອງຍົນ V ໃນ
ກອບປັດຈຸບັນ ແລະຄ່າທີ່ສອດຄ້ອງກັນຂອງກອບການປ້ອນຂໍ້ມູນຜ່ານມາ. ສະແດງອອກໃນ
ລະດັບຂອງ [0-255].

ຕົວກອງຍອມຮັບຕົວເລືອກຕໍ່ໄປນີ້:

ລັດ
ອອກ ລັດ ລະບຸຮູບແບບການວິເຄາະຮູບພາບເພີ່ມເຕີມ. ອອກ ຜົນຜະລິດວິດີໂອທີ່ມີ
ປະເພດຂອງ pixels ລວງທີ່ລະບຸໄວ້.

ທັງສອງທາງເລືອກຍອມຮັບຄ່າດັ່ງຕໍ່ໄປນີ້:

ທັງຫມົດ
ກໍານົດ ໂລກ ເກີນຄາດ ພິກເຊລ. ກ ໂລກ ນອກ ເປັນ pixels ບໍ່ເຫມືອນກັບ
pixels ໃກ້ຄຽງຂອງຊ່ອງດຽວກັນ. ຕົວຢ່າງຂອງ outliers ຊົ່ວຄາວປະກອບມີ
ຜົນ​ຂອງ​ການ​ອອກ​ວິ​ດີ​ໂອ​, ຫົວ clogs​, ຫຼື​ບັນ​ຫາ​ການ​ຕິດ​ຕາມ tape​.

vrep
ກໍານົດ ຕັ້ງ ອອນໄລນ໌ ການຄ້າງຫ້ອງ. ການຊໍ້າຊ້ອນເສັ້ນແນວຕັ້ງລວມມີແຖວທີ່ຄ້າຍຄືກັນ
ຂອງ pixels ພາຍໃນກອບ. ໃນ​ການ​ເກີດ​-ດິ​ຈິ​ຕອນ​ການ​ຊ​້​ໍາ​ເສັ້ນ​ຕັ້ງ​ວິ​ດີ​ໂອ​ແມ່ນ​
ທົ່ວໄປ, ແຕ່ຮູບແບບນີ້ແມ່ນບໍ່ທໍາມະດາໃນວິດີໂອດິຈິຕອນຈາກແຫຼ່ງການປຽບທຽບ.
ໃນເວລາທີ່ມັນເກີດຂຶ້ນໃນວິດີໂອທີ່ເປັນຜົນມາຈາກການດິຈິຕອນຂອງແຫຼ່ງການປຽບທຽບມັນ
ສາມາດຊີ້ບອກເຖິງການປິດບັງຈາກຜູ້ຊົດເຊີຍການອອກຈາກໂຮງຮຽນ.

brng
ກໍານົດ pixels ທີ່ຢູ່ນອກຂອບເຂດການອອກອາກາດທາງກົດຫມາຍ.

ສີ, c
ກໍາ​ນົດ​ສີ​ຈຸດ​ເດັ່ນ​ສໍາ​ລັບ​ການ​ ອອກ ທາງເລືອກ. ສີເລີ່ມຕົ້ນແມ່ນສີເຫຼືອງ.

ຕົວຢ່າງ

· ຂໍ້​ມູນ​ຜົນ​ຜະ​ລິດ​ຂອງ​ການ​ວັດ​ແທກ​ວິ​ດີ​ໂອ​ຕ່າງໆ​:

ffprobe -f lavfi movie=example.mov,signalstats="stat=tout+vrep+brng" -show_frames

· ສົ່ງຂໍ້ມູນສະເພາະກ່ຽວກັບຄ່າຕໍ່າສຸດ ແລະສູງສຸດຂອງຍົນ Y ຕໍ່ກອບ:

ffprobe -f lavfi movie=example.mov,signalstats -show_entries frame_tags=lavfi.signalstats.YMAX,lavfi.signalstats.YMIN

· ຫຼິ້ນວິດີໂອໃນຂະນະທີ່ເນັ້ນ pixels ທີ່ຢູ່ນອກຂອບເຂດການອອກອາກາດເປັນສີແດງ.

ffplay example.mov -vf signalstats="out=brng:color=red"

· ການຫຼິ້ນວິດີໂອດ້ວຍສັນຍານ metadata ທີ່ແຕ້ມຢູ່ເທິງກອບ.

ffplay example.mov -vf signalstats=stat=brng+vrep+tout,drawtext=fontfile=FreeSerif.ttf:textfile=signalstat_drawtext.txt

ເນື້ອໃນຂອງ signalstat_drawtext.txt ທີ່ໃຊ້ໃນຄໍາສັ່ງແມ່ນ:

ເວລາ %{pts:hms}
Y (%{metadata:lavfi.signalstats.YMIN}-%{metadata:lavfi.signalstats.YMAX})
U (%{metadata:lavfi.signalstats.UMIN}-%{metadata:lavfi.signalstats.UMAX})
V (%{metadata:lavfi.signalstats.VMIN}-%{metadata:lavfi.signalstats.VMAX})
ຄວາມອີ່ມຕົວສູງສຸດ: %{metadata:lavfi.signalstats.SATMAX}

smartblur
ມົວວິດີໂອການປ້ອນຂໍ້ມູນໂດຍບໍ່ກະທົບກັບໂຄງຮ່າງ.

ມັນຍອມຮັບທາງເລືອກຕໍ່ໄປນີ້:

luma_radius, lr
ຕັ້ງລັດສະໝີ luma. ຄ່າທາງເລືອກຕ້ອງເປັນຕົວເລກທີ່ລອຍຢູ່ໃນຂອບເຂດ [0.1,5.0]
ທີ່ລະບຸຄວາມແຕກຕ່າງຂອງຕົວກອງ gaussian ທີ່ໃຊ້ເພື່ອມົວຮູບພາບ (ຊ້າກວ່າຖ້າ
ໃຫຍ່ກວ່າ). ຄ່າເລີ່ມຕົ້ນແມ່ນ 1.0.

luma_strength, ls
ກໍານົດຄວາມເຂັ້ມແຂງ luma. ຄ່າທາງເລືອກຕ້ອງເປັນຕົວເລກທີ່ລອຍຢູ່ໃນຊ່ວງ [-1.0,1.0]
ທີ່ກຳນົດຄ່າການມົວ. ຄ່າລວມຢູ່ໃນ [0.0,1.0] ຈະມົວຮູບພາບ
ໃນຂະນະທີ່ຄ່າລວມຢູ່ໃນ [-1.0,0.0] ຈະເຮັດໃຫ້ຮູບພາບມີຄວາມຄົມຊັດຂຶ້ນ. ຄ່າເລີ່ມຕົ້ນແມ່ນ 1.0.

luma_threshold, lt
ກໍານົດຂອບເຂດ luma ທີ່ໃຊ້ເປັນຄ່າສໍາປະສິດເພື່ອກໍານົດວ່າ pixel ຄວນເປັນ
ມົວຫຼືບໍ່. ຄ່າທາງເລືອກຈະຕ້ອງເປັນຈຳນວນເຕັມໃນຂອບເຂດ [-30,30]. ມູນຄ່າຂອງ
0 ຈະກັ່ນຕອງຮູບພາບທັງໝົດ, ຄ່າລວມຢູ່ໃນ [0,30] ຈະກັ່ນຕອງພື້ນທີ່ຮາບພຽງ ແລະ a
ຄ່າລວມຢູ່ໃນ [-30,0] ຈະກັ່ນຕອງຂອບ. ຄ່າເລີ່ມຕົ້ນແມ່ນ 0.

chroma_radius, cr
ຕັ້ງລັດສະໝີ chroma. ຄ່າທາງເລືອກຕ້ອງເປັນຕົວເລກທີ່ລອຍຢູ່ໃນຂອບເຂດ [0.1,5.0]
ທີ່ລະບຸຄວາມແຕກຕ່າງຂອງຕົວກອງ gaussian ທີ່ໃຊ້ເພື່ອມົວຮູບພາບ (ຊ້າກວ່າຖ້າ
ໃຫຍ່ກວ່າ). ຄ່າເລີ່ມຕົ້ນແມ່ນ 1.0.

chroma_strength, cs
ກໍານົດຄວາມເຂັ້ມແຂງ chroma. ຄ່າທາງເລືອກຕ້ອງເປັນຕົວເລກທີ່ລອຍຢູ່ໃນຂອບເຂດ
[-1.0,1.0] ທີ່ກຳນົດຄ່າການມົວ. ຄ່າລວມຢູ່ໃນ [0.0,1.0] ຈະມົວ
ຮູບພາບໃນຂະນະທີ່ຄ່າລວມຢູ່ໃນ [-1.0,0.0] ຈະເຮັດໃຫ້ຮູບພາບແຫຼມ. ຄ່າເລີ່ມຕົ້ນແມ່ນ
1.0​.

chroma_threshold, ct
ກໍານົດຂອບເຂດ chroma ທີ່ໃຊ້ເປັນຄ່າສໍາປະສິດເພື່ອກໍານົດວ່າ pixel ຄວນເປັນ
ມົວຫຼືບໍ່. ຄ່າທາງເລືອກຈະຕ້ອງເປັນຈຳນວນເຕັມໃນຂອບເຂດ [-30,30]. ມູນຄ່າຂອງ
0 ຈະກັ່ນຕອງຮູບພາບທັງໝົດ, ຄ່າລວມຢູ່ໃນ [0,30] ຈະກັ່ນຕອງພື້ນທີ່ຮາບພຽງ ແລະ a
ຄ່າລວມຢູ່ໃນ [-30,0] ຈະກັ່ນຕອງຂອບ. ຄ່າເລີ່ມຕົ້ນແມ່ນ 0.

ຖ້າຕົວເລືອກ chroma ບໍ່ໄດ້ຖືກຕັ້ງຢ່າງຊັດເຈນ, ຄ່າ luma ທີ່ສອດຄ້ອງກັນຖືກຕັ້ງ.

ຊິມ
ໄດ້ຮັບ SSIM (Structural SImilarity Metric) ລະຫວ່າງສອງວິດີໂອທີ່ປ້ອນເຂົ້າ.

ການກັ່ນຕອງນີ້ໃຊ້ເວລາໃນການປ້ອນຂໍ້ມູນສອງວິດີໂອ, ການປ້ອນຂໍ້ມູນທໍາອິດຖືວ່າເປັນ "ຕົ້ນຕໍ"
ແຫຼ່ງແລະຖືກສົ່ງຕໍ່ບໍ່ປ່ຽນແປງກັບຜົນຜະລິດ. ການປ້ອນຂໍ້ມູນທີສອງຖືກໃຊ້ເປັນ "ການອ້າງອີງ"
ວິດີໂອສໍາລັບການຄິດໄລ່ SSIM.

ທັງສອງວັດສະດຸປ້ອນວິດີໂອຕ້ອງມີຄວາມລະອຽດ ແລະຮູບແບບ pixels ດຽວກັນເພື່ອໃຫ້ການກັ່ນຕອງນີ້ເຮັດວຽກ
ຢ່າງຖືກຕ້ອງ. ນອກຈາກນີ້ມັນສົມມຸດວ່າທັງສອງວັດສະດຸປ້ອນມີຈໍານວນເຟຣມດຽວກັນ, ເຊິ່ງແມ່ນ
ປຽບທຽບຫນຶ່ງໂດຍຫນຶ່ງ.

ການກັ່ນຕອງເກັບຮັກສາ SSIM ທີ່ຄິດໄລ່ຂອງແຕ່ລະກອບ.

ລາຍລະອຽດຂອງຕົວກໍານົດການທີ່ຍອມຮັບດັ່ງຕໍ່ໄປນີ້.

stats_file, f
ຖ້າລະບຸຕົວກອງຈະໃຊ້ໄຟລ໌ທີ່ມີຊື່ເພື່ອບັນທຶກ SSIM ຂອງແຕ່ລະຄົນ
ກອບ.

ໄຟລ໌ທີ່ພິມອອກຖ້າ stats_file ຖືກເລືອກ, ມີລໍາດັບຂອງຄູ່ຄີ / ຄ່າຂອງ
ຮູບແບບ ທີ່ສໍາຄັນ:ມູນຄ່າ ສໍາລັບແຕ່ລະຄູ່ສົມທຽບຂອງກອບ.

ລາຍລະອຽດຂອງແຕ່ລະພາລາມິເຕີທີ່ສະແດງດັ່ງຕໍ່ໄປນີ້:

n ເລກລໍາດັບຂອງກອບການປ້ອນຂໍ້ມູນ, ເລີ່ມຈາກ 1

Y, U, V, R, G, B
SSIM ຂອງກອບທີ່ປຽບທຽບສໍາລັບອົງປະກອບທີ່ລະບຸໄວ້ໂດຍຄໍາຕໍ່ທ້າຍ.

ທັງຫມົດ SSIM ຂອງເຟຣມປຽບທຽບສໍາລັບກອບທັງຫມົດ.

dB ຄືກັນກັບຂ້າງເທິງແຕ່ໃນການສະແດງ dB.

ຍົກ​ຕົວ​ຢ່າງ:

movie=ref_movie.mpg, setpts=PTS-STARTPTS [ຫຼັກ];
[main][ref] ssim="stats_file=stats.log" [ອອກ]

ໃນຕົວຢ່າງນີ້, ໄຟລ໌ປ້ອນຂໍ້ມູນທີ່ຖືກປະມວນຜົນຖືກປຽບທຽບກັບເອກະສານອ້າງອີງ
ref_movie.mpg. SSIM ຂອງແຕ່ລະເຟຣມແຕ່ລະຄົນຖືກເກັບໄວ້ໃນ stats.log.

ຕົວຢ່າງອື່ນທີ່ມີທັງ psnr ແລະ ssim ໃນເວລາດຽວກັນ:

ffmpeg -i main.mpg -i ref.mpg -lavfi "ssim;[0:v][1:v]psnr" -f null -

stereo3d
ແປງລະຫວ່າງຮູບແບບຮູບພາບ stereoscopic ທີ່ແຕກຕ່າງກັນ.

ຕົວກອງຍອມຮັບຕົວເລືອກຕໍ່ໄປນີ້:

in ກໍານົດຮູບແບບຮູບພາບ stereoscopic ຂອງການປ້ອນຂໍ້ມູນ.

ຄ່າທີ່ມີໃຫ້ສໍາລັບຮູບແບບຮູບພາບການປ້ອນຂໍ້ມູນແມ່ນ:

sbsl
ຂ້າງ​ຂະ​ຫນານ (ຕາ​ຊ້າຍ​ຊ້າຍ​, ຕາ​ຂວາ​ຂວາ​)

sbsr
ຕາຊ້າຍ (ຕາຊ້າຍ, ຕາຊ້າຍ)

sbs2l
ຂະຫນານຂ້າງດ້ວຍຄວາມລະອຽດເຄິ່ງກວ້າງ (ຕາຊ້າຍຊ້າຍ, ຕາຂວາຂວາ)

sbs2r
ຕາດ້ານຂ້າງມີຄວາມລະອຽດເຄິ່ງກວ້າງ (ຕາຂວາຊ້າຍ, ຕາຊ້າຍຂວາ)

ເອື້ອຍໃຫຍ່ ຂ້າງ​ເທິງ​ລຸ່ມ​ນີ້ (ຕາ​ຊ້າຍ​ຂ້າງ​ເທິງ​, ຕາ​ຂວາ​ຂ້າງ​ລຸ່ມ​ນີ້​)

ເມສາ ຂ້າງ​ເທິງ​ລຸ່ມ​ນີ້ (ຕາ​ຂວາ​ຂ້າງ​ເທິງ​, ຕາ​ຊ້າຍ​ຂ້າງ​ລຸ່ມ​ນີ້​)

ab2l
ດ້ານ​ເທິງ​ລຸ່ມ​ທີ່​ມີ​ຄວາມ​ລະ​ອຽດ​ຄວາມ​ສູງ​ເຄິ່ງ​ຫນຶ່ງ (ຕາ​ຊ້າຍ​ຂ້າງ​ເທິງ​, ຕາ​ຂວາ​ຂ້າງ​ລຸ່ມ​ນີ້​)

ab2r
ດ້ານ​ເທິງ​ລຸ່ມ​ນີ້​ມີ​ຄວາມ​ລະ​ອຽດ​ຄວາມ​ສູງ​ເຄິ່ງ​ຫນຶ່ງ (ຕາ​ຂວາ​ຂ້າງ​ເທິງ​, ຕາ​ຊ້າຍ​ຂ້າງ​ລຸ່ມ​ນີ້​)

al ຂອບສະຫຼັບ (ຕາຊ້າຍທໍາອິດ, ຕາຂວາທີສອງ)

ar ຂອບສະຫຼັບ (ຕາຂວາທໍາອິດ, ຕາຊ້າຍທີສອງ)

ຄ່າເລີ່ມຕົ້ນແມ່ນ sbsl.

ອອກ ກໍານົດຮູບແບບຮູບພາບ stereoscopic ຂອງຜົນຜະລິດ.

ຄ່າທີ່ມີຢູ່ສໍາລັບຮູບແບບຮູບພາບຜົນຜະລິດແມ່ນຮູບແບບການປ້ອນຂໍ້ມູນທັງຫມົດເຊັ່ນດຽວກັນກັບ:

arbg
anaglyph ສີແດງ / ສີຟ້າສີຂີ້ເຖົ່າ (ການກັ່ນຕອງສີແດງໃນຕາຊ້າຍ, ການກັ່ນຕອງສີຟ້າໃນຕາຂວາ)

argg
anaglyph ສີແດງ / ສີຂຽວສີຂີ້ເຖົ່າ (ການກັ່ນຕອງສີແດງໃນຕາຊ້າຍ, ການກັ່ນຕອງສີຂຽວໃນຕາຂວາ)

arcg
anaglyph ສີແດງ / ສີຂີ້ເຖົ່າສີຟ້າສີຟ້າ (ການກັ່ນຕອງສີແດງໃນຕາຊ້າຍ, ການກັ່ນຕອງ cyan ໃນຕາຂວາ)

ໂຄ້ງ
anaglyph ສີແດງ / ສີຟ້າສີຟ້າເຄິ່ງ (ການກັ່ນຕອງສີແດງໃນຕາຊ້າຍ, ການກັ່ນຕອງສີຟ້າສີຟ້າຢູ່ຕາຂວາ)

acc
ສີ anaglyph ສີແດງ / cyan (ການກັ່ນຕອງສີແດງໃນຕາຊ້າຍ, ການກັ່ນຕອງ cyan ໃນຕາຂວາ)

ໂຄ້ງ
anaglyph red/cyan color optimized with least squares projection of dubois (ສີແດງ
ກັ່ນ​ຕອງ​ຕາ​ຊ້າຍ​, ການ​ກັ່ນ​ຕອງ cyan ຕາ​ຂວາ​)

agmg
anaglyph ສີຂຽວ / magenta ສີຂີ້ເຖົ່າ (ການກັ່ນຕອງສີຂຽວໃນຕາຊ້າຍ, ການກັ່ນຕອງສີມ່ວງແດງຢູ່ເບື້ອງຂວາ
ຕາ)

ອາກມ
anaglyph ສີຂຽວ / magenta ເຄິ່ງສີ (ການກັ່ນຕອງສີຂຽວໃນຕາຊ້າຍ, ການກັ່ນຕອງສີມ່ວງແດງ
ຕາ​ຂວາ​)

agmc
anaglyph ສີຂຽວ / magenta ສີ (ການກັ່ນຕອງສີຂຽວໃນຕາຊ້າຍ, ການກັ່ນຕອງສີມ່ວງແດງຢູ່ຂວາ
ຕາ)

agmd
ສີ anaglyph ສີຂຽວ / magenta ປັບປຸງດ້ວຍການຄາດຄະເນສີ່ຫລ່ຽມນ້ອຍທີ່ສຸດຂອງ dubois
(ກອງ​ສີ​ຂຽວ​ຢູ່​ຕາ​ຊ້າຍ​, ກັ່ນ​ຕອງ​ສີ​ມ່ວງ​ສຸດ​ຕາ​ຂວາ​)

aybg
anaglyph ສີເຫຼືອງ / ສີຟ້າສີຂີ້ເຖົ່າ (ການກັ່ນຕອງສີເຫຼືອງໃນຕາຊ້າຍ, ການກັ່ນຕອງສີຟ້າໃນຕາຂວາ)

aybh
anaglyph ສີເຫຼືອງ / ສີຟ້າເຄິ່ງ (ການກັ່ນຕອງສີເຫຼືອງໃນຕາຊ້າຍ, ການກັ່ນຕອງສີຟ້າຢູ່ເບື້ອງຂວາ
ຕາ)

aybc
anaglyph ສີເຫຼືອງ / ສີຟ້າ (ການກັ່ນຕອງສີເຫຼືອງໃນຕາຊ້າຍ, ການກັ່ນຕອງສີຟ້າໃນຕາຂວາ)

aybd
ສີ anaglyph ສີເຫຼືອງ / ສີຟ້າ optimized ດ້ວຍການຄາດຄະເນສີ່ຫລ່ຽມນ້ອຍທີ່ສຸດຂອງ dubois
(ຕົວ​ກັ່ນ​ຕອງ​ສີ​ເຫຼືອງ​ໃນ​ຕາ​ຊ້າຍ​, ການ​ກັ່ນ​ຕອງ​ສີ​ຟ້າ​ໃນ​ຕາ​ຂວາ​)

IRL ແຖວ interleaved (ຕາຊ້າຍມີແຖວເທິງ, ຕາຂວາເລີ່ມຕົ້ນໃນແຖວຕໍ່ໄປ)

irr ແຖວ interleaved (ຕາຂວາມີແຖວເທິງ, ຕາຊ້າຍເລີ່ມຕົ້ນໃນແຖວຕໍ່ໄປ)

ml mono output (ຕາຊ້າຍເທົ່ານັ້ນ)

mr mono output (ຕາຂວາເທົ່ານັ້ນ)

ຄ່າເລີ່ມຕົ້ນແມ່ນ ໂຄ້ງ.

ຕົວຢ່າງ

· ແປງ​ວິ​ດີ​ໂອ​ການ​ປ້ອນ​ຂໍ້​ມູນ​ຈາກ​ຂ້າງ​ຂະ​ຫນານ​ກັນ​ກັບ anaglyph ສີ​ເຫຼືອງ / ສີ​ຟ້າ dubois​:

stereo3d=sbsl:aybd

· ແປງ​ວິ​ດີ​ໂອ​ການ​ປ້ອນ​ຂໍ້​ມູນ​ຈາກ​ຂ້າງ​ລຸ່ມ​ນີ້ (ຕາ​ຊ້າຍ​ຂ້າງ​ເທິງ​, ຕາ​ຂວາ​ຂ້າງ​ລຸ່ມ​ນີ້​) ໄປ​ຂ້າງ​ຄຽງ​
ສາຍຕາ.

stereo3d=abl:sbsr

sp
ນຳໃຊ້ຕົວກອງຫຼັງການປະມວນຜົນແບບງ່າຍໆທີ່ບີບອັດ ແລະ ຫຍໍ້ພາບໃນຫຼາຍໆອັນ
(ຫຼື - ໃນກໍລະນີຂອງ ຄຸນ​ນະ​ພາບ ລະດັບ 6 - ທັງຫມົດ) ປ່ຽນແລະສະເລ່ຍຜົນໄດ້ຮັບ.

ຕົວກອງຍອມຮັບຕົວເລືອກຕໍ່ໄປນີ້:

ຄຸນ​ນະ​ພາບ
ກໍານົດຄຸນນະພາບ. ຕົວເລືອກນີ້ກໍານົດຈໍານວນລະດັບສໍາລັບການສະເລ່ຍ. ມັນຍອມຮັບເປັນ
ຈຳນວນເຕັມໃນຂອບເຂດ 0-6. ຖ້າຕັ້ງເປັນ 0, ຕົວກອງຈະບໍ່ມີຜົນກະທົບ. ຄ່າຂອງ 6
ຫມາຍຄວາມວ່າຄຸນນະພາບທີ່ສູງຂຶ້ນ. ສໍາລັບການເພີ່ມຂຶ້ນແຕ່ລະມູນຄ່ານັ້ນຄວາມໄວຫຼຸດລົງໂດຍປັດໄຈຫນຶ່ງ
ຂອງປະມານ 2. ຄ່າເລີ່ມຕົ້ນແມ່ນ 3.

qp ບັງຄັບພາລາມິເຕີປະລິມານຄົງທີ່. ຖ້າບໍ່ໄດ້ຕັ້ງ, ຕົວກອງຈະໃຊ້ QP ຈາກ
ການຖ່າຍທອດວິດີໂອ (ຖ້າມີ).

ຮູບແບບການ
ຕັ້ງຄ່າໂໝດເກນ. ໂໝດທີ່ມີຢູ່ແມ່ນ:

ຍາກ
ກໍານົດຂອບເຂດຍາກ (ຄ່າເລີ່ມຕົ້ນ).

ອ່ອນໆ
ກໍານົດຂອບເຂດອ່ອນໆ (ຜົນການປິດສຽງດັງທີ່ດີຂຶ້ນ, ແຕ່ອາດຈະມົວກວ່າ).

ໃຊ້_bframe_qp
ເປີດໃຊ້ QP ຈາກ B-Frames ຖ້າຕັ້ງເປັນ 1. ການນໍາໃຊ້ທາງເລືອກນີ້ອາດຈະເຮັດໃຫ້ເກີດ
flicker ນັບຕັ້ງແຕ່ B-Frames ມັກຈະມີ QP ໃຫຍ່ກວ່າ. ຄ່າເລີ່ມຕົ້ນແມ່ນ 0 (ບໍ່ໄດ້ເປີດໃຊ້).

ຄໍາບັນຍາຍ
ແຕ້ມຄຳແປຢູ່ເທິງສຸດຂອງວິດີໂອທີ່ປ້ອນເຂົ້າໂດຍໃຊ້ຫ້ອງສະໝຸດ libass.

ເພື່ອເປີດໃຊ້ການລວບລວມຕົວກອງນີ້, ທ່ານຈໍາເປັນຕ້ອງປັບຄ່າ FFmpeg ດ້ວຍ "--enable-libass".
ການກັ່ນຕອງນີ້ຍັງຮຽກຮ້ອງໃຫ້ມີການກໍ່ສ້າງທີ່ມີ libavcodec ແລະ libavformat ເພື່ອແປງຜ່ານ
ໄຟລ໌ຄໍາບັນຍາຍເປັນ ASS (Advanced Substation Alpha) ຮູບແບບຄໍາບັນຍາຍ.

ຕົວກອງຍອມຮັບຕົວເລືອກຕໍ່ໄປນີ້:

ຊື່​ເອ​ກະ​ສານ, f
ຕັ້ງຊື່ໄຟລ໌ຂອງໄຟລ໌ຄໍາບັນຍາຍເພື່ອອ່ານ. ມັນຕ້ອງໄດ້ຮັບການລະບຸໄວ້.

ຂະໜາດຕົ້ນສະບັບ
ລະບຸຂະຫນາດຂອງວິດີໂອຕົ້ນສະບັບ, ວິດີໂອທີ່ໄຟລ໌ ASS ໄດ້ຖືກປະກອບ.
ສໍາລັບ syntax ຂອງທາງເລືອກນີ້, ໃຫ້ກວດເບິ່ງ "ວິດີໂອ ຂະໜາດ" ສ່ວນ in ໄດ້ ffmpeg-utils
ຄູ່ມື. ເນື່ອງຈາກການອອກແບບທີ່ບໍ່ຖືກຕ້ອງໃນ ASS aspect ratio arithmetic, ນີ້ແມ່ນຈໍາເປັນ
ປັບຂະໜາດຕົວອັກສອນໃຫ້ຖືກຕ້ອງຖ້າອັດຕາສ່ວນຮູບໄດ້ຖືກປ່ຽນແປງ.

fontsdir
ກໍານົດເສັ້ນທາງໄດເລກະທໍລີທີ່ມີຕົວອັກສອນທີ່ສາມາດຖືກນໍາໃຊ້ໂດຍການກັ່ນຕອງ. ຕົວອັກສອນເຫຼົ່ານີ້
ຈະຖືກໃຊ້ນອກເໜືອໄປຈາກອັນໃດກໍຕາມທີ່ຜູ້ໃຫ້ບໍລິການຟອນໃຊ້.

charenc
ກໍານົດການໃສ່ຄໍາບັນຍາຍການເຂົ້າລະຫັດຕົວອັກສອນ. ການກັ່ນຕອງ "ຄໍາບັນຍາຍ" ເທົ່ານັ້ນ. ພຽງແຕ່ເປັນປະໂຫຍດຖ້າຫາກວ່າບໍ່ມີ
UTF-8.

stream_index, si
ກໍານົດດັດຊະນີການຖ່າຍທອດຄໍາບັນຍາຍ. ການກັ່ນຕອງ "ຄໍາບັນຍາຍ" ເທົ່ານັ້ນ.

force_style
ລົບລ້າງຮູບແບບເລີ່ມຕົ້ນ ຫຼືຕົວກໍານົດຂໍ້ມູນ script ຂອງຄໍາບັນຍາຍ. ມັນຍອມຮັບສາຍ
ປະກອບມີຮູບແບບສະໄຕລ໌ ASS "KEY=VALUE" ຄູ່ທີ່ແຍກດ້ວຍ ",".

ຖ້າລະຫັດທໍາອິດບໍ່ໄດ້ລະບຸ, ມັນສົມມຸດວ່າຄ່າທໍາອິດລະບຸ
ຊື່​ເອ​ກະ​ສານ.

ຕົວຢ່າງ, ເພື່ອສະແດງໄຟລ໌ sub.srt ຢູ່ເທິງສຸດຂອງວິດີໂອປ້ອນຂໍ້ມູນ, ໃຊ້ຄໍາສັ່ງ:

subtitles=sub.srt

ເຊິ່ງເທົ່າກັບ:

subtitles=filename=sub.srt

ເພື່ອສະແດງການຖ່າຍທອດຄໍາບັນຍາຍເລີ່ມຕົ້ນຈາກໄຟລ໌ video.mkv, ໃຊ້:

subtitles=video.mkv

ເພື່ອສະແດງການຖ່າຍທອດຄຳແປທີສອງຈາກໄຟລ໌ນັ້ນ, ໃຫ້ໃຊ້:

subtitles=video.mkv:si=1

ເພື່ອເຮັດໃຫ້ຄໍາບັນຍາຍຈາກ sub.srt ປາກົດຢູ່ໃນສີຂຽວໂປ່ງໃສ "DejaVu Serif", ໃຊ້:

subtitles=sub.srt:force_style='FontName=DejaVu Serif,PrimaryColour=&HAA00FF00'

super2xsai
ປັບຂະໜາດການປ້ອນເຂົ້າ 2x ແລະລຽບໂດຍໃຊ້ Super2xSaI (Scale and Interpolate) pixel art
ຂັ້ນຕອນການປັບຂະໜາດ.

ເປັນປະໂຫຍດສໍາລັບການຂະຫຍາຍຮູບພາບສິລະປະ pixels ລວງໂດຍບໍ່ມີການຫຼຸດຜ່ອນຄວາມຄົມຊັດ.

swapuv
ສະຫຼັບຍົນ U & V.

telecine
ໃຊ້ຂະບວນການ telecine ກັບວິດີໂອ.

ຕົວກອງນີ້ຍອມຮັບຕົວເລືອກຕໍ່ໄປນີ້:

first_field
ເທິງ, t
ພາກສະຫນາມເທິງທໍາອິດ

ທາງລຸ່ມ, b
ພາກສະຫນາມລຸ່ມທໍາອິດ ຄ່າເລີ່ມຕົ້ນແມ່ນ "ເທິງ".

ຮູບແບບ
ສະຕຣິງຂອງຕົວເລກທີ່ເປັນຕົວແທນຂອງຮູບແບບການດຶງລົງທີ່ທ່ານຕ້ອງການນໍາໃຊ້. ຄ່າເລີ່ມຕົ້ນ
ຄ່າແມ່ນ 23.

ບາງ​ຮູບ​ແບບ​ປົກ​ກະ​ຕິ​:

ຜົນຜະລິດ NTSC (30i):
27.5 ປ: 32222
24p: 23 (ຄລາສສິກ)
24p: 2332 (ມັກ)
20 ປ: 33
18 ປ: 334
16 ປ: 3444

ຜົນຜະລິດ PAL (25i):
27.5 ປ: 12222
24p: 222222222223 ("ການດຶງເງິນເອີໂຣ")
16.67 ປ: 33
16 ປ: 33333334

thumbnail
ເລືອກກອບທີ່ເປັນຕົວແທນຫຼາຍທີ່ສຸດໃນລໍາດັບຂອງກອບຕິດຕໍ່ກັນ.

ຕົວກອງຍອມຮັບຕົວເລືອກຕໍ່ໄປນີ້:

n ກໍານົດຂະຫນາດ batch ຂອງກອບເພື່ອວິເຄາະ; ໃນຊຸດຂອງ n ກອບ, ການກັ່ນຕອງຈະເລືອກເອົາຫນຶ່ງ
ຂອງເຂົາເຈົ້າ, ແລະຫຼັງຈາກນັ້ນຈັດການ batch ຕໍ່ໄປຂອງ n ກອບຈົນກ່ວາໃນຕອນທ້າຍຂອງ. ຄ່າເລີ່ມຕົ້ນແມ່ນ 100.

ນັບຕັ້ງແຕ່ການກັ່ນຕອງຕິດຕາມລໍາດັບເຟຣມທັງຫມົດ, ຂະຫນາດໃຫຍ່ກວ່າ n ມູນຄ່າຈະສົ່ງຜົນໃຫ້
ການນໍາໃຊ້ຫນ່ວຍຄວາມຈໍາທີ່ສູງຂຶ້ນ, ດັ່ງນັ້ນມູນຄ່າສູງແມ່ນບໍ່ແນະນໍາ.

ຕົວຢ່າງ

·​ສະ​ກັດ​ຫນຶ່ງ​ຮູບ​ແຕ່​ລະ 50 ເຟຣມ​:

ຮູບຫຍໍ້=50

· ຕົວຢ່າງທີ່ສົມບູນຂອງການສ້າງຮູບຫຍໍ້ດ້ວຍ ffmpeg:

ffmpeg -i in.avi -vf thumbnail,scale=300:200 -frames:v 1 out.png

ກະເບື້ອງ
ກະເບື້ອງຫຼາຍກອບຕິດຕໍ່ກັນ.

ຕົວກອງຍອມຮັບຕົວເລືອກຕໍ່ໄປນີ້:

ຮູບແບບ
ກໍານົດຂະຫນາດຕາຂ່າຍໄຟຟ້າ (ເຊັ່ນຈໍານວນຂອງເສັ້ນແລະຖັນ). ສໍາລັບ syntax ຂອງເລື່ອງນີ້
ທາງເລືອກ, ກວດເບິ່ງ "ວິດີໂອ ຂະໜາດ" ສ່ວນ in ໄດ້ ffmpeg-utils ຄູ່ມື.

nb_frames
ກໍານົດຈໍານວນເຟຣມສູງສຸດທີ່ຈະສະແດງຢູ່ໃນພື້ນທີ່ທີ່ກໍານົດໄວ້. ມັນຕ້ອງມີຫນ້ອຍກວ່າຫຼື
ເທົ່າ​ທຽມ​ກັນ​ກັບ wxh. ຄ່າເລີ່ມຕົ້ນແມ່ນ 0, ຊຶ່ງຫມາຍຄວາມວ່າພື້ນທີ່ທັງຫມົດຈະຖືກນໍາໃຊ້.

ຂອບ
ຕັ້ງຂອບຂອບນອກເປັນ pixels.

padding
ກໍານົດຄວາມຫນາຂອງຂອບພາຍໃນ (ເຊັ່ນ: ຈໍານວນຂອງ pixels ລະຫວ່າງເຟຣມ). ສໍາລັບການເພີ່ມເຕີມ
ຕົວເລືອກ padding ຂັ້ນສູງ (ເຊັ່ນ: ມີມູນຄ່າທີ່ແຕກຕ່າງກັນສໍາລັບຂອບ), ອ້າງອີງໃສ່
pad ການກັ່ນຕອງວິດີໂອ.

ສີ
ລະບຸສີຂອງພື້ນທີ່ທີ່ບໍ່ໄດ້ໃຊ້. ສໍາລັບ syntax ຂອງຕົວເລືອກນີ້, ໃຫ້ກວດເບິ່ງ "ສີ".
ພາກສ່ວນໃນຄູ່ມື ffmpeg-utils. ຄ່າເລີ່ມຕົ້ນຂອງ ສີ ແມ່ນ "ສີດໍາ".

ຕົວຢ່າງ

·ຜະລິດກະເບື້ອງ PNG 8x8 ຂອງ keyframes ທັງຫມົດ (-skip_frame nokey) ໃນ​ຮູບ​ເງົາ​:

ffmpeg -skip_frame nokey -i file.avi -vf 'scale=128:72,tile=8x8' -an -vsync 0 keyframes%03d.png

ໄດ້ -vsync 0 ເປັນສິ່ງຈໍາເປັນເພື່ອປ້ອງກັນ ffmpeg ຈາກ duplicating ແຕ່ລະກອບຜົນຜະລິດກັບ
ຮອງຮັບອັດຕາເຟຣມທີ່ກວດພົບໃນເບື້ອງຕົ້ນ.

·​ສະ​ແດງ 5 ຮູບ​ພາບ​ໃນ​ພື້ນ​ທີ່​ຂອງ "3x2​" ເຟຣມ​, ມີ 7 pixels ລະ​ຫວ່າງ​ພວກ​ເຂົາ​, ແລະ 2
pixels ຂອງຂອບເບື້ອງຕົ້ນ, ໂດຍໃຊ້ຕົວເລືອກແປແບບປະສົມ ແລະຊື່:

tile=3x2:nb_frames=5:padding=7:margin=2

ຜ້າກັນເປື້ອນ
ປະຕິບັດປະເພດຕ່າງໆຂອງ interlacing ພາກສະຫນາມ temporal.

ເຟຣມແມ່ນນັບຈາກ 1, ດັ່ງນັ້ນກອບການປ້ອນຂໍ້ມູນທໍາອິດຖືກພິຈາລະນາເປັນຄີກ.

ຕົວກອງຍອມຮັບຕົວເລືອກຕໍ່ໄປນີ້:

ຮູບແບບການ
ລະບຸຮູບແບບຂອງ interlacing ໄດ້. ຕົວເລືອກນີ້ຍັງສາມາດລະບຸເປັນຄ່າໄດ້
ຄົນດຽວ. ເບິ່ງຂ້າງລຸ່ມນີ້ສໍາລັບບັນຊີລາຍຊື່ຂອງຄ່າສໍາລັບທາງເລືອກນີ້.

ຄ່າທີ່ມີຢູ່ແມ່ນ:

ຮວມ, 0
ຍ້າຍກອບຄີກເຂົ້າໄປໃນພາກສະຫນາມເທິງ, ເຖິງແມ່ນວ່າເຂົ້າໄປໃນພາກສະຫນາມຕ່ໍາ, ການສ້າງ a
ຂອບຄວາມສູງສອງເທົ່າໃນອັດຕາເຟຣມເຄິ່ງ.

------> ເວລາ
ການປ້ອນຂໍ້ມູນ:
ກອບ 1 ກອບ 2 ກອບ 3 ກອບ 4

11111 22222 33333 44444
11111 22222 33333 44444
11111 22222 33333 44444
11111 22222 33333 44444

ຜົນໄດ້ຮັບ:
11111 33333
22222 44444
11111 33333
22222 44444
11111 33333
22222 44444
11111 33333
22222 44444

drop_odd, 1
ຜົນຜະລິດພຽງແຕ່ເຟຣມ, ກອບຄີກຖືກຫຼຸດລົງ, ການສ້າງກອບທີ່ບໍ່ປ່ຽນແປງ
ຄວາມສູງຢູ່ໃນອັດຕາເຟຣມເຄິ່ງ.

------> ເວລາ
ການປ້ອນຂໍ້ມູນ:
ກອບ 1 ກອບ 2 ກອບ 3 ກອບ 4

11111 22222 33333 44444
11111 22222 33333 44444
11111 22222 33333 44444
11111 22222 33333 44444

ຜົນໄດ້ຮັບ:
22222 44444
22222 44444
22222 44444
22222 44444

drop_even, 2
ຜົນຜະລິດເຟຣມຄີກເທົ່ານັ້ນ, ເຖິງແມ່ນວ່າເຟຣມຖືກຫຼຸດລົງ, ການສ້າງກອບທີ່ບໍ່ປ່ຽນແປງ
ຄວາມສູງຢູ່ໃນອັດຕາເຟຣມເຄິ່ງ.

------> ເວລາ
ການປ້ອນຂໍ້ມູນ:
ກອບ 1 ກອບ 2 ກອບ 3 ກອບ 4

11111 22222 33333 44444
11111 22222 33333 44444
11111 22222 33333 44444
11111 22222 33333 44444

ຜົນໄດ້ຮັບ:
11111 33333
11111 33333
11111 33333
11111 33333

ແຜ່ນຮອງ, 3
ຂະຫຍາຍແຕ່ລະກອບໃຫ້ເຕັມຄວາມສູງ, ແຕ່ pad ເສັ້ນສະລັບກັນດ້ວຍສີດໍາ, ສ້າງ a
ກອບທີ່ມີຄວາມສູງສອງເທົ່າໃນອັດຕາເຟຣມຂາເຂົ້າດຽວກັນ.

------> ເວລາ
ການປ້ອນຂໍ້ມູນ:
ກອບ 1 ກອບ 2 ກອບ 3 ກອບ 4

11111 22222 33333 44444
11111 22222 33333 44444
11111 22222 33333 44444
11111 22222 33333 44444

ຜົນໄດ້ຮັບ:
11111.....33333.....
..... 22222 ..... 44444
11111.....33333.....
..... 22222 ..... 44444
11111.....33333.....
..... 22222 ..... 44444
11111.....33333.....
..... 22222 ..... 44444

interleave_top, 4
ແຊກຊ່ອງຂໍ້ມູນດ້ານເທິງຈາກກອບຄີກກັບພາກສະຫນາມຕ່ໍາຈາກກອບຄູ່,
ການສ້າງກອບທີ່ມີຄວາມສູງທີ່ບໍ່ປ່ຽນແປງໃນອັດຕາເຟຣມເຄິ່ງ.

------> ເວລາ
ການປ້ອນຂໍ້ມູນ:
ກອບ 1 ກອບ 2 ກອບ 3 ກອບ 4

11111<- 22222 33333<- 44444
11111 22222<- 33333 44444<-
11111<- 22222 33333<- 44444
11111 22222<- 33333 44444<-

ຜົນໄດ້ຮັບ:
11111 33333
22222 44444
11111 33333
22222 44444

interleave_bottom, 5
ຂັດຂວາງຊ່ອງຂໍ້ມູນຕ່ໍາຈາກກອບຄີກກັບພາກສະຫນາມເທິງຈາກກອບຄູ່,
ການສ້າງກອບທີ່ມີຄວາມສູງທີ່ບໍ່ປ່ຽນແປງໃນອັດຕາເຟຣມເຄິ່ງ.

------> ເວລາ
ການປ້ອນຂໍ້ມູນ:
ກອບ 1 ກອບ 2 ກອບ 3 ກອບ 4

11111 22222<- 33333 44444<-
11111<- 22222 33333<- 44444
11111 22222<- 33333 44444<-
11111<- 22222 33333<- 44444

ຜົນໄດ້ຮັບ:
22222 44444
11111 33333
22222 44444
11111 33333

interlacex2, 6
ອັດຕາເຟຣມຄູ່ກັບຄວາມສູງທີ່ບໍ່ປ່ຽນແປງ. ກອບແມ່ນ inserted ແຕ່ລະປະກອບດ້ວຍ
ຊ່ອງຂໍ້ມູນທາງໂລກທີສອງຈາກກອບການປ້ອນຂໍ້ມູນກ່ອນໜ້າ ແລະຊ່ອງຊົ່ວຄາວທຳອິດ
ຈາກກອບການປ້ອນຂໍ້ມູນຕໍ່ໄປ. ໂໝດນີ້ອາໄສທຸງ top_field_first. ເປັນປະໂຫຍດ
ສໍາລັບການສະແດງວິດີໂອ interlaced ໂດຍບໍ່ມີການ synchronisation ພາກສະຫນາມ.

------> ເວລາ
ການປ້ອນຂໍ້ມູນ:
ກອບ 1 ກອບ 2 ກອບ 3 ກອບ 4

11111 22222 33333 44444
11111 22222 33333 44444
11111 22222 33333 44444
11111 22222 33333 44444

ຜົນໄດ້ຮັບ:
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

ຄ່າຕົວເລກຖືກປະຕິເສດແຕ່ຖືກຍອມຮັບຍ້ອນເຫດຜົນດ້ານຫຼັງ.

ຮູບແບບເລີ່ມຕົ້ນແມ່ນ "merge".

ທົງ
ລະບຸທຸງທີ່ມີອິດທິພົນຕໍ່ຂະບວນການກອງ.

ມູນຄ່າທີ່ມີຢູ່ສໍາລັບ ທົງ ແມ່ນ:

low_pass_filter, vlfp
ເປີດໃຊ້ການກັ່ນຕອງຕ່ໍາຜ່ານຕັ້ງຢູ່ໃນຕົວກອງ. Vertical low-pass filtering ແມ່ນ
ຕ້ອງການໃນເວລາທີ່ສ້າງຈຸດຫມາຍປາຍທາງ interlaced ຈາກແຫຼ່ງກ້າວຫນ້າທີ່
ມີລາຍລະອຽດແນວຕັ້ງທີ່ມີຄວາມຖີ່ສູງ. ການກັ່ນຕອງຈະຫຼຸດລົງ interlace 'twitter'
ແລະຮູບແບບ Moire.

ການກັ່ນຕອງຕ່ໍາຜ່ານແນວຕັ້ງສາມາດຖືກເປີດໃຊ້ພຽງແຕ່ສໍາລັບ ຮູບແບບການ interleave_top ແລະ
interleave_bottom.

ຫັນປ່ຽນ
ຖ່າຍທອດແຖວດ້ວຍຖັນໃນວິດີໂອທີ່ປ້ອນເຂົ້າ ແລະປ່ຽນເປັນທາງເລືອກ.

ມັນຍອມຮັບຕົວກໍານົດການດັ່ງຕໍ່ໄປນີ້:

dir ລະບຸທິດທາງການຫັນປ່ຽນ.

ສາມາດສົມມຸດມູນຄ່າຕໍ່ໄປນີ້:

0, 4, Cclock_flip
ໝຸນ 90 ອົງສາ counterclockwise ແລະ vertical flip (ຄ່າເລີ່ມຕົ້ນ), ນັ້ນແມ່ນ:

LR ລ
. . -> . .
lr Rr

1, 5, ໂມງ
ໝຸນ 90 ອົງສາຕາມເຂັມໂມງ, ນັ້ນແມ່ນ:

LR lL
. . -> . .
lr rR

2, 6, ໂມງ
ໝຸນ 90 ອົງສາ counterclockwise, ນັ້ນແມ່ນ:

LR Rr
. . -> . .
lr ລ

3, 7, clock_flip
ໝຸນຕາມເຂັມໂມງ 90 ອົງສາ ແລະພິກແນວຕັ້ງ, ນັ້ນແມ່ນ:

LR rR
. . -> . .
lr lL

ສໍາລັບຄ່າລະຫວ່າງ 4-7, transposition ແມ່ນເຮັດໄດ້ພຽງແຕ່ຖ້າເລຂາຄະນິດຂອງວິດີໂອ input ແມ່ນ
ຮູບຄົນ ແລະບໍ່ແມ່ນພູມສັນຖານ. ຄ່າເຫຼົ່ານີ້ຖືກປະຕິເສດ, ທາງເລືອກ "ຜ່ານ".
ຄວນໃຊ້ແທນ.

ຄ່າຕົວເລກແມ່ນຖືກປະຕິເສດ, ແລະຄວນຈະຖືກຫຼຸດລົງໃນເງື່ອນໄຂຂອງຄ່າຄົງທີ່ຂອງສັນຍາລັກ.

ຂ້າມຜ່ານ
ຢ່າໃຊ້ transposition ຖ້າເລຂາຄະນິດທີ່ປ້ອນເຂົ້າກົງກັບອັນທີ່ລະບຸໄວ້ໃນ
ຄ່າ​ທີ່​ລະ​ບຸ​ໄວ້​. ມັນຍອມຮັບຄ່າດັ່ງຕໍ່ໄປນີ້:

none
ນຳໃຊ້ການຫັນປ່ຽນສະເໝີ.

ຮູບ
ຮັກສາເລຂາຄະນິດຮູບຄົນ (ເມື່ອ ລະດັບຄວາມສູງ >= width).

ພູມສັນຖານ
ຮັກສາເລຂາຄະນິດພູມສັນຖານ (ເມື່ອ width >= ລະດັບຄວາມສູງ).

ຄ່າເລີ່ມຕົ້ນແມ່ນ "ບໍ່ມີ".

ຕົວຢ່າງເພື່ອຫມຸນຕາມ 90 ອົງສາຕາມເຂັມໂມງ ແລະຮັກສາການຈັດວາງຮູບຄົນ:

transpose=dir=1:passthrough=portrait

ຄໍາສັ່ງຂ້າງເທິງຍັງສາມາດຖືກກໍານົດເປັນ:

transpose=1:ຮູບ

trim
ຕັດວັດສະດຸປ້ອນເພື່ອໃຫ້ຜົນຜະລິດມີສ່ວນຍ່ອຍຕໍ່ເນື່ອງຂອງວັດສະດຸປ້ອນ.

ມັນຍອມຮັບຕົວກໍານົດການດັ່ງຕໍ່ໄປນີ້:

ການເລີ່ມຕົ້ນ
ກໍານົດເວລາຂອງການເລີ່ມຕົ້ນຂອງພາກສ່ວນເກັບຮັກສາໄວ້, ie ກອບທີ່ມີເວລາ
ການເລີ່ມຕົ້ນ ຈະເປັນກອບທໍາອິດໃນຜົນຜະລິດ.

ໃນຕອນທ້າຍ ກໍານົດເວລາຂອງກອບທໍາອິດທີ່ຈະຫຼຸດລົງ, ie ກອບທັນທີ
ນຳໜ້າອັນໜຶ່ງດ້ວຍເວລາ ໃນຕອນທ້າຍ ຈະເປັນກອບສຸດທ້າຍໃນຜົນຜະລິດ.

start_pts
ນີ້ແມ່ນຄືກັນກັບ ການເລີ່ມຕົ້ນ, ຍົກເວັ້ນທາງເລືອກນີ້ກໍານົດເວລາເລີ່ມຕົ້ນໃນ timebase
ຫົວໜ່ວຍແທນວິນາທີ.

end_pts
ນີ້ແມ່ນຄືກັນກັບ ໃນຕອນທ້າຍ, ຍົກເວັ້ນທາງເລືອກນີ້ກໍານົດເວລາສິ້ນສຸດໃນຫນ່ວຍເວລາ
ແທນທີ່ຈະເປັນວິນາທີ.

ໄລຍະເວລາ
ໄລຍະເວລາສູງສຸດຂອງຜົນຜະລິດໃນວິນາທີ.

start_frame
ຈໍານວນຂອງກອບທໍາອິດທີ່ຄວນຈະຖືກສົ່ງກັບຜົນຜະລິດ.

end_frame
ຈໍານວນຂອງກອບທໍາອິດທີ່ຄວນຈະຖືກຫຼຸດລົງ.

ການເລີ່ມຕົ້ນ, ໃນຕອນທ້າຍ, ແລະ ໄລຍະເວລາ ສະແດງອອກເປັນການກໍານົດໄລຍະເວລາ; ເບິ່ງ ໄດ້ ທີ່ໃຊ້ເວລາ
ໄລຍະເວລາ ສ່ວນ in ໄດ້ ffmpeg-utils(1​) ຄູ່ມື ສໍາລັບ syntax ທີ່ຍອມຮັບ.

ໃຫ້ສັງເກດວ່າສອງຊຸດທໍາອິດຂອງຕົວເລືອກເລີ່ມຕົ້ນ / ສິ້ນສຸດແລະ ໄລຍະເວລາ ທາງເລືອກເບິ່ງຢູ່ໃນ
frame timestamp, ໃນຂະນະທີ່ຕົວແປ _frame ພຽງແຕ່ນັບເຟຣມທີ່ຜ່ານ
ການກັ່ນຕອງ. ກະລຸນາຮັບຊາບວ່າຕົວກອງນີ້ບໍ່ໄດ້ດັດແປງການສະແຕມເວລາ. ຖ້າ​ຫາກ​ວ່າ​ທ່ານ​ຕ້ອງ​ການ​ສໍາ​ລັບ​ການ​
output timestamps ເພື່ອເລີ່ມຕົ້ນທີ່ສູນ, ໃສ່ຕົວກອງ setpts ຫຼັງຈາກການກັ່ນຕອງ trim.

ຖ້າຕົວເລືອກເລີ່ມຕົ້ນຫຼືສິ້ນສຸດຫຼາຍແມ່ນຖືກກໍານົດ, ການກັ່ນຕອງນີ້ພະຍາຍາມ greedy ແລະຮັກສາທັງຫມົດ
ເຟຣມທີ່ກົງກັບຢ່າງໜ້ອຍໜຶ່ງໃນຂໍ້ຈຳກັດທີ່ລະບຸໄວ້. ເພື່ອຮັກສາພຽງແຕ່ສ່ວນທີ່
ກົງກັບຂໍ້ຈໍາກັດທັງໝົດໃນຄັ້ງດຽວ, ຕ່ອງໂສ້ການກັ່ນຕອງຕັດຫຼາຍອັນ.

ຄ່າເລີ່ມຕົ້ນແມ່ນແບບນັ້ນທີ່ວັດສະດຸປ້ອນທັງຫມົດຖືກເກັບຮັກສາໄວ້. ສະນັ້ນມັນເປັນໄປໄດ້ທີ່ຈະກໍານົດຕົວຢ່າງພຽງແຕ່ໄດ້
ຄ່າສິ້ນສຸດເພື່ອຮັກສາທຸກຢ່າງກ່ອນເວລາທີ່ກໍານົດໄວ້.

ຕົວຢ່າງ:

· ວາງທຸກຢ່າງຍົກເວັ້ນນາທີທີສອງຂອງການປ້ອນຂໍ້ມູນ:

ffmpeg -i INPUT -vf trim=60:120

·ຮັກສາພຽງແຕ່ວິນາທີທໍາອິດ:

ffmpeg -i INPUT -vf trim=duration=1

ບໍ່ແຫຼມ
ເຮັດໃຫ້ແຫຼມ ຫຼືມົວວິດີໂອປ້ອນຂໍ້ມູນ.

ມັນຍອມຮັບຕົວກໍານົດການດັ່ງຕໍ່ໄປນີ້:

luma_msize_x, lx
ກໍານົດຂະຫນາດຕາມລວງນອນຂອງ luma matrix. ມັນຕ້ອງເປັນຈໍານວນເລກຄີກລະຫວ່າງ 3 ແລະ 63. The
ຄ່າເລີ່ມຕົ້ນແມ່ນ 5.

luma_msize_y, ly
ກໍານົດຂະຫນາດຂອງ luma matrix ຕັ້ງ. ມັນຕ້ອງເປັນຈໍານວນເລກຄີກລະຫວ່າງ 3 ແລະ 63. The
ຄ່າເລີ່ມຕົ້ນແມ່ນ 5.

luma_ຈຳນວນ, la
ຕັ້ງຄ່າຄວາມແຮງຂອງຜົນກະທົບ luma. ມັນຕ້ອງເປັນຕົວເລກຈຸດລອຍ, ຄ່າທີ່ສົມເຫດສົມຜົນ
ວາງລະຫວ່າງ -1.5 ແລະ 1.5.

ຄ່າທາງລົບຈະເຮັດໃຫ້ວິດີໂອການປ້ອນຂໍ້ມູນມົວ, ໃນຂະນະທີ່ຄ່າບວກຈະເຮັດໃຫ້ມັນຄົມຊັດ, a
ຄ່າຂອງສູນຈະປິດການໃຊ້ງານຜົນກະທົບ.

ຄ່າເລີ່ມຕົ້ນແມ່ນ 1.0.

chroma_msize_x, cx
ກໍານົດຂະຫນາດ chroma matrix ຕາມລວງນອນ. ມັນຕ້ອງເປັນຈໍານວນເລກຄີກລະຫວ່າງ 3 ແລະ 63. The
ຄ່າເລີ່ມຕົ້ນແມ່ນ 5.

chroma_msize_y, cy
ກຳນົດຂະໜາດແນວຕັ້ງ chroma matrix. ມັນຕ້ອງເປັນຈໍານວນເລກຄີກລະຫວ່າງ 3 ແລະ 63. The
ຄ່າເລີ່ມຕົ້ນແມ່ນ 5.

chroma_mount, ca
ຕັ້ງຄ່າຄວາມແຮງຂອງເອັບເຟັກ chroma. ມັນຕ້ອງເປັນຕົວເລກຈຸດລອຍ, ຄ່າທີ່ສົມເຫດສົມຜົນ
ວາງລະຫວ່າງ -1.5 ແລະ 1.5.

ຄ່າທາງລົບຈະເຮັດໃຫ້ວິດີໂອການປ້ອນຂໍ້ມູນມົວ, ໃນຂະນະທີ່ຄ່າບວກຈະເຮັດໃຫ້ມັນຄົມຊັດ, a
ຄ່າຂອງສູນຈະປິດການໃຊ້ງານຜົນກະທົບ.

ຄ່າເລີ່ມຕົ້ນແມ່ນ 0.0.

opencl
ຖ້າຕັ້ງເປັນ 1, ລະບຸໂດຍໃຊ້ຄວາມສາມາດ OpenCL, ມີພຽງແຕ່ຖ້າ FFmpeg ແມ່ນ
ຕັ້ງຄ່າດ້ວຍ "--enable-opencl". ຄ່າເລີ່ມຕົ້ນແມ່ນ 0.

ພາຣາມິເຕີທັງໝົດແມ່ນເປັນທາງເລືອກ ແລະຄ່າເລີ່ມຕົ້ນເທົ່າກັບສະຕຣິງ '5:5:1.0:5:5:0.0'.

ຕົວຢ່າງ

·ສະຫມັກຂໍເອົາຜົນກະທົບ luma sharpen ທີ່ເຂັ້ມແຂງ:

unsharp=luma_msize_x=7:luma_msize_y=7:luma_amount=2.5

· ນຳໃຊ້ການມົວທີ່ເຂັ້ມແຂງຂອງທັງຄ່າພາລາມິເຕີ luma ແລະ chroma:

unsharp=7:7:-2:7:7:-2

uspp
ນຳໃຊ້ຕົວກອງຫຼັງປະມວນຜົນແບບຊ້າສຸດ ຫຼື ງ່າຍດາຍທີ່ບີບອັດ ແລະ ຫຍໍ້ຮູບພາບ
at several (ຫຼື - ໃນກໍລະນີຂອງ ຄຸນ​ນະ​ພາບ ລະດັບ 8 - ທັງຫມົດ) ປ່ຽນແລະສະເລ່ຍຜົນໄດ້ຮັບ.

ວິທີການນີ້ແຕກຕ່າງຈາກພຶດຕິກໍາຂອງ spp ແມ່ນວ່າ uspp ຕົວຈິງແລ້ວ encodes & decodes ແຕ່ລະຄົນ
ກໍລະນີທີ່ມີ libavcodec Snow, ໃນຂະນະທີ່ spp ໃຊ້ intra ແບບງ່າຍດາຍພຽງແຕ່ 8x8 DCT ຄ້າຍຄືກັນກັບ
MJPEG.

ຕົວກອງຍອມຮັບຕົວເລືອກຕໍ່ໄປນີ້:

ຄຸນ​ນະ​ພາບ
ກໍານົດຄຸນນະພາບ. ຕົວເລືອກນີ້ກໍານົດຈໍານວນລະດັບສໍາລັບການສະເລ່ຍ. ມັນຍອມຮັບເປັນ
ຈຳນວນເຕັມໃນຂອບເຂດ 0-8. ຖ້າຕັ້ງເປັນ 0, ຕົວກອງຈະບໍ່ມີຜົນກະທົບ. ຄ່າຂອງ 8
ຫມາຍຄວາມວ່າຄຸນນະພາບທີ່ສູງຂຶ້ນ. ສໍາລັບການເພີ່ມຂຶ້ນແຕ່ລະມູນຄ່ານັ້ນຄວາມໄວຫຼຸດລົງໂດຍປັດໄຈຫນຶ່ງ
ຂອງປະມານ 2. ຄ່າເລີ່ມຕົ້ນແມ່ນ 3.

qp ບັງຄັບພາລາມິເຕີປະລິມານຄົງທີ່. ຖ້າບໍ່ໄດ້ຕັ້ງ, ຕົວກອງຈະໃຊ້ QP ຈາກ
ການຖ່າຍທອດວິດີໂອ (ຖ້າມີ).

vectorscope
ສະແດງ 2 ຄ່າອົງປະກອບສີໃນກຣາບສອງມິຕິ (ເຊິ່ງເອີ້ນວ່າ a
vectorscope).

ຕົວກອງນີ້ຍອມຮັບຕົວເລືອກຕໍ່ໄປນີ້:

ຮູບແບບ, m
ຕັ້ງໂໝດ vectorscope.

ມັນຍອມຮັບຄ່າດັ່ງຕໍ່ໄປນີ້:

ສີຂີ້ເຖົ່າ
ຄ່າສີເທົາຖືກສະແດງຢູ່ໃນກຣາບ, ຄວາມສະຫວ່າງທີ່ສູງຂຶ້ນຫມາຍຄວາມວ່າມີ pixels ຫຼາຍຄືກັນ
ຄ່າສີອົງປະກອບກ່ຽວກັບສະຖານທີ່ໃນກາຟ. ນີ້ແມ່ນຮູບແບບເລີ່ມຕົ້ນ.

ສີ
ຄ່າສີຂີ້ເຖົ່າແມ່ນສະແດງຢູ່ໃນເສັ້ນສະແດງ. ຄ່າຂອງ pixels ອ້ອມຂ້າງທີ່ບໍ່ແມ່ນ
ປະຈຸບັນຢູ່ໃນກອບວິດີໂອໄດ້ຖືກແຕ້ມໃນ gradient ຂອງ 2 ອົງປະກອບສີທີ່ຖືກກໍານົດ
ໂດຍທາງເລືອກ "x" ແລະ "y".

color2
ຄ່າອົງປະກອບສີຕົວຈິງທີ່ມີຢູ່ໃນກອບວິດີໂອແມ່ນສະແດງຢູ່ໃນກຣາບ.

color3
ຄ້າຍຄືກັນກັບ color2 ແຕ່ຄວາມຖີ່ສູງກວ່າຂອງຄ່າດຽວກັນ "x" ແລະ "y" ໃນກາຟ
ເພີ່ມມູນຄ່າຂອງອົງປະກອບສີອື່ນ, ເຊິ່ງແມ່ນ luminance ໂດຍຄ່າເລີ່ມຕົ້ນ
ຂອງ "x" ແລະ "y".

color4
ສີທີ່ແທ້ຈິງທີ່ມີຢູ່ໃນກອບວິດີໂອແມ່ນສະແດງຢູ່ໃນເສັ້ນສະແດງ. ຖ້າສອງແຕກຕ່າງກັນ
ສີແຜນທີ່ກັບຕໍາແຫນ່ງດຽວກັນໃນກາຟຫຼັງຈາກນັ້ນສີທີ່ມີມູນຄ່າສູງກວ່າຂອງອົງປະກອບບໍ່ແມ່ນ
ທີ່ມີຢູ່ໃນເສັ້ນສະແດງແມ່ນເລືອກ.

x ກໍານົດວ່າອົງປະກອບສີໃດຈະຖືກສະແດງຢູ່ໃນແກນ X. ຄ່າເລີ່ມຕົ້ນແມ່ນ 1.

y ກໍານົດອົງປະກອບສີໃດທີ່ຈະເປັນຕົວແທນຢູ່ໃນແກນ Y. ຄ່າເລີ່ມຕົ້ນແມ່ນ 2.

ຄວາມ​ເຂັ້ມ​ແຂງ​, i
ກໍານົດຄວາມເຂັ້ມ, ໃຊ້ໂດຍໂຫມດ: ສີຂີ້ເຖົ່າ, ສີແລະ color3 ສໍາລັບການເພີ່ມຄວາມສະຫວ່າງຂອງ
ອົງປະກອບສີທີ່ສະແດງເຖິງຄວາມຖີ່ຂອງສະຖານທີ່ (X, Y) ໃນກາຟ.

ຊອງຈົດ ໝາຍ, e
none
ບໍ່ມີຊອງຈົດໝາຍ, ນີ້ແມ່ນຄ່າເລີ່ມຕົ້ນ.

ທັນທີ
ຊອງທັນທີ, ເຖິງແມ່ນວ່າ pixels ດຽວທີ່ມືດທີ່ສຸດຈະຖືກເນັ້ນໃຫ້ຊັດເຈນ.

ຈຸດສູງ
ຖືຄ່າສູງສຸດ ແລະຕໍ່າສຸດທີ່ສະແດງຢູ່ໃນກຣາບຕາມເວລາ. ວິທີນີ້ເຈົ້າສາມາດເຮັດໄດ້
ຍັງບໍ່ເຫັນຄ່າຂອບເຂດໂດຍບໍ່ໄດ້ເບິ່ງ vectorscope ຢ່າງຕໍ່ເນື່ອງ.

ສູງສຸດ+ທັນທີ
ສູງສຸດແລະຊອງທັນທີລວມເຂົ້າກັນ.

vidstabdetect
ວິເຄາະການສັ່ນ/ການສັ່ນວິດີໂອ. ປະຕິບັດ pass 1 ຂອງ 2, ເບິ່ງ vidstabtransform ສໍາລັບຜ່ານ
2.

ການກັ່ນຕອງນີ້ສ້າງໄຟລ໌ທີ່ມີການແປພາສາທີ່ກ່ຽວຂ້ອງແລະການຫມຸນຂໍ້ມູນການຫັນປ່ຽນ
ກ່ຽວກັບກອບຕໍ່ມາ, ເຊິ່ງຖືກນໍາໃຊ້ໂດຍ vidstabtransform ຕົວກອງ

ເພື່ອເປີດໃຊ້ການລວບລວມຕົວກອງນີ້, ທ່ານຈໍາເປັນຕ້ອງຕັ້ງຄ່າ FFmpeg ດ້ວຍ
"--enable-libvidstab".

ຕົວກອງນີ້ຍອມຮັບຕົວເລືອກຕໍ່ໄປນີ້:

ຜົນ
ກໍານົດເສັ້ນທາງໄປຫາໄຟລ໌ທີ່ໃຊ້ໃນການຂຽນຂໍ້ມູນການຫັນປ່ຽນ. ຄ່າເລີ່ມຕົ້ນແມ່ນ
transforms.trf.

ຂີ້ອາຍ
ກຳນົດວ່າວິດີໂອສັ່ນສໍ່າໃດ ແລະກ້ອງໄວເທົ່າໃດ. ມັນຍອມຮັບຈໍານວນເຕັມໃນ
ໄລຍະ 1-10, ຄ່າ 1 ຫມາຍເຖິງການສັ່ນສະເທືອນເລັກນ້ອຍ, ຄ່າ 10 ຫມາຍເຖິງການສັ່ນສະເທືອນທີ່ເຂັ້ມແຂງ.
ຄ່າເລີ່ມຕົ້ນແມ່ນ 5.

ຄວາມຖືກຕ້ອງ
ກໍານົດຄວາມຖືກຕ້ອງຂອງຂະບວນການກວດພົບ. ມັນຕ້ອງເປັນຄ່າໃນໄລຍະ 1-15. ກ
ຄ່າ 1 ໝາຍເຖິງຄວາມຖືກຕ້ອງຕໍ່າ, ຄ່າ 15 ໝາຍເຖິງຄວາມຖືກຕ້ອງສູງ. ຄ່າເລີ່ມຕົ້ນແມ່ນ 15.

ຂະ​ຫນາດ​ຂັ້ນ​ຕອນ​
ກໍານົດຂະຫນາດຂັ້ນຕອນຂອງຂະບວນການຄົ້ນຫາ. ພື້ນທີ່ປະມານຕໍາ່ສຸດແມ່ນສະແກນດ້ວຍ 1 pixel
ຄວາມລະອຽດ. ຄ່າເລີ່ມຕົ້ນແມ່ນ 6.

ກົງກັນຂ້າມ
ກໍານົດຄວາມຄົມຊັດຕ່ໍາສຸດ. ລຸ່ມນີ້, ຊ່ອງຂໍ້ມູນການວັດແທກທ້ອງຖິ່ນຖືກຍົກເລີກ. ຕ້ອງເປັນ
ຄ່າຈຸດລອຍຢູ່ໃນຊ່ວງ 0-1. ຄ່າເລີ່ມຕົ້ນແມ່ນ 0.3.

tripod
ກໍານົດຫມາຍເລກກອບການອ້າງອິງສໍາລັບໂຫມດ tripod.

ຖ້າເປີດໃຊ້, ການເຄື່ອນໄຫວຂອງເຟຣມຖືກປຽບທຽບກັບກອບອ້າງອີງໃນການກັ່ນຕອງ
stream, ກໍານົດໂດຍຈໍານວນທີ່ກໍານົດໄວ້. ແນວຄວາມຄິດແມ່ນເພື່ອຊົດເຊີຍການເຄື່ອນໄຫວທັງຫມົດໃນ
scene static ຫຼາຍ ຫຼື ຫນ້ອຍ ແລະ ຮັກ ສາ ກ້ອງ ຖ່າຍ ຮູບ ພາບ ຢ່າງ ແທ້ ຈິງ.

ຖ້າຕັ້ງເປັນ 0, ມັນຖືກປິດໃຊ້ງານ. ຂອບແມ່ນນັບຈາກ 1.

ສະແດງໃຫ້ເຫັນ
ສະ​ແດງ​ໃຫ້​ເຫັນ​ພາກ​ສະ​ຫນາມ​ແລະ​ການ​ຫັນ​ປ່ຽນ​ໃນ​ກອບ​ຜົນ​ໄດ້​ຮັບ​. ມັນຍອມຮັບຈໍານວນເຕັມໃນຂອບເຂດ
0-2. ຄ່າເລີ່ມຕົ້ນແມ່ນ 0, ເຊິ່ງປິດການເບິ່ງເຫັນໃດໆ.

ຕົວຢ່າງ

· ໃຊ້ຄ່າເລີ່ມຕົ້ນ:

vidstabdetect

·ວິເຄາະຮູບເງົາທີ່ສັ່ນສະເທືອນຢ່າງແຂງແຮງແລະເອົາຜົນໄດ້ຮັບເຂົ້າໃນເອກະສານ mytransforms.trf:

vidstabdetect=shakiness=10:accuracy=15:result="mytransforms.trf"

·​ເບິ່ງ​ຜົນ​ໄດ້​ຮັບ​ຂອງ​ການ​ຫັນ​ປ່ຽນ​ພາຍ​ໃນ​ໃນ​ວິ​ດີ​ໂອ​ຜົນ​ໄດ້​ຮັບ​:

vidstabdetect=show=1

· ວິ​ເຄາະ​ວິ​ດີ​ໂອ​ທີ່​ມີ​ການ​ສັ່ນ​ສະ​ເທືອນ​ປານ​ກາງ​ໂດຍ​ການ​ນໍາ​ໃຊ້​ ffmpeg:

ffmpeg -i ປ້ອນ -vf vidstabdetect=ສັ່ນສະເທືອນ=5:show=1 dummy.avi

vidstabtransform
ສະຖຽນລະພາບວິດີໂອ/ການສັ່ນສະເທືອນ: ຜ່ານ 2 ຈາກ 2, ເບິ່ງ vidstabdetect ສໍາລັບຜ່ານ 1.

ອ່ານໄຟລ໌ທີ່ມີຂໍ້ມູນການຫັນປ່ຽນສໍາລັບແຕ່ລະກອບແລະນໍາໃຊ້ / ຊົດເຊີຍໃຫ້ເຂົາເຈົ້າ. ຮ່ວມກັນ
ກັບ vidstabdetect ການກັ່ນຕອງນີ້ສາມາດຖືກນໍາໃຊ້ເພື່ອ deshake ວິດີໂອ. ເບິ່ງນຳ
<http://public.hronopik.de/vid.stab>. ມັນເປັນສິ່ງ ສຳ ຄັນທີ່ຈະ ນຳ ໃຊ້ ບໍ່ແຫຼມ ການກັ່ນຕອງ, ເບິ່ງ
ຂ້າງລຸ່ມນີ້.

ເພື່ອເປີດໃຊ້ການລວບລວມຕົວກອງນີ້, ທ່ານຈໍາເປັນຕ້ອງຕັ້ງຄ່າ FFmpeg ດ້ວຍ
"--enable-libvidstab".

ທາງເລືອກໃນການ

ການປ້ອນຂໍ້ມູນ
ຕັ້ງເສັ້ນທາງໄປຫາໄຟລ໌ທີ່ໃຊ້ເພື່ອອ່ານການຫັນປ່ຽນ. ຄ່າເລີ່ມຕົ້ນແມ່ນ transforms.trf.

ກ້ຽງ
ກໍາ​ນົດ​ຈໍາ​ນວນ​ຂອງ​ເຟຣມ (ຄ່າ * 2 + 1​) ການ​ນໍາ​ໃຊ້​ສໍາ​ລັບ lowpass filtering ກ້ອງ​ຖ່າຍ​ຮູບ​
ການເຄື່ອນໄຫວ. ຄ່າເລີ່ມຕົ້ນແມ່ນ 10.

ສໍາລັບຕົວຢ່າງ, ຈໍານວນ 10 ຫມາຍຄວາມວ່າ 21 ເຟຣມຖືກນໍາໃຊ້ (10 ໃນອະດີດແລະ 10 ໃນກອບ.
ໃນ​ອະ​ນາ​ຄົດ​) ເພື່ອ​ເຮັດ​ໃຫ້​ການ​ເຄື່ອນ​ໄຫວ​ໃນ​ວິ​ດີ​ໂອ​ກ້ຽງ​. ຄ່າທີ່ໃຫຍ່ກວ່າເຮັດໃຫ້ວິດີໂອທີ່ລຽບງ່າຍ,
ແຕ່ຈໍາກັດການເລັ່ງຂອງກ້ອງຖ່າຍຮູບ (ການເຄື່ອນໄຫວ pan/tilt). 0 ເປັນກໍລະນີພິເສດ
ບ່ອນທີ່ກ້ອງຖ່າຍຮູບຄົງທີ່ໄດ້ຖືກຈໍາລອງ.

optalgo
ຕັ້ງຄ່າຂັ້ນຕອນການເພີ່ມປະສິດທິພາບເສັ້ນທາງກ້ອງຖ່າຍຮູບ.

ຄ່າທີ່ຍອມຮັບແມ່ນ:

gaussian
gaussian kernel low-pass filter ໃນການເຄື່ອນໄຫວຂອງກ້ອງຖ່າຍຮູບ (ຄ່າເລີ່ມຕົ້ນ)

ສະເລ່ຍ ສະ​ເລ່ຍ​ກ່ຽວ​ກັບ​ການ​ຫັນ​ເປັນ​

maxshift
ກໍານົດຈໍານວນ pixels ສູງສຸດເພື່ອແປເຟຣມ. ຄ່າເລີ່ມຕົ້ນແມ່ນ -1, ຫມາຍຄວາມວ່າບໍ່ມີ
ຂີດ ຈຳ ກັດ.

ກ້ານໃບ
ຕັ້ງມຸມສູງສຸດເປັນເຣດຽນ (ອົງສາ*PI/180) ເພື່ອໝຸນເຟຣມ. ຄ່າເລີ່ມຕົ້ນແມ່ນ -1,
ຫມາຍຄວາມວ່າບໍ່ມີຂອບເຂດຈໍາກັດ.

ການປູກພືດ
ກໍານົດວິທີການຈັດການກັບຊາຍແດນທີ່ອາດຈະເຫັນໄດ້ເນື່ອງຈາກການຊົດເຊີຍການເຄື່ອນໄຫວ.

ຄ່າທີ່ມີຢູ່ແມ່ນ:

ຮັກສາ
ຮັກສາຂໍ້ມູນຮູບພາບຈາກກອບທີ່ຜ່ານມາ (ຄ່າເລີ່ມຕົ້ນ)

ສີດໍາ
ຕື່ມໃສ່ຂອບສີດໍາ

ປີ້ນ
Invert transforms ຖ້າຕັ້ງເປັນ 1. ຄ່າເລີ່ມຕົ້ນແມ່ນ 0.

ພີ່ນ້ອງ
ພິ​ຈາ​ລະ​ນາ​ການ​ປ່ຽນ​ແປງ​ເປັນ​ພີ່​ນ້ອງ​ກັນ​ກັບ​ກອບ​ກ່ອນ​ຫນ້າ​ນີ້​ຖ້າ​ຫາກ​ວ່າ​ຕັ້ງ​ເປັນ 1​, absolute ຖ້າ​ຕັ້ງ​ເປັນ 0​.
ຄ່າເລີ່ມຕົ້ນແມ່ນ 0.

ຂະຫຍາຍ
ຕັ້ງເປີເຊັນເພື່ອຊູມ. ຄ່າບວກຈະສົ່ງຜົນໃຫ້ເກີດຜົນການຊູມ, ລົບ
ຄ່າໃນເອັບເຟັກຊູມອອກ. ຄ່າເລີ່ມຕົ້ນແມ່ນ 0 (ບໍ່ມີການຊູມ).

optzoom
ຕັ້ງຄ່າການຊູມທີ່ດີທີ່ສຸດເພື່ອຫຼີກເວັ້ນການຂອບ.

ຄ່າທີ່ຍອມຮັບແມ່ນ:

0 disabled

1 ມູນຄ່າການຊູມຄົງທີ່ທີ່ດີທີ່ສຸດແມ່ນຖືກກໍານົດ (ພຽງແຕ່ການເຄື່ອນໄຫວທີ່ເຂັ້ມແຂງທີ່ສຸດທີ່ຈະນໍາໄປສູ່
ຂອບ​ເຂດ​ທີ່​ເຫັນ​ໄດ້​) (ຄ່າ​ເລີ່ມ​ຕົ້ນ​)

2 ຄ່າການຊູມທີ່ປັບຕົວໄດ້ດີທີ່ສຸດແມ່ນຖືກກໍານົດ (ບໍ່ມີຂອບຈະເຫັນໄດ້), ເບິ່ງ
ຊູມຄວາມໄວ

ຈົ່ງຈື່ໄວ້ວ່າຄ່າທີ່ໃຫ້ຢູ່ໃນການຊູມຈະຖືກເພີ່ມໃສ່ອັນທີ່ຄຳນວນຢູ່ນີ້.

ຊູມຄວາມໄວ
ຕັ້ງເປີເຊັນເພື່ອຊູມສູງສຸດແຕ່ລະເຟຣມ (ເປີດໃຊ້ງານເມື່ອ optzoom ຖືກກໍານົດເປັນ 2). ຊ່ວງແມ່ນ
ຈາກ 0 ຫາ 5, ຄ່າເລີ່ມຕົ້ນແມ່ນ 0.25.

ສາກົນ
ລະບຸປະເພດຂອງ interpolation.

ຄ່າທີ່ມີຢູ່ແມ່ນ:

no ບໍ່ມີ interpolation

ເສັ້ນຊື່
linear ພຽງ​ແຕ່​ແນວ​ນອນ​

bilinear
linear ໃນທັງສອງທິດທາງ (ຄ່າເລີ່ມຕົ້ນ)

bicubic
cubic ໃນທັງສອງທິດທາງ (ຊ້າ)

tripod
ເປີດໃຊ້ໂໝດຂາຕັ້ງສາກສະເໝືອນ ຖ້າຕັ້ງເປັນ 1, ເຊິ່ງເທົ່າກັບ
"relative=0:smoothing=0". ຄ່າເລີ່ມຕົ້ນແມ່ນ 0.

ໃຊ້ຍັງ "tripod" ທາງເລືອກຂອງ vidstabdetect.

debug
ເພີ່ມ verbosity ບັນທຶກຖ້າຕັ້ງເປັນ 1. ນອກຈາກນັ້ນ, ການເຄື່ອນໄຫວທົ່ວໂລກທີ່ກວດພົບແມ່ນຂຽນໃສ່
ໄຟລ​໌​ຊົ່ວ​ຄາວ​ global_motions.trf. ຄ່າເລີ່ມຕົ້ນແມ່ນ 0.

ຕົວຢ່າງ

· ການ​ນໍາ​ໃຊ້ ffmpeg ສໍາລັບສະຖຽນລະພາບປົກກະຕິທີ່ມີຄ່າເລີ່ມຕົ້ນ:

ffmpeg -i inp.mpeg -vf vidstabtransform,unsharp=5:5:0.8:3:3:0.4 inp_stabilized.mpeg

ຫມາຍເຫດການນໍາໃຊ້ຂອງ ບໍ່ແຫຼມ ການກັ່ນຕອງທີ່ແນະນໍາສະເຫມີ.

· ຊູມເຂົ້າໄປອີກໜ້ອຍໜຶ່ງ ແລະໂຫຼດຂໍ້ມູນການຫັນປ່ຽນຈາກໄຟລ໌ທີ່ໃຫ້ໄວ້:

vidstabtransform=zoom=5:input="mytransforms.trf"

· ເຮັດໃຫ້ວິດີໂອລຽບງ່າຍຍິ່ງຂຶ້ນ:

vidstabtransform=smoothing=30

vflip
ພິກວິດີໂອການປ້ອນຂໍ້ມູນໃນແນວຕັ້ງ.

ຕົວຢ່າງ: ເພື່ອພິກວິດີໂອຕາມແນວຕັ້ງ ffmpeg:

ffmpeg -i in.avi -vf "vflip" out.avi

ຂອບມືດ
ເຮັດ ຫຼື ປີ້ນກັບຜົນກະທົບ vignetting ທໍາມະຊາດ.

ຕົວກອງຍອມຮັບຕົວເລືອກຕໍ່ໄປນີ້:

ມຸມ, a
ກໍານົດການສະແດງອອກມຸມເລນເປັນຈໍານວນເຣດຽນ.

ຄ່າຖືກຕັດຢູ່ໃນຂອບເຂດ "[0,PI/2]".

ຄ່າເລີ່ມຕົ້ນ: "PI/5"

x0
y0 ກໍານົດການສະແດງອອກຂອງຈຸດປະສານງານ. ຕາມລໍາດັບ "w/2" ແລະ "h/2" ຕາມຄ່າເລີ່ມຕົ້ນ.

ຮູບແບບການ
ຕັ້ງ​ຮູບ​ແບບ​ຕໍ່​ຫນ້າ / ກັບ​ຄືນ​ໄປ​ບ່ອນ​.

ໂໝດທີ່ມີຢູ່ແມ່ນ:

ໄປຂ້າງຫນ້າ
ໄລຍະຫ່າງຈາກຈຸດສູນກາງໃຫຍ່ຂຶ້ນ, ຮູບພາບຈະມືດລົງ.

ຖອຍຫລັງ
ໄລຍະຫ່າງຈາກຈຸດສູນກາງໃຫຍ່ຂຶ້ນ, ຮູບພາບຈະສະຫວ່າງຂຶ້ນ.
ນີ້ສາມາດຖືກນໍາໃຊ້ເພື່ອກັບຄືນຜົນກະທົບ vignette, ເຖິງແມ່ນວ່າບໍ່ມີອັດຕະໂນມັດ
ການກວດຫາເພື່ອສະກັດເລນ ມຸມ ແລະການຕັ້ງຄ່າອື່ນໆ (ຍັງ). ມັນຍັງສາມາດຖືກນໍາໃຊ້
ເພື່ອສ້າງຜົນກະທົບການເຜົາໄຫມ້.

ຄ່າເລີ່ມຕົ້ນແມ່ນ ໄປຂ້າງຫນ້າ.

ການປະເມີນ
ກໍານົດຮູບແບບການປະເມີນຜົນສໍາລັບການສະແດງອອກ (ມຸມ, x0, y0).

ມັນຍອມຮັບຄ່າດັ່ງຕໍ່ໄປນີ້:

ໃນ​ມັນ
ປະເມີນການສະແດງອອກພຽງແຕ່ຄັ້ງດຽວໃນລະຫວ່າງການເລີ່ມຕົ້ນການກັ່ນຕອງ.

frame
ປະເມີນການສະແດງອອກສໍາລັບແຕ່ລະກອບທີ່ເຂົ້າມາ. ນີ້​ແມ່ນ​ວິ​ທີ​ການ​ຊ້າ​ກ​່​ວາ​ ໃນ​ມັນ
ຮູບແບບເນື່ອງຈາກວ່າມັນຮຽກຮ້ອງໃຫ້ມີ scalers ທັງຫມົດທີ່ຈະ re-computed, ແຕ່ມັນອະນຸຍາດໃຫ້ກ້າວຫນ້າທາງດ້ານ
ການສະແດງອອກແບບເຄື່ອນໄຫວ.

ຄ່າເລີ່ມຕົ້ນແມ່ນ ໃນ​ມັນ.

ຮ້າຍກາດ
ກໍານົດການບິດເບືອນເພື່ອຫຼຸດຜ່ອນຜົນກະທົບຂອງແຖບວົງ. ຄ່າເລີ່ມຕົ້ນແມ່ນ 1 (ເປີດໃຊ້).

ລັກສະນະ
ກໍານົດລັກສະນະ vignette. ການຕັ້ງຄ່ານີ້ອະນຸຍາດໃຫ້ຫນຶ່ງສາມາດປັບຮູບຮ່າງຂອງ vignette ໄດ້.
ການຕັ້ງຄ່ານີ້ເປັນ SAR ຂອງການປ້ອນຂໍ້ມູນຈະເຮັດໃຫ້ເປັນ vignetting ສີ່ຫລ່ຽມ
ປະຕິບັດຕາມຂະຫນາດຂອງວິດີໂອ.

ຄ່າເລີ່ມຕົ້ນແມ່ນ "1/1".

ສຳ ນວນ

ໄດ້ alpha, x0 ແລະ y0 ການສະແດງອອກສາມາດມີພາລາມິເຕີຕໍ່ໄປນີ້.

w
h ຄວາມກວ້າງແລະຄວາມສູງຂອງວັດສະດຸປ້ອນ

n ຈໍານວນຂອງກອບການປ້ອນຂໍ້ມູນ, ເລີ່ມຈາກ 0

pts ເວລາ PTS (Presentation TimeStamp) ຂອງກອບວິດີໂອທີ່ຖືກກັ່ນຕອງ, ສະແດງອອກໃນ TB
ຫົວໜ່ວຍ, NAN ຖ້າບໍ່ໄດ້ກໍານົດ

r ອັດຕາເຟຣມຂອງວິດີໂອປ້ອນຂໍ້ມູນ, NAN ຖ້າອັດຕາເຟຣມປ້ອນຂໍ້ມູນບໍ່ຮູ້ຈັກ

t PTS (Presentation TimeStamp) ຂອງກອບວິດີໂອທີ່ຖືກກັ່ນຕອງ, ສະແດງອອກໃນວິນາທີ,
NAN ຖ້າບໍ່ໄດ້ກໍານົດ

tb ພື້ນຖານເວລາຂອງວິດີໂອທີ່ປ້ອນຂໍ້ມູນ

ຕົວຢ່າງ

· ນຳ ໃຊ້ຜົນກະທົບ vignetting ທີ່ເຂັ້ມແຂງງ່າຍດາຍ:

vignette=PI/4

· ເຮັດ​ໃຫ້​ມີ​ການ​ສັ່ນ​ສະ​ເທືອນ flickering​:

vignette='PI/4+random(1)*PI/50':eval=frame

vstack
ວາງວິດີໂອການປ້ອນຂໍ້ມູນໃນແນວຕັ້ງ.

ການຖ່າຍທອດທັງໝົດຕ້ອງມີຮູບແບບ pixels ລວງດຽວກັນ ແລະມີຄວາມກວ້າງດຽວກັນ.

ໃຫ້ສັງເກດວ່າການກັ່ນຕອງນີ້ໄວກວ່າການນໍາໃຊ້ overlay ແລະ pad ການກັ່ນຕອງເພື່ອສ້າງຜົນຜະລິດດຽວກັນ.

ການກັ່ນຕອງຍອມຮັບທາງເລືອກຕໍ່ໄປນີ້:

nb_inputs
ກໍານົດຈໍານວນການປ້ອນຂໍ້ມູນ. ຄ່າເລີ່ມຕົ້ນແມ່ນ 2.

w3fdif
Deinterlace ວິດີໂອປ້ອນຂໍ້ມູນ ("w3fdif" ຫຍໍ້ມາຈາກ "Weston 3 Field Deinterlacing Filter").

ອີງໃສ່ຂະບວນການອະທິບາຍໂດຍ Martin Weston ສໍາລັບ BBC R&D, ແລະປະຕິບັດໂດຍອີງໃສ່
de-interlace algorithm ຂຽນໂດຍ Jim Easterbrook ສໍາລັບ BBC R&D, ພາກສະຫນາມ Weston 3
ຕົວກອງ deinterlacing ໃຊ້ຄ່າສໍາປະສິດການກັ່ນຕອງທີ່ຄິດໄລ່ໂດຍ BBC R&D.

ມີສອງຊຸດຂອງຕົວຄູນການກັ່ນຕອງ, ດັ່ງນັ້ນເອີ້ນວ່າ "ງ່າຍດາຍ": ແລະ "ສະລັບສັບຊ້ອນ". ຊຸດໃດ
ຕົວຄູນການກັ່ນຕອງຖືກນໍາໃຊ້ສາມາດຖືກກໍານົດໂດຍການຖ່າຍທອດພາລາມິເຕີທາງເລືອກ:

ການກັ່ນຕອງ
ກໍານົດຄ່າສໍາປະສິດການກັ່ນຕອງ interlacing. ຍອມຮັບໜຶ່ງໃນຄ່າຕໍ່ໄປນີ້:

ງ່າຍດາຍ
ຄ່າສໍາປະສິດການກັ່ນຕອງງ່າຍດາຍ.

ສະລັບສັບຊ້ອນ
ກໍານົດຄ່າສໍາປະສິດການກັ່ນຕອງທີ່ຊັບຊ້ອນ.

ຄ່າເລີ່ມຕົ້ນແມ່ນ ສະລັບສັບຊ້ອນ.

deint
ລະບຸວ່າກອບໃດທີ່ຈະ deinterlace. ຍອມຮັບໜຶ່ງໃນຄ່າຕໍ່ໄປນີ້:

ທັງຫມົດ Deinterlace ກອບທັງຫມົດ,

ສັບສົນ
ສະເພາະເຟຣມ deinterlace ທີ່ຖືກໝາຍວ່າເປັນ interlaced.

ຄ່າເລີ່ມຕົ້ນແມ່ນ ທັງຫມົດ.

ຮູບແບບຄື້ນ
ຈໍພາບຄື້ນວິດີໂອ.

ຈໍສະແດງຜົນ waveform ວາງແຜນຄວາມເຂັ້ມຂອງອົງປະກອບສີ. ໂດຍຄ່າ luminance ເລີ່ມຕົ້ນເທົ່ານັ້ນ. ແຕ່ລະ
ຖັນຂອງຮູບແບບຄື້ນກົງກັບຖັນຂອງ pixels ໃນວິດີໂອຕົ້ນສະບັບ.

ມັນຍອມຮັບທາງເລືອກຕໍ່ໄປນີ້:

ຮູບແບບ, m
ສາມາດເປັນ "ແຖວ", ຫຼື "ຖັນ". ຄ່າເລີ່ມຕົ້ນແມ່ນ "ຖັນ". ໃນ​ຮູບ​ແບບ​ແຖວ​ເກັດ​ທີ່​ຢູ່​, ເສັ້ນ​ສະ​ແດງ​ໃນ​
ດ້ານຊ້າຍສະແດງຄ່າອົງປະກອບສີ 0 ແລະດ້ານຂວາສະແດງຄ່າ =
255. ໃນໂຫມດຖັນ, ດ້ານເທິງສະແດງເຖິງຄ່າອົງປະກອບສີ = 0 ແລະດ້ານລຸ່ມ
ແທນຄ່າ = 255.

ຄວາມ​ເຂັ້ມ​ແຂງ​, i
ກໍານົດຄວາມເຂັ້ມ. ຄ່າທີ່ນ້ອຍກວ່າແມ່ນເປັນປະໂຫຍດເພື່ອຊອກຫາຈໍານວນຄ່າດຽວກັນ
ຄວາມສະຫວ່າງຖືກແຈກຢາຍໃນທົ່ວແຖວ / ຖັນຂອງວັດສະດຸປ້ອນ. ຄ່າເລີ່ມຕົ້ນແມ່ນ 0.04. ອະນຸຍາດ
ຊ່ວງແມ່ນ [0, 1].

ບ່ອນແລກປ່ຽນ, r
ຕັ້ງໂໝດສະທ້ອນແສງ. 0 ຫມາຍຄວາມວ່າ unmirrored, 1 ຫມາຍຄວາມວ່າ mirrored. ໃນຮູບແບບ mirrored, ສູງຂຶ້ນ
ຄ່າຈະຖືກສະແດງຢູ່ເບື້ອງຊ້າຍສໍາລັບຮູບແບບ "ແຖວ" ແລະຢູ່ເທິງສຸດສໍາລັບ "ຖັນ"
ໂໝດ. ຄ່າເລີ່ມຕົ້ນແມ່ນ 1 (mirrored).

ການສະແດງ, d
ຕັ້ງໂໝດສະແດງຜົນ. ມັນຍອມຮັບຄ່າດັ່ງຕໍ່ໄປນີ້:

overlay
ນໍາສະເຫນີຂໍ້ມູນດຽວກັນກັບວ່າໃນ "ຂະບວນແຫ່", ຍົກເວັ້ນວ່າກາຟ
ອົງປະກອບຂອງສີທີ່ເປັນຕົວແທນແມ່ນຖືກທັບຊ້ອນໂດຍກົງໃສ່ກັນແລະກັນ.

ໂໝດສະແດງຜົນນີ້ເຮັດໃຫ້ມັນງ່າຍຂຶ້ນໃນການສັງເກດຄວາມແຕກຕ່າງຂອງພີ່ນ້ອງ ຫຼືຄວາມຄ້າຍຄືກັນໃນ
ພື້ນທີ່ທັບຊ້ອນກັນຂອງອົງປະກອບສີທີ່ຄວນຈະຄືກັນ, ເຊັ່ນ
ເປັນສີຂາວກາງ, ສີຂີ້ເຖົ່າ, ຫຼືສີດໍາ.

ຂະບວນແຫ່
ສະແດງກາຟແຍກຕ່າງຫາກສໍາລັບອົງປະກອບສີຂ້າງຄຽງໃນໂຫມດ "ແຖວ" ຫຼືຫນຶ່ງ
ຂ້າງລຸ່ມອື່ນໆໃນໂຫມດ "ຄໍລໍາ".

ການ​ນໍາ​ໃຊ້​ຮູບ​ແບບ​ການ​ສະ​ແດງ​ຜົນ​ນີ້​ເຮັດ​ໃຫ້​ມັນ​ງ່າຍ​ທີ່​ຈະ​ຈຸດ​ສີ​ທີ່​ໂຍນ​ໃນ​ຈຸດ​ເດັ່ນ​ແລະ​
shadows ຂອງ​ຮູບ​ພາບ​, ໂດຍ​ການ​ປຽບ​ທຽບ contours ຂອງ​ເສັ້ນ​ທາງ​ເທິງ​ແລະ​ລຸ່ມ​ສຸດ​ຂອງ​
ແຕ່ລະ waveform. ເນື່ອງຈາກສີຂາວ, ສີເທົາ, ແລະສີດໍາແມ່ນມີລັກສະນະເທົ່າທຽມກັນ
ຈໍານວນສີແດງ, ສີຂຽວ, ແລະສີຟ້າ, ພື້ນທີ່ທີ່ເປັນກາງຂອງຮູບຄວນສະແດງສາມ
ຮູບ​ແບບ​ຄື້ນ​ຄວາມ​ກວ້າງ / ຄວາມ​ສູງ​ປະ​ມານ​ເທົ່າ​ທຽມ​ກັນ​. ຖ້າບໍ່ແມ່ນ, ການແກ້ໄຂແມ່ນງ່າຍທີ່ຈະປະຕິບັດ
ໂດຍເຮັດໃຫ້ການປັບລະດັບຂອງສາມ waveforms.

ຄ່າເລີ່ມຕົ້ນແມ່ນ "ຂະບວນແຫ່".

ສ່ວນປະກອບ, c
ກໍານົດອົງປະກອບສີທີ່ຈະສະແດງ. ຄ່າເລີ່ມຕົ້ນແມ່ນ 1, ຊຶ່ງຫມາຍຄວາມວ່າພຽງແຕ່ luminance ຫຼືສີແດງ
ອົງປະກອບສີຖ້າການປ້ອນຂໍ້ມູນຢູ່ໃນ colorspace RGB. ຖ້າຖືກຕັ້ງຕົວຢ່າງເປັນ 7 ມັນຈະ
ສະແດງທັງໝົດ 3 (ຖ້າ) ອົງປະກອບສີທີ່ມີຢູ່.

ຊອງຈົດ ໝາຍ, e
none
ບໍ່ມີຊອງຈົດໝາຍ, ນີ້ແມ່ນຄ່າເລີ່ມຕົ້ນ.

ທັນທີ
ຊອງຈົດໝາຍທັນທີ, ຄ່າຕໍ່າສຸດ ແລະສູງສຸດທີ່ສະແດງຢູ່ໃນກຣາຟຈະງ່າຍດາຍ
ເຫັນໄດ້ເຖິງແມ່ນວ່າມີຄ່າ "ຂັ້ນຕອນ" ຂະຫນາດນ້ອຍ.

ຈຸດສູງ
ຖືຄ່າຕໍ່າສຸດ ແລະສູງສຸດທີ່ສະແດງຢູ່ໃນກຣາບຕະຫຼອດເວລາ. ວິທີນີ້ເຈົ້າສາມາດເຮັດໄດ້
ຍັງບໍ່ເຫັນຄ່າຂອບເຂດໂດຍບໍ່ໄດ້ເບິ່ງຮູບຄື່ນຢູ່ສະເໝີ.

ສູງສຸດ+ທັນທີ
ສູງສຸດແລະຊອງທັນທີລວມເຂົ້າກັນ.

ການກັ່ນຕອງ, f
ທາງລຸ່ມ
ບໍ່ມີການກັ່ນຕອງ, ນີ້ແມ່ນຄ່າເລີ່ມຕົ້ນ.

ແປ
Luma ແລະ chroma ລວມເຂົ້າກັນ.

ຫລັງ
ຄ້າຍຄືກັນກັບຂ້າງເທິງ, ແຕ່ສະແດງໃຫ້ເຫັນຄວາມແຕກຕ່າງລະຫວ່າງ chroma ສີຟ້າແລະສີແດງ.

ໂຄລາ
ສະແດງພຽງແຕ່ chroma.

ອາການຄັນ
ຄ້າຍຄືກັນກັບຂ້າງເທິງ, ແຕ່ສະແດງໃຫ້ເຫັນຄວາມແຕກຕ່າງລະຫວ່າງ chroma ສີຟ້າແລະສີແດງ.

ສີ
ສະແດງຄ່າສີຕົວຈິງຢູ່ໃນຮູບຄື່ນ.

xbr
ນຳໃຊ້ຕົວກອງກຳລັງຂະຫຍາຍຄຸນນະພາບສູງ xBR ທີ່ອອກແບບມາສຳລັບສິລະປະ pixels ລວງ. ມັນ
ປະຕິບັດຕາມຊຸດຂອງກົດລະບຽບການຊອກຄົ້ນຫາຂອບ, ເບິ່ງ
<http://www.libretro.com/forums/viewtopic.php?f=6&t=134>.

ມັນຍອມຮັບທາງເລືອກຕໍ່ໄປນີ້:

n ກໍານົດຂະຫນາດຂະຫນາດ: 2 ສໍາລັບ "2xBR", 3 ສໍາລັບ "3xBR" ແລະ 4 ສໍາລັບ "4xBR". ຄ່າເລີ່ມຕົ້ນແມ່ນ 3.

ຢາດີຟ
Deinterlace ວິດີໂອການປ້ອນຂໍ້ມູນ ("yadif" ຫມາຍຄວາມວ່າ "ແຕ່ການກັ່ນຕອງ deinterlacing ອື່ນ").

ມັນຍອມຮັບຕົວກໍານົດການດັ່ງຕໍ່ໄປນີ້:

ຮູບແບບການ
ຮູບແບບ interlacing ທີ່ຈະຮັບຮອງເອົາ. ມັນຍອມຮັບຫນຶ່ງໃນຄ່າຕໍ່ໄປນີ້:

0, send_frame
ຜົນຜະລິດຫນຶ່ງກອບສໍາລັບແຕ່ລະກອບ.

1, send_field
ຜົນຜະລິດຫນຶ່ງກອບສໍາລັບແຕ່ລະພາກສະຫນາມ.

2, send_frame_nospatial
ເຊັ່ນດຽວກັບ "send_frame", ແຕ່ມັນຂ້າມການກວດສອບ interlacing spatial.

3, send_field_nospatial
ເຊັ່ນດຽວກັບ "send_field", ແຕ່ມັນຂ້າມການກວດສອບ interlacing spatial.

ຄ່າເລີ່ມຕົ້ນແມ່ນ "send_frame".

ຄວາມສະເີພາບ
ຄວາມເທົ່າທຽມພາກສະຫນາມຮູບສົມມຸດສໍາລັບວິດີໂອທີ່ເຊື່ອມຕໍ່ກັນ. ມັນຍອມຮັບຫນຶ່ງໃນ
ຄ່າຕໍ່ໄປນີ້:

0, tff
ສົມມຸດວ່າພາກສະຫນາມເທິງແມ່ນທໍາອິດ.

1, BFF
ສົມມຸດວ່າຊ່ອງລຸ່ມແມ່ນທໍາອິດ.

-1, ອັດຕະໂນມັດ
ເປີດໃຊ້ການກວດຫາຄວາມສະເໝີພາບຂອງຊ່ອງຂໍ້ມູນອັດຕະໂນມັດ.

ຄ່າເລີ່ມຕົ້ນແມ່ນ "ອັດຕະໂນມັດ". ຖ້າ interlacing ບໍ່ຮູ້ຈັກຫຼືຕົວຖອດລະຫັດບໍ່ໄດ້
ສົ່ງອອກຂໍ້ມູນນີ້, ພາກສະຫນາມເທິງທໍາອິດຈະຖືກສົມມຸດ.

deint
ລະບຸວ່າກອບໃດທີ່ຈະ deinterlace. ຍອມຮັບໜຶ່ງໃນຄ່າຕໍ່ໄປນີ້:

0, ທັງຫມົດ
Deinterlace ເຟຣມທັງຫມົດ.

1, ສັບສົນ
ສະເພາະເຟຣມ deinterlace ທີ່ຖືກໝາຍວ່າເປັນ interlaced.

ຄ່າເລີ່ມຕົ້ນແມ່ນ "ທັງຫມົດ".

ຂະຫຍາຍ
ນຳໃຊ້ເອັບເຟັກ Zoom & Pan.

ຕົວກອງນີ້ຍອມຮັບຕົວເລືອກຕໍ່ໄປນີ້:

ຊູມ, z
ກໍານົດການຂະຫຍາຍການສະແດງອອກ. ຄ່າເລີ່ມຕົ້ນແມ່ນ 1.

x
y ກໍານົດການສະແດງອອກ x ແລະ y. ຄ່າເລີ່ມຕົ້ນແມ່ນ 0.

d ກໍານົດການສະແດງອອກໄລຍະເວລາໃນຈໍານວນຂອງກອບ. ນີ້ກໍານົດສໍາລັບຈໍານວນຈໍານວນ
ເອັບເຟັກເຟຣມຈະແກ່ຍາວເຖິງຮູບທີ່ປ້ອນເຂົ້າອັນດຽວ.

s ກໍານົດຂະຫນາດຮູບພາບຜົນຜະລິດ, ຄ່າເລີ່ມຕົ້ນແມ່ນ 'hd720'.

ແຕ່ລະສະແດງອອກສາມາດມີຄ່າຄົງທີ່ຕໍ່ໄປນີ້:

in_w, iw
ຄວາມກວ້າງຂອງການປ້ອນຂໍ້ມູນ.

in_h, ih
ຄວາມສູງຂອງວັດສະດຸປ້ອນ.

out_w, ow
ຄວາມກວ້າງຂອງຜົນຜະລິດ.

out_h, oh
ຄວາມສູງຂອງຜົນຜະລິດ.

in ການນັບກອບເຂົ້າ.

on ນັບກອບຜົນຜະລິດ.

x
y ການຄິດໄລ່ຫຼ້າສຸດ 'x' ແລະ 'y' ຕໍາແຫນ່ງຈາກ 'x' ແລະ 'y' ສະແດງອອກສໍາລັບການປ້ອນຂໍ້ມູນປະຈຸບັນ
ກອບ.

px
py 'x' ແລະ 'y' ຂອງກອບຜົນຜະລິດສຸດທ້າຍຂອງກອບການປ້ອນຂໍ້ມູນກ່ອນໜ້າ ຫຼື 0 ເມື່ອຍັງບໍ່ທັນມີເທື່ອ
ກອບດັ່ງກ່າວ (ກອບການປ້ອນຂໍ້ມູນທໍາອິດ).

ຂະຫຍາຍ
ການຊູມທີ່ຄຳນວນຫຼ້າສຸດຈາກການສະແດງຜົນ 'z' ສຳລັບກອບການປ້ອນຂໍ້ມູນປັດຈຸບັນ.

pzoom
ການຊູມທີ່ຄິດໄລ່ຫຼ້າສຸດຂອງກອບຜົນຜະລິດສຸດທ້າຍຂອງກອບການປ້ອນຂໍ້ມູນຜ່ານມາ.

ໄລຍະເວລາ
ຈໍາ​ນວນ​ຂອງ​ເຟຣມ​ຜົນ​ຜະ​ລິດ​ສໍາ​ລັບ​ກອບ​ປະ​ຈຸ​ບັນ​. ຄິດໄລ່ຈາກ 'd' expression for
ແຕ່ລະກອບການປ້ອນຂໍ້ມູນ.

ໄລຍະເວລາ
ຈໍານວນຂອງກອບຜົນຜະລິດທີ່ສ້າງຂຶ້ນສໍາລັບກອບການປ້ອນຂໍ້ມູນຜ່ານມາ

a ຈໍານວນສົມເຫດສົມຜົນ: ຄວາມກວ້າງຂອງວັດສະດຸປ້ອນ / ຄວາມສູງຂອງວັດສະດຸປ້ອນ

sar ອັດຕາສ່ວນຕົວຢ່າງ

dar ສະ​ແດງ​ອັດ​ຕາ​ສ່ວນ​

ຕົວຢ່າງ

· ຊູມເຂົ້າໄດ້ເຖິງ 1.5 ແລະເລື່ອນໄປພ້ອມໆກັນກັບບາງຈຸດໃກ້ກາງຮູບ:

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

· ຊູມເຂົ້າໄດ້ສູງສຸດ 1.5 ແລະເລື່ອນຢູ່ກາງຮູບສະເໝີ:

zoompan=z='min(zoom+0.0015,1.5)':d=700:x='iw/2-(iw/zoom/2)':y='ih/2-(ih/zoom/2)'

VIDEO ແຫຼ່ງຂໍ້ມູນ


ຂ້າງລຸ່ມນີ້ແມ່ນລາຍລະອຽດຂອງແຫຼ່ງວິດີໂອທີ່ມີຢູ່ໃນປະຈຸບັນ.

buffer
Buffer ເຟຣມວິດີໂອ, ແລະເຮັດໃຫ້ເຂົາເຈົ້າມີຢູ່ໃນຕ່ອງໂສ້ການກັ່ນຕອງ.

ແຫຼ່ງນີ້ແມ່ນມີຈຸດປະສົງຕົ້ນຕໍສໍາລັບການນໍາໃຊ້ໂຄງການ, ໂດຍສະເພາະໂດຍຜ່ານການໂຕ້ຕອບ
ກຳ ນົດໃນ libavfilter/vsrc_buffer.h.

ມັນຍອມຮັບຕົວກໍານົດການດັ່ງຕໍ່ໄປນີ້:

video_size
ລະບຸຂະຫນາດ (ຄວາມກວ້າງແລະຄວາມສູງ) ຂອງເຟຣມວິດີໂອທີ່ buffed. ສໍາລັບ syntax ຂອງ
ທາງເລືອກນີ້, ກວດເບິ່ງ "ວິດີໂອ ຂະໜາດ" ສ່ວນ in ໄດ້ ffmpeg-utils ຄູ່ມື.

width
ຄວາມກວ້າງຂອງວິດີໂອປ້ອນຂໍ້ມູນ.

ລະດັບຄວາມສູງ
ຄວາມສູງຂອງວິດີໂອປ້ອນຂໍ້ມູນ.

pix_fmt
ສະຕຣິງທີ່ເປັນຕົວແທນຂອງຮູບແບບ pixels ລວງຂອງເຟຣມວິດີໂອ buffed. ມັນອາດຈະເປັນ
ຕົວເລກທີ່ກົງກັບຮູບແບບ pixels ລວງ, ຫຼືຊື່ຮູບແບບ pixels ລວງ.

time_base
ລະບຸໄລຍະເວລາທີ່ສົມມຸດຂຶ້ນໂດຍການສະແຕມເວລາຂອງເຟຣມ buffed.

frame_rate
ລະບຸອັດຕາເຟຣມທີ່ຄາດໄວ້ສໍາລັບການຖ່າຍທອດວິດີໂອ.

pixel_aspect, sar
ອັດຕາສ່ວນຮູບຕົວຢ່າງ (pixel) ຂອງວິດີໂອປ້ອນຂໍ້ມູນ.

sws_param
ລະບຸຕົວກໍານົດທາງເລືອກທີ່ຈະໃຊ້ສໍາລັບຕົວກອງຂະຫນາດທີ່ອັດຕະໂນມັດ
ໃສ່ເມື່ອມີການກວດພົບການປ່ຽນແປງການປ້ອນຂໍ້ມູນໃນຂະໜາດ ຫຼືຮູບແບບການປ້ອນຂໍ້ມູນ.

ຍົກ​ຕົວ​ຢ່າງ:

buffer=width=320:height=240:pix_fmt=yuv410p:time_base=1/24:sar=1

ຈະສັ່ງໃຫ້ແຫຼ່ງຍອມຮັບເຟຣມວິດີໂອທີ່ມີຂະຫນາດ 320x240 ແລະມີຮູບແບບ
"yuv410p", ສົມມຸດວ່າ 1/24 ເປັນ timestamps timebase ແລະ square pixels (ລັກສະນະຕົວຢ່າງ 1:1.
ອັດຕາສ່ວນ). ເນື່ອງຈາກຮູບແບບ pixels ລວງທີ່ມີຊື່ "yuv410p" ກົງກັບຕົວເລກ 6 (ກວດເບິ່ງ.
enum AVPixelFormat ຄໍານິຍາມໃນ libavutil/pixfmt.h), ຕົວຢ່າງນີ້ກົງກັບ:

buffer=size=320x240:pixfmt=6:time_base=1/24:pixel_aspect=1/1

ອີກທາງເລືອກ, ທາງເລືອກສາມາດຖືກລະບຸເປັນສາຍແປ, ແຕ່ syntax ນີ້ແມ່ນ
ເຊົາສະໜັບສະໜູນ:

width:ລະດັບຄວາມສູງ:pix_fmt:time_base.num:time_base.den:pixel_aspect.num:pixel_aspect.den[:sws_param]

cellauto
ສ້າງຮູບແບບທີ່ສ້າງຂຶ້ນໂດຍ automaton cellular ປະຖົມ.

ສະຖານະເບື້ອງຕົ້ນຂອງ automaton cellular ສາມາດຖືກກໍານົດໂດຍຜ່ານ ຊື່​ເອ​ກະ​ສານ, ແລະ
ຮູບແບບ ທາງເລືອກ. ຖ້າຕົວເລືອກດັ່ງກ່າວບໍ່ໄດ້ຖືກລະບຸ, ສະຖານະເບື້ອງຕົ້ນແມ່ນຖືກສ້າງຂຶ້ນແບບສຸ່ມ.

ໃນແຕ່ລະກອບໃຫມ່, ແຖວໃຫມ່ໃນວິດີໂອແມ່ນເຕັມໄປດ້ວຍຜົນຂອງ cellular
automaton ລຸ້ນຕໍ່ໄປ. ພຶດຕິກໍາໃນເວລາທີ່ກອບທັງຫມົດແມ່ນຖືກກໍານົດໂດຍ
ເລື່ອນ ທາງເລືອກ.

ແຫຼ່ງນີ້ຍອມຮັບທາງເລືອກຕໍ່ໄປນີ້:

ຊື່​ເອ​ກະ​ສານ, f
ອ່ານສະຖານະ automaton cellular ເບື້ອງຕົ້ນ, ເຊັ່ນ: ແຖວເລີ່ມຕົ້ນ, ຈາກທີ່ກໍານົດໄວ້
ໄຟລ໌. ໃນໄຟລ໌, ແຕ່ລະຕົວອັກສອນທີ່ບໍ່ແມ່ນຊ່ອງຫວ່າງຖືກຖືວ່າເປັນເຊລທີ່ມີຊີວິດຢູ່, a
ແຖວໃໝ່ຈະຢຸດແຖວ, ແລະຕົວອັກສອນເພີ່ມເຕີມໃນໄຟລ໌ຈະຖືກລະເລີຍ.

ຮູບແບບ, p
ອ່ານສະຖານະ automaton cellular ເບື້ອງຕົ້ນ, ເຊັ່ນ: ແຖວເລີ່ມຕົ້ນ, ຈາກທີ່ກໍານົດໄວ້
string

ແຕ່ລະຕົວອັກສອນທີ່ບໍ່ແມ່ນຊ່ອງຫວ່າງຢູ່ໃນສະຕຣິງຖືກຖືວ່າເປັນເຊລທີ່ມີຊີວິດຢູ່, ເປັນແຖວໃໝ່
ຈະຢຸດແຖວ, ແລະຕົວອັກສອນເພີ່ມເຕີມໃນສະຕຣິງຈະຖືກລະເລີຍ.

ອັດຕາ, r
ກໍານົດອັດຕາວິດີໂອ, ນັ້ນແມ່ນຈໍານວນເຟຣມທີ່ຜະລິດຕໍ່ວິນາທີ. ຄ່າເລີ່ມຕົ້ນແມ່ນ 25.

Random_fill_ratio, ອັດຕາສ່ວນ
ກໍານົດອັດຕາສ່ວນການຕື່ມຂໍ້ມູນແບບສຸ່ມສໍາລັບແຖວ automaton cellular ເບື້ອງຕົ້ນ. ມັນເປັນການລອຍ
ຄ່າເລກຈຸດຕັ້ງແຕ່ 0 ຫາ 1, ຄ່າເລີ່ມຕົ້ນເປັນ 1/PHI.

ຕົວເລືອກນີ້ຖືກລະເລີຍເມື່ອໄຟລ໌ ຫຼືຮູບແບບຖືກລະບຸ.

Random_seed, ແກ່ນ
ກໍາ​ນົດ​ແກ່ນ​ສໍາ​ລັບ​ການ​ຕື່ມ​ຂໍ້​ມູນ​ແບບ​ສຸ່ມ​ແຖວ​ຕົ້ນ​ສະ​ບັບ​, ຕ້ອງ​ເປັນ​ຈໍາ​ນວນ​ເຕັມ​ລວມ​ຢູ່​ລະ​ຫວ່າງ​
0 ແລະ UINT32_MAX. ຖ້າບໍ່ໄດ້ລະບຸ, ຫຼືຕັ້ງຢ່າງຊັດເຈນເປັນ -1, ຕົວກອງຈະພະຍາຍາມ
ໃຊ້ແນວພັນແບບສຸ່ມທີ່ດີບົນພື້ນຖານຄວາມພະຍາຍາມທີ່ດີທີ່ສຸດ.

ກົດລະບຽບ
ກໍານົດກົດລະບຽບ cellular automaton, ມັນເປັນຕົວເລກຕັ້ງແຕ່ 0 ຫາ 255. ຄ່າເລີ່ມຕົ້ນ
ແມ່ນ 110.

ຂະ ໜາດ, s
ກໍານົດຂະຫນາດຂອງວິດີໂອຜົນຜະລິດໄດ້. ສໍາລັບ syntax ຂອງທາງເລືອກນີ້, ໃຫ້ກວດເບິ່ງ "ວິດີໂອ
ຂະໜາດ" ສ່ວນ in ໄດ້ ffmpeg-utils ຄູ່ມື.

If ຊື່​ເອ​ກະ​ສານ or ຮູບແບບ ໄດ້ຖືກລະບຸໄວ້, ຂະຫນາດແມ່ນຖືກກໍານົດໂດຍຄ່າເລີ່ມຕົ້ນກັບຄວາມກວ້າງຂອງ
ແຖວສະຖານະເບື້ອງຕົ້ນທີ່ລະບຸໄວ້, ແລະຄວາມສູງແມ່ນຕັ້ງເປັນ width * PHI.

If ຂະຫນາດ ຖືກກໍານົດໄວ້, ມັນຕ້ອງປະກອບດ້ວຍຄວາມກວ້າງຂອງສະຕຣິງຮູບແບບທີ່ກໍານົດໄວ້, ແລະ
ຮູບແບບທີ່ລະບຸຈະຖືກວາງໄວ້ກາງແຖວທີ່ໃຫຍ່ກວ່າ.

ຖ້າຊື່ໄຟລ໌ຫຼືສະຕຣິງຮູບແບບບໍ່ໄດ້ຖືກລະບຸ, ຄ່າຂອງຂະຫນາດຈະເລີ່ມຕົ້ນເປັນ
"320x518" (ໃຊ້ສໍາລັບສະຖານະເບື້ອງຕົ້ນທີ່ສ້າງຂຶ້ນແບບສຸ່ມ).

ເລື່ອນ
ຖ້າຕັ້ງເປັນ 1, ເລື່ອນຜົນໄດ້ຮັບຂຶ້ນເທິງ ເມື່ອແຖວທັງໝົດຢູ່ໃນຜົນໄດ້ຮັບແລ້ວ
ເຕັມແລ້ວ. ຖ້າຕັ້ງເປັນ 0, ແຖວທີ່ສ້າງຂຶ້ນໃໝ່ຈະຖືກຂຽນຢູ່ເທິງແຖວເທິງ
ພຽງແຕ່ຫຼັງຈາກແຖວລຸ່ມແມ່ນເຕັມໄປ. ຄ່າເລີ່ມຕົ້ນເປັນ 1.

start_full, ຢ່າງເຕັມທີ່
ຖ້າຕັ້ງເປັນ 1, ຕື່ມຂໍ້ມູນໃສ່ກັບແຖວທີ່ສ້າງຂຶ້ນກ່ອນໃຫ້ເຕັມຜົນຜະລິດ
ກອບທໍາອິດ. ນີ້ແມ່ນພຶດຕິກໍາເລີ່ມຕົ້ນ, ສໍາລັບການປິດການໃຊ້ງານກໍານົດຄ່າເປັນ 0.

stitch
ຖ້າຕັ້ງເປັນ 1, ຫຍິບຂອບແຖວຊ້າຍ ແລະຂວາເຂົ້າກັນ. ນີ້ແມ່ນຄ່າເລີ່ມຕົ້ນ
ພຶດຕິກໍາ, ສໍາລັບການປິດການທໍາງານ, ກໍານົດຄ່າເປັນ 0.

ຕົວຢ່າງ

· ອ່ານສະຖານະເບື້ອງຕົ້ນຈາກ ຮູບແບບ, ແລະລະບຸຜົນຜະລິດຂອງຂະຫນາດ 200x400.

cellauto=f=pattern:s=200x400

· ສ້າງແຖວເບື້ອງຕົ້ນແບບສຸ່ມທີ່ມີຄວາມກວ້າງ 200 ເຊລ, ດ້ວຍອັດຕາສ່ວນການຕື່ມ 2/3:

cellauto=ratio=2/3:s=200x200

·ສ້າງຮູບແບບທີ່ສ້າງຂຶ້ນໂດຍກົດລະບຽບ 18 ເລີ່ມຕົ້ນໂດຍຈຸລັງທີ່ມີຊີວິດດຽວໂດຍຈຸດສູນກາງ
ແຖວທຳອິດທີ່ມີຄວາມກວ້າງ 100:

cellauto=p=@s=100x400:full=0:rule=18

· ລະບຸຮູບແບບເບື້ອງຕົ້ນທີ່ລະອຽດກວ່າ:

cellauto=p='@@ @ @@':s=100x400:full=0:rule=18

mandelbrot
ສ້າງ Mandelbrot ທີ່ກໍານົດໄວ້ fractal, ແລະກ້າວຫນ້າຂະຫຍາຍໄປສູ່ຈຸດທີ່ລະບຸໄວ້
start_x ແລະ start_y.

ແຫຼ່ງນີ້ຍອມຮັບທາງເລືອກຕໍ່ໄປນີ້:

end_pts
ກໍານົດຄ່າ pts terminal. ຄ່າເລີ່ມຕົ້ນແມ່ນ 400.

end_scale
ກໍານົດຄ່າ terminal scale. ຕ້ອງເປັນຄ່າຈຸດລອຍ. ຄ່າເລີ່ມຕົ້ນແມ່ນ 0.3.

ໃນ
ກໍານົດຮູບແບບການໃສ່ສີພາຍໃນ, ນັ້ນແມ່ນສູດການຄິດໄລ່ທີ່ໃຊ້ເພື່ອແຕ້ມ Mandelbrot fractal
ພາກພື້ນ.

ມັນ​ຈະ​ຖື​ເອົາ​ຫນຶ່ງ​ໃນ​ຄຸນ​ຄ່າ​ດັ່ງ​ຕໍ່​ໄປ​ນີ້​:

ສີດໍາ
ຕັ້ງໂໝດສີດຳ.

convergence
ສະແດງໃຫ້ເຫັນເວລາຈົນກ່ວາ convergence.

mincol
ຕັ້ງສີໂດຍອີງໃສ່ຈຸດທີ່ໃກ້ທີ່ສຸດກັບຕົ້ນກໍາເນີດຂອງການຊໍ້າຄືນ.

ໄລຍະເວລາ
ຕັ້ງໂໝດໄລຍະເວລາ.

ຄ່າເລີ່ມຕົ້ນແມ່ນ mincol.

bailout
ກໍານົດມູນຄ່າ bailout. ຄ່າເລີ່ມຕົ້ນແມ່ນ 10.0.

maxiter
ກໍາ​ນົດ​ສູງ​ສຸດ​ຂອງ​ການ​ເຮັດ​ຊ້ຳ​ທີ່​ປະ​ຕິ​ບັດ​ໂດຍ​ວິ​ທີ​ການ​ຂອງ​ການ​ເຮັດ​ໃຫ້​. ຄ່າເລີ່ມຕົ້ນແມ່ນ
7189​.

ນອກ
ຕັ້ງຄ່າໂໝດສີພາຍນອກ. ມັນ​ຈະ​ຖື​ເອົາ​ຫນຶ່ງ​ໃນ​ຄຸນ​ຄ່າ​ດັ່ງ​ຕໍ່​ໄປ​ນີ້​:

iteration_count
ຕັ້ງໂໝດການຄິດໄລ່ຊ້ຳ.

normalized_iteration_count
ຕັ້ງໂຫມດການນັບຊ້ຳແບບປົກກະຕິ.

ຄ່າເລີ່ມຕົ້ນແມ່ນ normalized_iteration_count.

ອັດຕາ, r
ກໍານົດອັດຕາເຟມ, ສະແດງເປັນຈໍານວນເຟຣມຕໍ່ວິນາທີ. ຄ່າເລີ່ມຕົ້ນແມ່ນ "25".

ຂະ ໜາດ, s
ກໍານົດຂະຫນາດກອບ. ສໍາລັບ syntax ຂອງທາງເລືອກນີ້, ໃຫ້ກວດເບິ່ງ "ຂະຫນາດວິດີໂອ" ໃນພາກ
ffmpeg-utils ຄູ່ມື. ຄ່າເລີ່ມຕົ້ນແມ່ນ "640x480".

start_scale
ກໍານົດຄ່າຂະຫນາດເບື້ອງຕົ້ນ. ຄ່າເລີ່ມຕົ້ນແມ່ນ 3.0.

start_x
ກໍານົດຕໍາແຫນ່ງ x ເບື້ອງຕົ້ນ. ຕ້ອງເປັນຄ່າຈຸດລອຍລະຫວ່າງ -100 ຫາ 100.
ຄ່າເລີ່ມຕົ້ນແມ່ນ -0.743643887037158704752191506114774.

start_y
ກໍານົດຕໍາແຫນ່ງ y ເບື້ອງຕົ້ນ. ຕ້ອງເປັນຄ່າຈຸດລອຍລະຫວ່າງ -100 ຫາ 100.
ຄ່າເລີ່ມຕົ້ນແມ່ນ -0.131825904205311970493132056385139.

mptestsrc
ສ້າງຮູບແບບການທົດສອບຕ່າງໆ, ຕາມທີ່ສ້າງຂຶ້ນໂດຍການກັ່ນຕອງການທົດສອບ MPlayer.

ຂະໜາດຂອງວິດີໂອທີ່ສ້າງຂຶ້ນແມ່ນຄົງທີ່, ແລະແມ່ນ 256x256. ແຫຼ່ງນີ້ແມ່ນເປັນປະໂຫຍດໃນ
ໂດຍສະເພາະສໍາລັບການທົດສອບລັກສະນະການເຂົ້າລະຫັດ.

ແຫຼ່ງນີ້ຍອມຮັບທາງເລືອກຕໍ່ໄປນີ້:

ອັດຕາ, r
ລະບຸອັດຕາເຟຣມຂອງວິດີໂອທີ່ມາ, ເປັນຈໍານວນເຟຣມທີ່ສ້າງຂຶ້ນຕໍ່
ທີສອງ. ມັນຕ້ອງເປັນສະຕຣິງໃນຮູບແບບ frame_rate_num/frame_rate_den, ຈຳນວນເຕັມ
ຕົວເລກ, ຕົວເລກຈຸດລອຍ ຫຼືຕົວຫຍໍ້ອັດຕາເຟມວິດີໂອທີ່ຖືກຕ້ອງ. ຄ່າເລີ່ມຕົ້ນ
ມູນຄ່າແມ່ນ "25".

ໄລຍະເວລາ, d
ກໍານົດໄລຍະເວລາຂອງວິດີໂອທີ່ມາຈາກ. ເບິ່ງ ໄດ້ ທີ່ໃຊ້ເວລາ ໄລຍະເວລາ ສ່ວນ in ໄດ້
ffmpeg-utils(1​) ຄູ່ມື ສໍາລັບ syntax ທີ່ຍອມຮັບ.

ຖ້າບໍ່ໄດ້ລະບຸ, ຫຼືໄລຍະເວລາທີ່ສະແດງອອກເປັນລົບ, ວິດີໂອຄວນຈະເປັນ
ສ້າງຂຶ້ນຕະຫຼອດໄປ.

ທົດສອບ, t
ກໍານົດຈໍານວນຫຼືຊື່ຂອງການທົດສອບທີ່ຈະປະຕິບັດ. ການ​ທົດ​ສອບ​ສະ​ຫນັບ​ສະ​ຫນູນ​ແມ່ນ​:

dc_luma
dc_chroma
freq_luma
freq_chroma
amp_luma
amp_chroma
cbp
mv
ວົງ 1
ວົງ 2
ທັງຫມົດ

ຄ່າເລີ່ມຕົ້ນແມ່ນ "ທັງຫມົດ", ເຊິ່ງຈະວົງຈອນຜ່ານບັນຊີລາຍຊື່ຂອງການທົດສອບທັງຫມົດ.

ບາງຕົວຢ່າງ:

mptestsrc=t=dc_luma

ຈະສ້າງຮູບແບບການທົດສອບ "dc_luma".

free0r_src
ໃຫ້ແຫຼ່ງ frei0r.

ເພື່ອເປີດໃຊ້ການລວບລວມຕົວກອງນີ້, ທ່ານຈໍາເປັນຕ້ອງຕິດຕັ້ງສ່ວນຫົວ frei0r ແລະກໍາຫນົດຄ່າ
FFmpeg ກັບ "--enable-frei0r".

ແຫຼ່ງນີ້ຍອມຮັບຕົວກໍານົດການດັ່ງຕໍ່ໄປນີ້:

ຂະຫນາດ
ຂະຫນາດຂອງວິດີໂອທີ່ຈະສ້າງ. ສໍາລັບ syntax ຂອງທາງເລືອກນີ້, ໃຫ້ກວດເບິ່ງ "ວິດີໂອ
ຂະໜາດ" ສ່ວນ in ໄດ້ ffmpeg-utils ຄູ່ມື.

framerate
ອັດຕາເຟຣມຂອງວິດີໂອທີ່ສ້າງຂຶ້ນ. ມັນອາດຈະເປັນສາຍຂອງແບບຟອມ num/ໄດ້ ຫຼື
ຕົວຫຍໍ້ອັດຕາເຟຣມ.

filter_name
ຊື່ໄປຫາແຫຼ່ງ frei0r ທີ່ຈະໂຫລດ. ສໍາລັບຂໍ້ມູນເພີ່ມເຕີມກ່ຽວກັບ frei0r ແລະວິທີການ
ເພື່ອກໍານົດພາລາມິເຕີ, ອ່ານ free0r ພາກສ່ວນໃນເອກະສານການກັ່ນຕອງວິດີໂອ.

filter_params
ບັນຊີລາຍຊື່ຕົວກໍານົດການທີ່ແຍກອອກ '|' ເພື່ອສົ່ງໄປຫາແຫຼ່ງ frei0r.

ຕົວຢ່າງ, ເພື່ອສ້າງແຫຼ່ງ frei0r partik0l ທີ່ມີຂະຫນາດ 200x200 ແລະອັດຕາເຟຣມ 10.
ເຊິ່ງຖືກວາງຢູ່ເທິງຕົວກັ່ນຕອງການວາງທັບຊ້ອນການປ້ອນຂໍ້ມູນຫຼັກ:

frei0r_src=size=200x200:framerate=10:filter_name=partik0l:filter_params=1234 [ວາງຊ້ອນກັນ]; [in][overlay] overlay

ຊີວິດ
ສ້າງຮູບແບບຊີວິດ.

ແຫຼ່ງຂໍ້ມູນນີ້ແມ່ນອີງໃສ່ໂດຍທົ່ວໄປຂອງເກມຊີວິດຂອງ John Conway.

ແຫຼ່ງທີ່ມາເປັນຕົວແທນຂອງເສັ້ນຊີວິດ, ແຕ່ລະ pixels ເປັນຕົວແທນຂອງເຊັລທີ່ສາມາດຢູ່ໃນຫນຶ່ງ
ຂອງສອງລັດທີ່ເປັນໄປໄດ້, ມີຊີວິດຢູ່ຫຼືຕາຍ. ແຕ່ລະຫ້ອງພົວພັນກັບແປດປະເທດເພື່ອນບ້ານ,
ເຊິ່ງແມ່ນຈຸລັງທີ່ຢູ່ໃນແນວນອນ, ແນວຕັ້ງ, ຫຼືເສັ້ນຂວາງ.

ໃນແຕ່ລະການໂຕ້ຕອບ, ຕາຂ່າຍໄຟຟ້າ evolve ຕາມກົດລະບຽບທີ່ໄດ້ຮັບຮອງເອົາ, ເຊິ່ງລະບຸ
ຈຳນວນຂອງເຊລທີ່ມີຊີວິດຢູ່ໃກ້ຄຽງ ເຊິ່ງຈະເຮັດໃຫ້ເຊລຢູ່ລອດ ຫຼືເກີດມາ. ໄດ້ ກົດລະບຽບ ທາງເລືອກ
ອະນຸຍາດໃຫ້ຫນຶ່ງເພື່ອກໍານົດກົດລະບຽບທີ່ຈະຮັບຮອງເອົາ.

ແຫຼ່ງນີ້ຍອມຮັບທາງເລືອກຕໍ່ໄປນີ້:

ຊື່​ເອ​ກະ​ສານ, f
ຕັ້ງໄຟລ໌ທີ່ຈະອ່ານສະຖານະຕາຂ່າຍໄຟຟ້າເບື້ອງຕົ້ນ. ຢູ່ໃນໄຟລ໌, ແຕ່ລະຄົນທີ່ບໍ່ແມ່ນ.
ຕົວອັກສອນຊ່ອງຫວ່າງຖືກພິຈາລະນາເປັນເຊລທີ່ມີຊີວິດຢູ່, ແລະເສັ້ນໃໝ່ຖືກໃຊ້ເພື່ອຈຳກັດຕົວຕົນ
ໃນຕອນທ້າຍຂອງແຕ່ລະແຖວ.

ຖ້າຕົວເລືອກນີ້ບໍ່ໄດ້ຖືກລະບຸ, ຕາຂ່າຍໄຟຟ້າເບື້ອງຕົ້ນຈະຖືກສ້າງແບບສຸ່ມ.

ອັດຕາ, r
ກໍານົດອັດຕາວິດີໂອ, ນັ້ນແມ່ນຈໍານວນເຟຣມທີ່ຜະລິດຕໍ່ວິນາທີ. ຄ່າເລີ່ມຕົ້ນແມ່ນ 25.

Random_fill_ratio, ອັດຕາສ່ວນ
ກໍານົດອັດຕາສ່ວນການຕື່ມຂໍ້ມູນແບບສຸ່ມສໍາລັບຕາຂ່າຍໄຟຟ້າແບບສຸ່ມເບື້ອງຕົ້ນ. ມັນເປັນຕົວເລກທີ່ເລື່ອນໄດ້
ຄ່າຕັ້ງແຕ່ 0 ຫາ 1, ຄ່າເລີ່ມຕົ້ນເປັນ 1/PHI. ມັນຖືກລະເລີຍເມື່ອໄຟລ໌ຖືກລະບຸ.

Random_seed, ແກ່ນ
ກໍາ​ນົດ​ແກ່ນ​ສໍາ​ລັບ​ການ​ຕື່ມ​ຂໍ້​ມູນ​ໃສ່​ຕາ​ຂ່າຍ​ໄຟ​ຟ້າ Random ເບື້ອງ​ຕົ້ນ​, ຈະ​ຕ້ອງ​ເປັນ​ຈໍາ​ນວນ​ເຕັມ​ລວມ​ຢູ່​ໃນ​ລະ​ຫວ່າງ​
0 ແລະ UINT32_MAX. ຖ້າບໍ່ໄດ້ລະບຸ, ຫຼືຕັ້ງຢ່າງຊັດເຈນເປັນ -1, ຕົວກອງຈະພະຍາຍາມ
ໃຊ້ແນວພັນແບບສຸ່ມທີ່ດີບົນພື້ນຖານຄວາມພະຍາຍາມທີ່ດີທີ່ສຸດ.

ກົດລະບຽບ
ກໍານົດກົດລະບຽບຊີວິດ.

ກົດລະບຽບສາມາດຖືກກໍານົດດ້ວຍລະຫັດປະເພດ "SNS/BNB", ທີ່ NS ແລະ NB ມີ
ລໍາດັບຂອງຕົວເລກໃນຂອບເຂດ 0-8, NS ກໍານົດຈໍານວນຂອງຈຸລັງເພື່ອນບ້ານທີ່ມີຊີວິດຢູ່
ເຊິ່ງເຮັດໃຫ້ຈຸລັງທີ່ມີຊີວິດຊີວາຢູ່, ແລະ NB ຈໍານວນຂອງຈຸລັງເພື່ອນບ້ານທີ່ມີຊີວິດຢູ່
ເຮັດໃຫ້ຈຸລັງຕາຍກາຍເປັນຊີວິດ (ເຊັ່ນ: "ເກີດ"). "s" ແລະ "b" ສາມາດຖືກນໍາໃຊ້ໃນສະຖານທີ່
ຂອງ "S" ແລະ "B", ຕາມລໍາດັບ.

ອີກທາງເລືອກ, ກົດລະບຽບສາມາດຖືກກໍານົດໂດຍຈໍານວນ 18-bits. 9 bits ຄໍາສັ່ງສູງແມ່ນ
ໃຊ້ເພື່ອເຂົ້າລະຫັດສະຖານະຂອງເຊລຕໍ່ໄປຖ້າມັນມີຊີວິດຢູ່ສໍາລັບແຕ່ລະຈໍານວນເພື່ອນບ້ານທີ່ມີຊີວິດຢູ່
ຈຸລັງ, ຄໍາສັ່ງຕ່ໍາ bits ກໍານົດກົດລະບຽບສໍາລັບການ "ເກີດ" ຈຸລັງໃຫມ່. ບິດຄໍາສັ່ງທີ່ສູງຂຶ້ນ
ເຂົ້າລະຫັດສໍາລັບຈໍານວນຈຸລັງໃກ້ຄຽງທີ່ສູງຂຶ້ນ. ຕົວຢ່າງ 6153 =
"(12<<9)+9" ລະບຸກົດລະບຽບການຢູ່ລອດຂອງ 12 ແລະກົດລະບຽບການເກີດຂອງ 9, ເຊິ່ງກົງກັບ
ເຖິງ "S23/B03".

ຄ່າເລີ່ມຕົ້ນແມ່ນ "S23/B3", ຊຶ່ງເປັນເກມຕົ້ນສະບັບຂອງ Conway ຂອງກົດລະບຽບຊີວິດ, ແລະຈະ.
ຮັກສາຈຸລັງໃຫ້ມີຊີວິດຢູ່ຖ້າມັນມີ 2 ຫຼື 3 ຈຸລັງໃກ້ຄຽງທີ່ມີຊີວິດຢູ່, ແລະຈະເກີດຈຸລັງໃຫມ່ຖ້າ
ມີສາມຈຸລັງທີ່ມີຊີວິດຢູ່ປະມານຈຸລັງທີ່ຕາຍແລ້ວ.

ຂະ ໜາດ, s
ກໍານົດຂະຫນາດຂອງວິດີໂອຜົນຜະລິດໄດ້. ສໍາລັບ syntax ຂອງທາງເລືອກນີ້, ໃຫ້ກວດເບິ່ງ "ວິດີໂອ
ຂະໜາດ" ສ່ວນ in ໄດ້ ffmpeg-utils ຄູ່ມື.

If ຊື່​ເອ​ກະ​ສານ ໄດ້ຖືກລະບຸໄວ້, ຂະຫນາດໄດ້ຖືກຕັ້ງໄວ້ຕາມຄ່າເລີ່ມຕົ້ນເປັນຂະຫນາດດຽວກັນຂອງວັດສະດຸປ້ອນ
ໄຟລ໌. ຖ້າ ຂະຫນາດ ຖືກກໍານົດ, ມັນຕ້ອງມີຂະຫນາດທີ່ລະບຸໄວ້ໃນໄຟລ໌ປ້ອນຂໍ້ມູນ, ແລະ
ຕາຂ່າຍໄຟຟ້າເບື້ອງຕົ້ນທີ່ກຳນົດໄວ້ໃນໄຟລ໌ນັ້ນແມ່ນຢູ່ໃຈກາງໃນພື້ນທີ່ຜົນໄດ້ຮັບທີ່ໃຫຍ່ກວ່າ.

ຖ້າຊື່ໄຟລ໌ບໍ່ໄດ້ຖືກລະບຸ, ຄ່າຂະຫນາດເລີ່ມຕົ້ນເປັນ "320x240" (ໃຊ້ສໍາລັບ
ການສ້າງຕາຂ່າຍໄຟຟ້າເບື້ອງຕົ້ນແບບສຸ່ມ).

stitch
ຖ້າຕັ້ງເປັນ 1, ປັກຂອບຕາຂ່າຍຊ້າຍ ແລະຂວາເຂົ້າກັນ, ແລະດ້ານເທິງ ແລະລຸ່ມ
ແຄມ​ຍັງ​. ຄ່າເລີ່ມຕົ້ນເປັນ 1.

mold
ກໍານົດຄວາມໄວ mold cell. ຖ້າຕັ້ງ, ຈຸລັງຕາຍຈະໄປຈາກ ສີຕາຍ to mold_color ມີ
ຂັ້ນ​ຕອນ​ຂອງ mold. mold ສາມາດມີຄ່າຈາກ 0 ຫາ 255.

ສີຊີວິດ
ກໍານົດສີຂອງຈຸລັງທີ່ມີຊີວິດ (ຫຼືເກີດໃຫມ່).

ສີຕາຍ
ກໍານົດສີຂອງຈຸລັງຕາຍ. ຖ້າ mold ຖືກກໍານົດ, ນີ້ແມ່ນສີທໍາອິດທີ່ໃຊ້ເພື່ອເປັນຕົວແທນ
ຈຸລັງຕາຍ.

mold_color
ກໍານົດສີ mold, ສໍາລັບແນ່ນອນຈຸລັງຕາຍແລະ moldy.

ສໍາລັບ syntax ຂອງ 3 ທາງເລືອກສີເຫຼົ່ານີ້, ໃຫ້ກວດເບິ່ງສ່ວນ "ສີ" ໃນ ffmpeg-utils.
ຄູ່ມື.

ຕົວຢ່າງ

· ອ່ານຕາຕະລາງຈາກ ຮູບແບບ, ແລະວາງມັນໄວ້ກາງຕາຂ່າຍຂະໜາດ 300x300 pixels:

life=f=pattern:s=300x300

· ສ້າງຕາຂ່າຍໄຟຟ້າແບບສຸ່ມຂະໜາດ 200x200, ດ້ວຍອັດຕາສ່ວນການຕື່ມ 2/3:

life=ratio=2/3:s=200x200

· ລະບຸກົດລະບຽບກຳນົດເອງສຳລັບການພັດທະນາຕາໜ່າງທີ່ສ້າງຂຶ້ນແບບສຸ່ມ:

life=rule=S14/B34

· ຕົວ ຢ່າງ ເຕັມ ທີ່ ມີ ຜົນ ກະ ທົບ ການ ເສຍ ຊີ ວິດ ຊ້າ ( mold ) ການ ນໍາ ໃຊ້ 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

allrgb, allyuv, ສີ, haldclutsrc, nullsrc, rgbtestsrc, smptebars, smptehdbars, testsrc
ແຫຼ່ງ "allrgb" ສົ່ງຄືນກອບຂອງຂະຫນາດ 4096x4096 ຂອງສີ rgb ທັງຫມົດ.

ແຫຼ່ງ "allyuv" ສົ່ງຄືນກອບຂອງຂະຫນາດ 4096x4096 ຂອງສີ yuv ທັງຫມົດ.

ແຫຼ່ງ "ສີ" ສະຫນອງການໃສ່ສີທີ່ເປັນເອກະພາບ.

ແຫຼ່ງ "haldclutsrc" ສະຫນອງຕົວຕົນ Hald CLUT. ເບິ່ງນຳ ໜວດ ຕົວກອງ

ແຫຼ່ງ "nullsrc" ສົ່ງຄືນເຟຣມວິດີໂອທີ່ຍັງບໍ່ໄດ້ປະມວນຜົນ. ມັນເປັນປະໂຫຍດຕົ້ນຕໍທີ່ຈະຈ້າງ
ໃນ​ເຄື່ອງ​ມື​ການ​ວິ​ເຄາະ / debugging​, ຫຼື​ເປັນ​ແຫຼ່ງ​ສໍາ​ລັບ​ການ​ກັ່ນ​ຕອງ​ທີ່​ບໍ່​ສົນ​ໃຈ​ການ​ປ້ອນ​ຂໍ້​ມູນ​.

ແຫຼ່ງ "rgbtestsrc" ສ້າງຮູບແບບການທົດສອບ RGB ທີ່ເປັນປະໂຫຍດສໍາລັບການກວດສອບ RGB ທຽບກັບ BGR
ບັນຫາ. ທ່ານຄວນເຫັນແຖບສີແດງ, ສີຂຽວແລະສີຟ້າຈາກເທິງຫາລຸ່ມ.

ແຫຼ່ງ "smptebars" ສ້າງຮູບແບບແຖບສີ, ອີງຕາມວິສະວະກໍາ SMPTE
ຂໍ້ແນະນຳ EG 1-1990.

ແຫຼ່ງ "smptehdbars" ສ້າງຮູບແບບແຖບສີ, ອີງຕາມ SMPTE RP 219-2002.

ແຫຼ່ງ "testsrc" ສ້າງຮູບແບບວິດີໂອການທົດສອບ, ສະແດງຮູບແບບສີ, ​​ເລື່ອນ
gradient ແລະ timestamp ເປັນ. ນີ້ແມ່ນຈຸດປະສົງຕົ້ນຕໍເພື່ອຈຸດປະສົງການທົດສອບ.

ແຫຼ່ງຂໍ້ມູນຍອມຮັບຕົວກໍານົດການດັ່ງຕໍ່ໄປນີ້:

ສີ, c
ລະບຸສີຂອງແຫຼ່ງ, ມີພຽງແຕ່ຢູ່ໃນແຫຼ່ງ "ສີ". ສໍາລັບ syntax
ທາງເລືອກນີ້, ໃຫ້ກວດເບິ່ງສ່ວນ "ສີ" ໃນຄູ່ມື ffmpeg-utils.

ລະດັບ
ລະບຸລະດັບຂອງ Hald CLUT, ພຽງແຕ່ມີຢູ່ໃນແຫຼ່ງ "haldclutsrc". ກ
ລະດັບ "N" ສ້າງຮູບພາບຂອງ "N*N*N" ໂດຍ "N*N*N" pixels ເພື່ອໃຊ້ເປັນຕົວຕົນ.
matrix ສໍາລັບຕາຕະລາງຊອກຫາ 3D. ແຕ່​ລະ​ອົງ​ປະ​ກອບ​ແມ່ນ​ໄດ້​ລະ​ຫັດ​ໃນ​ຂະ​ຫນາດ "1/(N*N)​"​.

ຂະ ໜາດ, s
ລະບຸຂະໜາດຂອງວິດີໂອທີ່ມາ. ສໍາລັບ syntax ຂອງທາງເລືອກນີ້, ໃຫ້ກວດເບິ່ງ "ວິດີໂອ
ຂະໜາດ" ສ່ວນ in ໄດ້ ffmpeg-utils ຄູ່ມື. ຄ່າເລີ່ມຕົ້ນແມ່ນ "320x240".

ຕົວເລືອກນີ້ບໍ່ສາມາດໃຊ້ໄດ້ກັບຕົວກອງ "haldclutsrc".

ອັດຕາ, r
ລະບຸອັດຕາເຟຣມຂອງວິດີໂອທີ່ມາ, ເປັນຈໍານວນເຟຣມທີ່ສ້າງຂຶ້ນຕໍ່
ທີສອງ. ມັນຕ້ອງເປັນສະຕຣິງໃນຮູບແບບ frame_rate_num/frame_rate_den, ຈຳນວນເຕັມ
ຕົວເລກ, ຕົວເລກຈຸດລອຍ ຫຼືຕົວຫຍໍ້ອັດຕາເຟມວິດີໂອທີ່ຖືກຕ້ອງ. ຄ່າເລີ່ມຕົ້ນ
ມູນຄ່າແມ່ນ "25".

sar ກໍານົດອັດຕາສ່ວນຕົວຢ່າງຂອງວິດີໂອທີ່ມາຈາກ.

ໄລຍະເວລາ, d
ກໍານົດໄລຍະເວລາຂອງວິດີໂອທີ່ມາຈາກ. ເບິ່ງ ໄດ້ ທີ່ໃຊ້ເວລາ ໄລຍະເວລາ ສ່ວນ in ໄດ້
ffmpeg-utils(1​) ຄູ່ມື ສໍາລັບ syntax ທີ່ຍອມຮັບ.

ຖ້າບໍ່ໄດ້ລະບຸ, ຫຼືໄລຍະເວລາທີ່ສະແດງອອກເປັນລົບ, ວິດີໂອຄວນຈະເປັນ
ສ້າງຂຶ້ນຕະຫຼອດໄປ.

ທົດສະນິຍົມ, n
ກໍານົດຈໍານວນທົດສະນິຍົມທີ່ຈະສະແດງຢູ່ໃນເວລາ, ມີພຽງແຕ່ຢູ່ໃນ "testsrc" ເທົ່ານັ້ນ
ແຫຼ່ງ.

ຄ່າເວລາທີ່ສະແດງຈະກົງກັບຄ່າເວລາເດີມ
ຄູນດ້ວຍກຳລັງຂອງ 10 ຂອງຄ່າທີ່ລະບຸ. ຄ່າເລີ່ມຕົ້ນແມ່ນ 0.

ຕົວຢ່າງຕໍ່ໄປນີ້:

testsrc=duration=5.3:size=qcif:rate=10

ຈະສ້າງວິດີໂອທີ່ມີໄລຍະເວລາ 5.3 ວິນາທີ, ຂະຫນາດ 176x144 ແລະອັດຕາເຟມ.
ຂອງ 10 ເຟຣມຕໍ່ວິນາທີ.

ຄໍາອະທິບາຍຕາຕະລາງຕໍ່ໄປນີ້ຈະສ້າງແຫຼ່ງສີແດງທີ່ມີຄວາມຫນາແຫນ້ນຂອງ 0.2, ກັບ
ຂະຫນາດ "qcif" ແລະອັດຕາເຟຣມ 10 ເຟຣມຕໍ່ວິນາທີ.

color=c=[email protected]:s=qcif:r=10

ຖ້າເນື້ອຫາປ້ອນເຂົ້າຈະຖືກລະເລີຍ, "nullsrc" ສາມາດໃຊ້. ຄໍາສັ່ງຕໍ່ໄປນີ້
ສ້າງສິ່ງລົບກວນໃນຍົນ luminance ໂດຍການໃຊ້ຕົວກອງ "geq":

nullsrc=s=256x256, geq=random(1)*255:128:128

ຄໍາສັ່ງ

ແຫຼ່ງ "ສີ" ສະຫນັບສະຫນູນຄໍາສັ່ງຕໍ່ໄປນີ້:

c, ສີ
ກໍານົດສີຂອງຮູບພາບທີ່ສ້າງຂຶ້ນ. ຍອມຮັບ syntax ດຽວກັນຂອງທີ່ສອດຄ້ອງກັນ ສີ
ທາງເລືອກ.

VIDEO ລິ້ງ


ຂ້າງລຸ່ມນີ້ແມ່ນລາຍລະອຽດຂອງອ່າງລ້າງວິດີໂອທີ່ມີຢູ່ໃນປະຈຸບັນ.

buffersink
Buffer ເຟຣມວິດີໂອ, ແລະເຮັດໃຫ້ເຂົາເຈົ້າມີຢູ່ໃນຕອນທ້າຍຂອງກຣາຟການກັ່ນຕອງ.

ການຫລົ້ມຈົມນີ້ແມ່ນມີຈຸດປະສົງຕົ້ນຕໍສໍາລັບການນໍາໃຊ້ໂປຼແກຼມ, ໂດຍສະເພາະໂດຍຜ່ານການໂຕ້ຕອບ
ກຳ ນົດໃນ libavfilter/buffersink.h ຫຼືລະບົບທາງເລືອກ.

ມັນຍອມຮັບຕົວຊີ້ໄປຫາໂຄງສ້າງ AVBufferSinkContext, ເຊິ່ງກໍານົດການເຂົ້າມາ.
ຮູບແບບຂອງ buffers, ທີ່ຈະສົ່ງຜ່ານເປັນພາລາມິເຕີ opaque ກັບ "avfilter_init_filter" ສໍາລັບ
ການເລີ່ມຕົ້ນ.

nullsink
Null video sink: ບໍ່ເຮັດຫຍັງເລີຍກັບວິດີໂອທີ່ປ້ອນເຂົ້າ. ມັນເປັນປະໂຫຍດສ່ວນໃຫຍ່ເປັນ
ແມ່ແບບແລະສໍາລັບການນໍາໃຊ້ໃນການວິເຄາະ / debugging ເຄື່ອງມື.

MULTIMEDIA FILTERS


ຂ້າງລຸ່ມນີ້ແມ່ນລາຍລະອຽດຂອງຕົວກອງມັນຕິມີເດຍທີ່ມີຢູ່ໃນປັດຈຸບັນ.

Aphasemeter
ແປງ​ສຽງ​ເຂົ້າ​ໄປ​ເປັນ​ຜົນ​ຜະ​ລິດ​ວິ​ດີ​ໂອ​, ສະ​ແດງ​ໄລ​ຍະ​ສຽງ​.

ຕົວກອງຍອມຮັບຕົວເລືອກຕໍ່ໄປນີ້:

ອັດຕາ, r
ກໍານົດອັດຕາກອບຜົນຜະລິດ. ຄ່າເລີ່ມຕົ້ນແມ່ນ 25.

ຂະ ໜາດ, s
ກໍານົດຂະຫນາດວິດີໂອສໍາລັບຜົນຜະລິດໄດ້. ສໍາລັບ syntax ຂອງທາງເລືອກນີ້, ໃຫ້ກວດເບິ່ງ "ວິດີໂອ
ຂະໜາດ" ສ່ວນ in ໄດ້ ffmpeg-utils ຄູ່ມື. ຄ່າເລີ່ມຕົ້ນແມ່ນ "800x400".

rc
gc
bc ລະບຸສີແດງ, ສີຂຽວ, ກົງກັນຂ້າມສີຟ້າ. ຄ່າເລີ່ມຕົ້ນແມ່ນ 2, 7 ແລະ 1. ໄລຍະອະນຸຍາດ
ແມ່ນ "[0, 255]".

mpc ຕັ້ງສີທີ່ຈະໃຊ້ສໍາລັບການແຕ້ມໄລຍະປານກາງ. ຖ້າສີແມ່ນ "ບໍ່ມີ" ເຊິ່ງແມ່ນ
ຄ່າເລີ່ມຕົ້ນ, ບໍ່ມີຄ່າໄລຍະປານກາງຈະຖືກແຕ້ມ.

ຕົວກອງຍັງສົ່ງອອກ metadata ຂອງກອບ "lavfi.aphasemeter.phase" ເຊິ່ງສະແດງເຖິງຄ່າສະເລ່ຍ
ໄລຍະຂອງກອບສຽງໃນປະຈຸບັນ. ຄ່າຢູ່ໃນຂອບເຂດ "[-1, 1]". "-1" ຫມາຍຄວາມວ່າຊ້າຍແລະຂວາ
ຊ່ອງທາງແມ່ນຫມົດໄລຍະແລະ 1 ຫມາຍຄວາມວ່າຊ່ອງທາງແມ່ນຢູ່ໃນໄລຍະ.

ວົງໂຄຈອນ
ແປງສຽງປ້ອນເຂົ້າເປັນຜົນອອກຂອງວິດີໂອ, ເປັນຕົວແທນຂອງຂອບເຂດ vector ສຽງ.

ການກັ່ນຕອງຖືກນໍາໃຊ້ເພື່ອວັດແທກຄວາມແຕກຕ່າງລະຫວ່າງຊ່ອງທາງການຖ່າຍທອດສຽງສະເຕີລິໂອ. ກ
ສັນຍານ monoaural, ປະກອບດ້ວຍສັນຍານຊ້າຍແລະຂວາຄືກັນ, ຜົນໄດ້ຮັບໃນຊື່
ເສັ້ນຕັ້ງ. ການແຍກສະເຕີລິໂອໃດໆແມ່ນເຫັນໄດ້ວ່າເປັນການບ່ຽງເບນຈາກເສັ້ນນີ້, ການສ້າງ a
ຕົວເລກ Lissajous. ຖ້າເສັ້ນຊື່ (ຫຼື deviation ຈາກມັນ) ແຕ່ເສັ້ນນອນປະກົດວ່ານີ້
ຊີ້ໃຫ້ເຫັນວ່າຊ່ອງທາງຊ້າຍແລະຂວາແມ່ນອອກຈາກໄລຍະ.

ຕົວກອງຍອມຮັບຕົວເລືອກຕໍ່ໄປນີ້:

ຮູບແບບ, m
ຕັ້ງໂຫມດ vectorscope.

ຄ່າທີ່ມີຢູ່ແມ່ນ:

ລາສີ
Lissajous ໝຸນ 45 ອົງສາ.

lissajous_xy
ຄືກັນກັບຂ້າງເທິງແຕ່ບໍ່ໄດ້ຫມຸນ.

polar
ຮູບຮ່າງຄ້າຍຄືເຄິ່ງຫນຶ່ງຂອງວົງ.

ຄ່າເລີ່ມຕົ້ນແມ່ນ ລາສີ.

ຂະ ໜາດ, s
ກໍານົດຂະຫນາດວິດີໂອສໍາລັບຜົນຜະລິດໄດ້. ສໍາລັບ syntax ຂອງທາງເລືອກນີ້, ໃຫ້ກວດເບິ່ງ "ວິດີໂອ
ຂະໜາດ" ສ່ວນ in ໄດ້ ffmpeg-utils ຄູ່ມື. ຄ່າເລີ່ມຕົ້ນແມ່ນ "400x400".

ອັດຕາ, r
ກໍານົດອັດຕາກອບຜົນຜະລິດ. ຄ່າເລີ່ມຕົ້ນແມ່ນ 25.

rc
gc
bc
ac ລະບຸຄວາມຄົມຊັດຂອງສີແດງ, ສີຂຽວ, ສີຟ້າ ແລະອັນຟາ. ຄ່າເລີ່ມຕົ້ນແມ່ນ 40, 160, 80 ແລະ
255. ໄລຍະອະນຸຍາດແມ່ນ "[0, 255]".

rf
gf
bf
af ລະບຸສີແດງ, ສີຂຽວ, ສີຟ້າ ແລະອັນຟາຈືດໆ. ຄ່າເລີ່ມຕົ້ນແມ່ນ 15, 10, 5 ແລະ 5.
ໄລຍະທີ່ອະນຸຍາດແມ່ນ "[0, 255]".

ຂະຫຍາຍ
ຕັ້ງຄ່າປັດໄຈການຊູມ. ຄ່າເລີ່ມຕົ້ນແມ່ນ 1. ໄລຍະອະນຸຍາດແມ່ນ "[1, 10]".

ຕົວຢ່າງ

·ຕົວຢ່າງທີ່ສົມບູນໂດຍໃຊ້ 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
ສົມທົບການຖ່າຍທອດສຽງ ແລະວິດີໂອ, ຮວມພວກມັນເຂົ້າກັນເທື່ອລະອັນ.

ການກັ່ນຕອງເຮັດວຽກຢູ່ໃນພາກສ່ວນຂອງວິດີໂອ synchronized ແລະສະຕຣີມສຽງ. ທຸກພາກສ່ວນຕ້ອງ
ມີຈໍານວນສະຕຣີມດຽວກັນຂອງແຕ່ລະປະເພດ, ແລະອັນນັ້ນຈະເປັນຈໍານວນສາຍນ້ໍາ
ຢູ່ທີ່ຜົນຜະລິດ.

ຕົວກອງຍອມຮັບຕົວເລືອກຕໍ່ໄປນີ້:

n ກໍານົດຈໍານວນຂອງສ່ວນ. ຄ່າເລີ່ມຕົ້ນແມ່ນ 2.

v ກໍາ​ນົດ​ຈໍາ​ນວນ​ຂອງ​ການ​ສະ​ຕ​ຣີມ​ວິ​ດີ​ໂອ​ຜົນ​ຜະ​ລິດ​, ນັ້ນ​ແມ່ນ​ຈໍາ​ນວນ​ຂອງ​ການ​ສະ​ຕ​ຣີມ​ວິ​ດີ​ໂອ​ໃນ​
ແຕ່ລະພາກສ່ວນ. ຄ່າເລີ່ມຕົ້ນແມ່ນ 1.

a ກໍາ​ນົດ​ຈໍາ​ນວນ​ຂອງ​ການ​ສະ​ຕ​ຣີມ​ສຽງ​ອອກ​, ນັ້ນ​ແມ່ນ​ຈໍາ​ນວນ​ຂອງ​ການ​ສະ​ຕ​ຣີມ​ສຽງ​ໃນ​
ແຕ່ລະພາກສ່ວນ. ຄ່າເລີ່ມຕົ້ນແມ່ນ 0.

ບໍ່ປອດໄພ
ເປີດໃຊ້ໂໝດບໍ່ປອດໄພ: ຢ່າລົ້ມເຫລວຖ້າ segments ມີຮູບແບບທີ່ແຕກຕ່າງກັນ.

ການກັ່ນຕອງມີ v+a ຜົນໄດ້ຮັບ: ທໍາອິດ v ຜົນຜະລິດວິດີໂອ, ຈາກນັ້ນ a ສຽງອອກ.

ມີ nx(v+a) inputs : first inputs for the first segment , ໃນຄໍາສັ່ງດຽວກັນກັບ
ຜົນໄດ້ຮັບ, ຫຼັງຈາກນັ້ນວັດສະດຸປ້ອນສໍາລັບພາກສ່ວນທີສອງ, ແລະອື່ນໆ.

ການຖ່າຍທອດທີ່ກ່ຽວຂ້ອງບໍ່ມີໄລຍະເວລາດຽວກັນສະເໝີໄປ, ດ້ວຍເຫດຜົນຕ່າງໆ
ລວມທັງຂະຫນາດກອບ codec ຫຼືການຂຽນ sloppy. ສໍາລັບເຫດຜົນນັ້ນ, ທີ່ກ່ຽວຂ້ອງ synchronized
streams (ເຊັ່ນ: ວິດີໂອແລະສຽງຂອງມັນ) ຄວນຈະ concatenated ໃນເວລາດຽວກັນ. concat ໄດ້
ການກັ່ນຕອງຈະໃຊ້ໄລຍະເວລາຂອງການຖ່າຍທອດທີ່ຍາວທີ່ສຸດໃນແຕ່ລະພາກສ່ວນ (ຍົກເວັ້ນອັນສຸດທ້າຍ),
ແລະຖ້າຈໍາເປັນ, ແຜ່ນສຽງສັ້ນກວ່າ streams ດ້ວຍຄວາມງຽບ.

ເພື່ອໃຫ້ຕົວກອງນີ້ເຮັດວຽກໄດ້ຢ່າງຖືກຕ້ອງ, ທຸກພາກສ່ວນຈະຕ້ອງເລີ່ມຕົ້ນທີ່ເວລາ 0.

ທຸກສາຍນ້ໍາທີ່ສອດຄ້ອງກັນຕ້ອງມີພາລາມິເຕີດຽວກັນໃນທຸກພາກສ່ວນ; ການກັ່ນຕອງ
ລະບົບຈະເລືອກຮູບແບບ pixel ທົ່ວໄປໂດຍອັດຕະໂນມັດສໍາລັບການຖ່າຍທອດວິດີໂອ, ແລະແບບທົ່ວໄປ
ຮູບແບບຕົວຢ່າງ, ອັດຕາຕົວຢ່າງແລະຮູບແບບຊ່ອງສໍາລັບການຖ່າຍທອດສຽງ, ແຕ່ການຕັ້ງຄ່າອື່ນໆ, ເຊັ່ນ
ເປັນຄວາມລະອຽດ, ຜູ້ໃຊ້ຕ້ອງຖືກປ່ຽນຢ່າງຈະແຈ້ງ.

ອັດຕາເຟຣມທີ່ແຕກຕ່າງກັນແມ່ນເປັນທີ່ຍອມຮັບໄດ້ແຕ່ຈະສົ່ງຜົນໃຫ້ອັດຕາກອບການປ່ຽນແປງທີ່ຜົນຜະລິດ; ເປັນ
ໃຫ້ແນ່ໃຈວ່າຈະກໍາຫນົດຄ່າໄຟລ໌ຜົນຜະລິດເພື່ອຈັດການກັບມັນ.

ຕົວຢ່າງ

· ປະກອບການເປີດ, ຕອນ ແລະຕອນທ້າຍ, ທັງໝົດເປັນສອງພາສາ (ວິດີໂອໃນ
ສະຕຣີມ 0, ສຽງໃນສະຕຣີມ 1 ແລະ 2):

ffmpeg -i open.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

· ເຊື່ອມ​ຕໍ່​ສອງ​ພາກ​ສ່ວນ​, ການ​ຈັດ​ການ​ສຽງ​ແລະ​ວິ​ດີ​ໂອ​ແຍກ​ຕ່າງ​ຫາກ​, ການ​ນໍາ​ໃຊ້ (a​) ຮູບ​ເງົາ​
ແຫຼ່ງຂໍ້ມູນ, ແລະປັບການແກ້ໄຂ:

ຮູບເງົາ=part1.mp4, scale=512:288 [v1] ; amovie=part1.mp4 [a1] ;
ຮູບເງົາ=part2.mp4, scale=512:288 [v2] ; amovie=part2.mp4 [a2] ;
[v1​] [v2​] concat [outv​] ; [a1] [a2] concat=v=0:a=1 [outa]

ຈື່ໄວ້ວ່າ desync ຈະເກີດຂຶ້ນຢູ່ທີ່ stitch ຖ້າສຽງແລະວິດີໂອການຖ່າຍທອດບໍ່
ມີໄລຍະເວລາດຽວກັນແທ້ໃນໄຟລ໌ທໍາອິດ.

ebur128
ຕົວກອງເຄື່ອງສະແກນ EBU R128. ການກັ່ນຕອງນີ້ໃຊ້ເວລາການຖ່າຍທອດສຽງເປັນ input ແລະ outputs ມັນ
ບໍ່ປ່ຽນແປງ. ໂດຍຄ່າເລີ່ມຕົ້ນ, ມັນຈະບັນທຶກຂໍ້ຄວາມຢູ່ທີ່ຄວາມຖີ່ຂອງ 10Hz ກັບ Momentary
ຄວາມດັງ (ກຳນົດໂດຍ "M"), ຄວາມດັງໃນໄລຍະສັ້ນ ("S"), ຄວາມດັງແບບປະສົມປະສານ ("ຂ້ອຍ") ແລະ
ຊ່ວງຄວາມດັງ ("LRA").

ການກັ່ນຕອງຍັງມີຜົນຜະລິດວິດີໂອ (ເບິ່ງ ວິດີໂອ option) ກັບເສັ້ນສະແດງເວລາທີ່ແທ້ຈິງກັບ
ສັງເກດເບິ່ງວິວັດທະນາການຂອງ loudness. ກຣາບຟິກປະກອບດ້ວຍຂໍ້ຄວາມທີ່ບັນທຶກໄວ້ຂ້າງເທິງ,
ສະນັ້ນມັນບໍ່ໄດ້ຖືກພິມອອກອີກເມື່ອຕົວເລືອກນີ້ຖືກຕັ້ງ, ເວັ້ນເສຍແຕ່ວ່າບັນທຶກ verbose ຖືກກໍານົດ.
ພື້ນທີ່ກາຟຕົ້ນຕໍປະກອບດ້ວຍຄວາມດັງໃນໄລຍະສັ້ນ (3 ວິນາທີຂອງການວິເຄາະ), ແລະ
ເຄື່ອງວັດແທກຢູ່ເບື້ອງຂວາແມ່ນສໍາລັບຄວາມດັງໃນຂະນະດຽວ (400 ມິນລິວິນາທີ).

ຂໍ້ມູນເພີ່ມເຕີມກ່ຽວກັບ Loudness Recommendation EBU R128 on
<http://tech.ebu.ch/loudness>.

ຕົວກອງຍອມຮັບຕົວເລືອກຕໍ່ໄປນີ້:

ວິດີໂອ
ກະ​ຕຸ້ນ​ຜົນ​ຜະ​ລິດ​ວິ​ດີ​ໂອ​ໄດ້​. ການຖ່າຍທອດສຽງແມ່ນຜ່ານບໍ່ປ່ຽນແປງບໍ່ວ່າຈະເປັນທາງເລືອກນີ້
ຕັ້ງ ຫຼື ບໍ່. ການຖ່າຍທອດວິດີໂອຈະເປັນກະແສອອກຄັ້ງທຳອິດຖ້າເປີດໃຊ້ງານ. ຄ່າເລີ່ມຕົ້ນແມ່ນ
0.

ຂະຫນາດ
ກໍານົດຂະຫນາດວິດີໂອ. ທາງເລືອກນີ້ແມ່ນສໍາລັບວິດີໂອເທົ່ານັ້ນ. ສໍາລັບ syntax ຂອງທາງເລືອກນີ້,
ກວດເບິ່ງ "ວິດີໂອ ຂະໜາດ" ສ່ວນ in ໄດ້ ffmpeg-utils ຄູ່ມື. ຄ່າເລີ່ມຕົ້ນ ແລະຕໍ່າສຸດ
ຄວາມລະອຽດແມ່ນ "640x480".

meter
ຕັ້ງຄ່າເຄື່ອງວັດແທກຂະໜາດ EBU. ຄ່າເລີ່ມຕົ້ນແມ່ນ 9. ຄ່າທົ່ວໄປແມ່ນ 9 ແລະ 18, ຕາມລໍາດັບ
ເຄື່ອງວັດແທກຂະໜາດ EBU +9 ແລະເຄື່ອງວັດແທກຂະໜາດ EBU +18. ຄ່າຈຳນວນເຕັມອື່ນໆລະຫວ່າງໄລຍະນີ້
ຖືກອະນຸຍາດ.

metadata
ກໍານົດການສັກຢາ metadata. ຖ້າຕັ້ງເປັນ 1, ການປ້ອນຂໍ້ມູນສຽງຈະຖືກແບ່ງອອກເປັນ 100ms
ກອບຜົນຜະລິດ, ແຕ່ລະພວກມັນປະກອບດ້ວຍຂໍ້ມູນຄວາມດັງຕ່າງໆໃນ metadata. ທັງໝົດ
ກະແຈ metadata ຖືກນຳໜ້າດ້ວຍ "lavfi.r128."

ຄ່າເລີ່ມຕົ້ນແມ່ນ 0.

ກອບ
ບັງຄັບລະດັບການບັນທຶກກອບ.

ຄ່າທີ່ມີຢູ່ແມ່ນ:

ຂໍ້ມູນ
ລະດັບການບັນທຶກຂໍ້ມູນ

ຄຳເວົ້າ
ລະດັບການບັນທຶກ verbose

ໂດຍຄ່າເລີ່ມຕົ້ນ, ລະດັບການບັນທຶກຖືກຕັ້ງເປັນ ຂໍ້ມູນທີ່ຢູ່ ຖ້າຫາກວ່າ ວິດີໂອ ຫຼື metadata ທາງເລືອກແມ່ນ
ຕັ້ງ, ມັນປ່ຽນໄປ ຄຳເວົ້າ.

ຈຸດສູງ
ຕັ້ງໂໝດສູງສຸດ.

ຮູບແບບທີ່ມີຢູ່ສາມາດຖືກລວບລວມ (ທາງເລືອກແມ່ນປະເພດ "ທຸງ"). ຄ່າທີ່ເປັນໄປໄດ້ແມ່ນ:

none
ປິດການນຳໃຊ້ໂໝດສູງສຸດໃດໆກໍຕາມ (ຄ່າເລີ່ມຕົ້ນ).

ຕົວຢ່າງ
ເປີດໃຊ້ຮູບແບບຕົວຢ່າງສູງສຸດ.

ໂຫມດສູງສຸດທີ່ງ່າຍດາຍຊອກຫາຄ່າຕົວຢ່າງທີ່ສູງກວ່າ. ມັນບັນທຶກຂໍ້ຄວາມສໍາລັບ
ຕົວຢ່າງ-ສູງສຸດ (ກໍານົດໂດຍ "SPK").

ທີ່ແທ້ຈິງ
ເປີດໃຊ້ໂໝດ true-peak.

ຖ້າເປີດໃຊ້, ການຄົ້ນຫາສູງສຸດແມ່ນເຮັດຢູ່ໃນສະບັບ over-sampled ຂອງກະແສການປ້ອນຂໍ້ມູນ
ສໍາລັບຄວາມຖືກຕ້ອງສູງສຸດທີ່ດີຂຶ້ນ. ມັນບັນທຶກຂໍ້ຄວາມສໍາລັບ true-peak. (ກໍານົດໂດຍ "TPK")
ແລະ true-peak ຕໍ່ກອບ (ກໍານົດໂດຍ "FTPK"). ໂຫມດນີ້ຮຽກຮ້ອງໃຫ້ມີການກໍ່ສ້າງດ້ວຍ
"libswresample".

ຕົວຢ່າງ

·ກາຟທີ່ໃຊ້ເວລາທີ່ແທ້ຈິງການນໍາໃຊ້ ffplay, ດ້ວຍເຄື່ອງວັດແທກລະດັບ EBU +18:

ffplay -f lavfi -i "amovie=input.mp3,ebur128=video=1:meter=18 [out0][out1]"

·ດໍາເນີນການວິເຄາະດ້ວຍ ffmpeg:

ffmpeg -nostats -i input.mp3 -filter_complex ebur128 -f null -

ແຊກແຊງ, ຫ່າງກັນ
ແຊກເຟຣມຊົ່ວຄາວຈາກການປ້ອນຂໍ້ມູນຫຼາຍອັນ.

"interleave" ເຮັດວຽກກັບການປ້ອນຂໍ້ມູນວິດີໂອ, "ainterleave" ກັບສຽງ.

ຕົວກອງເຫຼົ່ານີ້ອ່ານເຟຣມຈາກວັດສະດຸປ້ອນເຂົ້າຫຼາຍອັນ ແລະສົ່ງກອບແຖວທີ່ເກົ່າແກ່ທີ່ສຸດໄປໃສ່
ຜົນຜະລິດ.

ສະຕຣີມການປ້ອນຂໍ້ມູນຕ້ອງມີການກຳນົດຄ່າເວລາເຟຣມທີ່ເພີ່ມຂຶ້ນຢ່າງເປັນ monotonically.

ເພື່ອສົ່ງໜຶ່ງເຟຣມໃຫ້ຜົນຜະລິດ, ຕົວກອງເຫຼົ່ານີ້ຈະຕ້ອງຈັດຄິວຢ່າງໜ້ອຍໜຶ່ງກອບ
ສໍາລັບການປ້ອນຂໍ້ມູນແຕ່ລະອັນ, ດັ່ງນັ້ນເຂົາເຈົ້າບໍ່ສາມາດເຮັດວຽກໄດ້ໃນກໍລະນີທີ່ການປ້ອນຂໍ້ມູນຫນຶ່ງຍັງບໍ່ທັນໄດ້ຢຸດເຊົາແລະຈະບໍ່
ໄດ້ຮັບກອບຂາເຂົ້າ.

ສໍາລັບຕົວຢ່າງ, ພິຈາລະນາກໍລະນີທີ່ຫນຶ່ງ input ເປັນ "ເລືອກ" ການກັ່ນຕອງທີ່ສະເຫມີຫຼຸດລົງການປ້ອນຂໍ້ມູນ
ກອບ. ຕົວກອງ "interleave" ຈະສືບຕໍ່ອ່ານຈາກວັດສະດຸປ້ອນນັ້ນ, ແຕ່ມັນຈະບໍ່ເປັນ
ສາມາດສົ່ງເຟຣມໃໝ່ໄປຫາຜົນຜະລິດໄດ້ຈົນກ່ວາການປ້ອນຂໍ້ມູນຈະສົ່ງສັນຍານທ້າຍກະແສ.

ນອກຈາກນີ້, ອີງຕາມການ synchronization ວັດສະດຸປ້ອນ, ຕົວກອງຈະຫຼຸດລົງເຟຣມໃນກໍລະນີຫນຶ່ງ inputs
ໄດ້ຮັບກອບຫຼາຍກ່ວາອັນອື່ນ, ແລະແຖວແມ່ນເຕັມແລ້ວ.

ຕົວກອງເຫຼົ່ານີ້ຍອມຮັບທາງເລືອກຕໍ່ໄປນີ້:

nb_inputs, n
ກໍານົດຈໍານວນຂອງວັດສະດຸປ້ອນທີ່ແຕກຕ່າງກັນ, ມັນເປັນ 2 ໂດຍຄ່າເລີ່ມຕົ້ນ.

ຕົວຢ່າງ

· Interleave ກອບເປັນຂອງສາຍນ້ໍາທີ່ແຕກຕ່າງກັນໂດຍນໍາໃຊ້ ffmpeg:

ffmpeg -i bambi.avi -i pr0n.mkv -filter_complex "[0:v][1:v] interleave" out.avi

· ເພີ່ມຜົນກະທົບການມົວ flickering:

select='if(gt(random(0), 0.2), 1, 2)':n=2 [tmp], boxblur=2:2, [tmp] interleave

ອະ​ນຸ​ຍາດ​ໃຫ້​, ຊ່ອງຫວ່າງ
ກໍານົດສິດອ່ານ / ຂຽນສໍາລັບກອບຜົນຜະລິດ.

ການກັ່ນຕອງເຫຼົ່ານີ້ສ່ວນໃຫຍ່ແມ່ນແນໃສ່ນັກພັດທະນາເພື່ອທົດສອບເສັ້ນທາງໂດຍກົງໃນຕົວກອງຕໍ່ໄປນີ້
ໃນ filtergraph.

ຕົວກອງຍອມຮັບຕົວເລືອກຕໍ່ໄປນີ້:

ຮູບແບບການ
ເລືອກຮູບແບບການອະນຸຍາດ.

ມັນຍອມຮັບຄ່າດັ່ງຕໍ່ໄປນີ້:

none
ບໍ່​ໄດ້​ເຮັດ​ຫຍັງ. ນີ້ແມ່ນຄ່າເລີ່ມຕົ້ນ.

ro ຕັ້ງຂອບຜົນຜະລິດທັງໝົດແບບອ່ານເທົ່ານັ້ນ.

rw ກໍານົດກອບຜົນຜະລິດທັງຫມົດທີ່ຂຽນໄດ້ໂດຍກົງ.

toggle
ເຮັດໃຫ້ກອບອ່ານໄດ້ເທົ່ານັ້ນຖ້າຂຽນໄດ້, ແລະຂຽນໄດ້ຖ້າອ່ານເທົ່ານັ້ນ.

random
ຕັ້ງແຕ່ລະກອບຜົນຜະລິດແບບອ່ານເທົ່ານັ້ນ ຫຼືຂຽນໄດ້ແບບສຸ່ມ.

ແກ່ນ
ກໍາ​ນົດ​ແນວ​ພັນ​ສໍາ​ລັບ​ການ​ random ໂໝດ, ຕ້ອງເປັນຈຳນວນເຕັມທີ່ລວມຢູ່ລະຫວ່າງ 0 ແລະ
"UINT32_MAX". ຖ້າບໍ່ໄດ້ລະບຸ, ຫຼືຕັ້ງຢ່າງຊັດເຈນເປັນ "-1", ຕົວກອງຈະພະຍາຍາມ
ໃຊ້ແນວພັນແບບສຸ່ມທີ່ດີບົນພື້ນຖານຄວາມພະຍາຍາມທີ່ດີທີ່ສຸດ.

ຫມາຍ​ເຫດ​: ໃນ​ກໍ​ລະ​ນີ​ຂອງ​ຕົວ​ກັ່ນ​ຕອງ​ໃສ່​ອັດ​ຕະ​ໂນ​ມັດ​ລະ​ຫວ່າງ​ຕົວ​ກັ່ນ​ຕອງ​ການ​ອະ​ນຸ​ຍາດ​ແລະ​ດັ່ງ​ຕໍ່​ໄປ​ນີ້​,
ການອະນຸຍາດອາດຈະບໍ່ໄດ້ຮັບຕາມທີ່ຄາດໄວ້ໃນຕົວກອງຕໍ່ໄປນີ້. ແຊກ ກ
ຮູບແບບ or ຮູບແບບ ການກັ່ນຕອງກ່ອນການກັ່ນຕອງ perms / aperms ສາມາດຫຼີກເວັ້ນບັນຫານີ້.

ເລືອກ, ເລືອກ
ເລືອກເຟຣມທີ່ຈະສົ່ງຜ່ານຜົນຜະລິດ.

ຕົວກອງນີ້ຍອມຮັບຕົວເລືອກຕໍ່ໄປນີ້:

expr, e
ກໍານົດການສະແດງອອກ, ເຊິ່ງຖືກປະເມີນສໍາລັບແຕ່ລະກອບການປ້ອນຂໍ້ມູນ.

ຖ້າການສະແດງອອກຖືກປະເມີນເປັນສູນ, ກອບຈະຖືກຍົກເລີກ.

ຖ້າຜົນການປະເມີນຜົນເປັນລົບຫຼື NaN, ກອບຖືກສົ່ງໄປຫາຜົນໄດ້ຮັບທໍາອິດ;
ຖ້າບໍ່ດັ່ງນັ້ນມັນຖືກສົ່ງໄປຫາຜົນຜະລິດທີ່ມີດັດຊະນີ "ceil(val)-1", ສົມມຸດວ່າການປ້ອນຂໍ້ມູນ.
ດັດຊະນີເລີ່ມຕົ້ນຈາກ 0.

ຕົວຢ່າງຄ່າຂອງ 1.2 ເທົ່າກັບຜົນຜະລິດທີ່ມີດັດຊະນີ "ceil(1.2)-1 = 2-1 =
1", ນັ້ນແມ່ນຜົນຜະລິດທີສອງ.

ຜົນໄດ້ຮັບ, n
ກໍານົດຈໍານວນຂອງຜົນໄດ້ຮັບ. ຜົນຜະລິດທີ່ຈະສົ່ງກອບທີ່ເລືອກແມ່ນອີງໃສ່
ຜົນ​ຂອງ​ການ​ປະ​ເມີນ​ຜົນ​. ຄ່າເລີ່ມຕົ້ນແມ່ນ 1.

ການສະແດງອອກສາມາດມີຄ່າຄົງທີ່ຕໍ່ໄປນີ້:

n ຕົວເລກ (ຕາມລໍາດັບ) ຂອງກອບການກັ່ນຕອງ, ເລີ່ມຈາກ 0.

selected_n
ຕົວເລກ (ຕາມລໍາດັບ) ຂອງກອບທີ່ເລືອກ, ເລີ່ມຈາກ 0.

prev_selected_n
ເລກລໍາດັບຂອງກອບທີ່ເລືອກຫຼ້າສຸດ. ມັນເປັນ NAN ຖ້າບໍ່ໄດ້ກໍານົດ.

TB ໄລຍະເວລາຂອງເວລາປ້ອນຂໍ້ມູນ.

pts PTS (Presentation TimeStamp) ຂອງກອບວິດີໂອທີ່ຖືກກັ່ນຕອງ, ສະແດງອອກໃນ TB ຫນ່ວຍງານ.
ມັນເປັນ NAN ຖ້າບໍ່ໄດ້ກໍານົດ.

t PTS ຂອງກອບວິດີໂອການກັ່ນຕອງ, ສະແດງອອກໃນວິນາທີ. ມັນເປັນ NAN ຖ້າບໍ່ໄດ້ກໍານົດ.

prev_pts
PTS ຂອງກອບວິດີໂອທີ່ຖືກກັ່ນຕອງກ່ອນຫນ້ານີ້. ມັນເປັນ NAN ຖ້າບໍ່ໄດ້ກໍານົດ.

prev_selected_pts
PTS ຂອງເຟຣມວິດີໂອທີ່ຜ່ານການກັ່ນຕອງຫຼ້າສຸດ. ມັນເປັນ NAN ຖ້າບໍ່ໄດ້ກໍານົດ.

prev_selected_t
PTS ຂອງເຟຣມວິດີໂອຫຼ້າສຸດທີ່ເລືອກຜ່ານມາ. ມັນເປັນ NAN ຖ້າບໍ່ໄດ້ກໍານົດ.

start_pts
PTS ຂອງກອບວິດີໂອທໍາອິດໃນວິດີໂອ. ມັນເປັນ NAN ຖ້າບໍ່ໄດ້ກໍານົດ.

start_t
ເວລາຂອງກອບວິດີໂອທໍາອິດໃນວິດີໂອ. ມັນເປັນ NAN ຖ້າບໍ່ໄດ້ກໍານົດ.

pict_type (ວີດີໂອ ພຽງແຕ່)
ປະເພດຂອງກອບການກັ່ນຕອງ. ມັນ​ສາ​ມາດ​ສົມ​ມຸດ​ວ່າ​ຫນຶ່ງ​ໃນ​ຄຸນ​ຄ່າ​ດັ່ງ​ຕໍ່​ໄປ​ນີ້​:

I
P
B
S
SI
SP
BI
interlace_type (ວີດີໂອ ພຽງແຕ່)
ປະເພດ interlace ຂອງກອບ. ມັນ​ສາ​ມາດ​ສົມ​ມຸດ​ວ່າ​ຫນຶ່ງ​ໃນ​ຄຸນ​ຄ່າ​ດັ່ງ​ຕໍ່​ໄປ​ນີ້​:

ການສຶກສາ
ກອບແມ່ນກ້າວຫນ້າ (ບໍ່ interlaced).

TOPFIRST
ກອບແມ່ນດ້ານເທິງ - ພາກສະຫນາມທໍາອິດ.

ລຸ່ມສຸດ
ກອບແມ່ນລຸ່ມ-field-ທໍາອິດ.

consumed_sample_n (ສຽງ ພຽງແຕ່)
ຈໍານວນຕົວຢ່າງທີ່ເລືອກກ່ອນກອບປະຈຸບັນ

ຕົວຢ່າງ_n (ສຽງ ພຽງແຕ່)
ຈໍານວນຕົວຢ່າງໃນກອບປະຈຸບັນ

ອັດຕາຕົວຢ່າງ (ສຽງ ພຽງແຕ່)
ອັດຕາຕົວຢ່າງການປ້ອນຂໍ້ມູນ

ທີ່ສໍາຄັນ ນີ້ແມ່ນ 1 ຖ້າເຟຣມທີ່ຖືກກັ່ນຕອງເປັນຄີເຟຣມ, 0 ຖ້າບໍ່ດັ່ງນັ້ນ.

pos ຕໍາແຫນ່ງໃນໄຟລ໌ຂອງກອບການກັ່ນຕອງ, -1 ຖ້າຂໍ້ມູນບໍ່ມີ
(ເຊັ່ນ: ວິດີໂອສັງເຄາະ)

scene (ວີດີໂອ ພຽງແຕ່)
ຄ່າລະຫວ່າງ 0 ແລະ 1 ເພື່ອຊີ້ໃຫ້ເຫັນ scene ໃຫມ່; ຄ່າຕໍ່າສະທ້ອນເຖິງຄວາມເປັນໄປໄດ້ຕໍ່າ
ສໍາລັບກອບປະຈຸບັນເພື່ອແນະນໍາ scene ໃຫມ່, ໃນຂະນະທີ່ມູນຄ່າສູງກວ່າຫມາຍຄວາມວ່າປະຈຸບັນ
ກອບມີແນວໂນ້ມທີ່ຈະເປັນຫນຶ່ງ (ເບິ່ງຕົວຢ່າງຂ້າງລຸ່ມນີ້)

ຄ່າເລີ່ມຕົ້ນຂອງການສະແດງຜົນທີ່ເລືອກແມ່ນ "1".

ຕົວຢ່າງ

· ເລືອກເຟຣມທັງໝົດໃນການປ້ອນຂໍ້ມູນ:

ເລືອກ

ຕົວຢ່າງຂ້າງເທິງແມ່ນຄືກັນກັບ:

ເລືອກ=1

· ຂ້າມເຟຣມທັງໝົດ:

ເລືອກ=0

·ເລືອກພຽງແຕ່ I-frames:

select='eq(pict_type\,I)'

·ເລືອກຫນຶ່ງເຟຣມທຸກໆ 100:

select='not(mod(n\,100))'

·​ເລືອກ​ເອົາ​ແຕ່​ເຟຣມ​ທີ່​ມີ​ຢູ່​ໃນ 10-20 ໄລ​ຍະ​ເວ​ລາ​:

ເລືອກ=ລະຫວ່າງ(t\,10\,20)

·​ເລືອກ​ເອົາ​ແຕ່ I frames ທີ່​ມີ​ຢູ່​ໃນ 10-20 ໄລ​ຍະ​ເວ​ລາ​:

select=between(t\,10\,20)*eq(pict_type\,I)

·ເລືອກເຟຣມທີ່ມີໄລຍະຫ່າງຕໍາ່ສຸດທີ່ 10 ວິນາທີ:

select='isnan(prev_selected_t)+gte(t-prev_selected_t\,10)'

· ໃຊ້ aselect ເພື່ອເລືອກເຟຣມສຽງເທົ່ານັ້ນທີ່ມີຕົວເລກຕົວຢ່າງ > 100:

aselect='gt(ຕົວຢ່າງ_n\,100)'

· ສ້າງ mosaic ຂອງ scenes ທໍາອິດ:

ffmpeg -i video.avi -vf select='gt(scene\,0.4)',scale=160:120,tile -frames:v 1 preview.png

ການປຽບທຽບ scene ຕໍ່ກັບຄ່າລະຫວ່າງ 0.3 ແລະ 0.5 ໂດຍທົ່ວໄປແມ່ນເປັນທາງເລືອກທີ່ດີ.

·ສົ່ງຂອບຄູ່ແລະຄີກເພື່ອແຍກຜົນໄດ້ຮັບ, ແລະປະກອບໃຫ້ເຂົາເຈົ້າ:

ເລືອກ=n=2:e='mod(n,2)+1' [odd][even]; [odd] pad=h=2*ih [tmp]; [tmp][even] overlay=y=h

sendcmd, asendcmd
ສົ່ງຄໍາສັ່ງໄປຫາຕົວກອງໃນ filtergraph.

ການກັ່ນຕອງເຫຼົ່ານີ້ອ່ານຄໍາສັ່ງທີ່ຈະຖືກສົ່ງໄປຫາຕົວກອງອື່ນໆໃນ filtergraph.

"sendcmd" ຕ້ອງຖືກໃສ່ລະຫວ່າງສອງຕົວກອງວິດີໂອ, "asendcmd" ຕ້ອງຖືກໃສ່ລະຫວ່າງ
ສອງຕົວກອງສຽງ, ແຕ່ນອກຈາກນັ້ນພວກເຂົາເຈົ້າປະຕິບັດວິທີດຽວກັນ.

ຂໍ້ມູນສະເພາະຂອງຄໍາສັ່ງສາມາດສະຫນອງໃຫ້ຢູ່ໃນການໂຕ້ຖຽງຕົວກອງດ້ວຍ ຄໍາສັ່ງ
ທາງເລືອກ, ຫຼືໃນໄຟລ໌ທີ່ລະບຸໄວ້ໂດຍ ຊື່​ເອ​ກະ​ສານ ທາງເລືອກ.

ຕົວກອງເຫຼົ່ານີ້ຍອມຮັບທາງເລືອກຕໍ່ໄປນີ້:

ຄໍາ​ສັ່ງ​, c
ກໍານົດຄໍາສັ່ງທີ່ຈະອ່ານແລະສົ່ງໄປຫາຕົວກອງອື່ນໆ.

ຊື່​ເອ​ກະ​ສານ, f
ຕັ້ງຊື່ໄຟລ໌ຂອງຄໍາສັ່ງທີ່ຈະອ່ານແລະສົ່ງໄປຫາຕົວກອງອື່ນໆ.

ຄໍາສັ່ງ syntax

ຄໍາ​ອະ​ທິ​ບາຍ​ຄໍາ​ສັ່ງ​ປະ​ກອບ​ດ້ວຍ​ລໍາ​ດັບ​ຂອງ​ສະ​ເພາະ​ໄລ​ຍະ​, ປະ​ກອບ​ດ້ວຍ a
ບັນຊີລາຍຊື່ຂອງຄໍາສັ່ງທີ່ຈະດໍາເນີນການໃນເວລາທີ່ເຫດການສະເພາະໃດຫນຶ່ງທີ່ກ່ຽວຂ້ອງກັບໄລຍະນັ້ນເກີດຂຶ້ນ.
ເຫດການທີ່ເກີດຂຶ້ນໂດຍທົ່ວໄປແມ່ນເວລາກອບປັດຈຸບັນທີ່ເຂົ້າມາ ຫຼືອອກຈາກເວລາທີ່ກຳນົດ
ໄລຍະຫ່າງ

ໄລຍະຫ່າງແມ່ນກຳນົດໂດຍໄວຍະກອນຕໍ່ໄປນີ້:

[- ] ;

ໄລ​ຍະ​ເວ​ລາ​ແມ່ນ​ລະ​ບຸ​ໄວ້​ໂດຍ​ START ແລະ END ເວລາ. END ເປັນທາງເລືອກແລະຄ່າເລີ່ມຕົ້ນ
ເຖິງເວລາສູງສຸດ.

ເວລາກອບປະຈຸບັນຖືກພິຈາລະນາພາຍໃນໄລຍະເວລາທີ່ກໍານົດຖ້າມັນຖືກລວມເຂົ້າໃນ
ໄລ​ຍະ​ຫ່າງ [START, END), ນັ້ນແມ່ນເວລາທີ່ເວລາຫຼາຍກວ່າຫຼືເທົ່າກັບ START ແລະແມ່ນ
ຫນ້ອຍກວ່າ END.

ສາມາດ ປະ​ກອບ​ດ້ວຍ​ລໍາ​ດັບ​ຂອງ​ຫນຶ່ງ​ຫຼື​ຫຼາຍ​ຄໍາ​ສັ່ງ​ສະ​ເພາະ​, ແຍກ​ອອກ​ໂດຍ ",​"
ກ່ຽວ​ກັບ​ໄລ​ຍະ​ເວ​ລາ​ນັ້ນ​. syntax ຂອງສະເພາະຄໍາສັ່ງແມ່ນໃຫ້ໂດຍ:

[ ]

ດອກໄມ້ ເປັນທາງເລືອກ ແລະລະບຸປະເພດຂອງເຫດການທີ່ກ່ຽວຂ້ອງກັບຊ່ວງເວລາ
ເປີດໃຊ້ການສົ່ງຄໍາສັ່ງທີ່ລະບຸ, ແລະຕ້ອງເປັນລໍາດັບທີ່ບໍ່ແມ່ນ null ຂອງທຸງຕົວລະບຸ
ແຍກໂດຍ "+" ຫຼື "|" ແລະປິດລ້ອມລະຫວ່າງ "[" ແລະ "]".

ທຸງຕໍ່ໄປນີ້ຖືກຮັບຮູ້:

ເຂົ້າ
ຄໍາສັ່ງຖືກສົ່ງເມື່ອເວລາກອບປັດຈຸບັນເຂົ້າໄປໃນຊ່ວງເວລາທີ່ກໍານົດ. ໃນ
ຄໍາສັບຕ່າງໆອື່ນໆ, ຄໍາສັ່ງຖືກສົ່ງເມື່ອເວລາກອບທີ່ຜ່ານມາບໍ່ໄດ້ຢູ່ໃນ
ໄລຍະເວລາທີ່ໃຫ້, ແລະປະຈຸບັນແມ່ນ.

ອອກຈາກ
ຄໍາສັ່ງຖືກສົ່ງເມື່ອເວລາກອບປັດຈຸບັນອອກຈາກໄລຍະທີ່ກໍານົດ. ໃນ
ຄໍາສັບຕ່າງໆອື່ນໆ, ຄໍາສັ່ງຖືກສົ່ງເມື່ອເວລາກອບທີ່ຜ່ານມາຢູ່ໃນທີ່ກໍານົດໄວ້
ໄລຍະຫ່າງ, ແລະປະຈຸບັນບໍ່ແມ່ນ.

If ດອກໄມ້ ບໍ່ໄດ້ລະບຸໄວ້, ຄ່າເລີ່ມຕົ້ນຂອງ "[enter]" ແມ່ນສົມມຸດ.

ເປົ້າ​ຫມາຍ ກໍານົດເປົ້າຫມາຍຂອງຄໍາສັ່ງ, ໂດຍປົກກະຕິແມ່ນຊື່ຂອງຊັ້ນການກັ່ນຕອງຫຼື a
ຊື່ຕົວກອງສະເພາະ.

ຄໍາສັ່ງ ລະບຸຊື່ຂອງຄໍາສັ່ງສໍາລັບການກັ່ນຕອງເປົ້າຫມາຍ.

ARG ເປັນທາງເລືອກແລະລະບຸບັນຊີລາຍຊື່ທາງເລືອກຂອງການໂຕ້ຖຽງສໍາລັບການໃຫ້ ຄໍາສັ່ງ.

ລະ​ຫວ່າງ​ລະ​ຫວ່າງ​ສະ​ເພາະ​ໄລ​ຍະ​ຫນຶ່ງ​ແລະ​ອື່ນ​, ຊ່ອງ​ຫວ່າງ​, ຫຼື​ລໍາ​ດັບ​ຂອງ​ຕົວ​ອັກ​ສອນ​
ເລີ່ມຕົ້ນດ້ວຍ "#" ຈົນຮອດທ້າຍແຖວ, ຖືກລະເລີຍ ແລະສາມາດໃຊ້ເພື່ອອະທິບາຍຄຳເຫັນໄດ້.

ຄໍາອະທິບາຍ BNF ທີ່ງ່າຍດາຍຂອງ syntax ສະເພາະຄໍາສັ່ງດັ່ງຕໍ່ໄປນີ້:

::= "ເຂົ້າ" | "ອອກ"
::= [(+|"|") ]
::= [ "[" "]"] [ ]
::= [, ]
::= [- ]
::= [ ; ]

ຕົວຢ່າງ

· ລະບຸການປ່ຽນແປງສຽງທີ່ 4 ວິນາທີ:

asendcmd=c='4.0 tempo tempo 1.5',atempo

· ລະບຸລາຍຊື່ຂອງຄຳສັ່ງ drawtext ແລະ hue ໃນໄຟລ໌ໃດໜຶ່ງ.

# ສະແດງຂໍ້ຄວາມໃນລະຫວ່າງ 5-10
5.0-10.0 [ເຂົ້າ] drawtext reinit 'fontfile=FreeSerif.ttf:text=hello world',
[leave] drawtext reinit 'fontfile=FreeSerif.ttf:text=';

# desaturate ຮູບ​ພາບ​ໃນ​ໄລ​ຍະ 15-20​
15.0-20.0 [ເຂົ້າ] hue s 0,
[ເຂົ້າ] drawtext reinit 'fontfile=FreeSerif.ttf:text=nocolor',
[ອອກ] hue s 1,
[leave] drawtext reinit 'fontfile=FreeSerif.ttf:text=color';

# ນຳໃຊ້ເອັບເຟັກການອີ່ມຕົວຂອງຕົວຊີ້ອອກ, ເລີ່ມຕັ້ງແຕ່ເວລາ 25
25 [ປ້ອນ] hue s exp(25-t)

filtergraph ທີ່ອະນຸຍາດໃຫ້ອ່ານແລະປະມວນຜົນລາຍການຄໍາສັ່ງຂ້າງເທິງທີ່ເກັບໄວ້ໃນໄຟລ໌
test.cmd, ສາມາດໄດ້ຮັບການລະບຸດ້ວຍ:

sendcmd=f=test.cmd,drawtext=fontfile=FreeSerif.ttf:text='',ສີ

setpts, assetpts
ປ່ຽນ PTS (ເວລາການນໍາສະເຫນີ) ຂອງກອບການປ້ອນຂໍ້ມູນ.

"setpts" ເຮັດວຽກຢູ່ໃນກອບວິດີໂອ, "asetpts" ໃນກອບສຽງ.

ຕົວກອງນີ້ຍອມຮັບຕົວເລືອກຕໍ່ໄປນີ້:

ຕົວຢ່າງ
ການສະແດງຜົນທີ່ຖືກປະເມີນສໍາລັບແຕ່ລະກອບເພື່ອສ້າງເວລາຂອງມັນ.

ການສະແດງຜົນໄດ້ຖືກປະເມີນຜ່ານ API eval ແລະສາມາດມີຄ່າຄົງທີ່ຕໍ່ໄປນີ້:

FRAME_RATE
ອັດຕາເຟຣມ, ກໍານົດພຽງແຕ່ສໍາລັບວິດີໂອອັດຕາເຟມຄົງທີ່

PTS ເວລາການນຳສະເໜີໃນການປ້ອນຂໍ້ມູນ

N ການນັບຂອງກອບການປ້ອນຂໍ້ມູນສໍາລັບວິດີໂອຫຼືຈໍານວນຂອງຕົວຢ່າງທີ່ບໍລິໂພກ, ບໍ່ແມ່ນ
ລວມທັງກອບປະຈຸບັນສໍາລັບສຽງ, ເລີ່ມຕົ້ນຈາກ 0.

NB_CONSUMED_SAMPLES
ຈໍານວນຕົວຢ່າງທີ່ບໍລິໂພກ, ບໍ່ລວມກອບປະຈຸບັນ (ພຽງແຕ່ສຽງ)

NB_SAMPLES, S
ຈຳນວນຕົວຢ່າງໃນກອບປັດຈຸບັນ (ສະເພາະສຽງ)

SAMPLE_RATE, SR
ອັດຕາຕົວຢ່າງສຽງ.

STARTPTS
PTS ຂອງກອບທໍາອິດ.

ເລີ່ມ
ເວລາໃນວິນາທີຂອງກອບທໍາອິດ

ເຊື່ອມກັນ
ລະບຸວ່າກອບປັດຈຸບັນຖືກຕັດກັນຫຼືບໍ່.

T ເວລາເປັນວິນາທີຂອງກອບປັດຈຸບັນ

POS ຕໍາແໜ່ງຕົ້ນສະບັບໃນໄຟລ໌ຂອງກອບ, ຫຼືບໍ່ໄດ້ກໍານົດຖ້າຫາກວ່າບໍ່ໄດ້ກໍານົດສໍາລັບປະຈຸບັນ
frame

PREV_INPTS
ການປ້ອນຂໍ້ມູນຜ່ານມາ PTS.

PREV_INT
ເວລາປ້ອນຂໍ້ມູນຜ່ານມາເປັນວິນາທີ

PREV_OUTPTS
ຜົນຜະລິດທີ່ຜ່ານມາ PTS.

PREV_OUTT
ເວລາຜົນຜະລິດທີ່ຜ່ານມາເປັນວິນາທີ

RTCTIME
ໂມງຕິດຝາ (RTC) ເວລາເປັນໄມໂຄວິນາທີ. ອັນນີ້ຖືກປະຕິເສດ, ໃຊ້ ທີ່ໃຊ້ເວລາ(0) ແທນ.

RTCSTART
ໂມງຕິດຝາ (RTC) ເວລາເລີ່ມຕົ້ນຂອງຮູບເງົາເປັນໄມໂຄວິນາທີ.

TB ໄລຍະເວລາຂອງເວລາປ້ອນຂໍ້ມູນ.

ຕົວຢ່າງ

· ເລີ່ມນັບ PTS ຈາກສູນ

setpts=PTS-STARTPTS

· ນຳ ໃຊ້ຜົນກະທົບການເຄື່ອນໄຫວໄວ:

setpts=0.5*PTS

· ນຳ ໃຊ້ຜົນກະທົບການເຄື່ອນໄຫວຊ້າ:

setpts=2.0*PTS

·ກໍານົດອັດຕາຄົງທີ່ຂອງ 25 ເຟຣມຕໍ່ວິນາທີ:

setpts=N/(25*TB)

· ກໍານົດອັດຕາຄົງທີ່ 25 fps ດ້ວຍການສັ່ນສະເທືອນບາງຢ່າງ:

setpts='1/(25*TB) * (N + 0.05 * sin(N*2*PI/25))'

· ນຳໃຊ້ການຊົດເຊີຍ 10 ວິນາທີໃສ່ PTS ປ້ອນຂໍ້ມູນ:

setpts=PTS+10/TB

· ສ້າງ​ສະ​ແຕມ​ເວ​ລາ​ຈາກ "ແຫຼ່ງ​ທີ່​ມີ​ຊີ​ວິດ​" ແລະ rebase ກັບ timebase ໃນ​ປະ​ຈຸ​ບັນ​:

setpts='(RTCTIME - RTCSTART) / (TB * 1000000)'

·ສ້າງເວລາໂດຍການນັບຕົວຢ່າງ:

assetpts=N/SR/TB

settb, assetb
ກໍານົດເວລາທີ່ຈະໃຊ້ສໍາລັບການສະແຕມເວລາກອບຜົນຜະລິດ. ມັນສ່ວນໃຫຍ່ແມ່ນເປັນປະໂຫຍດສໍາລັບການທົດສອບ
ການຕັ້ງຄ່າເວລາ.

ມັນຍອມຮັບຕົວກໍານົດການດັ່ງຕໍ່ໄປນີ້:

expr, tb
ການສະແດງຜົນທີ່ຖືກປະເມີນເຂົ້າໄປໃນເວລາຜົນຜະລິດ.

ມູນຄ່າສໍາລັບ tb ແມ່ນການສະແດງອອກທາງເລກເລກທີ່ເປັນຕົວແທນຂອງສົມເຫດສົມຜົນ. ການສະແດງອອກສາມາດ
ປະກອບມີຄ່າຄົງທີ່ "AVTB" (ໄລຍະເວລາເລີ່ມຕົ້ນ), "intb" (ເວລາປ້ອນຂໍ້ມູນ) ແລະ "sr"
(ອັດຕາຕົວຢ່າງ, ສຽງເທົ່ານັ້ນ). ຄ່າເລີ່ມຕົ້ນແມ່ນ "intb".

ຕົວຢ່າງ

· ກຳນົດເວລາເປັນ 1/25:

settb=expr=1/25

· ກຳນົດເວລາເປັນ 1/10:

settb=expr=0.1

· ກຳນົດເວລາເປັນ 1001/1000:

settb=1+0.001

·ຕັ້ງ timebase ເປັນ 2*intb:

settb=2*intb

· ກຳນົດຄ່າເວລາເລີ່ມຕົ້ນ:

settb=AVTB

showcqt
ປ່ຽນສຽງປ້ອນເຂົ້າເປັນຜົນອອກຂອງວິດີໂອທີ່ສະແດງເຖິງຄວາມຖີ່ spectrum logarithm
(ໂດຍ​ການ​ນໍາ​ໃຊ້​ຄົງ​ທີ່ Q transform ກັບ Brown-Puckette algorithm​)​, ມີ​ຂະ​ຫນາດ​ສຽງ​ດົນ​ຕີ​, ຈາກ
E0 ຫາ D#10 (10 octaves).

ຕົວກອງຍອມຮັບຕົວເລືອກຕໍ່ໄປນີ້:

ປະລິມານ
ລະບຸປະລິມານການຫັນປ່ຽນ (ຕົວຄູນ). ສະແດງອອກສາມາດບັນຈຸ
ຕົວແປ:

ຄວາມຖີ່, ຄວາມຖີ່, f
ຄວາມຖີ່ຂອງການຫັນປ່ຽນຖືກປະເມີນ

ການຍຶດເວລາ, tc
ຄ່າຂອງຕົວເລືອກ timeclamp

ແລະ​ຫນ້າ​ທີ່​:

a_weighting(f)
A - ນ້ໍາຫນັກຂອງ loudness ເທົ່າທຽມກັນ

b_weighting(f)
B - ນ້ໍາຫນັກຂອງ loudness ເທົ່າທຽມກັນ

c_weighting(f)
C-ນ້ໍາຫນັກຂອງ loudness ເທົ່າທຽມກັນ

ຄ່າເລີ່ມຕົ້ນແມ່ນ 16.

ຄວາມຍາວ
ລະບຸການຫັນປ່ຽນຄວາມຍາວ. ການສະແດງອອກສາມາດມີຕົວແປ:

ຄວາມຖີ່, ຄວາມຖີ່, f
ຄວາມຖີ່ຂອງການຫັນປ່ຽນຖືກປະເມີນ

ການຍຶດເວລາ, tc
ຄ່າຂອງຕົວເລືອກ timeclamp

ຄ່າເລີ່ມຕົ້ນແມ່ນ "384/f*tc/(384/f+tc)".

ຍຶດເວລາ
ລະບຸເວລາການຫັນປ່ຽນ. ຢູ່ໃນຄວາມຖີ່ຕ່ໍາ, ມີການຊື້ຂາຍລະຫວ່າງຄວາມຖືກຕ້ອງ
ໃນໂດເມນເວລາແລະໂດເມນຄວາມຖີ່. ຖ້າ timeclamp ແມ່ນຕ່ໍາ, ເຫດການໃນໂດເມນທີ່ໃຊ້ເວລາແມ່ນ
ສະແດງໃຫ້ເຫັນຢ່າງຖືກຕ້ອງກວ່າ (ເຊັ່ນ: drum bass ໄວ), ຖ້າບໍ່ດັ່ງນັ້ນເຫດການໃນຄວາມຖີ່
ໂດເມນຖືກສະແດງຢ່າງຖືກຕ້ອງກວ່າ (ເຊັ່ນ: ເບດກີຕາ). ຄ່າທີ່ຍອມຮັບໄດ້ແມ່ນ [0.1,
1.0]. ຄ່າເລີ່ມຕົ້ນແມ່ນ 0.17.

coeffclamp
ລະບຸການຫັນປ່ຽນ coeffclamp. ຖ້າ coeffclamp ຕ່ໍາ, ການຫັນປ່ຽນແມ່ນຖືກຕ້ອງກວ່າ,
ຖ້າບໍ່ດັ່ງນັ້ນການຫັນປ່ຽນແມ່ນໄວຂຶ້ນ. ມູນຄ່າທີ່ຍອມຮັບໄດ້ແມ່ນ [0.1, 10.0]. ຄ່າເລີ່ມຕົ້ນແມ່ນ 1.0.

gamma
ລະບຸ gamma. gamma ຕ່ໍາເຮັດໃຫ້ spectrum ກົງກັນຂ້າມຫຼາຍ, gamma ສູງຂຶ້ນເຮັດໃຫ້ໄດ້
spectrum ມີຂອບເຂດຫຼາຍ. ມູນຄ່າທີ່ຍອມຮັບໄດ້ແມ່ນ [1.0, 7.0]. ຄ່າເລີ່ມຕົ້ນແມ່ນ 3.0.

ແກມມາ2
ລະບຸ gamma ຂອງ bargraph. ມູນຄ່າທີ່ຍອມຮັບໄດ້ແມ່ນ [1.0, 7.0]. ຄ່າເລີ່ມຕົ້ນແມ່ນ 1.0.

ໄຟລ໌ຕົວອັກສອນ
ລະບຸໄຟລ໌ຕົວອັກສອນເພື່ອໃຊ້ກັບ freetype. ຖ້າບໍ່ໄດ້ລະບຸ, ໃຫ້ໃຊ້ຟອນທີ່ຝັງໄວ້.

ສີຕົວອັກສອນ
ລະບຸການສະແດງອອກສີຕົວອັກສອນ. ນີ້ແມ່ນການສະແດງອອກທາງເລກເລກທີ່ຄວນຈະກັບຄືນມາ
ຄ່າຈຳນວນເຕັມ 0xRRGGBB. ການສະແດງອອກສາມາດມີຕົວແປ:

ຄວາມຖີ່, ຄວາມຖີ່, f
ຄວາມຖີ່ຂອງການຫັນປ່ຽນຖືກປະເມີນ

ການຍຶດເວລາ, tc
ຄ່າຂອງຕົວເລືອກ timeclamp

ແລະ​ຫນ້າ​ທີ່​:

midi(f)
ຈໍານວນ midi ຂອງຄວາມຖີ່ f, ບາງຕົວເລກ midi: E0(16) C1(24) C2(36) A4(69​)

r(x), g(x), b(x)
ຄ່າສີແດງ, ສີຂຽວ ແລະສີຟ້າຂອງຄວາມເຂັ້ມ x

ຄ່າເລີ່ມຕົ້ນແມ່ນ "st(0, (midi(f)-59.5)/12); st(1, if(interween(ld(0),0,1),
0.5-0.5*cos(2*PI*ld(0)), 0)); r(1-ld(1)) + b(ld(1))"

HD ເຕັມ
ຖ້າຕັ້ງເປັນ 1 (ຄ່າເລີ່ມຕົ້ນ), ຂະຫນາດວິດີໂອແມ່ນ 1920x1080 (ເຕັມ HD), ຖ້າຕັ້ງເປັນ 0,
ຂະຫນາດວິດີໂອ 960x540. ໃຊ້ຕົວເລືອກນີ້ເພື່ອເຮັດໃຫ້ການໃຊ້ CPU ຕໍ່າລົງ.

ເຟມຕໍ່ວິນາ ລະບຸວິດີໂອ fps. ຄ່າເລີ່ມຕົ້ນແມ່ນ 25.

ນັບ
ລະບຸຈໍານວນການຫັນປ່ຽນຕໍ່ເຟຣມ, ດັ່ງນັ້ນຈຶ່ງມີ fps*count transforms ຕໍ່ວິນາທີ.
ໃຫ້ສັງເກດວ່າອັດຕາຂໍ້ມູນສຽງຕ້ອງຖືກແບ່ງອອກດ້ວຍ fps*count. ຄ່າເລີ່ມຕົ້ນແມ່ນ 6.

ຕົວຢ່າງ

·ຫຼິ້ນສຽງໃນຂະນະທີ່ສະແດງ spectrum:

ffplay -f lavfi 'amovie=a.mp3, asplit [a][out1] ; [a] showcqt [out0]'

·ຄືກັນກັບຂ້າງເທິງ, ແຕ່ມີອັດຕາເຟຣມ 30 fps:

ffplay -f lavfi 'amovie=a.mp3, asplit [a][out1] ; [a] showcqt=fps=30:count=5 [out0]'

· ຫຼິ້ນຢູ່ທີ່ 960x540 ແລະການໃຊ້ CPU ຕ່ຳກວ່າ:

ffplay -f lavfi 'amovie=a.mp3, asplit [a][out1] ; [a] showcqt=fullhd=0:count=3 [out0]'

· A1 ແລະປະສົມກົມກຽວຂອງມັນ: A1, A2, (ໃກ້) 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]'

·ຄືກັນກັບຂ້າງເທິງ, ແຕ່ມີຄວາມຖືກຕ້ອງຫຼາຍໃນໂດເມນຄວາມຖີ່ (ແລະຊ້າກວ່າ):

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]'

· B - ນ້ໍາຫນັກຂອງ loudness ເທົ່າທຽມກັນ

ປະລິມານ=16*b_weighting(f)

· ປັດໄຈ Q ຕ່ໍາ

ຄວາມຍາວ=100/f*tc/(100/f+tc)

· fontcolor Custom, C-note ແມ່ນສີຂຽວສີ, ອື່ນໆແມ່ນສີຟ້າ

fontcolor='if(mod(floor(midi(f)+0.5),12), 0x0000FF, g(1))'

· gamma ທີ່ກໍາຫນົດເອງ, ປະຈຸບັນ spectrum ແມ່ນເສັ້ນກົງກັບຄວາມກວ້າງໃຫຍ່ຂອງ.

gamma=2:gamma2=2

ງານວາງສະແດງ
ແປງສຽງປ້ອນເຂົ້າເປັນຜົນອອກຂອງວິດີໂອທີ່ເປັນຕົວແທນຂອງສະເປກຕລພະລັງງານສຽງ. ສຽງ
ຄວາມກວ້າງແມ່ນຢູ່ເທິງແກນ Y ໃນຂະນະທີ່ຄວາມຖີ່ຢູ່ໃນແກນ X.

ຕົວກອງຍອມຮັບຕົວເລືອກຕໍ່ໄປນີ້:

ຂະ ໜາດ, s
ລະບຸຂະຫນາດຂອງວິດີໂອ. ສໍາລັບ syntax ຂອງທາງເລືອກນີ້, ໃຫ້ກວດເບິ່ງ "ວິດີໂອ ຂະໜາດ" ສ່ວນ
in ໄດ້ ffmpeg-utils ຄູ່ມື. ຄ່າເລີ່ມຕົ້ນແມ່ນ "1024x512".

ຮູບແບບການ
ຕັ້ງໂໝດສະແດງຜົນ. ນີ້ກໍານົດວິທີການແຕ່ລະຖັງຄວາມຖີ່ຈະຖືກສະແດງ.

ມັນຍອມຮັບຄ່າດັ່ງຕໍ່ໄປນີ້:

ອອນໄລນ໌
ພາທະນາຍຄວາມ
ຈຸດ

ຄ່າເລີ່ມຕົ້ນແມ່ນ "bar".

ຂະຫນາດ
ກຳນົດຂະໜາດຄວາມກວ້າງໄກ.

ມັນຍອມຮັບຄ່າດັ່ງຕໍ່ໄປນີ້:

lin ຂະໜາດເສັ້ນຊື່.

sqrt
ຂະໜາດຮາກສີ່ຫຼ່ຽມ.

cbrt
ຂະໜາດຮາກກ້ອນ.

log ຂະໜາດຂອງ logarithmic.

ຄ່າເລີ່ມຕົ້ນແມ່ນ "ບັນທຶກ".

fscale
ຕັ້ງຂະໜາດຄວາມຖີ່.

ມັນຍອມຮັບຄ່າດັ່ງຕໍ່ໄປນີ້:

lin ຂະໜາດເສັ້ນຊື່.

log ຂະໜາດຂອງ logarithmic.

rlog
ຂະໜາດຂອງ logarithmic ປີ້ນກັບກັນ.

ຄ່າເລີ່ມຕົ້ນແມ່ນ "lin".

win_size
ກໍານົດຂະຫນາດປ່ອງຢ້ຽມ.

ມັນຍອມຮັບຄ່າດັ່ງຕໍ່ໄປນີ້:

w16
w32
w64
w128
w256
w512
w1024
w2048
w4096
w8192
w16384
w32768
w65536

ຄ່າເລີ່ມຕົ້ນແມ່ນ "w2048"

win_func
ຕັ້ງຄ່າການທໍາງານ windowing.

ມັນຍອມຮັບຄ່າດັ່ງຕໍ່ໄປນີ້:

ຮູທະວານ
ຕຸກກະຕາ
hanning
ລົບກວນ
ຄົນຜິວ ດຳ
Welch
ແປ
ບາຮາຣິສ
bnuttall
ບັງ
ຊີນ
ສັ້ນ

ຄ່າເລີ່ມຕົ້ນແມ່ນ "hanning".

ກັນຂ້າມ
ກໍານົດການທັບຊ້ອນຂອງປ່ອງຢ້ຽມ. ໃນລະດັບ "[0, 1]". ຄ່າເລີ່ມຕົ້ນແມ່ນ 1, ຊຶ່ງຫມາຍຄວາມວ່າການຊ້ອນກັນທີ່ດີທີ່ສຸດສໍາລັບ
ຟັງຊັນປ່ອງຢ້ຽມທີ່ເລືອກຈະຖືກເລືອກ.

ສະເລ່ຍ
ກໍານົດເວລາສະເລ່ຍ. ການຕັ້ງຄ່ານີ້ເປັນ 0 ຈະສະແດງຈຸດສູງສຸດໃນປະຈຸບັນ. ຄ່າເລີ່ມຕົ້ນແມ່ນ
1, ຊຶ່ງຫມາຍຄວາມວ່າເວລາສະເລ່ຍຖືກປິດການໃຊ້ງານ.

ສີ
ລະບຸລາຍຊື່ສີທີ່ແຍກດ້ວຍຍະຫວ່າງ ຫຼືໂດຍ '|' ເຊິ່ງຈະຖືກນໍາໃຊ້ເພື່ອແຕ້ມຊ່ອງທາງ
ຄວາມຖີ່. ສີທີ່ບໍ່ຮູ້ຈັກ ຫຼືຂາດຫາຍໄປຈະຖືກແທນທີ່ດ້ວຍສີຂາວ.

ການສະແດງ
ປ່ຽນສຽງປ້ອນເຂົ້າເປັນຜົນອອກຂອງວິດີໂອ, ເປັນຕົວແທນຂອງຄວາມຖີ່ຂອງຄວາມຖີ່ສຽງ.

ຕົວກອງຍອມຮັບຕົວເລືອກຕໍ່ໄປນີ້:

ຂະ ໜາດ, s
ລະບຸຂະຫນາດວິດີໂອສໍາລັບຜົນຜະລິດໄດ້. ສໍາລັບ syntax ຂອງທາງເລືອກນີ້, ໃຫ້ກວດເບິ່ງ "ວິດີໂອ
ຂະໜາດ" ສ່ວນ in ໄດ້ ffmpeg-utils ຄູ່ມື. ຄ່າເລີ່ມຕົ້ນແມ່ນ "640x512".

ບໍລິການ
ລະບຸວ່າ spectrum ຄວນເລື່ອນໄປຕາມປ່ອງຢ້ຽມແນວໃດ.

ມັນຍອມຮັບຄ່າດັ່ງຕໍ່ໄປນີ້:

ທົດແທນ
ຕົວຢ່າງເລີ່ມຕົ້ນອີກເທື່ອຫນຶ່ງຢູ່ເບື້ອງຊ້າຍເມື່ອພວກເຂົາມາຮອດຂວາ

ເລື່ອນ
ຕົວຢ່າງເລື່ອນຈາກຂວາຫາຊ້າຍ

ເຕັມເຟຣມ
ເຟຣມແມ່ນຜະລິດພຽງແຕ່ເມື່ອຕົວຢ່າງມາຮອດທີ່ຖືກຕ້ອງ

ຄ່າເລີ່ມຕົ້ນແມ່ນ "ແທນທີ່".

ຮູບແບບການ
ລະບຸຮູບແບບການສະແດງ.

ມັນຍອມຮັບຄ່າດັ່ງຕໍ່ໄປນີ້:

ການອະນຸຍາດ
ຊ່ອງທັງຫມົດແມ່ນສະແດງຢູ່ໃນແຖວດຽວກັນ

ແຍກຕ່າງຫາກ
ຊ່ອງທັງຫມົດແມ່ນສະແດງຢູ່ໃນແຖວແຍກຕ່າງຫາກ

ຄ່າເລີ່ມຕົ້ນແມ່ນ ການອະນຸຍາດ.

ສີ
ລະບຸໂໝດສີທີ່ສະແດງ.

ມັນຍອມຮັບຄ່າດັ່ງຕໍ່ໄປນີ້:

ຊ່ອງ
ແຕ່ລະຊ່ອງແມ່ນສະແດງຢູ່ໃນສີແຍກຕ່າງຫາກ

ຄວາມຫນາແຫນ້ນ
ແຕ່ລະຊ່ອງຈະຖືກສະແດງໂດຍໃຊ້ລະບົບສີດຽວກັນ

ຄ່າເລີ່ມຕົ້ນແມ່ນ ຊ່ອງ.

ຂະຫນາດ
ລະບຸຂະໜາດທີ່ໃຊ້ສຳລັບການຄຳນວນຄ່າສີຄວາມເຂັ້ມ.

ມັນຍອມຮັບຄ່າດັ່ງຕໍ່ໄປນີ້:

lin ເສັ້ນຊື່

sqrt
ຮາກສີ່ຫຼ່ຽມ, ຄ່າເລີ່ມຕົ້ນ

cbrt
ຮາກກ້ອນ

log ໂລກາລິດ

ຄ່າເລີ່ມຕົ້ນແມ່ນ sqrt.

ການອີ່ມຕົວ
ຕັ້ງຄ່າຕົວແກ້ໄຂຄວາມອີ່ມຕົວສໍາລັບສີທີ່ສະແດງ. ຄ່າທາງລົບໃຫ້ທາງເລືອກ
ໂຄງ​ການ​ສີ​. 0 ແມ່ນບໍ່ອີ່ມຕົວເລີຍ. ຄວາມອີ່ມຕົວຈະຕ້ອງຢູ່ໃນຂອບເຂດ [-10.0, 10.0].
ຄ່າເລີ່ມຕົ້ນແມ່ນ 1.

win_func
ຕັ້ງຄ່າຫນ້າຕ່າງ.

ມັນຍອມຮັບຄ່າດັ່ງຕໍ່ໄປນີ້:

none
ບໍ່ມີຕົວຢ່າງການປຸງແຕ່ງກ່ອນ (ຢ່າຄາດຫວັງວ່າມັນຈະໄວກວ່ານີ້)

ຮານ
ປ່ອງຢ້ຽມ Hann

ລົບກວນ
ຕີປ່ອງຢ້ຽມ

ຄົນຜິວ ດຳ
ປ່ອງຢ້ຽມ Blackman

ຄ່າເລີ່ມຕົ້ນແມ່ນ "hann".

ການນໍາໃຊ້ແມ່ນຄ້າຍຄືກັນກັບຕົວກອງ showwaves; ເບິ່ງຕົວຢ່າງໃນພາກນັ້ນ.

ຕົວຢ່າງ

· ປ່ອງ​ຢ້ຽມ​ຂະ​ຫນາດ​ໃຫຍ່​ທີ່​ມີ​ການ​ຂະ​ຫຍາຍ​ສີ logarithmic​:

showspectrum=s=1280x480:scale=log

·ຕົວຢ່າງທີ່ສົມບູນສໍາລັບສີແລະ sliding spectrum ຕໍ່ຊ່ອງທາງການນໍາໃຊ້ ffplay:

ffplay -f lavfi 'amovie=input.mp3, asplit [a][out1] ;
[a] showspectrum=mode=separate:color=intensity:slide=1:scale=cbrt [out0]'

ປະລິມານການສະແດງ
ປ່ຽນປະລິມານສຽງເຂົ້າເປັນຜົນຜະລິດວິດີໂອ.

ຕົວກອງຍອມຮັບຕົວເລືອກຕໍ່ໄປນີ້:

ອັດຕາ, r
ກໍານົດອັດຕາວິດີໂອ.

b ກໍານົດຄວາມກວ້າງຂອງຂອບ, ໄລຍະທີ່ອະນຸຍາດແມ່ນ [0, 5]. ຄ່າເລີ່ມຕົ້ນແມ່ນ 1.

w ກໍານົດຄວາມກວ້າງຂອງຊ່ອງ, ໄລຍະທີ່ອະນຸຍາດແມ່ນ [40, 1080]. ຄ່າເລີ່ມຕົ້ນແມ່ນ 400.

h ກໍານົດຄວາມສູງຂອງຊ່ອງ, ໄລຍະອະນຸຍາດແມ່ນ [1, 100]. ຄ່າເລີ່ມຕົ້ນແມ່ນ 20.

f ກໍານົດ fade, ໄລຍະອະນຸຍາດແມ່ນ [1, 255]. ຄ່າເລີ່ມຕົ້ນແມ່ນ 20.

c ກໍານົດການສະແດງອອກສີປະລິມານ.

ການສະແດງອອກສາມາດໃຊ້ຕົວແປຕໍ່ໄປນີ້:

VOLUME
ປະລິມານສູງສຸດໃນປະຈຸບັນຂອງຊ່ອງໃນ dB.

CHANNEL
ໝາຍເລກຊ່ອງປະຈຸບັນ, ເລີ່ມແຕ່ 0.

t ຖ້າຕັ້ງ, ສະແດງຊື່ຊ່ອງ. ຄ່າເລີ່ມຕົ້ນຖືກເປີດໃຊ້.

ການສະແດງ
ແປງ​ສຽງ​ປ້ອນ​ຂໍ້​ມູນ​ເປັນ​ຜົນ​ຜະ​ລິດ​ວິ​ດີ​ໂອ​, ສະ​ແດງ​ໃຫ້​ເຫັນ​ຄື້ນ​ຂອງ​ຕົວ​ຢ່າງ​.

ຕົວກອງຍອມຮັບຕົວເລືອກຕໍ່ໄປນີ້:

ຂະ ໜາດ, s
ລະບຸຂະຫນາດວິດີໂອສໍາລັບຜົນຜະລິດໄດ້. ສໍາລັບ syntax ຂອງທາງເລືອກນີ້, ໃຫ້ກວດເບິ່ງ "ວິດີໂອ
ຂະໜາດ" ສ່ວນ in ໄດ້ ffmpeg-utils ຄູ່ມື. ຄ່າເລີ່ມຕົ້ນແມ່ນ "600x240".

ຮູບແບບການ
ຕັ້ງໂໝດສະແດງຜົນ.

ຄ່າທີ່ມີຢູ່ແມ່ນ:

ຈຸດ
ແຕ້ມຈຸດສໍາລັບແຕ່ລະຕົວຢ່າງ.

ອອນໄລນ໌
ແຕ້ມເສັ້ນຕັ້ງສໍາລັບແຕ່ລະຕົວຢ່າງ.

p2p ແຕ້ມຈຸດສໍາລັບແຕ່ລະຕົວຢ່າງແລະເສັ້ນລະຫວ່າງພວກມັນ.

ສາຍ
ແຕ້ມເສັ້ນຕັ້ງກາງສໍາລັບແຕ່ລະຕົວຢ່າງ.

ຄ່າເລີ່ມຕົ້ນແມ່ນ "ຈຸດ".

n ກໍານົດຈໍານວນຕົວຢ່າງທີ່ພິມຢູ່ໃນຖັນດຽວກັນ. ມູນຄ່າທີ່ໃຫຍ່ກວ່າຈະ
ຫຼຸດອັດຕາເຟຣມ. ຕ້ອງເປັນຈຳນວນບວກ. ທາງເລືອກນີ້ສາມາດຖືກກໍານົດພຽງແຕ່ຖ້າ
ມູນຄ່າສໍາລັບ ອັດຕາການ ບໍ່ໄດ້ລະບຸຢ່າງຊັດເຈນ.

ອັດຕາ, r
ກໍານົດອັດຕາຜົນຜະລິດ (ໂດຍປະມານ) ກອບ. ນີ້ແມ່ນເຮັດໄດ້ໂດຍການຕັ້ງຄ່າທາງເລືອກ n. ຄ່າເລີ່ມຕົ້ນ
ມູນຄ່າແມ່ນ "25".

split_channels
ກໍານົດວ່າຊ່ອງຄວນຖືກແຕ້ມແຍກຕ່າງຫາກຫຼືທັບຊ້ອນກັນ. ຄ່າເລີ່ມຕົ້ນແມ່ນ 0.

ຕົວຢ່າງ

· ອອກ​ສຽງ​ໄຟລ​໌​ປ້ອນ​ຂໍ້​ມູນ​ແລະ​ການ​ເປັນ​ຕົວ​ແທນ​ວິ​ດີ​ໂອ​ທີ່​ສອດ​ຄ້ອງ​ກັນ​ຢູ່​ໃນ​ດຽວ​ກັນ​
ເວລາ:

amovie=a.mp3,asplit[out0],showwaves[out1]

·​ສ້າງ​ສັນ​ຍານ​ສັງ​ເຄາະ​ແລະ​ສະ​ແດງ​ໃຫ້​ເຫັນ​ກັບ showwaves​, ບັງ​ຄັບ​ອັດ​ຕາ​ພາ​ຂອງ 30​
ເຟຣມຕໍ່ວິນາທີ:

aevalsrc=sin(1*2*PI*t)*sin(880*2*PI*t):cos(2*PI*200*t),asplit[out0],showwaves=r=30[out1]

ສະແດງຄື້ນ
ປ່ຽນສຽງປ້ອນເຂົ້າເປັນກອບວິດີໂອດຽວ, ເປັນຕົວແທນຂອງຄື້ນຕົວຢ່າງ.

ຕົວກອງຍອມຮັບຕົວເລືອກຕໍ່ໄປນີ້:

ຂະ ໜາດ, s
ລະບຸຂະຫນາດວິດີໂອສໍາລັບຜົນຜະລິດໄດ້. ສໍາລັບ syntax ຂອງທາງເລືອກນີ້, ໃຫ້ກວດເບິ່ງ "ວິດີໂອ
ຂະໜາດ" ສ່ວນ in ໄດ້ ffmpeg-utils ຄູ່ມື. ຄ່າເລີ່ມຕົ້ນແມ່ນ "600x240".

split_channels
ກໍານົດວ່າຊ່ອງຄວນຖືກແຕ້ມແຍກຕ່າງຫາກຫຼືທັບຊ້ອນກັນ. ຄ່າເລີ່ມຕົ້ນແມ່ນ 0.

ຕົວຢ່າງ

·ສະກັດການແບ່ງຊ່ອງເປັນຕົວແທນຂອງຮູບແບບຄື້ນຂອງສຽງທັງຫມົດໃນ a
1024x800 ຮູບ​ພາບ​ການ​ນໍາ​ໃຊ້​ ffmpeg:

ffmpeg -i audio.flac -lavfi showwavespic=split_channels=1:s=1024x800 waveform.png

ແບ່ງ​ປັນ​, ແຍກ
ແຍກການປ້ອນຂໍ້ມູນອອກເປັນຫຼາຍຜົນທີ່ຄືກັນ.

"asplit" ເຮັດວຽກກັບການປ້ອນຂໍ້ມູນສຽງ, "ແຍກ" ກັບວິດີໂອ.

ການກັ່ນຕອງຍອມຮັບພາລາມິເຕີດຽວທີ່ກໍານົດຈໍານວນຂອງຜົນໄດ້ຮັບ. ຖ້າ
ບໍ່​ໄດ້​ລະ​ບຸ​ໄວ້​, ມັນ​ເລີ່ມ​ຕົ້ນ​ທີ່​ຈະ 2​.

ຕົວຢ່າງ

·ສ້າງສອງຜົນໄດ້ຮັບແຍກຕ່າງຫາກຈາກການປ້ອນຂໍ້ມູນດຽວກັນ:

[ໃນ] ແຍກ [out0][out1]

· ເພື່ອສ້າງຜົນຜະລິດ 3 ຫຼືຫຼາຍກວ່ານັ້ນ, ທ່ານຈໍາເປັນຕ້ອງລະບຸຈໍານວນຂອງຜົນໄດ້ຮັບ, ເຊັ່ນ:

[ໃນ] asplit=3 [out0][out1][out2]

· ສ້າງ​ສອງ​ຜົນ​ຜະ​ລິດ​ແຍກ​ຕ່າງ​ຫາກ​ຈາກ​ການ​ປ້ອນ​ຂໍ້​ມູນ​ດຽວ​ກັນ​, ຫນຶ່ງ​ຕັດ​ແລະ​ຫນຶ່ງ padded​:

[ໃນ] ແຍກ [splitout1][splitout2];
[splitout1] crop=100:100:0:0 [cropout];
[splitout2] pad=200:200:100:100 [padout];

· ສ້າງ 5 ສໍາ​ເນົາ​ຂອງ​ສຽງ​ປະ​ກອບ​ດ້ວຍ​ ffmpeg:

ffmpeg -i INPUT -filter_complex asplit=5 OUTPUT

zmq, azmq
ໄດ້ຮັບຄໍາສັ່ງທີ່ສົ່ງຜ່ານລູກຄ້າ libzmq, ແລະສົ່ງຕໍ່ພວກມັນໄປຫາຕົວກອງໃນ
filtergraph.

"zmq" ແລະ "azmq" ເຮັດວຽກເປັນຕົວກອງຜ່ານ. "zmq" ຕ້ອງຖືກໃສ່ລະຫວ່າງສອງວິດີໂອ
ການກັ່ນຕອງ, "azmq" ລະຫວ່າງສອງຕົວກອງສຽງ.

ເພື່ອເປີດໃຊ້ຕົວກອງເຫຼົ່ານີ້, ທ່ານຈໍາເປັນຕ້ອງຕິດຕັ້ງຫ້ອງສະຫມຸດ libzmq ແລະ headers ແລະ configure
FFmpeg ກັບ "--enable-libzmq".

ສໍາລັບຂໍ້ມູນເພີ່ມເຕີມກ່ຽວກັບ libzmq ເບິ່ງ:http://www.zeromq.org/>

ການກັ່ນຕອງ "zmq" ແລະ "azmq" ເຮັດວຽກເປັນເຄື່ອງແມ່ຂ່າຍ libzmq, ເຊິ່ງໄດ້ຮັບຂໍ້ຄວາມທີ່ສົ່ງຜ່ານ.
ການ​ໂຕ້​ຕອບ​ເຄືອ​ຂ່າຍ​ທີ່​ກໍາ​ນົດ​ໂດຍ​ bind_address ທາງເລືອກ.

ຂໍ້ຄວາມທີ່ໄດ້ຮັບຈະຕ້ອງຢູ່ໃນແບບຟອມ:

[ ]

ເປົ້າ​ຫມາຍ ກໍານົດເປົ້າຫມາຍຂອງຄໍາສັ່ງ, ໂດຍປົກກະຕິແມ່ນຊື່ຂອງຊັ້ນການກັ່ນຕອງຫຼື a
ຊື່ຕົວກອງສະເພາະ.

ຄໍາສັ່ງ ລະບຸຊື່ຂອງຄໍາສັ່ງສໍາລັບການກັ່ນຕອງເປົ້າຫມາຍ.

ARG ເປັນທາງເລືອກ ແລະລະບຸລາຍຊື່ການໂຕ້ແຍ້ງທາງເລືອກສຳລັບການໃຫ້ ຄໍາສັ່ງ.

ໃນເວລາຕ້ອນຮັບ, ຂໍ້ຄວາມຖືກປຸງແຕ່ງແລະຄໍາສັ່ງທີ່ສອດຄ້ອງກັນຈະຖືກໃສ່ເຂົ້າໄປໃນ
filtergraph. ອີງຕາມຜົນໄດ້ຮັບ, ການກັ່ນຕອງຈະສົ່ງຄໍາຕອບກັບລູກຄ້າ,
ການ​ນໍາ​ໃຊ້​ຮູບ​ແບບ​ການ​:




ຂໍ້ຄວາມ ແມ່ນທາງເລືອກ.

ຕົວຢ່າງ

ເບິ່ງ​ທີ່ tools/zmqsend ຕົວຢ່າງຂອງລູກຄ້າ zmq ທີ່ສາມາດໃຊ້ເພື່ອສົ່ງຄໍາສັ່ງ
ປະມວນຜົນໂດຍຕົວກອງເຫຼົ່ານີ້.

ພິຈາລະນາການກັ່ນຕອງຕໍ່ໄປນີ້ທີ່ສ້າງຂຶ້ນໂດຍ 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] ວາງຊ້ອນ [bg+l];
[bg+l][r] overlay=x=100"

ເພື່ອປ່ຽນສີຂອງເບື້ອງຊ້າຍຂອງວິດີໂອ, ຄໍາສັ່ງຕໍ່ໄປນີ້ສາມາດນໍາໃຊ້ໄດ້:

echo Parsed_color_0 c ສີເຫຼືອງ | tools/zmqsend

ການ​ປ່ຽນ​ແປງ​ເບື້ອງ​ຂວາ​:

echo Parsed_color_1 c ສີບົວ | tools/zmqsend

MULTIMEDIA ແຫຼ່ງຂໍ້ມູນ


ຂ້າງລຸ່ມນີ້ແມ່ນລາຍລະອຽດຂອງແຫຼ່ງມັນຕິມີເດຍທີ່ມີຢູ່ໃນປັດຈຸບັນ.

ຮູບເງົາ
ນີ້ແມ່ນຄືກັນກັບ ຮູບເງົາ ແຫຼ່ງ, ຍົກເວັ້ນມັນເລືອກການຖ່າຍທອດສຽງໂດຍຄ່າເລີ່ມຕົ້ນ.

ຮູບເງົາ
ອ່ານສຽງ ແລະ/ຫຼື ວິດີໂອສະຕຣີມຈາກກ່ອງບັນຈຸຮູບເງົາ.

ມັນຍອມຮັບຕົວກໍານົດການດັ່ງຕໍ່ໄປນີ້:

ຊື່​ເອ​ກະ​ສານ
ຊື່ຂອງຊັບພະຍາກອນທີ່ຈະອ່ານ (ບໍ່ຈໍາເປັນໄຟລ໌; ມັນຍັງສາມາດເປັນອຸປະກອນຫຼື a
stream ເຂົ້າເຖິງໂດຍຜ່ານບາງໂປໂຕຄອນ).

format_name, f
ລະບຸຮູບແບບທີ່ຄາດໄວ້ສໍາລັບຮູບເງົາທີ່ຈະອ່ານ, ແລະສາມາດເປັນຊື່ຂອງ a
ບັນຈຸຫຼືອຸປະກອນປ້ອນຂໍ້ມູນ. ຖ້າບໍ່ໄດ້ລະບຸ, ຮູບແບບແມ່ນຄາດເດົາຈາກ movie_name
ຫຼືໂດຍການສືບສວນ.

ຊອກຫາຈຸດ, sp
ລະບຸຈຸດຊອກຫາໃນວິນາທີ. ເຟຣມຈະເປັນຜົນຜະລິດເລີ່ມຕົ້ນຈາກການຊອກຫານີ້
ຈຸດ. ພາລາມິເຕີຖືກປະເມີນດ້ວຍ "av_strtod", ດັ່ງນັ້ນຄ່າຕົວເລກອາດຈະເປັນ
ຕໍ່ທ້າຍໂດຍ IS postfix. ຄ່າເລີ່ມຕົ້ນແມ່ນ "0".

ສາຍ​ນ້ຳ​, s
ລະບຸການຖ່າຍທອດເພື່ອອ່ານ. ສາມາດລະບຸສາຍນ້ຳໄດ້ຫຼາຍອັນ, ແຍກອອກດ້ວຍ "+". ໄດ້
ຫຼັງຈາກນັ້ນ, ແຫຼ່ງຈະມີຜົນຜະລິດຫຼາຍ, ໃນຄໍາສັ່ງດຽວກັນ. syntax ໄດ້ຖືກອະທິບາຍໃນ
ພາກສ່ວນ ``ຕົວລະບຸສະຕຣີມ'' ໃນຄູ່ມື ffmpeg. ສອງຊື່ພິເສດ, "dv" ແລະ
"da" ລະບຸຕາມລຳດັບຄ່າເລີ່ມຕົ້ນ (ເໝາະທີ່ສຸດ) ວິດີໂອ ແລະສຽງສະຕຣີມ. ຄ່າເລີ່ມຕົ້ນແມ່ນ
"dv", ຫຼື "da" ຖ້າການກັ່ນຕອງຖືກເອີ້ນວ່າ "ຮູບເງົາ".

stream_index, si
ລະບຸດັດຊະນີຂອງສະຕຣີມວິດີໂອທີ່ຈະອ່ານ. ຖ້າຄ່າແມ່ນ -1, ເຫມາະສົມທີ່ສຸດ
ການຖ່າຍທອດວິດີໂອຈະຖືກເລືອກໂດຍອັດຕະໂນມັດ. ຄ່າເລີ່ມຕົ້ນແມ່ນ "-1". ເຊົາສະໜັບສະໜູນ. ຖ້າ
ການກັ່ນຕອງເອີ້ນວ່າ "amovie", ມັນຈະເລືອກສຽງແທນທີ່ຈະເປັນວິດີໂອ.

loop
ລະບຸຈຳນວນເທື່ອເພື່ອອ່ານການຖ່າຍທອດຕາມລຳດັບ. ຖ້າຄ່າໜ້ອຍກວ່າ 1,
ກະແສຈະຖືກອ່ານອີກຄັ້ງແລະອີກຄັ້ງ. ຄ່າເລີ່ມຕົ້ນແມ່ນ "1".

ໃຫ້ສັງເກດວ່າໃນເວລາທີ່ຮູບເງົາຖືກ looped ເວລາຂອງແຫຼ່ງບໍ່ໄດ້ມີການປ່ຽນແປງ, ສະນັ້ນມັນຈະ
ສ້າງເວລາເພີ່ມຂຶ້ນທີ່ບໍ່ແມ່ນ monotonically.

ມັນອະນຸຍາດໃຫ້ວາງວິດີໂອທີສອງຢູ່ເທິງສຸດຂອງວັດສະດຸປ້ອນຫຼັກຂອງຟິວເຕີ, ດັ່ງທີ່ສະແດງຢູ່ໃນ
ເສັ້ນສະແດງນີ້:

input -----------> deltapts0 --> overlay --> output
^
|
ຮູບເງົາ --> scale--> deltapts1 -------+

ຕົວຢ່າງ

· ຂ້າມ 3.2 ວິນາທີຈາກຈຸດເລີ່ມຕົ້ນຂອງໄຟລ໌ AVI in.avi, ແລະວາງມັນຢູ່ເທິງສຸດ
ການປ້ອນຂໍ້ມູນທີ່ມີປ້າຍກຳກັບ "ໃນ":

movie=in.avi:seek_point=3.2, scale=180:-1, setpts=PTS-STARTPTS [ຫຼາຍກວ່າ];
[in] setpts=PTS-STARTPTS [ຫຼັກ];
[main][over] overlay=16:16 [ອອກ]

· ອ່ານ​ຈາກ​ອຸ​ປະ​ກອນ video4linux2​, ແລະ​ວາງ​ເທິງ​ຂອງ​ການ​ປ້ອນ​ຂໍ້​ມູນ​ທີ່​ມີ​ຊື່ "ໃນ​"​:

movie=/dev/video0:f=video4linux2, scale=180:-1, setpts=PTS-STARTPTS [ຫຼາຍກວ່າ];
[in] setpts=PTS-STARTPTS [ຫຼັກ];
[main][over] overlay=16:16 [ອອກ]

·ອ່ານວິດີໂອນ້ໍາຄັ້ງທໍາອິດແລະນ້ໍາສຽງທີ່ມີ id 0x81 ຈາກ dvd.vob; ວິດີໂອ
ແມ່ນເຊື່ອມຕໍ່ກັບ pad ທີ່ມີຊື່ວ່າ "ວິດີໂອ" ແລະສຽງໄດ້ຖືກເຊື່ອມຕໍ່ກັບ pad ທີ່ມີຊື່
"ສຽງ":

movie=dvd.vob:s=v:0+#0x81 [ວິດີໂອ] [ສຽງ]

ໃຊ້ ffserver-all ອອນໄລນ໌ໂດຍໃຊ້ບໍລິການ onworks.net


ເຊີບເວີ ແລະສະຖານີເຮັດວຽກຟຣີ

ດາວໂຫຼດແອັບ Windows ແລະ Linux

  • 1
    SWIG
    SWIG
    SWIG ເປັນເຄື່ອງມືພັດທະນາຊອບແວ
    ທີ່ເຊື່ອມຕໍ່ບັນດາໂຄງການທີ່ຂຽນໃນ C ແລະ
    C ++ ທີ່ມີຄວາມຫລາກຫລາຍຂອງລະດັບສູງ
    ພາສາການຂຽນໂປຼແກຼມ. SWIG ຖືກນໍາໃຊ້ກັບ
    ແຕກຕ່າງກັນ ...
    ດາວໂຫລດ SWIG
  • 2
    WooCommerce Nextjs React Theme
    WooCommerce Nextjs React Theme
    React WooCommerce ຫົວຂໍ້, ສ້າງຂຶ້ນດ້ວຍ
    JS ຕໍ່ໄປ, Webpack, Babel, Node, ແລະ
    ດ່ວນ, ໃຊ້ GraphQL ແລະ Apollo
    ລູກ​ຄ້າ. ຮ້ານ WooCommerce ໃນ React(
    ປະ​ກອບ​ດ້ວຍ​: ຜະ​ລິດ​ຕະ​ພັນ ...
    ດາວໂຫລດ WooCommerce Nextjs React Theme
  • 3
    archlabs_repo
    archlabs_repo
    Package repo ສໍາລັບ ArchLabs ນີ້ແມ່ນ
    ຄໍາຮ້ອງສະຫມັກທີ່ຍັງສາມາດເອົາມາໄດ້
    ຈາກ
    https://sourceforge.net/projects/archlabs-repo/.
    ມັນໄດ້ຖືກຈັດຢູ່ໃນ OnWorks ໃນ ...
    ດາວໂຫລດ archlabs_repo
  • 4
    ໂຄງການ Zephyr
    ໂຄງການ Zephyr
    ໂຄງການ Zephyr ແມ່ນຄົນຮຸ່ນໃຫມ່
    ລະບົບປະຕິບັດການໃນເວລາຈິງ (RTOS) ນັ້ນ
    ຮອງຮັບຮາດແວຫຼາຍອັນ
    ສະຖາປັດຕະຍະກໍາ. ມັນແມ່ນອີງໃສ່ a
    ແກ່ນຮອຍຕີນນ້ອຍ...
    ດາວໂຫລດໂຄງການ Zephyr
  • 5
    SCons
    SCons
    SCons ເປັນ​ເຄື່ອງ​ມື​ການ​ກໍ່​ສ້າງ​ຊອບ​ແວ​
    ນັ້ນ​ແມ່ນ​ທາງ​ເລືອກ​ທີ່​ດີ​ເລີດ​ຂອງ​
    ຄລາສສິກ "ເຮັດ" ເຄື່ອງມືການກໍ່ສ້າງທີ່
    ພວກເຮົາທຸກຄົນຮູ້ຈັກແລະຮັກ. SCons ແມ່ນ
    ໄດ້​ປະ​ຕິ​ບັດ​ເປັນ ...
    ດາວໂຫລດ SCons
  • 6
    PSeInt
    PSeInt
    PSeInt ເປັນນາຍພາສາ pseudo-code ສໍາລັບ
    ນັກສຶກສາການຂຽນໂປລແກລມທີ່ເວົ້າພາສາສະເປນ.
    ຈຸດ​ປະ​ສົງ​ຕົ້ນ​ຕໍ​ຂອງ​ຕົນ​ແມ່ນ​ເພື່ອ​ເປັນ​ເຄື່ອງ​ມື​ສໍາ​ລັບ​ການ​
    ການຮຽນຮູ້ແລະຄວາມເຂົ້າໃຈພື້ນຖານ
    ແນວຄວາມຄິດ...
    ດາວໂຫລດ PSeInt
  • ເພີ່ມເຕີມ »

Linux ຄຳ ສັ່ງ

  • 1
    7z
    7z
    7z - ແຟ້ມຈັດເກັບໄຟລ໌ທີ່ມີສູງສຸດ
    ອັດ​ຕາ​ສ່ວນ​ການ​ບີບ​ອັດ ...
    ແລ່ນ 7z
  • 2
    7za
    7za
    7za - ແຟ້ມຈັດເກັບໄຟລ໌ທີ່ມີສູງສຸດ
    ອັດ​ຕາ​ສ່ວນ​ການ​ບີບ​ອັດ ...
    ແລ່ນ 7za
  • 3
    creepy
    creepy
    CREEPY - ຂໍ້ມູນສະຖານທີ່ຕັ້ງພູມສາດ
    ລາຍລະອຽດຂອງຕົວສັງລວມ: creepy ແມ່ນ
    ຄໍາຮ້ອງສະຫມັກທີ່ອະນຸຍາດໃຫ້ທ່ານເພື່ອເກັບກໍາ
    ຂໍ້​ມູນ​ກ່ຽວ​ກັບ​ການ​ຕັ້ງ​ພູມ​ສາດ​ກ່ຽວ​ກັບ​ການ​
    ຜູ້​ໃຊ້​ຈາກ ...
    ແລ່ນ creepy
  • 4
    cricket-compile
    cricket-compile
    cricket - ໂຄງ​ການ​ການ​ຄຸ້ມ​ຄອງ​ການ​
    ການເກັບກໍາແລະການສະແດງຊຸດເວລາ
    ຂໍ້ມູນ...
    ແລ່ນ cricket-compile
  • 5
    g-wrap-config
    g-wrap-config
    g-wrap-config - script ເພື່ອໃຫ້ໄດ້ຮັບ
    ຂໍ້ມູນກ່ຽວກັບສະບັບທີ່ຕິດຕັ້ງ
    ຂອງ G-Wrap ...
    ດໍາເນີນການ g-wrap-config
  • 6
    g.accessgrass
    g.accessgrass
    g.access - ຄວບຄຸມການເຂົ້າເຖິງ
    ແຜນ​ທີ່​ໃນ​ປະ​ຈຸ​ບັນ​ສໍາ​ລັບ​ຜູ້​ໃຊ້​ອື່ນໆ​ກ່ຽວ​ກັບ​ການ​
    ລະບົບ. ຖ້າບໍ່ມີທາງເລືອກໃຫ້, ພິມ
    ສະຖານະປັດຈຸບັນ. ຄໍາສໍາຄັນ: ທົ່ວໄປ, ແຜນທີ່
    ການ​ຄຸ້ມ​ຄອງ​, p ...
    ແລ່ນ g.accessgrass
  • ເພີ່ມເຕີມ »

Ad