← Audio and media queue

Media.stop

luastra/media
Media.stop(): RequestId

Requests that playback stop and reset the current item according to the host contract while retaining the queue. It differs from unload, which releases the active media resources.

Before you use it

Add luastra/media to this module's dependencies in luastra.json, then import it with require("luastra/media"). Declare media.command in luastra.json. Set an admitted queue before playback, start playback from an explicit user action where required, and implement both app.resolve and media_state handling.

How it fits

The command returns a RequestId for acknowledgement. Actual playback truth arrives independently through app.handle("media_state", target, payload) and must be decoded before rendering.

When to use it

Use Media.stop when the session ends but the same queue may be played again. Use pause for a resumable interruption and unload when the queue is no longer needed.

Parameters

No parameters.

Returns

RequestId — an opaque request identifier used to correlate the asynchronous completion in app.resolve.

What happens next

A RequestId now, then command completion and subsequent decoded live-state updates when playback changes.

Failures and fixes

Missing capability, absent queue, invalid asset/content URI, autoplay policy, interruption, unsupported background behavior, or host failure must remain visible state. Do not optimistically treat command acknowledgement as playback success.

Availability

Public-source alpha API in 0.5.0-alpha; background playback and system controls require target-specific verification.

Focused example

local Media = require("luastra/media")
Media.stop()

Continue learning

Prerequisites

Media.play

Companions

Media.seek

Complete inventory

View all pages in Audio and media queue
← Previous: Media.pauseNext: Media.unload →