多媒体流.doc

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
多媒体流.doc

Introduction This article discusses synchronization mechanisms under DirectShow (part of the DirectX Media SDK) in order to play a video stream synched with the audio stream. The article provides custom solutions for that purpose, using the Microsoft Foundation Classes framework. Playing a video stream on a standard PC computer is not something easy natural. If the video stream is encoded with a frame rate of say 25 images a second, one can not say that a given PC is able to play the stream on screen really at this rate. Whether we are talking about an old PC, a Pentium based, or recent PCs, having in hand more horse power means moving the problem, not solving it. Indeed, a PIII based PC is very likely to be able to play the stream at such rate, but whether youre doing something else at the same time, say compile a source code, processing something in the background, and so on, the computer will drastically lose performance. Core mechanisms in DirectShow are designed to undertake this issue. The more politically correct solution, and by the way working solution, is to try to play the video stream as fast as possible, being synch with the audio stream, and drop any image from the video stream whenever it loses synchronization with the audio stream. In this article, we are to talk with different point of views about synchronization mechanisms and by the way provide custom solutions, including or not multithreading. Solution #1: using CWinApp::OnIdle from the MFC framework. Solution #2: using asynchronous notifications through a custom video renderer filter Solution #3: using asynchronous streaming through multithreading Why video loses synchronization with audio Its well known that audio decoding needs less CPU time than video decoding. Its because for a specific time duration, there is much more data to decode in the video stream than in the audio stream. Thus, whenever there is a lack of synchronization between the video and the audio stream, its very likely

文档评论(0)

snj01 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档