Skip to main content

Playback

This item only works when running on the client. Client

A client-side playback, returned by Flow:Play for local playback and created by the executor for each synced playback a server starts.

A synced playback is read-only: the server controls it through its SequenceTrack, and its control methods here warn and do nothing so no client silently drifts from the shared record.

Properties​

Time​

This item is read only and cannot be modified. Read Only
Playback.Time: number

The current sequence time in seconds.

Length​

This item is read only and cannot be modified. Read Only
Playback.Length: number

Rate​

This item is read only and cannot be modified. Read Only
Playback.Rate: number

The speed multiplier. Change it with Playback:SetRate.

IsPlaying​

This item is read only and cannot be modified. Read Only
Playback.IsPlaying: boolean

False while paused or after the playback ends.

IsSynced​

This item is read only and cannot be modified. Read Only
Playback.IsSynced: boolean

True for a playback a server started. Its control methods are ignored.

IsActive​

This item is read only and cannot be modified. Read Only
Playback.IsActive: boolean

False once the playback has completed or stopped.

Loop​

This item is read only and cannot be modified. Read Only
Playback.Loop: boolean

Completed​

Playback.Completed: Signal

Fires when the playback reaches its end naturally.

Stopped​

Playback.Stopped: Signal

Fires when the playback is stopped before its end.

Functions​

Pause​

Playback:Pause() → ()

Holds the playback at its current time. Sections keep their state.

Resume​

Playback:Resume() → ()

Seek​

Playback:Seek(time: number) → ()

Jumps to time, clamped to the sequence. Sections the jump passes over entirely are skipped; a section that time lands inside enters at that offset.

SetRate​

Playback:SetRate(rate: number) → ()

Sets the speed multiplier. 1 is normal speed.

Stop​

Playback:Stop() → ()

Stops the playback and applies each section's restore policy. Fires Playback.Stopped, not Playback.Completed.

Destroy​

Playback:Destroy() → ()

Stops the playback and releases its signals.

Show raw api
{
    "functions": [
        {
            "name": "Pause",
            "desc": "Holds the playback at its current time. Sections keep their state.",
            "params": [],
            "returns": [],
            "function_type": "method",
            "source": {
                "line": 237,
                "path": "runtime/Playback.luau"
            }
        },
        {
            "name": "Resume",
            "desc": "",
            "params": [],
            "returns": [],
            "function_type": "method",
            "source": {
                "line": 247,
                "path": "runtime/Playback.luau"
            }
        },
        {
            "name": "Seek",
            "desc": "Jumps to `time`, clamped to the sequence. Sections the jump passes over entirely are skipped; a section\nthat `time` lands inside enters at that offset.",
            "params": [
                {
                    "name": "time",
                    "desc": "",
                    "lua_type": "number"
                }
            ],
            "returns": [],
            "function_type": "method",
            "source": {
                "line": 259,
                "path": "runtime/Playback.luau"
            }
        },
        {
            "name": "SetRate",
            "desc": "Sets the speed multiplier. 1 is normal speed.",
            "params": [
                {
                    "name": "rate",
                    "desc": "",
                    "lua_type": "number"
                }
            ],
            "returns": [],
            "function_type": "method",
            "source": {
                "line": 270,
                "path": "runtime/Playback.luau"
            }
        },
        {
            "name": "Stop",
            "desc": "Stops the playback and applies each section's restore policy. Fires [Playback.Stopped], not\n[Playback.Completed].",
            "params": [],
            "returns": [],
            "function_type": "method",
            "source": {
                "line": 282,
                "path": "runtime/Playback.luau"
            }
        },
        {
            "name": "Destroy",
            "desc": "Stops the playback and releases its signals.",
            "params": [],
            "returns": [],
            "function_type": "method",
            "source": {
                "line": 393,
                "path": "runtime/Playback.luau"
            }
        }
    ],
    "properties": [
        {
            "name": "Time",
            "desc": "The current sequence time in seconds.",
            "lua_type": "number",
            "readonly": true,
            "source": {
                "line": 86,
                "path": "runtime/Playback.luau"
            }
        },
        {
            "name": "Length",
            "desc": "",
            "lua_type": "number",
            "readonly": true,
            "source": {
                "line": 92,
                "path": "runtime/Playback.luau"
            }
        },
        {
            "name": "Rate",
            "desc": "The speed multiplier. Change it with [Playback:SetRate].",
            "lua_type": "number",
            "readonly": true,
            "source": {
                "line": 99,
                "path": "runtime/Playback.luau"
            }
        },
        {
            "name": "IsPlaying",
            "desc": "False while paused or after the playback ends.",
            "lua_type": "boolean",
            "readonly": true,
            "source": {
                "line": 106,
                "path": "runtime/Playback.luau"
            }
        },
        {
            "name": "IsSynced",
            "desc": "True for a playback a server started. Its control methods are ignored.",
            "lua_type": "boolean",
            "readonly": true,
            "source": {
                "line": 113,
                "path": "runtime/Playback.luau"
            }
        },
        {
            "name": "IsActive",
            "desc": "False once the playback has completed or stopped.",
            "lua_type": "boolean",
            "readonly": true,
            "source": {
                "line": 120,
                "path": "runtime/Playback.luau"
            }
        },
        {
            "name": "Loop",
            "desc": "",
            "lua_type": "boolean",
            "readonly": true,
            "source": {
                "line": 126,
                "path": "runtime/Playback.luau"
            }
        },
        {
            "name": "Completed",
            "desc": "Fires when the playback reaches its end naturally.",
            "lua_type": "Signal",
            "source": {
                "line": 132,
                "path": "runtime/Playback.luau"
            }
        },
        {
            "name": "Stopped",
            "desc": "Fires when the playback is stopped before its end.",
            "lua_type": "Signal",
            "source": {
                "line": 138,
                "path": "runtime/Playback.luau"
            }
        }
    ],
    "types": [],
    "name": "Playback",
    "desc": "A client-side playback, returned by [Flow:Play] for local playback and created by the executor for each\nsynced playback a server starts.\n\nA synced playback is read-only: the server controls it through its [SequenceTrack], and its control methods\nhere warn and do nothing so no client silently drifts from the shared record.",
    "realm": [
        "Client"
    ],
    "source": {
        "line": 77,
        "path": "runtime/Playback.luau"
    }
}