XcodeでNetRadio Metadata編 [Xcode]
昨日に引き続き本日は流れている曲とアーティストを表示することにする。
これまたAVFoundationはちゃんと用意されている。
AVPlayerItemを使うといいようだ。
AVPlayerItem * playerItem = [AVPlayerItem playerItemWithURL:url];
[playerItem addObserver:self forKeyPath:@"timedMetadata" options:NSKeyValueObservingOptionNew context:nil];
//player_ = [AVPlayer playerWithURL:url];
player_ = [AVPlayer playerWithPlayerItem:playerItem];
でもってキーがかわったらMetadataから曲名とタイトルを取り出す。
Metadataの取り出すポイントはAVPlyerItem.timedMetadataと
AVMetadataItemを使うことのようだ。
observeValueForKeyPathメソッドでやらせる。
曲名がかわると以下のようにMetadataから取り出せる。
key: title
keySpace: comn
commonKey: (null)
value: Rurutia - shujaku no sora
最初がアーティストぼいので△-△で分割してとりだす。
Objective-C はどうするんだ、splitないのか・・・
NSArray *values = [metadata.stringValue componentsSeparatedByString:@" - "];
でいけるようです、
こんな分割で曲名とアーティストとりだしていいのだろうか
Shoutcastしか通用しなかったりして・・・
やっぱ簡単、30分もしないうちにここまでできた。
ブログ書いている方が長い・・・・
これまたAVFoundationはちゃんと用意されている。
AVPlayerItemを使うといいようだ。
AVPlayerItem * playerItem = [AVPlayerItem playerItemWithURL:url];
[playerItem addObserver:self forKeyPath:@"timedMetadata" options:NSKeyValueObservingOptionNew context:nil];
//player_ = [AVPlayer playerWithURL:url];
player_ = [AVPlayer playerWithPlayerItem:playerItem];
でもってキーがかわったらMetadataから曲名とタイトルを取り出す。
Metadataの取り出すポイントはAVPlyerItem.timedMetadataと
AVMetadataItemを使うことのようだ。
observeValueForKeyPathメソッドでやらせる。
曲名がかわると以下のようにMetadataから取り出せる。
key: title
keySpace: comn
commonKey: (null)
value: Rurutia - shujaku no sora
最初がアーティストぼいので△-△で分割してとりだす。
Objective-C はどうするんだ、splitないのか・・・
NSArray *values = [metadata.stringValue componentsSeparatedByString:@" - "];
でいけるようです、
こんな分割で曲名とアーティストとりだしていいのだろうか
Shoutcastしか通用しなかったりして・・・
やっぱ簡単、30分もしないうちにここまでできた。
ブログ書いている方が長い・・・・
コメント 0