首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >webmmux directshow查找队列IStream

webmmux directshow查找队列IStream
EN

Stack Overflow用户
提问于 2012-09-20 05:19:57
回答 1查看 222关注 0票数 0

我正在使用directshow过滤器来多路复用vp8和vorbis。最重要的是,我正在实时发送(实际上是尝试发送) webm文件。所以没有正在创建的文件。当数据在编码后被打包到webm中时,我将其发送到套接字。

filesinker筛选器使用IStream进行文件IO。并且它大量使用寻道操作。我不能使用它。因为我不能在一个插座上寻找。

是否有人实现或知道如何使用此多路复用器,以便查找操作不会被调用。或者可能是具有队列的多路复用器上的版本,以便其支持分段。

谢谢

我使用的是www.webmproject.org提供的directshow过滤器

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-09-22 15:24:37

在写入器上实现IStream允许多路复用器更新写入的流/文件中的交叉引用。因此,它们不必按顺序编写,这对于大多数容器格式来说都是不可能的,除非创建巨大的缓冲区或临时文件。

现在,如果您在运行时创建文件以逐步通过网络发送,我猜您正在尝试实现这一点,您不知道多路复用器将在什么时候、在哪里更新以关闭该文件。是否要重新访问文件开头的数据并更新引用、标头等。

您应该先创建完整的文件,然后再交付它。或者,您需要替换整个写入器,并将所有写入传递到套接字,包括覆盖已存在的数据。然而,通过网络传递实时数据的最合适的方法是根本不传输文件。发送方发送单独的流,接收方使用它们,或者在接收后多路复用到文件中,然后这是必要的。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/12503065

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档