1. 27 May, 2020 4 commits
    • Dale Curtis's avatar
      lavf/mp3dec: don't adjust start time; packets are not adjusted. · 460132c9
      Dale Curtis authored
      7546ac2f made it so that the start_time for mp3 files is
      adjusted for skip_samples. However, this appears incorrect because
      subsequent packet timestamps are not adjusted and skip_samples are
      applied by deleting data from a packet without changing the timestamp.
      
      E.g., we are told the start_time is ~25ms and we get a packet with a
      timestamp of 0 that has had the skip_samples discarded from it. As such
      rendering engines may incorrectly discard everything prior to the
      25ms thinking that is where playback should officially start. Since the
      samples were deleted without adjusting timestamps though, the true
      start_time is still 0.
      
      Other formats like MP4 with edit lists will adjust both the start
      time and the timestamps of subsequent packets to avoid this issue.
      Signed-off-by: 's avatarDale Curtis <dalecurtis@chromium.org>
      Signed-off-by: 's avatarAnton Khirnov <anton@khirnov.net>
      460132c9
    • Linjie Fu's avatar
      lavc/vaapi_hevc: add missing max_8bit_constraint_flag · 7ae34011
      Linjie Fu authored
      This is accidentally missed while rebasing.
      Signed-off-by: 's avatarLinjie Fu <linjie.fu@intel.com>
      7ae34011
    • Xu Guangxin's avatar
      lavc/hevc_refs: Fix the logic of find_ref_idx() · 8b5ffaea
      Xu Guangxin authored
      Currently find_ref_idx() would trigger 2 scans in DPB to find the
      requested POC:
      1. Firstly, ignore MSB of ref->poc and search for the requested POC;
      2. Secondly, compare the entire ref->poc with requested POC;
      
      For long term reference, we are able to only check LSB if MSB is not
      presented(e.g. delta_poc_msb_present_flag == 0). However, for short
      term reference, we should never ignore poc's MSB and it should be
      kind of bit-exact. (Details in 8.3.2)
      
      Otherwise this leads to decoding failures like:
      [hevc @ 0x5638f4328600] Error constructing the frame RPS.
      [hevc @ 0x5638f4328600] Error parsing NAL unit #2.
      [hevc @ 0x5638f4338a80] Could not find ref with POC 21
      Error while decoding stream #0:0: Invalid data found when processing input
      
      Search the requested POC based on whether MSB is used, and avoid
      the 2-times scan for DPB buffer. This benefits both native HEVC
      decoder and integrated HW decoders.
      Signed-off-by: 's avatarXu Guangxin <guangxin.xu@intel.com>
      Signed-off-by: 's avatarLinjie Fu <linjie.fu@intel.com>
      8b5ffaea
    • Xu Guangxin's avatar
      lavc/hevc: Add poc_msb_present filed in LongTermRPS · 939a4db2
      Xu Guangxin authored
      delta_poc_msb_present_flag is needed in find_ref_idx() to
      indicate whether MSB of POC should be taken into account.
      
      Details in 8.3.2.
      Signed-off-by: 's avatarXu Guangxin <guangxin.xu@intel.com>
      Signed-off-by: 's avatarLinjie Fu <linjie.fu@intel.com>
      939a4db2
  2. 26 May, 2020 17 commits
  3. 25 May, 2020 10 commits
  4. 24 May, 2020 1 commit
  5. 23 May, 2020 8 commits