[vlc-devel] [RFC PATCH 0/8] Allow renderer to change during playback

Hugo Beauzée-Luyssen hugo at beauzee.fr
Thu Jul 6 19:14:23 CEST 2017


Hi,

I'm currently trying to implement renderer switching at runtime, so that one
can switch to a chromecast during playback.
The current behavior is quite unintuitive, and once a playback to a chromecast
has started, there is no way back except stopping, disabling the chromecast,
and starting the playback again.

I'd really like some feedback on this, as I believe it's a mandatory feature 
for 3.0.

Best regards,

Hugo Beauzée-Luyssen (8):
  vlc_demux: Remove trailing whitespace
  demux: Add a demux_IsDemuxFilter helper
  input: Delete the demux_filter chain upon input deletion
  input: Allow the sout to change on the fly
  input: Allow demux_filter to be changed during playback
  playlist: Add playlist_SetRenderer
  input: Provide the potential renderer upon input item creation
  demux: Disable demux filters before removing them from the chain

 include/vlc_demux.h                                |   4 +-
 include/vlc_es_out.h                               |   1 +
 include/vlc_input.h                                |  11 ++-
 include/vlc_playlist.h                             |   8 ++
 lib/media_player.c                                 |   2 +-
 modules/misc/fingerprinter.c                       |   2 +-
 modules/stream_out/chromecast/chromecast_demux.cpp |   5 +-
 src/Makefile.am                                    |   1 +
 src/input/control.c                                |   8 ++
 src/input/demux.c                                  |  36 +++++++
 src/input/demux.h                                  |   7 ++
 src/input/es_out.c                                 |   9 ++
 src/input/es_out_timeshift.c                       |   3 +
 src/input/input.c                                  | 109 +++++++++++++++++++--
 src/input/input_internal.h                         |   3 +
 src/input/vlm.c                                    |   5 +-
 src/libvlccore.sym                                 |   1 +
 src/playlist/engine.c                              |   3 +
 src/playlist/playlist_internal.h                   |   1 +
 src/playlist/renderer.c                            |  50 ++++++++++
 src/playlist/thread.c                              |   5 +-
 21 files changed, 254 insertions(+), 20 deletions(-)
 create mode 100644 src/playlist/renderer.c

-- 
2.11.0



More information about the vlc-devel mailing list