问题标签 [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 投票
1 回答
990 浏览

iphone - 使用 AVCaptureMovieFileOutput 记录的时间差异

AVCaptureMovieFileOutput通过设置最大持续时间限制记录了一个电影文件。例如:如果我想录制 10 秒的视频,我已经为电影文件设置了最大持续时间和其他属性,如下所示......

但是录制的视频仅显示 9 秒(我使用 播放MPMoviePlayerController),为什么会有那个时差.. 如何准确录制 10 秒。我在设置最大持续时间时做错了什么。谢谢。

0 投票
0 回答
712 浏览

ios - 在 iOS 中使用图像数组创建视频

我正在尝试从一组图像创建视频。

我创建了一个视频,但演示时间有问题,即CMTime

我正在使用以下代码创建视频

如果数组中有 7 个图像,这将创建一个 7 秒的视频。这意味着每张图片播放 1 秒。

我的问题是:如何制作具有相同图像集的视频(假设 7 个),其中每个图像在视频中的显示时间不同?

就像第一张图片从总视频时长播放 9 秒一样,然后第二张图片播放 5 秒,第三张图片播放 20 秒。

提前致谢。

0 投票
1 回答
792 浏览

ios - 如何确定 AVAssetWriter 中使用的样本缓冲区的持续时间

我有一个示例缓冲区,用于为 AVAssetWriter 捕获视频。我试图找出一种方法来确定我捕获了多少视频(时间)。目前我可以通过使用访问当前缓冲区时间戳

我正在寻找一种方法来确定缓冲区的持续时间,我试过了

由于某种原因,在 .002333 和 nan 之间

0 投票
1 回答
1414 浏览

objective-c - CMTimeGetSeconds 返回 0 而不是 0.0666667

您好我正在尝试将表示帧速率的整数转换为 CMTime,以便能够在 AVCaptureScreenInput 中设置 minFrameDuration。

直到现在我有

如果 numberOfFrames 设置为每秒 15 帧,则 frameDuration 为 0.066667,因此 CMTimeMakeWithSeconds 的参数为 0.066667 和 1,这意味着 CMTimeGetSeconds 应返回 0.066667/1 = 0.066667,但它返回 0。

有人可以弄清楚我做错了什么并解释我为什么吗?谢谢。

Edit1:我让它改变这样的功能:

我仍然无法理解为什么最后一种方法不起作用

0 投票
1 回答
8967 浏览

objective-c - 从 NStimeInterval 准确转换为 CMTime

我正在使用两个播放器,一个是MPMoviePlayerController,另一个是AVPlayer。无论何时MPMoviePlayerController被寻找,它都会将时间设置为AVPlayer。一切正常。将MPMoviePlayerController当前时间转换为CMTime它正在四舍五入 ex:(如果 mpplayer 时间为 11.80132,则四舍五入为 11)。

如果不四舍五入,我们如何将时间设置为AVPlayer

获取 mpplayer 时间并发送到AVPlayer课堂的代码

课堂上的代码AVPlayer并将时间转换为CMTime

0 投票
1 回答
259 浏览

ios - 如何将用户价值添加到 CMTimeMakeWithSecondValue

定格动画应用

尝试通过从步进器收到的用户值设置帧持续时间 (/.5): self.stepperValue;

每秒五帧的原始设置硬编码值

现在尝试由步进值确定的每秒帧数,到目前为止我尝试过的内容(stepperValue 被正确读取)

这导致没有被捕获

第二次尝试

无论从步进器输入值,这都会产生标准的每秒 5 帧的值

0 投票
4 回答
3379 浏览

objective-c - 如何将 CMTime 添加到 NSMutableDictionary?

我目前正在尝试将一些视频剪辑设置添加到 NSMutableDictionary,包括两个 CMTime 对象。

我正在尝试存储正在使用的视频流(用整数表示)、剪辑持续时间(CMTime)和剪辑开始时间(CMTime),它们在代码的其他地方定义。

我可能很愚蠢,但我不知道如何将 CMTimes 添加到字典中,我收到“将 'CMTime' 发送到不兼容类型 'id' 的参数”错误。

我尝试了 setObject 和 setValue 都没有成功,并且在任何地方都找不到答案。

0 投票
4 回答
15048 浏览

ios - 在 AVPlayer seekToTime 中使用秒

这应该是一个简单的。我有一个AVPlayer正在播放的视频文件,我希望能够跳到一个特定的时间,但我在理解如何CMTime工作时遇到了一些麻烦。

我需要以秒为单位指定时间。例如:如果我想跳到第二个 10.8 我想做这样的事情:

但我没有得到我想要的结果。

0 投票
0 回答
340 浏览

ios - 使用 AVAssetImageGenerator 在指定处获取缩略图

AVAssetImageGenerator我通过指定CMTimeMakeWithSeconds为 (0.0, 600)来拍摄缩略图。它工作正常,但我不明白CMTime. 我阅读了文档,但仍然不清楚。假设我想在 5 秒或恰好/最接近 5 秒后拍摄缩略图。请说明如何设置。这两者有什么区别:

提前致谢

0 投票
0 回答
987 浏览

ios - 从目标中的 UIImages 创建视频

我使用此代码从图像创建视频。它将完美地创建一个图像的修复时间。但我的问题是为不固定的一帧时间创建视频。这是我的代码。

imageArray 是所有图像的数组,数组中有每个对象的时间间隔。请帮我。

我有一些问题需要了解 CMTIME。请帮我解决这个问题。