Package-level declarations

Types

Link copied to clipboard
data class HttpReaderPolicy(val connectTimeout: Duration = 10.seconds, val readTimeout: Duration = 10.seconds, val maxReconnects: Int = 5, val initialBackoff: Duration = 500.milliseconds, val maxBackoff: Duration = 4.seconds)

How long the HTTP reader, KtorMediaIo, waits for a server, and how it recovers when a connection drops.

Link copied to clipboard

Media bytes over http and https through Ktor (the Ktor half): the engine's FFmpeg profile deliberately vendors no TLS backend, so THIS is how https plays, with the OS supplying TLS through the platform engine (OkHttp on Android and the JVM, NSURLSession on Apple).

Link copied to clipboard

A typed failure from the http reader, surfaced to FFmpeg as an I/O error on the read.

Link copied to clipboard
class KtorMediaIoResolver(client: HttpClient? = null, headers: Map<String, String> = emptyMap(), policy: HttpReaderPolicy = HttpReaderPolicy()) : MediaIoResolver, AutoCloseable

Explicit HTTP/HTTPS resolver for a shared HttpClient, default request headers or an HttpReaderPolicy of its own; the automatic provider uses the default policy. Install it as io.github.yuroyami.kiteplayer.NetworkConfig.ioResolver; other URIs pass to the backend. Adding this module already supplies automatic transport for standard opens, whose private clients close with each reader. Use this resolver when the application owns a shared client or wants resolver-wide defaults. Per-item headers override these defaults.