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

Ad


OnWorks favicon

avconv - ອອນລາຍໃນຄລາວ

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

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

ໂຄງການ:

NAME


ffmpeg - ຕົວແປງວິດີໂອ ffmpeg

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


ffmpeg [global_options] {[input_file_options] -i input_file} ... {[output_file_options]
output_file} ...

ລາຍລະອຽດ


ffmpeg ເປັນ​ວິ​ດີ​ໂອ​ທີ່​ໄວ​ຫຼາຍ​ແລະ​ແປງ​ສຽງ​ທີ່​ຍັງ​ສາ​ມາດ grab ຈາກ​ສຽງ / ວິ​ດີ​ໂອ​ສົດ​
ແຫຼ່ງ. ມັນຍັງສາມາດປ່ຽນລະຫວ່າງອັດຕາຕົວຢ່າງທີ່ຕົນເອງມັກ ແລະປັບຂະໜາດວິດີໂອໄດ້ໃນທັນທີ
ດ້ວຍການກັ່ນຕອງ polyphase ທີ່ມີຄຸນນະພາບສູງ.

ffmpeg ອ່ານ​ຈາກ​ຈໍາ​ນວນ​ທີ່​ຕົນ​ເອງ​ຂອງ​ການ​ປ້ອນ "ໄຟລ​໌​" (ຊຶ່ງ​ສາ​ມາດ​ເປັນ​ໄຟລ​໌​ປົກ​ກະ​ຕິ​, ທໍ່​,​.
network streams, grabbing devices, etc.), ລະບຸໂດຍຕົວເລືອກ "-i", ແລະຂຽນໄປທີ່ an
ຈໍານວນຜົນຜະລິດ "ໄຟລ໌", ເຊິ່ງຖືກກໍານົດໂດຍຊື່ໄຟລ໌ຜົນຜະລິດທໍາມະດາ.
ສິ່ງໃດກໍ່ຕາມທີ່ພົບເຫັນຢູ່ໃນເສັ້ນຄໍາສັ່ງທີ່ບໍ່ສາມາດຕີຄວາມຫມາຍເປັນທາງເລືອກແມ່ນພິຈາລະນາ
ເພື່ອເປັນຊື່ໄຟລ໌ຜົນຜະລິດ.

ແຕ່ລະໄຟລ໌ປ້ອນຂໍ້ມູນຫຼືຜົນຜະລິດສາມາດ, ໃນຫຼັກການ, ມີຈໍານວນຂອງສາຍນ້ໍາທີ່ແຕກຕ່າງກັນ
ປະເພດ (ວິດີໂອ/ສຽງ/ຄໍາບັນຍາຍ/ໄຟລ໌ແນບ/ຂໍ້ມູນ). ຈໍານວນທີ່ອະນຸຍາດ ແລະ/ຫຼືປະເພດຂອງການຖ່າຍທອດ
ອາດຖືກຈຳກັດໂດຍຮູບແບບບັນຈຸ. ການເລືອກສະຕຣີມຈາກທີ່ປ້ອນຂໍ້ມູນຈະໄປ
ທີ່ຜົນຜະລິດແມ່ນເຮັດໂດຍອັດຕະໂນມັດຫຼືດ້ວຍຕົວເລືອກ "-map" (ເບິ່ງ Stream
ບົດ​ຄັດ​ເລືອກ).

ເພື່ອອ້າງອີງໃສ່ໄຟລ໌ປ້ອນຂໍ້ມູນໃນຕົວເລືອກ, ທ່ານຕ້ອງໃຊ້ດັດຊະນີຂອງພວກມັນ (0-based). ຕົວຢ່າງທໍາອິດ
ໄຟລ໌ປ້ອນຂໍ້ມູນແມ່ນ 0, ອັນທີສອງແມ່ນ 1, ແລະອື່ນໆ. ເຊັ່ນດຽວກັນ, ການຖ່າຍທອດພາຍໃນໄຟລ໌ຖືກອ້າງອີງໂດຍ
ດັດຊະນີຂອງພວກເຂົາ. ຕົວຢ່າງ "2:3" ຫມາຍເຖິງການຖ່າຍທອດທີ່ສີ່ໃນໄຟລ໌ປ້ອນຂໍ້ມູນທີສາມ. ຍັງເບິ່ງ
ໝວດຕົວລະບຸການຖ່າຍທອດ

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

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

·​ເພື່ອ​ກໍາ​ນົດ bitrate ວິ​ດີ​ໂອ​ຂອງ​ໄຟລ​໌​ຜົນ​ຜະ​ລິດ​ເປັນ 64 kbit/s​:

ffmpeg -i input.avi -b:v 64k -bufsize 64k output.avi

· ເພື່ອບັງຄັບອັດຕາເຟຣມຂອງໄຟລ໌ຜົນຜະລິດເປັນ 24 fps:

ffmpeg -i input.avi -r 24 output.avi

· ເພື່ອບັງຄັບອັດຕາເຟຣມຂອງໄຟລ໌ປ້ອນຂໍ້ມູນ (ທີ່ຖືກຕ້ອງສໍາລັບຮູບແບບດິບເທົ່ານັ້ນ) ເປັນ 1 fps ແລະ
ອັດຕາເຟຣມຂອງໄຟລ໌ຜົນຜະລິດເປັນ 24 fps:

ffmpeg -r 1 -i input.m2v -r 24 output.avi

ຕົວເລືອກຮູບແບບອາດຈະຕ້ອງການສໍາລັບໄຟລ໌ຂໍ້ມູນດິບ.

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


ຂະບວນການ transcoding ໃນ ffmpeg ສໍາລັບແຕ່ລະຜົນຜະລິດສາມາດຖືກອະທິບາຍໂດຍດັ່ງຕໍ່ໄປນີ້
ແຜນວາດ:

__________ ______________
| | | |
| ວັດສະດຸປ້ອນ | demuxer | ຂໍ້ມູນເຂົ້າລະຫັດ | ຕົວຖອດລະຫັດ
| ໄຟລ໌ | ---------> | ແພັກເກັດ | -----+
|_______| |______________| |
v
_________
| |
| ຖອດລະຫັດ |
| ກອບ |
|_________|
________ ______________ |
| | | | |
| ຜົນຜະລິດ | <-------- | ຂໍ້ມູນເຂົ້າລະຫັດ | <----+
| ໄຟລ໌ | muxer | ແພັກເກັດ | ຕົວເຂົ້າລະຫັດ
|________| |______________|

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

ແພັກເກັດທີ່ເຂົ້າລະຫັດແລ້ວຈະຖືກສົ່ງກັບຕົວຖອດລະຫັດ (ເວັ້ນເສຍແຕ່ວ່າ streamcopy ຈະຖືກເລືອກສໍາລັບ
stream, ເບິ່ງເພີ່ມເຕີມສໍາລັບຄໍາອະທິບາຍ). ຕົວຖອດລະຫັດຜະລິດກອບທີ່ບໍ່ຖືກບີບອັດ (ດິບ
video/PCM audio/...) ເຊິ່ງສາມາດປະມວນຜົນເພີ່ມເຕີມໄດ້ໂດຍການກັ່ນຕອງ (ເບິ່ງພາກຕໍ່ໄປ). ຫຼັງຈາກ
ການ​ກັ່ນ​ຕອງ​, ເຟຣມ​ໄດ້​ຖືກ​ສົ່ງ​ໄປ​ຫາ​ຕົວ​ລະ​ຫັດ​, ທີ່​ເຂົ້າ​ລະ​ຫັດ​ໃຫ້​ເຂົາ​ເຈົ້າ​ແລະ​ຜົນ​ຜະ​ລິດ​ເຂົ້າ​ລະ​ຫັດ​
ແພັກເກັດ. ໃນທີ່ສຸດສິ່ງເຫຼົ່ານັ້ນຖືກສົ່ງກັບ muxer, ເຊິ່ງຂຽນແພັກເກັດທີ່ຖືກເຂົ້າລະຫັດໃສ່
ໄຟລ໌ຜົນຜະລິດ.

ການກັ່ນຕອງ
ກ່ອນທີ່ຈະເຂົ້າລະຫັດ, ffmpeg ສາ​ມາດ​ປຸງ​ແຕ່ງ​ຮູບ​ພາບ​ສຽງ​ແລະ​ວິ​ດີ​ໂອ​ວັດ​ຖຸ​ດິບ​ໂດຍ​ນໍາ​ໃຊ້​ການ​ກັ່ນ​ຕອງ​ຈາກ​
libavfilter ຫ້ອງສະຫມຸດ. ການກັ່ນຕອງລະບົບຕ່ອງໂສ້ຫຼາຍອັນປະກອບເປັນກາຟການກັ່ນຕອງ. ffmpeg ແຕກຕ່າງ
ລະຫວ່າງສອງປະເພດຂອງ filtergraphs: ງ່າຍດາຍແລະສະລັບສັບຊ້ອນ.

ງ່າຍດາຍ filtergraphs

filtergraphs ງ່າຍດາຍແມ່ນສິ່ງເຫຼົ່ານັ້ນທີ່ມີ input ແລະ output ຢ່າງແທ້ຈິງ, ທັງສອງອັນດຽວກັນ
ປະເພດ. ໃນແຜນວາດຂ້າງເທິງນີ້ເຂົາເຈົ້າສາມາດເປັນຕົວແທນໄດ້ໂດຍພຽງແຕ່ໃສ່ຂັ້ນຕອນເພີ່ມເຕີມ
ລະຫວ່າງການຖອດລະຫັດແລະການເຂົ້າລະຫັດ:

________________________ ______________
| | | |
| ຖອດລະຫັດ | | ຂໍ້ມູນເຂົ້າລະຫັດ |
| ກອບ |\ _| ແພັກເກັດ |
|_________| \ /||______________|
\ __________ /
ງ່າຍດາຍ _\|| | / ຕົວເຂົ້າລະຫັດ
filtergraph | ກັ່ນຕອງ |/
| ກອບ |
|__________|

ກັ່ນ​ຕອງ​ທີ່​ງ່າຍ​ດາຍ​ແມ່ນ​ໄດ້​ຮັບ​ການ​ຕັ້ງ​ຄ່າ​ກັບ​ການ​ຕໍ່​ສະ​ຕ​ຣີມ​ -ຕົວກັ່ນຕອງ ທາງ​ເລືອກ (ມີ -vf ແລະ -af
ນາມແຝງສໍາລັບວິດີໂອແລະສຽງຕາມລໍາດັບ). Filtergraph ງ່າຍດາຍສໍາລັບວິດີໂອສາມາດຊອກຫາ
ຕົວຢ່າງເຊັ່ນນີ້:

__________ _______ _______ ________
| | | | | | | |
| ວັດສະດຸປ້ອນ | ---> | deinterlace | ---> | ຂະໜາດ | ---> | ຜົນຜະລິດ |
|_______| |_____________| |_______| |________|

ໃຫ້ສັງເກດວ່າບາງຕົວກອງປ່ຽນຄຸນສົມບັດຂອງກອບແຕ່ບໍ່ແມ່ນເນື້ອໃນຂອງກອບ. ເຊັ່ນ: "fps"
ການກັ່ນຕອງໃນຕົວຢ່າງຂ້າງເທິງນີ້ມີການປ່ຽນແປງຈໍານວນຂອງກອບ, ແຕ່ບໍ່ໄດ້ແຕະຂອບ
ເນື້ອໃນ. ຕົວຢ່າງອີກອັນຫນຶ່ງແມ່ນຕົວກອງ "setpts", ເຊິ່ງພຽງແຕ່ກໍານົດເວລາແລະຖ້າບໍ່ດັ່ງນັ້ນ
ຜ່ານເຟຣມບໍ່ປ່ຽນແປງ.

ສະລັບສັບຊ້ອນ filtergraphs

filtergraphs ສະລັບສັບຊ້ອນແມ່ນສິ່ງທີ່ບໍ່ສາມາດອະທິບາຍໄດ້ພຽງແຕ່ເປັນການປະມວນຜົນເສັ້ນ
ລະບົບຕ່ອງໂສ້ໃຊ້ກັບສາຍນ້ໍາຫນຶ່ງ. ນີ້ແມ່ນກໍລະນີ, ສໍາລັບການຍົກຕົວຢ່າງ, ໃນເວລາທີ່ກາຟມີຫຼາຍກ່ວາ
ຫນຶ່ງ input ແລະ / ຫຼື output, ຫຼືໃນເວລາທີ່ output stream ປະເພດແຕກຕ່າງຈາກ input. ພວກເຂົາສາມາດເປັນ
ສະແດງດ້ວຍແຜນວາດຕໍ່ໄປນີ້:

_________
| |
| ປ້ອນຂໍ້ມູນ 0 |\ __________
|_________| \ | |
\ _________ /| ຜົນຜະລິດ 0 |
\ | | / |__________|
_________ \| ຊັບຊ້ອນ | /
| | | |/
| ປ້ອນຂໍ້ມູນ 1 |---->| ການກັ່ນຕອງ |\
|_________| | | \ __________
/| ເສັ້ນສະແດງ | \ | |
/ | | \| ຜົນຜະລິດ 1 |
_________ / |_________| |__________|
| | /
| ປ້ອນຂໍ້ມູນ 2 |/
|_________|

filtergraphs ສະລັບສັບຊ້ອນແມ່ນ configured ກັບ -filter_complex ທາງເລືອກ. ໃຫ້ສັງເກດວ່ານີ້
ທາງເລືອກແມ່ນທົ່ວໂລກ, ນັບຕັ້ງແຕ່ການກັ່ນຕອງທີ່ສັບສົນ, ໂດຍທໍາມະຊາດຂອງມັນ, ບໍ່ສາມາດມີຄວາມຊັດເຈນ
ກ່ຽວຂ້ອງກັບການຖ່າຍທອດ ຫຼືໄຟລ໌ດຽວ.

ໄດ້ -ລາຟຟີ ທາງເລືອກແມ່ນທຽບເທົ່າກັບ -filter_complex.

ຕົວຢ່າງເລັກນ້ອຍຂອງການກັ່ນຕອງທີ່ສັບສົນແມ່ນຕົວກອງ "ວາງຊ້ອນ", ເຊິ່ງມີສອງວິດີໂອ
ວັດສະດຸປ້ອນ ແລະໜຶ່ງຜົນອອກຂອງວິດີໂອ, ປະກອບມີໜຶ່ງວິດີໂອຊ້ອນຢູ່ເທິງຂອງອີກອັນໜຶ່ງ. ສຽງຂອງມັນ
ຄູ່ຮ່ວມງານແມ່ນຕົວກອງ "amix".

ນ້ໍາ ຄັດລອກ
ສໍາເນົານ້ໍາແມ່ນຮູບແບບທີ່ເລືອກໂດຍການສະຫນອງ "ສໍາເນົາ" ຕົວກໍານົດການ - codec ທາງເລືອກ. ມັນ
ເຮັດໃຫ້ ffmpeg omit ຂັ້ນຕອນການຖອດລະຫັດແລະການເຂົ້າລະຫັດສໍາລັບການຖ່າຍທອດທີ່ລະບຸໄວ້, ສະນັ້ນມັນເຮັດໄດ້ເທົ່ານັ້ນ
demuxing ແລະ muxing. ມັນເປັນປະໂຫຍດສໍາລັບການປ່ຽນຮູບແບບບັນຈຸຫຼືດັດແປງ
metadata ລະດັບ container. ແຜນວາດຂ້າງເທິງນີ້ຈະ, ໃນກໍລະນີນີ້, ງ່າຍດາຍກັບນີ້:

__________ ________ ________
| | | | | |
| ວັດສະດຸປ້ອນ | demuxer | ຂໍ້ມູນເຂົ້າລະຫັດ | muxer | ຜົນຜະລິດ |
| ໄຟລ໌ | ---------> | ແພັກເກັດ | -------> | ໄຟລ໌ |
|_______| |______________| |________|

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

STREAM SELECTION


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

ທ່ານສາມາດປິດບາງຄ່າເລີ່ມຕົ້ນເຫຼົ່ານັ້ນໄດ້ໂດຍການໃຊ້ຕົວເລືອກ "-vn/-an/-sn". ສໍາລັບຄູ່ມືເຕັມ
ຄວບຄຸມ, ໃຊ້ຕົວເລືອກ "-map", ເຊິ່ງປິດການໃຊ້ງານຄ່າເລີ່ມຕົ້ນທີ່ພຽງແຕ່ອະທິບາຍ.

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 fmt (ວັດສະດຸປ້ອນ / ຜົນຜະລິດ)
ບັງຄັບການປ້ອນຂໍ້ມູນ ຫຼືຮູບແບບໄຟລ໌ອອກ. ຮູບແບບແມ່ນປົກກະຕິແລ້ວກວດພົບອັດຕະໂນມັດສໍາລັບການປ້ອນຂໍ້ມູນ
ໄຟລ໌ແລະຄາດເດົາຈາກນາມສະກຸນໄຟລ໌ສໍາລັບໄຟລ໌ຜົນຜະລິດ, ດັ່ງນັ້ນທາງເລືອກນີ້ບໍ່ແມ່ນ
ຈໍາເປັນໃນກໍລະນີຫຼາຍທີ່ສຸດ.

-i ຊື່​ເອ​ກະ​ສານ (ການປ້ອນຂໍ້ມູນ)
ໃສ່ຊື່ໄຟລ໌

-y (ທົ່ວໂລກ)
ຂຽນທັບໄຟລ໌ຜົນຜະລິດໂດຍບໍ່ຕ້ອງຖາມ.

-n (ທົ່ວໂລກ)
ຢ່າຂຽນທັບໄຟລ໌ຜົນຜະລິດ, ແລະອອກຈາກທັນທີຖ້າໄຟລ໌ຜົນຜະລິດທີ່ລະບຸໄວ້ແລ້ວ
ລາຄາ:.

