首页 新闻 论坛 群组 Blog 文档 下载 读书 Tag 网摘 搜索 .NET Java 游戏 视频 人才 外包 培训 数据库 书店 程序员
中国软件网
欢迎您:游客 | 登录 注册 帮助
  • 怎样才能用Directshow抓取视频文件的所有的帧啊 [已结帖,结帖人:sclz]
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • sclz
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    • 结帖率:
    发表于:2008-08-19 14:28:43 楼主
    网上找了一些资料,参照了http://www.upwinder.com/www/41/207.html的例子
    自己想写一个能抓取视频文件所有帧的程序。
    在原来的代码
    CComBSTR saveBSTR(saveptr);
    hr = pDet->WriteBitmapBits(0, width, height, saveBSTR);
    上做了修改,用了个for循环实现了可以抓获指定数量的帧图片的功能。
    但是有很大的问题,指定数量过大的时候后面抓到的全是末尾帧。
    不知道文件到底有多少帧,也不知道帧和帧之间的间隔怎么判断才会不漏下帧。
    哪位高手能提点一下。
    20  修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • shaodc
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    发表于:2008-08-19 22:37:181楼 得分:5
    自己做一个filter,每一个Sample存一次( 我主要用Delphi,对C不熟)。
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • SoftSoftSoft2008
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    发表于:2008-08-20 09:21:412楼 得分:2
    自己解码,就可以保证获取到所有的帧。

    签  名: ︻$▅▆▇◤
    昵  称: 罗家兄弟
    QQ    : 79941308
    E-Mail: luoshizhen2003@gmail.com
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • li_007
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    发表于:2008-08-20 10:34:003楼 得分:2
    很简单的一个transform Filter就可以实现。
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • henryjee
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    发表于:2008-08-20 12:18:024楼 得分:3
    用sample grabber 抛出所有的帧,你就可以对抛出的帧做处理了,保存下来当然就更简单了
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • really3353
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    发表于:2008-08-24 00:09:355楼 得分:1
    引用 4 楼 henryjee 的回复:
    用sample grabber 抛出所有的帧,你就可以对抛出的帧做处理了,保存下来当然就更简单了

    同意,呵呵
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • hulihany
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    发表于:2008-08-27 17:03:176楼 得分:2
    方法虽然不是很好,还行。
    建议你看看陆老师的directshow那两本书。
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • sxcong
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    发表于:2008-09-01 20:17:297楼 得分:4
    最简单就是RenderFile+Grabber,中间所有过程都省了
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • wwwllg
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    发表于:2008-09-05 10:09:288楼 得分:1
    楼上正解
    修改 删除 举报 引用 回复

    网站简介广告服务网站地图帮助联系方式诚聘英才English 问题报告
    北京创新乐知广告有限公司 版权所有 京 ICP 证 070598 号
    世纪乐知(北京)网络技术有限公司 提供技术支持
    Copyright © 2000-2008, CSDN.NET, All Rights Reserved