ນີ້ແມ່ນຄໍາສັ່ງ ffmpeg-utils ທີ່ສາມາດດໍາເນີນການໄດ້ໃນ OnWorks ຜູ້ໃຫ້ບໍລິການໂຮດຕິ້ງຟຣີໂດຍໃຊ້ຫນຶ່ງໃນຫຼາຍບ່ອນເຮັດວຽກອອນໄລນ໌ຂອງພວກເຮົາເຊັ່ນ Ubuntu Online, Fedora Online, Windows online emulator ຫຼື MAC OS online emulator
ໂຄງການ:
NAME
ffmpeg-utils - FFmpeg utilities
ລາຍລະອຽດ
ເອກະສານນີ້ອະທິບາຍລັກສະນະທົ່ວໄປບາງຢ່າງແລະຜົນປະໂຫຍດທີ່ສະຫນອງໂດຍ libavutil
ຫ້ອງສະຫມຸດ.
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()".
ໃຊ້ ffmpeg-utils ອອນໄລນ໌ໂດຍໃຊ້ບໍລິການ onworks.net