Skip to content
Snippets Groups Projects
  1. Dec 19, 2011
  2. Dec 16, 2011
    • Yunqing Wang's avatar
      Merge mr_pick_inter_mode and pick_inter_mode · c647ec44
      Yunqing Wang authored
      Merged multi-resolution motion estimation with regular motion
      estimation function in order to remove duplicated part. This
      caused slight changes in multi-resulotion encoder quality &
      performance.
      
      Change-Id: Ib4ecc7acfebfe5eea959b5b91febae6db7b95fd1
      c647ec44
    • James Berry's avatar
      fix: make sure ss_err is large enough · 24196dd9
      James Berry authored
      increase size of ss_err by one to make
      sure there is room for 64 elements.
      
      Change-Id: I355cb8c499aa7da3b9675f2326a8d25a74bb88d2
      24196dd9
    • John Koleszar's avatar
      Avoid heap allocation of firstpass stats · 26c6a44c
      John Koleszar authored
      The total_stats, this_frame_stats, and total_left_stats structures
      were previously create by a heap allocation, despite being of fixed
      size. These structures were allocated and deallocated during
      {de,}allocate_compressor_data, which is reinvoked whenever the frame
      size changes. Unfortunately, this clobbers the total_stats and
      total_left_stats data.
      
      Historically, these were variable size at one time, due to the first
      pass motion map, which necessitated their being created by a unique
      heap allocation. However, this bug with the total_stats being
      clobbered has probably been present since that initial implementation.
      
      These structures are instead moved to be stored within the struct
      twopass_rc directly, rather than being heap allocated separately.
      
      Change-Id: I7f9e519e25c58b92969071f0e99fa80307e0682b
      26c6a44c
    • Scott LaVarnway's avatar
      Fixed mb_skip_coeff bug · 0ccefd2c
      Scott LaVarnway authored
      When mb_skip_coeff is set, the idct is not necessary.  Prior
      to this patch, the code would call idcts based on leftover
      eob information.  This patch will now skip the idct for
      SPLIT_MV and clear out the eobs for B_PRED, forcing the idct
      to be skipped.
      
      Change-Id: If5b0d2ed3ebd07789d30ec5160df927485fcaa17
      0ccefd2c
  3. Dec 15, 2011
  4. Dec 14, 2011
  5. Dec 13, 2011
  6. Dec 12, 2011
  7. Dec 10, 2011
  8. Dec 09, 2011
    • John Koleszar's avatar
      vpx_integer.h: fix incorrect type emulation · a4e410a3
      John Koleszar authored
      The previous definition of uintptr_t was incorrect on x64 with MSVC.
      Also, the ARMV6 version of int_fast16_t was defined as unsigned for
      some reason. Since the fast types are currently unused, just remove
      them.
      
      Change-Id: Idd73f77a989c77feedcb4a6802ae6bd37324ed40
      a4e410a3
  9. Dec 08, 2011
  10. Dec 07, 2011
  11. Dec 06, 2011
  12. Dec 05, 2011
    • Yunqing Wang's avatar
      Multiple-resolution encoder · aa7335e6
      Yunqing Wang authored
      The example encoder down-samples the input video frames a number of
      times with a down-sampling factor, and then encodes and outputs
      bitstreams with different resolutions.
      
      Support arbitrary down-sampling factor, and down-sampling factor
      can be different for each encoding level.
      
      For example, the encoder can be tested as follows.
      1. Configure with multi-resolution encoding enabled:
      ../libvpx/configure --target=x86-linux-gcc --disable-codecs
      --enable-vp8 --enable-runtime_cpu_detect --enable-debug
      --disable-install-docs --enable-error-concealment
      --enable-multi-res-encoding
      2. Run make
      3. Encode:
      If input video is 1280x720, run:
      ./vp8_multi_resolution_encoder 1280 720 input.yuv 1.ivf 2.ivf 3.ivf 1
      (output: 1.ivf(1280x720); 2.ivf(640x360); 3.ivf(320x180).
      The last parameter is set to 1/0 to show/not show PSNR.)
      4. Decode:
      ./simple_decoder 1.ivf 1.yuv
      ./simple_decoder 2.ivf 2.yuv
      ./simple_decoder 3.ivf 3.yuv
      5. View video:
      mplayer 1.yuv -demuxer rawvideo -rawvideo w=1280:h=720 -loop 0 -fps 30
      mplayer 2.yuv -demuxer rawvideo -rawvideo w=640:h=360 -loop 0 -fps 30
      mplayer 3.yuv -demuxer rawvideo -rawvideo w=320:h=180 -loop 0 -fps 30
      
      The encoding parameters can be modified in vp8_multi_resolution_encoder.c,
      for example, target bitrate, frame rate...
      
      Modified API. John helped a lot with that. Thanks!
      
      Change-Id: I03be9a51167eddf94399f92d269599fb3f3d54f5
      aa7335e6
    • John Koleszar's avatar
  13. Nov 29, 2011
Loading