Sources
How to Play a Direct Stream URL on iPhone (and Fix It)
A source-first guide to finding an authorized audio feed, checking its format and connection, and deciding whether a saved stream fits your iPhone music library.

The short answer
A direct stream URL points to an audio feed or streaming presentation, not merely a station webpage with a Play button. For an iPhone player, start with an authorized link published by the broadcaster. Prefer HTTPS, identify whether the link is a continuous audio endpoint or an HLS .m3u8 playlist, and test it on a network before saving it. A saved live-stream address is not an offline copy of the audio.
OVO's current App Store listing describes live stream URLs among OVO Pro's connected sources. That establishes the public feature category, not a promise that every station, codec, playlist wrapper or account-restricted link will play. The checks below help you separate a bad link from a network or format mismatch.
Four checks before you add a stream
- Permission: use a public broadcaster URL or an endpoint you are authorized to access. A private service session, expiring token or DRM-protected link is a different job.
- Address: copy the complete URL, including
https://. Prefer HTTPS when the publisher offers it; Apple's App Transport Security guidance explains why secure connections are the safer default, while app-specific exceptions can exist. - Resource: a page containing a player is not necessarily the audio address. A login page or JSON response is not a feed.
- Delivery: a continuous audio mountpoint, an HLS playlist and a generic playlist file are different resources. The player must support the response and the media it references.
Which kind of URL did you copy?
| Link type | What it normally represents | First useful check |
|---|---|---|
| Station webpage | HTML with a Play button and perhaps several listening options | Find the station's official “streaming URLs” or “listen in your player” page. Do not paste the webpage as if it were audio. |
| Continuous audio endpoint or mountpoint | A server response carrying a live audio feed; the path may have no .mp3 or .aac suffix | Confirm that the broadcaster publishes it for third-party players, then test on the current network. |
HLS .m3u8 | A playlist describing media segments and possibly alternative renditions, not one downloaded song | Check that it is the publisher's current presentation URL and that its referenced media is reachable. |
Generic .m3u or .pls | Often a small wrapper listing one or more stream addresses | Open the publisher's documentation for the intended endpoint. Do not assume the wrapper itself is accepted by OVO. |
| Session or account URL | A link that may contain credentials, a signature or an expiry value | Return to the publisher for an authorized stable endpoint; do not store passwords in a URL. |
Icecast's listener documentation distinguishes a mountpoint URL from its optional .m3u wrapper. Apple's HLS documentation and RFC 8216 explain the separate .m3u8 playlist-and-segment model. A file extension alone cannot prove that the underlying audio is compatible with a particular app.
Find a link the broadcaster intends you to use
The safest route is the broadcaster's own device-help or streaming-URL page. For example, KEXP publishes two AAC links for third-party listening, with different advertised bitrates. That is a clear publisher-provided endpoint—not an invitation to extract private requests from a signed-in web player.
If you see several official options, choose one that suits your connection and data budget. Copy the complete URL. If the broadcaster provides only an embedded player, ask it for a public third-party endpoint. Do not try to bypass a service's access controls, DRM or download restrictions.
Evaluate a direct URL with OVO
The public OVO listing names live stream URLs with OVO Pro. Its Sources overview describes Streams alongside local files and connected folders. In the installed app, use the current Streams or source-add control to try one authorized URL at a time. If OVO reports that it cannot use the link, first classify the address using the table above, then check network access and the broadcaster's current URL. Do not treat an error label as proof of one server-side cause.
The exact current button names, validation sequence, status messages and supported combination of container and codec have not been established from the public listing. Avoid assuming that a browser playing the station's webpage proves the same URL is a direct audio feed for OVO.
When the stream will not play
| Observation | Plausible boundary | Next non-destructive check |
|---|---|---|
| A station page opens, but a player rejects the pasted link | HTML page instead of an audio endpoint | Use the broadcaster's published third-party listening URL. |
| A link that once worked now fails | URL rotation, expiry, access rule or station outage | Revisit the publisher's current link page; do not reuse a private token. |
| One network works but another does not | Reachability, cellular policy, local network or regional availability | Test the same authorized URL on Wi-Fi and cellular, if permitted; compare without changing the URL. |
A .m3u8 link resolves but audio does not play | Playlist, segment, authorization or media compatibility issue | Check that the publisher supplies an audio-bearing HLS option; do not equate .m3u8 with universal playback. |
A .m3u or .pls link does not work | Wrapper rather than a directly supported feed | Use the direct endpoint the publisher documents. |
| The stream stops later | Network handoff, broadcaster availability, listener limit or expiring URL | Retest on a stable connection and check the broadcaster's status or replacement link. The symptom alone cannot identify the cause. |
| The title or artwork is absent | Source metadata is missing or not exposed through the current path | Keep a recognizable station name; do not infer that audio playback itself has failed. |
HTTP codes can narrow a diagnosis, but not replace it: RFC 9110 defines 401 as an authentication challenge, 403 as refusal, 404 as not found and 410 as gone. A player may present these differently—or a redirect or intermediary may hide them. Do not promise a specific OVO error message for each code.
Why HTTPS is the first choice
Use the station's HTTPS option when it exists. Apple says App Transport Security requires secure connections by default for standard URL loading, with configurable exceptions. That does not mean every plain-HTTP link fails in every iPhone app; it means http:// syntax alone is not proof of a usable or secure OVO stream. A URL can also fail because of certificate, redirect or media issues even when it begins with https://.
A stream is not an offline download
A saved live URL is a reference to remote audio. Listening still needs the feed and a network. It is different from an audio file already stored on the phone, a cloud file made available offline, or a downloaded copy that the rights holder permits. For a trip without connectivity, choose an authorized local-file workflow rather than expecting a live station to remain available. The cloud-versus-offline guide explains that storage distinction.
If a broadcaster offers multiple bitrates, a simple audio-only arithmetic estimate is MB per hour ≈ kbps × 0.45: 64 kbps is about 29 MB, 128 kbps about 58 MB, and 256 kbps about 115 MB before overhead. These are not measured OVO usage. Ads, metadata, retries and adaptive renditions can change the amount actually transferred.
When OVO may not be the right fit
A custom Stream source is useful when you already have a permitted audio link and want it beside your personal library. It is not a substitute for a large built-in station directory, access to a private subscription session, recording or archiving broadcasts, generic IPTV/video playlist management, or guaranteed offline live radio. If your priority is one of those jobs, choose a service or tool that explicitly provides it. OVO does not supply music or rights to a feed.
Direct stream URL questions
Is a station's website URL the same as its stream URL?
Not usually. The webpage can contain controls and scripts while the actual audio is served from another address. Use a link the station publishes for external players.
Does every .m3u8 URL play on iPhone?
No. .m3u8 is a playlist filename extension often used for HLS, not proof that the response is a valid HLS presentation or playable in OVO; successful audio still depends on access, valid playlist content, reachable media and compatibility. Apple-platform HLS capability is not a guarantee for every link in OVO.
Are .m3u and .pls interchangeable with .m3u8?
No. Generic .m3u and .pls files may list stream addresses; HLS .m3u8 is a specific playlist format. Check the publisher's intended endpoint and the player's documented support.
Can I save a live stream for offline listening?
Saving a URL does not save the audio. Use lawful local files or an explicitly permitted offline feature when you need playback without a connection.
Next step: If you have a broadcaster-published URL and want it alongside files you own, explore OVO's music sources or view OVO on the App Store. For a format question about an actual local file, see supported formats.


