# Interfaces (Others) > **NOTE** > > The initial APIs of this module are supported since API version 9. Newly added APIs will be marked with a superscript to indicate their earliest API version. ## AVCastControlCommand10+ Describes the command that can be sent by a cast controller. **Atomic service API**: This API can be used in atomic services since API version 12. **System capability**: SystemCapability.Multimedia.AVSession.AVCast | Name | Type | Mandatory| Description | | --------- | ------------------------------------------------- | ---- | -------------- | | command | [AVCastControlCommandType](arkts-apis-avsession-t.md#avcastcontrolcommandtype10) | Yes | Command. The parameters carried in each command are different. For details, see [AVCastControlCommandType](arkts-apis-avsession-t.md#avcastcontrolcommandtype10).| | parameter | [media.PlaybackSpeed](../apis-media-kit/arkts-apis-media-e.md#playbackspeed8) | number | string | [LoopMode](arkts-apis-avsession-e.md#loopmode10) | No | Parameters carried in the command.| ## CastDisplayInfo12+ Describes the information about the cast display in the case of extended screens. **Atomic service API**: This API can be used in atomic services since API version 12. **System capability**: SystemCapability.Multimedia.AVSession.ExtendedDisplayCast | Name | Type | Read-Only| Optional| Description | | --------------- |-------------------------| ---- | ---- |---------------------------------------------------------------------| | id | number | No | No | ID of the cast display. The value must be an integer. | | name | string | No | No | Name of the cast display. | | state | [CastDisplayState](arkts-apis-avsession-e.md#castdisplaystate12) | No | No |State of the cast display. | | width | number | No | No | Screen width of the cast display, in px. The value must be an integer. | | height | number | No | No | Screen height of the cast display, in px. The value must be an integer. | ## AVMetadata10+ Describes the media metadata. **System capability**: SystemCapability.Multimedia.AVSession.Core | Name | Type | Read-Only| Optional| Description | | --------------- |-------------------------| ---- | ---- |---------------------------------------------------------------------| | assetId | string | No | No | Media asset ID. It is the unique ID of a song and defined by the application.
**Atomic service API**: This API can be used in atomic services since API version 12. | | title | string | No | Yes | Title.
**Atomic service API**: This API can be used in atomic services since API version 12. | | artist | string | No | Yes | Artist.
**Atomic service API**: This API can be used in atomic services since API version 12. | | author | string | No | Yes | Author.
**Atomic service API**: This API can be used in atomic services since API version 12. | | avQueueName12+ | string | No | Yes | Playlist name. | | avQueueId11+ | string | No | Yes | Unique ID of the playlist. | | avQueueImage11+ | [image.PixelMap](../apis-image-kit/arkts-apis-image-PixelMap.md) | string | No | Yes | Cover image of the playlist, which can be pixel data of an image or an image path (local path or Internet path). Applications call **setAVMetadata** to set the image data.
- If the data type is set to **PixelMap**, the data obtained by calling **getAVMetadata** is the pixel data of an image.
- If the data type is set to **url**, the data obtained is an image path. | | album | string | No | Yes | Album name.
**Atomic service API**: This API can be used in atomic services since API version 12. | | writer | string | No | Yes | Writer.
**Atomic service API**: This API can be used in atomic services since API version 12. | | composer | string | No | Yes | composer. | | duration | number | No | Yes | Media duration, in ms.
**Atomic service API**: This API can be used in atomic services since API version 12. | | mediaImage | [image.PixelMap](../apis-image-kit/arkts-apis-image-PixelMap.md) | string | No | Yes | Pixel map or image path (local path or network path) of the image. Applications call **setAVMetadata** to set the image data.
- If the data type is set to **PixelMap**, the data obtained by calling **getAVMetadata** is the pixel data of an image.
- If the data type is set to **url**, the data obtained is an image path.
**Atomic service API**: This API can be used in atomic services since API version 12. | | bundleIcon18+ | [image.PixelMap](../apis-image-kit/arkts-apis-image-PixelMap.md) | Yes | Yes | Pixel data of the image that is used as the application icon. It is read-only and cannot be set on the application side.| | publishDate | Date | No | Yes | Release date. | | subtitle | string | No | Yes | Subtitle.
**Atomic service API**: This API can be used in atomic services since API version 12. | | description | string | No | Yes | Media description.
**Atomic service API**: This API can be used in atomic services since API version 12. | | lyric | string | No | Yes | Lyrics. The application needs to combine the lyrics into a string.
The string length must be less than 40960 bytes.
**NOTE**: The system supports lyrics in the simple LRC format. If the lyrics are not standard (for example, having duplicate timestamps), the lyrics fail to be parsed and cannot be displayed properly in the system.| | singleLyricText17+ | string | No | Yes | Lyrics of a single media asset. The application must combine the lyrics into a string (excluding the timestamp).
The string length must be less than 40960 bytes.
**Atomic service API**: This API can be used in atomic services since API version 17.| | previousAssetId | string | No | Yes | ID of the previous media asset.
**Atomic service API**: This API can be used in atomic services since API version 12. | | nextAssetId | string | No | Yes | ID of the next media asset.
**Atomic service API**: This API can be used in atomic services since API version 12. | | filter11+ | number | No | Yes | Protocol supported by the media session. The default value is **TYPE_CAST_PLUS_STREAM**. For details, see [ProtocolType](arkts-apis-avsession-e.md#protocoltype11).
**Atomic service API**: This API can be used in atomic services since API version 12. | | drmSchemes12+ | Array\ | No | Yes | DRM scheme supported by the media session. The value is the UUID of the DRM scheme.| | skipIntervals11+ | [SkipIntervals](arkts-apis-avsession-e.md#skipintervals11) | No | Yes | Intervals supported for fast-forwarding and rewinding. The default value is **SECONDS_15**, that is, 15 seconds. | |displayTags11+ | number | No | Yes | Display tags of the media asset. For details, see [DisplayTag](arkts-apis-avsession-e.md#displaytag11). | ## AVMediaDescription10+ Describes the properties related to the media metadata in the playlist. | Name | Type | Read-Only | Optional | Description | | ------------ | ----------------------- | ---- | ---- | ----------------------- | | assetId | string | No | No | Media ID in the playlist.
**System capability**: SystemCapability.Multimedia.AVSession.Core
**Atomic service API**: This API can be used in atomic services since API version 12.| | title | string | No | Yes | Name of the media asset in the playlist.
**System capability**: SystemCapability.Multimedia.AVSession.Core
**Atomic service API**: This API can be used in atomic services since API version 12.| | subtitle | string | No | Yes | Subname of the media asset in the playlist.
**System capability**: SystemCapability.Multimedia.AVSession.Core
**Atomic service API**: This API can be used in atomic services since API version 12.| | description | string | No | Yes | Description of the media asset in the playlist.
**System capability**: SystemCapability.Multimedia.AVSession.Core
**Atomic service API**: This API can be used in atomic services since API version 12.| | mediaImage | image.PixelMap \| string | No | Yes | Pixel map of the image of the media asset in the playlist.
**System capability**: SystemCapability.Multimedia.AVSession.Core
**Atomic service API**: This API can be used in atomic services since API version 12.| | extras | {[key: string]: Object} | No | Yes | Additional fields of the media asset in the playlist.
**System capability**: SystemCapability.Multimedia.AVSession.Core| | mediaUri | string | No | Yes | URI of the media asset in the playlist.
**System capability**: SystemCapability.Multimedia.AVSession.Core
**Atomic service API**: This API can be used in atomic services since API version 12.| | mediaType | string | No | Yes | Type of the media asset in the playlist.
**System capability**: SystemCapability.Multimedia.AVSession.Core
**Atomic service API**: This API can be used in atomic services since API version 12.| | mediaSize | number | No | Yes | Size of the media asset in the playlist.
**System capability**: SystemCapability.Multimedia.AVSession.Core
**Atomic service API**: This API can be used in atomic services since API version 12.| | albumTitle | string | No | Yes | Album name of the media asset in the playlist.
**System capability**: SystemCapability.Multimedia.AVSession.Core
**Atomic service API**: This API can be used in atomic services since API version 12.| | albumCoverUri | string | No | Yes | URI of the album title of the media asset in the playlist.
**System capability**: SystemCapability.Multimedia.AVSession.Core
**Atomic service API**: This API can be used in atomic services since API version 12.| | lyricContent | string | No | Yes | Lyric content of the media asset in the playlist.
**System capability**: SystemCapability.Multimedia.AVSession.Core
**Atomic service API**: This API can be used in atomic services since API version 12.| | lyricUri | string | No | Yes | Lyric URI of the media asset in the playlist.
**System capability**: SystemCapability.Multimedia.AVSession.Core
**Atomic service API**: This API can be used in atomic services since API version 12.| | artist | string | No | Yes | Author of the lyric of the media asset in the playlist.
**System capability**: SystemCapability.Multimedia.AVSession.Core
**Atomic service API**: This API can be used in atomic services since API version 12.| | fdSrc | media.AVFileDescriptor | No | Yes | Handle to the local media file in the playlist.
**System capability**: SystemCapability.Multimedia.AVSession.Core
**Atomic service API**: This API can be used in atomic services since API version 12.| | dataSrc12+ | media.AVDataSrcDescriptor | No | Yes | Descriptor of the data source in the playlist.
**System capability**: SystemCapability.Multimedia.AVSession.Core| | pcmSrc20+ | boolean | No | Yes | Whether the playlist uses a PCM data source. **true** if the PCM data source used, **false** otherwise.
**System capability**: SystemCapability.Multimedia.AVSession.Core
Due to device limitations, this parameter is temporarily unavailable and will be supported in future versions.| | drmScheme12+ | string | No | Yes | DRM scheme supported by the playlist. The value is the UUID of the DRM scheme.
**System capability**: SystemCapability.Multimedia.AVSession.Core| | duration | number | No | Yes | Playback duration of the media asset in the playlist.
**System capability**: SystemCapability.Multimedia.AVSession.Core
**Atomic service API**: This API can be used in atomic services since API version 12.| | startPosition | number | No | Yes | Start position for playing the media asset in the playlist.
**System capability**: SystemCapability.Multimedia.AVSession.Core
**Atomic service API**: This API can be used in atomic services since API version 12.| | creditsPosition | number | No | Yes | Position for playing the closing credits of the media asset in the playlist.
**System capability**: SystemCapability.Multimedia.AVSession.Core
**Atomic service API**: This API can be used in atomic services since API version 12.| | appName | string | No | Yes | Name of the application provided by the playlist.
**System capability**: SystemCapability.Multimedia.AVSession.Core
**Atomic service API**: This API can be used in atomic services since API version 12.| |displayTags11+ | number | No | Yes | Display tags of the media asset. For details, see [DisplayTag](arkts-apis-avsession-e.md#displaytag11).
**System capability**: SystemCapability.Multimedia.AVSession.Core
**Atomic service API**: This API can be used in atomic services since API version 12.| |launchClientData20+ | string | No| Yes| Custom data sent by the application to the receiver during casting.
**System capability**: SystemCapability.Multimedia.AVSession.AVCast
**Atomic service API**: This API can be used in atomic services since API version 20.| ## AVQueueItem10+ Describes the properties of an item in the playlist. **Atomic service API**: This API can be used in atomic services since API version 12. **System capability**: SystemCapability.Multimedia.AVSession.Core | Name | Type | Mandatory| Description | | ------------ | ------------------------------------------ | ---- | --------------------------- | | itemId | number | Yes | ID of an item in the playlist. | | description | [AVMediaDescription](#avmediadescription10) | No | Media metadata of the item in the playlist. | ## AVPlaybackState10+ Describes the information related to the media playback state. **System capability**: SystemCapability.Multimedia.AVSession.Core | Name | Type | Mandatory| Description | | ------------ | ------------------------------------- | ---- | ------- | | state | [PlaybackState](arkts-apis-avsession-e.md#playbackstate10) | No | Playback state.
**Atomic service API**: This API can be used in atomic services since API version 12.| | speed | number | No | Playback speed.
**Atomic service API**: This API can be used in atomic services since API version 12.| | position | [PlaybackPosition](#playbackposition10) | No | Playback position.
**Atomic service API**: This API can be used in atomic services since API version 12.| | bufferedTime | number | No | Buffered time.
**Atomic service API**: This API can be used in atomic services since API version 12.| | loopMode | [LoopMode](arkts-apis-avsession-e.md#loopmode10) | No | Loop mode.
**Atomic service API**: This API can be used in atomic services since API version 12.| | isFavorite | boolean | No | Whether the media asset is favorited. The value **true** means that the media asset is favorited.
**Atomic service API**: This API can be used in atomic services since API version 12.| | activeItemId10+ | number | No | ID of the item that is being played.
**Atomic service API**: This API can be used in atomic services since API version 12.| | volume10+ | number | No | Media volume.
**Atomic service API**: This API can be used in atomic services since API version 12.| | maxVolume11+ | number | No | Maximum volume.
**Atomic service API**: This API can be used in atomic services since API version 12.| | muted11+ | boolean | No | Mute status. The value **true** means the muted state.
**Atomic service API**: This API can be used in atomic services since API version 12.| | duration11+ | number | No | Duration of the media asset.| | videoWidth11+ | number | No | Video width of the media asset, in px.
**Atomic service API**: This API can be used in atomic services since API version 12.| | videoHeight11+ | number | No | Video height of the media asset, in px.
**Atomic service API**: This API can be used in atomic services since API version 12.| | extras10+ | {[key: string]: Object} | No | Custom media data.
**Atomic service API**: This API can be used in atomic services since API version 12.| ## PlaybackPosition10+ Describes the information related to the playback position. **Atomic service API**: This API can be used in atomic services since API version 12. **System capability**: SystemCapability.Multimedia.AVSession.Core | Name | Type | Mandatory| Description | | ----------- | ------ | ---- | ------------------ | | elapsedTime | number | Yes | Elapsed time, in ms.| | updateTime | number | Yes | Updated time, in ms.| ## CallMetadata11+ Describes the properties related to call metadata. **Atomic service API**: This API can be used in atomic services since API version 12. **System capability**: SystemCapability.Multimedia.AVSession.Core | Name | Type | Mandatory| Description | | --------------- |-------------------------| ---- |---------------------------------------------------------------------| | name | string | No | Name (alias) of the caller. | | phoneNumber | string | No | Phone number of the caller. | | avatar | [image.PixelMap](../apis-image-kit/arkts-apis-image-PixelMap.md) | No | Profile picture of the caller. | ## AVCallState11+ Describes the properties related to the call state. **Atomic service API**: This API can be used in atomic services since API version 12. **System capability**: SystemCapability.Multimedia.AVSession.Core | Name | Type | Mandatory| Description | | --------------- |------------------------- | ---- |---------------------------------------------------------------------| | state | [CallState](arkts-apis-avsession-e.md#callstate11) | Yes | Call state. | | muted | boolean | Yes | Whether the microphone is muted.
**true**: The microphone is muted.
**false**: The microphone is not muted.| ## DeviceInfo10+ Describes the information related to the output device. | Name | Type | Mandatory| Description | | ---------- | -------------- | ---- | ---------------------- | | castCategory | AVCastCategory | Yes | Cast category.
**System capability**: SystemCapability.Multimedia.AVSession.Core
**Atomic service API**: This API can be used in atomic services since API version 12.| | deviceId | string | Yes | ID of the output device.
**System capability**: SystemCapability.Multimedia.AVSession.Core
**Atomic service API**: This API can be used in atomic services since API version 12.| | deviceName | string | Yes | Name of the output device.
**System capability**: SystemCapability.Multimedia.AVSession.Core
**Atomic service API**: This API can be used in atomic services since API version 12.| | deviceType | DeviceType | Yes | Type of the output device.
**System capability**: SystemCapability.Multimedia.AVSession.Core
**Atomic service API**: This API can be used in atomic services since API version 12.| | supportedProtocols11+ | number | No | Protocol supported by the output device. The default value is **TYPE_LOCAL**. For details, see [ProtocolType](arkts-apis-avsession-e.md#protocoltype11).
**System capability**: SystemCapability.Multimedia.AVSession.AVCast
**Atomic service API**: This API can be used in atomic services since API version 12.| | supportedDrmCapabilities12+ | Array\ | No | DRM capability supported by the output device.
**System capability**: SystemCapability.Multimedia.AVSession.AVCast
**Atomic service API**: This API can be used in atomic services since API version 12.| | manufacturer13+ | string | No | Manufacturer of the output device.
**System capability**: SystemCapability.Multimedia.AVSession.AVCast
**Atomic service API**: This API can be used in atomic services since API version 13.| | modelName13+ | string | No | Model name of the output device.
**System capability**: SystemCapability.Multimedia.AVSession.AVCast
**Atomic service API**: This API can be used in atomic services since API version 13.| | audioCapabilities20+ | [AudioCapabilities](#audiocapabilities20) | No | Audio capabilities supported by the output device.
**System capability**: SystemCapability.Multimedia.AVSession.AVCast| | supportedPullClients20+ | Array\ | No| IDs of supported pull clients. (This field is returned only for devices that support 4K casting.)
**System capability**: SystemCapability.Multimedia.AVSession.AVCast
**Atomic service API**: This API can be used in atomic services since API version 20.| ## OutputDeviceInfo10+ Describes the information related to the output device. **Atomic service API**: This API can be used in atomic services since API version 12. **System capability**: SystemCapability.Multimedia.AVSession.Core | Name | Type | Mandatory| Description | | ---------- | -------------- | ---- | ---------------------- | | devices | Array\ | Yes | Output devices. | ## AVControlCommand10+ Describes the command that can be sent to the session. **Atomic service API**: This API can be used in atomic services since API version 12. **System capability**: SystemCapability.Multimedia.AVSession.Core | Name | Type | Mandatory| Description | | --------- | ------------------------------------------------- | ---- | -------------- | | command | [AVControlCommandType](arkts-apis-avsession-t.md#avcontrolcommandtype10) | Yes | Command. The parameters carried in each command are different. For details, see [AVControlCommandType](arkts-apis-avsession-t.md#avcontrolcommandtype10). | | parameter | [LoopMode](arkts-apis-avsession-e.md#loopmode10) | string | number | No | Parameters carried in the command.| ## AVCastPickerOptions14+ Describes the properties related to the semi-modal window that is started for casting purposes. **Atomic service API**: This API can be used in atomic services since API version 14. **System capability**: SystemCapability.Multimedia.AVSession.AVCast | Name | Type | Mandatory| Description | | --------------- |-------------------------| ---- |---------------------------------------------------------------------| | sessionType | [AVSessionType](arkts-apis-avsession-t.md#avsessiontype10) | No | Session type. The default value is **'audio'**.
Currently, only the **'audio'** and **'video'** session types are supported. If **'voice_call'** and **'video_call'** are passed, they are treated as the default value **'audio'**. | ## AudioCapabilities20+ Describes the audio capabilities supported by the casting device. **Atomic service API**: This API can be used in atomic services since API version 20. **System capability**: SystemCapability.Multimedia.AVSession.AVCast | Name | Type | Read-Only| Optional| Description | | --------------- |-------------------------| ---- | ---- |---------------------------------------------------------------------| | streamInfos | Array\<[audio.AudioStreamInfo](../apis-audio-kit/arkts-apis-audio-i.md#audiostreaminfo8)> | Yes | No | Audio capability parameters. |