雷神(雷霄桦)在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 的视频播放器修正版相关推荐

  1. 最简单的基于FFMPEG+SDL的视频播放器 ver2 (采用SDL2.0)

    ===================================================== 最简单的基于FFmpeg的视频播放器系列文章列表: 100行代码实现最简单的基于FFMPEG ...

  2. 最简单的基于FFMPEG+SDL的视频播放器:拆分-解码器和播放器

    ===================================================== 最简单的基于FFmpeg的视频播放器系列文章列表: 100行代码实现最简单的基于FFMPEG ...

  3. 100行代码实现最简单的基于FFMPEG+SDL的视频播放器(SDL1.x)

    ===================================================== 最简单的基于FFmpeg的视频播放器系列文章列表: 100行代码实现最简单的基于FFMPEG ...

  4. 《基于 FFmpeg + SDL 的视频播放器的制作》课程的视频

    这两天开始带广播电视工程大二的暑假小学期的课程设计了.本次小学期课程内容为<基于 FFmpeg + SDL 的视频播放器的制作>,其中主要讲述了视音频开发的入门知识.由于感觉本课程的内容不 ...

  5. 基于 FFmpeg SDL 的视频播放器的制作 课程的视频

    分享一下我老师大神的人工智能教程!零基础,通俗易懂!http://blog.csdn.net/jiangjunshow 也欢迎大家转载本篇文章.分享知识,造福人民,实现我们中华民族伟大复兴! 这两天开 ...

  6. 100行代码实现最简单的基于FFMPEG+SDL的视频播放器

    简介 FFMPEG工程浩大,可以参考的书籍又不是很多,因此很多刚学习FFMPEG的人常常感觉到无从下手.我刚接触FFMPEG的时候也感觉不知从何学起. 因此我把自己做项目过程中实现的一个非常简单的视频 ...

  7. 基于FFmpeg+SDL的视频播放器的制作-基础知识

    基础知识 目录 视频播放器原理 封装格式(MP4.RMVB.TS.FLV.AVI) 视频编码数据(H.264.MPEG2.VC-1) 音频编码数据(AAC.MP3.AC-3) 视频像素数据(YUV42 ...

  8. 《FFmpeg+SDL的视频播放器的制作》学习记录(4):SDL播放视频

    SDL库的配置比较简单,略. SDL视频显示函数 SDL_Init():初始化SDL系统 SDL_CreateWindow():创建窗口 SDL_Window SDL_CreateRenderer() ...

  9. 基于 FFmpeg 的跨平台视频播放器简明教程(四):像素格式与格式转换

    系列文章目录 基于 FFmpeg 的跨平台视频播放器简明教程(一):FFMPEG + Conan 环境集成 基于 FFmpeg 的跨平台视频播放器简明教程(二):基础知识和解封装(demux) 基于 ...

最新文章

  1. P1219 八皇后 含优化 1/5
  2. UIRemoteNotificationType 参考
  3. Ubuntu12.04下解决sudo apt-get update警告Duplicate sources.list entry
  4. 《Linux内核设计与实现》读书笔记(十)- 内核同步方法
  5. JS的隐式转换 从 [] ==false 说起
  6. Swift和Objective-C混编
  7. label y 训练集测试集x_训练集、测试集 train_test_split
  8. python自加1_使用Python如何让里面的某个参数每调用一次程序就自加1
  9. 【Oracle】ORA-01157: cannot identify/lock data file 201 - see DBWR trace file
  10. 安装python3-dev_linux安装python3
  11. 了解Android布局,了解Android对话框布局
  12. @Cacheable和@CacheEvict的学习使用
  13. invalid type code: AC异常
  14. 使用 Chrome DevTools 模拟缓慢的 3G 网络速度
  15. mocha 测试 mysql_GitHub - nodejs-xx/lei: 整合Express mysql ioredis ejs 的一开发框架,使用mocha对api进行测试...
  16. 中国式IT运维,趟出自己的“长期主义”河流
  17. 公共方法收集1:json_compare
  18. 图论 北师大 张秀平 自学 视频 NOIP
  19. 浅谈数据结构-关键路径
  20. Android读写ini配置文件

热门文章

  1. 从“XTools企业维生素”看销售管理的过程控制
  2. ABAP-TCODE
  3. 股票配资中的穿仓是什么意思
  4. linux通配符的作用,请说明通配符的作用和 Linux 下常用的操作通配符。 (4.0分)
  5. 数据科学家应遵守的十五个原则
  6. matlab 十倍频程,Matlab关于三分之一倍频程程序的问题
  7. Android获取图片资源
  8. POJ 3463 Sightseeing dijkstra
  9. 企业在什么情况下需要ERP系统?
  10. 六款免费学习编程的app「建议收藏」