/[packages]/cauldron/xbmc/current/SOURCES/0003-DllAvCodec-map-avcodec_free_frame.patch
ViewVC logotype

Annotation of /cauldron/xbmc/current/SOURCES/0003-DllAvCodec-map-avcodec_free_frame.patch

Parent Directory Parent Directory | Revision Log Revision Log


Revision 583415 - (hide annotations) (download)
Wed Feb 5 15:51:01 2014 UTC (10 years, 2 months ago) by anssi
File size: 2305 byte(s)
- fix AC-3 encoding for S/PDIF with recent FFmpeg (patches from upstream)

1 anssi 583415 From c20e395e573eb614e91913cbcac648c50eb43d43 Mon Sep 17 00:00:00 2001
2     From: Alexis Ballier <aballier@gentoo.org>
3     Date: Thu, 25 Apr 2013 11:11:02 +0200
4     Subject: [PATCH 3/4] DllAvCodec: map avcodec_free_frame.
5    
6     This makes xbmc require FFmpeg 1.0
7     ---
8     lib/DllAvCodec.h | 4 ++++
9     1 file changed, 4 insertions(+)
10    
11     diff --git a/lib/DllAvCodec.h b/lib/DllAvCodec.h
12     index 6b2b806..96bd68d 100644
13     --- a/lib/DllAvCodec.h
14     +++ b/lib/DllAvCodec.h
15     @@ -113,6 +113,7 @@ public:
16     virtual int av_dup_packet(AVPacket *pkt)=0;
17     virtual void av_init_packet(AVPacket *pkt)=0;
18     virtual int avcodec_fill_audio_frame(AVFrame *frame, int nb_channels, enum AVSampleFormat sample_fmt, const uint8_t *buf, int buf_size, int align) = 0;
19     + virtual void avcodec_free_frame(AVFrame **frame)=0;
20     };
21    
22     #if (defined USE_EXTERNAL_FFMPEG) || (defined TARGET_DARWIN)
23     @@ -183,6 +184,7 @@ public:
24     virtual int av_dup_packet(AVPacket *pkt) { return ::av_dup_packet(pkt); }
25     virtual void av_init_packet(AVPacket *pkt) { return ::av_init_packet(pkt); }
26     virtual int avcodec_fill_audio_frame(AVFrame *frame, int nb_channels, enum AVSampleFormat sample_fmt, const uint8_t *buf, int buf_size, int align) { return ::avcodec_fill_audio_frame(frame, nb_channels, sample_fmt, buf, buf_size, align); }
27     + virtual void avcodec_free_frame(AVFrame **frame) { return ::avcodec_free_frame(frame); };
28    
29     // DLL faking.
30     virtual bool ResolveExports() { return true; }
31     @@ -233,6 +235,7 @@ class DllAvCodec : public DllDynamic, DllAvCodecInterface
32     DEFINE_METHOD2(void, avcodec_default_release_buffer, (AVCodecContext *p1, AVFrame *p2))
33     DEFINE_METHOD2(enum PixelFormat, avcodec_default_get_format, (struct AVCodecContext *p1, const enum PixelFormat *p2))
34     DEFINE_METHOD6(int, avcodec_fill_audio_frame, (AVFrame* p1, int p2, enum AVSampleFormat p3, const uint8_t* p4, int p5, int p6))
35     + DEFINE_METHOD1(void, avcodec_free_frame, (AVFrame **p1))
36    
37     DEFINE_METHOD1(AVCodec*, av_codec_next, (AVCodec *p1))
38     BEGIN_METHOD_RESOLVE()
39     @@ -269,6 +272,7 @@ class DllAvCodec : public DllDynamic, DllAvCodecInterface
40     RESOLVE_METHOD(av_dup_packet)
41     RESOLVE_METHOD(av_init_packet)
42     RESOLVE_METHOD(avcodec_fill_audio_frame)
43     + RESOLVE_METHOD(avcodec_free_frame)
44     END_METHOD_RESOLVE()
45    
46     /* dependencies of libavcodec */
47     --
48     1.8.1.5
49    

  ViewVC Help
Powered by ViewVC 1.1.30