diff options
author | Tim-Philipp Müller <tim@centricular.net> | 2007-05-25 16:02:51 +0000 |
---|---|---|
committer | Tim-Philipp Müller <tim@centricular.net> | 2007-05-25 16:02:51 +0000 |
commit | adc1e646645ef6c6b726c600c57fefda66f4934c (patch) | |
tree | 11b75ffe292ccc211e1b866fda3fba2fd0e62094 /ext/flac/gstflacenc.h | |
parent | 4a7ecfb81482c873dc7b97c65dc601abdfbdc9fa (diff) |
ext/flac/gstflacenc.*: Collect headers, add "streamheader" field to output caps and set
Original commit message from CVS:
* ext/flac/gstflacenc.c: (gst_flac_enc_init),
(notgst_value_array_append_buffer),
(gst_flac_enc_process_stream_headers),
(gst_flac_enc_write_callback), (gst_flac_enc_chain),
(gst_flac_enc_change_state):
* ext/flac/gstflacenc.h:
Collect headers, add "streamheader" field to output caps and set
BUFFER_IN_CAPS flag on pushed header buffers. That way oggmux
produces output according to the official FLAC-to-Ogg mapping
instead of completely broken files. Fixes #426044.
Diffstat (limited to 'ext/flac/gstflacenc.h')
-rw-r--r-- | ext/flac/gstflacenc.h | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/ext/flac/gstflacenc.h b/ext/flac/gstflacenc.h index 8629b20a..500e26a0 100644 --- a/ext/flac/gstflacenc.h +++ b/ext/flac/gstflacenc.h @@ -39,7 +39,8 @@ typedef struct _GstFlacEncClass GstFlacEncClass; struct _GstFlacEnc { GstElement element; - GstPad *sinkpad,*srcpad; + GstPad *sinkpad; + GstPad *srcpad; gboolean first; GstBuffer *first_buf; @@ -58,6 +59,10 @@ struct _GstFlacEnc { FLAC__StreamMetadata **meta; GstTagList * tags; + + /* queue headers until we have them all so we can add streamheaders to caps */ + gboolean got_headers; + GList *headers; }; struct _GstFlacEncClass { |