[vlc-devel] [PATCH 3/3] libvlc: libvlc_video_set_teletext(0) to disable teletext
Rémi Denis-Courmont
remi at remlab.net
Mon Mar 27 14:13:04 CEST 2017
On March 27, 2017 1:01:38 PM GMT+03:00, Thomas Guillem <thomas at gllm.fr> wrote:
>Since 0 is an invalid page for the zvbi plugin.
>
>libvlc_video_get_teletext() will now return 0 if teletext is disabled.
>The
>teletext was already disabled by default, and
>libvlc_video_get_teletext() could
>be misleading since it returned 100 by default.
>---
> include/vlc/libvlc_media_player.h | 9 ++++++---
> lib/media_player.c | 2 +-
> lib/video.c | 14 +++++++-------
> 3 files changed, 14 insertions(+), 11 deletions(-)
>
>diff --git a/include/vlc/libvlc_media_player.h
>b/include/vlc/libvlc_media_player.h
>index 8214151831..a391b44df7 100644
>--- a/include/vlc/libvlc_media_player.h
>+++ b/include/vlc/libvlc_media_player.h
>@@ -1352,7 +1352,10 @@ LIBVLC_API
>void libvlc_video_set_crop_geometry( libvlc_media_player_t *p_mi, const
>char *psz_geometry );
>
> /**
>- * Get current teletext page requested.
>+ * Get current teletext page requested or 0 if it's disabled.
>+ *
>+ * Teletext is disabled by default, call libvlc_video_set_teletext()
>to enable
>+ * it.
> *
> * \param p_mi the media player
> * \return the current teletext page requested.
>@@ -1365,8 +1368,8 @@ LIBVLC_API int libvlc_video_get_teletext(
>libvlc_media_player_t *p_mi );
> * This function can also be used to send a teletext key.
> *
> * \param p_mi the media player
>- * \param i_page teletex page number requested. This value can be -1
>to disable
>- * teletext, a number in the range [0;1000[ to show the requested page
>or a
>+ * \param i_page teletex page number requested. This value can be 0 to
>disable
>+ * teletext, a number in the range ]0;1000[ to show the requested page
>or a
>* teletext key. 100 is the default teletext page. \see
>libvlc_teletext_key_t
> */
>LIBVLC_API void libvlc_video_set_teletext( libvlc_media_player_t *p_mi,
>int i_page );
>diff --git a/lib/media_player.c b/lib/media_player.c
>index a0ef780045..2c5aa727fb 100644
>--- a/lib/media_player.c
>+++ b/lib/media_player.c
>@@ -648,7 +648,7 @@ libvlc_media_player_new( libvlc_instance_t
>*instance )
>var_Create (mp, "deinterlace-mode", VLC_VAR_STRING |
>VLC_VAR_DOINHERIT);
>
> var_Create (mp, "vbi-page", VLC_VAR_INTEGER);
>- var_SetInteger (mp, "vbi-page", 100);
>+ var_SetInteger (mp, "vbi-page", 0);
>
> var_Create (mp, "video-filter", VLC_VAR_STRING | VLC_VAR_DOINHERIT);
> var_Create (mp, "sub-source", VLC_VAR_STRING | VLC_VAR_DOINHERIT);
>diff --git a/lib/video.c b/lib/video.c
>index 2b9dcf877a..d25fadfdea 100644
>--- a/lib/video.c
>+++ b/lib/video.c
>@@ -518,12 +518,7 @@ void libvlc_video_set_teletext(
>libvlc_media_player_t *p_mi, int i_page )
>
> if( i_page >= 0 && i_page < 1000 )
> var_SetInteger( p_mi, "vbi-page", i_page );
>- else if( i_page < -1 )
>- {
>- libvlc_printerr("Invalid page number");
>- return;
>- }
>- else
>+ else if( i_page >= 1000 )
> {
> switch (i_page)
> {
>@@ -539,6 +534,11 @@ void libvlc_video_set_teletext(
>libvlc_media_player_t *p_mi, int i_page )
> return;
> }
> }
>+ else
>+ {
>+ libvlc_printerr("Invalid page number");
>+ return;
>+ }
>
> p_input_thread = libvlc_get_input_thread( p_mi );
> if( !p_input_thread ) return;
>@@ -549,7 +549,7 @@ void libvlc_video_set_teletext(
>libvlc_media_player_t *p_mi, int i_page )
> return;
> }
>
>- if( i_page == -1 )
>+ if( i_page == 0 )
> {
> teletext_enable( p_input_thread, false );
> }
>--
>2.11.0
>
>_______________________________________________
>vlc-devel mailing list
>To unsubscribe or modify your subscription options:
>https://mailman.videolan.org/listinfo/vlc-devel
This probably won't look very well in Doxygen. No objections to the code.
--
Rémi Denis-Courmont
More information about the vlc-devel
mailing list