- 博客(23)
- 收藏
- 关注
原创 FFMPEG直播推流
av_register_all();初始化所有的封装和解封装,flv,mp4,mov,,,,avforamt_network_init();初始化网络库。avformat_open_input();
2021-12-24 10:43:27 1843
原创 directx9 截屏
1,directx9截屏接口Direct3D Create9 创建directx3D对象CreateDevice:创建一个显卡设备对象CreateOffscreenPlainSurface:创建离屏表面GetFrontBufferData:前台表面LockRect函数D3DLOCKED_RECT lr;ZeroMemory(&lr, sizeof(D3DLOCKED_RECT));pSurface -> LockRect(&lr, NULL, 0)DEORD
2021-11-17 10:45:53 2778
原创 FFmpeg学习笔记5,音视频编码类设计
1,音视频类封装对外使用接口类,对象由内部创建隐藏ffmpeg,调用者不需要应用ffmpeg头文件2,通过ffmpeg工具抽取数据考虑音视频同步写入的问题抽取文件的音频数据和视频数据:ffmpeg -i test.mp4 -f s15le test.pcmffmpeg -i test.mp4 -pix_fmt bgra test.rgb...
2021-11-11 16:40:58 1391
原创 FFmpeg+SDL 学习笔记3,视频编码(RGB to MP4)
1,步骤1. 读取RGB文件转换为yuv2. 压缩为h2643. 封装为MP43X3RGB图像存放方式(连续)每一个颜色放入一个字节,一个像素点称为一个RGBYUV“Y”表示明亮度,也就是灰度值“U”和“V”表示色度code#include <iostream>using namespace std;extern "C"{#include <libavformat/avformat.h>#include <libswscale/swscale
2021-11-04 14:51:53 1524
原创 FFmpeg+SDL 学习笔记2,视频转封装代码
1,流程图2,代码#include <iostream>using namespace std;extern "C"{#include <libavformat/avformat.h>}#pragma comment(lib,"avcodec.lib")#pragma comment(lib,"avutil.lib")int main(){ av_register_all(); AVFormatContext *ic = nullptr; //封装
2021-11-04 10:26:58 1040
原创 VS项目属性配置
例:使用C++创建ffmpeg或者SDL的工程时,需要用到ffmpeg和SDL的库,这时就可以对其项目属性进行配置:这是FFmpeg的所有文件,我们需要需要他的include文件,和lib库,还有bin目录下的几个库文件:配置步骤如下:1. 右击项目 -> 属性。2. 复制include文件路径添加至C/C++ -> 常规 -> 附加包含目录 - > 编辑(进入后如图二操作)中。注:我是直接将include和lib文件夹还有bin中的几个库文件全部复制到我项目的工
2021-11-01 21:04:11 2852
原创 FFmpeg+SDL学习笔记4,音频编码(pcm to acc)
1,ffmpeg.exe的使用1. 命令格式:功能:ffmpeg.exe用于视频的转码。ffmpeg -i input.avi -b:v 640k output.ts将当前文件夹下的input.avi 文件转换为output.ts文件,并将output.ts 文件的码率设置为640k.命令格式:ffmpeg -i 【输入文件路径】 -b:v 【输出视频码率】 【输出文件路径】所有的参数都是以键值对应的形式指定的。例如:输入文件参数是“-i” ,参数值是文件路径
2021-11-01 11:08:13 332
原创 FFmpeg+SDL 学习笔记1,基础知识及平台配置搭建
一,视频播放器原理播放一个视频文件流程如下:二,信息查看工具综合信息查看工具MediaInfo二进制信息查看UltraEdit单项详细描述封装格式:Elecard , Format , Analyzer视频编码数据:Elecard,Stream,Eye视频像素数据:YUV,Player音频采样数据:Adobe,Audition三,封装格式- 封装格式的作用: 视频码流和音频码流按照一定的格式存储在一个文件中。- 封装格式分析工具: Elecard Format Anal
2021-10-29 11:14:00 269
原创 const在函数定义或声明时后置的用法
const在函数定义或声明时后置的用法比如函数:int function()const;该函数只有是类的成员函数时才有意义,举例如下class Name{private: int data;public: int funcA(); int funcB()const { data=520;//编译报错,表达式必须是可修改的左值 }};两者的区别:在函数funcA中可以修改类的成员变量data,此时this指针类型为Name*在函数funcB中不能修改类的成员变量data,因为
2021-04-08 10:20:17 1141 3
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人