[vlc-devel] [RFC] input core: add status field per elementary stream

Jean-Paul Saman jpsaman at videolan.org
Wed May 2 15:07:02 CEST 2012


VLC input core does not give feedback about failures from outputs. In
certain use cases, this information is useful.
For instance when (remote) monitoring VLC with another program. If
only the audio stream fails to playback (no decoder) or
the audio output, then the input would regard the stream as
successfully started. The input status would say PLAYING_S.

In the mentioned use case it would be helpful to be able to get a
notion of the failure for audio elementary stream. Currently
this is not possible in VLC. This need has been briefly discussed with
fenrir and hopefully he has time to look at this proposal.

The attached patch set implements a state per elementary stream inside
VLC core. An ES can have a state DISABLED,
ENABLED and ERROR.

An input function input_GetEsState(p_input, cat) is added to allow
DBUS and LUA (status.xml) to query the current status of
the input. The function requires an input and a ES category:
UNKNOWN_ES, VIDEO_ES, AUDIO_ES, SPU_ES or NAV_ES.
The return value is one of: INPUT_ES_STATE_DISABLED,
INPUT_ES_STATE_ENABLED, INPUT_ES_STATE_ERROR or
INPUT_ES_STATE_UNKNOWN.

When the return value is INPUT_ES_STATE_ERROR, then for that ES
category CreateDecoder() failed to create, find a
suitable decoder and/or output module. If the ES category was never
used, then it returns INPUT_ES_STATE_DISABLED.

Patches attached: 	
input core:       0004-input-core-add-status-field-per-elementary-stream.patch
dbus interface: 0006-modules-control-dbus-add-EsStatus-property-to-MPRIS-.patch
lua   interface:  0007-lua-report-status-of-main-ES-es-on-current-input.patch

Kind regards,

Jean-Paul Saman
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0004-input-core-add-status-field-per-elementary-stream.patch
Type: application/octet-stream
Size: 10268 bytes
Desc: not available
URL: <http://mailman.videolan.org/pipermail/vlc-devel/attachments/20120502/5483f32c/attachment.obj>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0006-modules-control-dbus-add-EsStatus-property-to-MPRIS-.patch
Type: application/octet-stream
Size: 10080 bytes
Desc: not available
URL: <http://mailman.videolan.org/pipermail/vlc-devel/attachments/20120502/5483f32c/attachment-0001.obj>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0007-lua-report-status-of-main-ES-es-on-current-input.patch
Type: application/octet-stream
Size: 3327 bytes
Desc: not available
URL: <http://mailman.videolan.org/pipermail/vlc-devel/attachments/20120502/5483f32c/attachment-0002.obj>


More information about the vlc-devel mailing list