pub struct QueueItem {Show 13 fields
pub id: Option<String>,
pub item_type: Option<String>,
pub asset_url: Option<String>,
pub hls_metadata: Option<Value>,
pub flavor: Option<String>,
pub attributes: Option<QueueItemAttributes>,
pub playback_type: Option<u32>,
pub container: Option<QueueContainer>,
pub context: Option<QueueContext>,
pub state: Option<QueueItemState>,
pub song_id: Option<String>,
pub assets: Option<Vec<Value>>,
pub key_urls: Option<KeyUrls>,
}Expand description
A single item in the Cider playback queue.
Returned as part of the array from GET /queue. The queue includes
history items, the currently playing track, and upcoming items. Use
QueueItem::is_current to identify the active track.
Most useful data lives in attributes. Top-level
fields like asset_url, assets, and key_urls are Apple Music
streaming internals.
§Examples
let queue = CiderClient::new().get_queue().await?;
// Find the currently playing item
if let Some(current) = queue.iter().find(|i| i.is_current()) {
if let Some(attrs) = ¤t.attributes {
println!("Now playing: {} — {}", attrs.name, attrs.artist_name);
}
}
// List upcoming tracks
let current_idx = queue.iter().position(|i| i.is_current()).unwrap_or(0);
for item in &queue[current_idx + 1..] {
if let Some(attrs) = &item.attributes {
println!(" Up next: {}", attrs.name);
}
}Fields§
§id: Option<String>Apple Music catalog ID for this item.
item_type: Option<String>Item type (e.g. "song").
asset_url: Option<String>HLS streaming URL for the asset.
hls_metadata: Option<Value>HLS metadata (opaque object).
flavor: Option<String>Audio flavor / codec descriptor (e.g. "28:ctrp256").
attributes: Option<QueueItemAttributes>Track metadata attributes.
playback_type: Option<u32>Playback type identifier.
container: Option<QueueContainer>The container this item was queued from (e.g. a station or playlist).
context: Option<QueueContext>Context information about how this item was queued.
state: Option<QueueItemState>Playback state — current == Some(2) means currently playing.
song_id: Option<String>Song ID (may differ from id for library vs. catalog tracks).
assets: Option<Vec<Value>>Available audio assets with different codec flavors and metadata.
key_urls: Option<KeyUrls>DRM key URLs for HLS playback.