问题标签 [cmtime]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
8588 浏览

objective-c - AVAssetWriterInputPixelBufferAdaptor 和 CMTime

我正在用 为视频写一些帧AVAssetWriterInputPixelBufferAdaptor,而时间的行为不是我所期望的。

如果我只写一帧:

这给我一个长度为零的视频,这是我所期望的。

但如果我继续添加第二帧:

我得到十秒的视频,我期待五秒。

这里发生了什么?是否withPresentationTime以某种方式设置了帧的开始和持续时间?

请注意,我不是在打电话endSessionAtSourceTime,只是finishWriting

0 投票
2 回答
4710 浏览

image - 我无法获得从 1.8 秒视频生成静止图像的精确 CMTime

每次我尝试从我的视频资产生成静止帧时,它都会在 0.000.. 秒的时间生成。我可以从我的日志消息中看到这一点。好消息是我可以在时间 0.000.. 获取图像以显示在名为“myImageView”的 UIImageView 中。我认为问题是 AVURLAssetPreferPreciseDurationAndTimingKey 没有设置,但即使我想出了如何做到这一点,它仍然不起作用..

这是我所拥有的..

time、actualTime 和 generate 在 Header 中声明

我的控制台显示..

2011-04-28 18:49:59.062 videoTest[26553:207] 总视频时长为 1.880000

2011-04-28 18:49:59.064 videoTest[26553:207] 我想要我的图像的时间是 1.000000

2011-04-28 18:49:59.064 videoTest[26553:207] 我的图像的实际拍摄时间是 0.000000

…………………………………………………………………………………………

非常感谢你们提前.. :)

0 投票
3 回答
25426 浏览

iphone - ObjectiveC/CMTime - 将 AVPlayer.duration 转换为毫秒

我正在创建一个播放铃声的应用程序,我想知道每次播放铃声的当前时间(以毫秒为单位)。

CMTime cTime = player_.currentTime; 浮动 currentTime = cTime.value / cTime.timescale;

此处的 currentTime 以秒为单位获取值。如何以毫秒为单位获得确切的 currentTime 值?

0 投票
2 回答
5123 浏览

ios - CMTime 和 AVFoundation 中的单帧移动

我正在尝试使用 AVFoundation 播放视频。我将以下代码用于将播放推进一帧的按钮。

它间歇性地工作,在某些执行中它会做正确的事情并推进一帧,但大多数时候我必须按下按钮 3 或 4 次才能推进一帧。

这让我认为这是某种精度问题,但我无法弄清楚它是什么。每次运行时,新的 CMTime 似乎都以相同的量前进。

我的另一个理论是,这可能是由于 currentTime 没有以我的帧速率设置为精确的帧边界(由通过视频搜索引起)。但我不知道如何以我的帧速率“捕捉”到最近的帧。

谢谢你的帮助!

0 投票
2 回答
1501 浏览

iphone - 我正在尝试使用 AVPlayer 的当前时间更新 UISlider

我正在尝试使用 AVPlayer 的当前时间更新 UISlider。我使用 NSTimer 每 1 秒调用一次带有此代码的方法:

CMTime duration = audioPlayer.currentTime; float seconds = CMTimeGetSeconds(duration); NSLog(@"duration: %.2f", seconds); nowPlayingSlider.value = seconds;

时间记录正确,但 uislider 永远不会更新。

0 投票
3 回答
453 浏览

iphone - NSValue 可能不响应...警告

我在 XCode 中收到警告,NSValue may not respond to +valueWithCMTime:'但我不确定我做错了什么。在我的头文件中,我有这个:

在我的实现文件中,我有这个:

我已经在另一个班级的其他地方使用了上述行并且没有警告,那么这个可能缺少什么?这与方法的设置方式有关吗?

0 投票
2 回答
1138 浏览

objective-c - AVMutableAudioMix - 不能淡出

我正在尝试淡出 AVComposition 轨道(它是视频的音轨)。

我可以在开始时淡出它没问题,但在最后淡出它时遇到很多麻烦。这是我的代码:

length是一个 NSUInteger,它是以秒为单位的视频长度。

totalDuration是总视频时长的 CMTime,时间刻度为kVideoFPS

kVideoFPS是一个值为 30 的常数

我的目标是在合成结束后 5 秒开始淡出。我已经尝试了各种各样的东西,比如 CMTimeMakeWithSeconds。我还颠倒了淡入的值,它工作正常(在开始时将音量从 1.0 淡入到 0.0)。

任何想法都非常感谢!

0 投票
4 回答
3458 浏览

iphone - 使用 setVolumeRampFromStartVolume 淡入淡出保存音频在 iOS 中不起作用

我正在尝试为 iPhone 项目剪切音频文件。我可以剪切并保存它,但是我尝试应用的任何淡入/淡出都不起作用,音频文件只是保存剪切但没有淡出。

我正在使用以下代码:

0 投票
1 回答
1016 浏览

iphone - 将 CMTime 存储在 CoreData 中?

抱歉,如果之前已经回答过,但我在这里找不到答案。

如何使用 CoreData 存储 CMTime 值?

提前致谢。

0 投票
6 回答
39371 浏览

objective-c - CMTime 秒输出

这可能看起来很荒谬,但是如何在 Objective-C 中将 CMTime 的秒数输出到控制台?我只需要将该值除以时间刻度,然后以某种方式在控制台中看到它。