[vlc-devel] [PATCH 00/14] ES track id rework (next episode)

Thomas Guillem thomas at gllm.fr
Fri Feb 21 16:59:31 CET 2020


Hello,

This patch set follow the 16 first commits of my previous patch set called
"[RFC PATCHv2 00/18] ES track id rework".

The complete branch could be found here:
https://code.videolan.org/tguillem/vlc/commits/track-id/8

The new changes are:
 - Keep the legacy "cat-track" option (that use the track addition order).
 - Use new string_id from "cat-track-id" option.
 - Handle a list of string_id ("spu/0,spu/1") from "cat-track-id" option: allow
   to select multiple tracks from command line.
 - Simplify input controls handling when the input is not yet started
 - Add and test vlc_player_SelectTracksByStringIds()

TODO:
 - Use input_source_t instead of es_out_ctx_t, as mentionned by RĂ©mi.
 - Use vlc_player_SelectTracksByStringIds() for the MediaLibrary track
   preference restoration.
 - Remove INPUT_CONTROL_SET_ES_AUTOSELECT and ES_OUT_SET_ES_AUTOSELECT

Regards,

Thomas Guillem (14):
  es_out: use string id for "cat-track-id" options
  player: fix typo in vlc_player_SelectEsIdList
  player: move track limit check
  player: refactor es list filling
  demux: mock: use stable ids
  es_out: add a new ES policy: auto
  es_out: prevent multi selection if the policy doesn't allow it
  es_out: allow multi selection from "cat-track-id"
  es_out: add a control to change cat ids
  input: add a control to change str ids
  input: merge input_ControlSync and input_ControlPush
  input: INPUT_CONTROL_SET_ES_CAT_IDS can be called sync
  player: add vlc_player_SelectTracksByStringIds()
  test: player: test vlc_player_SelectTracksByStringIds

 include/vlc_es_out.h         |   3 +
 include/vlc_player.h         |  29 +++++
 modules/demux/mock.c         |   9 +-
 src/input/es_out.c           | 135 ++++++++++++++++++++---
 src/input/es_out.h           |   2 +
 src/input/es_out_timeshift.c |   1 +
 src/input/input.c            |  36 +++++--
 src/input/input_internal.h   |  11 +-
 src/input/var.c              |   6 +-
 src/libvlc-module.c          |   7 +-
 src/libvlccore.sym           |   1 +
 src/player/input.c           |  23 ++++
 src/player/medialib.c        |   6 +-
 src/player/player.c          | 108 +++++++++++++------
 src/player/player.h          |   9 ++
 test/src/player/player.c     | 202 +++++++++++++++++++++++++++++++++++
 16 files changed, 514 insertions(+), 74 deletions(-)

-- 
2.20.1



More information about the vlc-devel mailing list