我需要动态创建id3标记文件并将其发送到iOS的视频流。
为了测试puspose我使用Apple id3taggenerator工具创建一个hello.id3文件,其命令如下:
id3taggenerator -o hello.id3 -title "Hello World"
从iOS我然后阅读此文件内容并将其发送到我的视频流,一切正常。我把这个文件内容打印成一个字符串并得到了这个(也就是说,我想是id3标签规范):
(lldb) po text
"ID3\u{04}\0\0\0\0\0\u{17}TIT2\0\0\0\r\0\0\u{03}Hello World\0"
现在我想直接在代码中创建这个文件内容。我尝试使用AVFoundation的AVMutableMetadataItem类但没有成功(我没有正确获取内容描述或者我不知道如何获取它)。
let item = AVMutableMetadataItem()
item.keySpace = AVMetadataKeySpaceID3;
item.key = AVMetadataID3MetadataKeyTitleDescription as NSString
item.value = "Hello World" as NSString
// how can I get the item raw data ?
我也看了id3libiOS但是能够让它正常工作。
有人已经这样做了吗?