
音视频
SylarXillee
VTK开发工程师
展开
-
FFmpeg操作命令记录
1.FFMpeg枚举设备记录ffmpeg -list_devices true -f dshow -i dummy2.FFMpeg进行音频转码ffmpeg -i a.mp3 a.m4a3.ffmpeg 进行摄像头麦克风推流ffmpeg -f dshow -i video="USB Camera" -f dshow audio="麦克风 (USB Microphone)" -vcodec libx264 -acodec copy -f flv rtmp://10.18.221.58:119原创 2020-12-29 09:21:27 · 189 阅读 · 0 评论 -
音视频基础知识总结
音视频各层协议不同及协议距离。协议层, rtmp,rtp等,传输有自有的数据包大小,文件如avi有索引方式,如avi的索引占整个文件的1/3。封装层,如ts,数据包大小固定为188个字节。编码层,如h264,数据包大小可能为65536。像素层,具体像素的大小,如yuv。一直无法区分协议层和封装层,在想通ts包只有188个字节而传输的数据包肯定不是188个字节之后,就可以区分二者了。...原创 2020-12-23 20:14:21 · 852 阅读 · 0 评论 -
OpenCV操作FFmpeg中的Frame
以下例子是在FFmpeg的Frame中利用OpenCV进行边缘检测的例子int width=pCodecCtx->width, height = pCodecCtx->height;cv::Mat tmp_img = cv::Mat::zeros(height *3/2, width,CV_8U1);memcpy(tmp_img.data, m_pFrameYUVIngest->data[0], width * height);memcpy(tmp_img.data + w原创 2020-12-14 20:47:47 · 773 阅读 · 0 评论 -
vs2013中ffmpeg输入中文音频设备
wchar 转 utf8 代码char *dup_wchar_to_utf8(wchar_t *w){char *s = NULL;int l = WideCharToMultiByte(CP_UTF8, 0, w, -1, 0, 0, 0, 0);s = (char *)av_malloc(l);if (s)WideCharToMultiByte(CP_UTF8, 0, w, -1, s, l, 0, 0);return s;}使用中的核心代码:wchar_t原创 2020-12-14 20:38:31 · 423 阅读 · 1 评论 -
Windows 利用Com库枚举音视频设备
在枚举设备时,首先初始化COM库并设置并发模式;代码为HRESULT hr=CoInitializeEx(NULL, COINIT_APARTMENTTHREADED| COINIT_DISABLE_OLE1DDE);调用媒体功能初始化函数;代码为hr = MFStartup(MF_VERSION);创建要获取的属性;代码为IMFAttributes *pAttributes = NULL;hr = MFCreateAttributes(&pAttributes, 1);原创 2020-12-09 20:03:20 · 599 阅读 · 0 评论