diff options
Diffstat (limited to 'media-sound/squeezeslave/files/squeezeslave-1.1_p381-ffmpeg2.patch')
-rw-r--r-- | media-sound/squeezeslave/files/squeezeslave-1.1_p381-ffmpeg2.patch | 133 |
1 files changed, 133 insertions, 0 deletions
diff --git a/media-sound/squeezeslave/files/squeezeslave-1.1_p381-ffmpeg2.patch b/media-sound/squeezeslave/files/squeezeslave-1.1_p381-ffmpeg2.patch new file mode 100644 index 000000000000..d72aa04533dd --- /dev/null +++ b/media-sound/squeezeslave/files/squeezeslave-1.1_p381-ffmpeg2.patch @@ -0,0 +1,133 @@ +Index: squeezeslave-1.1_p381/src/slimaudio/slimaudio_decoder.c +=================================================================== +--- squeezeslave-1.1_p381.orig/src/slimaudio/slimaudio_decoder.c ++++ squeezeslave-1.1_p381/src/slimaudio/slimaudio_decoder.c +@@ -69,7 +69,6 @@ void av_lib_setup (void) + av_register_all(); + DEBUGF("decoder_thread: av_register_all\n"); + +- avcodec_init(); + avcodec_register_all(); + DEBUGF("decoder_thread: avcodec_register_all\n"); + +Index: squeezeslave-1.1_p381/src/slimaudio/slimaudio_decoder_aac.c +=================================================================== +--- squeezeslave-1.1_p381.orig/src/slimaudio/slimaudio_decoder_aac.c ++++ squeezeslave-1.1_p381/src/slimaudio/slimaudio_decoder_aac.c +@@ -47,6 +47,11 @@ + + #define AUDIO_INBUF_SIZE (AUDIO_CHUNK_SIZE*2) + ++#ifndef AVCODEC_MAX_AUDIO_FRAME_SIZE ++#define AVCODEC_MAX_AUDIO_FRAME_SIZE 192000 // 1 second of 48khz 32bit audio ++#endif ++ ++ + int slimaudio_decoder_aac_init(slimaudio_t *audio) + { + av_lib_setup(); +@@ -164,7 +169,7 @@ int slimaudio_decoder_aac_process(slimau + } + else + { +- AVIOCtx->is_streamed = 1; ++ AVIOCtx->seekable = 0; + } + + AVInputFormat* pAVInputFormat = av_find_input_format(streamformat); +@@ -199,7 +204,7 @@ int slimaudio_decoder_aac_process(slimau + } + else + { +- iRC = av_find_stream_info(pFormatCtx); ++ iRC = avformat_find_stream_info(pFormatCtx, NULL); + if ( iRC < 0 ) + { + DEBUGF("aac: find stream info failed:%d\n", iRC); +@@ -236,7 +241,7 @@ int slimaudio_decoder_aac_process(slimau + } + + /* Open codec */ +- iRC = avcodec_open(pCodecCtx, pCodec); ++ iRC = avcodec_open2(pCodecCtx, pCodec, NULL); + if ( iRC < 0) + { + DEBUGF("aac: could not open codec:%d\n", iRC); +@@ -274,7 +279,7 @@ int slimaudio_decoder_aac_process(slimau + eos=true; + } + +- if ( url_ferror(pFormatCtx->pb) ) ++ if ( pFormatCtx->pb && pFormatCtx->pb->error ) + { + DEBUGF("aac: url_ferror\n"); + #if 0 +@@ -312,7 +317,7 @@ int slimaudio_decoder_aac_process(slimau + + /* Close the stream */ + DEBUGF ("aac: av_close_input_stream\n"); +- av_close_input_stream(pFormatCtx); ++ avformat_close_input(&pFormatCtx); + + return 0; + } +Index: squeezeslave-1.1_p381/src/slimaudio/slimaudio_decoder_wma.c +=================================================================== +--- squeezeslave-1.1_p381.orig/src/slimaudio/slimaudio_decoder_wma.c ++++ squeezeslave-1.1_p381/src/slimaudio/slimaudio_decoder_wma.c +@@ -47,6 +47,10 @@ + + #define AUDIO_INBUF_SIZE (AUDIO_CHUNK_SIZE*2) + ++#ifndef AVCODEC_MAX_AUDIO_FRAME_SIZE ++#define AVCODEC_MAX_AUDIO_FRAME_SIZE 192000 // 1 second of 48khz 32bit audio ++#endif ++ + int slimaudio_decoder_wma_init(slimaudio_t *audio) + { + av_lib_setup(); +@@ -159,7 +163,7 @@ int slimaudio_decoder_wma_process(slimau + } + else + { +- AVIOCtx->is_streamed = 1; ++ AVIOCtx->seekable = 1; + } + + AVInputFormat* pAVInputFormat = av_find_input_format(streamformat); +@@ -194,7 +198,7 @@ int slimaudio_decoder_wma_process(slimau + } + else + { +- iRC = av_find_stream_info(pFormatCtx); ++ iRC = avformat_find_stream_info(pFormatCtx,NULL); + if ( iRC < 0 ) + { + DEBUGF("wma: find stream info failed:%d\n", iRC); +@@ -231,7 +235,7 @@ int slimaudio_decoder_wma_process(slimau + } + + /* Open codec */ +- iRC = avcodec_open(pCodecCtx, pCodec); ++ iRC = avcodec_open2(pCodecCtx, pCodec, NULL); + if ( iRC < 0) + { + DEBUGF("wma: could not open codec:%d\n", iRC); +@@ -270,7 +274,7 @@ int slimaudio_decoder_wma_process(slimau + eos=true; + } + +- if ( url_ferror(pFormatCtx->pb) ) ++ if ( pFormatCtx->pb && pFormatCtx->pb->error ) + { + DEBUGF("wma: url_ferror\n"); + #if 0 +@@ -308,7 +312,7 @@ int slimaudio_decoder_wma_process(slimau + + /* Close the stream */ + DEBUGF ("wma: av_close_input_stream\n"); +- av_close_input_stream(pFormatCtx); ++ avformat_close_input(&pFormatCtx); + + return 0; + } |