[FFmpeg-trac] #2540(avcodec:new): -threads with libx264rgb do not work

FFmpeg trac at avcodec.org
Tue May 7 00:40:24 CEST 2013


#2540: -threads with libx264rgb do not work
-------------------------------------+-------------------------------------
             Reporter:               |                    Owner:
  hirschhornsalz                     |                   Status:  new
                 Type:  defect       |                Component:  avcodec
             Priority:  normal       |               Resolution:
              Version:  git-master   |               Blocked By:
             Keywords:  libx264      |  Reproduced by developer:  0
             Blocking:               |
Analyzed by developer:  0            |
-------------------------------------+-------------------------------------

Comment (by hirschhornsalz):

 Replying to [comment:3 Cigaes]:
 > Regarding your original problem, maybe look at the pixel format, I
 believe the default format negotiation has changed at some point before
 1.2: you probably were encoding for yuv420p and now for yuv444p, which has
 better quality but is slower; {{{-pix_fmt yuv420p}}} should fix it.
 >
 > I do not know what will be faster: on one hand, yuv420p has the
 colorspace conversion, on the other hand rgb is not subsamples, benchmark
 is needed.

 Thank you for this suggestion, very good idea. I did a short test with 1.2
 and yuv420p - and it is indeed faster than yuv444p but OTOH not fast as
 0.11.3.

 Maximum frame rate for HD video capturing using x11grab and x264

 {{{
 1.2 with yuv444p        27 fps
 1.2 with yuv420p        37 fps
 1.2 with rgb            94 fps
 0.11.3 with yuv420p     74 fps
 }}}

 Interesting is the oprofile sample test for the 1.2+yuv420p:

 {{{
 Counted CPU_CLK_UNHALTED events (Clock cycles when not halted) with a unit
 mask of 0x00 (No unit mask) count 100000
 samples  %        image name               symbol name
 1137688  42.1727  libswscale.so.2.2.100    hScale16To15_c
 244454    9.0616  libswscale.so.2.2.100    bgr32ToUV_half_c
 227943    8.4496  libswscale.so.2.2.100    bgr32ToY_c
 160825    5.9616  libswscale.so.2.2.100    yuv2plane1_8_c
 130781    4.8479  libc-2.17.so             __memcpy_ssse3_back
 105577    3.9136  libx264.so.125           x264_prefetch_ref_mmx2
 ......... more libx264 stuff....
 }}}

 The hScale16To15_c function doesn't even show up on 0.11.3, and it seems
 to be a bottleneck.

 > And of course, you should submit your patch to ffmpeg-devel as cehoyos
 suggested.

 Will do.

-- 
Ticket URL: <https://ffmpeg.org/trac/ffmpeg/ticket/2540#comment:4>
FFmpeg <http://ffmpeg.org>
FFmpeg issue tracker


More information about the FFmpeg-trac mailing list