> -----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".

Reply via email to