* control the pace of reading.
*****************************************************************************
* Copyright (C) 1999, 2000 VideoLAN
- * $Id: input_ext-intf.h,v 1.86 2003/03/09 23:39:05 jlj Exp $
+ * $Id: input_ext-intf.h,v 1.93 2003/08/02 15:22:07 fenrir Exp $
*
* Authors: Christophe Massiot <massiot@via.ecp.fr>
*
uint8_t i_cat; /* stream category (audio, video, spu) */
int i_demux_fd; /* used to store demux device
file handle */
- char psz_desc[20]; /* description of ES: audio language
+ char *psz_desc; /* description of ES: audio language
* for instance ; NULL if not
* available */
count_t c_packets; /* total packets read */
count_t c_invalid_packets; /* invalid packets read */
+
+ /* XXX hack: to force a decoder instead of mode based on sout */
+ vlc_bool_t b_force_decoder;
};
/* Special PID values - note that the PID is only on 13 bits, and that values
mtime_t cr_ref, sysdate_ref;
mtime_t last_cr; /* reference to detect unexpected stream
* discontinuities */
- mtime_t last_syscr;
+ mtime_t last_pts;
count_t c_average_count;
/* counter used to compute dynamic average values */
int i_synchro_state;
disc or network */
vlc_bool_t b_pace_control; /* can we read when we want ? */
vlc_bool_t b_seekable; /* can we do lseek() ? */
- vlc_bool_t b_connected; /* does read() == 0 imply EOF ? */
/* if (b_seekable) : */
unsigned int i_area_nb;
int (* pf_rewind ) ( input_thread_t * );
/* NULL if we don't support going *
* backwards (it's gonna be fun) */
+ int (* pf_demux_control ) ( input_thread_t *, int, va_list );
demux_sys_t * p_demux_data; /* data of the demux */
/* Buffer manager */
#define INPUT_METHOD_DISC 0x20 /* stream is read directly from disc */
#define INPUT_METHOD_DVD 0x21 /* stream is read from DVD */
#define INPUT_METHOD_VCD 0x22 /* stream is read from VCD */
+#define INPUT_METHOD_CDDA 0x23 /* stream is read from CDDA */
#define INPUT_METHOD_NETWORK 0x30 /* stream is read from network */
#define INPUT_METHOD_UCAST 0x31 /* UDP unicast */
#define INPUT_METHOD_MCAST 0x32 /* UDP multicast */
#define input_SetStatus(a,b) __input_SetStatus(VLC_OBJECT(a),b)
VLC_EXPORT( void, __input_SetStatus, ( vlc_object_t *, int ) );
+#define input_SetRate(a,b) __input_SetRate(VLC_OBJECT(a),b)
+VLC_EXPORT( void, __input_SetRate, ( vlc_object_t *, int ) );
+
#define input_Seek(a,b,c) __input_Seek(VLC_OBJECT(a),b,c)
VLC_EXPORT( void, __input_Seek, ( vlc_object_t *, off_t, int ) );