]> git.sesse.net Git - vlc/blobdiff - include/vlc_config.h
* vlc_config.h: increased AOUT_PTS_TOLERANCE to 40ms, it avoids a lot of
[vlc] / include / vlc_config.h
index e04f4c2e0aa9bc4362a1f8cb06c50577a98eca18..693d4b3bb9f57a46d15d15cbeced20929935afab 100644 (file)
@@ -2,7 +2,7 @@
  * vlc_config.h: limits and configuration
  * Defines all compilation-time configuration constants and size limits
  *****************************************************************************
- * Copyright (C) 1999-2002 VideoLAN
+ * Copyright (C) 1999-2003 VideoLAN
  *
  * Authors: Vincent Seguin <seguin@via.ecp.fr>
  *          Samuel Hocevar <sam@via.ecp.fr>
 
 /* When a thread waits on a condition in debug mode, delay to wait before
  * outputting an error message (in second) */
-#define THREAD_COND_TIMEOUT             5
+#define THREAD_COND_TIMEOUT             1
 
 /* The configuration file and directory */
 #ifdef SYS_BEOS
-#  define CONFIG_DIR                    "config/settings"
-#elif defined( WIN32 )
-#  define CONFIG_DIR                   "vlc"
+#  define CONFIG_DIR                    "config/settings/VideoLAN Client"
+#elif SYS_DARWIN
+#  define CONFIG_DIR                    "Library/Preferences/VLC"
+#elif defined( WIN32 ) || defined( UNDER_CE )
+#  define CONFIG_DIR                    "vlc"
 #else
 #  define CONFIG_DIR                    ".vlc"
 #endif
  * Input thread configuration
  *****************************************************************************/
 
-/* XXX?? */
+/* Used in ErrorThread */
 #define INPUT_IDLE_SLEEP                ((mtime_t)(0.100*CLOCK_FREQ))
 
+/* Time to wait in case of read error */
+#define INPUT_ERROR_SLEEP               ((mtime_t)(0.10*CLOCK_FREQ))
+
+/* Number of read() calls needed until we check the file size through
+ * fstat() */
+#define INPUT_FSTAT_NB_READS            10
+
 /*
  * General limitations
  */
 
 /* Delay between channel changes - this is required to avoid flooding the 
  * channel server */
-#define INPUT_CHANNEL_CHANGE_DELAY         (mtime_t)(5*CLOCK_FREQ)
+#define INPUT_CHANNEL_CHANGE_DELAY      (mtime_t)(5*CLOCK_FREQ)
 
 /* Duration between the time we receive the data packet, and the time we will
  * mark it to be presented */
 #define DEFAULT_PTS_DELAY               (mtime_t)(.3*CLOCK_FREQ)
 
 /* DVD and VCD devices */
-#ifndef WIN32
+#if !defined( WIN32 ) && !defined( UNDER_CE )
 #   define DVD_DEVICE "/dev/dvd"
 #   define VCD_DEVICE "/dev/cdrom"
 #else
-#   define DVD_DEVICE "D"
-#   define VCD_DEVICE "D"
+#   define DVD_DEVICE "D:"
+#   define VCD_DEVICE "D:"
 #endif
 
 /*****************************************************************************
 /* Max number of inputs */
 #define AOUT_MAX_INPUTS                 5
 
+/* Buffers which arrive in advance of more than AOUT_MAX_ADVANCE_TIME
+ * will be considered as bogus and be trashed */
+#define AOUT_MAX_ADVANCE_TIME           (mtime_t)(DEFAULT_PTS_DELAY * 3)
+
 /* Buffers which arrive in advance of more than AOUT_MAX_PREPARE_TIME
  * will cause the calling thread to sleep */
 #define AOUT_MAX_PREPARE_TIME           (mtime_t)(.5*CLOCK_FREQ)
 
 /* Max acceptable delay between the coded PTS and the actual presentation
  * time, without resampling */
-#define AOUT_PTS_TOLERANCE              (mtime_t)(.02*CLOCK_FREQ)
+#define AOUT_PTS_TOLERANCE              (mtime_t)(.04*CLOCK_FREQ)
+
+/* Max acceptable resampling (in %) */
+#define AOUT_MAX_RESAMPLING             10
 
 /*****************************************************************************
  * Video configuration
  * (~1 Mbyte) before using huge values */
 #define VOUT_MAX_PICTURES               8
 
+/* Minimum number of direct pictures the video output will accept without
+ * creating additional pictures in system memory */
+#define VOUT_MIN_DIRECT_PICTURES        6
+
 /* Number of simultaneous subpictures */
 #define VOUT_MAX_SUBPICTURES            8
 
 
 /* Pictures which are VOUT_BOGUS_DELAY or more in advance probably have
  * a bogus PTS and won't be displayed */
-#define VOUT_BOGUS_DELAY                ((int)(0.800*CLOCK_FREQ))
+#define VOUT_BOGUS_DELAY                ((mtime_t)(DEFAULT_PTS_DELAY * 3))
 
 /* Delay (in microseconds) before an idle screen is displayed */
 #define VOUT_IDLE_DELAY                 (5*CLOCK_FREQ)
 #define VOUT_OUTMEM_SLEEP               ((mtime_t)(0.020*CLOCK_FREQ))
 
 /* The default video output window title */
-#define VOUT_TITLE                      "VideoLAN Client " VERSION
+#define VOUT_TITLE                      "VLC"
 
 /*****************************************************************************
  * Video parser configuration
 
 /* Optimization level, from 0 to 2 - 1 is generally a good compromise. Remember
  * that raising this level dramatically lengthens the compilation time. */
-#if defined( HAVE_RELEASE ) || defined( __pentiumpro__ )
+#if defined( HAVE_RELEASE )
 #   define VPAR_OPTIM_LEVEL             2
 #else
 #   define VPAR_OPTIM_LEVEL             1
  *****************************************************************************/
 
 /* Maximal size of a message to be stored in the mesage queue,
- * it is needed when vasprintf is not avalaible */
+ * it is needed when vasprintf is not available */
 #define INTF_MAX_MSG_SIZE               512
 
 /* Maximal size of the message queue - in case of overflow, all messages in the