1. 25 Nov, 2011 3 commits
  2. 16 Nov, 2011 3 commits
  3. 11 Nov, 2011 3 commits
  4. 07 Nov, 2011 2 commits
  5. 30 Oct, 2011 1 commit
  6. 28 Oct, 2011 1 commit
  7. 21 Oct, 2011 5 commits
  8. 18 Oct, 2011 4 commits
  9. 10 Oct, 2011 1 commit
  10. 09 Oct, 2011 1 commit
  11. 29 Sep, 2011 4 commits
  12. 28 Sep, 2011 1 commit
  13. 25 Sep, 2011 1 commit
  14. 23 Sep, 2011 1 commit
  15. 19 Sep, 2011 2 commits
  16. 07 Sep, 2011 1 commit
  17. 06 Sep, 2011 1 commit
  18. 23 Aug, 2011 2 commits
  19. 19 Aug, 2011 1 commit
  20. 17 Aug, 2011 1 commit
    • Vincent Penquerc'h's avatar
      flacdec: avoid timestamp/offset tracking going out of sync · 3e0134f5
      Vincent Penquerc'h authored
      The libFLAC API is callback based, and we must only call it to
      output data when we know we have enough input data. For this
      reason, a single processing step is done when receiving a buffer.
      However, if there were metadata buffers still pending, a step
      intended for the first audio frame might end up writing that
      leftover metadata. Since a single step is done per buffer, this
      will cause every buffer to be written one step late.
      
      This would add some latency (a bufferfull's worth), possibly
      lose a buffer when seeking or the like, and also cause timestamp
      and offset to be applied to the wrong buffer, as updates to
      the "current" segment last_stop (from incoming buffer timestamp)
      will be applied to an output buffer originating from the previous
      incoming buffer.
      
      This fixes the issue by ensuring that, upon receiving the first
      audio frame, processing is done till all metadata is processed,
      so the next "single step" done will be for the audio frame. After
      this, we should keep to 1 input buffer -> 1 output buffer and so
      avoid getting out of sync.
      
      https://bugzilla.gnome.org/show_bug.cgi?id=650960
      3e0134f5
  21. 16 Aug, 2011 1 commit