問題タブ [mpmediaitemcollection]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
362 参照

objective-c - UITableview + iPod ライブラリの画像により、スクロールが途切れる。回避策はありますか?

MPMediaQuery からアルバムのリストをロードしている UITableView があります。正方形ではないアルバム アートを含むアルバムが、組み込みのセル ビューのラベル テキストを右に押し出していることに気付くまで、すべてが正常に機能していました。プロセス中にスクロールがスムーズではないことに気付いたので、これに気付いたのは私の失敗でした.

ペン先からセルを作ってみたところ、位置決めの問題は解決しましたが、パフォーマンスは依然として低下していました。この時点で、私は膨大な量の調査を開始し、実行できるようにあらゆることを試みました。

  • 最初は、イメージビューと 2 つのラベルを持つ nib のセルでした
  • imageview の奇妙なスケーリングを修正するために、uiview 内に imageview を追加してトリミングしました (実際のパフォーマンスへの影響はありません)。
  • 後処理なしで画像をロードしましたが、まだ不安定なパフォーマンスです。
  • -(void)drawRect でセルを実装し (Apple の TableViewSuite の例 #5 の例のように)、テーブルビューから画像を渡します。これは、最初の ~8 枚の画像のみをロードするだけで、パフォーマンスはわずかに低下しました。
  • 次に、[myCell setNeedsDisplay] を設定してセルを再描画し、他のすべての画像が正しく表示されるようにすると、パフォーマンスが低下しました。こちらも画像のある部分だけをそのまま描き直してみました。
  • 静止画像が 1 つだけのこの方法では、完璧なパフォーマンスが得られました。

cellIdentifier などの通常のものがすべて正しいことを確認しました。セル ビューにテキストしかない場合は、完全にスクロールします。

以下は、セルの画像を現在どのように取得しているかを示すために、デフォルトのセル ビューの 1 つを使用した tableviewcell の実装です。

Apple の iPod アプリでは、アートを含むアルバムのリストがシルクのようにスクロールするので、明らかに何かが欠けています。

0 投票する
0 に答える
395 参照

mpmediapickercontroller - メディア クエリを使用してメディア アイテム ピッカーの選択したコレクションを管理していますか?

iPod ライブラリ アクセス ガイドの 16 ページ (メディア クエリの使用法について説明しています) に、MPMediaQuery の使用法の説明の後に、次のような説明があります。

独自のコレクションを構築することもできます。これは、たとえば、ユーザーがメディア アイテム ピッカーで行った選択を管理する場合に役立ちます。ただし、コレクションは可変ではないことに注意してください。

メディアピッカーで選択されたアイテム コレクションのフィルタリングとグループ化 - これは本当に可能ですか? ガイドを徹底的に見ましたが、これのサンプルが見つかりませんでした...

どんな助けでも大歓迎です - 事前にどうもありがとうございました!

0 投票する
6 に答える
2399 参照

iphone - アーティストによるアルバムの数

それが私の質問です=)

songsByArtistのMPMediaItemCollectionsの各アーティストのアルバム数を取得するにはどうすればよいですか?

例:

ビートルズ3アルバム

AC /DC6アルバム

ありがとうございました !!

0 投票する
1 に答える
2801 参照

ios - MPMusicPlayerController キューの問題

MPMusicPlayerController に問題があります。appmusicplayer ではなく、iPodMusicPlayer です。私の問題は、キューを正しい順序で再生できないことです。さらに説明しましょう:

私は iPod ピッカーを使ってメディア コレクションを選択し、それを音楽プレーヤーのキューに追加します。これを行ったら、コレクション内のアイテムをテーブル ビューに表示します。その後、ユーザーはこのキューを「再生」できます。ただし、何らかの理由で、iPod コントロールを使用してプレイリストをナビゲートしようとすると、キューの順序が正しくないように見えます。ここにいくつかのコードがあります:

メディア ピッカーは次のメソッドを呼び出します。

}

簡単ですが、これはアップルから直接取得されます。一番下の NSLog はキューをログアウトし、正しく表示されます。

ここから、ユーザーは再生ボタンをクリックしてキューを再生できます。私はそれを次のように設定しました:

}

宛先ビュー コントローラーでは、setNowPlayingItem メソッドは次のようになります。

これにより、テーブルビューのインデックスパスから正しい曲が再生されますが、何らかの理由でインデックスがテーブル内の場所と一致しなくなります。行インデックス 0 の曲が ABC の場合、プレーヤーは ABC を再生しますが、0 ではない indexOfNowPlayingItem をログアウトします。前後にスキップしようとすると、キューからの順序が維持されなくなります。何が起こっているのかわかりません

非常に多くのコードを含めて申し訳ありませんが、どんな助けでも大歓迎です

0 投票する
1 に答える
5706 参照

ios5 - iOSでプレイリストから曲(曲のみ)を再生するにはどうすればよいですか?

