Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/video/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/powerbi/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Video Mp4视频中奇怪的NTSC帧时间戳_Video_Mp4_Android Mediacodec_Ntsc - Fatal编程技术网

Video Mp4视频中奇怪的NTSC帧时间戳

Video Mp4视频中奇怪的NTSC帧时间戳,video,mp4,android-mediacodec,ntsc,Video,Mp4,Android Mediacodec,Ntsc,我正在调查一段在安卓三星平板电脑上拍摄的mp4视频。我使用MediaCodec和MediaExtractor获得了一些关于它的详细信息,发现了一些对我来说没有意义的有趣的东西。NTSC视频似乎为1080p/29.97fps。我与MediaExtractor.SampleTime信息一起制作了一个帧列表。名单如下: 0-KEY timestamp: 0 1- timestamp: 36711 diff:36711 2- timestamp: 70022 diff:33311 3- timest

我正在调查一段在安卓三星平板电脑上拍摄的mp4视频。我使用MediaCodec和MediaExtractor获得了一些关于它的详细信息,发现了一些对我来说没有意义的有趣的东西。NTSC视频似乎为1080p/29.97fps。我与MediaExtractor.SampleTime信息一起制作了一个帧列表。名单如下:

0-KEY timestamp: 0
1- timestamp: 36711  diff:36711
2- timestamp: 70022  diff:33311
3- timestamp: 103322  diff:33300
4- timestamp: 136655  diff:33333
5- timestamp: 169955  diff:33300
6- timestamp: 203300  diff:33345
7- timestamp: 236588  diff:33288
8- timestamp: 269955  diff:33367
9- timestamp: 303244  diff:33289
10- timestamp: 336577  diff:33333
11- timestamp: 369855  diff:33278
12- timestamp: 403166  diff:33311
13- timestamp: 436511  diff:33345
14- timestamp: 469800  diff:33289
15- timestamp: 503111  diff:33311
16- timestamp: 536477  diff:33366
17- timestamp: 569733  diff:33256
18- timestamp: 603055  diff:33322
19- timestamp: 636388  diff:33333
20- timestamp: 669700  diff:33312
21- timestamp: 703000  diff:33300
22- timestamp: 736311  diff:33311
23- timestamp: 769633  diff:33322
24- timestamp: 802944  diff:33311
25- timestamp: 836311  diff:33367
26- timestamp: 869577  diff:33266
27- timestamp: 902933  diff:33356
28- timestamp: 936211  diff:33278
29- timestamp: 969522  diff:33311
30-KEY timestamp: 1002833  diff:33311
有趣的是,帧的持续时间变化比我预期的要大。我认为持续时间应该是1/(30/1001)毫秒~33.366ms。 但正如我所看到的,例如,第一帧是~36.711ms。对我来说更有趣的是,第30帧(以零为基)从1.002833秒开始
它不应该在1.001秒开始吗? 有人能给我推荐一些关于数字形式的NTSC视频的文章吗?我是否遗漏了一些重要的东西,或者我的示例中的时间戳是否不标准?

起初,我在考虑是否能够计算流时间,以便从我将跳过的多个帧中进行搜索。假设我想跳过mp4流的27帧。我应该什么时候去?最后我看了看画面列表,想知道发生了什么:)

你的思维过程是按惯例进行的,但你错过了一件事。大多数软件都很烂。你所说的是真的,但无论是谁编写了产生mp4的软件,他都不在乎,也不知道如何正确地打包文件。不幸的是,野外的大多数视频文件都是这样的


试着平均所有的持续时间,它可能真的接近30000/1001

谢谢大家的回复,我很抱歉,我得到的信息是29.97,但是在有机会看了另一个相同类型的视频后,我发现这肯定是一个可变帧速率的视频。(第二个视频有一个持续时间为466333us的帧)
无论如何,因为它是一个实时捕获视频(不是静态图片或类似的演示),我不明白为什么帧持续时间不以固定帧速率的倍数变化。例如,像frame0=33.366ms和frame1=66.732(33.366*2)
想知道将这些视频转换成不同的帧速率格式(如23/24/25/29.97:)有多容易。

也许您可以共享一个指向示例文件的链接。