Bug#535200: gstffmpegcodecmap.c: fix to RGB24->I420 wrong color / endian problem

Harry Coin harrycoin at aol.com
Tue Jun 30 17:05:04 UTC 2009


Package: gstreamer0.10-plugins-base
Version: 0.10.19-2
Severity: important

A webcam producing RGB24 was verified to produce accurate snapshots.  However
outputting through ffmpegcolorspace to xvimagesink suffered wrong colors / bad
colors , specifically blue / red reversal as it gets converted to I420
colorspace.   For instance:

gst-launch-0.10 -v v4lsrc device=/dev/video1 ! 
video/x-raw-rgb,width=640,height=480,bpp=24 !  ffmpegcolorspace ! xvimagesink 

on little endian machines would always produce accurate images except for red /
blue being swapped.  I noticed this first on Debian lenny and also in Debian
testing / squeeze

This fix corrects the issue.

--- gstffmpegcodecmap.c 2009-04-01 06:49:11.000000000 -0500
+++ /home/library/dvl/slidesaver/gstffmpegcodecmap.c    2009-06-30
11:21:06.000000000 -0500
@@ -695,7 +695,11 @@
             }
             break;
           case 24:
+#if (G_BYTE_ORDER == G_BIG_ENDIAN)
             if (rmask == 0x0000FF)
+#else
+            if (rmask == 0xFF0000)
+#endif
               context->pix_fmt = PIX_FMT_BGR24;
             else
               context->pix_fmt = PIX_FMT_RGB24;


-- System Information:
Debian Release: 5.0.1
  APT prefers stable
  APT policy: (500, 'stable')
Architecture: i386 (i686)

Kernel: Linux 2.6.26-2-686 (SMP w/2 CPU cores)
Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/bash

Versions of packages gstreamer0.10-plugins-base depends on:
ii  libc6                    2.7-18          GNU C Library: Shared libraries
ii  libcdparanoia0           3.10.2+debian-5 audio extraction tool for sampling
ii  libglib2.0-0             2.16.6-1+lenny1 The GLib library of C routines
ii  libgstreamer-plugins-bas 0.10.19-2       GStreamer libraries from the "base
ii  libgstreamer0.10-0       0.10.19-3       Core GStreamer libraries and eleme
ii  libogg0                  1.1.3-4         Ogg Bitstream Library
ii  liboil0.3                0.3.15-1        Library of Optimized Inner Loops
ii  libtheora0               1.0~beta3-1     The Theora Video Compression Codec
ii  libvisual-0.4-0          0.4.0-2.1       Audio visualization framework
ii  libvorbis0a              1.2.0.dfsg-3.1  The Vorbis General Audio Compressi
ii  libvorbisenc2            1.2.0.dfsg-3.1  The Vorbis General Audio Compressi
ii  libx11-6                 2:1.1.5-2       X11 client-side library
ii  libxml2                  2.6.32.dfsg-5   GNOME XML library
ii  libxv1                   2:1.0.4-1       X11 Video extension library

gstreamer0.10-plugins-base recommends no packages.

gstreamer0.10-plugins-base suggests no packages.

-- no debconf information





More information about the Pkg-gstreamer-maintainers mailing list