-c[:stream_specifier] ຕົວແປງສັນຍານ (ປ້ອນ/ອອກ, ຕໍ່ກະແສ)
-codec[:stream_specifier] ຕົວແປງສັນຍານ (ປ້ອນ/ອອກ, ຕໍ່ກະແສ)
ເລືອກຕົວເຂົ້າລະຫັດ (ເມື່ອໃຊ້ກ່ອນໄຟລ໌ຜົນຜະລິດ) ຫຼືຕົວຖອດລະຫັດ (ເມື່ອໃຊ້ກ່ອນໄຟລ໌
input file) ສໍາລັບຫນຶ່ງຫຼືຫຼາຍສາຍນ້ໍາ. ຕົວແປງສັນຍານ ແມ່ນຊື່ຂອງຕົວຖອດລະຫັດ/ຕົວເຂົ້າລະຫັດ ຫຼື a
ມູນຄ່າພິເສດ "ສໍາເນົາ" (ຜົນຜະລິດເທົ່ານັ້ນ) ເພື່ອຊີ້ບອກວ່າການຖ່າຍທອດຈະບໍ່ຖືກນໍາມາໃຫມ່.
ເຂົ້າລະຫັດ.

ຍົກ​ຕົວ​ຢ່າງ

ffmpeg -i INPUT -map 0 -c:v libx264 -c:a copy OUTPUT

ເຂົ້າລະຫັດການຖ່າຍທອດວິດີໂອທັງໝົດດ້ວຍ libx264 ແລະສຳເນົາການຖ່າຍທອດສຽງທັງໝົດ.

ສໍາລັບແຕ່ລະສາຍ, ທາງເລືອກ "c" ທີ່ກົງກັນສຸດທ້າຍແມ່ນຖືກນໍາໃຊ້, ດັ່ງນັ້ນ

ffmpeg -i INPUT -map 0 -c ສຳເນົາ -c:v:1 libx264 -c:a:137 libvorbis OUTPUT

ຈະສຳເນົາການຖ່າຍທອດທັງໝົດຍົກເວັ້ນວິດີໂອທີສອງ, ເຊິ່ງຈະຖືກເຂົ້າລະຫັດດ້ວຍ libx264,
ແລະສຽງທີ 138, ເຊິ່ງຈະຖືກເຂົ້າລະຫັດດ້ວຍ libvorbis.

-t ໄລຍະເວລາ (ວັດສະດຸປ້ອນ / ຜົນຜະລິດ)
ເມື່ອໃຊ້ເປັນທາງເລືອກໃນການປ້ອນຂໍ້ມູນ (ກ່ອນ "-i"), ຈໍາກັດ ໄລຍະເວລາ ຂອງ​ຂໍ້​ມູນ​ທີ່​ອ່ານ​ຈາກ​
ໄຟລ໌ປ້ອນຂໍ້ມູນ.

ເມື່ອໃຊ້ເປັນຕົວເລືອກຜົນຜະລິດ (ກ່ອນຊື່ໄຟລ໌ຜົນຜະລິດ), ຢຸດຂຽນຜົນຜະລິດ
ຫຼັງຈາກໄລຍະເວລາຂອງມັນຮອດ ໄລຍະເວລາ.

ໄລຍະເວລາ ຕ້ອງເປັນໄລຍະເວລາສະເພາະ, ເບິ່ງ ໄດ້ ທີ່ໃຊ້ເວລາ ໄລຍະເວລາ ສ່ວນ in ໄດ້
ffmpeg-utils(1​) ຄູ່ມື.

-to ແລະ -t ແມ່ນສະເພາະເຊິ່ງກັນແລະກັນ ແລະ -t ມີບູລິມະສິດ.

- ຕໍາແຫນ່ງ (output)
ຢຸດການຂຽນຜົນຜະລິດຢູ່ທີ່ ຕໍາແຫນ່ງ. ຕໍາແຫນ່ງ ຕ້ອງ​ເປັນ​ຂໍ້​ກໍາ​ນົດ​ໄລ​ຍະ​ເວ​ລາ​,
ເບິ່ງ ໄດ້ ທີ່ໃຊ້ເວລາ ໄລຍະເວລາ ສ່ວນ in ໄດ້ ffmpeg-utils(1​) ຄູ່ມື.

-to ແລະ -t ແມ່ນສະເພາະເຊິ່ງກັນແລະກັນ ແລະ -t ມີບູລິມະສິດ.

-fs limit_size (output)
ກໍານົດຂອບເຂດຂະຫນາດໄຟລ໌, ສະແດງອອກໃນ bytes.

-ss ຕໍາແຫນ່ງ (ວັດສະດຸປ້ອນ / ຜົນຜະລິດ)
ໃນ​ເວ​ລາ​ທີ່​ນໍາ​ໃຊ້​ເປັນ​ທາງ​ເລືອກ​ການ​ປ້ອນ​ຂໍ້​ມູນ (ກ່ອນ "-i​"​)​, ຊອກ​ຫາ​ໃນ​ໄຟລ​໌​ປ້ອນ​ຂໍ້​ມູນ​ນີ້​ເພື່ອ​ ຕໍາແຫນ່ງ. ຫມາຍ​ເຫດ​
ວ່າໃນຮູບແບບສ່ວນໃຫຍ່ມັນເປັນໄປບໍ່ໄດ້ທີ່ຈະຊອກຫາແນ່ນອນ, ດັ່ງນັ້ນ ffmpeg ຈະຊອກຫາວິທີ
ຈຸດຊອກຫາທີ່ໃກ້ທີ່ສຸດກ່ອນ ຕໍາແຫນ່ງ. ໃນ​ເວ​ລາ​ທີ່​ການ​ປ່ຽນ​ແປງ​ແລະ​ -accurate_seek ເປີດໃຊ້ງານ
(ຄ່າເລີ່ມຕົ້ນ), ສ່ວນພິເສດນີ້ລະຫວ່າງຈຸດຊອກຫາແລະ ຕໍາແຫນ່ງ ຈະຖືກຖອດລະຫັດ
ແລະຍົກເລີກ. ເມື່ອເຮັດສຳເນົາການຖ່າຍທອດ ຫຼືເມື່ອໃດ -noaccurate_seek ຖືກນໍາໃຊ້, ມັນຈະເປັນ
ຮັກສາໄວ້.

ເມື່ອໃຊ້ເປັນຕົວເລືອກຜົນຜະລິດ (ກ່ອນຊື່ໄຟລ໌ຜົນຜະລິດ), ຖອດລະຫັດແຕ່ຍົກເລີກການປ້ອນຂໍ້ມູນ
ຈົນກ່ວາເວລາເຖິງ ຕໍາແຫນ່ງ.

ຕໍາແຫນ່ງ ຕ້ອງເປັນໄລຍະເວລາສະເພາະ, ເບິ່ງ ໄດ້ ທີ່ໃຊ້ເວລາ ໄລຍະເວລາ ສ່ວນ in ໄດ້
ffmpeg-utils(1​) ຄູ່ມື.

-sseof ຕໍາແຫນ່ງ (ວັດສະດຸປ້ອນ / ຜົນຜະລິດ)
ເຊັ່ນດຽວກັນກັບທາງເລືອກ "-ss" ແຕ່ກ່ຽວຂ້ອງກັບ "ໃນຕອນທ້າຍຂອງໄຟລ໌". ນັ້ນແມ່ນຄຸນຄ່າທາງລົບ
ກ່ອນຫນ້ານີ້ໃນໄຟລ໌, 0 ຢູ່ທີ່ EOF.

- ຊົດເຊີຍຂອງມັນ ຊົດເຊີຍ (ການປ້ອນຂໍ້ມູນ)
ກໍານົດເວລາຊົດເຊີຍການປ້ອນຂໍ້ມູນ.

ຊົດເຊີຍ ຕ້ອງເປັນໄລຍະເວລາສະເພາະ, ເບິ່ງ ໄດ້ ທີ່ໃຊ້ເວລາ ໄລຍະເວລາ ສ່ວນ in ໄດ້
ffmpeg-utils(1​) ຄູ່ມື.

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

- ສະ​ແຕມ​ເວ​ລາ​ ວັນ (output)
ຕັ້ງເວລາບັນທຶກໃນຖັງ.

ວັນ ຕ້ອງເປັນສະເພາະວັນທີ, ເບິ່ງ ໄດ້ ວັນທີ່ສະຫມັກ ສ່ວນ in ໄດ້ ffmpeg-utils(1​) ຄູ່ມື.

-metadata[:metadata_specifier] ທີ່ສໍາຄັນ=ມູນຄ່າ (ຜົນຜະລິດ, ຕໍ່ metadata)
ຕັ້ງລະຫັດ metadata/ຄູ່ຄ່າ.

ເປັນທາງເລືອກ metadata_specifier ອາດຈະຖືກມອບໃຫ້ເພື່ອກໍານົດ metadata ໃນສາຍຫຼືບົດ.
ເບິ່ງເອກະສານ "-map_metadata" ສໍາລັບລາຍລະອຽດ.

ຕົວເລືອກນີ້ລົບລ້າງເມຕາເດຕາທີ່ຕັ້ງດ້ວຍ "-map_metadata". ມັນຍັງສາມາດລຶບໄດ້
metadata ໂດຍໃຊ້ຄ່າຫວ່າງເປົ່າ.

ສໍາລັບຕົວຢ່າງ, ສໍາລັບການຕັ້ງຄ່າຫົວຂໍ້ໃນໄຟລ໌ຜົນຜະລິດ:

ffmpeg -i in.avi -metadata title="ຫົວຂໍ້ຂອງຂ້ອຍ" out.flv

ເພື່ອຕັ້ງພາສາຂອງສະຕຣີມສຽງທຳອິດ:

ffmpeg -i INPUT -metadata:s:a:0 language=eng OUTPUT

-ເປົ້າ​ຫມາຍ ປະເພດ (output)
ລະບຸປະເພດໄຟລ໌ເປົ້າຫມາຍ ("vcd", "svcd", "dvd", "dv", "dv50"). ປະເພດ ອາດ​ຈະ​ໄດ້​ຮັບ​ຄໍາ​ນໍາ​ຫນ້າ​
ດ້ວຍ "pal-", "ntsc-" ຫຼື "film-" ເພື່ອໃຊ້ມາດຕະຖານທີ່ສອດຄ້ອງກັນ. ຮູບແບບທັງຫມົດ
ທາງເລືອກ (ບິດເຣດ, ຕົວແປງສັນຍານ, ຂະໜາດບັຟເຟີ) ຈະຖືກຕັ້ງໂດຍອັດຕະໂນມັດ. ທ່ານພຽງແຕ່ສາມາດພິມ:

ffmpeg -i myfile.avi -target vcd /tmp/vcd.mpg

ຢ່າງໃດກໍຕາມ, ທ່ານສາມາດກໍານົດທາງເລືອກເພີ່ມເຕີມໄດ້ຕາບໃດທີ່ທ່ານຮູ້ວ່າພວກເຂົາບໍ່ໄດ້
ຂັດກັບມາດຕະຖານເຊັ່ນ:

ffmpeg -i myfile.avi -target vcd -bf 2 /tmp/vcd.mpg

-dframes ຈໍານວນ (output)
ກໍານົດຈໍານວນຂອງກອບຂໍ້ມູນທີ່ຈະຜົນຜະລິດ. ນີ້ແມ່ນນາມແຝງສໍາລັບ "-frames:d".

-ກອບ[:stream_specifier] ກອບ (ຜົນຜະລິດ, ຕໍ່ກະແສ)
ຢຸດຂຽນໃສ່ກະແສຫຼັງຈາກ ກອບ ກອບ.

-q[:stream_specifier] q (ຜົນຜະລິດ, ຕໍ່ກະແສ)
-qscale[:stream_specifier] q (ຜົນຜະລິດ, ຕໍ່ກະແສ)
ໃຊ້ຂະຫນາດຄຸນນະພາບຄົງທີ່ (VBR). ຄວາມຫມາຍຂອງ q/qscale ແມ່ນ​ຂຶ້ນ​ກັບ codec​. ຖ້າ qscale
ຖືກນໍາໃຊ້ໂດຍບໍ່ມີການ stream_specifier ຫຼັງ​ຈາກ​ນັ້ນ​ມັນ​ໃຊ້​ໄດ້​ພຽງ​ແຕ່​ກັບ​ສະ​ຕ​ຣີມ​ວິ​ດີ​ໂອ​, ນີ້​ແມ່ນ​
ເພື່ອຮັກສາຄວາມເຂົ້າກັນໄດ້ກັບພຶດຕິກໍາທີ່ຜ່ານມາແລະເປັນການລະບຸຕົວແປງສັນຍານດຽວກັນ
ມູນຄ່າສະເພາະຕໍ່ກັບ 2 ຕົວແປງສັນຍານທີ່ແຕກຕ່າງກັນທີ່ເປັນສຽງ ແລະວິດີໂອໂດຍທົ່ວໄປບໍ່ແມ່ນສິ່ງທີ່ເປັນ
ມີຈຸດປະສົງໃນເວລາທີ່ບໍ່ມີຕົວກໍານົດການ stream_s ຖືກໃຊ້.

- ການກັ່ນຕອງ[:stream_specifier] filtergraph (ຜົນຜະລິດ, ຕໍ່ກະແສ)
ສ້າງ filtergraph ທີ່ລະບຸໄວ້ໂດຍ filtergraph ແລະໃຊ້ມັນເພື່ອກັ່ນຕອງກະແສ.

filtergraph ແມ່ນລາຍລະອຽດຂອງ filtergraph ເພື່ອນໍາໃຊ້ກັບກະແສ, ແລະຕ້ອງມີ
ວັດສະດຸປ້ອນດຽວແລະຜົນຜະລິດດຽວຂອງປະເພດດຽວກັນຂອງນ້ໍາ. ໃນ filtergraph,
ວັດສະດຸປ້ອນແມ່ນກ່ຽວຂ້ອງກັບປ້າຍຊື່ "ໃນ", ແລະຜົນຜະລິດກັບປ້າຍ "ອອກ". ເບິ່ງ
ffmpeg-filters manual ສໍາລັບຂໍ້ມູນເພີ່ມເຕີມກ່ຽວກັບ syntax filtergraph.

ເບິ່ງ -filter_complex ທາງເລືອກ ຖ້າທ່ານຕ້ອງການສ້າງ filtergraphs ດ້ວຍການປ້ອນຂໍ້ມູນຫຼາຍອັນ
ແລະ/ຫຼື ຜົນຜະລິດ.

-filter_script[:stream_specifier] ຊື່​ເອ​ກະ​ສານ (ຜົນຜະລິດ, ຕໍ່ກະແສ)
ທາງເລືອກນີ້ແມ່ນຄ້າຍຄືກັນກັບ -ຕົວກັ່ນຕອງ, ຄວາມແຕກຕ່າງພຽງແຕ່ວ່າການໂຕ້ຖຽງຂອງມັນແມ່ນ
ຊື່ຂອງໄຟລ໌ທີ່ຄໍາອະທິບາຍການກັ່ນຕອງຈະຖືກອ່ານ.

-ກ່ອນ[:stream_specifier] preset_name (ຜົນຜະລິດ, ຕໍ່ກະແສ)
ລະບຸການຕັ້ງຄ່າລ່ວງໜ້າສຳລັບການຖ່າຍທອດທີ່ກົງກັນ.

- ສະ​ຖິ​ຕິ​ (ທົ່ວໂລກ)
ຄວາມຄືບໜ້າການເຂົ້າລະຫັດການພິມ/ສະຖິຕິ. ມັນເປີດໂດຍຄ່າເລີ່ມຕົ້ນ, ເພື່ອປິດການໃຊ້ງານມັນຢ່າງຈະແຈ້ງທ່ານ
ຈໍາເປັນຕ້ອງລະບຸ "-nostats".

- ຄວາມ​ຄືບ​ຫນ້າ​ url (ທົ່ວໂລກ)
ສົ່ງຂໍ້ມູນຄວາມຄືບໜ້າທີ່ເປັນມິດກັບໂຄງການໄປຫາ url.

ຂໍ້​ມູນ​ຄວາມ​ຄືບ​ຫນ້າ​ແມ່ນ​ລາຍ​ລັກ​ອັກ​ສອນ​ປະ​ມານ​ທຸກໆ​ວິ​ນາ​ທີ​ແລະ​ໃນ​ຕອນ​ທ້າຍ​ຂອງ​
ຂະບວນການເຂົ້າລະຫັດ. ມັນ​ແມ່ນ​ຂອງ "ທີ່ສໍາຄັນ=ມູນຄ່າ"ສາຍ. ທີ່ສໍາຄັນ ປະ​ກອບ​ດ້ວຍ​ຕົວ​ອັກ​ສອນ​ແລະ​ຕົວ​ອັກ​ສອນ​ເທົ່າ​ນັ້ນ​
ຕົວລະຄອນ. ກຸນແຈສຸດທ້າຍຂອງລໍາດັບຂອງຂໍ້ມູນຄວາມຄືບຫນ້າແມ່ນສະເຫມີ "ຄວາມຄືບຫນ້າ".

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

ການປິດການໂຕ້ຕອບກ່ຽວກັບການປ້ອນຂໍ້ມູນມາດຕະຖານແມ່ນເປັນປະໂຫຍດ, ຕົວຢ່າງ, ຖ້າ ffmpeg ຢູ່ໃນ
ກຸ່ມຂະບວນການພື້ນຖານ. ປະມານຜົນໄດ້ຮັບດຽວກັນສາມາດບັນລຸໄດ້ດ້ວຍ "ffmpeg ...
/dev/null" ແຕ່ມັນຕ້ອງການ shell.

