/[gentoo-x86]/media-sound/sox/files/sox-14.4.0-avcodec54.patch
Gentoo

Contents of /media-sound/sox/files/sox-14.4.0-avcodec54.patch

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.1 - (hide annotations) (download)
Fri Jul 13 10:58:10 2012 UTC (2 years ago) by aballier
Branch: MAIN
CVS Tags: HEAD
Fix build with ffmpeg-0.11 / git master, bug #407621

(Portage version: 2.2.0_alpha117/cvs/Linux x86_64)

1 aballier 1.1 Fix build with ffmpeg 0.11.
2     https://bugs.gentoo.org/show_bug.cgi?id=407621
3    
4     Index: sox-14.4.0/m4/ffmpeg.m4
5     ===================================================================
6     --- sox-14.4.0.orig/m4/ffmpeg.m4
7     +++ sox-14.4.0/m4/ffmpeg.m4
8     @@ -49,7 +49,7 @@ then
9     LIBS="$LIBS $FFMPEG_LIBS"
10     have_ffmpeg="no"
11     AC_CHECK_HEADERS([libavformat/avformat.h ffmpeg/avformat.h],
12     - [AC_CHECK_LIB(avformat, av_open_input_file,
13     + [AC_CHECK_LIB(avformat, avformat_open_input,
14     [AC_CHECK_HEADERS([libavcodec/avcodec.h ffmpeg/avcodec.h],
15     [AC_CHECK_LIB(avcodec, avcodec_decode_audio3, have_ffmpeg=yes)])])
16     break])
17     Index: sox-14.4.0/src/ffmpeg.c
18     ===================================================================
19     --- sox-14.4.0.orig/src/ffmpeg.c
20     +++ sox-14.4.0/src/ffmpeg.c
21     @@ -92,8 +92,10 @@ static int stream_component_open(priv_t
22     enc->workaround_bugs = 1;
23     #if LIBAVCODEC_VERSION_INT < ((52<<16)+(0<<8)+0)
24     enc->error_resilience = 1;
25     -#else
26     +#elif LIBAVCODEC_VERSION_INT < ((54<<16)+(0<<8)+0)
27     enc->error_recognition = 1;
28     +#else
29     + ic->error_recognition = 1;
30     #endif
31    
32     if (!codec || avcodec_open(enc, codec) < 0)
33     @@ -157,7 +159,7 @@ static int audio_decode_frame(priv_t * f
34     static int startread(sox_format_t * ft)
35     {
36     priv_t * ffmpeg = (priv_t *)ft->priv;
37     - AVFormatParameters params;
38     + AVDictionary *params;
39     int ret;
40     int i;
41    
42     @@ -172,7 +174,7 @@ static int startread(sox_format_t * ft)
43    
44     /* Open file and get format */
45     memset(&params, 0, sizeof(params));
46     - if ((ret = av_open_input_file(&ffmpeg->ctxt, ft->filename, NULL, 0, &params)) < 0) {
47     + if ((ret = avformat_open_input(&ffmpeg->ctxt, ft->filename, NULL, &params)) < 0) {
48     lsx_fail("ffmpeg cannot open file for reading: %s (code %d)", ft->filename, ret);
49     return SOX_EOF;
50     }
51     @@ -231,7 +233,7 @@ static size_t read_samples(sox_format_t
52     /* If input buffer empty, read more data */
53     if (ffmpeg->audio_buf_index * 2 >= ffmpeg->audio_buf_size) {
54     if ((ret = av_read_frame(ffmpeg->ctxt, pkt)) < 0 &&
55     - (ret == AVERROR_EOF || url_ferror(ffmpeg->ctxt->pb)))
56     + (ret == AVERROR_EOF || ( ffmpeg->ctxt->pb && ffmpeg->ctxt->pb->error)))
57     break;
58     ffmpeg->audio_buf_size = audio_decode_frame(ffmpeg, ffmpeg->audio_buf_aligned, AVCODEC_MAX_AUDIO_FRAME_SIZE);
59     ffmpeg->audio_buf_index = 0;
60     @@ -373,13 +375,6 @@ static int startwrite(sox_format_t * ft)
61     return SOX_EOF;
62     }
63    
64     - /* set the output parameters (must be done even if no
65     - parameters). */
66     - if (av_set_parameters(ffmpeg->ctxt, NULL) < 0) {
67     - lsx_fail("ffmpeg invalid output format parameters");
68     - return SOX_EOF;
69     - }
70     -
71     /* Next line for debugging */
72     /* dump_format(ffmpeg->ctxt, 0, ft->filename, 1); */
73    
74     @@ -391,14 +386,14 @@ static int startwrite(sox_format_t * ft)
75    
76     /* open the output file, if needed */
77     if (!(ffmpeg->fmt->flags & AVFMT_NOFILE)) {
78     - if (url_fopen(&ffmpeg->ctxt->pb, ft->filename, URL_WRONLY) < 0) {
79     + if (avio_open(&ffmpeg->ctxt->pb, ft->filename, AVIO_FLAG_WRITE) < 0) {
80     lsx_fail("ffmpeg could not open `%s'", ft->filename);
81     return SOX_EOF;
82     }
83     }
84    
85     /* write the stream header, if any */
86     - av_write_header(ffmpeg->ctxt);
87     + avformat_write_header(ffmpeg->ctxt, NULL);
88    
89     return SOX_SUCCESS;
90     }
91     @@ -475,11 +470,7 @@ static int stopwrite(sox_format_t * ft)
92    
93     if (!(ffmpeg->fmt->flags & AVFMT_NOFILE)) {
94     /* close the output file */
95     -#if (LIBAVFORMAT_VERSION_INT < 0x340000)
96     - url_fclose(&ffmpeg->ctxt->pb);
97     -#else
98     - url_fclose(ffmpeg->ctxt->pb);
99     -#endif
100     + avio_close(ffmpeg->ctxt->pb);
101     }
102    
103     /* Free the output context */

  ViewVC Help
Powered by ViewVC 1.1.20