问题标签 [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 回答
833 浏览

swift - addPeriodicTimeObserver Swift CMTIME

代码片段说,间隔将每 0.5 秒调用一次块

// 每半秒调用一次回调

如果您检查调试日志,并且结构间隔包含以下值。

值原来是 500000000

timeScale 原来是 1000000000

有人可以解释它如何给出精确的 0.5 秒吗?据我了解,每个 500000000 个单位 1/1000000000

0 投票
0 回答
200 浏览

ios - 当 currentTime 距离持续时间为 'n' 秒时,AVQueuePlayer 执行操作

我需要在距离完成一秒后添加 a CABasicAnimation(playerItem 的持续时间 - 1 AVPlayerLayerAVQueuePlayerplayerItem这是一个基本的交叉渐变。我似乎无法弄清楚如何判断我何时到达了正确的时间。使用下面的代码,我添加了一个周期性时间观察器。有什么方法可以知道我的 playerItem 何时结束一秒钟?

0 投票
1 回答
540 浏览

ios - 无法将 Swift CMTimeRange 转换为 Float 或获取数字?

我有一个数据类型问题 - 在 Swift 中使用 AVPlayer 时,当我尝试获取时,我得到了一个 CMTimeRange:

用这个打印的是:

我已经尝试了所有成员并试图在这里获取 cmtimerange 键的值,但我只是得到错误。我需要最终值 1694 作为浮点数。

我该怎么做呢?

0 投票
1 回答
6371 浏览

ios - CMTimeMakeWithSeconds 中的首选时间刻度

我正在实现自定义相机,为此我想设置曝光持续时间。

我设置滑块属性的代码是-

现在,每当更改滑块时,设置曝光时间时就会​​出现问题。

我的代码看起来像这样 -

但在

我对它感到困惑preferredTimescale,它的价值应该是多少,它在 600 上运行良好,但什么是理想价值。

0 投票
1 回答
130 浏览

ios - 将 CMTime 保存在 core data + Xcode8 + swift3

我在数据模型中声明了两个属性(currentTimefullTime),Transformable如下所示。

在此处输入图像描述

如何在此属性中保存数据?我需要先转换NSData吗?或任何其他方式?

0 投票
0 回答
212 浏览

swift - iOS swift:我应该将 CMTimingInfo 与 H264 参数和 CMBlockBuffer 一起嵌入 Elementary Stream(通过网络发送)吗?

我使用以下 stackoverflow 帖子提取 h264 参数,因此我可以通过网络发送基本流,接收应用程序将重建 CMSampleBuffer。但是,AVSampleBufferDisplayLayer 上没有显示视频图像。

我退后一步,提取了 NAL 单元并在设备内部重建了 CMSampleBuffer。然后我发现我需要创建一个 CMTimingInfo 对象并将其作为 CMSampleBufferCreate 方法的参数之一。然后,当我将新创建的 CMSampleBuffer 排队到 AVSampleBufferDisplayLayer 时,就会显示视频图像。

所以我认为我应该将 CMTimingInfo 集成到基本流中并通过网络发送。但是,我看过 WWDC 2014 - Session 513,他们没有提到将 CMTimingInfo 包含到基本流中。

提前感谢您回答我的问题。

0 投票
1 回答
233 浏览

swift4 - 在 ios9.3 的 swift4.0 中使用 NSKeyedArchiver 归档 CMTime 时出错

以下代码archivedTimes()在 swift4 中成功构建。它在安装了 ios10.3 的设备上运行良好。

但是,在安装了 ios9.3 的设备上运行它时,它会崩溃说:

由于未捕获的异常“NSInvalidArgumentException”而终止应用程序,原因:“*** -[NSKeyedArchiver encodeValueOfObjCType:at:]:此归档程序无法编码结构”

我的猜测是,这可能与新的 Codable 协议和旧的 NSCoder 协议之间的某些冲突有关。但我不知道是什么!

请注意,该问题与数组无关。因为归档一个简单的 CMTime 也会导致这样的错误。但是,我这样发布它,因为归档 CMTime 数组最终是我的目标。

0 投票
1 回答
615 浏览

ios - 检查 CMTime 是否在 CMTimeRange

我试图了解检查是否CMTime在范围内的正确方法是什么。例子:

假设我们有一个持续时间为 20 秒的视频。我们将此视频分成两部分CMTimeRange

  • 从 0 秒到 10
  • 从 10 秒到 20

现在,对于任何给定CMTime的(例如,视频进度)。我如何确定存在于哪个CMTimeRangea中CMTime

0 投票
2 回答
726 浏览

ios - 将 CMTimeRange 拆分为多个 CMTimeRange 块

让我们假设我有一个从零开始 CMTimeRange构建的 40 秒。start timeduration

我想通过X秒分隔符将其CMTimeRange分成多个块。因此,块的 将与原始持续时间相同,并且每个将反映前一个块的。最后一个块将是剩余秒数的模数。total durationdurationstartTimeendTime

例如,对于40秒的视频,以及每块15秒的分隔符:

  1. 第一次CMTimeRange- 开始时间:0,持续时间:15 秒。
  2. CMTimeRange- 开始时间:15,持续时间:15 秒。
  3. 第三CMTimeRange- 开始时间:30,持续时间:10秒。(left overs)

我试过的:

我尝试使用CMTimeSubtract总持续时间并以递归方式再次使用结果,直到 CMTime 无效,但它似乎不起作用。

任何帮助将不胜感激。

最好的问候, 罗伊

0 投票
1 回答
247 浏览

ios - 尝试将 CMTime 存储为 Core Data 上的可转换属性

我之前使用过 Core Data 的可转换属性,但没有C使用CMTime.

我需要CMTime使用可转换存储在核心数据上。

在 Model 对象上,我已将其声明为可转换的。

我知道这CMTime是一个C对象,我需要将其转换为 NSDictionary 并将其序列化,以便可以存储在 Core Data 上。

NSManagedObject课堂上,我有这个...

?????是我的问题。你看,该方法transformedValue:(id)value接收值,id但我需要一个CMTime. 我不能简单地施放它。

此外,当我创建该实体的实例时,理论上我应该能够将值分配为:

而且我没有看到我怎么能做到这一点id...

另外,在reverseTransformedValue:我返回一个id.

我不明白这个。我希望能够设置并接收CMTime