soundcloud / soundcloud/api

Deprecation Notice: MP3 & Opus Transcodings → Move to AAC HLS by Dec 31, 2025

Open
#441 33 comments 3 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

announcement
Dominant language
JavaScript
Stars
254
Forks
53
PR merge metrics
No merged PRs in 30d

Description

Summary:
We are upgrading SoundCloud’s streaming APIs to use AAC-based HLS transcodings. Existing MP3 and Opus formats will be deprecated.

🚀 What’s new
The streams endpoint now returns:
hls_aac_160_url
hls_aac_96_url (optional, depending on availability)

⏳ Deprecation Timeline

The following fields will be removed on November 15, 2025:
http_mp3_128_url
hls_mp3_128_url
hls_opus_64_url

preview_mp3_128_url remains available.

✅ Action Required
Update your integrations to consume hls_aac_* URLs preferring the hls_aac_160_url over hls_aac_96_url.

Test your clients with the new AAC HLS streams.

🔍 Example Response as of now

{
  "http_mp3_128_url": "https://cf-media.sndcdn.com/trackid.128.mp3?...",
  "hls_mp3_128_url": "https://cf-hls-media.sndcdn.com/playlist/trackid.128.mp3/playlist.m3u8?...",
  "hls_aac_160_url": "https://playback.media-streaming.soundcloud.cloud/trackid/aac_160k/uuid/playlist.m3u8?...",
  "hls_opus_64_url": "https://cf-hls-opus-media.sndcdn.com/playlist/uuid.64.opus/playlist.m3u8?...",
  "preview_mp3_128_url": "https://cf-preview-media.sndcdn.com/preview/0/30/trackid.128.mp3?..."
}

🔍 Example Response after Nov 15, 2025

{
  "hls_aac_160_url": "https://playback.media-streaming.soundcloud.cloud/trackid/aac_160k/uuid/playlist.m3u8?...",
  "hls_aac_96_url": "https://playback.media-streaming.soundcloud.cloud/trackid/aac_96k/uuid/playlist.m3u8?...",
  "preview_mp3_128_url": "https://cf-preview-media.sndcdn.com/preview/0/30/trackid.128.mp3?..."
}

💬 Feedback
Please test the new URLs and share feedback in this issue. Your input will help us ensure a smooth migration.

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

The issue names no repository files, tests, or entry points, so first locate the client or integration that handles stream URLs. Done would mean the integration consumes the AAC HLS URLs with the stated preference and has been tested against the new response format.

Written by the indexing model from the issue text.

Assessment

Domain
api
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Quiet
Clarity
Needs clarification
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.