电视卡播放的同时捕捉

pisces007 2010-05-25 05:43:35
背景:
在Vista下,采用vs2005进行USB的电视卡采集。
DirectShow采用Microsoft DirectX SDK (February 2010)

问题:
想实现在播放第10台的时候,可以同时捕捉第11台进行保存.
请问如何实现?
...全文
119 14 打赏 收藏 转发到动态 举报
写回复
用AI写文章
14 条回复
切换为时间正序
请发表友善的回复…
发表回复
pisces007 2010-06-05
  • 打赏
  • 举报
回复
up一下
pisces007 2010-06-01
  • 打赏
  • 举报
回复
使用的filter是aviMux

hr = gcap.pRender->QueryInterface(IID_IConfigAviMux, (void **)&gcap.pConfigAviMux);
if(hr == NOERROR && gcap.pConfigAviMux)
{
gcap.pConfigAviMux->SetOutputCompatibilityIndex(TRUE);
if(gcap.fCapAudio)
{
hr = gcap.pConfigAviMux->SetMasterStream(gcap.iMasterStream);
if(hr != NOERROR)
ErrMsg(TEXT("SetMasterStream failed!"));
}
}
pisces007 2010-06-01
  • 打赏
  • 举报
回复
我试了一下, 如果单独录制图像的话, 录制好的视频播放没有问题.
从头开始播放,没有停顿的现象.

但是,如果有既有图像也有声音的话, 就出现这个现象:
声音是正确的, 双击视频后就开始有声音.
但是图像不正确, 一直保持一个状态10多秒.
之后才播放, 这时的图像其实和10秒之前的声音相配的.
这能是什么原因呢?
谢谢大家.
pisces007 2010-05-27
  • 打赏
  • 举报
回复
好的, 现在播放没有声音的问题已经自己解决了.
大家能就下面这个问题谈谈思路吗?谢谢:

录制出来的视频,声音和画面不同步.画面一开始有一段时间的延迟一直保持不变.而声音一开始就播放了.
=> 这里能是什么问题呢?

这个问题解决就结贴啦~~
pisces007 2010-05-27
  • 打赏
  • 举报
回复
呃. 顶一下. 大家帮帮忙. 谢谢
xdspower 2010-05-27
  • 打赏
  • 举报
回复
同步问题其实比较麻烦的,你需要自己处理一下时间码
如果延迟是恒定的,其实可以在编码包装成文件时进行设置,比如设置音频相对于视频延迟多久开始。
tufaqing 2010-05-26
  • 打赏
  • 举报
回复
就是不可能,除非买两个卡,或者买一个带两个高频头的电视卡(就是画中画的那种)一个高频头一次只能收一个台,了解一下信号搜索原理和电视的搜索原理。
pisces007 2010-05-26
  • 打赏
  • 举报
回复
可是现在就是要实现多频道电视同时显示的功能,
以及显示一个频道的同时录制另一个频道的功能.
应该怎么做呢?
tufaqing 2010-05-26
  • 打赏
  • 举报
回复
开玩笑,怎么可能,除非是双卡或画中画(其实也是双卡)。
如果是数字电视,同一个频点的还有可能。
pisces007 2010-05-26
  • 打赏
  • 举报
回复
可是想实现在播放第10台的时候,可以同时捕捉第11台进行保存
这是两个台, 不是一个流啊.
tufaqing 2010-05-26
  • 打赏
  • 举报
回复
sdk的sample里有一个InfTee的filter,将一个流分成多个流,编译就可以使用了。
当然电视卡也有一个preview,一个capture的脚。
然后要看看你要保存什么文件格式,就要使用编码器了。系统支持的编码好像只有asf(wmv),其他的要自己开发了,当然开源的也有,都要对音视频格式有一定的了解。
pisces007 2010-05-26
  • 打赏
  • 举报
回复
好的,多谢你提供的信息.
那么.我现在要播放和录制同一个频道的节目,
使用的是自带的Demo程序Amcap的代码基础上修改的,
可以实现播放和录制同时进行,但问题是:

1. 播放的那个没有声音, 而录制出来的那个有声音,
=> 到底是播放的那个没有配置好, 还是不能这么做?只能用InfTee分流?

2.录制出来的视频,声音和画面不同步.画面一开始有一段时间的延迟一直保持不变.而声音一开始就播放了.
=> 这里能是什么问题呢?

pisces007 2010-05-25
  • 打赏
  • 举报
回复
假如卡支持的话, 应该如何做?
rageliu 2010-05-25
  • 打赏
  • 举报
回复
没做过,不过如果卡支持,ds实现应该不难啊

2,543

社区成员

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

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