1. 09 Jun, 2016 6 commits
    • Víctor Manuel Jáquez Leal's avatar
      videodecoder: handle buffer's flags at offset · 8b8708f9
      Víctor Manuel Jáquez Leal authored
      For reverse playback it is important to handle correctly the frame sync
      points, which is set when the input buffer doesn't have the DELTA_UNIT flag.
      
      This is handled correctly when decoder is packetized, but when it is not the
      frame's sync point is not copied, and the reverse playback never decodes frame
      batches.
      
      The current patch adds the buffer's flags to the Timestamp list, where the
      timestamp and duration of the input buffers are hold.
      8b8708f9
    • Víctor Manuel Jáquez Leal's avatar
      videodecoder: squash two message logs into one · 75906f53
      Víctor Manuel Jáquez Leal authored
      There were two consecutive log messages in gst_video_decoder_decode_frame().
      Given the information they provide, it is more efficient to squash them into a
      single one.
      75906f53
    • Víctor Manuel Jáquez Leal's avatar
      videodecoder: playback rate is in input_segment · 779e7391
      Víctor Manuel Jáquez Leal authored
      The playback rate is hold in the input_segment member variable, not in the
      output_segment, and the parse_gather list was never filled because of that.
      
      This patch changes the comparison with input_segment.
      779e7391
    • Sebastian Dröge's avatar
      videodecoder: Use input segment rate instead of output segment rate to decide... · 0bd3f235
      Sebastian Dröge authored
      videodecoder: Use input segment rate instead of output segment rate to decide whether the drain on keyframes
      
      The output segment is only set up after data is output, which might be far in
      the future for reverse playback. Also we are here interested in the state at
      the current *input* frame (which is the keyframe), not any possible output.
      0bd3f235
    • Sebastian Dröge's avatar
      videodecoder: Only drain in KEY_UNITS trick mode after a keyframe in forwards playback mode · 0c7022d6
      Sebastian Dröge authored
      For reverse playback the same behaviour was already implemented in
      flush_parse().
      
      For reverse playback, chain_forward() is only used to gather frames and not
      for decoding, and it is actually called by the draining logic, causing an
      infinite recursion.
      0c7022d6
    • Edward Hervey's avatar
      videodecoder: Don't push late frames · 8bee96c4
      Edward Hervey authored
      While it's a bit tricky to discard frames *before* decoding (because
      we might not be sure which data is needed or not by the decoder), we
      can discard them after decoding if they are too late anyway.
      
      Any following basetransform based element or similar would drop the frame too.
      8bee96c4
  2. 07 Jun, 2016 3 commits
  3. 04 Jun, 2016 1 commit
  4. 02 Jun, 2016 4 commits
  5. 01 Jun, 2016 3 commits
  6. 24 May, 2016 1 commit
  7. 23 May, 2016 3 commits
  8. 19 May, 2016 1 commit
  9. 18 May, 2016 2 commits
  10. 17 May, 2016 1 commit
  11. 16 May, 2016 3 commits
  12. 15 May, 2016 4 commits
  13. 14 May, 2016 5 commits
  14. 10 May, 2016 3 commits