diff options
author | Warren Dukes <warren.dukes@gmail.com> | 2004-06-06 19:41:03 +0000 |
---|---|---|
committer | Warren Dukes <warren.dukes@gmail.com> | 2004-06-06 19:41:03 +0000 |
commit | b29f73c819ff8445b71963d883364e315b7a12d8 (patch) | |
tree | 772690e7472972ea3e78bb7b354ff4b903a8e4f3 /src/outputBuffer.h | |
parent | 4e53282469de4fea4b8daaec67298bd3394f34bd (diff) | |
download | mpd-b29f73c819ff8445b71963d883364e315b7a12d8.tar.gz mpd-b29f73c819ff8445b71963d883364e315b7a12d8.tar.xz mpd-b29f73c819ff8445b71963d883364e315b7a12d8.zip |
mechanism for updating metadata while decoding
vorbis comments are updated on the fly for streams
need to decode icy metadata
buffering of metadata needs to be hardened, to ensure that player has already read a particular metachunk or passed over it
git-svn-id: https://svn.musicpd.org/mpd/trunk@1358 09075e82-0dd4-0310-85a5-a0d7c8717e4f
Diffstat (limited to 'src/outputBuffer.h')
-rw-r--r-- | src/outputBuffer.h | 12 |
1 files changed, 5 insertions, 7 deletions
diff --git a/src/outputBuffer.h b/src/outputBuffer.h index 71136b363..a7e5bb171 100644 --- a/src/outputBuffer.h +++ b/src/outputBuffer.h @@ -23,10 +23,13 @@ #include "decode.h" #include "audio.h" #include "inputStream.h" +#include "metadataChunk.h" #define OUTPUT_BUFFER_DC_STOP -1 #define OUTPUT_BUFFER_DC_SEEK -2 +#define BUFFERED_METACHUNKS 25 + typedef struct _OutputBuffer { char * volatile chunks; mpd_uint16 * volatile chunkSize; @@ -37,13 +40,8 @@ typedef struct _OutputBuffer { mpd_sint16 volatile next; mpd_sint8 volatile wrap; AudioFormat audioFormat; - volatile mpd_sint8 metadataSet; - char metadata[DECODE_METADATA_LENGTH]; - volatile mpd_sint16 title; - volatile mpd_sint16 artist; - volatile mpd_sint16 album; - volatile mpd_sint16 name; - volatile mpd_uint16 metaChunk; + MetadataChunk metadataChunks[BUFFERED_METACHUNKS]; + mpd_sint8 * volatile metaChunk; volatile mpd_sint8 acceptMetadata; } OutputBuffer; |