-debug_ts (ທົ່ວໂລກ)
ພິມຂໍ້ມູນເວລາພິມ. ມັນຖືກປິດໂດຍຄ່າເລີ່ມຕົ້ນ. ທາງເລືອກນີ້ສ່ວນໃຫຍ່ແມ່ນເປັນປະໂຫຍດສໍາລັບ
ຈຸດ​ປະ​ສົງ​ການ​ທົດ​ສອບ​ແລະ debugging​, ແລະ​ຮູບ​ແບບ​ຜົນ​ຜະ​ລິດ​ອາດ​ຈະ​ມີ​ການ​ປ່ຽນ​ແປງ​ຈາກ​ສະ​ບັບ​ຫນຶ່ງ​ກັບ​
ອື່ນ, ສະນັ້ນມັນບໍ່ຄວນຖືກຈ້າງໂດຍສະຄິບແບບພົກພາ.

ເບິ່ງຕົວເລືອກ "-fdebug ts".

- ຕິດ​ ຊື່​ເອ​ກະ​ສານ (output)
ເພີ່ມໄຟລ໌ແນບໃສ່ໄຟລ໌ຜົນຜະລິດ. ນີ້ແມ່ນສະຫນັບສະຫນູນໂດຍຮູບແບບຈໍານວນຫນ້ອຍເຊັ່ນ Matroska
ສໍາ​ລັບ​ຕົວ​ຢ່າງ​ຕົວ​ອັກ​ສອນ​ທີ່​ນໍາ​ໃຊ້​ໃນ​ການ​ເຮັດ​ໃຫ້​ຄໍາ​ບັນ​ຍາຍ​. ໄຟລ໌ແນບໄດ້ຖືກປະຕິບັດເປັນສະເພາະ
ປະເພດຂອງການຖ່າຍທອດ, ດັ່ງນັ້ນທາງເລືອກນີ້ຈະເພີ່ມການຖ່າຍທອດໃຫມ່ໃຫ້ກັບໄຟລ໌. ມັນເປັນໄປໄດ້ຫຼັງຈາກນັ້ນ
ເພື່ອໃຊ້ຕົວເລືອກຕໍ່ສະຕຣີມຢູ່ໃນສະຕຣີມນີ້ໃນແບບປົກກະຕິ. ສ້າງສາຍໄຟລ໌ແນບ
ກັບຕົວເລືອກນີ້ຈະຖືກສ້າງຂື້ນຫຼັງຈາກສາຍນ້ໍາອື່ນໆທັງຫມົດ (ເຊັ່ນວ່າສ້າງດ້ວຍ
"-map" ຫຼືແຜນທີ່ອັດຕະໂນມັດ).

ໃຫ້ສັງເກດວ່າສໍາລັບ Matroska ທ່ານຍັງຕ້ອງກໍານົດແທັກ metadata mime:

ffmpeg -i INPUT -attach DejaVuSans.ttf -metadata:s:2 mimetype=application/x-truetype-font out.mkv

(ສົມມຸດວ່າກະແສໄຟລ໌ແນບຈະເປັນອັນດັບສາມໃນໄຟລ໌ຜົນຜະລິດ).

-dump_attachment[:stream_specifier] ຊື່​ເອ​ກະ​ສານ (ການປ້ອນຂໍ້ມູນ, ຕໍ່ກະແສ)
ສະກັດກະແສໄຟລ໌ແນບທີ່ກົງກັນເຂົ້າໄປໃນໄຟລ໌ທີ່ມີຊື່ ຊື່​ເອ​ກະ​ສານທີ່ຢູ່ ຖ້າຫາກວ່າ ຊື່​ເອ​ກະ​ສານ is
ຫວ່າງເປົ່າ, ຫຼັງຈາກນັ້ນມູນຄ່າຂອງແທັກ metadata "ຊື່ໄຟລ໌" ຈະຖືກໃຊ້.

ຕົວຢ່າງ: ເພື່ອສະກັດໄຟລ໌ແນບທໍາອິດໃສ່ໄຟລ໌ທີ່ມີຊື່ 'out.ttf':

ffmpeg -dump_attachment:t:0 out.ttf -i INPUT

ເພື່ອແຍກໄຟລ໌ແນບທັງໝົດໃຫ້ກັບໄຟລ໌ທີ່ກຳນົດໂດຍແທັກ "filename":

ffmpeg -dump_attachment:t "" -i INPUT

ຫມາຍເຫດດ້ານວິຊາການ -- ໄຟລ໌ແນບໄດ້ຖືກປະຕິບັດເປັນ codec extradata, ສະນັ້ນທາງເລືອກນີ້ສາມາດ
ຕົວຈິງແລ້ວໄດ້ຖືກນໍາໃຊ້ເພື່ອສະກັດ extradata ຈາກການຖ່າຍທອດໃດໆ, ບໍ່ພຽງແຕ່ໄຟລ໌ແນບ.

-noautorotate
ປິດໃຊ້ງານການຫມຸນວິດີໂອອັດຕະໂນມັດໂດຍອີງໃສ່ metadata ຂອງໄຟລ໌.

ວິດີໂອ ທາງເລືອກໃນການ
-vframes ຈໍານວນ (output)
ກໍານົດຈໍານວນຂອງກອບວິດີໂອທີ່ຈະຜົນຜະລິດ. ນີ້ແມ່ນນາມແຝງສໍາລັບ "-frames:v".

-r[:stream_specifier] ເຟມຕໍ່ວິນາ (ປ້ອນ/ອອກ, ຕໍ່ກະແສ)
ກໍານົດອັດຕາເຟຣມ (ຄ່າ Hz, ແຕ່ສ່ວນຫນຶ່ງຫຼືຕົວຫຍໍ້).

ໃນ​ຖາ​ນະ​ເປັນ​ທາງ​ເລືອກ​ການ​ປ້ອນ​ຂໍ້​ມູນ​, ບໍ່​ສົນ​ໃຈ​ສະ​ແຕມ​ເວ​ລາ​ທີ່​ເກັບ​ຮັກ​ສາ​ໄວ້​ໃນ​ໄຟລ​໌​ແລະ​ແທນ​ທີ່​ຈະ​ສ້າງ​
timestamps ສົມມຸດວ່າອັດຕາເຟມຄົງທີ່ ເຟມຕໍ່ວິນາ. ອັນນີ້ບໍ່ຄືກັນ - ກອບ
ທາງ​ເລືອກ​ທີ່​ໃຊ້​ສໍາ​ລັບ​ຮູບ​ແບບ​ການ​ປ້ອນ​ຂໍ້​ມູນ​ຈໍາ​ນວນ​ຫນຶ່ງ​ເຊັ່ນ image2 ຫຼື v4l2 (ມັນ​ເຄີຍ​ເປັນ​ອັນ​ດຽວ​ກັນ​ໃນ​
FFmpeg ຮຸ່ນເກົ່າ). ຖ້າສົງໃສໃຊ້ - ກອບ ແທນທີ່ຈະເປັນທາງເລືອກໃນການປ້ອນຂໍ້ມູນ -r.

ໃນ​ຖາ​ນະ​ເປັນ​ທາງ​ເລືອກ​ການ​ຜະ​ລິດ​ໄດ້​, duplicate ຫຼື​ຫຼຸດ​ລົງ​ເຟຣມ​ການ​ປ້ອນ​ຂໍ້​ມູນ​ເພື່ອ​ບັນ​ລຸ​ກອບ​ຜົນ​ຜະ​ລິດ​ຄົງ​ທີ່​
ອັດຕາການ ເຟມຕໍ່ວິນາ.

-s[:stream_specifier] ຂະຫນາດ (ປ້ອນ/ອອກ, ຕໍ່ກະແສ)
ກໍານົດຂະຫນາດກອບ.

ໃນ​ຖາ​ນະ​ເປັນ​ທາງ​ເລືອກ​ການ​ປ້ອນ​ຂໍ້​ມູນ​, ນີ້​ແມ່ນ​ທາງ​ລັດ​ສໍາ​ລັບ​ການ​ video_size ທາງເລືອກສ່ວນຕົວ, ຮັບຮູ້
ໂດຍ demuxers ບາງທີ່ຂະຫນາດຂອງກອບແມ່ນບໍ່ຖືກເກັບໄວ້ໃນໄຟລ໌ຫຼືແມ່ນ
ກຳນົດຄ່າໄດ້ - ຕົວຢ່າງ: ວິດີໂອດິບ ຫຼືຕົວຈັບວິດີໂອ.

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

ຮູບແບບແມ່ນ wxh (ຄ່າເລີ່ມຕົ້ນ - ຄືກັນກັບແຫຼ່ງ).

-ດ້ານ[:stream_specifier] ລັກສະນະ (ຜົນຜະລິດ, ຕໍ່ກະແສ)
ກໍານົດອັດຕາສ່ວນການສະແດງວິດີໂອທີ່ລະບຸໄວ້ໂດຍ ລັກສະນະ.

ລັກສະນະ ສາ​ມາດ​ເປັນ​ສະ​ຕ​ຣິງ​ຈໍາ​ນວນ​ຈຸດ​ທີ່​ເລື່ອນ​ໄດ້​, ຫຼື​ສະ​ຕ​ຣິງ​ຂອງ​ຮູບ​ແບບ​ num:ໄດ້, ບ່ອນທີ່
num ແລະ ໄດ້ ແມ່ນຕົວເລກແລະຕົວຫານຂອງອັດຕາສ່ວນ. ຕົວຢ່າງ "4: 3",
"16:9", "1.3333", ແລະ "1.7777" ແມ່ນຄ່າອາກິວເມັນທີ່ຖືກຕ້ອງ.

ຖ້າໃຊ້ຮ່ວມກັບ -vcodec ຄັດລອກ, ມັນຈະສົ່ງຜົນກະທົບຕໍ່ອັດຕາສ່ວນທີ່ເກັບຮັກສາໄວ້
ລະດັບບັນຈຸ, ແຕ່ບໍ່ແມ່ນອັດຕາສ່ວນທີ່ເກັບໄວ້ໃນກອບທີ່ຖືກເຂົ້າລະຫັດ, ຖ້າມັນມີຢູ່.

-vn (output)
ປິດການໃຊ້ງານການບັນທຶກວິດີໂອ.

-vcodec ຕົວແປງສັນຍານ (output)
ຕັ້ງຕົວແປງສັນຍານວິດີໂອ. ນີ້ແມ່ນນາມແຝງສໍາລັບ "-codec:v".

-ຜ່ານ[:stream_specifier] n (ຜົນຜະລິດ, ຕໍ່ກະແສ)
ເລືອກໝາຍເລກຜ່ານ (1 ຫຼື 2). ມັນຖືກນໍາໃຊ້ເພື່ອເຮັດການເຂົ້າລະຫັດວິດີໂອສອງຜ່ານ. ໄດ້
ສະ​ຖິ​ຕິ​ຂອງ​ວິ​ດີ​ໂອ​ໄດ້​ຖືກ​ບັນ​ທຶກ​ໄວ້​ໃນ​ການ​ຜ່ານ​ຄັ້ງ​ທໍາ​ອິດ​ເຂົ້າ​ໄປ​ໃນ​ໄຟລ​໌​ບັນ​ທຶກ (ເບິ່ງ​ຍັງ​ໄດ້​
option -passlogfile), ແລະໃນຄັ້ງທີສອງ, ໄຟລ໌ບັນທຶກຖືກໃຊ້ເພື່ອສ້າງ
ວິດີໂອໃນອັດຕາບິດທີ່ຮ້ອງຂໍທີ່ແນ່ນອນ. ໃນ pass 1, ທ່ານພຽງແຕ່ອາດຈະປິດສຽງແລະ
ກໍານົດຜົນຜະລິດເປັນ null, ຕົວຢ່າງສໍາລັບ Windows ແລະ Unix:

ffmpeg -i foo.mov -c:v libxvid -pass 1 -an -f rawvideo -y NUL
ffmpeg -i foo.mov -c:v libxvid -pass 1 -an -f rawvideo -y /dev/null

-passlogfile[:stream_specifier] ຄຳ ນຳ ໜ້າ (ຜົນຜະລິດ, ຕໍ່ກະແສ)
ຕັ້ງຊື່ໄຟລ໌ບັນທຶກສອງຜ່ານເປັນ ຄຳ ນຳ ໜ້າ, ຄໍານໍາຫນ້າຊື່ໄຟລ໌ເລີ່ມຕົ້ນແມ່ນ
``ffmpeg2pass''. ຊື່ໄຟລ໌ທີ່ສົມບູນຈະເປັນ PREFIX-N.log, ບ່ອນທີ່ N ເປັນຕົວເລກ
ສະເພາະກັບກະແສຜົນຜະລິດ

-vf filtergraph (output)
ສ້າງ filtergraph ທີ່ລະບຸໄວ້ໂດຍ filtergraph ແລະໃຊ້ມັນເພື່ອກັ່ນຕອງກະແສ.

ນີ້ແມ່ນນາມແຝງສໍາລັບ "-filter:v", ເບິ່ງ -ຕົວກັ່ນຕອງ ທາງເລືອກ.

ແບບ​ພິ​ເສດ ວິດີໂອ ທາງເລືອກໃນການ
-pix_fmt[:stream_specifier] ຮູບແບບ (ປ້ອນ/ອອກ, ຕໍ່ກະແສ)
ກໍານົດຮູບແບບ pixels ລວງ. ໃຊ້ "-pix_fmts" ເພື່ອສະແດງທຸກຮູບແບບ pixels ລວງທີ່ສະຫນັບສະຫນູນ. ຖ້າ
ຮູບແບບ pixels ລວງທີ່ເລືອກບໍ່ສາມາດເລືອກໄດ້, ffmpeg ຈະພິມຄໍາເຕືອນແລະເລືອກ
ຮູບແບບ pixels ລວງທີ່ດີທີ່ສຸດສະຫນັບສະຫນູນໂດຍຕົວເຂົ້າລະຫັດ. ຖ້າ pix_fmt ຖືກນຳໜ້າດ້ວຍ "+", ffmpeg
ຈະອອກດ້ວຍຄວາມຜິດພາດຖ້າຮູບແບບ pixels ລວງທີ່ຮ້ອງຂໍບໍ່ສາມາດຖືກເລືອກ, ແລະ
ການແປງອັດຕະໂນມັດພາຍໃນ filtergraphs ຖືກປິດໃຊ້ງານ. ຖ້າ pix_fmt ແມ່ນອັນດຽວ "+",
ffmpeg ເລືອກຮູບແບບ pixel ດຽວກັນກັບການປ້ອນຂໍ້ມູນ (ຫຼືຜົນຜະລິດກຣາຟ) ແລະອັດຕະໂນມັດ
ການແປງຖືກປິດໃຊ້ງານ.

-sws_flags ທົງ (ວັດສະດຸປ້ອນ / ຜົນຜະລິດ)
ຕັ້ງທຸງ SwScaler.

-vdt n
ຍົກເລີກເກນ.

-rc_override[:stream_specifier] override (ຜົນຜະລິດ, ຕໍ່ກະແສ)
ການ​ຄວບ​ຄຸມ​ອັດ​ຕາ​ການ override ສໍາ​ລັບ​ໄລ​ຍະ​ທີ່​ສະ​ເພາະ​, ຈັດ​ຮູບ​ແບບ​ເປັນ "int​, int​, int​" ລາຍ​ການ​
ແຍກດ້ວຍເຄື່ອງໝາຍເລກ. ສອງຄ່າທຳອິດແມ່ນຕົວເລກກອບເລີ່ມຕົ້ນ ແລະທ້າຍ, ສຸດທ້າຍ
ຫນຶ່ງແມ່ນ quantizer ການນໍາໃຊ້ຖ້າຫາກວ່າເປັນບວກ, ຫຼືປັດໄຈຄຸນນະພາບຖ້າຫາກວ່າເປັນລົບ.

-ອິມ
ບັງຄັບໃຫ້ການຮອງຮັບ interlacing ໃນຕົວເຂົ້າລະຫັດ (MPEG-2 ແລະ MPEG-4 ເທົ່ານັ້ນ). ໃຊ້ຕົວເລືອກນີ້ຖ້າ
ໄຟລ໌ປ້ອນຂໍ້ມູນຂອງທ່ານຖືກ interlaced ແລະທ່ານຕ້ອງການຮັກສາຮູບແບບ interlaced ສໍາລັບຕໍາ່ສຸດທີ່
ການສູນເສຍ. ທາງ​ເລືອກ​ແມ່ນ​ເພື່ອ deinterlace ສະ​ຕ​ຣີມ​ການ​ປ້ອນ​ຂໍ້​ມູນ​ກັບ​ -deinterlace, ແຕ່
deinterlacing ແນະນໍາການສູນເສຍ.

-psnr
ຄິດໄລ່ PSNR ຂອງເຟຣມທີ່ຖືກບີບອັດ.

-vstats
ຖິ້ມສະຖິຕິການເຂົ້າລະຫັດວິດີໂອເພື່ອ vstats_HHMMSS.log.

-vstats_file ເອກະສານ
ຖິ້ມສະຖິຕິການເຂົ້າລະຫັດວິດີໂອເພື່ອ ເອກະສານ.

- ເທິງ[:stream_specifier] n (ຜົນຜະລິດ, ຕໍ່ກະແສ)
top=1/bottom=0/auto=-1 ປ່ອງໃສ່ກ່ອນ

-dc ຄວາມຖືກຕ້ອງ
Intra_dc_precision.

-vtag fourcc/tag (output)
ບັງຄັບແທັກວິດີໂອ/fourcc. ນີ້ແມ່ນນາມແຝງສໍາລັບ "-tag:v".

