博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
FFmpeg+SDL视频播放器(脱离开发环境)学习笔记
阅读量:3663 次
发布时间:2019-05-21

本文共 612 字,大约阅读时间需要 2 分钟。

1、FFmpeg和SDL整合实现视频播放器

整合后没有之前的读文件和写文件过程

SDL_UpdateTexture函数的第四个参数是一行像素数据所占的数据量,pFrameYUV->data[0]是存储的YUV数据

SDL_CreatorTexture是显示YUV的纹理的宽和高必须是YUV数据的宽和高

2、脱离开发环境

(1)不想在开发环境运行,像执行普通程序那样运行。找到生成的执行文件在哪里。每点一次编译都会生成exe文件。这个文件在项目目录外层目录(解决方案目录)里面的debug里。但是直接点开无法使用

因为我们在程序中用到的动态库(后缀为.dll)在编译时不能编译到可执行程序(.exe)的内部的.所有我们想运行这个程序,必须把这些库拷贝到和他相同的目录里面,还需要拷贝视频文件。

命令行运行程序(有无exe均可)

(2)之前的播放器只能播放特定的视频,让播放器读取我们传入的参数(argv)

argc是存储参数的格式,argv是里面的数组,

在使用命令行时,可以打开绝对路径,也可以打开相对路径

或char*filepath=argv[1];

(3)补充

改成argv后就不能直接在开发环境运行啦,直接运行在开发环境中没有给argv传任何的参数,所以它的值是空的,空的值赋给filepath就是没告诉他要解哪个文件。这样运行打开的话程序就会报错。

(4)在编译环境里面运行(输入文件名和命令行参数的效果是一样的)

你可能感兴趣的文章
Java 方法(方法重载)与数组
查看>>
Java 类、对象和构造器
查看>>
Java 三大特征:封装、继承(方法覆盖,this,super)和多态
查看>>
Layui 栅格系统、常用表单和校验与监听
查看>>
Java--顺序表插入与删除
查看>>
操作数组元素,数组赋值,卫语句,==,Array.equals(数组1,数组2),equals,循环遍历输出数组元素,增强for遍历输出元素,switch,if..else..,比较数组元素是否一致
查看>>
动态录入学生个数,录入每个数组元素,并求出数组元素的最值以及平均值
查看>>
复制数组元素,合并两个已知数组,String数组类型,增强for循环,native,Array.copyof()扩容数组创建新数组,合并数组,Array类的方法对数组进行截断或者扩容
查看>>
数据结构排序算法学习之插入排序2
查看>>
数据结构排序算法学习之插入排序3
查看>>
数据结构排序算法学习之插入排序(总)
查看>>
数据结构之二叉树
查看>>
数据结构之二叉堆
查看>>
SQL语言笔记
查看>>
白盒测试的几种覆盖方法总结
查看>>
DFS又不会了!矩阵中的路径DFS+回溯
查看>>
机器人又来运动了,我却坐了一天。
查看>>
位运算解决找不同数字、2的幂、1的个数等
查看>>
合并两个排序链表
查看>>
一个数的整数次方(快速幂)
查看>>