Simple Directmedia Layer
Go to file
Sam Lantinga e8f8e6727a Fixed bug 2595 - Padded, non-contiguous YUV does not display correctly using OpenGL ES 2.0 renderer
Alvin

The new OpenGL ES 2.0 YUV Texture support does not correctly display padded, non-contiguous YUV data.

I am using SDL2 95bd3d33482e (as provided by 'hg id --id') from Mercurial.

The YUV data I am using is provided by the FFMPEG family of libraries. According to FFMPEG's documentation, "The linesize [pitch] may be larger than the size of usable data -- there may be extra padding present for performance reasons."

The dimensions of the video file that I am using are 480x360. What I get from FFMPEG is a Ypitch of 512, and Upitch and Vpitch are both 256.

When I pack new Y, U and V buffers with only the "usable" data (Ypitch is 480 and Upitch and Vpitch are both 240), and use those new buffers, the image is display correctly.

It appears that the Ypitch, Upitch and Vpitch parameters are not being used by SDL_UpdateYUVTexture().

I use SDL_PIXELFORMAT_YV12 for my YUV texture, however, the same results are seen when I use SDL_PIXELFORMAT_IYUV.

Not sure if this is related or not, but when I render the YUV texture (padded and unpadded) to a RGB24 texture, the resulting image is greyscale (or could by just the Y channel).

