1. 02 Sep, 2014 1 commit
    • Deb Mukherjee's avatar
      Adds config opt for highbitdepth + misc. vpx · 5acfafb1
      Deb Mukherjee authored
      Adds config parameter vp9_highbitdepth, to support highbitdepth profiles.
      Also includes most vpx level high bit-depth functions. However
      encode/decode in the highbitdepth profiles will not work until
      the rest of the code is in place.
      
      Change-Id: I34c53b253c38873611057a6cbc89a1361b8985a6
      5acfafb1
  2. 07 Aug, 2014 1 commit
    • Deb Mukherjee's avatar
      Changes hdr for profiles > 1 for intraonly frames · 09bf1d61
      Deb Mukherjee authored
      Specifies the bit-depth, color sampling and colorspace
      for intra only frames for profiles > 0
      
      Also adds checks to ensure that profile 1 and 3 are
      exclusively used for non 420 streams.
      
      Change-Id: Icfb15fa1acccbce8f757c78fa8a2f60591360745
      09bf1d61
  3. 21 Jul, 2014 1 commit
  4. 18 Jul, 2014 1 commit
  5. 08 Apr, 2014 1 commit
    • 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
  6. 19 Mar, 2014 1 commit
  7. 24 Jan, 2014 1 commit
  8. 25 Nov, 2013 1 commit
  9. 23 Nov, 2013 1 commit
  10. 25 Oct, 2013 1 commit
  11. 19 Oct, 2013 1 commit
    • Dmitry Kovalev's avatar
      Removing NUM_ prefix from constant names. · 6d2a0da7
      Dmitry Kovalev authored
      Renames for consistency with other constants:
        NUM_FRAME_TYPES -> FRAME_TYPES
        NUM_PARTITION_CONTEXTS -> PARTITION_CONTEXTS
      
      Change-Id: I3db30acb2868eb0a424237c831087b2e264ec47f
      6d2a0da7
  12. 27 Aug, 2013 1 commit
  13. 26 Aug, 2013 1 commit
  14. 23 Aug, 2013 1 commit
    • Yaowu Xu's avatar
      Limit mv range to be based on partition size · 13930cf5
      Yaowu Xu authored
      Previous change c4048dbd limits the mv search range assuming max block
      size of 64x64, this commit change the search range using actual block
      size instead.
      
      Change-Id: Ibe07ab02b62bf64bd9f8675d2b997af20a2c7e11
      13930cf5
  15. 22 Aug, 2013 1 commit
  16. 20 Aug, 2013 1 commit
    • Yaowu Xu's avatar
      Change to limit the mv search range · c4048dbd
      Yaowu Xu authored
      As the pixel values beyond image border are duplicates of pixels
      on edge, the change limits the mv search range, any mv beyond
      the limits no longer produce new/different prediction values
      as entire block with pixels used for subpel interpolation are
      outside image border.
      
      Change-Id: I4c6fdf06e33c1cef1489f5470ce0fb4e5e01fb79
      c4048dbd
  17. 10 Aug, 2013 1 commit
  18. 07 Aug, 2013 1 commit
    • Dmitry Kovalev's avatar
      Adding ss_size_lookup table. · 8db2675b
      Dmitry Kovalev authored
      Removing the old one bsize_from_dim_lookup. Now we have a way to determine
      block size for plane using its subsampling values (ss_size_lookup). And
      then we can find the number of pixels in the block (num_pels_log2_lookup).
      
      Change-Id: I6fc981da2ae093de81741d3d78eaefed11015db9
      8db2675b
  19. 05 Aug, 2013 1 commit
  20. 29 Jul, 2013 2 commits
  21. 23 Jul, 2013 1 commit
    • Jim Bankoski's avatar
      clean up bw, bh · 86a9dec7
      Jim Bankoski authored
      many structures use bw and bh and they have different meanings.   This cl attempts
      to start this clean up and remove unneccessary 2 step look up log and then
      shift operations...
      
      also removed partition type multiple operation code in bitstream.c.
      
      Change-Id: I7e03e552bdfc0939738e430862e3073d30fdd5db
      86a9dec7
  22. 19 Jul, 2013 1 commit
  23. 12 Jul, 2013 1 commit
    • Deb Mukherjee's avatar
      Some minor cleanups for efficiency · 94c481f9
      Deb Mukherjee authored
      Implements some of the helper functions more efficiently with
      lookups rathers than branches. Modeling function is consolidated
      to reduce some computations.
      
      Also merged the two enums BLOCK_SIZE_TYPES and BlockSize into
      one because there is no need to keep them separate (even though
      the semantics are a little different).
      
      No bitstream or output change.
      
      About 0.5% speedup
      
      Change-Id: I7d71a66e8031ddb340744dc493f22976052b8f9f
      94c481f9
  24. 08 Jul, 2013 1 commit
  25. 03 Jul, 2013 1 commit
  26. 06 Jun, 2013 1 commit
  27. 23 May, 2013 1 commit
    • Jingning Han's avatar
      Merge 4x4 block level partition into codebase · 7ac5ac52
      Jingning Han authored
      Move 4x4/4x8/8x4 partition coding out of experimental list.
      
      This commit fixed the unit test failure issues. It also resolved
      the merge conflicts between 4x4 block level partition and iterative
      motion search for comp_inter_inter.
      
      Change-Id: I898671f0631f5ddc4f5cc68d4c62ead7de9c5a58
      7ac5ac52
  28. 14 May, 2013 1 commit
    • Jingning Han's avatar
      Enable recursive partition down to 4x4 · 1f26840f
      Jingning Han authored
      This commit allows the rate-distortion optimization recursion
      at encoder to go down to 4x4 block size. It deprecates the use
      of I4X4_PRED and SPLITMV syntax elements from bit-stream
      writing/reading. Will remove the unused probability models in
      the next patch.
      
      The partition type search and bit-stream are now capable of
      supporting the rectangular partition of 8x8 block, i.e., 8x4
      and 4x8. Need to revise the rate-distortion parts to get these
      two partition tested in the rd loop.
      
      Change-Id: I0dfe3b90a1507ad6138db10cc58e6e237a06a9d6
      1f26840f
  29. 10 May, 2013 1 commit
    • Yunqing Wang's avatar
      Add joint motion search in comp_inter_inter mode(experiment) · 9f5811c2
      Yunqing Wang authored
      In current code, motion vectors got from single prediction mode are used
      in compound prediction mode directly. These motion vectors may not give
      accurate prediction since they are searched independently. In this patch,
      we took Pascal's suggestion, and did joint motion search in compound
      prediction mode to find better motion vectors in this situation.
      Test results:
      Overall PSNR: 0.570%(derf), 0.918%(stdhd);
      SSIM: 0.572%(derf), 1.009%(stdhd);
      
      The encoder is a little slower. This can be improved since some c
      code is used in motion search.
      
      Change-Id: Ib30c9240f6c56c9b070867b4ca89412a76d9f3c6
      9f5811c2
  30. 08 May, 2013 1 commit
    • Jingning Han's avatar
      Extend left/above partition context to per mi(8x8) · 4a88ad89
      Jingning Han authored
      Update and buffer left/above partition information context per 8x8
      block. This allows to further enable recursive partition down to
      4x4 block size, and hence deprecating I4X4_PRED and SPLITMV.
      
      This commit also fixes a context buffer swap/restore issue in 32x32
      partition type search. This gives 0.1% performance gain for derf/yt.
      Will refactor the superblock partition type search into recursion
      form.
      
      Change-Id: Ib61975aca5f12b78d8018481d7fa1393d085689b
      4a88ad89
  31. 07 May, 2013 2 commits
  32. 30 Apr, 2013 2 commits
    • Ronald S. Bultje's avatar
      sb8x8 integration in rd loop. · d068d869
      Ronald S. Bultje authored
      Work-in-progress, not yet ready for review. TODO items:
      - bitstream writing (encoder) and reading (decoder)
      - decoder reconstruction
      
      Change-Id: I5afb7284e7e0480847b47cd0097cb469433c9081
      d068d869
    • Jingning Han's avatar
      Separate I4X4_PRED coding from macroblock modules · 94191b5c
      Jingning Han authored
      Separate the functionality of I4X4_PRED from decode_mb. Use
      decode_atom_intra instead, to enable recursive partition of superblock
      down to 8x8.
      
      Change-Id: Ifc89a3be82225398954169d0a839abdbbfd8ca3b
      94191b5c
  33. 26 Apr, 2013 1 commit
  34. 24 Apr, 2013 2 commits
    • Jingning Han's avatar
      Move sbsegment out of experimental list · b0e3b3df
      Jingning Han authored
      Move rectangular superblock coding out of experimental list.
      
      Change-Id: I96c37547d122330d666a67b4bf577ae54547857f
      b0e3b3df
    • Jingning Han's avatar
      Contextual entropy coding of partition syntax · ff2b8aa2
      Jingning Han authored
      This commit enables selecting probability models for recursive block
      partition information syntax, depending on its above/left partition
      information, as well as the current block size. These conditional
      probability models are reasonably stationary and consistent across
      frames, hence the backward adaptive approach is used to maintain and
      update the contextual models.
      
      It achieves coding performance gains (on top of enabling rectangular
      block sizes):
      derf:   0.242%
      yt:     0.391%
      hd:     0.376%
      stdhd:  0.645%
      
      Change-Id: Ie513d9673337f0d27abd65fb566b711d0844ec2e
      ff2b8aa2
  35. 23 Apr, 2013 1 commit
  36. 17 Apr, 2013 1 commit
    • Jingning Han's avatar
      Recursive partition syntax coding · 90a91cc6
      Jingning Han authored
      Enable recursive partition information coding from SB64X64 down to
      MB16X16. The bit-stream syntax is now supporting rectangular block
      sizes. It starts from SB64X64 and recursively describes the partition
      type of the current block. If the partition type is PARTITION_NONE,
      the block is coded as a single unit; if it is PARTITION_HORZ or
      PARTITION_VERT, the block is segmented into two independently coded
      rectangular units, with no further partition needed; otherwise, the
      block is segmented into 4 square blocks. i.e., PARTITION_SPLIT case,
      each can be potentially further partitioned.
      
      Forward adaptive probability modeling is used for the partition
      information coding, conditioned on the current block size.
      
      Change-Id: I499365fb547839d555498e3bcc0387d8a3587d87
      90a91cc6