---
title: MediaDevice
framework: nowplaying
role: symbol
role_heading: Structure
path: nowplaying/mediadevice
---

# MediaDevice

A device that plays media in a remote session.

## Declaration

```swift
struct MediaDevice
```

## Mentioned in

Publishing remote media sessions

## Overview

Overview Use this type to represent playback devices in your remote sessions. The system displays device information including the name, type, and volume level in the Now Playing interface.

## Topics

### Structures

- [MediaDevice.Capability](nowplaying/mediadevice/capability.md)

### Initializers

- [init(id:name:type:capabilities:)](nowplaying/mediadevice/init(id:name:type:capabilities:).md)

### Instance Properties

- [capabilities](nowplaying/mediadevice/capabilities.md)
- [id](nowplaying/mediadevice/id.md)
- [name](nowplaying/mediadevice/name.md)
- [type](nowplaying/mediadevice/type.md)

### Enumerations

- [MediaDevice.DeviceType](nowplaying/mediadevice/devicetype.md)

## Relationships

### Conforms To

- [Equatable](swift/equatable.md)
- [Identifiable](swift/identifiable.md)
- [Sendable](swift/sendable.md)
- [SendableMetatype](swift/sendablemetatype.md)

## See Also

### Remote sessions

- [Publishing remote media sessions](nowplaying/publishing-remote-media-sessions.md)
- [RemoteMediaSessionRepresentable](nowplaying/remotemediasessionrepresentable.md)
- [RemoteMediaSession](nowplaying/remotemediasession.md)
- [RemoteMediaSessionExtension](nowplaying/remotemediasessionextension.md)
- [RemoteMediaSessionExtensionConfiguration](nowplaying/remotemediasessionextensionconfiguration.md)
- [RemoteMediaSessionAttributes](nowplaying/remotemediasessionattributes.md)
- [RemoteMediaSessionError](nowplaying/remotemediasessionerror.md)
