This handbook describes the KH branch maintained in Karl Heyes’s repository. The reference snapshot is commit ea3554b5167f6780a8be77f1715f90ed02005665, dated 21 November 2023. Its configure.ac identifies the code as 2.4.0-kh22. That string does not uniquely identify every build made from the branch.

Release and snapshot are different evidence

The repository also publishes icecast-2.4.0-kh22 as a release dated 4 July 2023. The pinned master commit is later. A build carrying the same kh22 version string can therefore contain post-release changes. Record the commit or archive origin with the runtime version when comparing systems or reporting a problem.

The handbook’s source check date is 23 October 2026. A retrieval date is not a release date, a security-support promise or evidence that a server has been tested in production.

Read the inherited documentation critically

The doc/ tree contains foundational Icecast documentation alongside KH additions. Its old Windows GUI pages and examples are not a current operating-system support matrix. The listener-authentication page even says only htpasswd exists before describing URL authentication further down. Its headers_prefix example differs from the implemented header_prefix spelling. Those contradictions are resolved here using the pinned code, not copied as instructions.

Compare specific behaviour

KH documents wildcard mount matching with priority, multi-host relay blocks, bandwidth controls and particular fallback/source takeover behaviour. This does not justify a blanket claim that every such capability is exclusive or superior to all regular Icecast releases. Compare the actual release and syntax: current regular Icecast has also evolved.

Use this portal’s KH examples with the stated snapshot and inspect differences before applying them to a packaged kh22 release. Start with a reproducible build, then one local stream. Keep a copy of the working executable and configuration so operational changes can be reversed.