-qphist (ທົ່ວໂລກ)
ສະແດງຮິສໂຕແກຣມ QP

-vbsf bitstream_filter
ປະຕິເສດການເບິ່ງ -bsf

-force_key_frames[:stream_specifier] ທີ່ໃຊ້ເວລາ[,ທີ່ໃຊ້ເວລາ... ] (ຜົນຜະລິດ, ຕໍ່ກະແສ)
-force_key_frames[:stream_specifier] expr:ຕົວຢ່າງ (ຜົນຜະລິດ, ຕໍ່ກະແສ)
ບັງຄັບເຟຣມຫຼັກໃນເວລາກໍານົດເວລາ, ຊັດເຈນກວ່າຢູ່ເຟຣມທໍາອິດຫຼັງຈາກ
ແຕ່ລະເວລາທີ່ກໍານົດໄວ້.

ຖ້າການໂຕ້ຖຽງຖືກນໍາຫນ້າດ້ວຍ "expr:", string ຕົວຢ່າງ ຖືກຕີຄວາມໝາຍຄືກັບ
ການສະແດງອອກແລະຖືກປະເມີນສໍາລັບແຕ່ລະກອບ. ກອບກະແຈຖືກບັງຄັບໃນກໍລະນີທີ່
ການປະເມີນບໍ່ແມ່ນສູນ.

ຖ້າເວລາຫນຶ່ງແມ່ນ ""ບົດ"delta]", ມັນໄດ້ຖືກຂະຫຍາຍໄປສູ່ເວລາຂອງ
ການເລີ່ມຕົ້ນຂອງທຸກບົດໃນໄຟລ໌, ປ່ຽນໂດຍ delta, ສະແດງອອກເປັນເວລາໃນ
ວິນາທີ. ທາງເລືອກນີ້ສາມາດເປັນປະໂຫຍດເພື່ອຮັບປະກັນວ່າຈຸດຊອກຫາຢູ່ໃນ a
ເຄື່ອງໝາຍບົດ ຫຼືບ່ອນອື່ນທີ່ກຳນົດໄວ້ໃນໄຟລ໌ຜົນຜະລິດ.

ຕົວຢ່າງ, ເພື່ອໃສ່ກອບກະແຈຢູ່ທີ່ 5 ນາທີ, ບວກກັບຄີເຟຣມ 0.1 ວິນາທີກ່ອນ
ຈຸດເລີ່ມຕົ້ນຂອງທຸກໆບົດ:

-force_key_frames 0:05:00,ບົດ-0.1

ການສະແດງອອກໃນ ຕົວຢ່າງ ສາມາດປະກອບມີຄ່າຄົງທີ່ຕໍ່ໄປນີ້:

n ຈໍາ​ນວນ​ຂອງ​ກອບ​ການ​ປຸງ​ແຕ່ງ​ໃນ​ປັດ​ຈຸ​ບັນ​, ເລີ່ມ​ຈາກ 0​

n_ບັງຄັບ
ຈໍານວນຂອງກອບບັງຄັບ

prev_forced_n
ຈໍານວນຂອງກອບການບັງຄັບທີ່ຜ່ານມາ, ມັນແມ່ນ "NAN" ໃນເວລາທີ່ບໍ່ມີຄີເຟຣມຖືກບັງຄັບ
ຍັງ

prev_forced_t
ເວລາຂອງກອບບັງຄັບກ່ອນຫນ້ານີ້, ມັນແມ່ນ "NAN" ໃນເວລາທີ່ບໍ່ມີຄີເຟຣມຖືກບັງຄັບ

t ເວລາຂອງກອບການປຸງແຕ່ງໃນປະຈຸບັນ

ສໍາ​ລັບ​ຕົວ​ຢ່າງ​ທີ່​ຈະ​ບັງ​ຄັບ​ກະ​ແຈ​ທຸກໆ 5 ວິ​ນາ​ທີ​, ທ່ານ​ສາ​ມາດ​ລະ​ບຸ​ວ່າ​:

-force_key_frames expr:gte(t,n_forced*5)

ເພື່ອບັງຄັບກອບທີ່ສໍາຄັນ 5 ວິນາທີຫຼັງຈາກເວລາຂອງການບັງຄັບສຸດທ້າຍ, ເລີ່ມຕົ້ນຈາກ
ທີສອງ 13:

-force_key_frames expr:if(isnan(prev_forced_t),gte(t,13),gte(t,prev_forced_t+5))

ໃຫ້ສັງເກດວ່າການບັງຄັບໃຊ້ຄີເຟຣມຫຼາຍເກີນໄປແມ່ນເປັນອັນຕະລາຍຫຼາຍສໍາລັບສູດການຄິດໄລ່ການເບິ່ງກ່ອນໜ້າ
ຕົວເຂົ້າລະຫັດສະເພາະ: ການໃຊ້ທາງເລືອກ GOP ຄົງທີ່ ຫຼືຄ້າຍຄືກັນຈະມີປະສິດທິພາບຫຼາຍຂຶ້ນ.

-copyinkf[:stream_specifier] (ຜົນຜະລິດ, ຕໍ່ກະແສ)
ໃນ​ເວ​ລາ​ທີ່​ເຮັດ​ສໍາ​ເນົາ​ການ​ສະ​ຕ​ຣີມ​, ສໍາ​ເນົາ​ຍັງ​ບໍ່​ແມ່ນ​ເຟຣມ​ທີ່​ສໍາ​ຄັນ​ທີ່​ພົບ​ເຫັນ​ໃນ​ຕອນ​ຕົ້ນ​.

-hwaccel[:stream_specifier] hwaccel (ການປ້ອນຂໍ້ມູນ, ຕໍ່ກະແສ)
ໃຊ້ການເລັ່ງຮາດແວເພື່ອຖອດລະຫັດກະແສທີ່ກົງກັນ. ຄ່າທີ່ອະນຸຍາດຂອງ
hwaccel ແມ່ນ:

none
ຢ່າໃຊ້ການເລັ່ງຮາດແວໃດໆ (ຄ່າເລີ່ມຕົ້ນ).

ອັດຕະໂນມັດ
ເລືອກວິທີການເລັ່ງຮາດແວໂດຍອັດຕະໂນມັດ.

ຊີວິດ ໃຊ້ການເລັ່ງຮາດແວ Apple VDA.

vdpau
ໃຊ້ VDPAU (Video Decode and Presentation API for Unix) ການເລັ່ງຮາດແວ.

dxva2
ໃຊ້ການເລັ່ງຮາດແວ DXVA2 (DirectX Video Acceleration).

ຕົວເລືອກນີ້ບໍ່ມີຜົນຖ້າ hwaccel ທີ່ເລືອກນັ້ນບໍ່ສາມາດໃຊ້ໄດ້ ຫຼືບໍ່ໄດ້ຮັບການສະຫນັບສະຫນູນຈາກ
ຕົວຖອດລະຫັດທີ່ເລືອກ.

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

-hwaccel_device[:stream_specifier] hwaccel_device (ການປ້ອນຂໍ້ມູນ, ຕໍ່ກະແສ)
ເລືອກອຸປະກອນທີ່ຈະໃຊ້ສໍາລັບການເລັ່ງຮາດແວ.

ທາງເລືອກນີ້ພຽງແຕ່ເຮັດໃຫ້ຄວາມຮູ້ສຶກໃນເວລາທີ່ -hwaccel ທາງ​ເລືອກ​ຍັງ​ໄດ້​ລະ​ບຸ​ໄວ້​. ທີ່ແນ່ນອນຂອງມັນ
ຄວາມຫມາຍແມ່ນຂຶ້ນກັບວິທີການເລັ່ງຮາດແວສະເພາະທີ່ເລືອກ.

vdpau
ສໍາລັບ VDPAU, ທາງເລືອກນີ້ກໍານົດ X11 ຈໍສະແດງຜົນ / ທີ່ຈະໃຊ້. ຖ້າທາງເລືອກນີ້ແມ່ນ
ບໍ່ໄດ້ລະບຸ, ມູນຄ່າຂອງ DISPLAY ຕົວແປສະພາບແວດລ້ອມຖືກນໍາໃຊ້

dxva2
ສໍາລັບ DXVA2, ທາງເລືອກນີ້ຄວນຈະມີຈໍານວນຂອງອະແດບເຕີສະແດງຜົນທີ່ຈະໃຊ້.
ຖ້າຕົວເລືອກນີ້ບໍ່ໄດ້ຖືກລະບຸ, ອະແດບເຕີເລີ່ມຕົ້ນຖືກໃຊ້.

-hwaccels
ບອກວິທີການເລັ່ງຮາດແວທັງໝົດທີ່ຮອງຮັບໃນການກໍ່ສ້າງຂອງ ffmpeg ນີ້.

ສຽງ ທາງເລືອກໃນການ
-aframes ຈໍານວນ (output)
ກໍານົດຈໍານວນຂອງກອບສຽງທີ່ຈະອອກ. ນີ້ແມ່ນນາມແຝງສໍາລັບ "-frames:a".

-ar[:stream_specifier] ຄວາມຖີ່ (ປ້ອນ/ອອກ, ຕໍ່ກະແສ)
ຕັ້ງຄ່າຄວາມຖີ່ຂອງການເກັບຕົວຢ່າງສຽງ. ສໍາ​ລັບ​ການ​ສະ​ຕ​ຣີມ​ຜົນ​ຜະ​ລິດ​ມັນ​ໄດ້​ຖືກ​ກໍາ​ນົດ​ໄວ້​ໂດຍ​ຄ່າ​ເລີ່ມ​ຕົ້ນ​ທີ່​
ຄວາມຖີ່ຂອງກະແສການປ້ອນຂໍ້ມູນທີ່ສອດຄ້ອງກັນ. ສໍາລັບການປ້ອນນ້ໍາທາງເລືອກນີ້ພຽງແຕ່ເຮັດໃຫ້
ຄວາມ​ຮູ້​ສຶກ​ສໍາ​ລັບ​ອຸ​ປະ​ກອນ grabbing ສຽງ​ແລະ demuxers ວັດ​ຖຸ​ດິບ​ແລະ​ໄດ້​ຖືກ​ສ້າງ​ແຜນ​ທີ່​ທີ່​ສອດ​ຄ້ອງ​ກັນ​
ຕົວເລືອກ demuxer.

-aq q (output)
ຕັ້ງຄ່າຄຸນນະພາບສຽງ (ຕົວແປງສັນຍານສະເພາະ, VBR). ນີ້ແມ່ນນາມແຝງສໍາລັບ -q:a.

-ac[:stream_specifier] ຊ່ອງທາງ (ປ້ອນ/ອອກ, ຕໍ່ກະແສ)
ກໍານົດຈໍານວນຊ່ອງສຽງ. ສໍາ​ລັບ​ການ​ສະ​ຕ​ຣີມ​ຜົນ​ຜະ​ລິດ​ມັນ​ໄດ້​ຖືກ​ກໍາ​ນົດ​ໄວ້​ໂດຍ​ຄ່າ​ເລີ່ມ​ຕົ້ນ​ທີ່​
ຈໍາ​ນວນ​ຂອງ​ຊ່ອງ​ທາງ​ສຽງ​ເຂົ້າ​. ສໍາລັບການປ້ອນນ້ໍາທາງເລືອກນີ້ພຽງແຕ່ເຮັດໃຫ້ຄວາມຮູ້ສຶກສໍາລັບ
ອຸ​ປະ​ກອນ grabbing ສຽງ​ແລະ demuxers ວັດ​ຖຸ​ດິບ​ແລະ​ໄດ້​ຖືກ​ສ້າງ​ແຜນ​ທີ່​ກັບ demuxer ທີ່​ສອດ​ຄ້ອງ​ກັນ​
ຕົວເລືອກ

-ເປັນ (output)
ປິດການໃຊ້ງານການບັນທຶກສຽງ.

-Acodec ຕົວແປງສັນຍານ (ວັດສະດຸປ້ອນ / ຜົນຜະລິດ)
ຕັ້ງຕົວແປງສັນຍານສຽງ. ນີ້ແມ່ນນາມແຝງສໍາລັບ "-codec:a".

-sample_fmt[:stream_specifier] ຕົວຢ່າງ_fmt (ຜົນຜະລິດ, ຕໍ່ກະແສ)
ກໍານົດຮູບແບບຕົວຢ່າງສຽງ. ໃຊ້ "-sample_fmts" ເພື່ອໃຫ້ໄດ້ຮັບບັນຊີລາຍຊື່ຂອງຕົວຢ່າງທີ່ສະຫນັບສະຫນູນ
ຮູບແບບຕ່າງໆ.

-af filtergraph (output)
ສ້າງ filtergraph ທີ່ລະບຸໄວ້ໂດຍ filtergraph ແລະໃຊ້ມັນເພື່ອກັ່ນຕອງກະແສ.

ນີ້ແມ່ນນາມແຝງສໍາລັບ "-filter:a", ເບິ່ງ -ຕົວກັ່ນຕອງ ທາງເລືອກ.

ແບບ​ພິ​ເສດ ສຽງ ທາງເລືອກໃນການ
- ແທັກ fourcc/tag (output)
ບັງຄັບແທັກສຽງ/fourcc. ນີ້ແມ່ນນາມແຝງສໍາລັບ "-tag:a".

-absf bitstream_filter
ປະຕິເສດແລ້ວ, ເບິ່ງ -bsf

-guess_layout_max ຊ່ອງທາງ (ການປ້ອນຂໍ້ມູນ, ຕໍ່ກະແສ)
ຖ້າບາງຮູບແບບຊ່ອງປ້ອນຂໍ້ມູນບໍ່ຮູ້ຈັກ, ພະຍາຍາມເດົາພຽງແຕ່ຖ້າມັນກົງກັບທີ່
ຈໍາ​ນວນ​ທີ່​ກໍາ​ນົດ​ໄວ້​ຫຼາຍ​ທີ່​ສຸດ​ຂອງ​ຊ່ອງ​. ຕົວຢ່າງ, 2 ບອກໃຫ້ ffmpeg ການ​ຮັບ​ຮູ້ 1
channel as mono ແລະ 2 channels as stereo but not 6 channel as 5.1. ຄ່າເລີ່ມຕົ້ນແມ່ນເພື່ອ
ພະຍາຍາມເດົາສະເໝີ. ໃຊ້ 0 ເພື່ອປິດການຄາດເດົາທັງໝົດ.

ຄຳ ບັນຍາຍ ທາງເລືອກໃນການ
-scodec ຕົວແປງສັນຍານ (ວັດສະດຸປ້ອນ / ຜົນຜະລິດ)
ຕັ້ງຕົວແປງສັນຍານຄໍາບັນຍາຍ. ນີ້ແມ່ນນາມແຝງສໍາລັບ "-codec:s".

-sn (output)
ປິດ​ການ​ທໍາ​ງານ​ການ​ບັນ​ທຶກ​ຄໍາ​ບັນ​ຍາຍ​.

-sbsf bitstream_filter
ປະຕິເສດແລ້ວ, ເບິ່ງ -bsf

ແບບ​ພິ​ເສດ ຄຳ ບັນຍາຍ ທາງເລືອກໃນການ
-fix_sub_duration
ແກ້ໄຂໄລຍະເວລາຂອງຄໍາບັນຍາຍ. ສໍາລັບແຕ່ລະຄໍາບັນຍາຍ, ລໍຖ້າຊຸດຕໍ່ໄປໃນອັນດຽວກັນ
ຖ່າຍທອດ ແລະປັບໄລຍະເວລາຂອງອັນທຳອິດເພື່ອຫຼີກເວັ້ນການທັບຊ້ອນກັນ. ນີ້ແມ່ນມີຄວາມຈໍາເປັນກັບ
ບາງຕົວແປງສັນຍານຄໍາບັນຍາຍ, ໂດຍສະເພາະແມ່ນຄໍາບັນຍາຍ DVB, ເນື່ອງຈາກວ່າໄລຍະເວລາໃນຕົ້ນສະບັບ
packet ແມ່ນພຽງແຕ່ການຄາດຄະເນທີ່ຫຍາບຄາຍແລະສຸດທ້າຍແມ່ນຖືກຫມາຍໂດຍຄໍາບັນຍາຍທີ່ຫວ່າງເປົ່າ
ກອບ. ການບໍ່ໃຊ້ຕົວເລືອກນີ້ເມື່ອມີຄວາມຈໍາເປັນສາມາດສົ່ງຜົນໃຫ້ໄລຍະເວລາເກີນກວ່າ
ຫຼືຄວາມລົ້ມເຫຼວຂອງ muxing ເນື່ອງຈາກເວລາທີ່ບໍ່ແມ່ນ monotonic.

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

-canvas_size ຂະຫນາດ
ກຳນົດຂະໜາດຂອງຜ້າໃບທີ່ໃຊ້ເພື່ອສະແດງຄຳບັນຍາຍ.

ແບບ​ພິ​ເສດ ທາງເລືອກໃນການ
- ແຜນ​ທີ່ [-]input_file_id[:stream_specifier][,sync_file_id[:stream_specifier]] | [linklabel]
(output)
ກໍານົດຫນຶ່ງຫຼືຫຼາຍສາຍນ້ໍາເຂົ້າເປັນແຫຼ່ງສໍາລັບໄຟລ໌ຜົນຜະລິດ. ແຕ່ລະກະແສການປ້ອນຂໍ້ມູນ
ຖືກລະບຸໂດຍດັດຊະນີໄຟລ໌ປ້ອນຂໍ້ມູນ input_file_id ແລະດັດຊະນີກະແສເຂົ້າ
input_stream_id ພາຍໃນໄຟລ໌ປ້ອນຂໍ້ມູນ. ດັດຊະນີທັງສອງເລີ່ມຕົ້ນທີ່ 0. ຖ້າລະບຸ,
sync_file_id:stream_specifier ກຳນົດວ່າກະແສການປ້ອນຂໍ້ມູນໃດຖືກໃຊ້ເປັນການຊິງຄ໌ການນຳສະເໜີ
ກະສານອ້າງອີງ.

