* ijksdl_fourcc.h
*****************************************************************************
*
* Copyright (c) 2013 Bilibili
* copyright (c) 2013 Zhang Rui <bbcallen@gmail.com>
*
* This file is part of ijkPlayer.
*
* ijkPlayer is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* ijkPlayer is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with ijkPlayer; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
#ifndef IJKSDL__IJKSDL_FOURCC_H
#define IJKSDL__IJKSDL_FOURCC_H
#include "ijksdl_stdinc.h"
#include "ijksdl_endian.h"
#if SDL_BYTEORDER == SDL_LIL_ENDIAN
# define SDL_FOURCC(a, b, c, d) \
(((uint32_t)a) | (((uint32_t)b) << 8) | (((uint32_t)c) << 16) | (((uint32_t)d) << 24))
# define SDL_TWOCC(a, b) \
((uint16_t)(a) | ((uint16_t)(b) << 8))
#else
# define SDL_FOURCC(a, b, c, d) \
(((uint32_t)d) | (((uint32_t)c) << 8) | (((uint32_t)b) << 16) | (((uint32_t)a) << 24))
# define SDL_TWOCC( a, b ) \
((uint16_t)(b) | ((uint16_t)(a) << 8))
#endif
* http://www.webartz.com/fourcc/indexyuv.htm
* http://www.neuro.sfc.keio.ac.jp/~aly/polygon/info/color-space-faq.html
* http://www.fourcc.org/yuv.php
*/
#define SDL_FCC_YV12 SDL_FOURCC('Y', 'V', '1', '2')
#define SDL_FCC_IYUV SDL_FOURCC('I', 'Y', 'U', 'V')
#define SDL_FCC_I420 SDL_FOURCC('I', '4', '2', '0')
#define SDL_FCC_I444P10LE SDL_FOURCC('I', '4', 'A', 'L')
#define SDL_FCC_YUV2 SDL_FOURCC('Y', 'U', 'V', '2')
#define SDL_FCC_UYVY SDL_FOURCC('U', 'Y', 'V', 'Y')
#define SDL_FCC_YVYU SDL_FOURCC('Y', 'V', 'Y', 'U')
#define SDL_FCC_NV12 SDL_FOURCC('N', 'V', '1', '2')
#define SDL_FCC_RV16 SDL_FOURCC('R', 'V', '1', '6')
#define SDL_FCC_RV24 SDL_FOURCC('R', 'V', '2', '4')
#define SDL_FCC_RV32 SDL_FOURCC('R', 'V', '3', '2')
#define SDL_FCC__AMC SDL_FOURCC('_', 'A', 'M', 'C')
#define SDL_FCC__VTB SDL_FOURCC('_', 'V', 'T', 'B')
#define SDL_FCC__GLES2 SDL_FOURCC('_', 'E', 'S', '2')
#define SDL_FCC_UNDF SDL_FOURCC('U', 'N', 'D', 'F')
enum {
IJK_AV_PIX_FMT__START = 10000,
IJK_AV_PIX_FMT__ANDROID_MEDIACODEC,
IJK_AV_PIX_FMT__VIDEO_TOOLBOX,
};
#endif