社区
图象工具使用
帖子详情
YV12序列如何让directshow直接播放?
nodirection
2012-11-01 03:30:37
在不对YV12序列进行变换的前提下如何才能让VMR直接播放出正常的视频?
调试发现在Graph Run之后改变了之前连接时协商好的媒体类型(图像尺寸变了),导致最终播放出来的现象是条纹.
输出是YV12,开始协商的媒体类型是352x288,等Run之后,媒体类型就变成了:384x-288,图像就是条纹,如果是YUY2输出的话,就会变成:512x-288
各位大牛,怎么办啊。
...全文
384
15
打赏
收藏
YV12序列如何让directshow直接播放?
在不对YV12序列进行变换的前提下如何才能让VMR直接播放出正常的视频? 调试发现在Graph Run之后改变了之前连接时协商好的媒体类型(图像尺寸变了),导致最终播放出来的现象是条纹. 输出是YV12,开始协商的媒体类型是352x288,等Run之后,媒体类型就变成了:384x-288,图像就是条纹,如果是YUY2输出的话,就会变成:512x-288 各位大牛,怎么办啊。
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
15 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
rageliu
2012-11-23
打赏
举报
回复
就是一个格式动态变化的问题. 你在filter里响应它的新格式请求,按新格式排列就行了 或是直接向上游filter递交新格式请求,让它直接按新格式给你传数据,这样你都不用自己排列
nodirection
2012-11-13
打赏
举报
回复
非常感谢guyue6670大哥,他告诉我数据对齐的问题。 无意中发现了一个帖子,里面有一个对齐算法。一试竟然成功显示了。 代码: if(nWidth == nWidthRender) { memcpy(pOutData, pData, lOutLen); } else { for(int i = 0; i < nHeight; i++) { memcpy(pOutData, pData, nWidth); pData += nWidth; pOutData += nWidthRender; } for(int i = 0; i < (nHeight >> 1) * 2; i++) { memcpy(pOutData, pData, nWidth >> 1); pData += nWidth >> 1; pOutData += nWidthRender >> 1; } } 我是在我source filter里的fillbuffer里加这段代码 谢谢这个帖子:http://blog.csdn.net/xuxinhua/article/details/6858304
jjjweiren
2012-11-13
打赏
举报
回复
为了将结果告诉大家,只好用另一个号回复一下。
nodirection
2012-11-05
打赏
举报
回复
继续在线等。
nodirection
2012-11-05
打赏
举报
回复
我的代码,大牛帮我看看啊。我真的好急啊。 HRESULT CBallStream::GetMediaType(int iPosition, CMediaType *pmt) { CheckPointer(pmt,E_POINTER); CAutoLock cAutoLock(m_pFilter->pStateLock()); if(iPosition < 0) { return E_INVALIDARG; } // Have we run off the end of types? if(iPosition > 0) { return VFW_S_NO_MORE_ITEMS; } pmt->InitMediaType(); pmt->SetType(&MEDIATYPE_Video); pmt->SetSubtype(&MEDIASUBTYPE_YV12); pmt->SetFormatType(&FORMAT_VideoInfo2); //pmt-> SetType (&MEDIATYPE_Video); //pmt-> SetSubtype (&MEDIASUBTYPE_RGB24); //pmt-> SetFormatType(&FORMAT_VideoInfo); pmt->SetTemporalCompression(false); VIDEOINFOHEADER2 *pvi = (VIDEOINFOHEADER2 *)pmt->AllocFormatBuffer(sizeof(VIDEOINFOHEADER2)); ZeroMemory(pvi, sizeof(VIDEOINFOHEADER2)); pvi->bmiHeader.biSize = sizeof(BITMAPINFOHEADER); pvi->bmiHeader.biPlanes = 1; pvi->bmiHeader.biBitCount = 24; pvi->bmiHeader.biWidth = 704; pvi->bmiHeader.biHeight = 576; pvi->bmiHeader.biSizeImage = DIBSIZE(pvi->bmiHeader); pvi->bmiHeader.biCompression = MAKEFOURCC('Y','V','1','2'); pvi->AvgTimePerFrame = /*10000000 / 60;*/333667; pvi->dwInterlaceFlags = 0; //AMINTERLACE_IsInterlaced | AMINTERLACE_Field1First; // | AMINTERLACE_FieldPatBothIrregular | AMINTERLACE_DisplayModeBobOnly; pvi->dwCopyProtectFlags = AMCOPYPROTECT_RestrictDuplication; pvi->dwPictAspectRatioX = (DWORD)pvi->bmiHeader.biWidth; pvi->dwPictAspectRatioY = (DWORD)pvi->bmiHeader.biHeight; pmt->SetSampleSize(pvi->bmiHeader.biSizeImage); SetRect(&pvi->rcSource, 0, 0, 704, 576); SetRect(&pvi->rcTarget, 0, 0, 704, 576); return NOERROR; } // GetMediaType
nodirection
2012-11-02
打赏
举报
回复
谢谢,谢谢sure
帅惊联合国
2012-11-02
打赏
举报
回复
有心无力。。。 不过帮顶 !
nodirection
2012-11-02
打赏
举报
回复
自己顶一下。
nodirection
2012-11-02
打赏
举报
回复
难得的友情哦。呵呵
nodirection
2012-11-02
打赏
举报
回复
感谢顶我。
nanjun520
2012-11-02
打赏
举报
回复
汗 真心的不懂 顶一下
nodirection
2012-11-02
打赏
举报
回复
回帖都有分,谢谢。
mindsky
2012-11-02
打赏
举报
回复
不懂,但是路过帮顶!
nodirection
2012-11-01
打赏
举报
回复
好无助啊。
Elecard StreamEye Studio 3.1(含2.9.0)
Elecard.Streameye.v3.1,是一个强大的视频
序列
或码流分析软件,YUV分析,264文件分析软件,H.264视频编解码学习必备的东西,Elecard StreamEye Suite是一套用于专业视频压缩领域的功能强大的工具 ,能够帮助用户...
FFmpeg学习(音视频理论知识)
什么是
YV12
,什么是YUY2? YUV 格式通常有两大类:打包( packed )格式和平面( planar )格式。前者将 YUV分量存放在同一个数组中,通常是几个相邻的像素组成一个宏像素( macro-pixel );而后者使用三个数组...
FFmpeg详解及常用命令使用
FFMPEG堪称自由软件中最完备的一套多媒体支持库,它几乎实现了所有当下常见...使用FFMPEG作为内核的
Directshow
Filter:ffdshow,lav filters.等;使用FFMPEG作为内核的转码工具:ffmpeg,格式工厂,狸窝视频转换器等。
VLC-3.0全部详细参数
它们将被加入
播放
列表队列。指定的首个项目将被首先
播放
。选项风格: --选项 用于设置程序执行期间的全局选项。 -选项 单字母版本的全局 --选项。 :选项 仅对此选项之前的单条流生效, 且优先级高于先前的设置。...
mplayer全参数
mplayer(1) 电影
播放
器 MPlayer(1) D0 mplayer - 影视
播放
器 mencoder - 影视编解码器 B8 mplayer [选项] [文件URL
播放
列表-] mplayer [选项] 文件1 [分...
图象工具使用
1,451
社区成员
24,335
社区内容
发帖
与我相关
我的任务
图象工具使用
多媒体/设计/Flash/Silverlight 开发 图象工具使用
复制链接
扫一扫
分享
社区描述
多媒体/设计/Flash/Silverlight 开发 图象工具使用
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章