Skip to content
  • edward.baker's avatar
    Switch ChromeOS Chromium login to use IJG libjpeg · 199f66b2
    edward.baker authored
    The default libjpeg library is libjpeg_turbo, except for Chrome OS. This
    change switches the Chrome OS build to use IJG jpeg for the login screen.
    The intended outcome is to have everything use libjpeg_turbo except for
    JPEGCodec in ui/gfx.
    
    ChromeUtilityMsg_RobustJPEGDecodeImage:
      Send decodes to JPEGCodec which then uses chromium_ijg_ mangled libjpeg to
      decode JPEGs.
    ChromeUtilityMsg_DecodeImage:
      Send decodes to blink WebImage. Any JPEGs would then be decoded with
      libjpeg_turbo mangled with chromium_jpeg_.
    
    User login code avatar/user_image_manager_impl.cc and
    wallpaper/wallpaper_manager.cc currently setup UserImageLoader with
    ImageDecoder::ROBUST_JPEG_DECODE.
    
    Tests were run on a Peppy (Haswell 2955U), using the image_decoding benchmark
    in telemetry.
    
    ImageDecoding_avg.image_decoding.html?jpg:
    Stock (ms): 166.98 166.80 163.03
    Patch (ms):  78.95  73.27  78.23
    
    TBR=cpu@chromium.org
    BUG=413712
    TEST=
    $ cd ./tools/perf
    $ ./run_benchmark --remote=${IP} \
                      --browser=cros-chrome-guest \
                      run image_decoding.image_decoding_measurement
    
    Review URL: https://codereview.chromium.org/569623002
    
    Cr-Commit-Position: refs/heads/master@{#328812}
    199f66b2