如何使用 NSOpenPanel 导入视频文件?

How can I import video files with NSOpenPanel?

我想用 NSOpenPanel 导入视频文件。我该怎么做?

我想在 avkit 播放器上播放此视频。也许你也可以帮忙播放视频文件?

这是我写的代码

        let filePicker: NSOpenPanel = NSOpenPanel()

    filePicker.allowsMultipleSelection = false
    filePicker.canChooseFiles = true
    filePicker.canChooseDirectories = false
    filePicker.appearance = NSAppearance(named: .aqua)
    filePicker.styleMask.insert(.unifiedTitleAndToolbar)
    filePicker.styleMask.insert(.titled)
    filePicker.titlebarAppearsTransparent = true
    filePicker.runModal()

    let chosenFile = filePicker.url

    if chosenFile != nil
    {
        let imageImport = NSImage(contentsOf: chosenFile!)
    }

我试图找到有关它的教程,但这似乎不是一个常见问题。

使用 allowedFileTypes 属性 以及 Uniform Type Identifiers 系统。

如果要过滤 Mac OS X 认为是电影文件的任何文件,无论扩展名如何,请传入 public.movie:

filePicker.allowedFileTypes = ["public.movie"]

如果您只想过滤特定电影格式的 MPEG-4 文件,请传入不同的 UTI:

filePicker.allowedFileTypes = [kUTTypeMPEG4 as String] // kUTTypeMPEG4 == "public.mpeg-4"

如果您只想允许扩展名为 .mp4 的文件(MPEG-4 编码允许的几个扩展名之一),请将扩展名传入:

filePicker.allowedFileTypes = ["mp4"]

示例从最通用的(所有类型的电影文件)到更具体的(仅 MPEG-4 编码文件)再到最受限制的(仅 .mp4 文件)。选择一个适合您的需求。