Ito ang command na ffmpeg-bitstream-filters na maaaring patakbuhin sa OnWorks na libreng hosting provider gamit ang isa sa aming maramihang libreng online na workstation gaya ng Ubuntu Online, Fedora Online, Windows online emulator o MAC OS online emulator
PROGRAMA:
NAME
ffmpeg-bitstream-filters - Mga filter ng FFmpeg bitstream
DESCRIPTION
Inilalarawan ng dokumentong ito ang mga bitstream na filter na ibinigay ng libavcodec library.
Gumagana ang isang bitstream na filter sa naka-encode na data ng stream, at gumaganap ng antas ng bitstream
mga pagbabago nang hindi nagsasagawa ng pag-decode.
BITSTREAM Mga filter
Kapag na-configure mo ang iyong FFmpeg build, lahat ng sinusuportahang bitstream na filter ay pinagana ng
default. Maaari mong ilista ang lahat ng magagamit gamit ang opsyon sa pag-configure na "--list-bsfs".
Maaari mong huwag paganahin ang lahat ng mga filter ng bitstream gamit ang opsyon sa pag-configure na "--disable-bsfs", at
piliing paganahin ang anumang bitstream na filter gamit ang opsyong "--enable-bsf=BSF", o kaya mo
huwag paganahin ang isang partikular na bitstream na filter gamit ang opsyong "--disable-bsf=BSF".
Ipapakita ng opsyong "-bsfs" ng ff* tool ang listahan ng lahat ng sinusuportahang bitstream
mga filter na kasama sa iyong build.
Ang mga tool na ff* ay may isang -bsf na opsyon na inilapat sa bawat stream, na kumukuha ng isang listahan na pinaghihiwalay ng kuwit ng
mga filter, na ang mga parameter ay sumusunod sa pangalan ng filter pagkatapos ng '='.
ffmpeg -i INPUT -c:v copy -bsf:v filter1[=opt1=str1/opt2=str2][,filter2] OUTPUT
Nasa ibaba ang isang paglalarawan ng kasalukuyang magagamit na mga filter ng bitstream, kasama ng mga ito
mga parameter, kung mayroon man.
aac_adtstoasc
I-convert ang MPEG-2/4 AAC ADTS sa MPEG-4 Audio Specific Configuration bitstream na filter.
Ang filter na ito ay gumagawa ng MPEG-4 AudioSpecificConfig mula sa isang MPEG-2/4 ADTS header at nag-aalis
ang ADTS header.
Ito ay kinakailangan halimbawa kapag kinokopya ang isang AAC stream mula sa isang raw ADTS AAC container sa isang
FLV o isang MOV/MP4 file.
chomp
Alisin ang zero padding sa dulo ng isang packet.
dump_extra
Magdagdag ng extradata sa simula ng mga na-filter na packet.
Tinutukoy ng karagdagang argumento kung aling mga packet ang dapat i-filter. Tinatanggap nito ang
mga halaga:
a magdagdag ng extradata sa lahat ng pangunahing packet, ngunit kung local_header ay nakatakda sa mga watawat2 Codec
patlang ng konteksto
k magdagdag ng extradata sa lahat ng pangunahing packet
e magdagdag ng extradata sa lahat ng packet
Kung hindi tinukoy ito ay ipinapalagay k.
Halimbawa ang mga sumusunod ffmpeg Pinipilit ng command ang isang pandaigdigang header (kaya hindi pinapagana ang indibidwal
packet header) sa mga H.264 packet na nabuo ng "libx264" encoder, ngunit itinatama ang mga ito
sa pamamagitan ng pagdaragdag ng header na nakaimbak sa extradata sa mga pangunahing packet:
ffmpeg -i INPUT -map 0 -flags:v +global_header -c:v libx264 -bsf:v dump_extra out.ts
h264_mp4toannexb
I-convert ang isang H.264 bitstream mula sa length prefixed mode upang simulan ang code prefixed mode (bilang
tinukoy sa Annex B ng ITU-T H.264 na detalye).
Ito ay kinakailangan ng ilang mga format ng streaming, kadalasan ang MPEG-2 na transport stream na format
("mpegts").
Halimbawa upang mag-remux ng MP4 file na naglalaman ng H.264 stream sa mpegts na format na may ffmpeg,
maaari mong gamitin ang utos:
ffmpeg -i INPUT.mp4 -codec copy -bsf:v h264_mp4toannexb OUTPUT.ts
imxdump
Binabago ang bitstream upang magkasya sa MOV at upang magamit ng Final Cut Pro decoder. Ito
nalalapat lang ang filter sa mpeg2video codec, at malamang na hindi kailangan para sa Final Cut Pro 7
at mas bago na may angkop -tag:v.
Halimbawa, para i-remux ang 30 MB/sec NTSC IMX sa MOV:
ffmpeg -i input.mxf -c copy -bsf:v imxdump -tag:v mx3n output.mov
mjpeg2jpeg
I-convert ang mga MJPEG/AVI1 packet sa buong JPEG/JFIF packet.
Ang MJPEG ay isang video codec kung saan ang bawat video frame ay isang JPEG na imahe. Ang
ang mga indibidwal na frame ay maaaring makuha nang walang pagkawala, hal
ffmpeg -i ../some_mjpeg.avi -c:v kopyahin ang mga frame_%d.jpg
Sa kasamaang palad, ang mga chunks na ito ay hindi kumpletong mga JPEG na imahe, dahil kulang ang mga ito sa segment ng DHT
kinakailangan para sa pag-decode. Sinipi mula sa
<http://www.digitalpreservation.gov/formats/fdd/fdd000063.shtml>:
Si Avery Lee, na nagsusulat sa rec.video.desktop newsgroup noong 2001, ay nagkomento na "MJPEG, o
kahit man lang ang MJPEG sa mga AVI na mayroong MJPG fourcc, ay pinaghihigpitang JPEG na may nakapirming -- at
*omitted* -- Huffman table. Ang JPEG ay dapat na YCbCr colorspace, ito ay dapat na 4:2:2, at ito
dapat gumamit ng basic na Huffman encoding, hindi arithmetic o progressive. . . . Kaya mo talaga
i-extract ang mga MJPEG frame at i-decode ang mga ito gamit ang isang regular na JPEG decoder, ngunit kailangan mong gawin
ihanda ang segment ng DHT sa kanila, kung hindi, ang decoder ay walang ideya kung paano mag-decompress
ang data. Ang eksaktong talahanayan na kinakailangan ay ibinigay sa OpenDML spec."
Ang bitstream na filter na ito ay nag-patch sa header ng mga frame na kinuha mula sa isang MJPEG stream
(dala ang AVI1 header ID at walang segment ng DHT) para makagawa ng ganap na kwalipikadong JPEG
mga imahe.
ffmpeg -i mjpeg-movie.avi -c:v copy -bsf:v mjpeg2jpeg frame_%d.jpg
exiftran -i -9 frame*.jpg
ffmpeg -i frame_%d.jpg -c:v copy rotated.avi
mjpega_dump_header
movsub
mp3_header_decompress
mpeg4_unpack_bframes
I-unpack ang mga naka-pack na B-frame na istilong DivX.
Ang mga naka-pack na B-frame na istilo ng DivX ay hindi wastong MPEG-4 at isang solusyon lamang para sa mga sira
Video para sa Windows subsystem. Gumagamit sila ng mas maraming espasyo, maaaring magdulot ng maliliit na isyu sa pag-sync ng AV, nangangailangan
mas maraming CPU power para mag-decode (maliban kung ang player ay may ilang na-decode na pila ng larawan upang mabayaran
ang 2,0,2,0 frame bawat packet style) at magdulot ng problema kung kinopya sa isang karaniwang lalagyan
tulad ng mp4 o mpeg-ps/ts, dahil maaaring hindi ma-decode ng mga MPEG-4 decoder ang mga ito, dahil
ay hindi wastong MPEG-4.
Halimbawa upang ayusin ang isang AVI file na naglalaman ng MPEG-4 stream na may istilong DivX na naka-pack na B-frame
paggamit ffmpeg, maaari mong gamitin ang command:
ffmpeg -i INPUT.avi -codec copy -bsf:v mpeg4_unpack_bframes OUTPUT.avi
ingay
Sinisira ang mga nilalaman ng mga pakete nang hindi nasisira ang lalagyan. Maaaring gamitin para sa fuzzing o
pagsubok sa katatagan/pagtago ng error.
Mga Parameter: Isang numeral na string, na ang halaga ay nauugnay sa kung gaano kadalas magiging output byte
binago. Samakatuwid, ang mga halagang mas mababa o katumbas ng 0 ay ipinagbabawal, at mas mababa ang higit pa
mababago ang mga madalas na byte, na may 1 ibig sabihin ang bawat byte ay binago.
ffmpeg -i INPUT -c copy -bsf ingay[=1] output.mkv
inilalapat ang pagbabago sa bawat byte.
alisin_dagdag
Gumamit ng mga ffmpeg-bitstream-filter online gamit ang mga serbisyo ng onworks.net