[SCM] FFmpeg packaging branch, master, updated. debian/0.5+svn20090706-6-22-gef11c38

siretart at users.alioth.debian.org siretart at users.alioth.debian.org
Wed Mar 3 21:33:59 UTC 2010


The following commit has been merged in the master branch:
commit d1c4d8bee71333d014292e012251cb0f66357978
Author: Reinhard Tartler <siretart at tauware.de>
Date:   Wed Mar 3 10:52:03 2010 +0100

    remove patches that got merged into 0.5.1

diff --git a/debian/patches/100_kfreebsd b/debian/patches/100_kfreebsd
deleted file mode 100644
index 990d42c..0000000
--- a/debian/patches/100_kfreebsd
+++ /dev/null
@@ -1,17 +0,0 @@
-From: Aurelien Jarno <aurel32 at debian.org>
-Subject: [PATCH] Fix FTBFS for kfreebsd
-X-Upstream-Discussion: http://comments.gmane.org/gmane.comp.video.ffmpeg.devel/90686
-Forwarded: http://permalink.gmane.org/gmane.comp.video.ffmpeg.devel/103713
-
-==========================================================================
---- a/configure
-+++ b/configure
-@@ -1649,6 +1649,8 @@ case $target_os in
-     interix)
-         disable vhook
-         ;;
-+    gnu/kfreebsd)
-+        ;;
- 
-     *)
-         die "Unknown OS '$target_os'."
diff --git a/debian/patches/aac-regression.patch b/debian/patches/aac-regression.patch
deleted file mode 100644
index 53dfde3..0000000
--- a/debian/patches/aac-regression.patch
+++ /dev/null
@@ -1,222 +0,0 @@
-Author: Reinhard Tartler <siretart at tauware.de>
-
-fix aac playback regression
-
-patch taken from upstream svn:
-
-------------------------------------------------------------------------
-r17856 | alexc | 2009-03-06 20:47:01 +0100 (Fr, 06. Mär 2009) | 3 lines
-
-Fix the channel allocation bug/assumption (issue 800).
-Approved by Rob on IRC.
-
-------------------------------------------------------------------------
-r17860 | alexc | 2009-03-06 23:36:24 +0100 (Fr, 06. Mär 2009) | 2 lines
-
-If we get an error from ff_aac_parse_header() we should not trust the
-header info that it provides.
-
-------------------------------------------------------------------------
-r17861 | alexc | 2009-03-06 23:37:21 +0100 (Fr, 06. Mär 2009) | 2 lines
-
-Re-indent after last commit.
-
-------------------------------------------------------------------------
-
-diff --git a/libavcodec/aac.c b/libavcodec/aac.c
-index 80195c0..b6759dd 100644
---- a/libavcodec/aac.c
-+++ b/libavcodec/aac.c
-@@ -97,6 +97,56 @@ static VLC vlc_scalefactors;
- static VLC vlc_spectral[11];
- 
- 
-+static ChannelElement* get_che(AACContext *ac, int type, int elem_id) {
-+    static const int8_t tags_per_config[16] = { 0, 1, 1, 2, 3, 3, 4, 5, 0, 0, 0, 0, 0, 0, 0, 0 };
-+    if (ac->tag_che_map[type][elem_id]) {
-+        return ac->tag_che_map[type][elem_id];
-+    }
-+    if (ac->tags_mapped >= tags_per_config[ac->m4ac.chan_config]) {
-+        return NULL;
-+    }
-+    switch (ac->m4ac.chan_config) {
-+        case 7:
-+            if (ac->tags_mapped == 3 && type == TYPE_CPE) {
-+                ac->tags_mapped++;
-+                return ac->tag_che_map[TYPE_CPE][elem_id] = ac->che[TYPE_CPE][2];
-+            }
-+        case 6:
-+            /* Some streams incorrectly code 5.1 audio as SCE[0] CPE[0] CPE[1] SCE[1]
-+               instead of SCE[0] CPE[0] CPE[0] LFE[0]. If we seem to have
-+               encountered such a stream, transfer the LFE[0] element to SCE[1] */
-+            if (ac->tags_mapped == tags_per_config[ac->m4ac.chan_config] - 1 && (type == TYPE_LFE || type == TYPE_SCE)) {
-+                ac->tags_mapped++;
-+                return ac->tag_che_map[type][elem_id] = ac->che[TYPE_LFE][0];
-+            }
-+        case 5:
-+            if (ac->tags_mapped == 2 && type == TYPE_CPE) {
-+                ac->tags_mapped++;
-+                return ac->tag_che_map[TYPE_CPE][elem_id] = ac->che[TYPE_CPE][1];
-+            }
-+        case 4:
-+            if (ac->tags_mapped == 2 && ac->m4ac.chan_config == 4 && type == TYPE_SCE) {
-+                ac->tags_mapped++;
-+                return ac->tag_che_map[TYPE_SCE][elem_id] = ac->che[TYPE_SCE][1];
-+            }
-+        case 3:
-+        case 2:
-+            if (ac->tags_mapped == (ac->m4ac.chan_config != 2) && type == TYPE_CPE) {
-+                ac->tags_mapped++;
-+                return ac->tag_che_map[TYPE_CPE][elem_id] = ac->che[TYPE_CPE][0];
-+            } else if (ac->m4ac.chan_config == 2) {
-+                return NULL;
-+            }
-+        case 1:
-+            if (!ac->tags_mapped && type == TYPE_SCE) {
-+                ac->tags_mapped++;
-+                return ac->tag_che_map[TYPE_SCE][elem_id] = ac->che[TYPE_SCE][0];
-+            }
-+        default:
-+            return NULL;
-+    }
-+}
-+
- /**
-  * Configure output channel order based on the current program configuration element.
-  *
-@@ -106,7 +156,7 @@ static VLC vlc_spectral[11];
-  * @return  Returns error status. 0 - OK, !0 - error
-  */
- static int output_configure(AACContext *ac, enum ChannelPosition che_pos[4][MAX_ELEM_ID],
--        enum ChannelPosition new_che_pos[4][MAX_ELEM_ID]) {
-+        enum ChannelPosition new_che_pos[4][MAX_ELEM_ID], int channel_config) {
-     AVCodecContext *avctx = ac->avccontext;
-     int i, type, channels = 0;
- 
-@@ -140,7 +190,16 @@ static int output_configure(AACContext *ac, enum ChannelPosition che_pos[4][MAX_
-         }
-     }
- 
-+    if (channel_config) {
-+        memset(ac->tag_che_map, 0,       4 * MAX_ELEM_ID * sizeof(ac->che[0][0]));
-+        ac->tags_mapped = 0;
-+    } else {
-+        memcpy(ac->tag_che_map, ac->che, 4 * MAX_ELEM_ID * sizeof(ac->che[0][0]));
-+        ac->tags_mapped = 4*MAX_ELEM_ID;
-+    }
-+
-     avctx->channels = channels;
-+
-     return 0;
- }
- 
-@@ -286,7 +345,7 @@ static int decode_ga_specific_config(AACContext * ac, GetBitContext * gb, int ch
-         if((ret = set_default_channel_config(ac, new_che_pos, channel_config)))
-             return ret;
-     }
--    if((ret = output_configure(ac, ac->che_pos, new_che_pos)))
-+    if((ret = output_configure(ac, ac->che_pos, new_che_pos, channel_config)))
-         return ret;
- 
-     if (extension_flag) {
-@@ -394,7 +453,7 @@ static av_cold int aac_decode_init(AVCodecContext * avccontext) {
-         memset(new_che_pos, 0, 4 * MAX_ELEM_ID * sizeof(new_che_pos[0][0]));
-         if(set_default_channel_config(ac, new_che_pos, avccontext->channels - (avccontext->channels == 8)))
-             return -1;
--        if(output_configure(ac, ac->che_pos, new_che_pos))
-+        if(output_configure(ac, ac->che_pos, new_che_pos, 1))
-             return -1;
-         ac->m4ac.sample_rate = avccontext->sample_rate;
-     } else {
-@@ -1538,19 +1597,20 @@ static int parse_adts_frame_header(AACContext * ac, GetBitContext * gb) {
-         ac->m4ac.sample_rate     = hdr_info.sample_rate;
-         ac->m4ac.sampling_index  = hdr_info.sampling_index;
-         ac->m4ac.object_type     = hdr_info.object_type;
--    }
--    if (hdr_info.num_aac_frames == 1) {
--        if (!hdr_info.crc_absent)
--            skip_bits(gb, 16);
--    } else {
--        ff_log_missing_feature(ac->avccontext, "More than one AAC RDB per ADTS frame is", 0);
--        return -1;
-+        if (hdr_info.num_aac_frames == 1) {
-+            if (!hdr_info.crc_absent)
-+                skip_bits(gb, 16);
-+        } else {
-+            ff_log_missing_feature(ac->avccontext, "More than one AAC RDB per ADTS frame is", 0);
-+            return -1;
-+        }
-     }
-     return size;
- }
- 
- static int aac_decode_frame(AVCodecContext * avccontext, void * data, int * data_size, const uint8_t * buf, int buf_size) {
-     AACContext * ac = avccontext->priv_data;
-+    ChannelElement * che = NULL;
-     GetBitContext gb;
-     enum RawDataBlockType elem_type;
-     int err, elem_id, data_size_tmp;
-@@ -1573,15 +1633,7 @@ static int aac_decode_frame(AVCodecContext * avccontext, void * data, int * data
-         elem_id = get_bits(&gb, 4);
-         err = -1;
- 
--        if(elem_type == TYPE_SCE && elem_id == 1 &&
--                !ac->che[TYPE_SCE][elem_id] && ac->che[TYPE_LFE][0]) {
--            /* Some streams incorrectly code 5.1 audio as SCE[0] CPE[0] CPE[1] SCE[1]
--               instead of SCE[0] CPE[0] CPE[0] LFE[0]. If we seem to have
--               encountered such a stream, transfer the LFE[0] element to SCE[1] */
--            ac->che[TYPE_SCE][elem_id] = ac->che[TYPE_LFE][0];
--            ac->che[TYPE_LFE][0] = NULL;
--        }
--        if(elem_type < TYPE_DSE && !ac->che[elem_type][elem_id]) {
-+        if(elem_type < TYPE_DSE && !(che=get_che(ac, elem_type, elem_id))) {
-             av_log(ac->avccontext, AV_LOG_ERROR, "channel element %d.%d is not allocated\n", elem_type, elem_id);
-             return -1;
-         }
-@@ -1589,19 +1641,19 @@ static int aac_decode_frame(AVCodecContext * avccontext, void * data, int * data
-         switch (elem_type) {
- 
-         case TYPE_SCE:
--            err = decode_ics(ac, &ac->che[TYPE_SCE][elem_id]->ch[0], &gb, 0, 0);
-+            err = decode_ics(ac, &che->ch[0], &gb, 0, 0);
-             break;
- 
-         case TYPE_CPE:
--            err = decode_cpe(ac, &gb, ac->che[TYPE_CPE][elem_id]);
-+            err = decode_cpe(ac, &gb, che);
-             break;
- 
-         case TYPE_CCE:
--            err = decode_cce(ac, &gb, ac->che[TYPE_CCE][elem_id]);
-+            err = decode_cce(ac, &gb, che);
-             break;
- 
-         case TYPE_LFE:
--            err = decode_ics(ac, &ac->che[TYPE_LFE][elem_id]->ch[0], &gb, 0, 0);
-+            err = decode_ics(ac, &che->ch[0], &gb, 0, 0);
-             break;
- 
-         case TYPE_DSE:
-@@ -1615,7 +1667,7 @@ static int aac_decode_frame(AVCodecContext * avccontext, void * data, int * data
-             memset(new_che_pos, 0, 4 * MAX_ELEM_ID * sizeof(new_che_pos[0][0]));
-             if((err = decode_pce(ac, new_che_pos, &gb)))
-                 break;
--            err = output_configure(ac, ac->che_pos, new_che_pos);
-+            err = output_configure(ac, ac->che_pos, new_che_pos, 0);
-             break;
-         }
- 
-	Modified libavcodec/aac.h
-diff --git a/libavcodec/aac.h b/libavcodec/aac.h
-index 66b2e22..32e7224 100644
---- a/libavcodec/aac.h
-+++ b/libavcodec/aac.h
-@@ -260,6 +260,8 @@ typedef struct {
-                                                    *   first index as the first 4 raw data block types
-                                                    */
-     ChannelElement * che[4][MAX_ELEM_ID];
-+    ChannelElement * tag_che_map[4][MAX_ELEM_ID];
-+    int tags_mapped;
-     /** @} */
- 
-     /**
diff --git a/debian/patches/build-pic-on-ppc.patch b/debian/patches/build-pic-on-ppc.patch
deleted file mode 100644
index 57335b2..0000000
--- a/debian/patches/build-pic-on-ppc.patch
+++ /dev/null
@@ -1,18 +0,0 @@
-Author: Reinhard Tartler <siretart at tauware.de>
-Bug-Debian: http://bugs.debian.org/561956
-Description: Build with pic on G3 macs
-Forwarded: http://permalink.gmane.org/gmane.comp.video.ffmpeg.devel/103697
-
-diff --git a/configure b/configure
-index fd11501..d0cadb7 100755
---- a/configure
-+++ b/configure
-@@ -2205,7 +2205,7 @@ if enabled shared; then
-     # LIBOBJFLAGS may have already been set in the OS configuration
-     if test -z "$LIBOBJFLAGS" ; then
-         case "${subarch-$arch}" in
--            x86_64|ia64|alpha|sparc*|power*|parisc*|mips*) LIBOBJFLAGS='$(PIC)' ;;
-+            x86_64|ia64|alpha|sparc*|ppc|power*|parisc*|mips*) LIBOBJFLAGS='$(PIC)' ;;
-         esac
-     fi
- fi
diff --git a/debian/patches/cpu-runtime-detect-libswscale.patch b/debian/patches/cpu-runtime-detect-libswscale.patch
deleted file mode 100644
index 2871292..0000000
--- a/debian/patches/cpu-runtime-detect-libswscale.patch
+++ /dev/null
@@ -1,92 +0,0 @@
-From: ramiro <ramiro at b3059339-0415-0410-9bf9-f77b7e298cf2>
-Date: Wed, 8 Apr 2009 20:21:21 +0000 (+0000)
-Subject: Rename RUNTIME_CPUDETECT to CONFIG_RUNTIME_CPUDETECT and always define it.
-X-Git-Url: http://git.ffmpeg.org/?p=libswscale;a=commitdiff_plain;h=ac1d1adfeecb0373e9a03d73b898eb6dcdeba334
-Forwarded: http://permalink.gmane.org/gmane.comp.video.ffmpeg.devel/103682
-
-Rename RUNTIME_CPUDETECT to CONFIG_RUNTIME_CPUDETECT and always define it.
-
-
-git-svn-id: file:///var/local/repositories/mplayer/trunk/libswscale@29154 b3059339-0415-0410-9bf9-f77b7e298cf2
----
-
---- a/libswscale/swscale.c
-+++ b/libswscale/swscale.c
-@@ -955,27 +955,27 @@ static inline void yuv2rgbXinC_full(SwsC
- 
- //Note: we have C, X86, MMX, MMX2, 3DNOW versions, there is no 3DNOW+MMX2 one
- //Plain C versions
--#if ((!HAVE_MMX || !CONFIG_GPL) && !HAVE_ALTIVEC) || defined (RUNTIME_CPUDETECT)
-+#if ((!HAVE_MMX || !CONFIG_GPL) && !HAVE_ALTIVEC) || CONFIG_RUNTIME_CPUDETECT
- #define COMPILE_C
- #endif
- 
- #if ARCH_PPC
--#if HAVE_ALTIVEC || defined (RUNTIME_CPUDETECT)
-+#if HAVE_ALTIVEC || CONFIG_RUNTIME_CPUDETECT
- #define COMPILE_ALTIVEC
- #endif
- #endif //ARCH_PPC
- 
- #if ARCH_X86
- 
--#if ((HAVE_MMX && !HAVE_AMD3DNOW && !HAVE_MMX2) || defined (RUNTIME_CPUDETECT)) && CONFIG_GPL
-+#if ((HAVE_MMX && !HAVE_AMD3DNOW && !HAVE_MMX2) || CONFIG_RUNTIME_CPUDETECT) && CONFIG_GPL
- #define COMPILE_MMX
- #endif
- 
--#if (HAVE_MMX2 || defined (RUNTIME_CPUDETECT)) && CONFIG_GPL
-+#if (HAVE_MMX2 || CONFIG_RUNTIME_CPUDETECT) && CONFIG_GPL
- #define COMPILE_MMX2
- #endif
- 
--#if ((HAVE_AMD3DNOW && !HAVE_MMX2) || defined (RUNTIME_CPUDETECT)) && CONFIG_GPL
-+#if ((HAVE_AMD3DNOW && !HAVE_MMX2) || CONFIG_RUNTIME_CPUDETECT) && CONFIG_GPL
- #define COMPILE_3DNOW
- #endif
- #endif //ARCH_X86
-@@ -1636,7 +1636,7 @@ static void globalInit(void){
- 
- static SwsFunc getSwsFunc(int flags){
- 
--#if defined(RUNTIME_CPUDETECT)
-+#if CONFIG_RUNTIME_CPUDETECT
- #if ARCH_X86 && CONFIG_GPL
-     // ordered per speed fastest first
-     if (flags & SWS_CPU_CAPS_MMX2)
-@@ -1657,7 +1657,7 @@ static SwsFunc getSwsFunc(int flags){
- #endif
-     return swScale_C;
- #endif /* ARCH_X86 && CONFIG_GPL */
--#else //RUNTIME_CPUDETECT
-+#else //CONFIG_RUNTIME_CPUDETECT
- #if   HAVE_MMX2
-     return swScale_MMX2;
- #elif HAVE_AMD3DNOW
-@@ -1669,7 +1669,7 @@ static SwsFunc getSwsFunc(int flags){
- #else
-     return swScale_C;
- #endif
--#endif //!RUNTIME_CPUDETECT
-+#endif //!CONFIG_RUNTIME_CPUDETECT
- }
- 
- static int PlanarToNV12Wrapper(SwsContext *c, uint8_t* src[], int srcStride[], int srcSliceY,
-@@ -2193,7 +2193,7 @@ SwsContext *sws_getContext(int srcW, int
-         __asm__ volatile("emms\n\t"::: "memory");
- #endif
- 
--#if !defined(RUNTIME_CPUDETECT) //ensure that the flags match the compiled variant if cpudetect is off
-+#if !CONFIG_RUNTIME_CPUDETECT //ensure that the flags match the compiled variant if cpudetect is off
-     flags &= ~(SWS_CPU_CAPS_MMX|SWS_CPU_CAPS_MMX2|SWS_CPU_CAPS_3DNOW|SWS_CPU_CAPS_ALTIVEC|SWS_CPU_CAPS_BFIN);
- #if   HAVE_MMX2
-     flags |= SWS_CPU_CAPS_MMX|SWS_CPU_CAPS_MMX2;
-@@ -2206,7 +2206,7 @@ SwsContext *sws_getContext(int srcW, int
- #elif ARCH_BFIN
-     flags |= SWS_CPU_CAPS_BFIN;
- #endif
--#endif /* RUNTIME_CPUDETECT */
-+#endif /* CONFIG_RUNTIME_CPUDETECT */
-     if (clip_table[512] != 255) globalInit();
-     if (!rgb15to16) sws_rgb2rgb_init(flags);
- 
diff --git a/debian/patches/cpu-runtime-detect.patch b/debian/patches/cpu-runtime-detect.patch
deleted file mode 100644
index 0b8a4da..0000000
--- a/debian/patches/cpu-runtime-detect.patch
+++ /dev/null
@@ -1,111 +0,0 @@
-From: ramiro <ramiro at 9553f0bf-9b14-0410-a0b8-cfaf0461ba5b>
-Date: Wed, 8 Apr 2009 20:26:18 +0000 (+0000)
-Subject: configure: Add --enable-runtime-cpudetect
-X-Git-Url: http://git.ffmpeg.org/?p=ffmpeg;a=commitdiff_plain;h=dd47be64953f558826456ee3696220f587ec8a20
-Forwarded: http://permalink.gmane.org/gmane.comp.video.ffmpeg.devel/103682
-
-configure: Add --enable-runtime-cpudetect
-
-git-svn-id: file:///var/local/repositories/ffmpeg/trunk@18380 9553f0bf-9b14-0410-a0b8-cfaf0461ba5b
----
-
-diff --git a/configure b/configure
-index a9cc2fd..eae40c6 100755
---- a/configure
-+++ b/configure
-@@ -100,6 +100,7 @@ show_help(){
-   echo "  --disable-golomb         disable Golomb code"
-   echo "  --disable-mdct           disable MDCT code"
-   echo "  --disable-rdft           disable RDFT code"
-+  echo "  --enable-runtime-cpudetect detect cpu capabilities at runtime (bigger binary)"
-   echo "  --enable-hardcoded-tables use hardcoded tables instead of runtime generation"
-   echo "  --enable-memalign-hack   emulate memalign, interferes with memory debuggers"
-   echo "  --enable-beos-netserver  enable BeOS netserver"
-@@ -806,6 +807,7 @@ CONFIG_LIST="
-     postproc
-     powerpc_perf
-     rdft
-+    runtime_cpudetect
-     shared
-     small
-     static
-@@ -2282,6 +2284,7 @@ if test "$extra_version" != ""; then
-     echo "version string suffix     $extra_version"
- fi
- echo "big-endian                ${bigendian-no}"
-+echo "runtime cpu detection     ${runtime_cpudetect-no}"
- if enabled x86; then
-     echo "yasm                      ${yasm-no}"
-     echo "MMX enabled               ${mmx-no}"
-diff --git a/libavcodec/ppc/check_altivec.c b/libavcodec/ppc/check_altivec.c
-index e034ceb..08cc0f4 100644
---- a/libavcodec/ppc/check_altivec.c
-+++ b/libavcodec/ppc/check_altivec.c
-@@ -63,7 +63,7 @@ int has_altivec(void)
- 
-     if (err == 0) return has_vu != 0;
-     return 0;
--#elif defined(RUNTIME_CPUDETECT)
-+#elif CONFIG_RUNTIME_CPUDETECT
-     int proc_ver;
-     // Support of mfspr PVR emulation added in Linux 2.6.17.
-     __asm__ volatile("mfspr %0, 287" : "=r" (proc_ver));
-diff --git a/libpostproc/postprocess.c b/libpostproc/postprocess.c
-index 4cfbaad..b5b6649 100644
---- a/libpostproc/postprocess.c
-+++ b/libpostproc/postprocess.c
-@@ -554,7 +554,7 @@ static av_always_inline void do_a_deblock_C(uint8_t *src, int step, int stride,
- 
- //Note: we have C, MMX, MMX2, 3DNOW version there is no 3DNOW+MMX2 one
- //Plain C versions
--#if !(HAVE_MMX || HAVE_ALTIVEC) || defined (RUNTIME_CPUDETECT)
-+#if !(HAVE_MMX || HAVE_ALTIVEC) || CONFIG_RUNTIME_CPUDETECT
- #define COMPILE_C
- #endif
- 
-@@ -564,15 +564,15 @@ static av_always_inline void do_a_deblock_C(uint8_t *src, int step, int stride,
- 
- #if ARCH_X86
- 
--#if (HAVE_MMX && !HAVE_AMD3DNOW && !HAVE_MMX2) || defined (RUNTIME_CPUDETECT)
-+#if (HAVE_MMX && !HAVE_AMD3DNOW && !HAVE_MMX2) || CONFIG_RUNTIME_CPUDETECT
- #define COMPILE_MMX
- #endif
- 
--#if HAVE_MMX2 || defined (RUNTIME_CPUDETECT)
-+#if HAVE_MMX2 || CONFIG_RUNTIME_CPUDETECT
- #define COMPILE_MMX2
- #endif
- 
--#if (HAVE_AMD3DNOW && !HAVE_MMX2) || defined (RUNTIME_CPUDETECT)
-+#if (HAVE_AMD3DNOW && !HAVE_MMX2) || CONFIG_RUNTIME_CPUDETECT
- #define COMPILE_3DNOW
- #endif
- #endif /* ARCH_X86 */
-@@ -645,7 +645,7 @@ static inline void postProcess(const uint8_t src[], int srcStride, uint8_t dst[]
-     // Using ifs here as they are faster than function pointers although the
-     // difference would not be measurable here but it is much better because
-     // someone might exchange the CPU whithout restarting MPlayer ;)
--#ifdef RUNTIME_CPUDETECT
-+#if CONFIG_RUNTIME_CPUDETECT
- #if ARCH_X86
-     // ordered per speed fastest first
-     if(c->cpuCaps & PP_CPU_CAPS_MMX2)
-@@ -664,7 +664,7 @@ static inline void postProcess(const uint8_t src[], int srcStride, uint8_t dst[]
- #endif
-             postProcess_C(src, srcStride, dst, dstStride, width, height, QPs, QPStride, isColor, c);
- #endif
--#else //RUNTIME_CPUDETECT
-+#else //CONFIG_RUNTIME_CPUDETECT
- #if   HAVE_MMX2
-             postProcess_MMX2(src, srcStride, dst, dstStride, width, height, QPs, QPStride, isColor, c);
- #elif HAVE_AMD3DNOW
-@@ -676,7 +676,7 @@ static inline void postProcess(const uint8_t src[], int srcStride, uint8_t dst[]
- #else
-             postProcess_C(src, srcStride, dst, dstStride, width, height, QPs, QPStride, isColor, c);
- #endif
--#endif //!RUNTIME_CPUDETECT
-+#endif //!CONFIG_RUNTIME_CPUDETECT
- }
- 
- //static void postProcess(uint8_t src[], int srcStride, uint8_t dst[], int dstStride, int width, int height,
diff --git a/debian/patches/enable-versioning.patch b/debian/patches/enable-versioning.patch
deleted file mode 100644
index ae96897..0000000
--- a/debian/patches/enable-versioning.patch
+++ /dev/null
@@ -1,98 +0,0 @@
-Author: Reinhard Tartler <siretart at tauware.de>
-Subject: backport symbol versioning patch
-Forwarded: http://permalink.gmane.org/gmane.comp.video.ffmpeg.devel/103672
-
-Index: ffmpeg/common.mak
-===================================================================
---- ffmpeg.orig/common.mak	2010-01-01 18:57:45.000000000 +0000
-+++ ffmpeg/common.mak	2010-01-01 18:57:51.000000000 +0000
-@@ -77,7 +77,7 @@
- DEPS := $(OBJS:.o=.d)
- depend dep: $(DEPS)
- 
--CLEANSUFFIXES = *.o *~ *.ho
-+CLEANSUFFIXES = *.o *~ *.ho *.ver
- LIBSUFFIXES   = *.a *.lib *.so *.so.* *.dylib *.dll *.def *.dll.a *.exp *.map
- DISTCLEANSUFFIXES = *.d *.pc
- 
-Index: ffmpeg/libavcodec/libavcodec.v
-===================================================================
---- /dev/null	1970-01-01 00:00:00.000000000 +0000
-+++ ffmpeg/libavcodec/libavcodec.v	2010-01-01 18:57:51.000000000 +0000
-@@ -0,0 +1,3 @@
-+LIBAVCODEC_%MAJOR% {
-+	global: *;
-+};
-Index: ffmpeg/libavdevice/libavdevice.v
-===================================================================
---- /dev/null	1970-01-01 00:00:00.000000000 +0000
-+++ ffmpeg/libavdevice/libavdevice.v	2010-01-01 18:57:51.000000000 +0000
-@@ -0,0 +1,4 @@
-+LIBAVDEVICE_%MAJOR% {
-+	global: avdevice_*;
-+	local: *;
-+};
-Index: ffmpeg/libavfilter/libavfilter.v
-===================================================================
---- /dev/null	1970-01-01 00:00:00.000000000 +0000
-+++ ffmpeg/libavfilter/libavfilter.v	2010-01-01 18:57:51.000000000 +0000
-@@ -0,0 +1,4 @@
-+LIBAVFILTER_%MAJOR% {
-+	global: avfilter_*; av_*;
-+	local: *;
-+};
-Index: ffmpeg/libavformat/libavformat.v
-===================================================================
---- /dev/null	1970-01-01 00:00:00.000000000 +0000
-+++ ffmpeg/libavformat/libavformat.v	2010-01-01 18:57:51.000000000 +0000
-@@ -0,0 +1,3 @@
-+LIBAVFORMAT_%MAJOR% {
-+	global: *;
-+};
-Index: ffmpeg/libavutil/libavutil.v
-===================================================================
---- /dev/null	1970-01-01 00:00:00.000000000 +0000
-+++ ffmpeg/libavutil/libavutil.v	2010-01-01 18:57:51.000000000 +0000
-@@ -0,0 +1,4 @@
-+LIBAVUTIL_%MAJOR% {
-+	global: av_*; ff_*; avutil_*;
-+	local: *;
-+};
-Index: ffmpeg/libpostproc/libpostproc.v
-===================================================================
---- /dev/null	1970-01-01 00:00:00.000000000 +0000
-+++ ffmpeg/libpostproc/libpostproc.v	2010-01-01 18:57:51.000000000 +0000
-@@ -0,0 +1,4 @@
-+LIBPOSTPROC_%MAJOR% {
-+	global: postproc_*; pp_*;
-+	local: *;
-+};
-Index: ffmpeg/libswscale/libswscale.v
-===================================================================
---- /dev/null	1970-01-01 00:00:00.000000000 +0000
-+++ ffmpeg/libswscale/libswscale.v	2010-01-01 18:57:51.000000000 +0000
-@@ -0,0 +1,3 @@
-+LIBSWSCALE_%MAJOR% {
-+	global: *;
-+};
-Index: ffmpeg/subdir.mak
-===================================================================
---- ffmpeg.orig/subdir.mak	2010-01-01 18:57:45.000000000 +0000
-+++ ffmpeg/subdir.mak	2010-01-01 19:00:26.000000000 +0000
-@@ -27,9 +27,14 @@
- $(SUBDIR)$(SLIBNAME): $(SUBDIR)$(SLIBNAME_WITH_MAJOR)
- 	cd ./$(SUBDIR) && $(LN_S) $(SLIBNAME_WITH_MAJOR) $(SLIBNAME)
- 
--$(SUBDIR)$(SLIBNAME_WITH_MAJOR): $(OBJS)
-+$(SUBDIR)lib$(NAME).ver: $(SRC_PATH_BARE)/$(SUBDIR)lib$(NAME).v
-+	sed 's/%MAJOR%/$(lib$(NAME)_VERSION_MAJOR)/' $$^ > $$@
-+
-+$(SUBDIR)$(SLIBNAME_WITH_MAJOR): $(SUBDIR)lib$(NAME).ver $(OBJS)
- 	$(SLIB_CREATE_DEF_CMD)
--	$(CC) $(SHFLAGS) $(FFLDFLAGS) -o $$@ $$(filter-out $(DEP_LIBS),$$^) $(FFEXTRALIBS) $(EXTRAOBJS)
-+	$(CC) $(SHFLAGS) $(FFLDFLAGS) \
-+		-Wl,--version-script,$(SUBDIR)lib$(NAME).ver \
-+		-o $$@ $$(filter-out $(SUBDIR)lib$(NAME).ver $(DEP_LIBS),$$^) $(FFEXTRALIBS) $(EXTRAOBJS)
- 	$(SLIB_EXTRA_CMD)
- 
- ifdef SUBDIR
diff --git a/debian/patches/issue1245.patch b/debian/patches/issue1245.patch
deleted file mode 100644
index f3ea9ca..0000000
--- a/debian/patches/issue1245.patch
+++ /dev/null
@@ -1,38 +0,0 @@
-From: michael <michael at 9553f0bf-9b14-0410-a0b8-cfaf0461ba5b>
-Date: Wed, 1 Jul 2009 18:50:31 +0000 (+0000)
-Subject: Make arguments of av_set_pts_info() unsigned.
-X-Git-Url: http://git.ffmpeg.org/?p=ffmpeg;a=commitdiff_plain;h=248dc1dd4cacbb7cb27d6bc0e66ff4f902b3bdc0
-
-Make arguments of av_set_pts_info() unsigned.
-Fixes issue1240/mpeg1/smclockmpeg1.avi.3.1
-
-
-git-svn-id: file:///var/local/repositories/ffmpeg/trunk@19319 9553f0bf-9b14-0410-a0b8-cfaf0461ba5b
----
-
-diff --git a/libavformat/avformat.h b/libavformat/avformat.h
-index 57faaed..2185edc 100644
---- a/libavformat/avformat.h
-+++ b/libavformat/avformat.h
-@@ -963,7 +963,7 @@ AVChapter *ff_new_chapter(AVFormatContext *s, int id, AVRational time_base,
-  * @param pts_den denominator to convert to seconds (MPEG: 90000)
-  */
- void av_set_pts_info(AVStream *s, int pts_wrap_bits,
--                     int pts_num, int pts_den);
-+                     unsigned int pts_num, unsigned int pts_den);
- 
- #define AVSEEK_FLAG_BACKWARD 1 ///< seek backward
- #define AVSEEK_FLAG_BYTE     2 ///< seeking based on position in bytes
-diff --git a/libavformat/utils.c b/libavformat/utils.c
-index 9325e3d..b1c0363 100644
---- a/libavformat/utils.c
-+++ b/libavformat/utils.c
-@@ -3304,7 +3304,7 @@ char *ff_data_to_hex(char *buff, const uint8_t *src, int s)
- }
- 
- void av_set_pts_info(AVStream *s, int pts_wrap_bits,
--                     int pts_num, int pts_den)
-+                     unsigned int pts_num, unsigned int pts_den)
- {
-     unsigned int gcd= av_gcd(pts_num, pts_den);
-     s->pts_wrap_bits = pts_wrap_bits;
diff --git a/debian/patches/security/libavcodec/ffv1/0001-Fix-a-possibly-exploitable-buffer-overflow.patch b/debian/patches/security/libavcodec/ffv1/0001-Fix-a-possibly-exploitable-buffer-overflow.patch
deleted file mode 100644
index 3ca0ef4..0000000
--- a/debian/patches/security/libavcodec/ffv1/0001-Fix-a-possibly-exploitable-buffer-overflow.patch
+++ /dev/null
@@ -1,29 +0,0 @@
-From 97e433db7abb9095e2af61ef05ffeda2699588e4 Mon Sep 17 00:00:00 2001
-From: michael <michael at 9553f0bf-9b14-0410-a0b8-cfaf0461ba5b>
-Date: Tue, 21 Apr 2009 12:00:39 +0000
-Subject: [PATCH] Fix a possibly exploitable buffer overflow.
-
-git-svn-id: file:///var/local/repositories/ffmpeg/trunk@18640 9553f0bf-9b14-0410-a0b8-cfaf0461ba5b
----
- libavcodec/ffv1.c |    3 +--
- 1 files changed, 1 insertions(+), 2 deletions(-)
-
-diff --git a/libavcodec/ffv1.c b/libavcodec/ffv1.c
-index 86f2897..9eef531 100644
---- a/libavcodec/ffv1.c
-+++ b/libavcodec/ffv1.c
-@@ -249,10 +249,9 @@ static inline int get_symbol(RangeCoder *c, uint8_t *state, int is_signed){
-     else{
-         int i, e, a;
-         e= 0;
--        while(get_rac(c, state+1 + e)){ //1..10
-+        while(get_rac(c, state+1 + e) && e<9){ //1..10
-             e++;
-         }
--        assert(e<=9);
- 
-         a= 1;
-         for(i=e-1; i>=0; i--){
--- 
-1.6.3.3
-
diff --git a/debian/patches/security/libavcodec/h264/0001-Check-num_units_in_tick-time_scale-to-be-valid-and-w.patch b/debian/patches/security/libavcodec/h264/0001-Check-num_units_in_tick-time_scale-to-be-valid-and-w.patch
deleted file mode 100644
index 258dafb..0000000
--- a/debian/patches/security/libavcodec/h264/0001-Check-num_units_in_tick-time_scale-to-be-valid-and-w.patch
+++ /dev/null
@@ -1,29 +0,0 @@
-From 1259942b556eb7e58c74d09f0e160c204c7f0ac1 Mon Sep 17 00:00:00 2001
-From: michael <michael at 9553f0bf-9b14-0410-a0b8-cfaf0461ba5b>
-Date: Wed, 23 Sep 2009 09:58:44 +0000
-Subject: [PATCH] Check num_units_in_tick/time_scale to be valid and within the range we support.
- based on a patch by chrome
-
-git-svn-id: file:///var/local/repositories/ffmpeg/trunk@19979 9553f0bf-9b14-0410-a0b8-cfaf0461ba5b
----
- libavcodec/h264.c |    4 ++++
- 1 files changed, 4 insertions(+), 0 deletions(-)
-
-diff --git a/libavcodec/h264.c b/libavcodec/h264.c
-index 20ad778..31bd4a6 100644
---- a/libavcodec/h264.c
-+++ b/libavcodec/h264.c
-@@ -7087,6 +7087,10 @@ static inline int decode_vui_parameters(H264Context *h, SPS *sps){
-     if(sps->timing_info_present_flag){
-         sps->num_units_in_tick = get_bits_long(&s->gb, 32);
-         sps->time_scale = get_bits_long(&s->gb, 32);
-+        if(sps->num_units_in_tick-1 > 0x7FFFFFFEU || sps->time_scale-1 > 0x7FFFFFFEU){
-+            av_log(h->s.avctx, AV_LOG_ERROR, "time_scale/num_units_in_tick inavlid or unsupported (%d/%d)\n", sps->time_scale, sps->num_units_in_tick);
-+            return -1;
-+        }
-         sps->fixed_frame_rate_flag = get_bits1(&s->gb);
-     }
- 
--- 
-1.6.3.3
-
diff --git a/debian/patches/security/libavcodec/mpegaudiodec/0001-check-data_size-in-decode_frame.patch b/debian/patches/security/libavcodec/mpegaudiodec/0001-check-data_size-in-decode_frame.patch
deleted file mode 100644
index a2b3c71..0000000
--- a/debian/patches/security/libavcodec/mpegaudiodec/0001-check-data_size-in-decode_frame.patch
+++ /dev/null
@@ -1,27 +0,0 @@
-From af59b51d945929694b5533d3d28ea4215e42af67 Mon Sep 17 00:00:00 2001
-From: michael <michael at 9553f0bf-9b14-0410-a0b8-cfaf0461ba5b>
-Date: Wed, 23 Sep 2009 11:29:38 +0000
-Subject: [PATCH 1/3] check data_size in decode_frame()
-
-git-svn-id: file:///var/local/repositories/ffmpeg/trunk@19986 9553f0bf-9b14-0410-a0b8-cfaf0461ba5b
----
- libavcodec/mpegaudiodec.c |    3 +++
- 1 files changed, 3 insertions(+), 0 deletions(-)
-
-diff --git a/libavcodec/mpegaudiodec.c b/libavcodec/mpegaudiodec.c
-index 2ba47df..6f451c3 100644
---- a/libavcodec/mpegaudiodec.c
-+++ b/libavcodec/mpegaudiodec.c
-@@ -2276,6 +2276,9 @@ static int decode_frame(AVCodecContext * avctx,
-     avctx->bit_rate = s->bit_rate;
-     avctx->sub_id = s->layer;
- 
-+    if(*data_size < 1152*avctx->channels*sizeof(OUT_INT))
-+        return -1;
-+
-     if(s->frame_size<=0 || s->frame_size > buf_size){
-         av_log(avctx, AV_LOG_ERROR, "incomplete frame\n");
-         return -1;
--- 
-1.6.3.3
-
diff --git a/debian/patches/security/libavcodec/mpegaudiodec/0002-Check-data_size-in-decode_frame_mp3on4.patch b/debian/patches/security/libavcodec/mpegaudiodec/0002-Check-data_size-in-decode_frame_mp3on4.patch
deleted file mode 100644
index e955645..0000000
--- a/debian/patches/security/libavcodec/mpegaudiodec/0002-Check-data_size-in-decode_frame_mp3on4.patch
+++ /dev/null
@@ -1,27 +0,0 @@
-From f6a0f8074a6ad33ebb90b687c77d33cd552f7005 Mon Sep 17 00:00:00 2001
-From: michael <michael at 9553f0bf-9b14-0410-a0b8-cfaf0461ba5b>
-Date: Wed, 23 Sep 2009 11:33:44 +0000
-Subject: [PATCH 2/3] Check data_size in decode_frame_mp3on4().
-
-git-svn-id: file:///var/local/repositories/ffmpeg/trunk@19987 9553f0bf-9b14-0410-a0b8-cfaf0461ba5b
----
- libavcodec/mpegaudiodec.c |    3 +++
- 1 files changed, 3 insertions(+), 0 deletions(-)
-
-diff --git a/libavcodec/mpegaudiodec.c b/libavcodec/mpegaudiodec.c
-index 6f451c3..3003e18 100644
---- a/libavcodec/mpegaudiodec.c
-+++ b/libavcodec/mpegaudiodec.c
-@@ -2466,6 +2466,9 @@ static int decode_frame_mp3on4(AVCodecContext * avctx,
-     OUT_INT *outptr, *bp;
-     int fr, j, n;
- 
-+    if(*data_size < MPA_FRAME_SIZE * MPA_MAX_CHANNELS * s->frames * sizeof(OUT_INT))
-+        return -1;
-+
-     *data_size = 0;
-     // Discard too short frames
-     if (buf_size < HEADER_SIZE)
--- 
-1.6.3.3
-
diff --git a/debian/patches/security/libavcodec/mpegaudiodec/0003-Set-data_size-to-0-to-avoid-having-it-uninitialized.patch b/debian/patches/security/libavcodec/mpegaudiodec/0003-Set-data_size-to-0-to-avoid-having-it-uninitialized.patch
deleted file mode 100644
index 925c6ee..0000000
--- a/debian/patches/security/libavcodec/mpegaudiodec/0003-Set-data_size-to-0-to-avoid-having-it-uninitialized.patch
+++ /dev/null
@@ -1,26 +0,0 @@
-From 7565e59ef9effe28962d7103f78c2d25e76524e0 Mon Sep 17 00:00:00 2001
-From: michael <michael at 9553f0bf-9b14-0410-a0b8-cfaf0461ba5b>
-Date: Wed, 23 Sep 2009 11:44:30 +0000
-Subject: [PATCH 3/3] Set data_size to 0 to avoid having it uninitialized.
- based on 31_mp3_outlen.patch by chrome.
-
-git-svn-id: file:///var/local/repositories/ffmpeg/trunk@19988 9553f0bf-9b14-0410-a0b8-cfaf0461ba5b
----
- libavcodec/mpegaudiodec.c |    1 +
- 1 files changed, 1 insertions(+), 0 deletions(-)
-
-diff --git a/libavcodec/mpegaudiodec.c b/libavcodec/mpegaudiodec.c
-index 3003e18..dd986bd 100644
---- a/libavcodec/mpegaudiodec.c
-+++ b/libavcodec/mpegaudiodec.c
-@@ -2278,6 +2278,7 @@ static int decode_frame(AVCodecContext * avctx,
- 
-     if(*data_size < 1152*avctx->channels*sizeof(OUT_INT))
-         return -1;
-+    *data_size = 0;
- 
-     if(s->frame_size<=0 || s->frame_size > buf_size){
-         av_log(avctx, AV_LOG_ERROR, "incomplete frame\n");
--- 
-1.6.3.3
-
diff --git a/debian/patches/security/libavcodec/vorbis_dec/0001-Check-dimensions-against-0-too.patch b/debian/patches/security/libavcodec/vorbis_dec/0001-Check-dimensions-against-0-too.patch
deleted file mode 100644
index f043c80..0000000
--- a/debian/patches/security/libavcodec/vorbis_dec/0001-Check-dimensions-against-0-too.patch
+++ /dev/null
@@ -1,29 +0,0 @@
-From 68cb8f3c6c3bde792c0e918a441be3ede478f8cc Mon Sep 17 00:00:00 2001
-From: michael <michael at 9553f0bf-9b14-0410-a0b8-cfaf0461ba5b>
-Date: Wed, 23 Sep 2009 08:35:29 +0000
-Subject: [PATCH 01/12] Check dimensions against 0 too.
- 39_vorbis_zero_dims.patch from chrome
-
-git-svn-id: file:///var/local/repositories/ffmpeg/trunk@19976 9553f0bf-9b14-0410-a0b8-cfaf0461ba5b
----
- libavcodec/vorbis_dec.c |    4 ++--
- 1 files changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/libavcodec/vorbis_dec.c b/libavcodec/vorbis_dec.c
-index 00542b9..25cfb31 100644
---- a/libavcodec/vorbis_dec.c
-+++ b/libavcodec/vorbis_dec.c
-@@ -244,8 +244,8 @@ static int vorbis_parse_setup_hdr_codebooks(vorbis_context *vc) {
-         }
- 
-         codebook_setup->dimensions=get_bits(gb, 16);
--        if (codebook_setup->dimensions>16) {
--            av_log(vc->avccontext, AV_LOG_ERROR, " %"PRIdFAST16". Codebook's dimension is too large (%d). \n", cb, codebook_setup->dimensions);
-+        if (codebook_setup->dimensions>16||codebook_setup->dimensions==0) {
-+            av_log(vc->avccontext, AV_LOG_ERROR, " %"PRIdFAST16". Codebook's dimension is invalid (%d). \n", cb, codebook_setup->dimensions);
-             goto error;
-         }
-         entries=get_bits(gb, 24);
--- 
-1.6.3.3
-
diff --git a/debian/patches/security/libavcodec/vorbis_dec/0002-typo.patch b/debian/patches/security/libavcodec/vorbis_dec/0002-typo.patch
deleted file mode 100644
index 03045b0..0000000
--- a/debian/patches/security/libavcodec/vorbis_dec/0002-typo.patch
+++ /dev/null
@@ -1,27 +0,0 @@
-From 0a7e56db7441d14afa66d228de17c63d5b49f8e9 Mon Sep 17 00:00:00 2001
-From: michael <michael at 9553f0bf-9b14-0410-a0b8-cfaf0461ba5b>
-Date: Wed, 23 Sep 2009 10:33:49 +0000
-Subject: [PATCH 02/12] = -> == typo.
- 27_vorbis_residue_loop_error.patch by chrome
-
-git-svn-id: file:///var/local/repositories/ffmpeg/trunk@19982 9553f0bf-9b14-0410-a0b8-cfaf0461ba5b
----
- libavcodec/vorbis_dec.c |    2 +-
- 1 files changed, 1 insertions(+), 1 deletions(-)
-
-diff --git a/libavcodec/vorbis_dec.c b/libavcodec/vorbis_dec.c
-index 25cfb31..532a060 100644
---- a/libavcodec/vorbis_dec.c
-+++ b/libavcodec/vorbis_dec.c
-@@ -1484,7 +1484,7 @@ static int vorbis_parse_audio_packet(vorbis_context *vc) {
-         uint_fast8_t ch=0;
- 
-         for(j=0;j<vc->audio_channels;++j) {
--            if ((mapping->submaps==1) || (i=mapping->mux[j])) {
-+            if ((mapping->submaps==1) || (i==mapping->mux[j])) {
-                 res_chan[j]=res_num;
-                 if (no_residue[j]) {
-                     do_not_decode[ch]=1;
--- 
-1.6.3.3
-
diff --git a/debian/patches/security/libavcodec/vorbis_dec/0003-Sanity-checks-for-magnitude-and-angle.patch b/debian/patches/security/libavcodec/vorbis_dec/0003-Sanity-checks-for-magnitude-and-angle.patch
deleted file mode 100644
index a82fc81..0000000
--- a/debian/patches/security/libavcodec/vorbis_dec/0003-Sanity-checks-for-magnitude-and-angle.patch
+++ /dev/null
@@ -1,34 +0,0 @@
-From b8f5dcd9af3d9997143b42980aec5226f7bad677 Mon Sep 17 00:00:00 2001
-From: michael <michael at 9553f0bf-9b14-0410-a0b8-cfaf0461ba5b>
-Date: Wed, 23 Sep 2009 10:40:33 +0000
-Subject: [PATCH 03/12] Sanity checks for magnitude and angle.
- 26_vorbis_mag_angle_index.patch by chrome
-
-git-svn-id: file:///var/local/repositories/ffmpeg/trunk@19983 9553f0bf-9b14-0410-a0b8-cfaf0461ba5b
----
- libavcodec/vorbis_dec.c |    9 ++++++++-
- 1 files changed, 8 insertions(+), 1 deletions(-)
-
-diff --git a/libavcodec/vorbis_dec.c b/libavcodec/vorbis_dec.c
-index 532a060..28417ee 100644
---- a/libavcodec/vorbis_dec.c
-+++ b/libavcodec/vorbis_dec.c
-@@ -697,7 +697,14 @@ static int vorbis_parse_setup_hdr_mappings(vorbis_context *vc) {
-             for(j=0;j<mapping_setup->coupling_steps;++j) {
-                 mapping_setup->magnitude[j]=get_bits(gb, ilog(vc->audio_channels-1));
-                 mapping_setup->angle[j]=get_bits(gb, ilog(vc->audio_channels-1));
--                // FIXME: sanity checks
-+                if (mapping_setup->magnitude[j]>=vc->audio_channels) {
-+                    av_log(vc->avccontext, AV_LOG_ERROR, "magnitude channel %d out of range. \n", mapping_setup->magnitude[j]);
-+                    return 1;
-+                }
-+                if (mapping_setup->angle[j]>=vc->audio_channels) {
-+                    av_log(vc->avccontext, AV_LOG_ERROR, "angle channel %d out of range. \n", mapping_setup->angle[j]);
-+                    return 1;
-+                }
-             }
-         } else {
-             mapping_setup->coupling_steps=0;
--- 
-1.6.3.3
-
diff --git a/debian/patches/security/libavcodec/vorbis_dec/0004-Fix-book_idx-check.patch b/debian/patches/security/libavcodec/vorbis_dec/0004-Fix-book_idx-check.patch
deleted file mode 100644
index 2fcb199..0000000
--- a/debian/patches/security/libavcodec/vorbis_dec/0004-Fix-book_idx-check.patch
+++ /dev/null
@@ -1,33 +0,0 @@
-From a2dad711e92fbb83a2d79959bb67764d034a56e3 Mon Sep 17 00:00:00 2001
-From: michael <michael at 9553f0bf-9b14-0410-a0b8-cfaf0461ba5b>
-Date: Wed, 23 Sep 2009 10:45:14 +0000
-Subject: [PATCH 04/12] Fix book_idx check.
- 25_vorbis_floor0_index.patch by chrome.
-
-git-svn-id: file:///var/local/repositories/ffmpeg/trunk@19984 9553f0bf-9b14-0410-a0b8-cfaf0461ba5b
----
- libavcodec/vorbis_dec.c |    5 ++---
- 1 files changed, 2 insertions(+), 3 deletions(-)
-
-diff --git a/libavcodec/vorbis_dec.c b/libavcodec/vorbis_dec.c
-index 28417ee..ce5a139 100644
---- a/libavcodec/vorbis_dec.c
-+++ b/libavcodec/vorbis_dec.c
-@@ -553,12 +553,11 @@ static int vorbis_parse_setup_hdr_floors(vorbis_context *vc) {
-                 uint_fast8_t book_idx;
-                 for (idx=0;idx<floor_setup->data.t0.num_books;++idx) {
-                     book_idx=get_bits(gb, 8);
-+                    if (book_idx>=vc->codebook_count)
-+                        return 1;
-                     floor_setup->data.t0.book_list[idx]=book_idx;
-                     if (vc->codebooks[book_idx].dimensions > max_codebook_dim)
-                         max_codebook_dim=vc->codebooks[book_idx].dimensions;
--
--                    if (floor_setup->data.t0.book_list[idx]>vc->codebook_count)
--                        return 1;
-                 }
-             }
- 
--- 
-1.6.3.3
-
diff --git a/debian/patches/security/libavcodec/vorbis_dec/0005-Check-classbook-value.patch b/debian/patches/security/libavcodec/vorbis_dec/0005-Check-classbook-value.patch
deleted file mode 100644
index cd7f26d..0000000
--- a/debian/patches/security/libavcodec/vorbis_dec/0005-Check-classbook-value.patch
+++ /dev/null
@@ -1,29 +0,0 @@
-From 093a791b172df483199fe81ac59ffcdbb63bf6c7 Mon Sep 17 00:00:00 2001
-From: michael <michael at 9553f0bf-9b14-0410-a0b8-cfaf0461ba5b>
-Date: Wed, 23 Sep 2009 12:02:31 +0000
-Subject: [PATCH 05/12] Check classbook value.
- 11_vorbis_residue_book_index.patch by chrome.
-
-git-svn-id: file:///var/local/repositories/ffmpeg/trunk@19989 9553f0bf-9b14-0410-a0b8-cfaf0461ba5b
----
- libavcodec/vorbis_dec.c |    4 ++++
- 1 files changed, 4 insertions(+), 0 deletions(-)
-
-diff --git a/libavcodec/vorbis_dec.c b/libavcodec/vorbis_dec.c
-index ce5a139..2d5e610 100644
---- a/libavcodec/vorbis_dec.c
-+++ b/libavcodec/vorbis_dec.c
-@@ -630,6 +630,10 @@ static int vorbis_parse_setup_hdr_residues(vorbis_context *vc){
-         res_setup->partition_size=get_bits(gb, 24)+1;
-         res_setup->classifications=get_bits(gb, 6)+1;
-         res_setup->classbook=get_bits(gb, 8);
-+        if (res_setup->classbook>=vc->codebook_count) {
-+            av_log(vc->avccontext, AV_LOG_ERROR, "classbook value %d out of range. \n", res_setup->classbook);
-+            return 1;
-+        }
- 
-         AV_DEBUG("    begin %d end %d part.size %d classif.s %d classbook %d \n", res_setup->begin, res_setup->end, res_setup->partition_size,
-           res_setup->classifications, res_setup->classbook);
--- 
-1.6.3.3
-
diff --git a/debian/patches/security/libavcodec/vorbis_dec/0006-Add-checks-for-per-packet-mode-indexes-and-per-heade.patch b/debian/patches/security/libavcodec/vorbis_dec/0006-Add-checks-for-per-packet-mode-indexes-and-per-heade.patch
deleted file mode 100644
index 39962ec..0000000
--- a/debian/patches/security/libavcodec/vorbis_dec/0006-Add-checks-for-per-packet-mode-indexes-and-per-heade.patch
+++ /dev/null
@@ -1,43 +0,0 @@
-From 6d7908b8de6d34b425e18c412c341ed34e4f1fe4 Mon Sep 17 00:00:00 2001
-From: michael <michael at 9553f0bf-9b14-0410-a0b8-cfaf0461ba5b>
-Date: Wed, 23 Sep 2009 12:09:33 +0000
-Subject: [PATCH 06/12] Add checks for per-packet mode indexes and per-header mode mapping indexes.
- 12_vorbis_mode_indexes.patch by chrome
- maybe exploitable
-
-git-svn-id: file:///var/local/repositories/ffmpeg/trunk@19990 9553f0bf-9b14-0410-a0b8-cfaf0461ba5b
----
- libavcodec/vorbis_dec.c |   10 +++++++++-
- 1 files changed, 9 insertions(+), 1 deletions(-)
-
-diff --git a/libavcodec/vorbis_dec.c b/libavcodec/vorbis_dec.c
-index 2d5e610..ec305ba 100644
---- a/libavcodec/vorbis_dec.c
-+++ b/libavcodec/vorbis_dec.c
-@@ -793,7 +793,11 @@ static int vorbis_parse_setup_hdr_modes(vorbis_context *vc) {
-         mode_setup->blockflag=get_bits1(gb);
-         mode_setup->windowtype=get_bits(gb, 16); //FIXME check
-         mode_setup->transformtype=get_bits(gb, 16); //FIXME check
--        mode_setup->mapping=get_bits(gb, 8); //FIXME check
-+        mode_setup->mapping=get_bits(gb, 8);
-+        if (mode_setup->mapping>=vc->mapping_count) {
-+            av_log(vc->avccontext, AV_LOG_ERROR, "mode mapping value %d out of range. \n", mode_setup->mapping);
-+            return 1;
-+        }
- 
-         AV_DEBUG(" %d mode: blockflag %d, windowtype %d, transformtype %d, mapping %d \n", i, mode_setup->blockflag, mode_setup->windowtype, mode_setup->transformtype, mode_setup->mapping);
-     }
-@@ -1450,6 +1454,10 @@ static int vorbis_parse_audio_packet(vorbis_context *vc) {
-     } else {
-         mode_number=get_bits(gb, ilog(vc->mode_count-1));
-     }
-+    if (mode_number>=vc->mode_count) {
-+        av_log(vc->avccontext, AV_LOG_ERROR, "mode number %d out of range.\n", mode_number);
-+        return -1;
-+    }
-     vc->mode_number=mode_number;
-     mapping=&vc->mappings[vc->modes[mode_number].mapping];
- 
--- 
-1.6.3.3
-
diff --git a/debian/patches/security/libavcodec/vorbis_dec/0007-Check-masterbook-index-and-subclass-book-index.patch b/debian/patches/security/libavcodec/vorbis_dec/0007-Check-masterbook-index-and-subclass-book-index.patch
deleted file mode 100644
index a63af1e..0000000
--- a/debian/patches/security/libavcodec/vorbis_dec/0007-Check-masterbook-index-and-subclass-book-index.patch
+++ /dev/null
@@ -1,44 +0,0 @@
-From 8ff644b871f3afe9529e451d86efb2f08014b53b Mon Sep 17 00:00:00 2001
-From: michael <michael at 9553f0bf-9b14-0410-a0b8-cfaf0461ba5b>
-Date: Wed, 23 Sep 2009 12:17:54 +0000
-Subject: [PATCH 07/12] Check masterbook index and subclass book index.
- 14_floor_masterbook_index.patch by chrome
-
-git-svn-id: file:///var/local/repositories/ffmpeg/trunk@19991 9553f0bf-9b14-0410-a0b8-cfaf0461ba5b
----
- libavcodec/vorbis_dec.c |   14 ++++++++++++--
- 1 files changed, 12 insertions(+), 2 deletions(-)
-
-diff --git a/libavcodec/vorbis_dec.c b/libavcodec/vorbis_dec.c
-index ec305ba..3daba8f 100644
---- a/libavcodec/vorbis_dec.c
-+++ b/libavcodec/vorbis_dec.c
-@@ -487,13 +487,23 @@ static int vorbis_parse_setup_hdr_floors(vorbis_context *vc) {
-                 AV_DEBUG(" %d floor %d class dim: %d subclasses %d \n", i, j, floor_setup->data.t1.class_dimensions[j], floor_setup->data.t1.class_subclasses[j]);
- 
-                 if (floor_setup->data.t1.class_subclasses[j]) {
--                    floor_setup->data.t1.class_masterbook[j]=get_bits(gb, 8);
-+                    int bits=get_bits(gb, 8);
-+                    if (bits>=vc->codebook_count) {
-+                        av_log(vc->avccontext, AV_LOG_ERROR, "Masterbook index %d is out of range.\n", bits);
-+                        return 1;
-+                    }
-+                    floor_setup->data.t1.class_masterbook[j]=bits;
- 
-                     AV_DEBUG("   masterbook: %d \n", floor_setup->data.t1.class_masterbook[j]);
-                 }
- 
-                 for(k=0;k<(1<<floor_setup->data.t1.class_subclasses[j]);++k) {
--                    floor_setup->data.t1.subclass_books[j][k]=(int16_t)get_bits(gb, 8)-1;
-+                    int16_t bits=get_bits(gb, 8)-1;
-+                    if (bits!=-1 && bits>=vc->codebook_count) {
-+                        av_log(vc->avccontext, AV_LOG_ERROR, "Subclass book index %d is out of range.\n", bits);
-+                        return 1;
-+                    }
-+                    floor_setup->data.t1.subclass_books[j][k]=bits;
- 
-                     AV_DEBUG("    book %d. : %d \n", k, floor_setup->data.t1.subclass_books[j][k]);
-                 }
--- 
-1.6.3.3
-
diff --git a/debian/patches/security/libavcodec/vorbis_dec/0008-Check-res_setup-books.patch b/debian/patches/security/libavcodec/vorbis_dec/0008-Check-res_setup-books.patch
deleted file mode 100644
index 9429c34..0000000
--- a/debian/patches/security/libavcodec/vorbis_dec/0008-Check-res_setup-books.patch
+++ /dev/null
@@ -1,32 +0,0 @@
-From ecd690a24a440553e0ba587e13dc5b2ec279f0a8 Mon Sep 17 00:00:00 2001
-From: michael <michael at 9553f0bf-9b14-0410-a0b8-cfaf0461ba5b>
-Date: Wed, 23 Sep 2009 12:24:21 +0000
-Subject: [PATCH 08/12] Check  res_setup->books.
- 15_more_residue_book_indexes.patch by chrome.
-
-git-svn-id: file:///var/local/repositories/ffmpeg/trunk@19992 9553f0bf-9b14-0410-a0b8-cfaf0461ba5b
----
- libavcodec/vorbis_dec.c |    7 ++++++-
- 1 files changed, 6 insertions(+), 1 deletions(-)
-
-diff --git a/libavcodec/vorbis_dec.c b/libavcodec/vorbis_dec.c
-index 3daba8f..ca43e99 100644
---- a/libavcodec/vorbis_dec.c
-+++ b/libavcodec/vorbis_dec.c
-@@ -663,7 +663,12 @@ static int vorbis_parse_setup_hdr_residues(vorbis_context *vc){
-         for(j=0;j<res_setup->classifications;++j) {
-             for(k=0;k<8;++k) {
-                 if (cascade[j]&(1<<k)) {
--                        res_setup->books[j][k]=get_bits(gb, 8);
-+                    int bits=get_bits(gb, 8);
-+                    if (bits>=vc->codebook_count) {
-+                        av_log(vc->avccontext, AV_LOG_ERROR, "book value %d out of range. \n", bits);
-+                        return 1;
-+                    }
-+                    res_setup->books[j][k]=bits;
- 
-                     AV_DEBUG("     %d class casscade depth %d book: %d \n", j, k, res_setup->books[j][k]);
- 
--- 
-1.6.3.3
-
diff --git a/debian/patches/security/libavcodec/vorbis_dec/0009-Check-begin-end-partition_size.patch b/debian/patches/security/libavcodec/vorbis_dec/0009-Check-begin-end-partition_size.patch
deleted file mode 100644
index 79e62a4..0000000
--- a/debian/patches/security/libavcodec/vorbis_dec/0009-Check-begin-end-partition_size.patch
+++ /dev/null
@@ -1,43 +0,0 @@
-From d71f5b5b2b9f2e0ba2da67ca2c15b9bbb69ac1fc Mon Sep 17 00:00:00 2001
-From: michael <michael at 9553f0bf-9b14-0410-a0b8-cfaf0461ba5b>
-Date: Wed, 23 Sep 2009 13:08:48 +0000
-Subject: [PATCH 09/12] Check begin/end/partition_size.
- 23_vorbis_sane_partition.patch by chrome.
- Also this should be better documented but i prefer not to leave potential
- security issues open due to missing documentation.
-
-git-svn-id: file:///var/local/repositories/ffmpeg/trunk@19996 9553f0bf-9b14-0410-a0b8-cfaf0461ba5b
----
- libavcodec/vorbis_dec.c |    9 +++++++++
- 1 files changed, 9 insertions(+), 0 deletions(-)
-
-diff --git a/libavcodec/vorbis_dec.c b/libavcodec/vorbis_dec.c
-index ca43e99..ec3c561 100644
---- a/libavcodec/vorbis_dec.c
-+++ b/libavcodec/vorbis_dec.c
-@@ -37,6 +37,7 @@
- #define V_NB_BITS 8
- #define V_NB_BITS2 11
- #define V_MAX_VLCS (1<<16)
-+#define V_MAX_PARTITIONS (1<<20)
- 
- #ifndef V_DEBUG
- #define AV_DEBUG(...)
-@@ -638,6 +639,14 @@ static int vorbis_parse_setup_hdr_residues(vorbis_context *vc){
-         res_setup->begin=get_bits(gb, 24);
-         res_setup->end=get_bits(gb, 24);
-         res_setup->partition_size=get_bits(gb, 24)+1;
-+        /* Validations to prevent a buffer overflow later. */
-+        if (res_setup->begin>res_setup->end
-+        || res_setup->end>vc->blocksize[1]/(res_setup->type==2?1:2)
-+        || (res_setup->end-res_setup->begin)/res_setup->partition_size>V_MAX_PARTITIONS) {
-+            av_log(vc->avccontext, AV_LOG_ERROR, "partition out of bounds: type, begin, end, size, blocksize: %d, %d, %d, %d, %d\n", res_setup->type, res_setup->begin, res_setup->end, res_setup->partition_size, vc->blocksize[1]/2);
-+            return 1;
-+        }
-+
-         res_setup->classifications=get_bits(gb, 6)+1;
-         res_setup->classbook=get_bits(gb, 8);
-         if (res_setup->classbook>=vc->codebook_count) {
--- 
-1.6.3.3
-
diff --git a/debian/patches/security/libavcodec/vorbis_dec/0010-Make-error-return-sign-consistent.patch b/debian/patches/security/libavcodec/vorbis_dec/0010-Make-error-return-sign-consistent.patch
deleted file mode 100644
index a3961aa..0000000
--- a/debian/patches/security/libavcodec/vorbis_dec/0010-Make-error-return-sign-consistent.patch
+++ /dev/null
@@ -1,251 +0,0 @@
-From 213d02328757c6b212ac6d4bb7ec23f70080fb25 Mon Sep 17 00:00:00 2001
-From: michael <michael at 9553f0bf-9b14-0410-a0b8-cfaf0461ba5b>
-Date: Wed, 23 Sep 2009 13:18:29 +0000
-Subject: [PATCH 10/12] Make error return sign consistent.
-
-edited by siretart at tauware.de to apply to 0.5
-
-git-svn-id: file:///var/local/repositories/ffmpeg/trunk@19997 9553f0bf-9b14-0410-a0b8-cfaf0461ba5b
----
- libavcodec/vorbis_dec.c |   60 +++++++++++++++++++++++-----------------------
- 1 files changed, 30 insertions(+), 30 deletions(-)
-
---- a/libavcodec/vorbis_dec.c
-+++ b/libavcodec/vorbis_dec.c
-@@ -418,7 +418,7 @@ static int vorbis_parse_setup_hdr_codebo
- error:
-     av_free(tmp_vlc_bits);
-     av_free(tmp_vlc_codes);
--    return 1;
-+    return -1;
- }
- 
- // Process time domain transforms part (unused in Vorbis I)
-@@ -435,7 +435,7 @@ static int vorbis_parse_setup_hdr_tdtran
- 
-         if (vorbis_tdtransform) {
-             av_log(vc->avccontext, AV_LOG_ERROR, "Vorbis time domain transform data nonzero. \n");
--            return 1;
-+            return -1;
-         }
-     }
-     return 0;
-@@ -496,7 +496,7 @@ static int vorbis_parse_setup_hdr_floors
-                     int bits=get_bits(gb, 8);
-                     if (bits>=vc->codebook_count) {
-                         av_log(vc->avccontext, AV_LOG_ERROR, "Masterbook index %d is out of range.\n", bits);
--                        return 1;
-+                        return -1;
-                     }
-                     floor_setup->data.t1.class_masterbook[j]=bits;
- 
-@@ -507,7 +507,7 @@ static int vorbis_parse_setup_hdr_floors
-                     int16_t bits=get_bits(gb, 8)-1;
-                     if (bits!=-1 && bits>=vc->codebook_count) {
-                         av_log(vc->avccontext, AV_LOG_ERROR, "Subclass book index %d is out of range.\n", bits);
--                        return 1;
-+                        return -1;
-                     }
-                     floor_setup->data.t1.subclass_books[j][k]=bits;
- 
-@@ -554,7 +554,7 @@ static int vorbis_parse_setup_hdr_floors
-             if (floor_setup->data.t0.amplitude_bits == 0) {
-               av_log(vc->avccontext, AV_LOG_ERROR,
-                      "Floor 0 amplitude bits is 0.\n");
--              return 1;
-+              return -1;
-             }
-             floor_setup->data.t0.amplitude_offset=get_bits(gb, 8);
-             floor_setup->data.t0.num_books=get_bits(gb, 4)+1;
-@@ -562,7 +562,7 @@ static int vorbis_parse_setup_hdr_floors
-             /* allocate mem for booklist */
-             floor_setup->data.t0.book_list=
-                 av_malloc(floor_setup->data.t0.num_books);
--            if(!floor_setup->data.t0.book_list) { return 1; }
-+            if(!floor_setup->data.t0.book_list) { return -1; }
-             /* read book indexes */
-             {
-                 int idx;
-@@ -570,7 +570,7 @@ static int vorbis_parse_setup_hdr_floors
-                 for (idx=0;idx<floor_setup->data.t0.num_books;++idx) {
-                     book_idx=get_bits(gb, 8);
-                     if (book_idx>=vc->codebook_count)
--                        return 1;
-+                        return -1;
-                     floor_setup->data.t0.book_list[idx]=book_idx;
-                     if (vc->codebooks[book_idx].dimensions > max_codebook_dim)
-                         max_codebook_dim=vc->codebooks[book_idx].dimensions;
-@@ -586,7 +586,7 @@ static int vorbis_parse_setup_hdr_floors
-                 floor_setup->data.t0.lsp=
-                     av_malloc((floor_setup->data.t0.order+1 + max_codebook_dim)
-                               * sizeof(float));
--                if(!floor_setup->data.t0.lsp) { return 1; }
-+                if(!floor_setup->data.t0.lsp) { return -1; }
-             }
- 
- #ifdef V_DEBUG /* debug output parsed headers */
-@@ -614,7 +614,7 @@ static int vorbis_parse_setup_hdr_floors
-         }
-         else {
-             av_log(vc->avccontext, AV_LOG_ERROR, "Invalid floor type!\n");
--            return 1;
-+            return -1;
-         }
-     }
-     return 0;
-@@ -649,14 +649,14 @@ static int vorbis_parse_setup_hdr_residu
-         || res_setup->end>vc->blocksize[1]/(res_setup->type==2?1:2)
-         || (res_setup->end-res_setup->begin)/res_setup->partition_size>V_MAX_PARTITIONS) {
-             av_log(vc->avccontext, AV_LOG_ERROR, "partition out of bounds: type, begin, end, size, blocksize: %d, %d, %d, %d, %d\n", res_setup->type, res_setup->begin, res_setup->end, res_setup->partition_size, vc->blocksize[1]/2);
--            return 1;
-+            return -1;
-         }
- 
-         res_setup->classifications=get_bits(gb, 6)+1;
-         res_setup->classbook=get_bits(gb, 8);
-         if (res_setup->classbook>=vc->codebook_count) {
-             av_log(vc->avccontext, AV_LOG_ERROR, "classbook value %d out of range. \n", res_setup->classbook);
--            return 1;
-+            return -1;
-         }
- 
-         AV_DEBUG("    begin %d end %d part.size %d classif.s %d classbook %d \n", res_setup->begin, res_setup->end, res_setup->partition_size,
-@@ -680,7 +680,7 @@ static int vorbis_parse_setup_hdr_residu
-                     int bits=get_bits(gb, 8);
-                     if (bits>=vc->codebook_count) {
-                         av_log(vc->avccontext, AV_LOG_ERROR, "book value %d out of range. \n", bits);
--                        return 1;
-+                        return -1;
-                     }
-                     res_setup->books[j][k]=bits;
- 
-@@ -714,7 +714,7 @@ static int vorbis_parse_setup_hdr_mappin
- 
-         if (get_bits(gb, 16)) {
-             av_log(vc->avccontext, AV_LOG_ERROR, "Other mappings than type 0 are not compliant with the Vorbis I specification. \n");
--            return 1;
-+            return -1;
-         }
-         if (get_bits1(gb)) {
-             mapping_setup->submaps=get_bits(gb, 4)+1;
-@@ -731,11 +731,11 @@ static int vorbis_parse_setup_hdr_mappin
-                 mapping_setup->angle[j]=get_bits(gb, ilog(vc->audio_channels-1));
-                 if (mapping_setup->magnitude[j]>=vc->audio_channels) {
-                     av_log(vc->avccontext, AV_LOG_ERROR, "magnitude channel %d out of range. \n", mapping_setup->magnitude[j]);
--                    return 1;
-+                    return -1;
-                 }
-                 if (mapping_setup->angle[j]>=vc->audio_channels) {
-                     av_log(vc->avccontext, AV_LOG_ERROR, "angle channel %d out of range. \n", mapping_setup->angle[j]);
--                    return 1;
-+                    return -1;
-                 }
-             }
-         } else {
-@@ -746,7 +746,7 @@ static int vorbis_parse_setup_hdr_mappin
- 
-         if(get_bits(gb, 2)) {
-             av_log(vc->avccontext, AV_LOG_ERROR, "%d. mapping setup data invalid. \n", i);
--            return 1; // following spec.
-+            return -1; // following spec.
-         }
- 
-         if (mapping_setup->submaps>1) {
-@@ -825,7 +825,7 @@ static int vorbis_parse_setup_hdr_modes(
-         mode_setup->mapping=get_bits(gb, 8);
-         if (mode_setup->mapping>=vc->mapping_count) {
-             av_log(vc->avccontext, AV_LOG_ERROR, "mode mapping value %d out of range. \n", mode_setup->mapping);
--            return 1;
-+            return -1;
-         }
- 
-         AV_DEBUG(" %d mode: blockflag %d, windowtype %d, transformtype %d, mapping %d \n", i, mode_setup->blockflag, mode_setup->windowtype, mode_setup->transformtype, mode_setup->mapping);
-@@ -842,36 +842,36 @@ static int vorbis_parse_setup_hdr(vorbis
-     (get_bits(gb, 8)!='r') || (get_bits(gb, 8)!='b') ||
-     (get_bits(gb, 8)!='i') || (get_bits(gb, 8)!='s')) {
-         av_log(vc->avccontext, AV_LOG_ERROR, " Vorbis setup header packet corrupt (no vorbis signature). \n");
--        return 1;
-+        return -1;
-     }
- 
-     if (vorbis_parse_setup_hdr_codebooks(vc)) {
-         av_log(vc->avccontext, AV_LOG_ERROR, " Vorbis setup header packet corrupt (codebooks). \n");
--        return 2;
-+        return -2;
-     }
-     if (vorbis_parse_setup_hdr_tdtransforms(vc)) {
-         av_log(vc->avccontext, AV_LOG_ERROR, " Vorbis setup header packet corrupt (time domain transforms). \n");
--        return 3;
-+        return -3;
-     }
-     if (vorbis_parse_setup_hdr_floors(vc)) {
-         av_log(vc->avccontext, AV_LOG_ERROR, " Vorbis setup header packet corrupt (floors). \n");
--        return 4;
-+        return -4;
-     }
-     if (vorbis_parse_setup_hdr_residues(vc)) {
-         av_log(vc->avccontext, AV_LOG_ERROR, " Vorbis setup header packet corrupt (residues). \n");
--        return 5;
-+        return -5;
-     }
-     if (vorbis_parse_setup_hdr_mappings(vc)) {
-         av_log(vc->avccontext, AV_LOG_ERROR, " Vorbis setup header packet corrupt (mappings). \n");
--        return 6;
-+        return -6;
-     }
-     if (vorbis_parse_setup_hdr_modes(vc)) {
-         av_log(vc->avccontext, AV_LOG_ERROR, " Vorbis setup header packet corrupt (modes). \n");
--        return 7;
-+        return -7;
-     }
-     if (!get_bits1(gb)) {
-         av_log(vc->avccontext, AV_LOG_ERROR, " Vorbis setup header packet corrupt (framing flag). \n");
--        return 8; // framing flag bit unset error
-+        return -8; // framing flag bit unset error
-     }
- 
-     return 0;
-@@ -887,7 +887,7 @@ static int vorbis_parse_id_hdr(vorbis_co
-     (get_bits(gb, 8)!='r') || (get_bits(gb, 8)!='b') ||
-     (get_bits(gb, 8)!='i') || (get_bits(gb, 8)!='s')) {
-         av_log(vc->avccontext, AV_LOG_ERROR, " Vorbis id header packet corrupt (no vorbis signature). \n");
--        return 1;
-+        return -1;
-     }
- 
-     vc->version=get_bits_long(gb, 32);    //FIXME check 0
-@@ -902,14 +902,14 @@ static int vorbis_parse_id_hdr(vorbis_co
-     vc->blocksize[1]=(1<<bl1);
-     if (bl0>13 || bl0<6 || bl1>13 || bl1<6 || bl1<bl0) {
-         av_log(vc->avccontext, AV_LOG_ERROR, " Vorbis id header packet corrupt (illegal blocksize). \n");
--        return 3;
-+        return -3;
-     }
-     // output format int16
-     if (vc->blocksize[1]/2 * vc->audio_channels * 2 >
-                                              AVCODEC_MAX_AUDIO_FRAME_SIZE) {
-         av_log(vc->avccontext, AV_LOG_ERROR, "Vorbis channel count makes "
-                "output packets too large.\n");
--        return 4;
-+        return -4;
-     }
-     vc->win[0]=ff_vorbis_vwin[bl0-6];
-     vc->win[1]=ff_vorbis_vwin[bl1-6];
-@@ -926,7 +926,7 @@ static int vorbis_parse_id_hdr(vorbis_co
- 
-     if ((get_bits1(gb)) == 0) {
-         av_log(vc->avccontext, AV_LOG_ERROR, " Vorbis id header packet corrupt (framing flag not set). \n");
--        return 2;
-+        return -2;
-     }
- 
-     vc->channel_residues= av_malloc((vc->blocksize[1]/2)*vc->audio_channels * sizeof(float));
-@@ -1415,7 +1415,7 @@ static inline int vorbis_residue_decode(
-         return vorbis_residue_decode_internal(vc, vr, ch, do_not_decode, vec, vlen, 0);
-     else {
-         av_log(vc->avccontext, AV_LOG_ERROR, " Invalid residue type while residue decode?! \n");
--        return 1;
-+        return -1;
-     }
- }
- 
diff --git a/debian/patches/security/libavcodec/vorbis_dec/0011-Check-submap-indexes.patch b/debian/patches/security/libavcodec/vorbis_dec/0011-Check-submap-indexes.patch
deleted file mode 100644
index db75037..0000000
--- a/debian/patches/security/libavcodec/vorbis_dec/0011-Check-submap-indexes.patch
+++ /dev/null
@@ -1,43 +0,0 @@
-From c1fe0583d44a67f94047bd3e59f2b53f304db4ec Mon Sep 17 00:00:00 2001
-From: michael <michael at 9553f0bf-9b14-0410-a0b8-cfaf0461ba5b>
-Date: Wed, 23 Sep 2009 14:19:17 +0000
-Subject: [PATCH 11/12] Check submap indexes.
- 10_vorbis_submap_indexes.patch by chrome.
- Iam applying this even though reimar had some comments to improve it as it fixes
- a serious security issue and i do not want to leave such things unfixed.
-
-git-svn-id: file:///var/local/repositories/ffmpeg/trunk@20001 9553f0bf-9b14-0410-a0b8-cfaf0461ba5b
----
- libavcodec/vorbis_dec.c |   15 +++++++++++++--
- 1 files changed, 13 insertions(+), 2 deletions(-)
-
-diff --git a/libavcodec/vorbis_dec.c b/libavcodec/vorbis_dec.c
-index 2152f5f..ed4dace 100644
---- a/libavcodec/vorbis_dec.c
-+++ b/libavcodec/vorbis_dec.c
-@@ -752,9 +752,20 @@ static int vorbis_parse_setup_hdr_mappings(vorbis_context *vc) {
-         }
- 
-         for(j=0;j<mapping_setup->submaps;++j) {
-+            int bits;
-             skip_bits(gb, 8); // FIXME check?
--            mapping_setup->submap_floor[j]=get_bits(gb, 8);
--            mapping_setup->submap_residue[j]=get_bits(gb, 8);
-+            bits=get_bits(gb, 8);
-+            if (bits>=vc->floor_count) {
-+                av_log(vc->avccontext, AV_LOG_ERROR, "submap floor value %d out of range. \n", bits);
-+                return -1;
-+            }
-+            mapping_setup->submap_floor[j]=bits;
-+            bits=get_bits(gb, 8);
-+            if (bits>=vc->residue_count) {
-+                av_log(vc->avccontext, AV_LOG_ERROR, "submap residue value %d out of range. \n", bits);
-+                return -1;
-+            }
-+            mapping_setup->submap_residue[j]=bits;
- 
-             AV_DEBUG("   %d mapping %d submap : floor %d, residue %d \n", i, j, mapping_setup->submap_floor[j], mapping_setup->submap_residue[j]);
-         }
--- 
-1.6.3.3
-
diff --git a/debian/patches/security/libavcodec/vorbis_dec/0012-Fix-format-string-to-match-the-types-printed.patch b/debian/patches/security/libavcodec/vorbis_dec/0012-Fix-format-string-to-match-the-types-printed.patch
deleted file mode 100644
index bc22352..0000000
--- a/debian/patches/security/libavcodec/vorbis_dec/0012-Fix-format-string-to-match-the-types-printed.patch
+++ /dev/null
@@ -1,26 +0,0 @@
-From c2ca1c6ee96c27ec872012dbc5a8b15fdb15eca9 Mon Sep 17 00:00:00 2001
-From: reimar <reimar at 9553f0bf-9b14-0410-a0b8-cfaf0461ba5b>
-Date: Wed, 23 Sep 2009 15:30:38 +0000
-Subject: [PATCH 12/12] Fix format string to match the types printed.
-
-git-svn-id: file:///var/local/repositories/ffmpeg/trunk@20003 9553f0bf-9b14-0410-a0b8-cfaf0461ba5b
----
- libavcodec/vorbis_dec.c |    2 +-
- 1 files changed, 1 insertions(+), 1 deletions(-)
-
-diff --git a/libavcodec/vorbis_dec.c b/libavcodec/vorbis_dec.c
-index ed4dace..4d992a8 100644
---- a/libavcodec/vorbis_dec.c
-+++ b/libavcodec/vorbis_dec.c
-@@ -643,7 +643,7 @@ static int vorbis_parse_setup_hdr_residues(vorbis_context *vc){
-         if (res_setup->begin>res_setup->end
-         || res_setup->end>vc->blocksize[1]/(res_setup->type==2?1:2)
-         || (res_setup->end-res_setup->begin)/res_setup->partition_size>V_MAX_PARTITIONS) {
--            av_log(vc->avccontext, AV_LOG_ERROR, "partition out of bounds: type, begin, end, size, blocksize: %d, %d, %d, %d, %d\n", res_setup->type, res_setup->begin, res_setup->end, res_setup->partition_size, vc->blocksize[1]/2);
-+            av_log(vc->avccontext, AV_LOG_ERROR, "partition out of bounds: type, begin, end, size, blocksize: %"PRIdFAST16", %"PRIdFAST32", %"PRIdFAST32", %"PRIdFAST32", %"PRIdFAST32"\n", res_setup->type, res_setup->begin, res_setup->end, res_setup->partition_size, vc->blocksize[1]/2);
-             return -1;
-         }
- 
--- 
-1.6.3.3
-
diff --git a/debian/patches/security/libavcodec/vp3/0001-Fix-init_get_bits-buffer-size.patch b/debian/patches/security/libavcodec/vp3/0001-Fix-init_get_bits-buffer-size.patch
deleted file mode 100644
index a90a9f3..0000000
--- a/debian/patches/security/libavcodec/vp3/0001-Fix-init_get_bits-buffer-size.patch
+++ /dev/null
@@ -1,27 +0,0 @@
-From 351a67a951b4b95bc0cb05127445b685f362f9b9 Mon Sep 17 00:00:00 2001
-From: michael <michael at 9553f0bf-9b14-0410-a0b8-cfaf0461ba5b>
-Date: Wed, 23 Sep 2009 12:27:10 +0000
-Subject: [PATCH 1/3] Fix init_get_bits() buffer size.
- 18_fix_theora_header_bit_len.patch by chrome
-
-git-svn-id: file:///var/local/repositories/ffmpeg/trunk@19993 9553f0bf-9b14-0410-a0b8-cfaf0461ba5b
----
- libavcodec/vp3.c |    2 +-
- 1 files changed, 1 insertions(+), 1 deletions(-)
-
-diff --git a/libavcodec/vp3.c b/libavcodec/vp3.c
-index 4d27a8a..4896fd0 100644
---- a/libavcodec/vp3.c
-+++ b/libavcodec/vp3.c
-@@ -2319,7 +2319,7 @@ static av_cold int theora_decode_init(AVCodecContext *avctx)
-     }
- 
-   for(i=0;i<3;i++) {
--    init_get_bits(&gb, header_start[i], header_len[i]);
-+    init_get_bits(&gb, header_start[i], header_len[i] * 8);
- 
-     ptype = get_bits(&gb, 8);
- 
--- 
-1.6.3.3
-
diff --git a/debian/patches/security/libavcodec/vp3/0003-Make-sure-that-all-memory-allocations-succeed.patch b/debian/patches/security/libavcodec/vp3/0003-Make-sure-that-all-memory-allocations-succeed.patch
deleted file mode 100644
index bc1a7ce..0000000
--- a/debian/patches/security/libavcodec/vp3/0003-Make-sure-that-all-memory-allocations-succeed.patch
+++ /dev/null
@@ -1,51 +0,0 @@
-From 3303bd41acebb0068f1afd09fbb39432d3982620 Mon Sep 17 00:00:00 2001
-From: melanson <melanson at 9553f0bf-9b14-0410-a0b8-cfaf0461ba5b>
-Date: Thu, 24 Sep 2009 06:33:16 +0000
-Subject: [PATCH 3/3] Make sure that all memory allocations succeed.
- Based on 28_theora_malloc_checks.patch from the Google Chrome team.
-
-git-svn-id: file:///var/local/repositories/ffmpeg/trunk@20008 9553f0bf-9b14-0410-a0b8-cfaf0461ba5b
----
- libavcodec/vp3.c |   12 ++++++++++++
- 1 files changed, 12 insertions(+), 0 deletions(-)
-
-diff --git a/libavcodec/vp3.c b/libavcodec/vp3.c
-index 6a6663f..60b84f0 100644
---- a/libavcodec/vp3.c
-+++ b/libavcodec/vp3.c
-@@ -42,6 +42,8 @@
- 
- #define FRAGMENT_PIXELS 8
- 
-+static av_cold int vp3_decode_end(AVCodecContext *avctx);
-+
- typedef struct Coeff {
-     struct Coeff *next;
-     DCTELEM coeff;
-@@ -1755,6 +1757,11 @@ static av_cold int vp3_decode_init(AVCodecContext *avctx)
-     s->coeffs = av_malloc(s->fragment_count * sizeof(Coeff) * 65);
-     s->coded_fragment_list = av_malloc(s->fragment_count * sizeof(int));
-     s->pixel_addresses_initialized = 0;
-+    if (!s->superblock_coding || !s->all_fragments || !s->coeff_counts ||
-+        !s->coeffs || !s->coded_fragment_list) {
-+        vp3_decode_end(avctx);
-+        return -1;
-+    }
- 
-     if (!s->theora_tables)
-     {
-@@ -1860,6 +1867,11 @@ static av_cold int vp3_decode_init(AVCodecContext *avctx)
-     s->superblock_macroblocks = av_malloc(s->superblock_count * 4 * sizeof(int));
-     s->macroblock_fragments = av_malloc(s->macroblock_count * 6 * sizeof(int));
-     s->macroblock_coding = av_malloc(s->macroblock_count + 1);
-+    if (!s->superblock_fragments || !s->superblock_macroblocks ||
-+        !s->macroblock_fragments || !s->macroblock_coding) {
-+        vp3_decode_end(avctx);
-+        return -1;
-+    }
-     init_block_mapping(s);
- 
-     for (i = 0; i < 3; i++) {
--- 
-1.6.3.3
-
diff --git a/debian/patches/security/libavformat/mov/0000-MOV-Support-stz2-Compact-Sample-Size-Box.patch b/debian/patches/security/libavformat/mov/0000-MOV-Support-stz2-Compact-Sample-Size-Box.patch
deleted file mode 100644
index 0eff8ac..0000000
--- a/debian/patches/security/libavformat/mov/0000-MOV-Support-stz2-Compact-Sample-Size-Box.patch
+++ /dev/null
@@ -1,97 +0,0 @@
-From 1e6a8e7b1f40e16f79ff63080d58126e8b52ad2c Mon Sep 17 00:00:00 2001
-From: alexc <alexc at 9553f0bf-9b14-0410-a0b8-cfaf0461ba5b>
-Date: Mon, 16 Mar 2009 16:14:36 +0000
-Subject: [PATCH] MOV: Support stz2 "Compact Sample Size Box"
-
-git-svn-id: file:///var/local/repositories/ffmpeg/trunk@18016 9553f0bf-9b14-0410-a0b8-cfaf0461ba5b
----
- libavformat/mov.c |   38 ++++++++++++++++++++++++++++++++++++--
- 1 files changed, 36 insertions(+), 2 deletions(-)
-
-diff --git a/libavformat/mov.c b/libavformat/mov.c
-index e6ac071..36e4bce 100644
---- a/libavformat/mov.c
-+++ b/libavformat/mov.c
-@@ -33,6 +33,7 @@
- #include "isom.h"
- #include "libavcodec/mpeg4audio.h"
- #include "libavcodec/mpegaudiodata.h"
-+#include "libavcodec/bitstream.h"
- 
- #if CONFIG_ZLIB
- #include <zlib.h>
-@@ -1127,14 +1128,23 @@ static int mov_read_stsz(MOVContext *c, ByteIOContext *pb, MOVAtom atom)
- {
-     AVStream *st = c->fc->streams[c->fc->nb_streams-1];
-     MOVStreamContext *sc = st->priv_data;
--    unsigned int i, entries, sample_size;
-+    unsigned int i, entries, sample_size, field_size, num_bytes;
-+    GetBitContext gb;
-+    unsigned char* buf;
- 
-     get_byte(pb); /* version */
-     get_be24(pb); /* flags */
- 
-+    if (atom.type == MKTAG('s','t','s','z')) {
-     sample_size = get_be32(pb);
-     if (!sc->sample_size) /* do not overwrite value computed in stsd */
-         sc->sample_size = sample_size;
-+    field_size = 32;
-+    } else {
-+        sample_size = 0;
-+        get_be24(pb); /* reserved */
-+        field_size = get_byte(pb);
-+    }
-     entries = get_be32(pb);
- 
-     dprintf(c->fc, "sample_size = %d sample_count = %d\n", sc->sample_size, entries);
-@@ -1143,14 +1153,37 @@ static int mov_read_stsz(MOVContext *c, ByteIOContext *pb, MOVAtom atom)
-     if (sample_size)
-         return 0;
- 
-+    if (field_size != 4 && field_size != 8 && field_size != 16 && field_size != 32) {
-+        av_log(c->fc, AV_LOG_ERROR, "Invalid sample field size %d\n", field_size);
-+        return -1;
-+    }
-+
-     if(entries >= UINT_MAX / sizeof(int))
-         return -1;
-     sc->sample_sizes = av_malloc(entries * sizeof(int));
-     if (!sc->sample_sizes)
-         return AVERROR(ENOMEM);
- 
-+    num_bytes = (entries*field_size+4)>>3;
-+
-+    buf = av_malloc(num_bytes);
-+    if (!buf) {
-+        av_freep(&sc->sample_sizes);
-+        return AVERROR(ENOMEM);
-+    }
-+
-+    if (get_buffer(pb, buf, num_bytes) < num_bytes) {
-+        av_freep(&sc->sample_sizes);
-+        av_free(buf);
-+        return -1;
-+    }
-+
-+    init_get_bits(&gb, buf, 8*num_bytes);
-+
-     for(i=0; i<entries; i++)
--        sc->sample_sizes[i] = get_be32(pb);
-+        sc->sample_sizes[i] = get_bits_long(&gb, field_size);
-+
-+    av_free(buf);
-     return 0;
- }
- 
-@@ -1793,6 +1826,7 @@ static const MOVParseTableEntry mov_default_parse_table[] = {
- { MKTAG('s','t','s','s'), mov_read_stss }, /* sync sample */
- { MKTAG('s','t','s','z'), mov_read_stsz }, /* sample size */
- { MKTAG('s','t','t','s'), mov_read_stts },
-+{ MKTAG('s','t','z','2'), mov_read_stsz }, /* compact sample size */
- { MKTAG('t','k','h','d'), mov_read_tkhd }, /* track header */
- { MKTAG('t','f','h','d'), mov_read_tfhd }, /* track fragment header */
- { MKTAG('t','r','a','k'), mov_read_trak },
--- 
-1.6.3.3
-
diff --git a/debian/patches/security/libavformat/mov/0001-check-entries-against-field_size-potential-malloc-ov.patch b/debian/patches/security/libavformat/mov/0001-check-entries-against-field_size-potential-malloc-ov.patch
deleted file mode 100644
index db8c38e..0000000
--- a/debian/patches/security/libavformat/mov/0001-check-entries-against-field_size-potential-malloc-ov.patch
+++ /dev/null
@@ -1,26 +0,0 @@
-From 59a7d76f26091bb379e41e546c561d6987b2df3b Mon Sep 17 00:00:00 2001
-From: bcoudurier <bcoudurier at 9553f0bf-9b14-0410-a0b8-cfaf0461ba5b>
-Date: Mon, 7 Sep 2009 22:42:51 +0000
-Subject: [PATCH] check entries against field_size, potential malloc overflow in read_stsz, fix #1357
-
-git-svn-id: file:///var/local/repositories/ffmpeg/trunk@19793 9553f0bf-9b14-0410-a0b8-cfaf0461ba5b
----
- libavformat/mov.c |    2 +-
- 1 files changed, 1 insertions(+), 1 deletions(-)
-
-diff --git a/libavformat/mov.c b/libavformat/mov.c
-index 5f11ebe..05fdfa3 100644
---- a/libavformat/mov.c
-+++ b/libavformat/mov.c
-@@ -1256,7 +1256,7 @@ static int mov_read_stsz(MOVContext *c, ByteIOContext *pb, MOVAtom atom)
-         return -1;
-     }
- 
--    if(entries >= UINT_MAX / sizeof(int))
-+    if (entries >= UINT_MAX / sizeof(int) || entries >= (UINT_MAX - 4) / field_size)
-         return -1;
-     sc->sample_sizes = av_malloc(entries * sizeof(int));
-     if (!sc->sample_sizes)
--- 
-1.6.3.3
-
diff --git a/debian/patches/security/libavformat/mov/0002-add-one-missing-check-for-stream-existence-in-read_e.patch b/debian/patches/security/libavformat/mov/0002-add-one-missing-check-for-stream-existence-in-read_e.patch
deleted file mode 100644
index 8fbe248..0000000
--- a/debian/patches/security/libavformat/mov/0002-add-one-missing-check-for-stream-existence-in-read_e.patch
+++ /dev/null
@@ -1,32 +0,0 @@
-From b601744633167a1b37bc171d298872d57522400e Mon Sep 17 00:00:00 2001
-From: bcoudurier <bcoudurier at 9553f0bf-9b14-0410-a0b8-cfaf0461ba5b>
-Date: Mon, 7 Sep 2009 22:36:33 +0000
-Subject: [PATCH] add one missing check for stream existence in read_elst, fix #1364
-
-git-svn-id: file:///var/local/repositories/ffmpeg/trunk@19792 9553f0bf-9b14-0410-a0b8-cfaf0461ba5b
----
- libavformat/mov.c |    6 +++++-
- 1 files changed, 5 insertions(+), 1 deletions(-)
-
-diff --git a/libavformat/mov.c b/libavformat/mov.c
-index 74698e0..5f11ebe 100644
---- a/libavformat/mov.c
-+++ b/libavformat/mov.c
-@@ -1905,9 +1905,13 @@ free_and_return:
- /* edit list atom */
- static int mov_read_elst(MOVContext *c, ByteIOContext *pb, MOVAtom atom)
- {
--    MOVStreamContext *sc = c->fc->streams[c->fc->nb_streams-1]->priv_data;
-+    MOVStreamContext *sc;
-     int i, edit_count;
- 
-+    if (c->fc->nb_streams < 1)
-+        return 0;
-+    sc = c->fc->streams[c->fc->nb_streams-1]->priv_data;
-+
-     get_byte(pb); /* version */
-     get_be24(pb); /* flags */
-     edit_count = get_be32(pb); /* entries */
--- 
-1.6.3.3
-
diff --git a/debian/patches/security/libavformat/mov/0003-check-stream-existence-before-assignment-fix-1222.patch b/debian/patches/security/libavformat/mov/0003-check-stream-existence-before-assignment-fix-1222.patch
deleted file mode 100644
index 1242c16..0000000
--- a/debian/patches/security/libavformat/mov/0003-check-stream-existence-before-assignment-fix-1222.patch
+++ /dev/null
@@ -1,287 +0,0 @@
-From 83b7e34ccb8f63f24d91dfc4dd89a4971f36ce12 Mon Sep 17 00:00:00 2001
-From: bcoudurier <bcoudurier at 9553f0bf-9b14-0410-a0b8-cfaf0461ba5b>
-Date: Wed, 24 Jun 2009 03:38:47 +0000
-Subject: [PATCH] check stream existence before assignment, fix #1222
-
-git-svn-id: file:///var/local/repositories/ffmpeg/trunk@19259 9553f0bf-9b14-0410-a0b8-cfaf0461ba5b
----
- libavformat/mov.c |  136 +++++++++++++++++++++++++++++++++++++++++-----------
- 1 files changed, 107 insertions(+), 29 deletions(-)
-
---- a/libavformat/mov.c
-+++ b/libavformat/mov.c
-@@ -239,10 +239,15 @@ static int mov_read_default(MOVContext *
- 
- static int mov_read_dref(MOVContext *c, ByteIOContext *pb, MOVAtom atom)
- {
--    AVStream *st = c->fc->streams[c->fc->nb_streams-1];
--    MOVStreamContext *sc = st->priv_data;
-+    AVStream *st;
-+    MOVStreamContext *sc;
-     int entries, i, j;
- 
-+    if (c->fc->nb_streams < 1)
-+        return 0;
-+    st = c->fc->streams[c->fc->nb_streams-1];
-+    sc = st->priv_data;
-+
-     get_be32(pb); // version + flags
-     entries = get_be32(pb);
-     if (entries >= UINT_MAX / sizeof(*sc->drefs))
-@@ -382,9 +387,13 @@ static const AVCodecTag mp4_audio_types[
- 
- static int mov_read_esds(MOVContext *c, ByteIOContext *pb, MOVAtom atom)
- {
--    AVStream *st = c->fc->streams[c->fc->nb_streams-1];
-+    AVStream *st;
-     int tag, len;
- 
-+    if (c->fc->nb_streams < 1)
-+        return 0;
-+    st = c->fc->streams[c->fc->nb_streams-1];
-+
-     get_be32(pb); /* version + flags */
-     len = mp4_read_descr(c, pb, &tag);
-     if (tag == MP4ESDescrTag) {
-@@ -441,7 +450,12 @@ static int mov_read_pasp(MOVContext *c, 
- {
-     const int num = get_be32(pb);
-     const int den = get_be32(pb);
--    AVStream * const st = c->fc->streams[c->fc->nb_streams-1];
-+    AVStream *st;
-+
-+    if (c->fc->nb_streams < 1)
-+        return 0;
-+    st = c->fc->streams[c->fc->nb_streams-1];
-+
-     if (den != 0) {
-         if ((st->sample_aspect_ratio.den != 1 || st->sample_aspect_ratio.num) && // default
-             (den != st->sample_aspect_ratio.den || num != st->sample_aspect_ratio.num))
-@@ -495,12 +509,18 @@ static int mov_read_moof(MOVContext *c, 
- 
- static int mov_read_mdhd(MOVContext *c, ByteIOContext *pb, MOVAtom atom)
- {
--    AVStream *st = c->fc->streams[c->fc->nb_streams-1];
--    MOVStreamContext *sc = st->priv_data;
--    int version = get_byte(pb);
-+    AVStream *st;
-+    MOVStreamContext *sc;
-+    int version;
-     char language[4] = {0};
-     unsigned lang;
- 
-+    if (c->fc->nb_streams < 1)
-+        return 0;
-+    st = c->fc->streams[c->fc->nb_streams-1];
-+    sc = st->priv_data;
-+
-+    version = get_byte(pb);
-     if (version > 1)
-         return -1; /* unsupported */
- 
-@@ -562,7 +582,11 @@ static int mov_read_mvhd(MOVContext *c, 
- 
- static int mov_read_smi(MOVContext *c, ByteIOContext *pb, MOVAtom atom)
- {
--    AVStream *st = c->fc->streams[c->fc->nb_streams-1];
-+    AVStream *st;
-+
-+    if (c->fc->nb_streams < 1)
-+        return 0;
-+    st = c->fc->streams[c->fc->nb_streams-1];
- 
-     if((uint64_t)atom.size > (1<<30))
-         return -1;
-@@ -582,9 +606,14 @@ static int mov_read_smi(MOVContext *c, B
- 
- static int mov_read_enda(MOVContext *c, ByteIOContext *pb, MOVAtom atom)
- {
--    AVStream *st = c->fc->streams[c->fc->nb_streams-1];
--    int little_endian = get_be16(pb);
-+    AVStream *st;
-+    int little_endian;
-+
-+    if (c->fc->nb_streams < 1)
-+        return 0;
-+    st = c->fc->streams[c->fc->nb_streams-1];
- 
-+    little_endian = get_be16(pb);
-     dprintf(c->fc, "enda %d\n", little_endian);
-     if (little_endian == 1) {
-         switch (st->codec->codec_id) {
-@@ -634,7 +663,11 @@ static int mov_read_extradata(MOVContext
- 
- static int mov_read_wave(MOVContext *c, ByteIOContext *pb, MOVAtom atom)
- {
--    AVStream *st = c->fc->streams[c->fc->nb_streams-1];
-+    AVStream *st;
-+
-+    if (c->fc->nb_streams < 1)
-+        return 0;
-+    st = c->fc->streams[c->fc->nb_streams-1];
- 
-     if((uint64_t)atom.size > (1<<30))
-         return -1;
-@@ -661,7 +694,11 @@ static int mov_read_wave(MOVContext *c, 
-  */
- static int mov_read_glbl(MOVContext *c, ByteIOContext *pb, MOVAtom atom)
- {
--    AVStream *st = c->fc->streams[c->fc->nb_streams-1];
-+    AVStream *st;
-+
-+    if (c->fc->nb_streams < 1)
-+        return 0;
-+    st = c->fc->streams[c->fc->nb_streams-1];
- 
-     if((uint64_t)atom.size > (1<<30))
-         return -1;
-@@ -677,10 +714,15 @@ static int mov_read_glbl(MOVContext *c, 
- 
- static int mov_read_stco(MOVContext *c, ByteIOContext *pb, MOVAtom atom)
- {
--    AVStream *st = c->fc->streams[c->fc->nb_streams-1];
--    MOVStreamContext *sc = st->priv_data;
-+    AVStream *st;
-+    MOVStreamContext *sc;
-     unsigned int i, entries;
- 
-+    if (c->fc->nb_streams < 1)
-+        return 0;
-+    st = c->fc->streams[c->fc->nb_streams-1];
-+    sc = st->priv_data;
-+
-     get_byte(pb); /* version */
-     get_be24(pb); /* flags */
- 
-@@ -743,10 +785,15 @@ static enum CodecID mov_get_lpcm_codec_i
- 
- static int mov_read_stsd(MOVContext *c, ByteIOContext *pb, MOVAtom atom)
- {
--    AVStream *st = c->fc->streams[c->fc->nb_streams-1];
--    MOVStreamContext *sc = st->priv_data;
-+    AVStream *st;
-+    MOVStreamContext *sc;
-     int j, entries, pseudo_stream_id;
- 
-+    if (c->fc->nb_streams < 1)
-+        return 0;
-+    st = c->fc->streams[c->fc->nb_streams-1];
-+    sc = st->priv_data;
-+
-     get_byte(pb); /* version */
-     get_be24(pb); /* flags */
- 
-@@ -1065,10 +1112,15 @@ static int mov_read_stsd(MOVContext *c, 
- 
- static int mov_read_stsc(MOVContext *c, ByteIOContext *pb, MOVAtom atom)
- {
--    AVStream *st = c->fc->streams[c->fc->nb_streams-1];
--    MOVStreamContext *sc = st->priv_data;
-+    AVStream *st;
-+    MOVStreamContext *sc;
-     unsigned int i, entries;
- 
-+    if (c->fc->nb_streams < 1)
-+        return 0;
-+    st = c->fc->streams[c->fc->nb_streams-1];
-+    sc = st->priv_data;
-+
-     get_byte(pb); /* version */
-     get_be24(pb); /* flags */
- 
-@@ -1093,10 +1145,15 @@ static int mov_read_stsc(MOVContext *c, 
- 
- static int mov_read_stss(MOVContext *c, ByteIOContext *pb, MOVAtom atom)
- {
--    AVStream *st = c->fc->streams[c->fc->nb_streams-1];
--    MOVStreamContext *sc = st->priv_data;
-+    AVStream *st;
-+    MOVStreamContext *sc;
-     unsigned int i, entries;
- 
-+    if (c->fc->nb_streams < 1)
-+        return 0;
-+    st = c->fc->streams[c->fc->nb_streams-1];
-+    sc = st->priv_data;
-+
-     get_byte(pb); /* version */
-     get_be24(pb); /* flags */
- 
-@@ -1120,12 +1177,17 @@ static int mov_read_stss(MOVContext *c, 
- 
- static int mov_read_stsz(MOVContext *c, ByteIOContext *pb, MOVAtom atom)
- {
--    AVStream *st = c->fc->streams[c->fc->nb_streams-1];
--    MOVStreamContext *sc = st->priv_data;
-+    AVStream *st;
-+    MOVStreamContext *sc;
-     unsigned int i, entries, sample_size, field_size, num_bytes;
-     GetBitContext gb;
-     unsigned char* buf;
- 
-+    if (c->fc->nb_streams < 1)
-+        return 0;
-+    st = c->fc->streams[c->fc->nb_streams-1];
-+    sc = st->priv_data;
-+
-     get_byte(pb); /* version */
-     get_be24(pb); /* flags */
- 
-@@ -1183,12 +1245,17 @@ static int mov_read_stsz(MOVContext *c, 
- 
- static int mov_read_stts(MOVContext *c, ByteIOContext *pb, MOVAtom atom)
- {
--    AVStream *st = c->fc->streams[c->fc->nb_streams-1];
--    MOVStreamContext *sc = st->priv_data;
-+    AVStream *st;
-+    MOVStreamContext *sc;
-     unsigned int i, entries;
-     int64_t duration=0;
-     int64_t total_sample_count=0;
- 
-+    if (c->fc->nb_streams < 1)
-+        return 0;
-+    st = c->fc->streams[c->fc->nb_streams-1];
-+    sc = st->priv_data;
-+
-     get_byte(pb); /* version */
-     get_be24(pb); /* flags */
-     entries = get_be32(pb);
-@@ -1227,10 +1294,15 @@ static int mov_read_stts(MOVContext *c, 
- 
- static int mov_read_ctts(MOVContext *c, ByteIOContext *pb, MOVAtom atom)
- {
--    AVStream *st = c->fc->streams[c->fc->nb_streams-1];
--    MOVStreamContext *sc = st->priv_data;
-+    AVStream *st;
-+    MOVStreamContext *sc;
-     unsigned int i, entries;
- 
-+    if (c->fc->nb_streams < 1)
-+        return 0;
-+    st = c->fc->streams[c->fc->nb_streams-1];
-+    sc = st->priv_data;
-+
-     get_byte(pb); /* version */
-     get_be24(pb); /* flags */
-     entries = get_be32(pb);
-@@ -1537,10 +1609,16 @@ static int mov_read_tkhd(MOVContext *c, 
-     int height;
-     int64_t disp_transform[2];
-     int display_matrix[3][2];
--    AVStream *st = c->fc->streams[c->fc->nb_streams-1];
--    MOVStreamContext *sc = st->priv_data;
--    int version = get_byte(pb);
-+    AVStream *st;
-+    MOVStreamContext *sc;
-+    int version;
-+
-+    if (c->fc->nb_streams < 1)
-+        return 0;
-+    st = c->fc->streams[c->fc->nb_streams-1];
-+    sc = st->priv_data;
- 
-+    version = get_byte(pb);
-     get_be24(pb); /* flags */
-     /*
-     MOV_TRACK_ENABLED 0x0001
diff --git a/debian/patches/security/libavformat/oggdec/0001-Disable-parsing-for-ogg-streams-where-no-ogg-header-.patch b/debian/patches/security/libavformat/oggdec/0001-Disable-parsing-for-ogg-streams-where-no-ogg-header-.patch
deleted file mode 100644
index c8f6d64..0000000
--- a/debian/patches/security/libavformat/oggdec/0001-Disable-parsing-for-ogg-streams-where-no-ogg-header-.patch
+++ /dev/null
@@ -1,37 +0,0 @@
-From 7fb2fe280374bcb1c41c2a8e7aa5632d18dc4279 Mon Sep 17 00:00:00 2001
-From: reimar <reimar at 9553f0bf-9b14-0410-a0b8-cfaf0461ba5b>
-Date: Wed, 30 Sep 2009 09:46:48 +0000
-Subject: [PATCH] Disable parsing for ogg streams where no ogg header was found,
- if no header was found the parser was not initialized and thus will
- crash when trying to use it.
-
-git-svn-id: file:///var/local/repositories/ffmpeg/trunk@20093 9553f0bf-9b14-0410-a0b8-cfaf0461ba5b
----
- libavformat/oggdec.c |    5 +++++
- 1 files changed, 5 insertions(+), 0 deletions(-)
-
-diff --git a/libavformat/oggdec.c b/libavformat/oggdec.c
-index 5d42db7..adf0ad0 100644
---- a/libavformat/oggdec.c
-+++ b/libavformat/oggdec.c
-@@ -477,12 +477,17 @@ static int
- ogg_read_header (AVFormatContext * s, AVFormatParameters * ap)
- {
-     struct ogg *ogg = s->priv_data;
-+    int i;
-     ogg->curidx = -1;
-     //linear headers seek from start
-     if (ogg_get_headers (s) < 0){
-         return -1;
-     }
- 
-+    for (i = 0; i < ogg->nstreams; i++)
-+        if (ogg->streams[i].header < 0)
-+            ogg->streams[i].codec = NULL;
-+
-     //linear granulepos seek from end
-     ogg_get_length (s);
- 
--- 
-1.6.3.3
-
diff --git a/debian/patches/security/libavformat/oggparsevorbis/0001-Fix-possible-buffer-over-read-in-vorbis_comment-fix-.patch b/debian/patches/security/libavformat/oggparsevorbis/0001-Fix-possible-buffer-over-read-in-vorbis_comment-fix-.patch
deleted file mode 100644
index 2a8d510..0000000
--- a/debian/patches/security/libavformat/oggparsevorbis/0001-Fix-possible-buffer-over-read-in-vorbis_comment-fix-.patch
+++ /dev/null
@@ -1,54 +0,0 @@
-From fdf622ded070640a924e63a6e630325520d0b567 Mon Sep 17 00:00:00 2001
-From: reimar <reimar at 9553f0bf-9b14-0410-a0b8-cfaf0461ba5b>
-Date: Thu, 24 Sep 2009 15:37:09 +0000
-Subject: [PATCH] Fix possible buffer over-read in vorbis_comment, fix it double to be sure.
- First, make s signed, so that comparisons against end - p will not be made as
- unsigned, making the check incorrectly pass if p is beyond end.
- Also ensure that p will never be > end, so the code is correct also if
- buf is not padded.
-
-git-svn-id: file:///var/local/repositories/ffmpeg/trunk@20014 9553f0bf-9b14-0410-a0b8-cfaf0461ba5b
----
- libavformat/oggparsevorbis.c |    9 +++++----
- 1 files changed, 5 insertions(+), 4 deletions(-)
-
-diff --git a/libavformat/oggparsevorbis.c b/libavformat/oggparsevorbis.c
-index afc3fcb..1ef7365 100644
---- a/libavformat/oggparsevorbis.c
-+++ b/libavformat/oggparsevorbis.c
-@@ -50,27 +50,28 @@ vorbis_comment(AVFormatContext * as, uint8_t *buf, int size)
- {
-     const uint8_t *p = buf;
-     const uint8_t *end = buf + size;
--    unsigned s, n, j;
-+    unsigned n, j;
-+    int s;
- 
-     if (size < 8) /* must have vendor_length and user_comment_list_length */
-         return -1;
- 
-     s = bytestream_get_le32(&p);
- 
--    if (end - p < s)
-+    if (end - p - 4 < s || s < 0)
-         return -1;
- 
-     p += s;
- 
-     n = bytestream_get_le32(&p);
- 
--    while (p < end && n > 0) {
-+    while (end - p >= 4 && n > 0) {
-         const char *t, *v;
-         int tl, vl;
- 
-         s = bytestream_get_le32(&p);
- 
--        if (end - p < s)
-+        if (end - p < s || s < 0)
-             break;
- 
-         t = p;
--- 
-1.6.3.3
-
diff --git a/debian/patches/series b/debian/patches/series
index f225941..a251239 100644
--- a/debian/patches/series
+++ b/debian/patches/series
@@ -1,16 +1,9 @@
-100_kfreebsd
 fix-qtrle-encoding-when-previous-frame-linesize.patch
-aac-regression.patch
 fix-dv-seeking.patch
 fix-constant-quant-encoding.patch
 increase-VOFW-on-x86.patch
-issue1245.patch
-build-pic-on-ppc.patch
-enable-versioning.patch
 use-normal-check_func-test-for-math-functions.patch
 wmapro-backport.patch
-cpu-runtime-detect.patch
-cpu-runtime-detect-libswscale.patch
 900_doxyfile
 901-fix-misc-typos.patch
 # fpic-ftbfs-fix.patch
@@ -40,43 +33,3 @@ neon/0019-ARM-NEON-optimised-MDCT.patch
 neon/0020-ARM-remove-unnecessary-.fpu-neon-directives.patch
 neon/0021-ARM-check-for-VFP-register-arguments.patch
 
-#vorbis_dec security backports
-security/libavcodec/vorbis_dec/0001-Check-dimensions-against-0-too.patch
-security/libavcodec/vorbis_dec/0002-typo.patch
-security/libavcodec/vorbis_dec/0003-Sanity-checks-for-magnitude-and-angle.patch
-security/libavcodec/vorbis_dec/0004-Fix-book_idx-check.patch
-security/libavcodec/vorbis_dec/0005-Check-classbook-value.patch
-security/libavcodec/vorbis_dec/0006-Add-checks-for-per-packet-mode-indexes-and-per-heade.patch
-security/libavcodec/vorbis_dec/0007-Check-masterbook-index-and-subclass-book-index.patch
-security/libavcodec/vorbis_dec/0008-Check-res_setup-books.patch
-security/libavcodec/vorbis_dec/0009-Check-begin-end-partition_size.patch
-security/libavcodec/vorbis_dec/0010-Make-error-return-sign-consistent.patch
-security/libavcodec/vorbis_dec/0011-Check-submap-indexes.patch
-security/libavcodec/vorbis_dec/0012-Fix-format-string-to-match-the-types-printed.patch
-
-# vorbis security backports
-security/libavformat/oggparsevorbis/0001-Fix-possible-buffer-over-read-in-vorbis_comment-fix-.patch
-
-# libavcodec vp3 fixes
-security/libavcodec/vp3/0003-Make-sure-that-all-memory-allocations-succeed.patch
-security/libavcodec/vp3/0001-Fix-init_get_bits-buffer-size.patch
-
-# ffv1 fix
-security/libavcodec/ffv1/0001-Fix-a-possibly-exploitable-buffer-overflow.patch
-
-# mpegaudiodec backports
-security/libavcodec/mpegaudiodec/0001-check-data_size-in-decode_frame.patch
-security/libavcodec/mpegaudiodec/0002-Check-data_size-in-decode_frame_mp3on4.patch
-security/libavcodec/mpegaudiodec/0003-Set-data_size-to-0-to-avoid-having-it-uninitialized.patch
-
-# h264 security backports
-security/libavcodec/h264/0001-Check-num_units_in_tick-time_scale-to-be-valid-and-w.patch
-
-# mov security backports
-security/libavformat/mov/0000-MOV-Support-stz2-Compact-Sample-Size-Box.patch
-security/libavformat/mov/0001-check-entries-against-field_size-potential-malloc-ov.patch
-security/libavformat/mov/0002-add-one-missing-check-for-stream-existence-in-read_e.patch
-security/libavformat/mov/0003-check-stream-existence-before-assignment-fix-1222.patch
-
-# oggedc backports
-security/libavformat/oggdec/0001-Disable-parsing-for-ogg-streams-where-no-ogg-header-.patch

-- 
FFmpeg packaging



More information about the pkg-multimedia-commits mailing list