[vlc-commits] demux: adaptative: rewrite using synchronous demuxers

Francois Cartegnie git at videolan.org
Tue Oct 6 13:16:37 CEST 2015


vlc | branch: master | Francois Cartegnie <fcvlcdev at free.fr> | Tue Sep 29 15:06:37 2015 +0200| [c5db60a7e87c12f82f1a723f0f907da69b862cfd] | committer: Francois Cartegnie

demux: adaptative: rewrite using synchronous demuxers

Can now flush buffers on demux restart.
Do align pcr after sending to decoders instead of always incrementing
by the target value (avoid dropping blocks across segments on restart).
Always issue a fakees to demuxer, then recycle on execution.
Avoids double deletion with duplicate Del commands (demuxer 0..n+self n).
Can now handle HLS discontinuities.
Drops the streamoutput layer.

> http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=c5db60a7e87c12f82f1a723f0f907da69b862cfd
---

 modules/demux/Makefile.am                          |    4 +-
 modules/demux/adaptative/PlaylistManager.cpp       |  141 +++++----
 modules/demux/adaptative/PlaylistManager.h         |   11 +-
 modules/demux/adaptative/Streams.cpp               |  314 ++++++++++++++------
 modules/demux/adaptative/Streams.hpp               |   76 +++--
 modules/demux/adaptative/adaptative.cpp            |    5 +-
 modules/demux/adaptative/playlist/BasePeriod.cpp   |    4 +-
 .../demux/adaptative/plumbing/CommandsQueue.cpp    |   75 ++---
 .../demux/adaptative/plumbing/CommandsQueue.hpp    |   11 +-
 modules/demux/adaptative/plumbing/Demuxer.cpp      |   66 ++--
 modules/demux/adaptative/plumbing/Demuxer.hpp      |   24 +-
 modules/demux/adaptative/plumbing/FakeESOut.cpp    |  105 ++++---
 modules/demux/adaptative/plumbing/FakeESOut.hpp    |    9 +-
 modules/demux/adaptative/plumbing/FakeESOutID.cpp  |   29 +-
 modules/demux/adaptative/plumbing/FakeESOutID.hpp  |    8 +-
 modules/demux/adaptative/plumbing/StreamOutput.cpp |  170 -----------
 modules/demux/adaptative/plumbing/StreamOutput.hpp |  106 -------
 modules/demux/dash/DASHManager.cpp                 |   27 +-
 modules/demux/dash/DASHManager.h                   |    9 +-
 modules/demux/dash/DASHStream.cpp                  |   68 +++++
 modules/demux/dash/DASHStream.hpp                  |   52 ++++
 modules/demux/hls/HLSManager.cpp                   |    2 +-
 modules/demux/hls/HLSManager.hpp                   |    2 +-
 modules/demux/hls/HLSStreamFormat.hpp              |    4 +-
 modules/demux/hls/HLSStreams.cpp                   |   86 ++++--
 modules/demux/hls/HLSStreams.hpp                   |   32 +-
 26 files changed, 769 insertions(+), 671 deletions(-)

Diff:   http://git.videolan.org/gitweb.cgi/vlc.git/?a=commitdiff;h=c5db60a7e87c12f82f1a723f0f907da69b862cfd


More information about the vlc-commits mailing list