---
title: "流式播放歌曲"
method: GET
path: "/songs/{id}/play"
tags: ["歌曲管理"]
---

# 流式播放歌曲

`GET /songs/{id}/play`

按 song.ID 流式返回音频。内部根据 song.type 分发到本地文件 / 缓存下载 / 直链下载 / 电台 302。

## Path parameters

- `id` integer, required

## Query parameters

- `format` string
- `quality` string
- `track` integer
- `prefetch` string
- `media` string
- `hls` string
- `normalize` string
- `radio_transcode` string
- `seek` number
- `speed` number

## Response `200`

音频文件

## Other responses

- `202` — 预拉取已触发
- `302` — 电台流重定向
- `404` — 歌曲不存在
- `502` — 音源不可用

## Changes

- **2026-08-12** `f4e77e17b61f` — 1 info
  - added the new optional `query` request parameter `speed`
- **2026-07-29** `3def0595838f` — 1 info
  - added the new optional `query` request parameter `normalize`
- **2026-07-28** `e7a4599a0883` — 1 info
  - added the new optional `query` request parameter `seek`
- **2026-07-22** `3f22e6ffa419` — 1 info
  - added the new optional `query` request parameter `radio_transcode`
- **2026-07-21** `685342bdbb6a` — 1 info
  - added the new optional `query` request parameter `track`

[Full history](https://skmtc.dev/songloft-org/apis/songloft-api/changes/songs/:id/play/get.md)

---

[API](https://skmtc.dev/songloft-org/apis/songloft-api.md) · [All operations](https://skmtc.dev/songloft-org/apis/songloft-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/songloft-org/songloft-api/revisions/5b1368253f6c/schema)
