Skip to content

Commit

Permalink
es_out: add auto es selection policy
Browse files Browse the repository at this point in the history
No real way to handle declared alternate video streams
such as with live stream.

Refactors selection stuff and leaves room
for more improvement.

Policy change does not alter previous es selection.
Demuxers must make changes then before creating es.
  • Loading branch information
fcartegnie committed Sep 21, 2016
1 parent 3a1065c commit f9e9c17
Show file tree
Hide file tree
Showing 3 changed files with 131 additions and 94 deletions.
9 changes: 9 additions & 0 deletions include/vlc_es_out.h
Original file line number Diff line number Diff line change
Expand Up @@ -46,6 +46,9 @@ enum es_out_query_e
ES_OUT_SET_ES_STATE,/* arg1= es_out_id_t* arg2=bool */
ES_OUT_GET_ES_STATE,/* arg1= es_out_id_t* arg2=bool* */

/* sets es selection policy when in auto mode */
ES_OUT_SET_ES_CAT_POLICY, /* arg1=es_format_category_e arg2=es_out_policy_e */

/* */
ES_OUT_SET_GROUP, /* arg1= int */

Expand Down Expand Up @@ -92,6 +95,12 @@ enum es_out_query_e
ES_OUT_PRIVATE_START = 0x10000,
};

enum es_out_policy_e
{
ES_OUT_ES_POLICY_EXCLUSIVE = 0,/* Enforces single ES selection only */
ES_OUT_ES_POLICY_SIMULTANEOUS, /* Allows multiple ES per cat */
};

struct es_out_t
{
es_out_id_t *(*pf_add) ( es_out_t *, const es_format_t * );
Expand Down
Loading

0 comments on commit f9e9c17

Please sign in to comment.