社区
多媒体/流媒体开发
帖子详情
关于视频媒体格式
King_Dragon
2004-04-13 09:13:10
1、连接时怎样识别视频设备的媒体格式?
2、怎样设置媒体格式为YUY2或其它YUV媒体类型?(需要显示)
3、怎样抓取YUY2类型的图片?
...全文
84
7
打赏
收藏
关于视频媒体格式
1、连接时怎样识别视频设备的媒体格式? 2、怎样设置媒体格式为YUY2或其它YUV媒体类型?(需要显示) 3、怎样抓取YUY2类型的图片?
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
7 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
happydeer
2004-04-22
打赏
举报
回复
可以直接保存yuy2到bmp文件,我试过。
注意,mBasicVideo为从Filter Graph Manager上获得的IBasicVideo接口。
BOOL CDXGraph::GetCurrentImage(const char * inFile)
{
if (!mBasicVideo)
{
return FALSE;
}
long bitmapSize = 0;
if (SUCCEEDED(mBasicVideo->GetCurrentImage(&bitmapSize, 0)))
{
BOOL pass = FALSE;
BYTE * buffer = new BYTE[bitmapSize];
if (SUCCEEDED(mBasicVideo->GetCurrentImage(&bitmapSize, (long *)buffer)))
{
BITMAPFILEHEADER hdr;
LPBITMAPINFOHEADER lpbi;
lpbi = (LPBITMAPINFOHEADER)buffer;
int nColors = 1 << lpbi->biBitCount;
if (nColors > 256)
nColors = 0;
hdr.bfType = ((WORD) ('M' << 8) | 'B'); // always is "BM"
hdr.bfSize = bitmapSize + sizeof( hdr );
hdr.bfReserved1 = 0;
hdr.bfReserved2 = 0;
hdr.bfOffBits = (DWORD) (sizeof(BITMAPFILEHEADER) + lpbi->biSize +
nColors * sizeof(RGBQUAD));
CFile bmpFile(inFile, CFile::modeReadWrite | CFile::modeCreate | CFile::typeBinary);
bmpFile.Write(&hdr, sizeof(BITMAPFILEHEADER));
bmpFile.Write(buffer, bitmapSize);
bmpFile.Close();
pass = TRUE;
}
delete [] buffer;
return pass;
}
return TRUE;
}
King_Dragon
2004-04-17
打赏
举报
回复
对于问题三,能不能给个示例代码,YUY2能直接保存为BMP文件吗?
happydeer
2004-04-16
打赏
举报
回复
1. 通过Capture Pin上的IAMStreamConfig接口可以枚举得到该Pin上支持的所有媒体类型。参考AMCap例子。
2. 还是通过IAMStreamConfig::SetFormat
3. 抓取YUY2格式的数据,直接将它保存为BMP文件也是可以的。当然转成RGB格式后再保存也可以。
King_Dragon
2004-04-16
打赏
举报
回复
人气太冷清,我顶!
dreameasy
2004-04-13
打赏
举报
回复
1. GetMediaType()
2. SetMediaType()
3 YUV2->RGB32,做一个转换函数
King_Dragon
2004-04-13
打赏
举报
回复
SetMediaType(),偶已经使用过,但一旦在连接Sample Grabber或绑定显示窗口时设置媒体格式为YUV2,此时视频不能正常显示,且 hr = m_pBuilder->RenderStream(
&PIN_CATEGORY_CAPTURE,
&MEDIATYPE_Video,
m_pCap,
pGrabberF,
NULL);返回失败。
我想是不是设备不支持该种媒体类型,所以想先获取设备所有支持媒体类型,再根据其支持值进行设置!
King_Dragon
2004-04-13
打赏
举报
回复
to dreameasy(自由哥哥)
对于问题一,如果视频设备设备输出的媒体格式是自定义,怎样根据AM_MEDIA_TYPE(例如SUBTYPE)提取其媒体类型信息,并显示。如果能枚举设备所支持的所有媒体类型(包括自定义媒体格式的描述)则更佳。
对于问题二,如果设备(譬如摄像头)不支持YUV2输出,是否能将媒体格式设置为YUV2?
对于问题三,偶是想抓取YUV2视频数据,并进行分析(相当于视频抓取,但偶是想获取YUV2而不是RGB类型的数据)。
希望能给出相关问题的示例代码,如果能解决问题,可以另外加分。
mp4测试
视频
,可以用它测试处理MP4文件的程序
测试用MP4,可以用它测试处理MP4文件的程序。
关于
视频
封装格式和
视频
编码格式的简介
视频
封装格式(Video Container Format)和
视频
编码格式(Video Compression Format)是两个不同但相关的概念,它们一起构成了数字
视频
文件的结构。
视频
封装格式,也称为容器,是将已经编码压缩好的
视频
流、音频流以及字幕按照一定的方式放到一个文件中,方便播放软件播放。
视频
编码格式可以理解为不同压缩算法和方法的一种名称,是为了压缩
视频
数据而做的一种压缩算法。结束语。
视频
文件格式、
视频
封装格式、
视频
编码方式
视频
格式 可以分为适合本地播放的本地影像
视频
和适合在网络中播放的网络流媒体影像
视频
两大类。尽管后者在播放的稳定性和播放画面质量上可能没有前者优秀,但网络流媒体影像
视频
的广泛传播性使之正被广泛应用于
视频
点播、网络演示、远程教育、网络
视频
广告等等互联网信息服务领域。 MPEG/MPG/DAT MPEG(运动图像专家组)是Motion Picture Experts Group 的缩写。这类格
最全的
视频
格式分类详解(很全面)
常见在线流
媒体格式
:mp4、flv、f4v、webm 移动设备格式:m4v、mov、3gp、3g2 RealPlayer :rm、rmvb 微软格式 :wmv、avi、asf MPEG
视频
:mpg、mpeg、mpe、ts DV格式 :div、dv、divx 其他格式 :vob、dat、mkv、lavf、cpk、dirac、ram、qt、fli、flc、mod 2020-11-12补充: ●AVI格式 它的英文全称为Audio Video Interleaved,即音频视...
在直播软件开发过程中,常用的几种
视频
封装格式
1、AVI格式 此格式的中文译名为音频
视频
交错格式,这种
视频
格式的优点是图像质量好,无损AVI可以保存alpha通道。缺点也不少,体积过于庞大,而且糟糕的是压缩标准不统一,最普遍的现象就是高版本Windows媒体播放器播放不了采用早期编码编辑的AVI格式
视频
,而低版本Windows媒体播放器又播放不了采用最新编码编辑的AVI格式
视频
。 2、DV-AVI格式 它是由索尼、松下、JVC等多家厂商联合提出的一种家用数字
视频
格式。数字摄像机就是使用这种格式记录
视频
数据的,这种
视频
格式的文件扩展名也是AVI,它可以
多媒体/流媒体开发
2,553
社区成员
20,277
社区内容
发帖
与我相关
我的任务
多媒体/流媒体开发
专题开发/技术/项目 多媒体/流媒体开发
复制链接
扫一扫
分享
社区描述
专题开发/技术/项目 多媒体/流媒体开发
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章