1. 01 Jul, 2014 2 commits
    • Jim Bankoski's avatar
      validate uv block size when reading partition · abf0df08
      Jim Bankoski authored
      Change-Id: I74fc5f1a7bab3128cdd49441b83ec3a25aee65ca
      abf0df08
    • James Zern's avatar
      update vp9_thread.[hc] · e656f44c
      James Zern authored
      pull the latest from WebP, which adds a worker interface abstraction
      allowing an application to override init/reset/sync/launch/execute/end
      
      this has the side effect of removing a harmless, but annoying, TSan
      warning.
      
      Original source:
       http://git.chromium.org/webm/libwebp.git
        100644 blob 08ad4e1fecba302bf1247645e84a7d2779956bc3 src/utils/thread.c
        100644 blob 7bd451b124ae3b81596abfbcc823e3cb129d3a38 src/utils/thread.h
      
      Local modifications:
       - s/WebP/VP9/g
       - camelcase functions -> lower with _'s
       - associate '*' with the variable, not the type
      
      Change-Id: I875ac5a74ed873cbcb19a3a100b5e0ca6fcd9aed
      e656f44c
  2. 30 Jun, 2014 1 commit
  3. 27 Jun, 2014 1 commit
    • Jim Bankoski's avatar
      Better validation of invalid files · 9f37d149
      Jim Bankoski authored
      This patch checks that a decoder never tries to reference frame that's
      outside the range of 2x to 1/16th the size of this frame.  Any attempt
      to do so causes a failure.
      
      Change-Id: I5c98fa7bb95ac4f29146f29dd92b62fe96164e4c
      9f37d149
  4. 25 Jun, 2014 1 commit
    • James Zern's avatar
      vp9: check tile column count · b2b07755
      James Zern authored
      the max is 6. there are assumptions throughout the decode regarding
      this; fixes a crash with a fuzzed bitstream
      
      $ zzuf -s 5861 -r 0.01:0.05 -b 6- \
        < vp90-2-00-quantizer-00.webm.ivf \
        | dd of=invalid-vp90-2-00-quantizer-00.webm.ivf.s5861_r01-05_b6-.ivf \
          bs=1 count=81883
      
      Change-Id: I6af41bb34252e88bc156a4c27c80d505d45f5642
      b2b07755
  5. 20 Jun, 2014 1 commit
  6. 02 Jun, 2014 1 commit
  7. 21 May, 2014 3 commits
  8. 20 May, 2014 1 commit
    • hkuang's avatar
      Refactor decode_tiles and loopfilter code. · 20c1edf6
      hkuang authored
      The current decode_tiles decodes the frame one tile by one tile
      and then loopfilter the whole frame or use another worker thread to
      do loopfiltering.
      
      |------|------|------|------|
      |Tile1-|Tile2-|Tile3-|Tile4-|
      |------|------|------|------|
      
      For example, if a tile video has one row and four cols, decode_tiles
      will decode the Tile1, then Tile2, then Tile3, then Tile4.
      And during decode each tile, decode_tile will decode row by row in
      each tile.
      
      For frame parallel decoding, decode_tiles will decode video in row order
      across the tiles. So the order will be:
      "Decode 1st row of Tile1" -> "Decode 1st row of Tile2"
      -> "Decode 1st row of Tile3" -> "Decode 1st row of Tile4"
      -> "Decode 2nd row of Tile1" -> "Decode 2nd row of Tile2"
      -> "Decode 2nd row of Tile3" -> "Decode 2nd row of Tile4"-> "loopfilter 1st row"
      
      Change-Id: I2211f9adc6d142fbf411d491031203cb8a6dbf6b
      20c1edf6
  9. 16 May, 2014 1 commit
  10. 15 May, 2014 2 commits
    • Yaowu Xu's avatar
      cleanup -wextra warnings: · 04c40d3d
      Yaowu Xu authored
        vp9_decoder.c
        vp9_dthread.c
      
      Change-Id: Iaafe941545db98e9e3559096a955894646084ac2
      04c40d3d
    • hkuang's avatar
      Refactor calling loopfilter code. · bf8c58be
      hkuang authored
      This change is mainly for a follow CL that will refactor the
      decode_tiles.
      
      Change-Id: I52de6f8dbada75a64d9a94ebb5975136ed0960b4
      bf8c58be
  11. 14 May, 2014 1 commit
  12. 12 May, 2014 2 commits
  13. 09 May, 2014 1 commit
    • Adrian Grange's avatar
      Fix check of debug counts for corrupt frame · 99892e85
      Adrian Grange authored
      Fixes the idecoder in the case where:
        cm->error_resilient_mode == 0, and
        cm->frame_parallel_decoding_mode == 0, but
        new_fb->corrupted == 1.
      
      The assert in debug_check_frame_counts fails to
      take into account the case of a corrupt frame.
      
      Change-Id: Idf318a68458cc88d65d6f3f408a10d8ffe87e43f
      99892e85
  14. 08 May, 2014 1 commit
    • Dmitry Kovalev's avatar
      Removing VP9DecoderConfig. · 0dacecaf
      Dmitry Kovalev authored
      We only used two members from that struct: max_threads and inv_tile_order.
      Moving them directly to VP9Decoder struct.
      
      Change-Id: If696a4e5b5b41868a55f3cc971e1d7c1dd9d5f69
      0dacecaf
  15. 30 Apr, 2014 1 commit
  16. 23 Apr, 2014 2 commits
  17. 09 Apr, 2014 2 commits
  18. 08 Apr, 2014 3 commits
    • Deb Mukherjee's avatar
      High-level hooks for Profile 2 (10/12 bit) · d35df2d8
      Deb Mukherjee authored
      Adds some high-level hooks for profile 2 before further
      progress on the implementation.
      
      According to the definitiion in this patch:
      1. Profile 2 only supports 10 or 12 bit color but not 8
      2. Profile 2 supports all color sampling modes: 444, 422 and 420,
      and alpha plane.
      3. Profile 3 is currently undefined.
      
      Please consider the definition carefully and suggest modifications
      to the definition as needed.
      
      Change-Id: I5b284fc679e54ac5aee171af72fa7994cfd28995
      d35df2d8
    • Frank Galligan's avatar
      Fix decoder resolution change with tiles · 6ae58931
      Frank Galligan authored
      There was a bug with the decoder that if you started the decoder
      with more threads than the first frame had tile columns. Afterwards
      tried to decode a frame with more tile columns than the first frame,
      the decoder would hang. E.g. run vpxdec --threads=4. The first frame
      had two tile columns, then the next key frame had 4 tile columns, the
      decoder would hang. If you started with 4 tiles and switched to 2
      tiles the decoder would be fine. The issue is that the worker the thread
      loop is using is stale.
      
      I added a test vector "vp90-2-14-resize-848x480-1280x720.webm" that
      exhibited the bug.
      
      Change-Id: I7bdd47241a52ac0fe1c693a609bc779257e94229
      6ae58931
    • Dmitry Kovalev's avatar
      Renaming VP9D_COMP & VP9Decompressor to VP9Decoder. · 56c2f41c
      Dmitry Kovalev authored
      Change-Id: Ieb9b455b8aaef9884391021b7f640ef24c554687
      56c2f41c
  19. 07 Apr, 2014 1 commit
  20. 03 Apr, 2014 1 commit
  21. 02 Apr, 2014 2 commits
  22. 01 Apr, 2014 1 commit
  23. 28 Mar, 2014 1 commit
  24. 26 Mar, 2014 1 commit
  25. 25 Mar, 2014 2 commits
  26. 24 Mar, 2014 1 commit
  27. 21 Mar, 2014 2 commits
  28. 20 Mar, 2014 1 commit