Group :: Sound
RPM: muine
Main Changelog Spec Patches Sources Download Gear Bugs and FR Repocop
Patch: muine-0.8.6+flac-1.1.3.patch
Download
Download
diff -urN muine-0.8.6.orig/libmuine/metadata.c muine-0.8.6/libmuine/metadata.c
--- muine-0.8.6.orig/libmuine/metadata.c 2006-10-13 01:13:39 +0300
+++ muine-0.8.6/libmuine/metadata.c 2007-02-19 19:16:26 +0200
@@ -41,6 +41,13 @@
#include "metadata.h"
#include "macros.h"
+/* FLAC 1.1.3 has FLAC_API_VERSION_CURRENT == 8 */
+#if !defined(FLAC_API_VERSION_CURRENT) || FLAC_API_VERSION_CURRENT < 8
+#define LEGACY_FLAC
+#else
+#undef LEGACY_FLAC
+#endif
+
struct _Metadata {
char *title;
@@ -829,22 +836,30 @@
flac_decoder = FLAC__stream_decoder_new ();
+#ifdef LEGACY_FLAC
FLAC__stream_decoder_set_read_callback (flac_decoder, FLAC_read_callback);
FLAC__stream_decoder_set_write_callback (flac_decoder, FLAC_write_callback);
FLAC__stream_decoder_set_metadata_callback (flac_decoder, FLAC_metadata_callback);
FLAC__stream_decoder_set_error_callback (flac_decoder, FLAC_error_callback);
+#endif
callback_data = g_new0 (CallbackData, 1);
callback_data->handle = handle;
callback_data->comment = comment;
+#ifdef LEGACY_FLAC
FLAC__stream_decoder_set_client_data (flac_decoder, callback_data);
+#endif
/* by default, only the STREAMINFO block is parsed and passed to
* the metadata callback. Here we instruct the decoder to also
* pass us the VORBISCOMMENT block if there is one. */
FLAC__stream_decoder_set_metadata_respond (flac_decoder, FLAC__METADATA_TYPE_VORBIS_COMMENT);
+#ifdef LEGACY_FLAC
FLAC__stream_decoder_init (flac_decoder);
+#else
+ FLAC__stream_decoder_init_stream (flac_decoder, FLAC_read_callback, NULL, NULL, NULL, NULL, FLAC_write_callback, FLAC_metadata_callback, FLAC_error_callback, callback_data);
+#endif
/* this runs the decoding process, calling the callbacks as appropriate */
if (FLAC__stream_decoder_process_until_end_of_metadata (flac_decoder) == 0) {