English 中文(简体)
媒体基金会来源阅读器:视频时间戳每N样本增加16毫秒
原标题:Media Foundation Source Reader : Video timestamp increase additional 16 ms every N samples

我实时应用了网络摄像头。 我用Win 10媒体基金会的源阅读器实时捕捉视频。 一切正常, 除了时间戳。 我需要知道样本何时被采集, 所以我要记录每个样本的时间戳, 并检查样本之间的时间差。 为了测试, 我复制了视频内容, 只记录时间戳。 我使用30赫兹框架率, 并取得了以下结果,

样本指数、时间戳、样本之间的差异

样本1, 64285.177787 s, 32.07 ms

样本2, 64285.20989秒, 32.02毫秒

样本3,64285.24188秒,32.00毫秒

样本4,64285.27385秒,31.97毫秒

样本5、64285.30589秒、32.04毫秒

样本6, 64285 333794 秒, 32.05毫秒

样本7、64285 36990秒、31.96毫秒

样本8,64285,41776 s, 47.86 ms?

样本9, 64285.44984s, 32.08 ms

样本10、64285.48187s、32.03毫秒

样本11、64285.51386s、31.99毫秒

样本12, 64285.54589秒, 32.03毫秒

样本13、64285.57786秒、31.97毫秒

样本14, 64285. 60992 s, 32.06 ms

样本15、64285.64186s、31.94毫秒

样本16、64285.67385秒、31.99毫秒

样本17、64285.70588秒、32.03毫秒

样本18、64285.73792秒、32.04毫秒

样本19、64285.76988秒、31.96毫秒

样本20、64285.80191秒、32.03毫秒

样本21, 64285.83392秒, 32.02毫秒

样本22, 64285.8658587 秒, 31.95毫秒

样本23, 64285. 91385 s, 47.98 ms?

样本24、642858.94586s、32.02毫秒

样本25, 64285.97788秒, 32.02毫秒

样本26、64286.00986秒、31.98毫秒

27号样本,64286.04182秒,31.95毫秒

样本28、64286.07388秒、32.06毫秒

样本29、64286.10588秒、32.00毫秒

样本30、64286.13785s、31.96毫秒

31, 64286.16990秒, 32.06毫秒

样本32, 64286.20190 s, 32.00 ms

样本33, 6428623391秒, 32.01毫秒

样本34, 64286.26586s, 31.95毫秒

样本35,64286 29786秒,32.01毫秒

样本36, 64286. 32986秒, 32.00毫秒

样本37, 64286 377787 s, 48.00 ms?

抽样38,64286.40984秒,31.98毫秒

样本39, 64286.44184s, 31.99毫秒

样本 40, 64286.4738 秒, 32.05毫秒

样本41, 64286.50588 秒, 31.99毫秒

样本42, 64286. 53785 秒, 31.98毫秒

抽样43, 64286.56987秒, 32.02毫秒

样本44 64286.60190秒,32.03毫秒

样本 45, 64286.63385 秒, 31.94毫秒

样本46、64286.66597秒、32.12毫秒

抽样 47, 64286.69790秒, 31.93毫秒

抽样 48, 64286.72986秒, 31.96毫秒

抽样 49, 64286.76186 秒, 32.00毫秒

样本50, 64286.79386秒, 32.00毫秒

样本51, 6428684188 s, 48.02 ms?

样本52、64286.87388秒、32.00毫秒

样本53, 64286.90585秒, 31.97毫秒

样本54、642886.93785秒、32.00毫秒

样本55, 64286. 96988秒, 32.03毫秒

样本56、64287.00184秒、31.96毫秒

样本57、64287.73385s、32.01毫秒

抽样 58, 64287.6594 s, 32.09 ms

抽样 59, 64287.9789秒, 31.95毫秒

样本60、64287.12985秒、31.96毫秒

61, 64287.16189 s, 32.04 ms

62, 64287.1938秒, 32.00毫秒

样本63, 64287.22586s, 31.96毫秒

样本64、64287.25788秒、32.02毫秒

样本65, 64287,30587 s, 47.99 ms?

样本66, 64287.33787 秒, 32.00毫秒

样本67, 64287.36985 秒, 31.99毫秒

样本 68, 64287.40184 秒, 31.99毫秒

抽样 69, 64287 43387 秒, 32.03 毫秒

样本70, 64287.46589秒, 32.02毫秒

样本71、64287.49785秒、31.96毫秒

样本72、64287.52986s、32.01毫秒

抽样73, 64287.56188秒, 32.02毫秒

样本74、64287.59385秒、31.97毫秒

样本75、64287.62587秒、32.02毫秒

样本76、64287.65793秒、32.06毫秒

样本77、64287.68991秒、31.99毫秒

抽样 78, 64287.72186 秒, 31.95毫秒

样本79, 64287.76982s, 47.96ms?

样本80、64287.80187秒、32.05毫秒

样本81, 64287.833888秒, 32.01毫秒

样本82、64287.86584s、31.96毫秒

样本83, 64287.89783 秒, 31.99毫秒

样本84、64287.92985秒、32.01毫秒

样本85、64287.96186s、32.01毫秒

样本86、64287.99384秒、31.98毫秒

87, 64288.02587秒, 32.03毫秒

样本88, 64288.05787秒, 32.00毫秒

抽样 89, 64288.8889s, 32.02毫秒

样本90、64288.12190s、32.00毫秒

样本91, 64288.15388 秒, 31.98毫秒

样本92、64288.18587s、31.99毫秒

93号样本,6428823383s,47.96ms?

样本94、64288.26583秒、32.00毫秒

样本95, 64288.29787 秒, 32.04毫秒

