The only metadata I can get back from a VLCMedia instance is artworkURL
I have the following class which parses a VLCMedia instance and makes a callback when completed:
class VLCMediaParser: NSObject, VLCMediaDelegate {
var completion: VLCMediaParseCompletion? = nil
func parse(media: VLCMedia, options: VLCMediaParsingOptions, timeout: Int32, completion: @escaping VLCMediaParseCompletion) {
media.delegate = self
self.completion = completion
media.parse(withOptions: options, timeout: timeout)
}
func parse(media: VLCMedia, options: VLCMediaParsingOptions, completion: @escaping VLCMediaParseCompletion) {
media.delegate = self
self.completion = completion
media.parse(withOptions: options)
}
func mediaDidFinishParsing(_ aMedia: VLCMedia) {
completion?(.done)
}
func mediaMetaDataDidChange(_ aMedia: VLCMedia) {
print(aMedia.metaDictionary)
}
}
Here is the call to the parser class:
parser.parse(media: media,
options: VLCMediaParsingOptions(VLCMediaFetchLocal | VLCMediaParseLocal)) { status in
if status == .done {
print(media.metaDictionary)
}
}
I've tried both mp3 files and video files (mp4, mov, mkv) but the only metadata that ever gets returned is artworkURL.