> -----Original Message----- > From: ffmpeg-devel [mailto:ffmpeg-devel-boun...@ffmpeg.org] On Behalf Of > Alexander Strasser > Sent: Tuesday, April 23, 2019 8:40 AM > To: FFmpeg development discussions and patches <ffmpeg-devel@ffmpeg.org> > Subject: Re: [FFmpeg-devel] [PATCH V2 1/2] configure: sort > decoder/encoder/filter/... names in alphabet order > > Hi! > > On 2019-04-15 21:23 +0800, Guo, Yejun wrote: > > take decoder names an example, with the default page length, shell > command > > 'pr' needs two pages for all the decoder names. The names are firstly > > printed > > in the first page, then in the second page. So, as a whole, the names are > > sorted neither in column order nor in row order. It's a little confused. > > > > One method is to calculate the proper page length, so all the names are > printed > > in one page by 'pr -l', and so strictly in alphabet order, column by column. > > > > Another method is to use command printf instead of pr, because buybox > doesn't > > have pr. This patch refines print_in_columns to print the names with printf > > in alphabet order, very similar with 'pr -l', except the case when the last > > column is not fully filled with names. > > Looks promising. Though this kind of change is basically > a bit difficult. > > There is some risk that it won't work as expected on all > currently supported shells or perform differently. > > For the performance as long as it is not grave, it should > not be a problem. Actually this implementation looks faster > here. > > If it won't work as expected the risk is kind of limited, > as long as it doesn't modify global state that matters > and it does not abort the configure script, "only" the > informative / diagnostic output will be flawed, but the > build itself will be fine. > > > > Signed-off-by: Guo, Yejun <yejun....@intel.com> > > --- > > configure | 34 +++++++++++++++++++++++++--------- > > 1 file changed, 25 insertions(+), 9 deletions(-) > > > > diff --git a/configure b/configure > > index c2580b3..45a9126 100755 > > --- a/configure > > +++ b/configure > > @@ -3830,14 +3830,30 @@ die_unknown(){ > > } > > > > print_in_columns() { > > - cols=$(expr $ncols / 24) > > - cat | tr ' ' '\n' | sort | pr -r "-$cols" -w $ncols -t > > + width=24 > > + cols=$(expr $ncols / $width) > > + rows=$(expr $(expr $# + $cols - 1) / $cols) > > > + eval format="%-${width}s" > > Why do you use eval here?
I did many experiments, eval is for an old try and forgot to remove it for the new change. Will remove it. > > > > + for row in $(seq 1 $rows); do > > I think the 1 argument to seq isn't needed here and below. yes, you are right. Will remove it. > > > > + index=$row > > + line="" > > + lfmt="" > > + for col in $(seq 1 $cols); do > > + if [ $index -le $# ]; then > > + eval item=\$${index} > > This will not work on all shells when trying to expand > the 10th parameter and following. > > Excerpt of the relevant POSIX section: > > When a positional parameter with more than one digit is specified, the > application shall enclose the digits in braces (see Parameter Expansion). thanks for pointing this, I did not try all shells. will replace it like your following patch did: eval line='$line" "${'$index'}' > > > > + line=$line" "$item > > + lfmt=$lfmt$format > > + fi > > + index=$(expr $index + $rows) > > + done > > + printf "$lfmt\n" $line > > + done > > The function will pad the rightmost column up to the column > width. It is usually not a visual problem in itself, but it > could lead to additional line breaks. Especially considering > that the typical values are significantly less than 24 chars. > yes, there will be additional spaces to fill the 24 chars for each name. Will remove with sed as your patch did. > > > } > > > > show_list() { > > suffix=_$1 > > shift > > - echo $* | sed s/$suffix//g | print_in_columns > > + print_in_columns $(echo $* | sed s/$suffix//g | tr ' ' '\n' | sort) > > You are changing the interface of the print_in_columns: > 1. passing input as paramters > 2. making the sort external > > Point 1 makes it a bit harder to read; preprocessing + sorting > pipelines are soaked into a command expansion that gets splitted > into the individual parameters. > > Point 2 makes it more flexible, so it shouldn't be a problem. > If we decide to implement it this way, it might be better to > mention that change in the commit message explicitly. will add in the commit message. > > [...] > > I have experimented locally, inspired by your patch, I came > up with this version: > > print_in_columns() { > col_width=24 > cols=$(expr $ncols / $col_width) > rows=$(expr $(expr $# + $cols - 1) / $cols) > > for idx in $(seq $rows); do > slice= > fmt= > for col in $(seq $cols); do > if test $idx -le $#; then > eval slice='"$slice "${'$idx'}' > fmt="${fmt}%-${col_width}s" > fi > idx=$(expr $idx + $rows) > done > printf "$fmt\n" $slice > done | sed 's/ *$//' > } > > Tested with bash, dash and mksh. thanks for the patch, will merge it. > > > Alexander > > P.S. > Below follows the diff for a random configure command I tested here, > compared to the current implementation. > > It's equivalent to the output of your implementation, minus the > trailing spaces after the last column. Speed is nearly the same. > > diff --git a/configure-z.log b/configure-b.log > index e9a1834f4a..ca0bafdeef 100644 > --- a/configure-z.log > +++ b/configure-b.log > @@ -60,157 +60,157 @@ Programs: > ffmpeg ffplay ffprobe > > Enabled decoders: > -aac atrac1 eatqi > -aac_fixed atrac3 eightbps > -aac_latm atrac3al eightsvx_exp > -aasc atrac3p eightsvx_fib > -ac3 atrac3pal escape124 > -ac3_fixed atrac9 escape130 > -adpcm_4xm aura evrc > -adpcm_adx aura2 exr > -adpcm_afc avrn ffv1 > -adpcm_agm avrp ffvhuff > -adpcm_aica avs ffwavesynth > -adpcm_ct avui fic > -adpcm_dtk ayuv fits > -adpcm_ea bethsoftvid flac > -adpcm_ea_maxis_xa bfi flashsv > -adpcm_ea_r1 bink flashsv2 > -adpcm_ea_r2 binkaudio_dct flic > -adpcm_ea_r3 binkaudio_rdft flv > -adpcm_ea_xas bintext fmvc > -adpcm_g722 bitpacked fourxm > -adpcm_g726 bmp fraps > -adpcm_g726le bmv_audio frwu > -adpcm_ima_amv bmv_video g2m > -adpcm_ima_apc brender_pix g723_1 > -adpcm_ima_dat4 c93 g729 > -adpcm_ima_dk3 cavs gdv > -adpcm_ima_dk4 ccaption gif > -adpcm_ima_ea_eacs cdgraphics gremlin_dpcm > -adpcm_ima_ea_sead cdxl gsm > -adpcm_ima_iss cfhd gsm_ms > -adpcm_ima_oki cinepak h261 > -adpcm_ima_qt clearvideo h263 > -adpcm_ima_rad cljr h263_v4l2m2m > -adpcm_ima_smjpeg cllc h263i > -adpcm_ima_wav comfortnoise h263p > -adpcm_ima_ws cook h264 > -adpcm_ms cpia h264_crystalhd > -adpcm_mtaf cscd h264_v4l2m2m > -adpcm_psx cyuv hap > -adpcm_sbpro_2 dca hcom > -adpcm_sbpro_3 dds hevc > -adpcm_sbpro_4 dfa hevc_v4l2m2m > -adpcm_swf dirac hnm4_video > -adpcm_thp dnxhd hq_hqa > -adpcm_thp_le dolby_e hqx > -adpcm_vima dpx huffyuv > -adpcm_xa dsd_lsbf hymt > -adpcm_yamaha dsd_lsbf_planar iac > -agm dsd_msbf idcin > -aic dsd_msbf_planar idf > -alac dsicinaudio iff_ilbm > -alias_pix dsicinvideo ilbc > -als dss_sp imc > -amrnb dst imm4 > -amrwb dvaudio indeo2 > -amv dvbsub indeo3 > -anm dvdsub indeo4 > -ansi dvvideo indeo5 > -ape dxa interplay_acm > -apng dxtory interplay_dpcm > -aptx dxv interplay_video > -aptx_hd eac3 jacosub > -arbc eacmv jpeg2000 > -ass eamad jpegls > -asv1 eatgq jv > -asv2 eatgv kgv1 > -kmvc pcm_dvd rv20 > -lagarith pcm_f16le rv30 > -loco pcm_f24le rv40 > -lscr pcm_f32be s302m > -m101 pcm_f32le sami > -mace3 pcm_f64be sanm > -mace6 pcm_f64le sbc > -magicyuv pcm_lxf scpr > -mdec pcm_mulaw screenpresso > -metasound pcm_s16be sdx2_dpcm > -microdvd pcm_s16be_planar sgi > -mimic pcm_s16le sgirle > -mjpeg pcm_s16le_planar sheervideo > -mjpegb pcm_s24be shorten > -mlp pcm_s24daud sipr > -mmvideo pcm_s24le smackaud > -motionpixels pcm_s24le_planar smacker > -movtext pcm_s32be smc > -mp1 pcm_s32le smvjpeg > -mp1float pcm_s32le_planar snow > -mp2 pcm_s64be sol_dpcm > -mp2float pcm_s64le sonic > -mp3 pcm_s8 sp5x > -mp3adu pcm_s8_planar speedhq > -mp3adufloat pcm_u16be srgc > -mp3float pcm_u16le srt > -mp3on4 pcm_u24be ssa > -mp3on4float pcm_u24le stl > -mpc7 pcm_u32be subrip > -mpc8 pcm_u32le subviewer > -mpeg1_v4l2m2m pcm_u8 subviewer1 > -mpeg1video pcm_vidc sunrast > -mpeg2_crystalhd pcm_zork svq1 > -mpeg2_v4l2m2m pcx svq3 > -mpeg2video pgm tak > -mpeg4 pgmyuv targa > -mpeg4_crystalhd pgssub targa_y216 > -mpeg4_v4l2m2m pictor tdsc > -mpegvideo pixlet text > -mpl2 pjs theora > -msa1 png thp > -mscc ppm tiertexseqvideo > -msmpeg4_crystalhd prores tiff > -msmpeg4v1 prosumer tmv > -msmpeg4v2 psd truehd > -msmpeg4v3 ptx truemotion1 > -msrle qcelp truemotion2 > -mss1 qdm2 truemotion2rt > -mss2 qdmc truespeech > -msvideo1 qdraw tscc > -mszh qpeg tscc2 > -mts2 qtrle tta > -mvc1 r10k twinvq > -mvc2 r210 txd > -mwsc ra_144 ulti > -mxpeg ra_288 utvideo > -nellymoser ralf v210 > -nuv rasc v210x > -on2avc rawvideo v308 > -opus realtext v408 > -paf_audio rl2 v410 > -paf_video roq vb > -pam roq_dpcm vble > -pbm rpza vc1 > -pcm_alaw rscc vc1_crystalhd > -pcm_bluray rv10 vc1_v4l2m2m > -vc1image wcmv xan_wc4 > -vcr1 webp xbin > -vmdaudio webvtt xbm > -vmdvideo wmalossless xface > -vmnc wmapro xl > -vorbis wmav1 xma1 > -vp3 wmav2 xma2 > -vp5 wmavoice xpm > -vp6 wmv1 xsub > -vp6a wmv2 xwd > -vp6f wmv3 y41p > -vp7 wmv3_crystalhd ylc > -vp8 wmv3image yop > -vp8_v4l2m2m wnv1 yuv4 > -vp9 wrapped_avframe zero12v > -vp9_v4l2m2m ws_snd1 zerocodec > -vplayer xan_dpcm zlib > -vqa xan_wc3 zmbv > -wavpack > +aac fourxm pixlet > +aac_fixed fraps pjs > +aac_latm frwu png > +aasc g2m ppm > +ac3 g723_1 prores > +ac3_fixed g729 prosumer > +adpcm_4xm gdv psd > +adpcm_adx gif ptx > +adpcm_afc gremlin_dpcm qcelp > +adpcm_agm gsm qdm2 > +adpcm_aica gsm_ms qdmc > +adpcm_ct h261 qdraw > +adpcm_dtk h263 qpeg > +adpcm_ea h263_v4l2m2m qtrle > +adpcm_ea_maxis_xa h263i r10k > +adpcm_ea_r1 h263p r210 > +adpcm_ea_r2 h264 ra_144 > +adpcm_ea_r3 h264_crystalhd ra_288 > +adpcm_ea_xas h264_v4l2m2m ralf > +adpcm_g722 hap rasc > +adpcm_g726 hcom rawvideo > +adpcm_g726le hevc realtext > +adpcm_ima_amv hevc_v4l2m2m rl2 > +adpcm_ima_apc hnm4_video roq > +adpcm_ima_dat4 hq_hqa roq_dpcm > +adpcm_ima_dk3 hqx rpza > +adpcm_ima_dk4 huffyuv rscc > +adpcm_ima_ea_eacs hymt rv10 > +adpcm_ima_ea_sead iac rv20 > +adpcm_ima_iss idcin rv30 > +adpcm_ima_oki idf rv40 > +adpcm_ima_qt iff_ilbm s302m > +adpcm_ima_rad ilbc sami > +adpcm_ima_smjpeg imc sanm > +adpcm_ima_wav imm4 sbc > +adpcm_ima_ws indeo2 scpr > +adpcm_ms indeo3 screenpresso > +adpcm_mtaf indeo4 sdx2_dpcm > +adpcm_psx indeo5 sgi > +adpcm_sbpro_2 interplay_acm sgirle > +adpcm_sbpro_3 interplay_dpcm sheervideo > +adpcm_sbpro_4 interplay_video shorten > +adpcm_swf jacosub sipr > +adpcm_thp jpeg2000 smackaud > +adpcm_thp_le jpegls smacker > +adpcm_vima jv smc > +adpcm_xa kgv1 smvjpeg > +adpcm_yamaha kmvc snow > +agm lagarith sol_dpcm > +aic loco sonic > +alac lscr sp5x > +alias_pix m101 speedhq > +als mace3 srgc > +amrnb mace6 srt > +amrwb magicyuv ssa > +amv mdec stl > +anm metasound subrip > +ansi microdvd subviewer > +ape mimic subviewer1 > +apng mjpeg sunrast > +aptx mjpegb svq1 > +aptx_hd mlp svq3 > +arbc mmvideo tak > +ass motionpixels targa > +asv1 movtext targa_y216 > +asv2 mp1 tdsc > +atrac1 mp1float text > +atrac3 mp2 theora > +atrac3al mp2float thp > +atrac3p mp3 tiertexseqvideo > +atrac3pal mp3adu tiff > +atrac9 mp3adufloat tmv > +aura mp3float truehd > +aura2 mp3on4 truemotion1 > +avrn mp3on4float truemotion2 > +avrp mpc7 truemotion2rt > +avs mpc8 truespeech > +avui mpeg1_v4l2m2m tscc > +ayuv mpeg1video tscc2 > +bethsoftvid mpeg2_crystalhd tta > +bfi mpeg2_v4l2m2m twinvq > +bink mpeg2video txd > +binkaudio_dct mpeg4 ulti > +binkaudio_rdft mpeg4_crystalhd utvideo > +bintext mpeg4_v4l2m2m v210 > +bitpacked mpegvideo v210x > +bmp mpl2 v308 > +bmv_audio msa1 v408 > +bmv_video mscc v410 > +brender_pix msmpeg4_crystalhd vb > +c93 msmpeg4v1 vble > +cavs msmpeg4v2 vc1 > +ccaption msmpeg4v3 vc1_crystalhd > +cdgraphics msrle vc1_v4l2m2m > +cdxl mss1 vc1image > +cfhd mss2 vcr1 > +cinepak msvideo1 vmdaudio > +clearvideo mszh vmdvideo > +cljr mts2 vmnc > +cllc mvc1 vorbis > +comfortnoise mvc2 vp3 > +cook mwsc vp5 > +cpia mxpeg vp6 > +cscd nellymoser vp6a > +cyuv nuv vp6f > +dca on2avc vp7 > +dds opus vp8 > +dfa paf_audio vp8_v4l2m2m > +dirac paf_video vp9 > +dnxhd pam vp9_v4l2m2m > +dolby_e pbm vplayer > +dpx pcm_alaw vqa > +dsd_lsbf pcm_bluray wavpack > +dsd_lsbf_planar pcm_dvd wcmv > +dsd_msbf pcm_f16le webp > +dsd_msbf_planar pcm_f24le webvtt > +dsicinaudio pcm_f32be wmalossless > +dsicinvideo pcm_f32le wmapro > +dss_sp pcm_f64be wmav1 > +dst pcm_f64le wmav2 > +dvaudio pcm_lxf wmavoice > +dvbsub pcm_mulaw wmv1 > +dvdsub pcm_s16be wmv2 > +dvvideo pcm_s16be_planar wmv3 > +dxa pcm_s16le wmv3_crystalhd > +dxtory pcm_s16le_planar wmv3image > +dxv pcm_s24be wnv1 > +eac3 pcm_s24daud wrapped_avframe > +eacmv pcm_s24le ws_snd1 > +eamad pcm_s24le_planar xan_dpcm > +eatgq pcm_s32be xan_wc3 > +eatgv pcm_s32le xan_wc4 > +eatqi pcm_s32le_planar xbin > +eightbps pcm_s64be xbm > +eightsvx_exp pcm_s64le xface > +eightsvx_fib pcm_s8 xl > +escape124 pcm_s8_planar xma1 > +escape130 pcm_u16be xma2 > +evrc pcm_u16le xpm > +exr pcm_u24be xsub > +ffv1 pcm_u24le xwd > +ffvhuff pcm_u32be y41p > +ffwavesynth pcm_u32le ylc > +fic pcm_u8 yop > +fits pcm_vidc yuv4 > +flac pcm_zork zero12v > +flashsv pcx zerocodec > +flashsv2 pgm zlib > +flic pgmyuv zmbv > +flv pgssub > +fmvc pictor > > Enabled encoders: > a64multi jpegls pgmyuv > @@ -271,13 +271,13 @@ huffyuv pcx zlib > jpeg2000 pgm zmbv > > Enabled hwaccels: > -h263_vaapi mpeg1_xvmc vc1_vaapi > -h264_vaapi mpeg2_vaapi vc1_vdpau > -h264_vdpau mpeg2_vdpau vp8_vaapi > -hevc_vaapi mpeg2_xvmc vp9_vaapi > -hevc_vdpau mpeg4_vaapi wmv3_vaapi > -mjpeg_vaapi mpeg4_vdpau wmv3_vdpau > -mpeg1_vdpau > +h263_vaapi mpeg1_xvmc vc1_vdpau > +h264_vaapi mpeg2_vaapi vp8_vaapi > +h264_vdpau mpeg2_vdpau vp9_vaapi > +hevc_vaapi mpeg2_xvmc wmv3_vaapi > +hevc_vdpau mpeg4_vaapi wmv3_vdpau > +mjpeg_vaapi mpeg4_vdpau > +mpeg1_vdpau vc1_vaapi > > Enabled parsers: > aac dvd_nav mpegvideo > @@ -297,104 +297,104 @@ dvaudio mpeg4video > vp9 > dvbsub mpegaudio xma > > Enabled demuxers: > -aa ea ircam > -aac ea_cdata iss > -ac3 eac3 iv8 > -acm epaf ivf > -act ffmetadata ivr > -adf filmstrip jacosub > -adp fits jv > -ads flac kux > -adx flic live_flv > -aea flv lmlm4 > -afc fourxm loas > -aiff frm lrc > -aix fsb lvf > -amr g722 lxf > -amrnb g723_1 m4v > -amrwb g726 matroska > -anm g726le mgsts > -apc g729 microdvd > -ape gdv mjpeg > -apng genh mjpeg_2000 > -aptx gif mlp > -aptx_hd gsm mlv > -aqtitle gxf mm > -asf h261 mmf > -asf_o h263 mov > -ass h264 mp3 > -ast hcom mpc > -au hevc mpc8 > -avi hls mpegps > -avr hnm mpegts > -avs ico mpegtsraw > -avs2 idcin mpegvideo > -bethsoftvid idf mpjpeg > -bfi iff mpl2 > -bfstm ilbc mpsub > -bink image2 msf > -bintext image2_alias_pix msnwc_tcp > -bit image2_brender_pix mtaf > -bmv image2pipe mtv > -boa image_bmp_pipe musx > -brstm image_dds_pipe mv > -c93 image_dpx_pipe mvi > -caf image_exr_pipe mxf > -cavsvideo image_gif_pipe mxg > -cdg image_j2k_pipe nc > -cdxl image_jpeg_pipe nistsphere > -cine image_jpegls_pipe nsp > -codec2 image_pam_pipe nsv > -codec2raw image_pbm_pipe nut > -concat image_pcx_pipe nuv > -data image_pgm_pipe ogg > -daud image_pgmyuv_pipe oma > -dcstr image_pictor_pipe paf > -dfa image_png_pipe pcm_alaw > -dhav image_ppm_pipe pcm_f32be > -dirac image_psd_pipe pcm_f32le > -dnxhd image_qdraw_pipe pcm_f64be > -dsf image_sgi_pipe pcm_f64le > -dsicin image_sunrast_pipe pcm_mulaw > -dss image_svg_pipe pcm_s16be > -dts image_tiff_pipe pcm_s16le > -dtshd image_webp_pipe pcm_s24be > -dv image_xpm_pipe pcm_s24le > -dvbsub image_xwd_pipe pcm_s32be > -dvbtxt ingenient pcm_s32le > -dxa ipmovie pcm_s8 > -pcm_u16be sdr2 ty > -pcm_u16le sds v210 > -pcm_u24be sdx v210x > -pcm_u24le segafilm vag > -pcm_u32be ser vc1 > -pcm_u32le shorten vc1t > -pcm_u8 siff vividas > -pcm_vidc sln vivo > -pjs smacker vmd > -pmp smjpeg vobsub > -pva smush voc > -pvf sol vpk > -qcp sox vplayer > -r3d spdif vqf > -rawvideo srt w64 > -realtext stl wav > -redspark str wc3 > -rl2 subviewer webm_dash_manifest > -rm subviewer1 webvtt > -roq sup wsaud > -rpl svag wsd > -rsd swf wsvqa > -rso tak wtv > -rtp tedcaptions wv > -rtsp thp wve > -s337m threedostr xa > -sami tiertexseq xbin > -sap tmv xmv > -sbc truehd xvag > -sbg tta xwma > -scc tty yop > -sdp txd yuv4mpegpipe > +aa idf pcm_s32le > +aac iff pcm_s8 > +ac3 ilbc pcm_u16be > +acm image2 pcm_u16le > +act image2_alias_pix pcm_u24be > +adf image2_brender_pix pcm_u24le > +adp image2pipe pcm_u32be > +ads image_bmp_pipe pcm_u32le > +adx image_dds_pipe pcm_u8 > +aea image_dpx_pipe pcm_vidc > +afc image_exr_pipe pjs > +aiff image_gif_pipe pmp > +aix image_j2k_pipe pva > +amr image_jpeg_pipe pvf > +amrnb image_jpegls_pipe qcp > +amrwb image_pam_pipe r3d > +anm image_pbm_pipe rawvideo > +apc image_pcx_pipe realtext > +ape image_pgm_pipe redspark > +apng image_pgmyuv_pipe rl2 > +aptx image_pictor_pipe rm > +aptx_hd image_png_pipe roq > +aqtitle image_ppm_pipe rpl > +asf image_psd_pipe rsd > +asf_o image_qdraw_pipe rso > +ass image_sgi_pipe rtp > +ast image_sunrast_pipe rtsp > +au image_svg_pipe s337m > +avi image_tiff_pipe sami > +avr image_webp_pipe sap > +avs image_xpm_pipe sbc > +avs2 image_xwd_pipe sbg > +bethsoftvid ingenient scc > +bfi ipmovie sdp > +bfstm ircam sdr2 > +bink iss sds > +bintext iv8 sdx > +bit ivf segafilm > +bmv ivr ser > +boa jacosub shorten > +brstm jv siff > +c93 kux sln > +caf live_flv smacker > +cavsvideo lmlm4 smjpeg > +cdg loas smush > +cdxl lrc sol > +cine lvf sox > +codec2 lxf spdif > +codec2raw m4v srt > +concat matroska stl > +data mgsts str > +daud microdvd subviewer > +dcstr mjpeg subviewer1 > +dfa mjpeg_2000 sup > +dhav mlp svag > +dirac mlv swf > +dnxhd mm tak > +dsf mmf tedcaptions > +dsicin mov thp > +dss mp3 threedostr > +dts mpc tiertexseq > +dtshd mpc8 tmv > +dv mpegps truehd > +dvbsub mpegts tta > +dvbtxt mpegtsraw tty > +dxa mpegvideo txd > +ea mpjpeg ty > +ea_cdata mpl2 v210 > +eac3 mpsub v210x > +epaf msf vag > +ffmetadata msnwc_tcp vc1 > +filmstrip mtaf vc1t > +fits mtv vividas > +flac musx vivo > +flic mv vmd > +flv mvi vobsub > +fourxm mxf voc > +frm mxg vpk > +fsb nc vplayer > +g722 nistsphere vqf > +g723_1 nsp w64 > +g726 nsv wav > +g726le nut wc3 > +g729 nuv > webm_dash_manifest > +gdv ogg webvtt > +genh oma wsaud > +gif paf wsd > +gsm pcm_alaw wsvqa > +gxf pcm_f32be wtv > +h261 pcm_f32le wv > +h263 pcm_f64be wve > +h264 pcm_f64le xa > +hcom pcm_mulaw xbin > +hevc pcm_s16be xmv > +hls pcm_s16le xvag > +hnm pcm_s24be xwma > +ico pcm_s24le yop > +idcin pcm_s32be yuv4mpegpipe > > Enabled muxers: > a64 hevc pcm_s24le > @@ -453,142 +453,142 @@ hash pcm_s16le wv > hds pcm_s24be yuv4mpegpipe > > Enabled protocols: > -async http rtmpt > -cache httpproxy rtp > -concat icecast srtp > -crypto md5 subfile > -data mmsh tcp > -ffrtmphttp mmst tee > -file pipe udp > -ftp prompeg udplite > -gopher rtmp unix > -hls > +async http rtp > +cache httpproxy srtp > +concat icecast subfile > +crypto md5 tcp > +data mmsh tee > +ffrtmphttp mmst udp > +file pipe udplite > +ftp prompeg unix > +gopher rtmp > +hls rtmpt > > Enabled filters: > -abench astats detelecine > -abitscope astreamselect dilation > -acompressor atadenoise displace > -acontrast atempo doubleweave > -acopy atrim drawbox > -acrossfade avectorscope drawgraph > -acrossover avgblur drawgrid > -acrusher azmq drmeter > -acue bandpass dynaudnorm > -adeclick bandreject earwax > -adeclip bass ebur128 > -adelay bbox edgedetect > -aderivative bench elbg > -adrawgraph biquad entropy > -aecho bitplanenoise eq > -aemphasis blackdetect equalizer > -aeval blackframe erosion > -aevalsrc blend extractplanes > -afade bm3d extrastereo > -afftdn boxblur fade > -afftfilt bwdif fftdnoiz > -afifo cellauto fftfilt > -afir channelmap field > -aformat channelsplit fieldhint > -agate chorus fieldmatch > -agraphmonitor chromahold fieldorder > -ahistogram chromakey fifo > -aiir chromashift fillborders > -aintegral ciescope find_rect > -ainterleave codecview firequalizer > -alimiter color flanger > -allpass colorbalance floodfill > -allrgb colorchannelmixer format > -allyuv colorkey fps > -aloop colorlevels framepack > -alphaextract colormatrix framerate > -alphamerge colorspace framestep > -amerge compand freezedetect > -ametadata compensationdelay fspp > -amix concat gblur > -amovie convolution geq > -amplify convolve gradfun > -amultiply copy graphmonitor > -anequalizer cover_rect greyedge > -anlmdn crop haas > -anoisesrc cropdetect haldclut > -anull crossfeed haldclutsrc > -anullsink crystalizer hdcd > -anullsrc cue headphone > -apad curves hflip > -aperms datascope highpass > -aphasemeter dcshift highshelf > -aphaser dctdnoiz hilbert > -apulsator deband histeq > -arealtime deblock histogram > -aresample decimate hqdn3d > -areverse deconvolve hqx > -aselect dedot hstack > -asendcmd deflate hue > -asetnsamples deflicker hwdownload > -asetpts deinterlace_vaapi hwmap > -asetrate dejudder hwupload > -asettb delogo hysteresis > -ashowinfo denoise_vaapi idet > -asidedata deshake il > -asplit despill inflate > -interlace premultiply smptebars > -interleave prewitt smptehdbars > -join procamp_vaapi sobel > -kerndeint pseudocolor spectrumsynth > -lenscorrection psnr split > -life pullup spp > -limiter qp sr > -loop random ssim > -loudnorm readeia608 stereo3d > -lowpass readvitc stereotools > -lowshelf realtime stereowiden > -lumakey remap streamselect > -lut removegrain super2xsai > -lut1d removelogo superequalizer > -lut2 repeatfields surround > -lut3d replaygain swaprect > -lutrgb reverse swapuv > -lutyuv rgbashift tblend > -mandelbrot rgbtestsrc telecine > -maskedclamp roberts testsrc > -maskedmerge rotate testsrc2 > -maskfun sab threshold > -mcdeint scale thumbnail > -mcompand scale2ref tile > -mergeplanes scale_vaapi tinterlace > -mestimate select tlut2 > -metadata selectivecolor tmix > -midequalizer sendcmd tonemap > -minterpolate separatefields tpad > -mix setdar transpose > -movie setfield transpose_vaapi > -mpdecimate setparams treble > -mptestsrc setpts tremolo > -negate setrange trim > -nlmeans setsar unpremultiply > -nnedi settb unsharp > -noformat sharpness_vaapi uspp > -noise showcqt vaguedenoiser > -normalize showfreqs vectorscope > -null showinfo vflip > -nullsink showpalette vfrdet > -nullsrc showspectrum vibrance > -oscilloscope showspectrumpic vibrato > -overlay showvolume vignette > -owdenoise showwaves vmafmotion > -pad showwavespic volume > -pal100bars shuffleframes volumedetect > -pal75bars shuffleplanes vstack > -palettegen sidechaincompress w3fdif > -paletteuse sidechaingate waveform > -pan sidedata weave > -perms signalstats xbr > -perspective signature xstack > -phase silencedetect yadif > -pixdesctest silenceremove yuvtestsrc > -pixscope sinc zmq > -pp sine zoompan > -pp7 smartblur > +abench deflate pan > +abitscope deflicker perms > +acompressor deinterlace_vaapi perspective > +acontrast dejudder phase > +acopy delogo pixdesctest > +acrossfade denoise_vaapi pixscope > +acrossover deshake pp > +acrusher despill pp7 > +acue detelecine premultiply > +adeclick dilation prewitt > +adeclip displace procamp_vaapi > +adelay doubleweave pseudocolor > +aderivative drawbox psnr > +adrawgraph drawgraph pullup > +aecho drawgrid qp > +aemphasis drmeter random > +aeval dynaudnorm readeia608 > +aevalsrc earwax readvitc > +afade ebur128 realtime > +afftdn edgedetect remap > +afftfilt elbg removegrain > +afifo entropy removelogo > +afir eq repeatfields > +aformat equalizer replaygain > +agate erosion reverse > +agraphmonitor extractplanes rgbashift > +ahistogram extrastereo rgbtestsrc > +aiir fade roberts > +aintegral fftdnoiz rotate > +ainterleave fftfilt sab > +alimiter field scale > +allpass fieldhint scale2ref > +allrgb fieldmatch scale_vaapi > +allyuv fieldorder select > +aloop fifo selectivecolor > +alphaextract fillborders sendcmd > +alphamerge find_rect separatefields > +amerge firequalizer setdar > +ametadata flanger setfield > +amix floodfill setparams > +amovie format setpts > +amplify fps setrange > +amultiply framepack setsar > +anequalizer framerate settb > +anlmdn framestep sharpness_vaapi > +anoisesrc freezedetect showcqt > +anull fspp showfreqs > +anullsink gblur showinfo > +anullsrc geq showpalette > +apad gradfun showspectrum > +aperms graphmonitor showspectrumpic > +aphasemeter greyedge showvolume > +aphaser haas showwaves > +apulsator haldclut showwavespic > +arealtime haldclutsrc shuffleframes > +aresample hdcd shuffleplanes > +areverse headphone sidechaincompress > +aselect hflip sidechaingate > +asendcmd highpass sidedata > +asetnsamples highshelf signalstats > +asetpts hilbert signature > +asetrate histeq silencedetect > +asettb histogram silenceremove > +ashowinfo hqdn3d sinc > +asidedata hqx sine > +asplit hstack smartblur > +astats hue smptebars > +astreamselect hwdownload smptehdbars > +atadenoise hwmap sobel > +atempo hwupload spectrumsynth > +atrim hysteresis split > +avectorscope idet spp > +avgblur il sr > +azmq inflate ssim > +bandpass interlace stereo3d > +bandreject interleave stereotools > +bass join stereowiden > +bbox kerndeint streamselect > +bench lenscorrection super2xsai > +biquad life superequalizer > +bitplanenoise limiter surround > +blackdetect loop swaprect > +blackframe loudnorm swapuv > +blend lowpass tblend > +bm3d lowshelf telecine > +boxblur lumakey testsrc > +bwdif lut testsrc2 > +cellauto lut1d threshold > +channelmap lut2 thumbnail > +channelsplit lut3d tile > +chorus lutrgb tinterlace > +chromahold lutyuv tlut2 > +chromakey mandelbrot tmix > +chromashift maskedclamp tonemap > +ciescope maskedmerge tpad > +codecview maskfun transpose > +color mcdeint transpose_vaapi > +colorbalance mcompand treble > +colorchannelmixer mergeplanes tremolo > +colorkey mestimate trim > +colorlevels metadata unpremultiply > +colormatrix midequalizer unsharp > +colorspace minterpolate uspp > +compand mix vaguedenoiser > +compensationdelay movie vectorscope > +concat mpdecimate vflip > +convolution mptestsrc vfrdet > +convolve negate vibrance > +copy nlmeans vibrato > +cover_rect nnedi vignette > +crop noformat vmafmotion > +cropdetect noise volume > +crossfeed normalize volumedetect > +crystalizer null vstack > +cue nullsink w3fdif > +curves nullsrc waveform > +datascope oscilloscope weave > +dcshift overlay xbr > +dctdnoiz owdenoise xstack > +deband pad yadif > +deblock pal100bars yuvtestsrc > +decimate pal75bars zmq > +deconvolve palettegen zoompan > +dedot paletteuse > > Enabled bsfs: > aac_adtstoasc h264_redundant_pps noise > @@ -604,20 +604,20 @@ h264_metadata mpeg2_metadata > vp9_superframe > h264_mp4toannexb mpeg4_unpack_bframes > vp9_superframe_split > > Enabled indevs: > -alsa oss v4l2 > -fbdev sndio xcbgrab > -lavfi > +alsa oss xcbgrab > +fbdev sndio > +lavfi v4l2 > > Enabled outdevs: > -alsa sdl2 v4l2 > -fbdev sndio xv > -oss > +alsa sdl2 xv > +fbdev sndio > +oss v4l2 > > License: GPL version 2 or later > libavfilter/filter_list.c is unchanged > libavdevice/indev_list.c is unchanged > libavdevice/outdev_list.c is unchanged > > -real 0m24.882s > -user 0m11.817s > -sys 0m4.488s > +real 0m17.654s > +user 0m13.339s > +sys 0m4.852s > > _______________________________________________ > ffmpeg-devel mailing list > ffmpeg-devel@ffmpeg.org > https://ffmpeg.org/mailman/listinfo/ffmpeg-devel > > To unsubscribe, visit link above, or email > ffmpeg-devel-requ...@ffmpeg.org with subject "unsubscribe". _______________________________________________ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-devel To unsubscribe, visit link above, or email ffmpeg-devel-requ...@ffmpeg.org with subject "unsubscribe".