* this audio format. A negative return value indicates that this audio format
* handler did not recognize the given file. On success, the function is
* expected to return a positive value and to fill in \arg info_str, \arg
- * chunks and \arg seconds appropriately.
+ * chunks and \arg seconds appropriately and to return the chunk table
+ * via \a vss_chunk_table.
*/
int (*get_file_info)(FILE *audio_file, char *info_str,
- long unsigned *chunks, int *seconds);
+ long unsigned *chunks, int *seconds, size_t **vss_chunk_table);
/**
* cleanup function of this audio format handler
*
* for closing the file handle. It is assumed to succeed.
*/
void (*close_audio_file)(void);
- /**
- * function responsible for reading one data chunk.
- *
- * \a read_chunk() must return a pointer to the next chunk of data that should
- * be sent out, or \p NULL on errors or if the end of the file was encountered.
- *
- * If it returns non-NULL, \a len must contain the length of the returned
- * buffer (which may be zero if nothing has to be sent for some reason).
- * Otherwise, \a len is used to distinguish between the eof and the error case:
- * It must be zero in the eof case, or negative if an error occcured.
- */
- char * (*read_chunk)(long unsigned chunk_num, ssize_t *len);
};