/*
Simple DirectMedia Layer
Copyright (C) 1997-2014 Sam Lantinga <slouken@libsdl.org>
This software is provided 'as-is', without any express or implied
warranty. In no event will the authors be held liable for any damages
arising from the use of this software.
Permission is granted to anyone to use this software for any purpose,
including commercial applications, and to alter it and redistribute it
freely, subject to the following restrictions:
1. The origin of this software must not be misrepresented; you must not
claim that you wrote the original software. If you use this software
in a product, an acknowledgment in the product documentation would be
appreciated but is not required.
2. Altered source versions must be plainly marked as such, and must not be
misrepresented as being the original software.
3. This notice may not be removed or altered from any source distribution.
*/
/**
* \file SDL_opengl.h
*
* This is a simple file to encapsulate the OpenGL API headers.
*/
#ifndef _SDL_opengl_h
#define _SDL_opengl_h
#include "SDL_config.h"
#ifndef __IPHONEOS__
#ifdef __WIN32__
#define WIN32_LEAN_AND_MEAN
#ifndef NOMINMAX
#define NOMINMAX /* Don't defined min() and max() */
#endif
#include <windows.h>
#endif
#ifdef __glext_h_
/* Someone has already included glext.h */
#define NO_SDL_GLEXT
#endif
#ifndef NO_SDL_GLEXT
#define __glext_h_ /* Don't let gl.h include glext.h */
#endif
#if defined(__MACOSX__)
#include <OpenGL/gl.h> /* Header File For The OpenGL Library */
#define __X_GL_H
#else
#include <GL/gl.h> /* Header File For The OpenGL Library */
#endif
#ifndef NO_SDL_GLEXT
#undef __glext_h_
#endif
/**
* \file SDL_opengl.h
*
* This file is included because glext.h is not available on some systems.
* If you don't want this version included, simply define ::NO_SDL_GLEXT.
*
* The latest version is available from:
* http://www.opengl.org/registry/
*/
/**
* \def NO_SDL_GLEXT
*
* Define this if you have your own version of glext.h and want to disable the
* version included in SDL_opengl.h.
*/
#if !defined(NO_SDL_GLEXT) && !defined(GL_GLEXT_LEGACY)
#ifndef __glext_h_
#define __glext_h_
#ifdef __cplusplus
extern "C" {
#endif
/*
** Copyright (c) 2007-2010 The Khronos Group Inc.
**
** Permission is hereby granted, free of charge, to any person obtaining a
** copy of this software and/or associated documentation files (the
** "Materials"), to deal in the Materials without restriction, including
** without limitation the rights to use, copy, modify, merge, publish,
** distribute, sublicense, and/or sell copies of the Materials, and to
** permit persons to whom the Materials are furnished to do so, subject to
** the following conditions:
**
** The above copyright notice and this permission notice shall be included
** in all copies or substantial portions of the Materials.
**
** THE MATERIALS ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
** EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
** MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
** IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
** CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
** TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
** MATERIALS OR THE USE OR OTHER DEALINGS IN THE MATERIALS.
*/
/* Header file version number, required by OpenGL ABI for Linux */
/* glext.h last updated $Date: 2010-08-03 01:30:25 -0700 (Tue, 03 Aug 2010) $ */
/* Current version at http://www.opengl.org/registry/ */
#define GL_GLEXT_VERSION 64
/* Function declaration macros - to move into glplatform.h */
#if defined(_WIN32) && !defined(APIENTRY) && !defined(__CYGWIN__) && !defined(__SCITECH_SNAP__)
#define WIN32_LEAN_AND_MEAN 1
#include <windows.h>
#endif
#ifndef APIENTRY
#define APIENTRY
#endif
#ifndef APIENTRYP
#define APIENTRYP APIENTRY *
#endif
#ifndef GLAPI
#define GLAPI extern
#endif
/*************************************************************/
#ifndef GL_VERSION_1_2
#define GL_UNSIGNED_BYTE_3_3_2 0x8032
#define GL_UNSIGNED_SHORT_4_4_4_4 0x8033
#define GL_UNSIGNED_SHORT_5_5_5_1 0x8034
#define GL_UNSIGNED_INT_8_8_8_8 0x8035
#define GL_UNSIGNED_INT_10_10_10_2 0x8036
#define GL_TEXTURE_BINDING_3D 0x806A
#define GL_PACK_SKIP_IMAGES 0x806B
#define GL_PACK_IMAGE_HEIGHT 0x806C
#define GL_UNPACK_SKIP_IMAGES 0x806D
#define GL_UNPACK_IMAGE_HEIGHT 0x806E
#define GL_TEXTURE_3D 0x806F
#define GL_PROXY_TEXTURE_3D 0x8070
#define GL_TEXTURE_DEPTH 0x8071
#define GL_TEXTURE_WRAP_R 0x8072
#define GL_MAX_3D_TEXTURE_SIZE 0x8073
#define GL_UNSIGNED_BYTE_2_3_3_REV 0x8362
#define GL_UNSIGNED_SHORT_5_6_5 0x8363
#define GL_UNSIGNED_SHORT_5_6_5_REV 0x8364
#define GL_UNSIGNED_SHORT_4_4_4_4_REV 0x8365
#define GL_UNSIGNED_SHORT_1_5_5_5_REV 0x8366
#define GL_UNSIGNED_INT_8_8_8_8_REV 0x8367
#define GL_UNSIGNED_INT_2_10_10_10_REV 0x8368
#define GL_BGR 0x80E0
#define GL_BGRA 0x80E1
#define GL_MAX_ELEMENTS_VERTICES 0x80E8
#define GL_MAX_ELEMENTS_INDICES 0x80E9
#define GL_CLAMP_TO_EDGE 0x812F
#define GL_TEXTURE_MIN_LOD 0x813A
#define GL_TEXTURE_MAX_LOD 0x813B
#define GL_TEXTURE_BASE_LEVEL 0x813C
#define GL_TEXTURE_MAX_LEVEL 0x813D
#define GL_SMOOTH_POINT_SIZE_RANGE 0x0B12
#define GL_SMOOTH_POINT_SIZE_GRANULARITY 0x0B13
#define GL_SMOOTH_LINE_WIDTH_RANGE 0x0B22
#define GL_SMOOTH_LINE_WIDTH_GRANULARITY 0x0B23
#define GL_ALIASED_LINE_WIDTH_RANGE 0x846E
#endif
#ifndef GL_VERSION_1_2_DEPRECATED
#define GL_RESCALE_NORMAL 0x803A
#define GL_LIGHT_MODEL_COLOR_CONTROL 0x81F8
#define GL_SINGLE_COLOR 0x81F9
#define GL_SEPARATE_SPECULAR_COLOR 0x81FA
#define GL_ALIASED_POINT_SIZE_RANGE 0x846D
#endif
#ifndef GL_ARB_imaging
#define GL_CONSTANT_COLOR 0x8001
#define GL_ONE_MINUS_CONSTANT_COLOR 0x8002
#define GL_CONSTANT_ALPHA 0x8003
#define GL_ONE_MINUS_CONSTANT_ALPHA 0x8004
#define GL_BLEND_COLOR 0x8005
#define GL_FUNC_ADD 0x8006
#define GL_MIN 0x8007
#define GL_MAX 0x8008
#define GL_BLEND_EQUATION 0x8009
#define GL_FUNC_SUBTRACT 0x800A
#define GL_FUNC_REVERSE_SUBTRACT 0x800B
#endif
#ifndef GL_ARB_imaging_DEPRECATED
#define GL_CONVOLUTION_1D 0x8010
#define GL_CONVOLUTION_2D 0x8011
#define GL_SEPARABLE_2D 0x8012
#define GL_CONVOLUTION_BORDER_MODE 0x8013
#define GL_CONVOLUTION_FILTER_SCALE 0x8014
#define GL_CONVOLUTION_FILTER_BIAS 0x8015
#define GL_REDUCE 0x8016
#define GL_CONVOLUTION_FORMAT 0x8017
#define GL_CONVOLUTION_WIDTH 0x8018
#define GL_CONVOLUTION_HEIGHT 0x8019
#define GL_MAX_CONVOLUTION_WIDTH 0x801A
#define GL_MAX_CONVOLUTION_HEIGHT 0x801B
#define GL_POST_CONVOLUTION_RED_SCALE 0x801C
#define GL_POST_CONVOLUTION_GREEN_SCALE 0x801D
#define GL_POST_CONVOLUTION_BLUE_SCALE 0x801E
#define GL_POST_CONVOLUTION_ALPHA_SCALE 0x801F
#define GL_POST_CONVOLUTION_RED_BIAS 0x8020
#define GL_POST_CONVOLUTION_GREEN_BIAS 0x8021
#define GL_POST_CONVOLUTION_BLUE_BIAS 0x8022
#define GL_POST_CONVOLUTION_ALPHA_BIAS 0x8023
#define GL_HISTOGRAM
没有合适的资源?快使用搜索试试~ 我知道了~
最简单的基于FFMPEG+SDL的视频播放器 2.5
共884个文件
h:739个
lib:41个
dll:38个
5星 · 超过95%的资源 需积分: 0 2.8k 下载量 128 浏览量
2015-07-22
21:19:57
上传
评论 27
收藏 67.11MB ZIP 举报
温馨提示
本程序实现了视频文件的解码和显示(支持HEVC,H.264,MPEG2等)。 是最简单的FFmpeg视频解码方面的教程。 通过学习本例子可以了解FFmpeg的解码流程。 项目包含6个工程: simplest_ffmpeg_player:标准版,FFmpeg学习的开始。 simplest_ffmpeg_player_su:SU(SDL Update)版,加入了简单的SDL的Event。 simplest_ffmpeg_decoder:一个包含了封装格式处理功能的解码器。使用了libavcodec和libavformat。 simplest_ffmpeg_decoder_pure:一个纯净的解码器。只使用libavcodec(没有使用libavformat)。 simplest_video_play_sdl2:使用SDL2播放YUV的例子。 simplest_ffmpeg_helloworld:输出FFmpeg类库的信息。
资源推荐
资源详情
资源评论
收起资源包目录
最简单的基于FFMPEG+SDL的视频播放器 2.5 (884个子文件)
compile_cl.bat 695B
compile_cl.bat 670B
compile_cl.bat 628B
compile_cl.bat 587B
compile_cl.bat 573B
simplest_ffmpeg_decoder_pure.cpp 7KB
simplest_ffmpeg_player_su.cpp 7KB
simplest_ffmpeg_player.cpp 7KB
simplest_ffmpeg_decoder.cpp 4KB
simplest_video_play_sdl2.cpp 4KB
simplest_ffmpeg_helloworld.cpp 4KB
avcodec-55.dll 18.06MB
avcodec-55.dll 18.06MB
avcodec-55.dll 18.06MB
avcodec-55.dll 18.06MB
avcodec-55.dll 18.06MB
avformat-55.dll 5.1MB
avformat-55.dll 5.1MB
avformat-55.dll 5.1MB
avformat-55.dll 5.1MB
avfilter-4.dll 1.94MB
avfilter-4.dll 1.94MB
avfilter-4.dll 1.94MB
avfilter-4.dll 1.94MB
avdevice-55.dll 1.28MB
avdevice-55.dll 1.28MB
avdevice-55.dll 1.28MB
avdevice-55.dll 1.28MB
SDL2.dll 984KB
SDL2.dll 984KB
SDL2.dll 984KB
swscale-2.dll 424KB
swscale-2.dll 424KB
swscale-2.dll 424KB
swscale-2.dll 424KB
swscale-2.dll 424KB
avutil-52.dll 409KB
avutil-52.dll 409KB
avutil-52.dll 409KB
avutil-52.dll 409KB
avutil-52.dll 409KB
swresample-0.dll 270KB
swresample-0.dll 270KB
swresample-0.dll 270KB
swresample-0.dll 270KB
postproc-52.dll 119KB
postproc-52.dll 119KB
postproc-52.dll 119KB
postproc-52.dll 119KB
simplest_ffmpeg_player_su.vcxproj.filters 1KB
simplest_video_play_sdl2.vcxproj.filters 1KB
simplest_ffmpeg_player.vcxproj.filters 1KB
simplest_ffmpeg_decoder_pure.vcxproj.filters 966B
simplest_ffmpeg_helloworld.vcxproj.filters 964B
simplest_ffmpeg_decoder.vcxproj.filters 961B
cuc_ieschool.flv 912KB
.gitignore 75B
.gitignore 75B
.gitignore 75B
.gitignore 75B
.gitignore 75B
.gitignore 75B
.gitignore 34B
SDL_opengl.h 633KB
SDL_opengl.h 633KB
SDL_opengl.h 633KB
SDL_opengl.h 633KB
SDL_opengl.h 633KB
avcodec.h 176KB
avcodec.h 176KB
avcodec.h 176KB
avcodec.h 176KB
avcodec.h 176KB
SDL_opengles2.h 131KB
SDL_opengles2.h 131KB
SDL_opengles2.h 131KB
SDL_opengles2.h 131KB
SDL_opengles2.h 131KB
avformat.h 99KB
avformat.h 99KB
avformat.h 99KB
avformat.h 99KB
avfilter.h 57KB
avfilter.h 57KB
avfilter.h 57KB
avfilter.h 57KB
SDL_haptic.h 39KB
SDL_haptic.h 39KB
SDL_haptic.h 39KB
SDL_haptic.h 39KB
SDL_haptic.h 39KB
opt.h 35KB
opt.h 35KB
opt.h 35KB
opt.h 35KB
opt.h 35KB
SDL_video.h 33KB
SDL_video.h 33KB
SDL_video.h 33KB
SDL_video.h 33KB
共 884 条
- 1
- 2
- 3
- 4
- 5
- 6
- 9
雷霄骅
- 粉丝: 4w+
- 资源: 141
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
- 1
- 2
- 3
- 4
- 5
- 6
前往页