1. 02 Jan, 2018 1 commit
  2. 02 Dec, 2017 1 commit
  3. 28 Nov, 2017 3 commits
  4. 24 Nov, 2017 1 commit
  5. 25 Oct, 2017 1 commit
  6. 30 Jul, 2017 1 commit
  7. 18 Jul, 2017 3 commits
  8. 09 Jul, 2017 1 commit
    • Rémi Denis-Courmont's avatar
      skiptags: properly conceal ID3/APE tags (fixes #18501) · 2c34ea75
      Rémi Denis-Courmont authored
      As most demuxers cannot handle tags at the beginning of their input
      streams, the demuxer code has automatically skipped them for a long
      time.
      
      Unfortunately, a number of demuxers also assume that the initial stream
      byte offset is zero (while some others seem to assume zero in some paths
      and not in others). This seems like a reasonable assumption. And even if
      it were not, fixing all affected stream filters and demuxers to perform
      only relative seeking seems impractical and unpalatable.
      
      This stream filter shifts the stream byte offset so that the tags are
      entirely invisible, and the demuxer can assume the start is at offset 0.
      
      Of couse, the tags must still be accessible to the meta extraction
      engine(s). The TagLib plugin uses "low-level" vlc_access_NewMRL() so it
      is not subject to stream filters, and not affected by this change.
      (This change does however remove tags from "demuxdump".)
      
      NOTE: On the one hand, this also enables demuxing a file format with
      embedded absolute file offsets, if the tags were prepended after muxing.
      On the other hand, it conversely breaks demuxing such a file format if
      the tags are added during muxing. As far as I know, tags are normally
      appended rather than prepended to avoid this ambiguity.
      2c34ea75
  9. 08 Jul, 2017 1 commit
  10. 26 Jun, 2017 1 commit
  11. 19 Apr, 2017 2 commits
  12. 05 Mar, 2017 1 commit
  13. 21 Feb, 2017 1 commit
  14. 07 Feb, 2017 1 commit
  15. 06 Dec, 2016 1 commit
    • Filip Roséen's avatar
      stream: rename vlc_stream_NewMRL to vlc_stream_NewURL · e4fbdceb
      Filip Roséen authored
      The function does not open MRLs, as correctly described in its
      documentation, as such it is rather unfortunate that its name uses MRL
      instead of URL (especially given that it cannot handle MRLs).
      
      These changes are simply renaming all occurrences of the function, so
      that the behavior of the function is properly reflected by its name.
      Signed-off-by: Thomas Guillem's avatarThomas Guillem <thomas@gllm.fr>
      e4fbdceb
  16. 27 Oct, 2016 1 commit
  17. 25 Oct, 2016 1 commit
  18. 11 Oct, 2016 3 commits
  19. 07 Oct, 2016 1 commit
  20. 04 Oct, 2016 4 commits
    • Rémi Denis-Courmont's avatar
    • Rémi Denis-Courmont's avatar
      prefetch: revector Thread* functions · b2127ac7
      Rémi Denis-Courmont authored
      The Thread*() functions now look and behave more like their
      corresponding generic stream-filter callback.
      
      All the buffer handling on the background prefetch thread is now done
      by the thread entry point. This causes a marginal increase in the scope
      of the internal mutual exclusion lock.
      b2127ac7
    • Rémi Denis-Courmont's avatar
      prefetch: do not defer pause · 8c5a692e
      Rémi Denis-Courmont authored
      Do not wait for full buffers to pause the underlying stream. This
      improves responsiveness (upon resumption) for live streams. This also
      ensures that no I/O is done while the input thread is paused; some apps
      might reasonably expect such behaviour.
      8c5a692e
    • Rémi Denis-Courmont's avatar
      prefetch: do not defer pause · 67aa83dd
      Rémi Denis-Courmont authored
      Do not wait for full buffers to pause the underlying stream. This
      improves responsiveness (upon resumption) for live streams. This also
      ensures that no I/O is done while the input thread is paused; some apps
      might reasonably expect such behaviour.
      67aa83dd
  21. 26 Aug, 2016 1 commit
  22. 25 Jul, 2016 4 commits
  23. 21 Jul, 2016 4 commits
  24. 20 Jul, 2016 1 commit