[vlc-devel] commit: Added timeshift options (input-timeshift-granularity/ input-timeshift-path). (Laurent Aimar )

git version control git at videolan.org
Mon Nov 17 20:16:45 CET 2008


vlc | branch: master | Laurent Aimar <fenrir at videolan.org> | Mon Nov 17 19:36:00 2008 +0100| [8d3b66c7741278475239dff47db40ccd1c2b9f0f] | committer: Laurent Aimar 

Added timeshift options (input-timeshift-granularity/input-timeshift-path).

> http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=8d3b66c7741278475239dff47db40ccd1c2b9f0f
---

 src/input/es_out_timeshift.c |   18 ++++++++++++------
 src/libvlc-module.c          |   14 ++++++++++++++
 2 files changed, 26 insertions(+), 6 deletions(-)

diff --git a/src/input/es_out_timeshift.c b/src/input/es_out_timeshift.c
index 74f9420..818c021 100644
--- a/src/input/es_out_timeshift.c
+++ b/src/input/es_out_timeshift.c
@@ -306,12 +306,18 @@ es_out_t *input_EsOutTimeshiftNew( input_thread_t *p_input, es_out_t *p_next_out
 
     TAB_INIT( p_sys->i_es, p_sys->pp_es );
 
-    /* TODO config
-     * timeshift-granularity
-     * timeshift-path
-     */
-    p_sys->i_tmp_size_max = 50 * 1024*1024;
-    p_sys->psz_tmp_path = GetTmpPath( NULL );
+    /* */
+    const int i_tmp_size_max = var_CreateGetInteger( p_input, "input-timeshift-granularity" );
+    if( i_tmp_size_max < 0 )
+        p_sys->i_tmp_size_max = 50*1024*1024;
+    else
+        p_sys->i_tmp_size_max = __MAX( i_tmp_size_max, 1*1024*1024 );
+    msg_Dbg( p_input, "using timeshift granularity of %d bytes",
+             (int)p_sys->i_tmp_size_max );
+
+    char *psz_tmp_path = var_CreateGetNonEmptyString( p_input, "input-timeshift-path" );
+    p_sys->psz_tmp_path = GetTmpPath( psz_tmp_path );
+    msg_Dbg( p_input, "using timeshift  path '%s'", p_sys->psz_tmp_path );
 
     return p_out;
 }
diff --git a/src/libvlc-module.c b/src/libvlc-module.c
index 7c52604..ccc932a 100644
--- a/src/libvlc-module.c
+++ b/src/libvlc-module.c
@@ -704,6 +704,15 @@ static const char *const ppsz_clock_descriptions[] =
     "When possible, the input stream will be recorded instead of using" \
     "the stream output module" )
 
+#define INPUT_TIMESHIFT_PATH_TEXT N_("Timeshift directory")
+#define INPUT_TIMESHIFT_PATH_LONGTEXT N_( \
+    "Directory used to store the timeshift temporary files." )
+
+#define INPUT_TIMESHIFT_GRANULARITY_TEXT N_("Timeshift granularity")
+#define INPUT_TIMESHIFT_GRANULARITY_LONGTEXT N_( \
+    "This is the maximum size in bytes of the temporary files " \
+    "that will be used to store the timeshifted streams." )
+
 // DEPRECATED
 #define SUB_CAT_LONGTEXT N_( \
     "These options allow you to modify the behavior of the subpictures " \
@@ -1766,6 +1775,11 @@ vlc_module_begin ()
     add_bool( "input-record-native", true, NULL, INPUT_RECORD_NATIVE_TEXT,
               INPUT_RECORD_NATIVE_LONGTEXT, true );
 
+    add_string( "input-timeshift-path", NULL, NULL, INPUT_TIMESHIFT_PATH_TEXT,
+                INPUT_TIMESHIFT_PATH_LONGTEXT, true );
+    add_integer( "input-timeshift-granularity", -1, NULL, INPUT_TIMESHIFT_GRANULARITY_TEXT,
+                 INPUT_TIMESHIFT_GRANULARITY_LONGTEXT, true );
+
 /* Decoder options */
     add_category_hint( N_("Decoders"), CODEC_CAT_LONGTEXT , true )
     add_string( "codec", NULL, NULL, CODEC_TEXT,




More information about the vlc-devel mailing list