gpt4 book ai didi

objective-c - 如何实现字符串 SCAudio Stream? - 声云

转载 作者:行者123 更新时间:2023-12-03 02:22:17 27 4
gpt4 key购买 nike

我正在使用声音云 sdk,我正在尝试使用他们的库来播放音频流。

我无法找到有关如何使用该类的任何引用。

我将不胜感激您能提供的任何帮助。

最佳答案

如果你在谈论 this libraries我可以帮助你。

首先,您应该运行此方法以通过其 ID 获取有关轨道的一些信息:

[api performMethod: @"GET" 
onResource: @"tracks"
withParameters: [NSDictionary dictionaryWithObject:trackID forKey:@"ids"]
context: @"trackid"
userInfo: nil];

如果您不知道 trackID 并且只有这样的跟踪链接: http://soundcloud.com/go-yoshimura/mikasasukasa ,然后运行此方法:
[api performMethod: @"GET" 
onResource: @"resolve"
withParameters: [NSDictionary dictionaryWithObject:songLink forKey:@"url"]
context: @"songname"
userInfo: nil];

然后你应该实现委托(delegate)的方法:
- (void)soundCloudAPI:(SCSoundCloudAPI *)soundCloudAPI 
didFinishWithData:(NSData *)data
context:(id)context
userInfo:(id)userInfo;

- (void)soundCloudAPI:(SCSoundCloudAPI *)soundCloudAPI
didFailWithError:(NSError *)error
context:(id)context
userInfo:(id)userInfo;

在第一种方法中,您应该使用 JSON Parser(JSONKit 或 SBJSON)解析数据。你应该得到 NSDictionary。
streamURL = [(NSDictionary *)jsonData objectForKey:@"stream_url"];
streamable = [[(NSDictionary *)jsonData objectForKey:@"streamable"] boolValue];

如果此轨道是可流式传输的,您可以通过以下方式获取 SCAudioStream:
stream = [[SCAudioStream alloc] initWithURL:[NSURL URLWithString:streamURL] authentication:auth];

您可以通过这种方式在 init 方法中更早地创建身份验证:
conf = [SCSoundCloudAPIConfiguration configurationForProductionWithClientID: kSCClientID
clientSecret: kSCClientSecret
redirectURL: kSCRedirectURL];
auth = [[SCSoundCloudAPIAuthentication alloc] initWithAuthenticationDelegate:self apiConfiguration:conf];

现在你有了 SCAudioStream。
//Playing
[stream play];

//Pause
[srteam pause];

//Seeking
[stream seekToMillisecond:ms startPlaying:YES];

就这样 :)

关于objective-c - 如何实现字符串 SCAudio Stream? - 声云,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10523914/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com