#[non_exhaustive]pub enum Error {
PlaylistNotUtf8(Utf8Error),
PlaylistParse(Error),
UnrequestedResource {
id: ResourceId,
},
InitNotYetAvailable {
id: ResourceId,
},
Demux {
id: ResourceId,
source: Error,
},
UriResolve {
uri: String,
base: String,
reason: &'static str,
},
}Expand description
Error variants crate::client::LlHlsClient can return.
Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
PlaylistNotUtf8(Utf8Error)
The playlist bytes fed to crate::client::LlHlsClient::on_playlist
are not valid UTF-8 (RFC 8216 §4.1 playlists are UTF-8 text).
PlaylistParse(Error)
transmux::hls::MediaPlaylist::parse rejected the playlist text (a
known tag with a missing/unparsable required attribute).
UnrequestedResource
crate::client::LlHlsClient::on_resource was fed bytes for a
crate::client::ResourceId the client never requested (a
caller/driver bug, or a stale/duplicate delivery after the client
already moved past it).
Fields
id: ResourceIdThe unexpected id.
InitNotYetAvailable
Defensive-only: a Part/Segment reached the demux step with no init
segment cached. In normal operation this cannot happen —
crate::client::LlHlsClient::on_resource buffers any Part/Segment
that arrives before the init segment and replays it once the init is
delivered, so callers may complete fetches in any order.
Fields
id: ResourceIdThe id that could not be demuxed yet.
Demux
Demuxing the concatenation of the init segment + a fetched Part/Segment
resource (via transmux::Fmp4Demux) failed.
Fields
id: ResourceIdThe id whose bytes failed to demux.
UriResolve
A playlist URI (segment/part/map/rendition-report) could not be resolved against the playlist’s own URL.
Trait Implementations§
Source§impl Error for Error
impl Error for Error
Source§fn source(&self) -> Option<&(dyn Error + 'static)>
fn source(&self) -> Option<&(dyn Error + 'static)>
1.0.0 · Source§fn description(&self) -> &str
fn description(&self) -> &str
use the Display impl or to_string()
Source§impl From<Error> for TokioError
Available on crate feature tokio only.
impl From<Error> for TokioError
tokio only.