FEATURES
Everything a feed needs, nothing it doesn't
Norsolia is a host, not a studio suite. It stores your audio, builds a correct feed and serves it fast. The list below is the whole list.
Shows and episodes
- Show details
- Title, description, language and an iTunes category. A cover up to 2 MB, checked against the PNG or JPEG signature rather than its file name.
- Episode formats
- MP3 or M4A, up to 50 MB per file. The upload is accepted only if the bytes really are an MP3 frame stream or an MP4 container.
- Draft, schedule, publish
- Keep an episode as a draft, set a future time and let it publish itself, or publish now. A scheduled episode needs its audio in place first.
The feed
Each show has /feed/<slug>.xml. It is RSS 2.0 with the iTunes namespace and the Podcasting 2.0 namespace.
- enclosure with the real byte length and MIME type
- guid that stays stable for the life of the episode
- pubDate in RFC 822, itunes:duration, itunes:episode
- podcast:guid and podcast:locked at the channel level
- itunes:image, itunes:category, itunes:explicit
Delivery
Audio is served from /media/episode/<id> with byte-range support, so a player can seek without downloading the whole file. HEAD requests work. The right Content-Type is sent and sniffing is turned off.
The embeddable player lives at /embed/<id> and ships frame-ancestors *, so it can sit in any page or show-notes block.
Measurement, said honestly
The gateway in front of the app hides the client IP, so there is no honest way to count unique people. Norsolia counts a play: a Range request that starts at byte 0, recorded at most once every five minutes per episode and per hashed User-Agent. That is what the dashboard and the API return, by episode and by day. It is a floor, not a headcount, and it is never labelled “unique listeners”.
Yours to take
Export a ZIP of every show, episode, metadata file and audio file whenever you like. There is no lock-in and no export fee.
Built on an API
The dashboard uses the same public API you can. Create a token and script your show. The reference is generated from the live OpenAPI document.