100分问:想写一个视频分析的软件,应该如何入手?

绿色夹克衫 2008-01-17 07:10:34
功能就是对一段视频进行分析,然后提取分析结果写入到另一个文件中。

源文件要支持用户机器上所有能播放的视频格式(如果用户装了divx,就需要支持divx,装了real,就需要支持real。)
分析部分实际上就是从buffer里面读取每一帧的数据(也就是还原为AVI后的数据),然后进行筛选过滤。

我也看了一些资料,用了一些现成的控件,不过实现效果都不是很理想,我想了一下自己要做的东西,实际上相当于一个encode的codec,不知应当如何入手。

问:

使用directshow来做的话,会不会效率很低?
还原为avi后,分析及处理的速度是很快的,不知道directshow能不能做到超实时,也就是说1个小时的片子,10分钟就分析完,我对directshow不了解,看文档,感觉似乎只能1:1的做(希望我错了)
另外还原为AVI后 buffer中的数据有没有可能是YUV的?
有没有什么第三方或者开源的东西可以借鉴或使用?(商业组件也可以,别超过10000美金就行)
不知道ffdshow会不会对我要做的东西有所帮助?
...全文
169 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
knowledge_Is_Life 2008-05-01
  • 打赏
  • 举报
回复
支持搂主,收藏
绿色夹克衫 2008-01-31
  • 打赏
  • 举报
回复
大家能不能给我讲讲codec中encode filter的开发?最好给个现成的例子?目前觉得还是应当在这条路上走走看。
上面的几个问题已经解决的差不多了,找了一套商业软件,没有自己用directshow开发。
homesos 2008-01-31
  • 打赏
  • 举报
回复
DirectShow用不到吧
要是自己写,直接分析buffer,提取相应的关键数据。
goodheartppl 2008-01-21
  • 打赏
  • 举报
回复
其实最方便的方法是 DECODE出来以后COLORSPACE 再转成RGB 进行分析,然后再接一个ENCODER

如果考虑到时间 可以先进行分析,然后记录下时间点

最后一步,通过时间点 直接DECODE出来 加一个TRANSOFER FILTER 再ENCODER 这个是比较方便的做法,但是不是最好的
mumuniuniu 2008-01-20
  • 打赏
  • 举报
回复
想要知道最后生成的是什么东西,是图片还是视频,还是取出其中的关键帧
Oversense 2008-01-18
  • 打赏
  • 举报
回复
10000美金? 找人帮你做吧,你这个就是一个解压缩器(decoder),分析解压缩之后的 bmp 图片?
ffmpeg 就可以完成你要的功能,不需要directshow这种东西。
yangsh3002 2008-01-18
  • 打赏
  • 举报
回复
要实现你所说的功能,第一,要做一个filter,里面实现你的转换算法。
第二,要了解一般用户机器上所有的CODEC,也就是要知道哪个格式的文件对应哪个编解码filter。
第三,在程序中动态实现你的分析组件(也就是第一步实现的filter)与codec的搭建工作。
所有这些都是以你熟练掌握directshow为基础的,工作不轻松啊!
另外:avi流有可能是YUV格式的,你所做的filter要设置支持的流格式(如RGB32),在程序中连接时,directshow会自动加入格式转换filter与之相连。
绿色夹克衫 2008-01-17
  • 打赏
  • 举报
回复
我看某些视频转换软件可以做到超实时,不知道这种软件的开发跟directshow有没有直接的关系,还是可以用其他开发包来做?

2,542

社区成员

发帖
与我相关
我的任务
社区描述
专题开发/技术/项目 多媒体/流媒体开发
社区管理员
  • 多媒体/流媒体开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