雷神FFmpeg + SDL 的视频播放器修正版
雷神(雷霄桦)在FFmpeg + SDL 的视频播放器的代码中清晰地展示了作为一个播放器代码的思路。非常适合初学者学习借鉴。
雷神在“广播电视工程大二的暑假小学期的课程设计”中,课程内容为《基于 FFmpeg + SDL 的视频播放器的制作》,其中有个示例代码,代码的工程名为simplest_video_play_sdl2。我在vs2017中打开编译此代码时出现了问题,在这里把我解决问题后的代码分享出来,以供大家学习借鉴。
在vs2017下载入雷神的上述代码,编译时有如下的报错:
error LNK2019: 无法解析的外部符号 __imp__fprintf,该符号在函数 _ShowError 中被引用
error LNK2019: 无法解析的外部符号 __imp____iob_func,该符号在函数 _ShowError 中被引用
\代码\(4) SDL视频显示-进阶\Debug\simplest_video_play_sdl2.exe : fatal error LNK1120: 2 个无法解析的外部命令
1>已完成生成项目“simplest_video_play_sdl2.vcxproj”的操作 - 失败。
解决方法是使用{*stdin,*stdout,*stderr}数组自己定义__iob_func(),代码如下:
extern "C" { FILE __iob_func[3] = { *stdin,*stdout,*stderr }; }
然而,这只解决了无法解析的外部符号 __imp____iob_func的问题。
要想解决__imp__fprintf的问题,还需要在项目->链接器->附加依赖项中加上如下的LIB文件引入:legacy_stdio_definitions.lib
·下载程序的完整代码
https://download.csdn.net/download/wzfree/12766395
雷神FFmpeg + SDL 的视频播放器修正版相关推荐
- 最简单的基于FFMPEG+SDL的视频播放器 ver2 (采用SDL2.0)
===================================================== 最简单的基于FFmpeg的视频播放器系列文章列表: 100行代码实现最简单的基于FFMPEG ...
- 最简单的基于FFMPEG+SDL的视频播放器:拆分-解码器和播放器
===================================================== 最简单的基于FFmpeg的视频播放器系列文章列表: 100行代码实现最简单的基于FFMPEG ...
- 100行代码实现最简单的基于FFMPEG+SDL的视频播放器(SDL1.x)
===================================================== 最简单的基于FFmpeg的视频播放器系列文章列表: 100行代码实现最简单的基于FFMPEG ...
- 《基于 FFmpeg + SDL 的视频播放器的制作》课程的视频
这两天开始带广播电视工程大二的暑假小学期的课程设计了.本次小学期课程内容为<基于 FFmpeg + SDL 的视频播放器的制作>,其中主要讲述了视音频开发的入门知识.由于感觉本课程的内容不 ...
- 基于 FFmpeg SDL 的视频播放器的制作 课程的视频
分享一下我老师大神的人工智能教程!零基础,通俗易懂!http://blog.csdn.net/jiangjunshow 也欢迎大家转载本篇文章.分享知识,造福人民,实现我们中华民族伟大复兴! 这两天开 ...
- 100行代码实现最简单的基于FFMPEG+SDL的视频播放器
简介 FFMPEG工程浩大,可以参考的书籍又不是很多,因此很多刚学习FFMPEG的人常常感觉到无从下手.我刚接触FFMPEG的时候也感觉不知从何学起. 因此我把自己做项目过程中实现的一个非常简单的视频 ...
- 基于FFmpeg+SDL的视频播放器的制作-基础知识
基础知识 目录 视频播放器原理 封装格式(MP4.RMVB.TS.FLV.AVI) 视频编码数据(H.264.MPEG2.VC-1) 音频编码数据(AAC.MP3.AC-3) 视频像素数据(YUV42 ...
- 《FFmpeg+SDL的视频播放器的制作》学习记录(4):SDL播放视频
SDL库的配置比较简单,略. SDL视频显示函数 SDL_Init():初始化SDL系统 SDL_CreateWindow():创建窗口 SDL_Window SDL_CreateRenderer() ...
- 基于 FFmpeg 的跨平台视频播放器简明教程(四):像素格式与格式转换
系列文章目录 基于 FFmpeg 的跨平台视频播放器简明教程(一):FFMPEG + Conan 环境集成 基于 FFmpeg 的跨平台视频播放器简明教程(二):基础知识和解封装(demux) 基于 ...
最新文章
- P1219 八皇后 含优化 1/5
- UIRemoteNotificationType 参考
- Ubuntu12.04下解决sudo apt-get update警告Duplicate sources.list entry
- 《Linux内核设计与实现》读书笔记(十)- 内核同步方法
- JS的隐式转换 从 [] ==false 说起
- Swift和Objective-C混编
- label y 训练集测试集x_训练集、测试集 train_test_split
- python自加1_使用Python如何让里面的某个参数每调用一次程序就自加1
- 【Oracle】ORA-01157: cannot identify/lock data file 201 - see DBWR trace file
- 安装python3-dev_linux安装python3
- 了解Android布局,了解Android对话框布局
- @Cacheable和@CacheEvict的学习使用
- invalid type code: AC异常
- 使用 Chrome DevTools 模拟缓慢的 3G 网络速度
- mocha 测试 mysql_GitHub - nodejs-xx/lei: 整合Express mysql ioredis ejs 的一开发框架,使用mocha对api进行测试...
- 中国式IT运维,趟出自己的“长期主义”河流
- 公共方法收集1:json_compare
- 图论 北师大 张秀平 自学 视频 NOIP
- 浅谈数据结构-关键路径
- Android读写ini配置文件