无法使用QTMovie直接播放.mp3文件

时间:2010-10-05 11:11:59

标签: cocoa audio

我正在尝试使用以下代码点击按钮播放.mp3文件:

NSString *audioFilePath=[[audioInputTextField stringValue] stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding];
NSURL *audioUrl = [[NSURL alloc] initWithString:audioFilePath];
QTMovie* soundToPlay = [[QTMovie alloc] initWithURL:audioUrl error:nil];
[soundToPlay play];

此处用户需要在文本字段中输入音频文件的有效网址,然后点击它旁边的按钮进行播放,但它对我不起作用。没有播放音频:(

如果我做错了什么,有人可以建议我吗?

谢谢,

Miraaj


示例代码可以从这里下载 - Sample Code download link

我尝试的一个示例链接是 - In the end song

2 个答案:

答案 0 :(得分:0)

audioFilePath是否是有效的文件系统路径? audioUrl是有效的文件URL还是没有?对我来说,它看起来不太可能,因为你提供了一个url编码的路径,并试图用该字符串初始化一个新的URL。

你的audioFilePath应该是一个有效的/Path/To/Folder/File.mp3,如果你有一个基本的文件路径,你应该用NSURL的+ fileURLWithPath:方法创建你的URL。

答案 1 :(得分:0)

您输入的网址包含已经过百分比转义的字符,然后您的程序添加了转义百分比。这意味着您双重转义了字符,将正确的“%20”转换为错误的“%2520”。

尝试两种方式:首先尝试URL而不转义,然后如果失败,添加百分比转义并重试。如果 失败,请显示initWithURL:error:给您的错误。