The URL field for this bug entry is set to my email (SDL mailing list archive) which includes an example image of what I see when rendering padded, non-contiguous YUV data.
2014-06-21 12:38:46 -07:00
VisualC Fixed Visual Studio 2008 projects 2014-06-15 10:42:28 -07:00
VisualC-WinRT WinRT: made Win[Phone] 8.1 projects be structured like their 8.0 counterparts 2014-05-06 20:31:10 -04:00
Xcode Added OpenGL ES headers to public headers 2014-06-21 11:42:46 -07:00
Xcode-iOS Updated iOS deployment target to iOS 5.1 2014-05-10 12:34:16 -07:00
acinclude Added a README file regarding WinRT support 2014-04-09 21:29:19 -04:00
android-project Fixed bug 2558 - Missing FINGERUP in Android 2014-06-15 19:32:39 -07:00
build-scripts Removed references to Raspberry Pi 2014-06-21 11:16:26 -07:00
cmake Added a README file regarding WinRT support 2014-04-09 21:29:19 -04:00
debian Added a README file regarding WinRT support 2014-04-09 21:29:19 -04:00
include commit 9e211e646f9d51dc1372c9f3c8f47a78caf4f2a5 2014-06-21 11:24:06 -07:00
premake Added a README file regarding WinRT support 2014-04-09 21:29:19 -04:00
src Fixed bug 2595 - Padded, non-contiguous YUV does not display correctly using OpenGL ES 2.0 renderer 2014-06-21 12:38:46 -07:00
test commit 9e211e646f9d51dc1372c9f3c8f47a78caf4f2a5 2014-06-21 11:24:06 -07:00
visualtest Added a README file regarding WinRT support 2014-04-09 21:29:19 -04:00
.hgignore Ignore Visual Studio test data files 2014-06-08 11:59:36 -07:00
Android.mk Fixed Android error on static lib build, if relative NDK_MODULE_PATH used 2014-06-15 13:01:10 -07:00
BUGS.txt Added a README file regarding WinRT support 2014-04-09 21:29:19 -04:00
CMakeLists.txt Add suport for "make uninstall" to cmake. 2014-06-16 10:58:09 -03:00
COPYING.txt Added a README file regarding WinRT support 2014-04-09 21:29:19 -04:00
CREDITS.txt Added a README file regarding WinRT support 2014-04-09 21:29:19 -04:00
INSTALL.txt Added a README file regarding WinRT support 2014-04-09 21:29:19 -04:00
Makefile.in Make autoconf-based build quiet by default. 2014-06-19 00:40:09 -04:00
Makefile.minimal Added a README file regarding WinRT support 2014-04-09 21:29:19 -04:00
Makefile.pandora Added a README file regarding WinRT support 2014-04-09 21:29:19 -04:00
Makefile.psp Added a README file regarding WinRT support 2014-04-09 21:29:19 -04:00
Makefile.wiz Added a README file regarding WinRT support 2014-04-09 21:29:19 -04:00
README-SDL.txt Added a README file regarding WinRT support 2014-04-09 21:29:19 -04:00
README-android.txt Added a README file regarding WinRT support 2014-04-09 21:29:19 -04:00
README-cmake.txt Added a README file regarding WinRT support 2014-04-09 21:29:19 -04:00
README-directfb.txt Added a README file regarding WinRT support 2014-04-09 21:29:19 -04:00
README-dynapi.txt Minor change to a README to test Mercurial server. 2014-04-12 17:40:55 -04:00
README-gesture.txt Added a README file regarding WinRT support 2014-04-09 21:29:19 -04:00
README-hg.txt Added a README file regarding WinRT support 2014-04-09 21:29:19 -04:00
README-ios.txt Updated iOS deployment target to iOS 5.1 2014-05-10 12:34:16 -07:00
README-linux.txt Corrected package list for Wayland/Mir support (was missing libxkbcommon-dev). 2014-06-05 01:55:52 -04:00
README-macosx.txt Added a README file regarding WinRT support 2014-04-09 21:29:19 -04:00
README-nacl.txt Initialize nacl_io, removes SDL_NaClMount/Umount 2014-06-20 10:59:51 -03:00
README-pandora.txt Added a README file regarding WinRT support 2014-04-09 21:29:19 -04:00
README-platforms.txt Added NaCl to the supported platforms list 2014-06-21 11:50:18 -07:00
README-porting.txt Added a README file regarding WinRT support 2014-04-09 21:29:19 -04:00
README-psp.txt Added a README file regarding WinRT support 2014-04-09 21:29:19 -04:00
README-raspberrypi.txt Added a README file regarding WinRT support 2014-04-09 21:29:19 -04:00
README-touch.txt Added a README file regarding WinRT support 2014-04-09 21:29:19 -04:00
README-wince.txt Added a README file regarding WinRT support 2014-04-09 21:29:19 -04:00
README-windows.txt Added a README file regarding WinRT support 2014-04-09 21:29:19 -04:00
README-winrt.txt Added a README file regarding WinRT support 2014-04-09 21:29:19 -04:00
README.txt Added a README file regarding WinRT support 2014-04-09 21:29:19 -04:00
SDL2.spec.in Added a README file regarding WinRT support 2014-04-09 21:29:19 -04:00
TODO.txt Added a README file regarding WinRT support 2014-04-09 21:29:19 -04:00
VisualC.html Fixed nesting of HTML elements in documentation. 2014-06-09 17:37:59 +02:00
WhatsNew.txt Chrome's Native Client backend implementation 2014-06-06 15:45:59 -03:00
autogen.sh Added a README file regarding WinRT support 2014-04-09 21:29:19 -04:00
cmake_uninstall.cmake.in Add suport for "make uninstall" to cmake. 2014-06-16 10:58:09 -03:00
configure Make autoconf-based build quiet by default. 2014-06-19 00:40:09 -04:00
configure.in Make autoconf-based build quiet by default. 2014-06-19 00:40:09 -04:00
sdl2-config.in Added a README file regarding WinRT support 2014-04-09 21:29:19 -04:00
sdl2.m4 Added a README file regarding WinRT support 2014-04-09 21:29:19 -04:00
sdl2.pc.in Added a README file regarding WinRT support 2014-04-09 21:29:19 -04:00

README.txt

                         Simple DirectMedia Layer

                                  (SDL)

                                Version 2.0

---
http://www.libsdl.org/

Simple DirectMedia Layer is a cross-platform development library designed
to provide low level access to audio, keyboard, mouse, joystick, and graphics
hardware via OpenGL and Direct3D. It is used by video playback software,
emulators, and popular games including Valve's award winning catalog
and many Humble Bundle games.

SDL officially supports Windows, Mac OS X, Linux, iOS, and Android.
Support for other platforms may be found in the source code.

SDL is written in C, works natively with C++, and there are bindings 
available for several other languages, including C# and Python.

This library is distributed under the zlib license, which can be found
in the file "COPYING.txt".

The best way to learn how to use SDL is to check out the header files in
the "include" subdirectory and the programs in the "test" subdirectory.
The header files and test programs are well commented and always up to date.
More documentation and FAQs are available online at:
	http://wiki.libsdl.org/

If you need help with the library, or just want to discuss SDL related
issues, you can join the developers mailing list:
	http://www.libsdl.org/mailing-list.php

If you want to report bugs or contribute patches, please submit them to
bugzilla:
    http://bugzilla.libsdl.org/

Enjoy!
	Sam Lantinga				(slouken@libsdl.org)