ຕົວເລືອກ "-map" ທໍາອິດໃນແຖວຄໍາສັ່ງກໍານົດແຫຼ່ງສໍາລັບຜົນຜະລິດນ້ໍາ 0,
ທາງເລືອກທີສອງ "-map" ລະບຸແຫຼ່ງສໍາລັບການຖ່າຍທອດຜົນຜະລິດ 1, ແລະອື່ນໆ.

ຕົວອັກສອນ "-" ກ່ອນທີ່ຕົວລະບຸການຖ່າຍທອດຈະສ້າງແຜນທີ່ "ທາງລົບ". ມັນ
ປິດການນຳໃຊ້ການຖ່າຍທອດທີ່ກົງກັນຈາກການສ້າງແຜນທີ່ແລ້ວ.

ທາງເລືອກ [linklabel] ແບບຟອມຈະສ້າງແຜນທີ່ຜົນໄດ້ຮັບຈາກກຣາຟການກັ່ນຕອງທີ່ຊັບຊ້ອນ (ເບິ່ງ
-filter_complex ທາງ​ເລືອກ​) ກັບ​ໄຟລ​໌​ຜົນ​ຜະ​ລິດ​ໄດ້​. linklabel ຕ້ອງ​ສອດ​ຄ່ອງ​ກັບ​ການ​ກໍາ​ນົດ​
ປ້າຍກຳກັບເຊື່ອມຕໍ່ຜົນຜະລິດໃນກາຟ.

ຕົວຢ່າງ, ເພື່ອສ້າງແຜນທີ່ ALL streams ຈາກໄຟລ໌ input ທໍາອິດໄປຫາ output

ffmpeg -i INPUT -map 0 ຜົນອອກມາ

ຕົວຢ່າງ: ຖ້າທ່ານມີສອງສະຕຣີມສຽງໃນໄຟລ໌ປ້ອນຂໍ້ມູນທໍາອິດ, ກະແສເຫຼົ່ານີ້ແມ່ນ
ກໍານົດໂດຍ "0: 0" ແລະ "0: 1". ທ່ານສາມາດນໍາໃຊ້ "-map" ເພື່ອເລືອກວ່າສາຍນ້ໍາທີ່ຈະໃສ່ໃນ
ໄຟລ໌ຜົນຜະລິດ. ຍົກ​ຕົວ​ຢ່າງ:

ffmpeg -i INPUT -map 0:1 out.wav

ຈະສ້າງແຜນທີ່ການປ້ອນຂໍ້ມູນເຂົ້າໃນ ປັດໄຈນໍາເຂົ້າ ກໍານົດໂດຍ "0: 1" ກັບ (ດຽວ) ນ້ໍາຜົນຜະລິດ
in out.wav.

ຕົວຢ່າງ, ເພື່ອເລືອກກະແສທີ່ມີດັດຊະນີ 2 ຈາກໄຟລ໌ປ້ອນຂໍ້ມູນ a.mov (ລະບຸໂດຍ
ຕົວລະບຸ "0:2"), ແລະຖ່າຍທອດດ້ວຍດັດຊະນີ 6 ຈາກການປ້ອນຂໍ້ມູນ b.mov (ລະບຸໂດຍ
ຕົວລະບຸ "1:6"), ແລະຄັດລອກພວກມັນໃສ່ໄຟລ໌ຜົນຜະລິດ out.mov:

ffmpeg -i a.mov -i b.mov -c copy -map 0:2 -map 1:6 out.mov

ເພື່ອເລືອກວິດີໂອທັງໝົດ ແລະສຽງທີສາມຈາກໄຟລ໌ປ້ອນຂໍ້ມູນ:

ffmpeg -i INPUT -map 0:v -map 0:a:2 ອອກ

ເພື່ອສ້າງແຜນທີ່ການຖ່າຍທອດທັງໝົດຍົກເວັ້ນສຽງທີສອງ, ໃຫ້ໃຊ້ແຜນທີ່ທາງລົບ

ffmpeg -i INPUT -map 0 -map -0:a:1 ອອກ

ເພື່ອເລືອກການຖ່າຍທອດສຽງພາສາອັງກິດ:

ffmpeg -i INPUT -map 0:m:language:eng OUTPUT

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

-ignore_unknown
ບໍ່ສົນໃຈການປ້ອນຂໍ້ມູນທີ່ມີປະເພດທີ່ບໍ່ຮູ້ຈັກແທນທີ່ຈະລົ້ມເຫລວຖ້າການຄັດລອກການຖ່າຍທອດດັ່ງກ່າວ
ພະຍາຍາມ.

-copy_unknown
ອະ​ນຸ​ຍາດ​ໃຫ້​ສະ​ຕ​ຣີມ​ການ​ປ້ອນ​ຂໍ້​ມູນ​ທີ່​ບໍ່​ຮູ້​ຈັກ​ປະ​ເພດ​ທີ່​ຈະ​ຖືກ​ຄັດ​ລອກ​ແທນ​ທີ່​ຈະ​ບໍ່​ສໍາ​ເລັດ​ຖ້າ​ຫາກ​ວ່າ​ການ​ສໍາ​ເນົາ​ດັ່ງ​ກ່າວ​
ກະແສແມ່ນພະຍາຍາມ.

-map_channel
[input_file_id.stream_specifier.channel_id|-1][:output_file_id.stream_specifier]
ແຜນທີ່ຊ່ອງສຽງຈາກວັດສະດຸປ້ອນເຂົ້າໄປຫາຜົນໄດ້ຮັບ. ຖ້າ
output_file_id.stream_specifier ບໍ່ໄດ້ຕັ້ງໄວ້, ຊ່ອງສຽງຈະຖືກຕັ້ງຢູ່ໃນທັງໝົດ
ກະແສສຽງ.

ໃຊ້ "-1" ແທນ input_file_id.stream_specifier.channel_id ຈະສ້າງແຜນທີ່ທີ່ຖືກປິດສຽງ
ຊ່ອງ.

ຕົວຢ່າງ, ສົມມຸດ ປັດໄຈນໍາເຂົ້າ ເປັນໄຟລ໌ສຽງ stereo, ທ່ານສາມາດສະຫຼັບທັງສອງສຽງ
ຊ່ອງທີ່ມີຄໍາສັ່ງຕໍ່ໄປນີ້:

ffmpeg -i INPUT -map_channel 0.0.1 -map_channel 0.0.0 OUTPUT

ຖ້າທ່ານຕ້ອງການປິດສຽງຊ່ອງທໍາອິດແລະຮັກສາທີສອງ:

ffmpeg -i INPUT -map_channel -1 -map_channel 0.0.1 OUTPUT

ຄໍາສັ່ງຂອງທາງເລືອກ "-map_channel" ກໍານົດຄໍາສັ່ງຂອງຊ່ອງທາງໃນ
ກະແສຜົນຜະລິດ. ຮູບ​ແບບ​ຊ່ອງ​ທາງ​ອອກ​ໄດ້​ຖືກ​ເດົາ​ຈາກ​ຈໍາ​ນວນ​ຂອງ​ຊ່ອງ​ທາງ​ທີ່​ມີ​ແຜນ​ທີ່​
(mono ຖ້າຫນຶ່ງ "-map_channel", stereo ຖ້າສອງ, ແລະອື່ນໆ). ການນໍາໃຊ້ "-ac" ໃນການປະສົມປະສານຂອງ
"-map_channel" ເຮັດໃຫ້ລະດັບການເພີ່ມຂຶ້ນຂອງຊ່ອງທາງຈະໄດ້ຮັບການປັບປຸງຖ້າຫາກວ່າຊ່ອງ input ແລະ output
ການຈັດວາງບໍ່ກົງກັນ (ຕົວຢ່າງ: ສອງຕົວເລືອກ "-map_channel" ແລະ "-ac 6").

ນອກນັ້ນທ່ານຍັງສາມາດສະກັດແຕ່ລະຊ່ອງທາງຂອງວັດສະດຸປ້ອນໄປຫາຜົນໄດ້ຮັບສະເພາະ; ຕໍ່ໄປນີ້
ຄໍາສັ່ງສະກັດສອງຊ່ອງທາງຂອງ ປັດໄຈນໍາເຂົ້າ ການຖ່າຍທອດສຽງ (ໄຟລ໌ 0, stream 0) ໄປຫາ
ທີ່ກ່ຽວຂ້ອງ OUTPUT_CH0 ແລະ OUTPUT_CH1 ຜົນໄດ້ຮັບ:

ffmpeg -i INPUT -map_channel 0.0.0 OUTPUT_CH0 -map_channel 0.0.1 OUTPUT_CH1

ຕົວຢ່າງຕໍ່ໄປນີ້ແບ່ງຊ່ອງສັນຍານຂອງອິນພຸດສະເຕີຣິໂອອອກເປັນສອງສາຍແຍກ,
ທີ່​ຖືກ​ເອົາ​ເຂົ້າ​ໄປ​ໃນ​ໄຟລ​໌​ຜົນ​ຜະ​ລິດ​ດຽວ​ກັນ​:

ffmpeg -i stereo.wav -map 0:0 -map 0:0 -map_channel 0.0.0:0.0 -map_channel 0.0.1:0.1 -y out.ogg

ກະລຸນາຮັບຊາບວ່າປະຈຸບັນແຕ່ລະສະຕຣີມຜົນຜະລິດສາມາດມີຊ່ອງຈາກອິນພຸດອັນດຽວເທົ່ານັ້ນ
ກະແສ; ຕົວຢ່າງທ່ານບໍ່ສາມາດໃຊ້ "-map_channel" ເພື່ອເລືອກຊ່ອງສຽງປ້ອນຂໍ້ມູນຫຼາຍຊ່ອງ
ບັນຈຸຢູ່ໃນສາຍນ້ໍາທີ່ແຕກຕ່າງກັນ (ຈາກໄຟລ໌ດຽວກັນຫຼືທີ່ແຕກຕ່າງກັນ) ແລະປະສົມປະສານໃຫ້ເຂົາເຈົ້າເຂົ້າໄປໃນ
ກະແສຜົນຜະລິດອັນດຽວ. ດັ່ງນັ້ນ, ມັນເປັນໄປບໍ່ໄດ້ໃນປັດຈຸບັນ, ສໍາລັບການຍົກຕົວຢ່າງ, ຫັນ
ສອງສະຕຣີມໂມໂນແຍກອອກເປັນສະຕຣີມດຽວ. ຢ່າງໃດກໍຕາມ, ການແຍກສະເຕີລິໂອ
stream ເປັນສອງຊ່ອງດຽວ mono streams ເປັນໄປໄດ້.

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

ffmpeg -i input.mkv -filter_complex "[0:1] [0:2] amerge" -c:a pcm_s16le -c:v copy output.mkv

-map_metadata[:metadata_spec_out] infile[:metadata_spec_in] (ຜົນຜະລິດ, ຕໍ່ metadata)
ກໍານົດຂໍ້ມູນ metadata ຂອງໄຟລ໌ຜົນຜະລິດຕໍ່ໄປຈາກ infile. ໃຫ້ສັງເກດວ່າສິ່ງເຫຼົ່ານັ້ນແມ່ນໄຟລ໌
ດັດຊະນີ (ຕາມສູນ), ບໍ່ແມ່ນຊື່ໄຟລ໌. ທາງເລືອກ metadata_spec_in/out ພາລາມິເຕີ
ລະບຸ, metadata ທີ່ຈະສຳເນົາ. ຕົວລະບຸ metadata ສາມາດມີຮູບແບບຕໍ່ໄປນີ້:

g metadata ທົ່ວໂລກ, ie metadata ທີ່ໃຊ້ກັບໄຟລ໌ທັງຫມົດ

s[:stream_spec]
ເມຕາເດຕາຕໍ່ກະແສ. stream_spec ແມ່ນຕົວລະບຸການຖ່າຍທອດຕາມທີ່ອະທິບາຍໄວ້ໃນ ນ້ໍາ
specifiers ບົດ. ໃນຕົວລະບຸເມຕາເດຕາທີ່ປ້ອນເຂົ້າ, ກະແສການຈັບຄູ່ທຳອິດແມ່ນ
ຄັດລອກຈາກ. ໃນຕົວລະບຸ metadata ຜົນຜະລິດ, ກະແສທີ່ກົງກັນທັງຫມົດຈະຖືກຄັດລອກໃສ່.

c:ບົດ_index
metadata ຕໍ່ບົດ. ບົດ_index ແມ່ນດັດຊະນີບົດທີ່ອີງໃສ່ສູນ.

p:program_index
metadata ຕໍ່ໂຄງການ. program_index ແມ່ນດັດຊະນີໂຄງການທີ່ອີງໃສ່ສູນ.

ຖ້າຕົວລະບຸ metadata ຖືກລະເວັ້ນ, ມັນຈະເປັນຄ່າເລີ່ມຕົ້ນທົ່ວໂລກ.

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

ຕົວຢ່າງເພື່ອຄັດລອກ metadata ຈາກກະແສທໍາອິດຂອງໄຟລ໌ປ້ອນຂໍ້ມູນໄປສູ່ທົ່ວໂລກ
metadata ຂອງໄຟລ໌ຜົນຜະລິດ:

ffmpeg -i in.ogg -map_metadata 0:s:0 out.mp3

ເພື່ອເຮັດແບບປີ້ນກັບກັນ, ເຊັ່ນ: ຄັດລອກ metadata ທົ່ວໂລກໄປຫາທຸກສາຍສຽງ:

ffmpeg -i in.mkv -map_metadata:s:a 0:g out.mkv

ໃຫ້ສັງເກດວ່າງ່າຍດາຍ 0 ຈະເຮັດວຽກເຊັ່ນດຽວກັນໃນຕົວຢ່າງນີ້, ເນື່ອງຈາກວ່າ metadata ທົ່ວໂລກແມ່ນ
ສົມມຸດວ່າໂດຍຄ່າເລີ່ມຕົ້ນ.

-map_chapters input_file_index (output)
ຄັດລອກບົດຈາກໄຟລ໌ປ້ອນຂໍ້ມູນດ້ວຍດັດຊະນີ input_file_index ໄປຫາໄຟລ໌ຜົນຜະລິດຕໍ່ໄປ. ຖ້າ
ບໍ່ມີການກໍານົດແຜນທີ່ບົດ, ຫຼັງຈາກນັ້ນບົດຕ່າງໆຈະຖືກຄັດລອກຈາກໄຟລ໌ປ້ອນຂໍ້ມູນທໍາອິດ
ຢ່າງໜ້ອຍໜຶ່ງບົດ. ໃຊ້ດັດຊະນີໄຟລ໌ລົບເພື່ອປິດການຄັດລອກບົດໃດນຶ່ງ.

- ມາດ​ຕະ​ຖານ​ (ທົ່ວໂລກ)
ສະແດງຂໍ້ມູນ benchmarking ໃນຕອນທ້າຍຂອງການເຂົ້າລະຫັດ. ສະແດງເວລາ CPU ໃຊ້ ແລະ
ການບໍລິໂພກຄວາມຊົງຈໍາສູງສຸດ. ບໍ່ຮອງຮັບການບໍລິໂພກຄວາມຈຳສູງສຸດທັງໝົດ
ລະບົບ, ມັນປົກກະຕິແລ້ວຈະສະແດງເປັນ 0 ຖ້າບໍ່ໄດ້ຮັບການສະຫນັບສະຫນູນ.

-benchmark_all (ທົ່ວໂລກ)
ສະແດງຂໍ້ມູນ benchmarking ໃນລະຫວ່າງການເຂົ້າລະຫັດ. ສະແດງເວລາ CPU ທີ່ໃຊ້ໃນຂັ້ນຕອນຕ່າງໆ
(ສຽງ/ວິດີໂອເຂົ້າລະຫັດ/ຖອດລະຫັດ).

- ກໍາ​ນົດ​ເວ​ລາ​ ໄລຍະເວລາ (ທົ່ວໂລກ)
ອອກຫຼັງຈາກ ffmpeg ໄດ້ແລ່ນສໍາລັບ ໄລຍະເວລາ ວິນາທີ.

- ຖິ້ມ (ທົ່ວໂລກ)
ຖິ້ມແຕ່ລະແພັກເກັດປ້ອນເຂົ້າໃສ່ stderr.

- hex (ທົ່ວໂລກ)
ເມື່ອຖິ້ມແພັກເກັດ, ຈົ່ງຖິ້ມເຄື່ອງຈ່າຍໃຫ້.

-ຄືນ (ການປ້ອນຂໍ້ມູນ)
ອ່ານການປ້ອນຂໍ້ມູນໃນອັດຕາເຟຣມເດີມ. ສ່ວນໃຫຍ່ໃຊ້ເພື່ອຈໍາລອງອຸປະກອນຈັບ. ຫຼືການປ້ອນຂໍ້ມູນສົດ
stream (ເຊັ່ນ: ເມື່ອອ່ານຈາກໄຟລ໌). ບໍ່ຄວນຖືກນໍາໃຊ້ກັບອຸປະກອນ grab ຕົວຈິງຫຼື
ກະແສການປ້ອນຂໍ້ມູນສົດ (ບ່ອນທີ່ມັນສາມາດເຮັດໃຫ້ເກີດການສູນເສຍແພັກເກັດ). ໂດຍຄ່າເລີ່ມຕົ້ນ ffmpeg ຄວາມພະຍາຍາມທີ່ຈະ
ອ່ານການປ້ອນຂໍ້ມູນໄວເທົ່າທີ່ຈະໄວໄດ້. ທາງ​ເລືອກ​ນີ້​ຈະ​ຊ້າ​ລົງ​ການ​ອ່ານ​ຂອງ​
input(s) ກັບອັດຕາເຟຣມ native ຂອງ input(s). ມັນເປັນປະໂຫຍດສໍາລັບຜົນຜະລິດໃນເວລາທີ່ແທ້ຈິງ
(ເຊັ່ນ: ການຖ່າຍທອດສົດ).

