[vlc-devel] [PATCH 3/3] libvlc: save the teletext disabled state

Thomas Guillem thomas at gllm.fr
Thu Mar 23 11:31:14 CET 2017


libvlc_video_get_teletext() will now return -1 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 |  5 ++++-
 lib/media_player.c                |  2 +-
 lib/video.c                       | 14 +++++++-------
 3 files changed, 12 insertions(+), 9 deletions(-)

diff --git a/include/vlc/libvlc_media_player.h b/include/vlc/libvlc_media_player.h
index 8214151831..50b339f5e1 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 -1 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.
diff --git a/lib/media_player.c b/lib/media_player.c
index a0ef780045..380229e2c9 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", -1);
 
     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..3e7e851a24 100644
--- a/lib/video.c
+++ b/lib/video.c
@@ -516,14 +516,9 @@ void libvlc_video_set_teletext( libvlc_media_player_t *p_mi, int i_page )
     int telx;
     bool b_key = false;
 
-    if( i_page >= 0 && i_page < 1000 )
+    if( i_page >= -1 && 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;
-- 
2.11.0



More information about the vlc-devel mailing list