+
+/* how many blocks VCDRead will read in each loop */
+#define CDDA_BLOCKS_ONCE 20
+#define CDDA_DATA_ONCE (CDDA_BLOCKS_ONCE * CDDA_DATA_SIZE)
+
+/*****************************************************************************
+ * Access: local prototypes
+ *****************************************************************************/
+struct access_sys_t
+{
+ vcddev_t *vcddev; /* vcd device descriptor */
+ int i_nb_tracks; /* Nb of tracks (titles) */
+ int i_track; /* Current track */
+ int i_sector; /* Current Sector */
+ int * p_sectors; /* Track sectors */
+ vlc_bool_t b_end_of_track; /* If the end of track was reached */
+
+};
+
+static int Read ( input_thread_t *, byte_t *, size_t );
+static void Seek ( input_thread_t *, off_t );
+static int SetArea ( input_thread_t *, input_area_t * );
+static int SetProgram( input_thread_t *, pgrm_descriptor_t * );
+