-loop_input
Loop ໃນໄລຍະກະແສການປ້ອນຂໍ້ມູນ. ໃນປັດຈຸບັນມັນເຮັດວຽກພຽງແຕ່ສໍາລັບການຖ່າຍທອດຮູບພາບ. ທາງເລືອກນີ້ແມ່ນ
ໃຊ້ສໍາລັບການທົດສອບ FFserver ອັດຕະໂນມັດ. ຕົວເລືອກນີ້ຖືກຍົກເລີກ, ໃຊ້ -loop 1.

-loop_output number_of_times
ຊ້ຳ​ແລ້ວ​ຊ້ຳ​ອີກ​ຜົນ​ໄດ້​ຮັບ​ຂອງ​ຮູບ​ແບບ​ທີ່​ສະ​ຫນັບ​ສະ​ຫນູນ​ການ looping ເຊັ່ນ GIF ເຄື່ອນ​ໄຫວ (0 ຈະ
loop ຜົນຜະລິດ infinite). ຕົວເລືອກນີ້ຖືກຍົກເລີກ, ໃຊ້ -loop.

-vsync ພາລາມິເຕີ
ວິ​ທີ​ການ sync ວິ​ດີ​ໂອ​. ສໍາລັບເຫດຜົນຄວາມເຂົ້າກັນໄດ້, ຄ່າເກົ່າສາມາດຖືກກໍານົດເປັນຕົວເລກ.
ຄ່າທີ່ເພີ່ມໃໝ່ຈະຕ້ອງຖືກລະບຸເປັນສະຕຣິງສະເໝີ.

0, ຂ້າມຜ່ານ
ແຕ່ລະເຟຣມຖືກສົ່ງຜ່ານດ້ວຍເວລາຂອງມັນຈາກ demuxer ໄປຫາ muxer.

1, cf.
ເຟຣມຈະຖືກຊໍ້າກັນ ແລະຫຼຸດລົງເພື່ອບັນລຸຄ່າຄົງທີ່ທີ່ຕ້ອງການ
ອັດຕາເຟຣມ.

2, vfr
ເຟຣມຖືກສົ່ງຜ່ານກັບເວລາຂອງພວກເຂົາຫຼືຫຼຸດລົງເພື່ອປ້ອງກັນ 2
ກອບຈາກການມີເວລາດຽວກັນ.

ວາງ
ເປັນ passthrough ແຕ່ທໍາລາຍເວລາທັງຫມົດ, ເຮັດໃຫ້ muxer ສ້າງສົດ
ການສະແຕມເວລາໂດຍອີງໃສ່ອັດຕາເຟຣມ.

-1, ອັດຕະໂນມັດ
ເລືອກລະຫວ່າງ 1 ແລະ 2 ຂຶ້ນກັບຄວາມສາມາດຂອງ muxer. ນີ້ແມ່ນຄ່າເລີ່ມຕົ້ນ
ວິທີການ.

ໃຫ້ສັງເກດວ່າການປະທັບຕາເວລາອາດຈະຖືກດັດແປງຕື່ມອີກໂດຍ muxer, ຫຼັງຈາກນີ້. ສໍາລັບ
ຕົວຢ່າງ, ໃນກໍລະນີທີ່ທາງເລືອກຮູບແບບ avoid_negative_ts ເປີດໃຊ້ງານ.

ດ້ວຍ -map ທ່ານສາມາດເລືອກໄດ້ວ່າສະຕຣີມເວລາໃດຄວນເອົາ. ເຈົ້າ​ສາ​ມາດ
ປະ​ໄວ້​ທັງ​ວິ​ດີ​ໂອ​ຫຼື​ສຽງ​ບໍ່​ມີ​ການ​ປ່ຽນ​ແປງ​ແລະ sync stream(s​) ທີ່​ຍັງ​ເຫຼືອ​ກັບ​
ບໍ່ປ່ຽນແປງ.

-frame_drop_threshold ພາລາມິເຕີ
ເກນການຫຼຸດລົງຂອງເຟຣມ, ເຊິ່ງລະບຸວ່າທາງຫລັງຂອງເຟຣມວິດີໂອສາມາດຢູ່ເບື້ອງຫຼັງໄດ້ເທົ່າໃດ
ຖືກລຸດລົງ. ໃນຫນ່ວຍອັດຕາເຟມ, ດັ່ງນັ້ນ 1.0 ແມ່ນຫນຶ່ງກອບ. ຄ່າເລີ່ມຕົ້ນແມ່ນ -1.1. ຫນຶ່ງ
usecase ທີ່ເປັນໄປໄດ້ແມ່ນເພື່ອຫຼີກເວັ້ນການ framedrops ໃນກໍລະນີຂອງເວລາທີ່ບໍ່ມີສຽງຫຼືການເພີ່ມຂຶ້ນ
ຄວາມແມ່ນຍໍາຫຼຸດລົງຂອງກອບໃນກໍລະນີທີ່ມີເວລາທີ່ແນ່ນອນ.

- async ຕົວຢ່າງ_ຕໍ່_ວິນາທີ
ວິທີການ sync ສຽງ. "stretches/squeezes" ສະ​ຕ​ຣີມ​ສຽງ​ໃຫ້​ກົງ​ກັບ​ເວ​ລາ​ສະ​ແຕມ​, ໄດ້​
ພາລາມິເຕີແມ່ນຕົວຢ່າງສູງສຸດຕໍ່ວິນາທີທີ່ສຽງຖືກປ່ຽນແປງ. - async 1
ເປັນກໍລະນີພິເສດທີ່ມີພຽງແຕ່ການເລີ່ມຕົ້ນຂອງນ້ໍາສຽງໄດ້ຖືກແກ້ໄຂໂດຍບໍ່ມີການໃດໆ
ການແກ້ໄຂຕໍ່ມາ.

ໃຫ້ສັງເກດວ່າການປະທັບຕາເວລາອາດຈະຖືກດັດແປງຕື່ມອີກໂດຍ muxer, ຫຼັງຈາກນີ້. ສໍາລັບ
ຕົວຢ່າງ, ໃນກໍລະນີທີ່ທາງເລືອກຮູບແບບ avoid_negative_ts ເປີດໃຊ້ງານ.

ຕົວເລືອກນີ້ຖືກປະຕິເສດ. ໃຊ້ຕົວກອງສຽງ "ຕົວຢ່າງ" ແທນ.

- ສຳເນົາ
ຢ່າປະມວນຜົນເວລາປ້ອນຂໍ້ມູນ, ແຕ່ຮັກສາຄຸນຄ່າຂອງພວກມັນໂດຍບໍ່ພະຍາຍາມອະນາໄມ
ເຂົາເຈົ້າ. ໂດຍສະເພາະ, ບໍ່ເອົາຄ່າຊົດເຊີຍເວລາເລີ່ມຕົ້ນເບື້ອງຕົ້ນ.

ໃຫ້ສັງເກດວ່າ, ຂຶ້ນກັບ vsync ທາງເລືອກຫຼືການປຸງແຕ່ງ muxer ສະເພາະ (ຕົວຢ່າງໃນກໍລະນີ
ທາງ​ເລືອກ​ຮູບ​ແບບ​ avoid_negative_ts ຖືກເປີດໃຊ້ງານ) ການສະແຕມເວລາຜົນຜະລິດອາດບໍ່ກົງກັນ
ກັບເວລາປ້ອນຂໍ້ມູນເຖິງແມ່ນວ່າໃນເວລາທີ່ເລືອກຕົວເລືອກນີ້.

-start_at_zero
ເມື່ອໃຊ້ກັບ ສຳເນົາ, ປ່ຽນເວລາການປ້ອນຂໍ້ມູນເພື່ອໃຫ້ພວກມັນເລີ່ມຕົ້ນຢູ່ທີ່ສູນ.

ນີ້ຫມາຍຄວາມວ່າການນໍາໃຊ້ຕົວຢ່າງ "-ss 50" ຈະເຮັດໃຫ້ເວລາຜົນຜະລິດເລີ່ມຕົ້ນຢູ່ທີ່ 50 ວິນາທີ,
ໂດຍບໍ່ຄໍານຶງເຖິງເວລາໃດທີ່ໄຟລ໌ປ້ອນຂໍ້ມູນເລີ່ມຕົ້ນໃນເວລາ.

-copytb ຮູບແບບການ
ລະບຸວິທີການຕັ້ງເວລາຕົວເຂົ້າລະຫັດເມື່ອການສຳເນົາການຖ່າຍທອດ. ຮູບແບບການ ເປັນຈຳນວນເຕັມ
ຄ່າຕົວເລກ, ແລະສາມາດສົມມຸດໜຶ່ງໃນຄ່າຕໍ່ໄປນີ້:

1 ໃຊ້ເວລາ demuxer.

ພື້ນຖານເວລາຖືກຄັດລອກໃສ່ຕົວເຂົ້າລະຫັດຜົນໄດ້ຮັບຈາກວັດສະດຸປ້ອນທີ່ສອດຄ້ອງກັນ
demuxer. ບາງຄັ້ງນີ້ແມ່ນຕ້ອງການເພື່ອຫຼີກເວັ້ນການເພີ່ມຂຶ້ນທີ່ບໍ່ແມ່ນ monotonically
ສະແຕມເວລາເມື່ອສຳເນົາການຖ່າຍທອດວິດີໂອດ້ວຍອັດຕາເຟຣມທີ່ປ່ຽນແປງໄດ້.

0 ໃຊ້ເວລາຕົວຖອດລະຫັດ.

ພື້ນຖານເວລາຖືກຄັດລອກໃສ່ຕົວເຂົ້າລະຫັດຜົນໄດ້ຮັບຈາກວັດສະດຸປ້ອນທີ່ສອດຄ້ອງກັນ
ເຄື່ອງຖອດລະຫັດ.

-1 ພະຍາຍາມເຮັດໃຫ້ທາງເລືອກອັດຕະໂນມັດ, ເພື່ອສ້າງຜົນຜະລິດທີ່ດີ.

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

- ສັ້ນ​ທີ່​ສຸດ​ (output)
ສຳເລັດການເຂົ້າລະຫັດເມື່ອກະແສການປ້ອນຂໍ້ມູນສັ້ນທີ່ສຸດສິ້ນສຸດລົງ.

-dts_delta_threshold
ຂີດຈຳກັດການຢຸດເວລາຂອງ delta.

-muxdelay ວິນາທີ (ການປ້ອນຂໍ້ມູນ)
ກໍານົດຄວາມລ່າຊ້າ demux-decode ສູງສຸດ.

-muxpreload ວິນາທີ (ການປ້ອນຂໍ້ມູນ)
ກໍານົດຄວາມລ່າຊ້າ demux-decode ເບື້ອງຕົ້ນ.

- ກະແສ output-stream-index:ມູນຄ່າໃຫມ່ (output)
ກຳນົດຄ່າ stream-id ໃໝ່ໃຫ້ກັບສະຕຣີມຜົນຜະລິດ. ທາງເລືອກນີ້ຄວນຈະຖືກກໍານົດ
ກ່ອນຊື່ໄຟລ໌ຜົນຜະລິດທີ່ມັນໃຊ້. ສໍາລັບສະຖານະການທີ່ຫຼາກຫຼາຍ
ໄຟລ໌ຜົນຜະລິດມີຢູ່, streamid ອາດຈະຖືກມອບຫມາຍຄືນໃຫມ່ໃຫ້ກັບຄ່າທີ່ແຕກຕ່າງກັນ.

ຕົວຢ່າງ, ເພື່ອຕັ້ງຄ່າການຖ່າຍທອດ 0 PID ເປັນ 33 ແລະສະຕຣີມ 1 PID ເປັນ 36 ສໍາລັບຜົນຜະລິດ.
ໄຟລ໌ mpegts:

ffmpeg -i infile -streamid 0:33 -streamid 1:36 out.ts

-bsf[:stream_specifier] bitstream_filters (ຜົນຜະລິດ, ຕໍ່ກະແສ)
ກໍານົດຕົວກອງ bitstream ສໍາລັບສາຍນ້ໍາທີ່ກົງກັນ. bitstream_filters ແມ່ນເຄື່ອງໝາຍຈຸດທີ່ຂັ້ນດ້ວຍເຄື່ອງໝາຍຈຸດ
ບັນຊີລາຍຊື່ຂອງຕົວກອງ bitstream. ໃຊ້ຕົວເລືອກ "-bsfs" ເພື່ອໃຫ້ໄດ້ຮັບບັນຊີລາຍຊື່ຂອງ bitstream
ຕົວກອງ

ffmpeg -i h264.mp4 -c:v ສຳເນົາ -bsf:v h264_mp4toannexb -an out.h264

ffmpeg -i file.mov -an -vn -bsf:s mov2textsub -c:s ຄັດລອກ -f rawvideo sub.txt

-tag[:stream_specifier] codec_tag (ປ້ອນ/ອອກ, ຕໍ່ກະແສ)
ບັງຄັບແທັກ/fourcc ສຳລັບການຖ່າຍທອດທີ່ກົງກັນ.

- ລະ​ຫັດ​ເວ​ລາ​ hh:mm:ssSEPff
ລະບຸ Timecode ສໍາລັບການຂຽນ. SEP ແມ່ນ ':' ສໍາລັບ non drop timecode ແລະ ';' (ຫຼື '.') ສໍາລັບ
ລຸດລົງ.

ffmpeg -i input.mpg -timecode 01:02:03.04 -r 30000/1001 -s ntsc output.mpg

-filter_complex filtergraph (ທົ່ວໂລກ)
ກຳນົດຕົວກັ່ນຕອງທີ່ຊັບຊ້ອນ, ເຊັ່ນ: ອັນໜຶ່ງທີ່ມີຈຳນວນວັດສະດຸປ້ອນ ແລະ/ຫຼື ຜົນໄດ້ຮັບທີ່ກຳນົດເອງ.
ສໍາລັບກາຟທີ່ງ່າຍດາຍ - ທີ່ມີຫນຶ່ງ input ແລະຫນຶ່ງ output ຂອງປະເພດດຽວກັນ - ເບິ່ງ
-ຕົວກັ່ນຕອງ ຕົວເລືອກ filtergraph ແມ່ນລາຍລະອຽດຂອງ filtergraph, ດັ່ງທີ່ອະທິບາຍໄວ້ໃນ
ພາກສ່ວນ ``Filtergraph syntax'' ຂອງຄູ່ມື ffmpeg-filters.

ປ້າຍຊື່ການເຊື່ອມຕໍ່ຂາເຂົ້າຕ້ອງອ້າງອີງໃສ່ກະແສການປ້ອນຂໍ້ມູນໂດຍໃຊ້
"[file_index:stream_specifier]" syntax (ເຊັ່ນດຽວກັບ - ແຜນ​ທີ່ ໃຊ້). ຖ້າ
stream_specifier ກົງກັບຫຼາຍສາຍ, ອັນທໍາອິດຈະຖືກໃຊ້. ບໍ່ມີປ້າຍກຳກັບ
ການປ້ອນຂໍ້ມູນຈະຖືກເຊື່ອມຕໍ່ກັບກະແສການປ້ອນຂໍ້ມູນທີ່ບໍ່ໄດ້ໃຊ້ທຳອິດຂອງປະເພດການຈັບຄູ່.

ປ້າຍກຳກັບການເຊື່ອມຕໍ່ຂາອອກແມ່ນອ້າງອີງໃສ່ກັບ - ແຜນ​ທີ່. ຜົນຜະລິດທີ່ບໍ່ມີປ້າຍຊື່ແມ່ນເພີ່ມໃສ່ອັນທໍາອິດ
ໄຟລ໌ຜົນຜະລິດ.

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

ຕົວຢ່າງ, ເພື່ອວາງຮູບພາບເທິງວິດີໂອ

ffmpeg -i video.mkv -i image.png -filter_complex '[0:v][1:v]ວາງຊ້ອນ[ອອກ]' -map
'[ອອກ]' out.mkv

ນີ້ "[0:v]" ຫມາຍເຖິງການຖ່າຍທອດວິດີໂອທໍາອິດໃນໄຟລ໌ປ້ອນຂໍ້ມູນທໍາອິດ, ເຊິ່ງຖືກເຊື່ອມຕໍ່
ຕໍ່ກັບການປ້ອນຂໍ້ມູນທໍາອິດ (ຕົ້ນຕໍ) ຂອງການກັ່ນຕອງການວາງຊ້ອນ. ເຊັ່ນ​ດຽວ​ກັນ​ກັບ​ການ​ສະ​ຕ​ຣີມ​ວິ​ດີ​ໂອ​ຄັ້ງ​ທໍາ​ອິດ​ໃນ​
ການປ້ອນຂໍ້ມູນທີສອງແມ່ນເຊື່ອມຕໍ່ກັບການປ້ອນຂໍ້ມູນທີສອງ (overlay) ຂອງ overlay.

ສົມມຸດວ່າມີພຽງແຕ່ການຖ່າຍທອດວິດີໂອໃນແຕ່ລະໄຟລ໌ປ້ອນຂໍ້ມູນ, ພວກເຮົາສາມາດຍົກເລີກປ້າຍຊື່ການປ້ອນຂໍ້ມູນ,
ດັ່ງນັ້ນຂ້າງເທິງແມ່ນເທົ່າກັບ

