summaryrefslogtreecommitdiff
path: root/multimedia
diff options
context:
space:
mode:
authorwiz <wiz>2007-01-13 07:31:07 +0000
committerwiz <wiz>2007-01-13 07:31:07 +0000
commit38965e6cf2104f6d11a56b9fa5953ad38dec7bae (patch)
tree3642685a0e5f63f9b269da1768b2c41fd933e9af /multimedia
parentf6f4786d3c37d3903bbe894e6a7cdef81987a650 (diff)
downloadpkgsrc-38965e6cf2104f6d11a56b9fa5953ad38dec7bae.tar.gz
Fix build with flac-1.1.3 using patch from
ftp.altlinux.org /pub/people/thresh Tested by joerg@
Diffstat (limited to 'multimedia')
-rw-r--r--multimedia/vlc07/distinfo3
-rw-r--r--multimedia/vlc07/patches/patch-af149
2 files changed, 151 insertions, 1 deletions
diff --git a/multimedia/vlc07/distinfo b/multimedia/vlc07/distinfo
index 9dcd1cc8b04..1c831cedfba 100644
--- a/multimedia/vlc07/distinfo
+++ b/multimedia/vlc07/distinfo
@@ -1,4 +1,4 @@
-$NetBSD: distinfo,v 1.1.1.1 2006/09/26 07:19:41 martti Exp $
+$NetBSD: distinfo,v 1.2 2007/01/13 07:31:07 wiz Exp $
SHA1 (vlc-0.7.2.tar.bz2) = 938eaea128af02451fcbf0305c84ce290c9d8c21
RMD160 (vlc-0.7.2.tar.bz2) = 05e35e0b9080581cfbc730212fc756cb46bd3257
@@ -8,3 +8,4 @@ SHA1 (patch-ab) = 5f1cb287981d79533aedeb176c0219a815b8bf52
SHA1 (patch-ac) = aec258582e1d18ccb1efc3ce74e9f949046d61b1
SHA1 (patch-ad) = e12945776db476e48ce005b6d68f9931ddcbe020
SHA1 (patch-ae) = 1dcc0466a362fcdf51fbce8869cd1a48d35d3909
+SHA1 (patch-af) = ad79f35070495bbbe555bcc85bfa24b4bcbcb322
diff --git a/multimedia/vlc07/patches/patch-af b/multimedia/vlc07/patches/patch-af
new file mode 100644
index 00000000000..b242bbe2359
--- /dev/null
+++ b/multimedia/vlc07/patches/patch-af
@@ -0,0 +1,149 @@
+$NetBSD: patch-af,v 1.1 2007/01/13 07:31:07 wiz Exp $
+
+--- modules/codec/flac.c.orig 2004-04-25 18:08:39.000000000 +0000
++++ modules/codec/flac.c
+@@ -31,6 +31,12 @@
+
+ #include <FLAC/stream_decoder.h>
+ #include <FLAC/stream_encoder.h>
++/* by LEGACY_FLAC we mean before FLAC 1.1.3 when the decoder/encoder APIs were simplified */
++# if !defined(FLAC_API_VERSION_CURRENT) || FLAC_API_VERSION_CURRENT < 8
++# define LEGACY_FLAC
++# else
++# undef LEGACY_FLAC
++#endif
+
+ #include "vlc_block_helper.h"
+
+@@ -112,7 +118,12 @@ static int SyncInfo( decoder_t *, uint8_
+
+ static FLAC__StreamDecoderReadStatus
+ DecoderReadCallback( const FLAC__StreamDecoder *decoder,
+- FLAC__byte buffer[], unsigned *bytes, void *client_data );
++#ifdef LEGACY_FLAC
++ FLAC__byte buffer[], unsigned *bytes,
++#else
++ FLAC__byte buffer[], size_t *bytes,
++#endif
++ void *client_data );
+
+ static FLAC__StreamDecoderWriteStatus
+ DecoderWriteCallback( const FLAC__StreamDecoder *decoder,
+@@ -195,6 +206,7 @@ static int OpenDecoder( vlc_object_t *p_
+ return VLC_EGENERIC;
+ }
+
++#ifdef LEGACY_FLAC
+ FLAC__stream_decoder_set_read_callback( p_sys->p_flac,
+ DecoderReadCallback );
+ FLAC__stream_decoder_set_write_callback( p_sys->p_flac,
+@@ -205,7 +217,12 @@ static int OpenDecoder( vlc_object_t *p_
+ DecoderErrorCallback );
+ FLAC__stream_decoder_set_client_data( p_sys->p_flac, p_dec );
+
++ /* really should check the return value here */
+ FLAC__stream_decoder_init( p_sys->p_flac );
++#else
++ /* really should check the return value here */
++ FLAC__stream_decoder_init_stream( p_sys->p_flac, DecoderReadCallback, NULL, NULL, NULL, NULL, DecoderWriteCallback, DecoderMetadataCallback, DecoderErrorCallback, p_dec );
++#endif
+
+ /* Set output properties */
+ p_dec->fmt_out.i_cat = AUDIO_ES;
+@@ -450,7 +467,12 @@ static void CloseDecoder( vlc_object_t *
+ *****************************************************************************/
+ static FLAC__StreamDecoderReadStatus
+ DecoderReadCallback( const FLAC__StreamDecoder *decoder, FLAC__byte buffer[],
+- unsigned *bytes, void *client_data )
++#ifdef LEGACY_FLAC
++ unsigned *bytes,
++#else
++ size_t *bytes,
++#endif
++ void *client_data )
+ {
+ decoder_t *p_dec = (decoder_t *)client_data;
+ decoder_sys_t *p_sys = p_dec->p_sys;
+@@ -575,6 +597,11 @@ static void DecoderErrorCallback( const
+ msg_Err( p_dec, "frame's data did not match the CRC in the "
+ "footer." );
+ break;
++#ifndef LEGACY_FLAC
++ case FLAC__STREAM_DECODER_ERROR_STATUS_UNPARSEABLE_STREAM:
++ msg_Err( p_dec, "the decoder encountered reserved fields in use in the stream." );
++ break;
++#endif
+ default:
+ msg_Err( p_dec, "got decoder error: %d", status );
+ }
+@@ -640,6 +667,7 @@ static void decoder_state_error( decoder
+ case FLAC__STREAM_DECODER_ABORTED:
+ msg_Err( p_dec, "the decoder was aborted by the read callback." );
+ break;
++#ifdef LEGACY_FLAC
+ case FLAC__STREAM_DECODER_UNPARSEABLE_STREAM:
+ msg_Err( p_dec, "the decoder encountered reserved fields in use "
+ "in the stream." );
+@@ -656,6 +684,14 @@ static void decoder_state_error( decoder
+ msg_Err( p_dec, "FLAC__stream_decoder_init() was called without "
+ "all callbacks being set." );
+ break;
++#else
++ case FLAC__STREAM_DECODER_OGG_ERROR:
++ msg_Warn( p_dec, "an error occurred in the underlying Ogg layer." );
++ break;
++ case FLAC__STREAM_DECODER_SEEK_ERROR:
++ msg_Warn( p_dec, "an error occurred while seeking." );
++ break;
++#endif
+ case FLAC__STREAM_DECODER_UNINITIALIZED:
+ msg_Err( p_dec, "decoder in uninitialized state." );
+ break;
+@@ -1046,7 +1082,11 @@ static block_t *Encode( encoder_t *, aou
+ static FLAC__StreamEncoderWriteStatus
+ EncoderWriteCallback( const FLAC__StreamEncoder *encoder,
+ const FLAC__byte buffer[],
++#ifdef LEGACY_FLAC
+ unsigned bytes, unsigned samples,
++#else
++ size_t bytes, unsigned samples,
++#endif
+ unsigned current_frame, void *client_data );
+
+ static void EncoderMetadataCallback( const FLAC__StreamEncoder *encoder,
+@@ -1093,15 +1133,23 @@ static int OpenEncoder( vlc_object_t *p_
+ FLAC__stream_encoder_set_bits_per_sample( p_sys->p_flac, 16 );
+ p_enc->fmt_in.i_codec = AOUT_FMT_S16_NE;
+
++#ifdef LEGACY_FLAC
+ FLAC__stream_encoder_set_write_callback( p_sys->p_flac,
+ EncoderWriteCallback );
+ FLAC__stream_encoder_set_metadata_callback( p_sys->p_flac,
+ EncoderMetadataCallback );
+ FLAC__stream_encoder_set_client_data( p_sys->p_flac, p_enc );
++#endif
+
+ /* Get and store the STREAMINFO metadata block as a p_extra */
+ p_sys->p_chain = 0;
++#ifdef LEGACY_FLAC
++ /* really should check the return value here */
+ FLAC__stream_encoder_init( p_sys->p_flac );
++#else
++ /* really should check the return value here */
++ FLAC__stream_encoder_init_stream( p_sys->p_flac, EncoderWriteCallback, NULL, NULL, EncoderMetadataCallback, p_enc );
++#endif
+
+ return VLC_SUCCESS;
+ }
+@@ -1178,7 +1226,11 @@ static void EncoderMetadataCallback( con
+ static FLAC__StreamEncoderWriteStatus
+ EncoderWriteCallback( const FLAC__StreamEncoder *encoder,
+ const FLAC__byte buffer[],
++#ifdef LEGACY_FLAC
+ unsigned bytes, unsigned samples,
++#else
++ size_t bytes, unsigned samples,
++#endif
+ unsigned current_frame, void *client_data )
+ {
+ encoder_t *p_enc = (encoder_t *)client_data;