[vlc-commits] es_out: add callback to post sub-items
Rémi Denis-Courmont
git at videolan.org
Sun Jun 4 18:25:33 CEST 2017
vlc | branch: master | Rémi Denis-Courmont <remi at remlab.net> | Sun Jun 4 19:16:40 2017 +0300| [4e4d3ab5c74638b1043aa0247c4bc0f3798e0134] | committer: Rémi Denis-Courmont
es_out: add callback to post sub-items
In the long term, there should really be no need for demux and es_out
when parsing a playlist. But for now, add a "proper" callback for the
directory demux to report sub-items.
> http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=4e4d3ab5c74638b1043aa0247c4bc0f3798e0134
---
include/vlc_es_out.h | 2 ++
src/input/es_out.c | 7 +++++++
src/input/es_out_timeshift.c | 1 +
3 files changed, 10 insertions(+)
diff --git a/include/vlc_es_out.h b/include/vlc_es_out.h
index b6f40df941..e6dc67b2e0 100644
--- a/include/vlc_es_out.h
+++ b/include/vlc_es_out.h
@@ -94,6 +94,8 @@ enum es_out_query_e
ES_OUT_GET_PCR_SYSTEM, /* arg1=mtime_t *, arg2=mtime_t * res=can fail */
ES_OUT_MODIFY_PCR_SYSTEM, /* arg1=int is_absolute, arg2=mtime_t, res=can fail */
+ ES_OUT_POST_SUBNODE, /* arg1=input_item_node_t *, res=can fail */
+
/* First value usable for private control */
ES_OUT_PRIVATE_START = 0x10000,
};
diff --git a/src/input/es_out.c b/src/input/es_out.c
index 4d75178902..cde10deda7 100644
--- a/src/input/es_out.c
+++ b/src/input/es_out.c
@@ -2765,6 +2765,13 @@ static int EsOutControlLocked( es_out_t *out, int i_query, va_list args )
return VLC_SUCCESS;
}
+ case ES_OUT_POST_SUBNODE:
+ {
+ input_item_node_t *node = va_arg(args, input_item_node_t *);
+ input_item_node_PostAndDelete(node);
+ return VLC_SUCCESS;
+ }
+
default:
msg_Err( p_sys->p_input, "unknown query in es_out_Control" );
return VLC_EGENERIC;
diff --git a/src/input/es_out_timeshift.c b/src/input/es_out_timeshift.c
index b23ae7c9a5..c8fa798561 100644
--- a/src/input/es_out_timeshift.c
+++ b/src/input/es_out_timeshift.c
@@ -723,6 +723,7 @@ static int ControlLocked( es_out_t *p_out, int i_query, va_list args )
return VLC_EGENERIC;
/* fall through */
case ES_OUT_GET_GROUP_FORCED:
+ case ES_OUT_POST_SUBNODE:
return es_out_vaControl( p_sys->p_out, i_query, args );
case ES_OUT_MODIFY_PCR_SYSTEM:
More information about the vlc-commits
mailing list