ffmpeg -i video.mkv -i image.png -filter_complex 'ວາງຊ້ອນ[ອອກ]' -map
'[ອອກ]' out.mkv

ນອກ​ຈາກ​ນັ້ນ​ພວກ​ເຮົາ​ສາ​ມາດ​ຍົກ​ເວັ້ນ​ປ້າຍ​ຜະ​ລິດ​ຕະ​ພັນ​ແລະ​ຜົນ​ຜະ​ລິດ​ດຽວ​ຈາກ​ກ​ຣາ​ຟ​ການ​ກັ່ນ​ຕອງ​
ຈະຖືກເພີ່ມໃສ່ໄຟລ໌ຜົນຜະລິດໂດຍອັດຕະໂນມັດ, ດັ່ງນັ້ນພວກເຮົາພຽງແຕ່ສາມາດຂຽນ

ffmpeg -i video.mkv -i image.png -filter_complex 'overlay' out.mkv

ເພື່ອສ້າງວິດີໂອສີແດງບໍລິສຸດ 5 ວິນາທີໂດຍໃຊ້ lavfi "ສີ" ແຫຼ່ງ:

ffmpeg -filter_complex 'color=c=red' -t 5 out.mkv

-ລາຟຟີ filtergraph (ທົ່ວໂລກ)
ກຳນົດຕົວກັ່ນຕອງທີ່ຊັບຊ້ອນ, ເຊັ່ນ: ອັນໜຶ່ງທີ່ມີຈຳນວນວັດສະດຸປ້ອນ ແລະ/ຫຼື ຜົນໄດ້ຮັບທີ່ກຳນົດເອງ.
ເທົ່າກັບ -filter_complex.

-filter_complex_script ຊື່​ເອ​ກະ​ສານ (ທົ່ວໂລກ)
ທາງເລືອກນີ້ແມ່ນຄ້າຍຄືກັນກັບ -filter_complex, ຄວາມແຕກຕ່າງພຽງແຕ່ວ່າການໂຕ້ຖຽງຂອງມັນແມ່ນ
ຊື່ຂອງໄຟລ໌ທີ່ຄໍາອະທິບາຍຕົວກອງທີ່ສັບສົນຈະຖືກອ່ານ.

-accurate_seek (ການປ້ອນຂໍ້ມູນ)
ທາງ​ເລືອກ​ນີ້​ເຮັດ​ໃຫ້​ສາ​ມາດ​ຫຼື​ປິດ​ການ​ຊອກ​ຫາ​ທີ່​ຖືກ​ຕ້ອງ​ໃນ​ໄຟລ​໌​ປ້ອນ​ຂໍ້​ມູນ​ທີ່​ມີ​ -ss ທາງເລືອກ.
ມັນຖືກເປີດໃຊ້ໂດຍຄ່າເລີ່ມຕົ້ນ, ສະນັ້ນການຊອກຫາແມ່ນຖືກຕ້ອງໃນເວລາປ່ຽນລະຫັດ. ໃຊ້
-noaccurate_seek ເພື່ອປິດການທໍາງານຂອງມັນ, ເຊິ່ງອາດຈະເປັນປະໂຫຍດ e.g. ໃນເວລາຄັດລອກສາຍນ້ໍາບາງແລະ
transcoding ອື່ນໆ.

-seek_timestamp (ການປ້ອນຂໍ້ມູນ)
ທາງ​ເລືອກ​ນີ້​ເຮັດ​ໃຫ້​ສາ​ມາດ​ຫຼື​ປິດ​ການ​ທໍາ​ງານ​ການ​ຊອກ​ຫາ​ໂດຍ​ການ​ສະ​ແຕມ​ເວ​ລາ​ໃນ​ໄຟລ​໌​ທີ່​ປ້ອນ​ຂໍ້​ມູນ​ທີ່​ມີ​ -ss
ທາງເລືອກ. ມັນຖືກປິດໃຊ້ງານໂດຍຄ່າເລີ່ມຕົ້ນ. ຖ້າເປີດໃຊ້, ການໂຕ້ຖຽງກັບ -ss ທາງເລືອກແມ່ນ
ພິຈາລະນາເປັນເວລາຕົວຈິງ, ແລະບໍ່ໄດ້ຖືກຊົດເຊີຍໂດຍເວລາເລີ່ມຕົ້ນຂອງໄຟລ໌. ນີ້
ມີບັນຫາພຽງແຕ່ສໍາລັບໄຟລ໌ທີ່ບໍ່ໄດ້ເລີ່ມຕົ້ນຈາກ timestamp 0, ເຊັ່ນ: ສາຍການຂົນສົ່ງ.

-thread_queue_size ຂະຫນາດ (ການປ້ອນຂໍ້ມູນ)
ທາງ​ເລືອກ​ນີ້​ກໍາ​ນົດ​ຈໍາ​ນວນ​ສູງ​ສຸດ​ຂອງ​ຊອງ​ຄິວ​ໃນ​ເວ​ລາ​ທີ່​ອ່ານ​ຈາກ​ໄຟລ​໌​ຫຼື​
ອຸປະກອນ. ດ້ວຍການຕອບສະໜອງຕໍ່າ/ອັດຕາການຖ່າຍທອດສົດສູງ, ແພັກເກັດອາດຈະຖືກຍົກເລີກຖ້າພວກມັນ
ບໍ່ໄດ້ອ່ານຢ່າງທັນເວລາ; ການເພີ່ມມູນຄ່ານີ້ສາມາດຫຼີກເວັ້ນໄດ້.

-override_ffserver (ທົ່ວໂລກ)
ລົບລ້າງຂໍ້ມູນສະເພາະຂອງວັດສະດຸປ້ອນຈາກ ffserver. ການນໍາໃຊ້ທາງເລືອກນີ້ທ່ານສາມາດສ້າງແຜນທີ່ໃດໆ
ປ້ອນກະແສໃສ່ ffserver ແລະຄວບຄຸມຫຼາຍດ້ານຂອງການເຂົ້າລະຫັດຈາກ ffmpeg. ໂດຍບໍ່ມີ
ຕົວເລືອກນີ້ ffmpeg ຈະສົ່ງກັບ ffserver ສິ່ງທີ່ຮ້ອງຂໍໂດຍ ffserver.

ທາງເລືອກແມ່ນມີຈຸດປະສົງສໍາລັບກໍລະນີທີ່ມີລັກສະນະທີ່ຈໍາເປັນທີ່ບໍ່ສາມາດກໍານົດໄດ້
ffserver ແຕ່ສາມາດເປັນ ffmpeg.

-sdp_file ເອກະສານ (ທົ່ວໂລກ)
ພິມຂໍ້ມູນ sdp ສໍາລັບການຖ່າຍທອດອອກໄປຫາ ເອກະສານ. ນີ້ອະນຸຍາດໃຫ້ dumping sdp
ຂໍ້ມູນໃນເວລາທີ່ຢ່າງຫນ້ອຍຫນຶ່ງຜົນຜະລິດບໍ່ແມ່ນກະແສ rtp. (ຕ້ອງການຢ່າງໜ້ອຍໜຶ່ງອັນ
ຮູບແບບຜົນຜະລິດທີ່ຈະເປັນ rtp).

- ຖິ້ມ (ການປ້ອນຂໍ້ມູນ)
ອະ​ນຸ​ຍາດ​ໃຫ້​ຍົກ​ເລີກ​ການ​ສະ​ຕ​ຣີມ​ສະ​ເພາະ​ໃດ​ຫນຶ່ງ​ຫຼື​ເຟຣມ​ຂອງ​ການ​ສະ​ຕ​ຣີມ​ທີ່ demuxer ໄດ້​. ບໍ່​ແມ່ນ​ທັງ​ຫມົດ
demuxers ສະຫນັບສະຫນູນນີ້.

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

Default
ຄ່າເລີ່ມຕົ້ນ, ເຊິ່ງຍົກເລີກບໍ່ມີກອບ.

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

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

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

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

-xerror (ທົ່ວໂລກ)
ຢຸດແລະອອກຍ້ອນຄວາມຜິດພາດ

ໃນ​ຖາ​ນະ​ເປັນ​ຂໍ້​ຍົກ​ເວັ້ນ​ພິ​ເສດ​, ທ່ານ​ສາ​ມາດ​ນໍາ​ໃຊ້​ນ​້​ໍ​າ subtitle bitmap ເປັນ​ການ​ປ້ອນ​ຂໍ້​ມູນ​: ມັນ​ຈະ​ເປັນ​
ປ່ຽນເປັນວິດີໂອທີ່ມີຂະຫນາດດຽວກັນກັບວິດີໂອທີ່ໃຫຍ່ທີ່ສຸດໃນໄຟລ໌, ຫຼື 720x576 ຖ້າ
ບໍ່ມີວິດີໂອຢູ່. ໃຫ້ສັງເກດວ່ານີ້ແມ່ນການທົດລອງແລະການແກ້ໄຂຊົ່ວຄາວ. ມັນ​ຈະ​ເປັນ
ຖອດອອກເມື່ອ libavfilter ມີການສະຫນັບສະຫນູນທີ່ເຫມາະສົມສໍາລັບຄໍາບັນຍາຍ.

ສໍາ​ລັບ​ຕົວ​ຢ່າງ​, ເພື່ອ hardcode ຄໍາ​ບັນ​ຍາຍ​ຢູ່​ເທິງ​ຂອງ​ການ​ບັນ​ທຶກ DVB-T ທີ່​ເກັບ​ຮັກ​ສາ​ໄວ້​ໃນ​ຮູບ​ແບບ MPEG​-TS​,
ຊັກຊ້າຄຳບັນຍາຍ 1 ວິນາທີ:

ffmpeg -i input.ts -filter_complex \
'[#0x2ef] setpts=PTS+1/TB [ຍ່ອຍ] ; [#0x2d0] [ຍ່ອຍ] ວາງຊ້ອນ' \
-sn -map '#0x2dc' output.mkv

(0x2d0, 0x2dc ແລະ 0x2ef ແມ່ນ MPEG-TS PIDs ຕາມລໍາດັບຂອງວິດີໂອ, ສຽງ ແລະ
subtitles streams; 0:0, 0:3 ແລະ 0:7 ຈະ​ໄດ້​ຜົນ​ເຊັ່ນ​ດຽວ​ກັນ​)

Preset ໄຟ
ໄຟລ໌ preset ມີລໍາດັບຂອງ ທາງເລືອກ=ມູນຄ່າ ຄູ່, ຫນຶ່ງສໍາລັບແຕ່ລະເສັ້ນ, ກໍານົດ a
ລໍາດັບຂອງທາງເລືອກທີ່ຈະເປັນງຸ່ມງ່າມທີ່ຈະລະບຸໃນເສັ້ນຄໍາສັ່ງ. ສາຍເລີ່ມຕົ້ນ
ຕົວອັກສອນ hash ('#') ແມ່ນຖືກລະເລີຍ ແລະຖືກໃຊ້ເພື່ອໃຫ້ຄຳເຫັນ. ກວດເບິ່ງ
ຕັ້ງໄວ້ລ່ວງ ໜ້າ ໄດເລກະທໍລີໃນຕົ້ນໄມ້ແຫຼ່ງ FFmpeg ສໍາລັບຕົວຢ່າງ.

ມີສອງປະເພດຂອງໄຟລ໌ preset: ffpreset ແລະ avpreset.

ffpreset ໄຟ

ໄຟລ໌ ffpreset ຖືກລະບຸດ້ວຍຕົວເລືອກ "vpre", "apre", "spre", ແລະ "fpre". ໄດ້
"fpre" ທາງເລືອກໃຊ້ເວລາຊື່ໄຟລ໌ຂອງ preset ແທນທີ່ຈະເປັນ preset ຊື່ເປັນ input ແລະສາມາດ
ຖືກນໍາໃຊ້ສໍາລັບປະເພດຂອງ codec ໃດ. ສໍາລັບທາງເລືອກ "vpre", "apre", ແລະ "spre", ທາງເລືອກ
ທີ່ລະບຸໄວ້ໃນໄຟລ໌ທີ່ຕັ້ງໄວ້ລ່ວງໜ້າແມ່ນໃຊ້ກັບຕົວແປງສັນຍານທີ່ເລືອກໃນປັດຈຸບັນຂອງປະເພດດຽວກັນກັບ
ທາງ​ເລືອກ​ທີ່​ຕັ້ງ​ໄວ້​ກ່ອນ​.

ການໂຕ້ຖຽງທີ່ຜ່ານໄປ "vpre", "apre", ແລະ "spre" ທາງເລືອກທີ່ຕັ້ງໄວ້ລ່ວງຫນ້າຈະກໍານົດຄ່າທີ່ກໍານົດໄວ້ກ່ອນ.
ໄຟລ໌ທີ່ຈະນໍາໃຊ້ຕາມກົດລະບຽບດັ່ງຕໍ່ໄປນີ້:

ffmpeg ທໍາອິດຄົ້ນຫາໄຟລ໌ທີ່ມີຊື່ arg.ffpreset ໃນໄດເລກະທໍລີ $FFMPEG_DATADIR (if
ຕັ້ງ), ແລະ $HOME/.ffmpeg, ແລະໃນ datadir ກໍານົດເວລາການຕັ້ງຄ່າ (ປົກກະຕິແລ້ວ
PREFIX/share/ffmpeg) ຫຼື​ໃນ a ffpresets folder ຕາມການດໍາເນີນການກ່ຽວກັບ win32, ໃນນັ້ນ
ສັ່ງ. ຕົວຢ່າງ, ຖ້າການໂຕ້ຖຽງແມ່ນ "libvpx-1080p", ມັນຈະຊອກຫາໄຟລ໌
libvpx-1080p.ffpreset.

ຖ້າບໍ່ພົບໄຟລ໌ດັ່ງກ່າວ, ຫຼັງຈາກນັ້ນ ffmpeg ຈະຄົ້ນຫາໄຟລ໌ທີ່ມີຊື່ codec_name-arg.ffpreset
ໃນໄດເລກະທໍລີທີ່ໄດ້ກ່າວມາຂ້າງເທິງ, ບ່ອນທີ່ codec_name ແມ່ນຊື່ຂອງຕົວແປງສັນຍານທີ່
ຕົວເລືອກໄຟລ໌ທີ່ຕັ້ງໄວ້ລ່ວງໜ້າຈະຖືກນຳໃຊ້. ສໍາ​ລັບ​ຕົວ​ຢ່າງ​, ຖ້າ​ຫາກ​ວ່າ​ທ່ານ​ເລືອກ codec ວິ​ດີ​ໂອ​ທີ່​ມີ​
"-vcodec libvpx" ແລະໃຊ້ "-vpre 1080p", ຫຼັງຈາກນັ້ນມັນຈະຊອກຫາໄຟລ໌.
libvpx-1080p.ffpreset.

avpreset ໄຟ

ໄຟລ໌ avpreset ຖືກກໍານົດດ້ວຍທາງເລືອກ "pre". ພວກເຂົາເຮັດວຽກຄ້າຍຄືກັນກັບໄຟລ໌ ffpreset,
ແຕ່ພວກເຂົາອະນຸຍາດໃຫ້ເຂົ້າລະຫັດ - ທາງເລືອກສະເພາະ. ດັ່ງນັ້ນ, ກ ທາງເລືອກ=ມູນຄ່າ ການ​ລະ​ບຸ​ຄູ່​
ບໍ່ສາມາດໃຊ້ຕົວເຂົ້າລະຫັດໄດ້.

ເມື່ອຕົວເລືອກ "pre" ຖືກລະບຸ, ffmpeg ຈະຊອກຫາໄຟລ໌ທີ່ມີຄໍາຕໍ່ທ້າຍ .avpreset
ຢູ່ໃນລາຍຊື່ $AVCONV_DATADIR (ຖ້າຕັ້ງ), ແລະ $HOME/.avconv, ແລະໃນ datadir ກໍານົດ
ໃນເວລາຕັ້ງຄ່າ (ປົກກະຕິແລ້ວ PREFIX/share/ffmpeg), ໃນຄໍາສັ່ງນັ້ນ.

ffmpeg ທໍາອິດຄົ້ນຫາໄຟລ໌ທີ່ມີຊື່ codec_name-arg.avpreset ໃນທີ່ກ່າວມາຂ້າງເທິງ
ໄດເລກະທໍລີ, ບ່ອນທີ່ codec_name ແມ່ນ​ຊື່​ຂອງ codec ທີ່​ທາງ​ເລືອກ​ໄຟລ​໌ preset ໄດ້​
ຈະຖືກນຳໃຊ້. ຕົວຢ່າງ: ຖ້າທ່ານເລືອກຕົວແປງສັນຍານວິດີໂອດ້ວຍ "-vcodec libvpx" ແລະໃຊ້
"-pre 1080p", ຫຼັງຈາກນັ້ນມັນຈະຊອກຫາໄຟລ໌ libvpx-1080p.avpreset.

ຖ້າບໍ່ພົບໄຟລ໌ດັ່ງກ່າວ, ຫຼັງຈາກນັ້ນ ffmpeg ຈະຄົ້ນຫາໄຟລ໌ທີ່ມີຊື່ arg.avpreset ໃນ
ໄດເລກະທໍລີດຽວກັນ.

ຕົວຢ່າງ


ວິດີໂອ ແລະ ສຽງ ຈັບ
ຖ້າ​ຫາກ​ທ່ານ​ລະ​ບຸ​ຮູບ​ແບບ​ການ​ປ້ອນ​ຂໍ້​ມູນ​ແລະ​ອຸ​ປະ​ກອນ​, ffmpeg ສາ​ມາດ​ຈັບ​ວິ​ດີ​ໂອ​ແລະ​ສຽງ​ໂດຍ​ກົງ​.

