1. 03 Mar, 2016 1 commit
  2. 26 Feb, 2016 3 commits
  3. 03 Feb, 2016 1 commit
    • Vincent Penquerc'h's avatar
      opus: fix FEC · 1ef601e7
      Vincent Penquerc'h authored
      FEC may only be used when PLC is enabled on the audio decoder,
      as it relies on empty buffers to generate audio from the next
      buffer. Hooking to the gap events doesn't work as the audio
      decoder does not like more buffers output than it sends.
      
      The length of data to generate using FEC from the next packet
      is determined by rounding the gap duration to nearest. This
      ensures that duration imprecision does not cause quantization
      to 2.5 milliseconds less than available. Doing so causes the
      Opus API to fail decoding. Such duration imprecision is common
      in live cases.
      
      The buffer to consider when determining the length of audio
      to be decoded is the previous buffer when using FEC, and the
      new buffer otherwise. In the FEC case, this means we determine
      the amount of audio from the previous buffer, whether it was
      missing or not (and get the data either from this buffer, or
      the current one if the previous one was missing).
      1ef601e7
  4. 02 Feb, 2016 1 commit
  5. 15 Dec, 2015 1 commit
  6. 19 Nov, 2015 1 commit
  7. 12 Nov, 2015 1 commit
  8. 05 Nov, 2015 1 commit
    • Sebastian Dröge's avatar
      opusdec: Update sink pad templates · dd741e64
      Sebastian Dröge authored
      We always require the channel-mapping-field. If it's 0 we require nothing
      else, otherwise we need channels, stream-count and coupled count to be
      available.
      dd741e64
  9. 03 Nov, 2015 8 commits
  10. 02 Nov, 2015 2 commits
  11. 15 Sep, 2015 1 commit
  12. 11 Sep, 2015 2 commits
  13. 17 Aug, 2015 1 commit
  14. 15 Aug, 2015 1 commit
  15. 27 Jul, 2015 1 commit
  16. 20 Jul, 2015 1 commit
    • Carlos Rafael Giani's avatar
      opusdec: Fix PLC frame size calculations · e5409361
      Carlos Rafael Giani authored
      Previously, PLC frames always had a length of 120ms, which caused audio
      quality degradation and synchronization errors. Fix this by calculating an
      appropriate length for the PLC frame.
      
      The length must be a multiple of 2.5ms. Calculate a multiple of 2.5ms that
      is nearest to the current PLC length. Any leftover PLC length that didn't
      make it into this frame is accumulated for the next PLC frame.
      
      https://bugzilla.gnome.org/show_bug.cgi?id=725167
      e5409361
  17. 22 Jun, 2015 1 commit
  18. 04 Jun, 2015 2 commits
  19. 04 May, 2015 1 commit
  20. 28 Apr, 2015 2 commits
  21. 03 Apr, 2015 1 commit
  22. 24 Mar, 2015 1 commit
  23. 23 Mar, 2015 5 commits