小编Hen*_*rik的帖子

在多个线程上处理实时照片

我正在使用.frameProcessor处理PHLivePhoto来修改每个帧。帧似乎是按顺序处理的,这很慢。我可以让PHLivePhotoEditingContext.frameProcessor充分利用多个核心吗?

func processLivePhoto(input: PHContentEditingInput) {
    guard let context = PHLivePhotoEditingContext(livePhotoEditingInput: input)
        else { fatalError("not a Live Photo editing input") }
    context.frameProcessor = { frame, _ in
        let renderedFrame = expensiveOperation(using: frame.image)
        return renderedFrame
    }
    // ...logic for saving
}
Run Code Online (Sandbox Code Playgroud)

core-image swift phlivephoto

6
推荐指数
1
解决办法
62
查看次数

插入蓝牙耳机时 AVAudioEngine 使用错误格式

我有一副带麦克风输入的蓝牙耳机。不使用麦克风,但使用时,输入和输出都强制为 8000kHz。

我的 AVAudioEngine 实例以 8000kHz 模式连接到耳机,除非我进入系统设置并指定我不想使用耳机进行输入(每次连接耳机时都必须执行此操作)。

我注意到其他应用程序可以以预期的 44100kHz 播放,没有任何问题。我的 AVAudioEngine 图中没有输入节点。

如何使 AVAudioEngine 更喜欢以合理的采样率进行连接?

audio macos bluetooth ios avaudioengine

5
推荐指数
1
解决办法
1224
查看次数

NSUserDefaults中的增量整数

是否有更优雅的方法来增加存储在用户默认值中的计数器?

let defaults = NSUserDefaults.standardUserDefaults()
defaults.setInteger(defaults.integerForKey("counter")+1, forKey: "counter")
Run Code Online (Sandbox Code Playgroud)

integer nsuserdefaults swift

4
推荐指数
2
解决办法
1421
查看次数

在 Swift 中使用 IOPSNotificationCreateRunLoopSource 创建 CFRunLoopSourceRef

我正在尝试订阅 macOS 上电源状态的更改。我发现有一种使用 IOKit 的方法,尽管它有点复杂。我需要#import <IOKit/ps/IOPowerSources.h>在 ObjC 桥接标头中使用它来导入它。然后我可以访问函数 IOPSNotificationCreateRunLoopSource,其签名为:

IOPSNotificationCreateRunLoopSource(_ callback: IOPowerSourceCallbackType!, _ context: UnsafeMutablePointer<Void>!) -> Unmanaged<CFRunLoopSource>!
Run Code Online (Sandbox Code Playgroud)

我从Callback method to Apple run Loop的答案中得到了一些帮助,但仍然无法IOPowerSourceCallbackType在 Swift 中创建类型的函数。编译此程序时缺少什么?

types callback iokit cfrunloop swift

3
推荐指数
1
解决办法
1588
查看次数

如何确定macOS 10.14重音色?

MacOS 10.14(Mojave)具有Dark界面风格和用户可选择的颜色重音.如何阅读这些值并听取更改?

macos user-interface colors custom-controls

3
推荐指数
1
解决办法
623
查看次数

可以在NSTextView中加下划线,但不能加粗文本

我在Xcode 8中使用向导创建了一个NSDocuments和storyboard应用程序.在ViewController场景中,我添加了一个NSTextView.某些菜单项被禁用,例如Bold和Italic.

查看第一响应者,粗体和斜体的操作不存在.我应该自己写这些方法吗?这是由于响应者链没有正确设置吗?为什么下划线显示但不大胆?

编辑:添加图像以显示如何使用检查器栏编辑文本,但格式菜单不显示我期望的命令.

该图显示了我如何使用检查器栏修改文本,但不能使用菜单,除了下划线

macos nstextview nsdocument nsresponder swift

2
推荐指数
1
解决办法
674
查看次数

隐藏 NSWindow 新建标签按钮

在 macOS 10.12 中,为 NSDocument 应用程序添加了一个新的标签栏。您可以阻止工具栏出现(请参阅如何禁用 Sierra 应用程序中的“显示标签栏”菜单选项?)。但是如何删除用于添加新 Windows 的“+”按钮?

cocoa tabs nsdocument nswindow macos-sierra

1
推荐指数
1
解决办法
1299
查看次数