ffmpeg -f oss -i /dev/dsp -f video4linux2 -i /dev/video0 /tmp/out.mpg

ຫຼືດ້ວຍແຫຼ່ງສຽງ ALSA (mono input, card id 1) ແທນ OSS:

ffmpeg -f alsa -ac 1 -i hw:1 -f video4linux2 -i /dev/video0 /tmp/out.mpg

ໃຫ້ສັງເກດວ່າທ່ານຕ້ອງເປີດໃຊ້ແຫຼ່ງວິດີໂອທີ່ຖືກຕ້ອງແລະຊ່ອງທາງກ່ອນທີ່ຈະເປີດຕົວ ffmpeg
ກັບ viewer ໂທລະທັດເຊັ່ນ:http://linux.bytesex.org/xawtv/> ໂດຍ Gerd Knorr. ເຈົ້າຍັງມີ
ເພື່ອຕັ້ງລະດັບການບັນທຶກສຽງໃຫ້ຖືກຕ້ອງດ້ວຍເຄື່ອງປະສົມມາດຕະຖານ.

X11 ຈັບ
ຈັບຈໍສະແດງຜົນ X11 ດ້ວຍ ffmpeg ຜ່ານ

ffmpeg -f x11grab -video_size cif -framerate 25 -i :0.0 /tmp/out.mpg

0.0 ແມ່ນໝາຍເລກຈໍສະແດງຜົນຂອງເຊີບເວີ X11 ຂອງທ່ານ, ຄືກັນກັບຕົວແປສະພາບແວດລ້ອມ DISPLAY.

ffmpeg -f x11grab -video_size cif -framerate 25 -i :0.0+10,20 /tmp/out.mpg

0.0 ແມ່ນໝາຍເລກຈໍສະແດງຜົນຂອງເຊີບເວີ X11 ຂອງທ່ານ, ຄືກັນກັບຕົວແປສະພາບແວດລ້ອມ DISPLAY.
10 ແມ່ນ x-offset ແລະ 20 y-offset ສໍາລັບການ grabbing.

ວິດີໂອ ແລະ ສຽງ ເອກະສານ ຮູບແບບ ການປ່ຽນແປງ
ຮູບ​ແບບ​ໄຟລ​໌​ທີ່​ສະ​ຫນັບ​ສະ​ຫນູນ​ໃດ​ຫນຶ່ງ​ແລະ​ອະ​ນຸ​ສັນ​ຍາ​ສາ​ມາດ​ເປັນ​ການ​ປ້ອນ​ຂໍ້​ມູນ​ກັບ ffmpeg​:

ຕົວຢ່າງ:

·ທ່ານສາມາດນໍາໃຊ້ໄຟລ໌ YUV ເປັນວັດສະດຸປ້ອນ:

ffmpeg -i /tmp/test%dY /tmp/out.mpg

ມັນຈະໃຊ້ໄຟລ໌:

/tmp/test0.Y, /tmp/test0.U, /tmp/test0.V,
/tmp/test1.Y, /tmp/test1.U, /tmp/test1.V, ແລະອື່ນໆ...

ໄຟລ໌ Y ໃຊ້ສອງເທົ່າຂອງຄວາມລະອຽດຂອງໄຟລ໌ U ແລະ V. ພວກເຂົາເຈົ້າແມ່ນໄຟລ໌ດິບ, ໂດຍບໍ່ມີການ
ສ່ວນຫົວ. ພວກເຂົາສາມາດຖືກສ້າງຂື້ນໂດຍຕົວຖອດລະຫັດວິດີໂອທີ່ມີກຽດທັງຫມົດ. ທ່ານຕ້ອງລະບຸຂະຫນາດ
ຂອງ​ຮູບ​ພາບ​ທີ່​ມີ​ -s ທາງເລືອກຖ້າ ffmpeg ບໍ່ສາມາດເດົາໄດ້.

·ທ່ານສາມາດປ້ອນຂໍ້ມູນຈາກໄຟລ໌ YUV420P ດິບ:

ffmpeg -i /tmp/test.yuv /tmp/out.avi

test.yuv ເປັນໄຟລ໌ທີ່ມີຂໍ້ມູນແຜນການ YUV ດິບ. ແຕ່ລະກອບແມ່ນປະກອບດ້ວຍ Y
ຍົນຕາມດ້ວຍຍົນ U ແລະ V ທີ່ຄວາມລະອຽດເຄິ່ງແນວຕັ້ງ ແລະແນວນອນ.

·​ທ່ານ​ສາ​ມາດ​ສົ່ງ​ອອກ​ເປັນ​ໄຟລ​໌ YUV420P ດິບ​:

ffmpeg -i mydivx.avi hugefile.yuv

· ທ່ານ​ສາ​ມາດ​ກໍາ​ນົດ​ໄຟລ​໌​ປ້ອນ​ຂໍ້​ມູນ​ຈໍາ​ນວນ​ຫນຶ່ງ​ແລະ​ໄຟລ​໌​ຜົນ​ຜະ​ລິດ​ໄດ້​:

ffmpeg -i /tmp/a.wav -s 640x480 -i /tmp/a.yuv /tmp/a.mpg

ແປງໄຟລ໌ສຽງ a.wav ແລະໄຟລ໌ວິດີໂອ YUV ດິບ a.yuv ເປັນໄຟລ໌ MPEG a.mpg.

· ທ່ານຍັງສາມາດເຮັດການແປງສຽງແລະວິດີໂອໃນເວລາດຽວກັນ:

ffmpeg -i /tmp/a.wav -ar 22050 /tmp/a.mp2

ປ່ຽນ a.wav ເປັນສຽງ MPEG ທີ່ອັດຕາຕົວຢ່າງ 22050 Hz.

· ທ່ານ​ສາ​ມາດ​ເຂົ້າ​ລະ​ຫັດ​ເປັນ​ຫຼາຍ​ຮູບ​ແບບ​ໃນ​ເວ​ລາ​ດຽວ​ກັນ​ແລະ​ກໍາ​ນົດ​ແຜນ​ທີ່​ຈາກ​ການ​ປ້ອນ​ຂໍ້​ມູນ​
stream to output streams:

ffmpeg -i /tmp/a.wav -map 0:a -b:a 64k /tmp/a.mp2 -map 0:a -b:a 128k /tmp/b.mp2

ປ່ຽນ a.wav ເປັນ a.mp2 ທີ່ 64 kbits ແລະ b.mp2 ທີ່ 128 kbits. '-map file:index'
ລະບຸວ່າກະແສປ້ອນຂໍ້ມູນໃດຖືກໃຊ້ສຳລັບແຕ່ລະກະແສຜົນຜະລິດ, ຕາມລຳດັບ
ຄໍານິຍາມຂອງສາຍນ້ໍາອອກ.

· ທ່ານ​ສາ​ມາດ​ຖອດ​ລະ​ຫັດ VOBs ຖອດ​ລະ​ຫັດ​ໄດ້​:

ffmpeg -i snatch_1.vob -f avi -c:v mpeg4 -b:v 800k -g 300 -bf 2 -c:a libmp3lame -b:a 128k snatch.avi

ນີ້​ແມ່ນ​ຕົວ​ຢ່າງ DVD ripping ເປັນ​ປົກ​ກະ​ຕິ​; ວັດສະດຸປ້ອນແມ່ນໄຟລ໌ VOB, ຜົນຜະລິດໄຟລ໌ AVI
ມີວິດີໂອ MPEG-4 ແລະສຽງ MP3. ໃຫ້ສັງເກດວ່າໃນຄໍາສັ່ງນີ້ພວກເຮົາໃຊ້ B-frames ດັ່ງນັ້ນ
MPEG-4 stream ແມ່ນເຂົ້າກັນໄດ້ DivX5, ແລະຂະຫນາດ GOP ແມ່ນ 300 ຊຶ່ງຫມາຍຄວາມວ່າຫນຶ່ງໃນກອບພາຍໃນ.
ທຸກໆ 10 ວິນາທີສຳລັບວິດີໂອປ້ອນຂໍ້ມູນ 29.97fps. ນອກຈາກນັ້ນ, ນ້ໍາສຽງແມ່ນ
ເຂົ້າລະຫັດ MP3 ດັ່ງນັ້ນທ່ານຈໍາເປັນຕ້ອງເປີດໃຊ້ການສະຫນັບສະຫນູນ LAME ໂດຍການຖ່າຍທອດ "--enable-libmp3lame" ໄປ.
ກຳນົດຄ່າ. ການ​ສ້າງ​ແຜນ​ທີ່​ແມ່ນ​ເປັນ​ປະ​ໂຫຍດ​ໂດຍ​ສະ​ເພາະ​ແມ່ນ​ສໍາ​ລັບ​ການ​ແປງ DVD ເພື່ອ​ໃຫ້​ໄດ້​ຮັບ​ທີ່​ຕ້ອງ​ການ​
ພາສາສຽງ.

ໝາຍເຫດ: ເພື່ອເບິ່ງຮູບແບບການປ້ອນຂໍ້ມູນທີ່ຮອງຮັບ, ໃຫ້ໃຊ້ "ffmpeg -formats".

·ທ່ານສາມາດສະກັດຮູບພາບຈາກວິດີໂອ, ຫຼືສ້າງວິດີໂອຈາກຫຼາຍຮູບພາບ:

ສໍາລັບການສະກັດຮູບພາບຈາກວິດີໂອ:

ffmpeg -i foo.avi -r 1 -s WxH -f image2 foo-%03d.jpeg

ນີ້ຈະສະກັດຫນຶ່ງເຟຣມວິດີໂອຕໍ່ວິນາທີຈາກວິດີໂອແລະຈະສົ່ງອອກໃຫ້ເຂົາເຈົ້າໃນ
ໄຟລ໌ທີ່ມີຊື່ foo-001.jpeg, foo-002.jpeg, ແລະອື່ນໆ. ຮູບພາບຈະຖືກປັບຂະໜາດໃຫ້ພໍດີກັບອັນໃໝ່
ຄ່າ WxH.

ຖ້າທ່ານຕ້ອງການທີ່ຈະສະກັດພຽງແຕ່ຈໍານວນຈໍາກັດຂອງກອບ, ທ່ານສາມາດນໍາໃຊ້ຄໍາສັ່ງຂ້າງເທິງ
ໃນການປະສົມປະສານກັບຕົວເລືອກ -vframes ຫຼື -t, ຫຼືປະສົມປະສານກັບ -ss ເພື່ອເລີ່ມຕົ້ນ
ສະກັດຈາກຈຸດທີ່ແນ່ນອນໃນເວລາ.

ສໍາລັບການສ້າງວິດີໂອຈາກຫຼາຍຮູບພາບ:

ffmpeg -f image2 -framerate 12 -i foo-%03d.jpeg -s WxH foo.avi

syntax "foo-%03d.jpeg" ກໍານົດໃຫ້ໃຊ້ຕົວເລກທົດສະນິຍົມທີ່ປະກອບດ້ວຍສາມຕົວເລກ.
padded ກັບສູນເພື່ອສະແດງຕົວເລກລໍາດັບ. ມັນແມ່ນ syntax ດຽວກັນທີ່ສະຫນັບສະຫນູນໂດຍ
ຟັງຊັນ C printf, ແຕ່ວ່າພຽງແຕ່ຮູບແບບທີ່ຍອມຮັບຈໍານວນເຕັມປົກກະຕິແມ່ນເຫມາະສົມ.

ໃນເວລານໍາເຂົ້າລໍາດັບຮູບພາບ, -i ຍັງສະຫນັບສະຫນູນການຂະຫຍາຍ shell-like wildcard
ຮູບ​ແບບ (globbing​) ພາຍ​ໃນ​, ໂດຍ​ການ​ເລືອກ​ຮູບ​ພາບ 2 ສະ​ເພາະ "-pattern_type glob​"
ທາງເລືອກ.

ຕົວຢ່າງ, ການສ້າງວິດີໂອຈາກຊື່ໄຟລ໌ທີ່ກົງກັບຮູບແບບ glob
"foo-*.jpeg":

ffmpeg -f image2 -pattern_type glob -framerate 12 -i 'foo-*.jpeg' -s WxH foo.avi

· ທ່ານ​ສາ​ມາດ​ເອົາ​ສາຍ​ນ​້​ໍ​ຫຼາຍ​ປະ​ເພດ​ດຽວ​ກັນ​ໃນ​ຜົນ​ຜະ​ລິດ​ໄດ້​:

ffmpeg -i test1.avi -i test2.avi -map 1:1 -map 1:0 -map 0:1 -map 0:0 -c copy -y test12.nut

ໄຟລ໌ຜົນໄດ້ຮັບ test12.nut ຈະມີສີ່ສາຍທໍາອິດຈາກ
ໄຟລ໌ປ້ອນຂໍ້ມູນຕາມລໍາດັບ.

· ການ​ບັງ​ຄັບ​ຜົນ​ຜະ​ລິດ​ວິ​ດີ​ໂອ CBR​:

ffmpeg -i myfile.avi -b 4000k -minrate 4000k -maxrate 4000k -bufsize 1835k out.m2v

·ສີ່ທາງເລືອກ lmin, lmax, mblmin ແລະ mblmax ໃຊ້ຫນ່ວຍ 'lambda', ແຕ່ເຈົ້າອາດຈະໃຊ້
QP2LAMBDA ຄົງທີ່ເພື່ອປ່ຽນຈາກຫົວໜ່ວຍ 'q' ໄດ້ຢ່າງງ່າຍດາຍ:

ffmpeg -i src.ext -lmax 21*QP2LAMBDA dst.ext

ໃຊ້ avconv ອອນໄລນ໌ໂດຍໃຊ້ບໍລິການ onworks.net


ເຊີບເວີ ແລະສະຖານີເຮັດວຽກຟຣີ

ດາວໂຫຼດແອັບ Windows ແລະ Linux

  • 1
    libusb
    libusb
    ຫ້ອງສະໝຸດເພື່ອເປີດໃຊ້ພື້ນທີ່ຜູ້ໃຊ້
    ໂຄງ​ການ​ຄໍາ​ຮ້ອງ​ສະ​ຫມັກ​ເພື່ອ​ຕິດ​ຕໍ່​ພົວ​ພັນ​ກັບ​
    ອຸປະກອນ USB. ຜູ້ຊົມ: ນັກພັດທະນາ, ສິ້ນສຸດ
    ຜູ້ໃຊ້/ເດັສທັອບ. ພາສາການຂຽນໂປຣແກຣມ: C.
    ໝວດໝູ່...
    ດາວໂຫລດ libusb
  • 2
    SWIG
    SWIG
    SWIG ເປັນເຄື່ອງມືພັດທະນາຊອບແວ
    ທີ່ເຊື່ອມຕໍ່ບັນດາໂຄງການທີ່ຂຽນໃນ C ແລະ
    C ++ ທີ່ມີຄວາມຫລາກຫລາຍຂອງລະດັບສູງ
    ພາສາການຂຽນໂປຼແກຼມ. SWIG ຖືກນໍາໃຊ້ກັບ
    ແຕກຕ່າງກັນ ...
    ດາວໂຫລດ SWIG
  • 3
    WooCommerce Nextjs React Theme
    WooCommerce Nextjs React Theme
    React WooCommerce ຫົວຂໍ້, ສ້າງຂຶ້ນດ້ວຍ
    JS ຕໍ່ໄປ, Webpack, Babel, Node, ແລະ
    ດ່ວນ, ໃຊ້ GraphQL ແລະ Apollo
    ລູກ​ຄ້າ. ຮ້ານ WooCommerce ໃນ React(
    ປະ​ກອບ​ດ້ວຍ​: ຜະ​ລິດ​ຕະ​ພັນ ...
    ດາວໂຫລດ WooCommerce Nextjs React Theme
  • 4
    archlabs_repo
    archlabs_repo
    Package repo ສໍາລັບ ArchLabs ນີ້ແມ່ນ
    ຄໍາຮ້ອງສະຫມັກທີ່ຍັງສາມາດເອົາມາໄດ້
    ຈາກ
    https://sourceforge.net/projects/archlabs-repo/.
    ມັນໄດ້ຖືກຈັດຢູ່ໃນ OnWorks ໃນ ...
    ດາວໂຫລດ archlabs_repo
  • 5
    ໂຄງການ Zephyr
    ໂຄງການ Zephyr
    ໂຄງການ Zephyr ແມ່ນຄົນຮຸ່ນໃຫມ່
    ລະບົບປະຕິບັດການໃນເວລາຈິງ (RTOS) ນັ້ນ
    ຮອງຮັບຮາດແວຫຼາຍອັນ
    ສະຖາປັດຕະຍະກໍາ. ມັນແມ່ນອີງໃສ່ a
    ແກ່ນຮອຍຕີນນ້ອຍ...
    ດາວໂຫລດໂຄງການ Zephyr
  • 6
    SCons
    SCons
    SCons ເປັນ​ເຄື່ອງ​ມື​ການ​ກໍ່​ສ້າງ​ຊອບ​ແວ​
    ນັ້ນ​ແມ່ນ​ທາງ​ເລືອກ​ທີ່​ດີ​ເລີດ​ຂອງ​
    ຄລາສສິກ "ເຮັດ" ເຄື່ອງມືການກໍ່ສ້າງທີ່
    ພວກເຮົາທຸກຄົນຮູ້ຈັກແລະຮັກ. SCons ແມ່ນ
    ໄດ້​ປະ​ຕິ​ບັດ​ເປັນ ...
    ດາວໂຫລດ SCons
  • ເພີ່ມເຕີມ »

Linux ຄຳ ສັ່ງ

Ad