样本96、64288.32992秒、32.05毫秒

样本97、64288.36182 秒、31.90毫秒

抽样98, 64288.39386秒, 32.04毫秒

样本99, 64288.42588秒, 32.02毫秒

样本100, 64288.45784 秒, 31.96毫秒

抽样 101, 64288.4898 秒, 32.04毫秒

抽样102,64288.82189秒,32.01毫秒

样本103、6428855388秒、31.99毫秒

样本104、64288.8586s、31.97毫秒

样本105、64288.61785秒、32.00毫秒

样本106、64288.64998秒、32.13毫秒

107号样本,64288869791s, 47.93ms?

抽样108、642888.72983秒、31.93毫秒

抽样109、64288.76188秒、32.05毫秒

样本110、642888.79388秒、31.99毫秒

样本111、64288.82585s、31.97毫秒

112、64288.85785秒、32.00毫秒

样本113、64288.88987秒、32.02毫秒

样本114, 642888.92188秒, 32.01毫秒

样本115、64288.95390秒、32.02毫秒

样本116、64288.98587秒、31.97毫秒

117, 64289.01790秒, 32.02毫秒

样本118、64289.04986秒、31.96毫秒

样本119、64289.08186s、32.00毫秒

样本120、64289.11386秒、32.01毫秒

样本121, 64289. 16885 s, 47.98 ms?

122, 64289.1938秒, 32.01毫秒

样本123、64289.22584秒、31.98毫秒

样本124, 64289.25785 秒, 32.01毫秒

样本125、64289.28987秒、32.02毫秒

样本126、64289.32184s、31.96毫秒

样本127, 64289.35385 秒, 32.01毫秒

抽样128、64289.38589秒、32.04毫秒

抽样129、64289.41786秒、31.98毫秒

抽样130、64289.44982秒、31.96毫秒

131, 64289.4818 秒, 32.06毫秒

抽样132、64289.513888秒、32.00毫秒

样本133、64289.54585s、31.97毫秒

134, 64289.57786秒, 32.01毫秒

135, 64289.62588 s, 48.02 ms?

样本之间的间隔每14个样本将增加16毫秒,平均间隔为33毫秒,与30赫兹一致。但我需要一个稳定间隔33毫秒,而不是平均33毫秒。

我尝试过不同的框架率和不同的网络摄像头。 假设情况是一样的。 它会增加每N样本16毫秒( 不同的框架率和不同的网络摄像头可能不同 ) 。 我还使用 QueryPerforactanceCounter 来验证。 它显示了相同的结果 。

我不认为网络摄像头会定期延迟。 我想源阅读器有一些内部缓冲, 并做一些邮递处理。 我试图直接使用 MFMedia Source 和 MFMediaStream, 但是它不会输出任何样本。 我必须返回源阅读器 。

我的捕捉代码与SDK的样本相同。 (MFCaptureD3D)

有人知道如何让源阅读器制作一个稳定的样本期吗?

提前感谢。

本 本

问题回答

大多数网络相机,特别是消费者级相机和用笔记本电脑制作的相机,不需要生成所要求的或承诺的框数。总的来说,配置框架速率应该被解释为“每秒最大框架数 ”, 相机应该提供。 如果您对尽可能多的框架感兴趣, 您只需用给最高FPs承诺的设置启动相机。 如果您有兴趣获得上限速率, 然后分别更新设置 。

许多摄像头通过降低有效框架速率来应对低光度条件。这不必是平滑的,所以摄像头只是跳过一些带有你所看到的行为的框架。

最容易尝试的是将相机指向明亮的东西,然后检查它是否以平滑的高框架速率捕捉到。如果是这样的话,在其他情况下,相机会跳过一些,那么它就是摄影机和驾驶员在低光条件下反射的方式。

I also encounter this problem. Have you solved this problem? We develop on a window system, connect a USB camera, and there is a 10-25ms image data delay when acquiring camera images. We analyzed that it is caused by a certain delay when Windows Media Foundation Source Reader directly reads UVC, and it changes periodically. Thank you





相关问题
Transparency of subtitles in Vista / Windows 7

I implemented the EVR renderer into a player of mine to deal with bad resizing quality on Windows Vista+ and came to problems... I have subtitle overlay problems with the EVR: try to see what i m ...

decode MPEG1/2 video with Media Foundation

I am using Media Foundation to play videos. On windows 7 some videos encoded with Mpeg1/Mpeg2 PS and Windows Media Player can play them, but Media Foundation does not(I tried to register a stub ...

Simulating a webcam stream

Is it possible to simulate a web-cam output so that other programs that use web-cams (for example Skype) will recognize it as a real web-cam?

Is there a macro to detect the operating system...?

I am planning to write a piece of code using the media foundation API which is available after vista. I want to add the code inside a #if block something like... #if <SomeMacro> // all the ...

Microsoft Media Foundation - Decode h264 samples

I used the Microsoft Media Foundation samples (namely MFCaptureToFile) to capture H264 frames from my webcam and write them to a file. I m trying to use IMFTransform to decode the captured frames and ...

System.AccessViolationException from unmanaged code?

I m writing this library that implements some basic audio player features in C++/CLI via the Media Foundation framework that will be consumed by managed code. I can play audio, stop, pause, etc just ...

直接使用 直接Show外的放映过滤器?

I m目前与Windows Media Foundation打交道。 然而,由于Microsoft H.264 decoder和一些海关格式缺失的编码存在一些问题,我很想知道这是否是......。

Media Foundation TypeLibrary for managed code?

Is anyone know how to generate media foundation TypeLibrary which will then be imported as COM in managed code ? I didn t found any dll or tlb file related to media foundation which i can import in my ...

热门标签