X-Git-Url: http://git.tuebingen.mpg.de/?p=paraslash.git;a=blobdiff_plain;f=afh.h;h=4204108a33131e3b4bda8a007bd429665246860c;hp=2264cc6139501e26d1f46ba89960cf5e630308c2;hb=8b71176b792089c47acc788e1c1e068e9375fd18;hpb=bfdd36f2879b8dee1f6d3330bc49fbb5644d3caf diff --git a/afh.h b/afh.h index 2264cc61..4204108a 100644 --- a/afh.h +++ b/afh.h @@ -1,5 +1,5 @@ /* - * Copyright (C) 2005-2014 Andre Noll + * Copyright (C) 2005-2014 Andre Noll * * Licensed under the GPL v2. For licencing details see COPYING. */ @@ -58,6 +58,18 @@ struct afh_info { uint16_t bitrate; }; +/** Data about the current audio file, passed from afs to server. */ +struct audio_file_data { + /** The open file descriptor to the current audio file. */ + int fd; + /** Vss needs this for streaming. */ + struct afh_info afhi; + /** Size of the largest chunk. */ + uint32_t max_chunk_size; + /** Needed to get the audio file header. */ + uint8_t audio_format_id; +}; + /** * Structure for audio format handling. * @@ -101,6 +113,8 @@ int compute_afhi(const char *path, char *data, size_t size, const char *audio_format_name(int); void afh_get_chunk(long unsigned chunk_num, struct afh_info *afhi, void *map, const char **buf, size_t *len); +int32_t afh_get_start_chunk(int32_t approx_chunk_num, + const struct afh_info *afhi); void afh_get_header(struct afh_info *afhi, uint8_t audio_format_id, void *map, size_t mapsize, char **buf, size_t *len); void afh_free_header(char *header_buf, uint8_t audio_format_id);