iPodのプレイリストから曲を再生しようとしています。プレイリストにも動画が含まれている可能性がある限り、その中の曲だけを再生したいと思います。

1曲2ビデオのプレイリストをロードすると、出力は次のようになります。

アイテム数3256256 1クエリが曲を取得することを目的としていて、メディアアイテムのメディアタイプがMPMediaTypeMovie(
256または1 << 8)である場合、なぜビデオも取得するのかわかりません。



なにか提案を?

0 投票する
2 に答える
1782 参照

xamarin.ios - iPod ライブラリから項目をコピー

後で再生するために、アイテムを iPod ライブラリからローカル ストレージ スペースにコピーしようとしています。アイテム URl を取得しましたが、(ipod-library://item/item.mp3?id=2398084975506389321) 実際のファイルにアクセスする方法はありますか?

ありがとう、リック

0 投票する
1 に答える
573 参照

ios - 複数の MPMediaItem のプロパティをバッチで取得する

に関してMPMediaItem、複数のアイテム/メディア アイテム コレクション内のアイテムのプロパティを取得する方法はありvalueForProperty:ますか?各アイテムを個別に呼び出すよりも効率的ですか?

は承知してenumerateValuesForProperties:usingBlock:いますが、これにより、1 つのメディア アイテムの複数のプロパティをバッチで取得できます。複数のメディア アイテムの 1 つのプロパティに興味があります。

0 投票する
1 に答える
766 参照

objective-c - メディア コレクション キュー MPMediaItemCollection の更新時に再生中のアイテムを一時的に停止/開始する

同様の機能(アプリのバックグラウンドでユーザーが選択した音楽のキューを再生する)を追加できるように探しているので、xcodeでリンゴのaddMusicサンプルアプリで遊んでいます。

組み込みの MediaPicker で曲を選択した後、ユーザーが [完了] ボタンを押したときに、音楽プレーヤーが一時的に停止してから再び再生するという、この厄介なことを行います。- これは、新しい配列をキューとして適用し、現在再生中の状態を中断した場所にリセットする、apple が使用したメソッドによるものだと思います (そのように:)

誰でもこの問題を経験しましたか? 誰でも考えられる代替/より効率的な方法はありますか?

事前に共有していただきありがとうございます:)

0 投票する
0 に答える
377 参照

ios - musicPlayer が setQueueWithItemCollection:playlist を使用すると、間違ったプレイリストが再生される

次のコードを使用して、iTunes ライブラリからプレイリストを読み込もうとしています。このコードは、"Christmas & pop mix" という名前を除くすべてのプレイリスト名で機能します (他のプレイリスト名にも名前に & が含まれています)。「クリスマス & ポップ ミックス」では、ミュージック プレーヤーに「3、4、5 スター ミュージック」というプレイリストが読み込まれます。プレイリスト「Christmas & pop mix」は、以下の for ループ内にあることに注意してください。しかし、再生される実際のコレクションは間違ったものです。この問題を追跡する方法はありますか?

0 投票する
1 に答える
682 参照

ios - MPMediaItemCollectionのアイテムlastObjectについて

MPMediaItemsCollection に N 個のアイテムを設定していますが、いくつかのアイテムは一意ではありません (コレクションはプレイリストを表し、同じ曲が 2 回表示される可能性があります)。

1 つの例では、4 つの曲を含む itemCollection を生成しています。最後の曲は最初の曲が繰り返されます。リストの最後のオブジェクトを取得しようとすると、_musicPlayer は常に最初の項目を再生します。

最初の NSLog は、アイテム配列に 4 つのアイテムがあることを明確に示す "itemCollection count 4" を出力します。ただし、2 番目の NSLog は「itemCollection lastObject index:0」を出力します。これは、items.lastObject がオブジェクトと最後のインデックスを返すのではなく、同じメディア アイテムが発生する最初のインデックスを返すことを示しています。

誰でもこれに光を当てることができますか?

訂正: ご指摘のとおり、indexOfObject: は繰り返されるオブジェクトのインデックスを返すための有効なテストではありません

それでも、_musicPlayer.nowPlayingItem = [[itemCollection items] lastObject] は、lastObject と同一の最初のインスタンスをメディア プレーヤーに設定します。itemCollection で indexOfObject: を呼び出す nowPlayingItem セッターのようです。回避策?

ファローアップ

MPMediaPlayer のキューでインデックスを選択する方法はないようです。setNowPlayingItem:はindexOfObject:を呼び出します。選択されたメディア アイテムを検索します。その結果、indexOfNowPlayingItemは、キュー内の nowPlayingItem と同一の最初のインスタンスのインデックスを返します。私の場合、これはアプリにあるキューの視覚的表現に影響します (各曲のパネルを備えたスクロールビューです)。MPMediaItemCollection は、MPMediaItems が複数回出現するプレイリストでの使用を意図していなかった可能性があります。この件に関するより多くの情報を得るために、バグレポートに記入します。