pub mod zencodec_media pub mod zencodec_media::adapt #[non_exhaustive] pub enum zencodec_media::adapt::AdaptError pub zencodec_media::adapt::AdaptError::Convert(zencodec::traits::BoxedError) pub zencodec_media::adapt::AdaptError::Decode(zencodec_media::session::SessionError) pub zencodec_media::adapt::AdaptError::Demux(zencodec_io::stepper::DriveFailure, core::convert::Infallible>) pub zencodec_media::adapt::AdaptError::Encode(zencodec_media::session::SessionError) pub zencodec_media::adapt::AdaptError::FrameCountMismatch pub zencodec_media::adapt::AdaptError::Map(zencodec::frame_storage::MapError) pub zencodec_media::adapt::AdaptError::MissingTimestamp pub zencodec_media::adapt::AdaptError::Mux(zencodec_media::session::SessionError) pub zencodec_media::adapt::AdaptError::PatchesNotAllowed pub zencodec_media::adapt::AdaptError::Shape pub zencodec_media::adapt::AdaptError::Sink(zencodec::sink::SinkError) pub zencodec_media::adapt::AdaptError::Time(zencodec::animation::TimingError) pub zencodec_media::adapt::AdaptError::Unsupported(zencodec::capabilities::UnsupportedOperation) impl core::error::Error for zencodec_media::adapt::AdaptError where A: core::error::Error + 'static, B: core::error::Error + 'static pub fn zencodec_media::adapt::AdaptError::source(&self) -> core::option::Option<&(dyn core::error::Error + 'static)> impl core::fmt::Display for zencodec_media::adapt::AdaptError pub fn zencodec_media::adapt::AdaptError::fmt(&self, f: &mut core::fmt::Formatter<'_>) -> core::fmt::Result pub struct zencodec_media::adapt::AnimationVideoEncoder impl zencodec_media::adapt::AnimationVideoEncoder pub fn zencodec_media::adapt::AnimationVideoEncoder::new(enc: E, mux: M, capture: P, lag_frames: u32) -> core::result::Result::Error, ::Error>> impl zencodec::traits::encoder::AnimationFrameEncoder for zencodec_media::adapt::AnimationVideoEncoder where E: zencodec_media::session::VideoEncoder + core::marker::Send, M: zencodec_media::container::Muxer + core::marker::Send, P: zencodec_media::adapt::CaptureFrame + core::marker::Send pub type zencodec_media::adapt::AnimationVideoEncoder::Error = zencodec_media::adapt::AdaptError<::Error, ::Error> pub fn zencodec_media::adapt::AnimationVideoEncoder::begin(&mut self, width: u32, height: u32, _descriptor: zenpixels::descriptor::PixelDescriptor, frame_count: core::option::Option) -> core::result::Result pub fn zencodec_media::adapt::AnimationVideoEncoder::consume_output(&mut self, n: usize) pub fn zencodec_media::adapt::AnimationVideoEncoder::finish(self, pulse: core::option::Option<&dyn how_far::pulse::Pulse>) -> core::result::Result pub fn zencodec_media::adapt::AnimationVideoEncoder::pending_output(&self) -> &[u8] pub fn zencodec_media::adapt::AnimationVideoEncoder::push_frame(&mut self, pixels: zenpixels::buffer::PixelSlice<'_>, duration_ms: u32, pulse: core::option::Option<&dyn how_far::pulse::Pulse>) -> core::result::Result<(), Self::Error> pub fn zencodec_media::adapt::AnimationVideoEncoder::push_frame_exact(&mut self, pixels: zenpixels::buffer::PixelSlice<'_>, duration: zencodec::animation::FrameDuration, pulse: core::option::Option<&dyn how_far::pulse::Pulse>) -> core::result::Result<(), Self::Error> pub fn zencodec_media::adapt::AnimationVideoEncoder::reject(op: zencodec::capabilities::UnsupportedOperation) -> Self::Error pub fn zencodec_media::adapt::AnimationVideoEncoder::take_output(&mut self, into: &mut alloc::vec::Vec) pub struct zencodec_media::adapt::Gray8 impl zencodec_media::adapt::CaptureFrame for zencodec_media::adapt::Gray8 pub fn zencodec_media::adapt::Gray8::capture(&mut self, pixels: &zenpixels::buffer::PixelSlice<'_>, config: &zencodec_media::session::CodecConfig, timing: zencodec::frame::FrameTiming) -> core::result::Result impl zencodec_media::adapt::RenderFrame for zencodec_media::adapt::Gray8 pub fn zencodec_media::adapt::Gray8::canvas_descriptor(&self, track: &zencodec_media::track::TrackInfo) -> core::result::Result pub fn zencodec_media::adapt::Gray8::render(&mut self, frame: &zencodec::frame_storage::Frame, canvas: &mut zenpixels::buffer::PixelSliceMut<'_>) -> core::result::Result<(), zencodec::traits::BoxedError> pub struct zencodec_media::adapt::VideoAnimationDecoder impl zencodec_media::adapt::VideoAnimationDecoder pub fn zencodec_media::adapt::VideoAnimationDecoder::demuxer(&self) -> &D pub fn zencodec_media::adapt::VideoAnimationDecoder::frames_decoded(&self) -> u64 pub fn zencodec_media::adapt::VideoAnimationDecoder::new(bytes: alloc::rcs::arc::Arc<[u8]>, dem: D, dec: C, render: R, final_duration: zencodec::animation::FrameDuration, window: usize) -> Self impl zencodec::traits::decoder::AnimationFrameDecoder for zencodec_media::adapt::VideoAnimationDecoder where D: zencodec_media::container::Demuxer + core::marker::Send, C: zencodec_media::session::VideoDecoder + core::marker::Send, R: zencodec_media::adapt::RenderFrame + core::marker::Send pub type zencodec_media::adapt::VideoAnimationDecoder::Error = zencodec_media::adapt::AdaptError<::Error, ::Error> pub fn zencodec_media::adapt::VideoAnimationDecoder::info(&self) -> &zencodec::info::ImageInfo pub fn zencodec_media::adapt::VideoAnimationDecoder::render_next_frame(&mut self, pulse: core::option::Option<&dyn how_far::pulse::Pulse>) -> core::result::Result>, Self::Error> pub fn zencodec_media::adapt::VideoAnimationDecoder::render_next_frame_to_sink(&mut self, pulse: core::option::Option<&dyn how_far::pulse::Pulse>, sink: &mut dyn zencodec::sink::DecodeRowSink) -> core::result::Result, Self::Error> pub fn zencodec_media::adapt::VideoAnimationDecoder::wrap_sink_error(err: zencodec::sink::SinkError) -> Self::Error pub trait zencodec_media::adapt::CaptureFrame pub fn zencodec_media::adapt::CaptureFrame::capture(&mut self, pixels: &zenpixels::buffer::PixelSlice<'_>, config: &zencodec_media::session::CodecConfig, timing: zencodec::frame::FrameTiming) -> core::result::Result impl zencodec_media::adapt::CaptureFrame for zencodec_media::adapt::Gray8 pub fn zencodec_media::adapt::Gray8::capture(&mut self, pixels: &zenpixels::buffer::PixelSlice<'_>, config: &zencodec_media::session::CodecConfig, timing: zencodec::frame::FrameTiming) -> core::result::Result pub trait zencodec_media::adapt::RenderFrame pub fn zencodec_media::adapt::RenderFrame::canvas_descriptor(&self, track: &zencodec_media::track::TrackInfo) -> core::result::Result pub fn zencodec_media::adapt::RenderFrame::render(&mut self, frame: &zencodec::frame_storage::Frame, canvas: &mut zenpixels::buffer::PixelSliceMut<'_>) -> core::result::Result<(), zencodec::traits::BoxedError> impl zencodec_media::adapt::RenderFrame for zencodec_media::adapt::Gray8 pub fn zencodec_media::adapt::Gray8::canvas_descriptor(&self, track: &zencodec_media::track::TrackInfo) -> core::result::Result pub fn zencodec_media::adapt::Gray8::render(&mut self, frame: &zencodec::frame_storage::Frame, canvas: &mut zenpixels::buffer::PixelSliceMut<'_>) -> core::result::Result<(), zencodec::traits::BoxedError> pub mod zencodec_media::container pub use zencodec_media::container::AccessPattern pub use zencodec_media::container::ByteRange pub use zencodec_media::container::Input pub use zencodec_media::container::InputRequest pub use zencodec_media::container::MuxFinish pub use zencodec_media::container::Patch pub use zencodec_media::container::PatchError #[non_exhaustive] pub enum zencodec_media::container::DemuxEvent pub zencodec_media::container::DemuxEvent::ConfigChanged pub zencodec_media::container::DemuxEvent::ConfigChanged::epoch: u32 pub zencodec_media::container::DemuxEvent::ConfigChanged::track: u32 pub zencodec_media::container::DemuxEvent::Done pub zencodec_media::container::DemuxEvent::Headers pub zencodec_media::container::DemuxEvent::Need pub zencodec_media::container::DemuxEvent::Packet(zencodec_media::packet::Packet) pub zencodec_media::container::DemuxEvent::Seeked(zencodec_media::container::SeekResult) #[non_exhaustive] pub enum zencodec_media::container::SeekMode pub zencodec_media::container::SeekMode::AtOrAfter pub zencodec_media::container::SeekMode::AtOrBefore pub zencodec_media::container::SeekMode::Nearest #[non_exhaustive] pub enum zencodec_media::container::SeekScope pub zencodec_media::container::SeekScope::Any pub zencodec_media::container::SeekScope::RandomAccessPoints #[non_exhaustive] pub enum zencodec_media::container::SeekStatus pub zencodec_media::container::SeekStatus::Positioned(zencodec_media::container::SeekResult) pub zencodec_media::container::SeekStatus::Scanning pub struct zencodec_media::container::DemuxProgress pub zencodec_media::container::DemuxProgress::consumed: usize pub zencodec_media::container::DemuxProgress::event: zencodec_media::container::DemuxEvent impl zencodec_media::container::DemuxProgress pub const fn zencodec_media::container::DemuxProgress::need(consumed: usize) -> Self pub const fn zencodec_media::container::DemuxProgress::new(consumed: usize, event: zencodec_media::container::DemuxEvent) -> Self pub struct zencodec_media::container::DemuxStage<'a, D: ?core::marker::Sized>(pub &'a mut D) impl zencodec_io::stepper::ByteStepper for zencodec_media::container::DemuxStage<'_, D> pub type zencodec_media::container::DemuxStage<'_, D>::Error = zencodec_media::session::SessionError<::Error> pub type zencodec_media::container::DemuxStage<'_, D>::Output = zencodec_media::container::DemuxEvent pub fn zencodec_media::container::DemuxStage<'_, D>::requested(&self) -> &[zencodec::traits::incremental::InputRequest] pub fn zencodec_media::container::DemuxStage<'_, D>::step(&mut self, input: zencodec::traits::incremental::Input<'_>, pulse: core::option::Option<&dyn how_far::pulse::Pulse>) -> core::result::Result, Self::Error> #[non_exhaustive] pub struct zencodec_media::container::MuxHint pub zencodec_media::container::MuxHint::forward_only: bool impl zencodec_media::container::MuxHint pub const fn zencodec_media::container::MuxHint::forward_only() -> Self pub struct zencodec_media::container::MuxTiming impl zencodec_media::container::MuxTiming pub const zencodec_media::container::MuxTiming::AT_FINISH: Self pub const fn zencodec_media::container::MuxTiming::patches_at_finish(&self) -> bool pub const fn zencodec_media::container::MuxTiming::streaming() -> Self pub const fn zencodec_media::container::MuxTiming::streaming_with_patches() -> Self pub const fn zencodec_media::container::MuxTiming::streams(&self) -> bool pub struct zencodec_media::container::MuxerShim(pub M) impl zencodec_media::container::DynMuxer for zencodec_media::container::MuxerShim pub fn zencodec_media::container::MuxerShim::begin(&mut self, tracks: &[zencodec_media::track::TrackInfo], hint: zencodec_media::container::MuxHint) -> core::result::Result> pub fn zencodec_media::container::MuxerShim::begin_exact_timing(&mut self, tracks: &[zencodec_media::track::TrackInfo], hint: zencodec_media::container::MuxHint) -> core::result::Result> pub fn zencodec_media::container::MuxerShim::consume_output(&mut self, n: usize) pub fn zencodec_media::container::MuxerShim::finish(self: alloc::boxed::Box, pulse: core::option::Option<&dyn how_far::pulse::Pulse>) -> core::result::Result> pub fn zencodec_media::container::MuxerShim::pending_output(&self) -> &[u8] pub fn zencodec_media::container::MuxerShim::take_output(&mut self, into: &mut alloc::vec::Vec) pub fn zencodec_media::container::MuxerShim::write_packet(&mut self, packet: zencodec_media::packet::Packet, pulse: core::option::Option<&dyn how_far::pulse::Pulse>) -> core::result::Result<(), zencodec_media::session::SessionError> #[non_exhaustive] pub struct zencodec_media::container::SeekResult pub zencodec_media::container::SeekResult::config_epoch: u32 pub zencodec_media::container::SeekResult::ordinal: u64 pub zencodec_media::container::SeekResult::pts: zencodec::time::Timestamp pub zencodec_media::container::SeekResult::random_access: zencodec_media::packet::RandomAccess impl zencodec_media::container::SeekResult pub const fn zencodec_media::container::SeekResult::new(pts: zencodec::time::Timestamp, ordinal: u64, random_access: zencodec_media::packet::RandomAccess, config_epoch: u32) -> Self #[non_exhaustive] pub struct zencodec_media::container::SeekTarget pub zencodec_media::container::SeekTarget::mode: zencodec_media::container::SeekMode pub zencodec_media::container::SeekTarget::scope: zencodec_media::container::SeekScope pub zencodec_media::container::SeekTarget::time: zencodec::time::Timestamp pub zencodec_media::container::SeekTarget::track: u32 impl zencodec_media::container::SeekTarget pub const fn zencodec_media::container::SeekTarget::new(track: u32, time: zencodec::time::Timestamp, mode: zencodec_media::container::SeekMode, scope: zencodec_media::container::SeekScope) -> Self pub trait zencodec_media::container::Demuxer pub type zencodec_media::container::Demuxer::Error: core::error::Error + core::marker::Send + core::marker::Sync + 'static pub fn zencodec_media::container::Demuxer::access_pattern(&self) -> zencodec::source::AccessPattern pub fn zencodec_media::container::Demuxer::requested(&self) -> &[zencodec::traits::incremental::InputRequest] pub fn zencodec_media::container::Demuxer::seek(&mut self, target: &zencodec_media::container::SeekTarget) -> core::result::Result> pub fn zencodec_media::container::Demuxer::step(&mut self, input: zencodec::traits::incremental::Input<'_>, pulse: core::option::Option<&dyn how_far::pulse::Pulse>) -> core::result::Result> pub fn zencodec_media::container::Demuxer::tracks(&self) -> &[zencodec_media::track::TrackInfo] pub trait zencodec_media::container::DynMuxer pub fn zencodec_media::container::DynMuxer::begin(&mut self, tracks: &[zencodec_media::track::TrackInfo], hint: zencodec_media::container::MuxHint) -> core::result::Result> pub fn zencodec_media::container::DynMuxer::begin_exact_timing(&mut self, tracks: &[zencodec_media::track::TrackInfo], hint: zencodec_media::container::MuxHint) -> core::result::Result> pub fn zencodec_media::container::DynMuxer::consume_output(&mut self, n: usize) pub fn zencodec_media::container::DynMuxer::finish(self: alloc::boxed::Box, pulse: core::option::Option<&dyn how_far::pulse::Pulse>) -> core::result::Result> pub fn zencodec_media::container::DynMuxer::pending_output(&self) -> &[u8] pub fn zencodec_media::container::DynMuxer::take_output(&mut self, into: &mut alloc::vec::Vec) pub fn zencodec_media::container::DynMuxer::write_packet(&mut self, packet: zencodec_media::packet::Packet, pulse: core::option::Option<&dyn how_far::pulse::Pulse>) -> core::result::Result<(), zencodec_media::session::SessionError> impl zencodec_media::container::DynMuxer for zencodec_media::container::MuxerShim pub fn zencodec_media::container::MuxerShim::begin(&mut self, tracks: &[zencodec_media::track::TrackInfo], hint: zencodec_media::container::MuxHint) -> core::result::Result> pub fn zencodec_media::container::MuxerShim::begin_exact_timing(&mut self, tracks: &[zencodec_media::track::TrackInfo], hint: zencodec_media::container::MuxHint) -> core::result::Result> pub fn zencodec_media::container::MuxerShim::consume_output(&mut self, n: usize) pub fn zencodec_media::container::MuxerShim::finish(self: alloc::boxed::Box, pulse: core::option::Option<&dyn how_far::pulse::Pulse>) -> core::result::Result> pub fn zencodec_media::container::MuxerShim::pending_output(&self) -> &[u8] pub fn zencodec_media::container::MuxerShim::take_output(&mut self, into: &mut alloc::vec::Vec) pub fn zencodec_media::container::MuxerShim::write_packet(&mut self, packet: zencodec_media::packet::Packet, pulse: core::option::Option<&dyn how_far::pulse::Pulse>) -> core::result::Result<(), zencodec_media::session::SessionError> pub trait zencodec_media::container::Muxer pub type zencodec_media::container::Muxer::Error: core::error::Error + core::marker::Send + core::marker::Sync + 'static pub fn zencodec_media::container::Muxer::begin(&mut self, tracks: &[zencodec_media::track::TrackInfo], hint: zencodec_media::container::MuxHint) -> core::result::Result> pub fn zencodec_media::container::Muxer::begin_exact_timing(&mut self, tracks: &[zencodec_media::track::TrackInfo], hint: zencodec_media::container::MuxHint) -> core::result::Result> pub fn zencodec_media::container::Muxer::consume_output(&mut self, n: usize) pub fn zencodec_media::container::Muxer::finish(self, pulse: core::option::Option<&dyn how_far::pulse::Pulse>) -> core::result::Result> where Self: core::marker::Sized pub fn zencodec_media::container::Muxer::pending_output(&self) -> &[u8] pub fn zencodec_media::container::Muxer::take_output(&mut self, into: &mut alloc::vec::Vec) pub fn zencodec_media::container::Muxer::write_packet(&mut self, packet: zencodec_media::packet::Packet, pulse: core::option::Option<&dyn how_far::pulse::Pulse>) -> core::result::Result<(), zencodec_media::session::SessionError> pub fn zencodec_media::container::apply_finish(file: &mut alloc::vec::Vec, finish: zencodec::output_patch::OutputFinish) -> core::result::Result<(), zencodec::output_patch::PatchError> pub fn zencodec_media::container::erase_muxer(m: M) -> alloc::boxed::Box<(dyn zencodec_media::container::DynMuxer + core::marker::Send)> pub type zencodec_media::container::Request = zencodec::traits::incremental::InputRequest pub mod zencodec_media::frame pub use zencodec_media::frame::ChromaSiting pub use zencodec_media::frame::ColorClaim pub use zencodec_media::frame::Crop pub use zencodec_media::frame::Frame pub use zencodec_media::frame::FrameGeometry pub use zencodec_media::frame::FrameInterpretation pub use zencodec_media::frame::FrameTiming pub use zencodec_media::frame::MapError pub use zencodec_media::frame::MappedPlanes pub use zencodec_media::frame::Picture pub use zencodec_media::frame::PlaneError pub use zencodec_media::frame::PlaneRole pub use zencodec_media::frame::PlaneSamples pub use zencodec_media::frame::PlaneView pub use zencodec_media::frame::Presentation pub use zencodec_media::frame::SampleEncoding pub use zencodec_media::frame::SampleEncodingError pub use zencodec_media::frame::Subsampling pub enum zencodec_media::frame::PlaneData pub zencodec_media::frame::PlaneData::AccountedU16(zencodec::storage::SharedStorage) pub zencodec_media::frame::PlaneData::AccountedU8(zencodec::storage::SharedStorage) pub zencodec_media::frame::PlaneData::U16(alloc::vec::Vec) pub zencodec_media::frame::PlaneData::U8(alloc::vec::Vec) pub struct zencodec_media::frame::OwnedPlane pub zencodec_media::frame::OwnedPlane::data: zencodec_media::frame::PlaneData pub zencodec_media::frame::OwnedPlane::height: usize pub zencodec_media::frame::OwnedPlane::stride_bytes: usize pub zencodec_media::frame::OwnedPlane::width: usize pub struct zencodec_media::frame::OwnedPlanes impl zencodec_media::frame::OwnedPlanes pub fn zencodec_media::frame::OwnedPlanes::new(planes: alloc::vec::Vec, encoding: zencodec::frame::SampleEncoding) -> core::result::Result impl zencodec::frame_storage::Picture for zencodec_media::frame::OwnedPlanes pub fn zencodec_media::frame::OwnedPlanes::map(&self) -> core::result::Result, zencodec::frame_storage::MapError> pub mod zencodec_media::limits #[non_exhaustive] pub struct zencodec_media::limits::MediaLimitExceeded pub zencodec_media::limits::MediaLimitExceeded::kind: zencodec::limits::LimitKind pub zencodec_media::limits::MediaLimitExceeded::limit: u64 pub zencodec_media::limits::MediaLimitExceeded::requested: u64 impl zencodec_media::limits::MediaLimitExceeded pub const fn zencodec_media::limits::MediaLimitExceeded::check(kind: zencodec::limits::LimitKind, requested: u64, limit: u64) -> core::result::Result<(), Self> impl core::error::Error for zencodec_media::limits::MediaLimitExceeded impl core::fmt::Display for zencodec_media::limits::MediaLimitExceeded pub fn zencodec_media::limits::MediaLimitExceeded::fmt(&self, f: &mut core::fmt::Formatter<'_>) -> core::fmt::Result #[non_exhaustive] pub struct zencodec_media::limits::MediaLimits pub zencodec_media::limits::MediaLimits::max_header_bytes: u64 pub zencodec_media::limits::MediaLimits::max_packet_bytes: usize pub zencodec_media::limits::MediaLimits::max_queued_frames: usize pub zencodec_media::limits::MediaLimits::max_queued_packets: usize pub zencodec_media::limits::MediaLimits::max_table_entries: u64 pub zencodec_media::limits::MediaLimits::max_tracks: u32 impl zencodec_media::limits::MediaLimits pub const zencodec_media::limits::MediaLimits::DEFAULT: Self pub fn zencodec_media::limits::MediaLimits::check_header_bytes(&self, bytes: u64) -> core::result::Result<(), zencodec_media::limits::MediaLimitExceeded> pub fn zencodec_media::limits::MediaLimits::check_packet_bytes(&self, bytes: u64) -> core::result::Result<(), zencodec_media::limits::MediaLimitExceeded> pub fn zencodec_media::limits::MediaLimits::check_table_entries(&self, entries: u64) -> core::result::Result<(), zencodec_media::limits::MediaLimitExceeded> pub fn zencodec_media::limits::MediaLimits::check_tracks(&self, tracks: u64) -> core::result::Result<(), zencodec_media::limits::MediaLimitExceeded> pub const fn zencodec_media::limits::MediaLimits::with_max_header_bytes(self, n: u64) -> Self pub const fn zencodec_media::limits::MediaLimits::with_max_packet_bytes(self, n: usize) -> Self pub const fn zencodec_media::limits::MediaLimits::with_max_queued_frames(self, n: usize) -> Self pub const fn zencodec_media::limits::MediaLimits::with_max_queued_packets(self, n: usize) -> Self pub const fn zencodec_media::limits::MediaLimits::with_max_table_entries(self, n: u64) -> Self pub const fn zencodec_media::limits::MediaLimits::with_max_tracks(self, n: u32) -> Self impl core::default::Default for zencodec_media::limits::MediaLimits pub fn zencodec_media::limits::MediaLimits::default() -> Self pub mod zencodec_media::output pub use zencodec_media::output::Destination pub use zencodec_media::output::Forward pub use zencodec_media::output::SeekBack #[non_exhaustive] pub enum zencodec_media::output::Stage pub zencodec_media::output::Stage::Drain pub zencodec_media::output::Stage::Finish pub zencodec_media::output::Stage::Packet pub zencodec_media::output::Stage::Patch pub zencodec_media::output::Stage::Prepare #[non_exhaustive] pub struct zencodec_media::output::Failure pub zencodec_media::output::Failure::cause: alloc::boxed::Box<(dyn core::error::Error + core::marker::Send + core::marker::Sync)> pub zencodec_media::output::Failure::emitted: u64 pub zencodec_media::output::Failure::stage: zencodec_media::output::Stage impl core::error::Error for zencodec_media::output::Failure pub fn zencodec_media::output::Failure::source(&self) -> core::option::Option<&(dyn core::error::Error + 'static)> impl core::fmt::Display for zencodec_media::output::Failure pub fn zencodec_media::output::Failure::fmt(&self, f: &mut core::fmt::Formatter<'_>) -> core::fmt::Result pub struct zencodec_media::output::Output impl zencodec_media::output::Output pub fn zencodec_media::output::Output::facts(&self) -> zencodec::operation::transition::DestinationFacts pub fn zencodec_media::output::Output::finish(self, pulse: core::option::Option<&dyn how_far::pulse::Pulse>) -> core::result::Result pub fn zencodec_media::output::Output::is_failed(&self) -> bool pub fn zencodec_media::output::Output::new(mux: M, destination: D, tracks: &[zencodec_media::track::TrackInfo], pulse: core::option::Option<&dyn how_far::pulse::Pulse>) -> core::result::Result pub fn zencodec_media::output::Output::send(&mut self, packet: zencodec_media::packet::Packet, pulse: core::option::Option<&dyn how_far::pulse::Pulse>) -> core::result::Result<(), zencodec_media::output::Failure> pub const fn zencodec_media::output::Output::stats(&self) -> &zencodec_media::output::Stats pub fn zencodec_media::output::Output::with_container_timing(mux: M, destination: D, tracks: &[zencodec_media::track::TrackInfo], pulse: core::option::Option<&dyn how_far::pulse::Pulse>) -> core::result::Result pub struct zencodec_media::output::PreparedOutput(_) impl zencodec_media::output::PreparedOutput pub fn zencodec_media::output::PreparedOutput::facts(&self) -> zencodec::operation::transition::DestinationFacts pub fn zencodec_media::output::PreparedOutput::new(mux: M, destination: D, tracks: &[zencodec_media::track::TrackInfo], pulse: core::option::Option<&dyn how_far::pulse::Pulse>) -> core::result::Result pub fn zencodec_media::output::PreparedOutput::publish(self, pulse: core::option::Option<&dyn how_far::pulse::Pulse>) -> core::result::Result, zencodec_media::output::Failure> pub const fn zencodec_media::output::PreparedOutput::timing(&self) -> zencodec_media::container::MuxTiming #[non_exhaustive] pub struct zencodec_media::output::Stats pub zencodec_media::output::Stats::emitted: u64 pub zencodec_media::output::Stats::max_pending: usize pub zencodec_media::output::Stats::patch_bytes: usize pub zencodec_media::output::Stats::patches: usize pub mod zencodec_media::packet #[non_exhaustive] pub enum zencodec_media::packet::PacketError pub zencodec_media::packet::PacketError::Empty pub zencodec_media::packet::PacketError::OutOfRange impl core::error::Error for zencodec_media::packet::PacketError impl core::fmt::Display for zencodec_media::packet::PacketError pub fn zencodec_media::packet::PacketError::fmt(&self, f: &mut core::fmt::Formatter<'_>) -> core::fmt::Result #[non_exhaustive] pub enum zencodec_media::packet::PacketPayload pub zencodec_media::packet::PacketPayload::Accounted(zencodec::storage::SharedStorage) pub zencodec_media::packet::PacketPayload::Owned(alloc::vec::Vec) pub zencodec_media::packet::PacketPayload::Shared pub zencodec_media::packet::PacketPayload::Shared::bytes: alloc::rcs::arc::Arc<[u8]> pub zencodec_media::packet::PacketPayload::Shared::len: usize pub zencodec_media::packet::PacketPayload::Shared::start: usize impl zencodec_media::packet::PacketPayload pub fn zencodec_media::packet::PacketPayload::as_bytes(&self) -> &[u8] pub fn zencodec_media::packet::PacketPayload::into_vec(self) -> alloc::vec::Vec pub fn zencodec_media::packet::PacketPayload::is_empty(&self) -> bool pub fn zencodec_media::packet::PacketPayload::len(&self) -> usize pub enum zencodec_media::packet::RandomAccess pub zencodec_media::packet::RandomAccess::No pub zencodec_media::packet::RandomAccess::Unknown pub zencodec_media::packet::RandomAccess::Yes #[non_exhaustive] pub struct zencodec_media::packet::Discard pub zencodec_media::packet::Discard::end: core::option::Option pub zencodec_media::packet::Discard::start: core::option::Option impl zencodec_media::packet::Discard pub const fn zencodec_media::packet::Discard::end(d: zencodec::animation::FrameDuration) -> Self pub const fn zencodec_media::packet::Discard::start(d: zencodec::animation::FrameDuration) -> Self pub const fn zencodec_media::packet::Discard::with_end(self, d: zencodec::animation::FrameDuration) -> Self pub struct zencodec_media::packet::Packet impl zencodec_media::packet::Packet pub fn zencodec_media::packet::Packet::additions(&self) -> &[zencodec_media::packet::PacketAddition] pub fn zencodec_media::packet::Packet::bytes(&self) -> &[u8] pub fn zencodec_media::packet::Packet::config_epoch(&self) -> u32 pub fn zencodec_media::packet::Packet::decode_time(&self) -> core::option::Option pub fn zencodec_media::packet::Packet::discard(&self) -> core::option::Option pub fn zencodec_media::packet::Packet::dts(&self) -> core::option::Option pub fn zencodec_media::packet::Packet::duration_ticks(&self) -> core::option::Option pub fn zencodec_media::packet::Packet::from_accounted(bytes: zencodec::storage::SharedStorage) -> core::result::Result pub fn zencodec_media::packet::Packet::from_shared(bytes: alloc::rcs::arc::Arc<[u8]>, start: usize, len: usize) -> core::result::Result pub fn zencodec_media::packet::Packet::from_vec(bytes: alloc::vec::Vec) -> core::result::Result pub fn zencodec_media::packet::Packet::input_offset(&self) -> core::option::Option pub fn zencodec_media::packet::Packet::is_empty(&self) -> bool pub fn zencodec_media::packet::Packet::is_taken(&self) -> bool pub fn zencodec_media::packet::Packet::len(&self) -> usize pub fn zencodec_media::packet::Packet::ordinal(&self) -> core::option::Option pub fn zencodec_media::packet::Packet::pts(&self) -> core::option::Option pub fn zencodec_media::packet::Packet::random_access(&self) -> zencodec_media::packet::RandomAccess pub fn zencodec_media::packet::Packet::take(&mut self) -> core::option::Option pub fn zencodec_media::packet::Packet::track(&self) -> u32 pub fn zencodec_media::packet::Packet::with_addition(self, addition: zencodec_media::packet::PacketAddition) -> Self pub fn zencodec_media::packet::Packet::with_config_epoch(self, epoch: u32) -> Self pub fn zencodec_media::packet::Packet::with_discard(self, discard: zencodec_media::packet::Discard) -> Self pub fn zencodec_media::packet::Packet::with_dts(self, dts: zencodec::time::Timestamp) -> Self pub fn zencodec_media::packet::Packet::with_duration_ticks(self, ticks: u64) -> Self pub fn zencodec_media::packet::Packet::with_input_offset(self, offset: u64) -> Self pub fn zencodec_media::packet::Packet::with_ordinal(self, ordinal: u64) -> Self pub fn zencodec_media::packet::Packet::with_pts(self, pts: zencodec::time::Timestamp) -> Self pub fn zencodec_media::packet::Packet::with_random_access(self, ra: zencodec_media::packet::RandomAccess) -> Self pub fn zencodec_media::packet::Packet::with_track(self, track: u32) -> Self pub struct zencodec_media::packet::PacketAddition impl zencodec_media::packet::PacketAddition pub fn zencodec_media::packet::PacketAddition::id(&self) -> u32 pub fn zencodec_media::packet::PacketAddition::new(id: u32, payload: zencodec_media::packet::PacketPayload) -> Self pub fn zencodec_media::packet::PacketAddition::payload(&self) -> &zencodec_media::packet::PacketPayload pub mod zencodec_media::policy #[non_exhaustive] pub enum zencodec_media::policy::Stage pub zencodec_media::policy::Stage::Decode pub zencodec_media::policy::Stage::Policy pub struct zencodec_media::policy::Error impl zencodec_media::policy::Error pub fn zencodec_media::policy::Error::report(&self) -> &zencodec::operation::policy::OperationReport pub const fn zencodec_media::policy::Error::stage(&self) -> zencodec_media::policy::Stage impl core::error::Error for zencodec_media::policy::Error pub fn zencodec_media::policy::Error::source(&self) -> core::option::Option<&(dyn core::error::Error + 'static)> impl core::fmt::Debug for zencodec_media::policy::Error pub fn zencodec_media::policy::Error::fmt(&self, f: &mut core::fmt::Formatter<'_>) -> core::fmt::Result impl core::fmt::Display for zencodec_media::policy::Error pub fn zencodec_media::policy::Error::fmt(&self, f: &mut core::fmt::Formatter<'_>) -> core::fmt::Result pub struct zencodec_media::policy::PolicyDecoder impl zencodec_media::policy::PolicyDecoder pub const fn zencodec_media::policy::PolicyDecoder::is_failed(&self) -> bool pub fn zencodec_media::policy::PolicyDecoder::new(decoder: D, resolver: R) -> Self pub fn zencodec_media::policy::PolicyDecoder::report(&self) -> &zencodec::operation::policy::OperationReport pub fn zencodec_media::policy::PolicyDecoder::with_policy_set(self, preset: zencodec::operation::policy::PolicySet) -> Self impl zencodec_media::policy::PolicyDecoder pub fn zencodec_media::policy::PolicyDecoder::try_new(factory: impl core::ops::function::FnOnce() -> core::result::Result, resolver: R, pulse: core::option::Option<&dyn how_far::pulse::Pulse>) -> core::result::Result impl zencodec_media::session::VideoDecoder for zencodec_media::policy::PolicyDecoder pub type zencodec_media::policy::PolicyDecoder::Error = zencodec_media::policy::Error pub fn zencodec_media::policy::PolicyDecoder::configure(&mut self, config: &zencodec_media::session::CodecConfig, pulse: core::option::Option<&dyn how_far::pulse::Pulse>) -> core::result::Result<(), zencodec_media::session::SessionError> pub fn zencodec_media::policy::PolicyDecoder::end_input(&mut self) -> core::result::Result<(), zencodec_media::session::SessionError> pub fn zencodec_media::policy::PolicyDecoder::receive(&mut self, pulse: core::option::Option<&dyn how_far::pulse::Pulse>) -> core::result::Result, zencodec_media::session::SessionError> pub fn zencodec_media::policy::PolicyDecoder::reset(&mut self) -> core::result::Result<(), zencodec_media::session::SessionError> pub fn zencodec_media::policy::PolicyDecoder::send(&mut self, packet: &mut zencodec_media::packet::Packet, pulse: core::option::Option<&dyn how_far::pulse::Pulse>) -> core::result::Result> pub fn zencodec_media::policy::PolicyDecoder::stream_info(&self) -> core::option::Option<&zencodec_media::session::VideoStreamInfo> pub mod zencodec_media::session pub use zencodec_media::session::ErasedError #[non_exhaustive] pub enum zencodec_media::session::ProtocolViolation pub zencodec_media::session::ProtocolViolation::BeginTwice pub zencodec_media::session::ProtocolViolation::ClockMismatch pub zencodec_media::session::ProtocolViolation::EmptyPacket pub zencodec_media::session::ProtocolViolation::EndOfStreamBeforeEndInput pub zencodec_media::session::ProtocolViolation::EpochMismatch pub zencodec_media::session::ProtocolViolation::FinishTwice pub zencodec_media::session::ProtocolViolation::IndexRequired pub zencodec_media::session::ProtocolViolation::MissingTimestamp pub zencodec_media::session::ProtocolViolation::NoBegin pub zencodec_media::session::ProtocolViolation::NoProgress pub zencodec_media::session::ProtocolViolation::NotConfigured pub zencodec_media::session::ProtocolViolation::ReceivePendingWithoutOutput pub zencodec_media::session::ProtocolViolation::SendAfterEnd pub enum zencodec_media::session::PumpError pub zencodec_media::session::PumpError::Downstream(D) pub zencodec_media::session::PumpError::Upstream(U) impl core::error::Error for zencodec_media::session::PumpError pub fn zencodec_media::session::PumpError::source(&self) -> core::option::Option<&(dyn core::error::Error + 'static)> impl core::fmt::Display for zencodec_media::session::PumpError pub fn zencodec_media::session::PumpError::fmt(&self, f: &mut core::fmt::Formatter<'_>) -> core::fmt::Result #[non_exhaustive] pub enum zencodec_media::session::Receive pub zencodec_media::session::Receive::EndOfStream pub zencodec_media::session::Receive::NeedInput pub zencodec_media::session::Receive::Ready(T) #[non_exhaustive] pub enum zencodec_media::session::SendStatus pub zencodec_media::session::SendStatus::Accepted pub zencodec_media::session::SendStatus::ReceivePending #[non_exhaustive] pub enum zencodec_media::session::SessionError pub zencodec_media::session::SessionError::Cancelled(enough::reason::StopReason) pub zencodec_media::session::SessionError::Codec(E) pub zencodec_media::session::SessionError::Finished pub zencodec_media::session::SessionError::Limit(zencodec_media::limits::MediaLimitExceeded) pub zencodec_media::session::SessionError::Protocol(zencodec_media::session::ProtocolViolation) pub zencodec_media::session::SessionError::Unsupported(zencodec_media::session::UnsupportedMedia) impl zencodec_media::session::SessionError pub fn zencodec_media::session::SessionError::map_codec(self, f: impl core::ops::function::FnOnce(E) -> F) -> zencodec_media::session::SessionError impl core::error::Error for zencodec_media::session::SessionError pub fn zencodec_media::session::SessionError::source(&self) -> core::option::Option<&(dyn core::error::Error + 'static)> impl core::fmt::Display for zencodec_media::session::SessionError pub fn zencodec_media::session::SessionError::fmt(&self, f: &mut core::fmt::Formatter<'_>) -> core::fmt::Result impl core::convert::From for zencodec_media::session::SessionError pub fn zencodec_media::session::SessionError::from(r: enough::reason::StopReason) -> Self #[non_exhaustive] pub enum zencodec_media::session::UnsupportedMedia pub zencodec_media::session::UnsupportedMedia::Codec pub zencodec_media::session::UnsupportedMedia::ConfigChange pub zencodec_media::session::UnsupportedMedia::Container pub zencodec_media::session::UnsupportedMedia::ExactTiming pub zencodec_media::session::UnsupportedMedia::ForwardOnlyLayout pub zencodec_media::session::UnsupportedMedia::PixelFormat pub zencodec_media::session::UnsupportedMedia::Seek #[non_exhaustive] pub struct zencodec_media::session::CodecConfig pub zencodec_media::session::CodecConfig::codec: zencodec_media::track::CodecId pub zencodec_media::session::CodecConfig::epoch: u32 pub zencodec_media::session::CodecConfig::private: core::option::Option> pub zencodec_media::session::CodecConfig::time_base: zencodec::time::TimeBase pub zencodec_media::session::CodecConfig::video: core::option::Option impl zencodec_media::session::CodecConfig pub fn zencodec_media::session::CodecConfig::new(codec: zencodec_media::track::CodecId, time_base: zencodec::time::TimeBase) -> Self pub fn zencodec_media::session::CodecConfig::with_epoch(self, epoch: u32) -> Self pub fn zencodec_media::session::CodecConfig::with_private(self, private: alloc::rcs::arc::Arc<[u8]>) -> Self pub fn zencodec_media::session::CodecConfig::with_video(self, video: zencodec_media::track::VideoTrackInfo) -> Self impl core::convert::From<&zencodec_media::track::TrackInfo> for zencodec_media::session::CodecConfig pub fn zencodec_media::session::CodecConfig::from(t: &zencodec_media::track::TrackInfo) -> Self pub struct zencodec_media::session::FusedDecoder impl zencodec_media::session::FusedDecoder pub fn zencodec_media::session::FusedDecoder::into_inner(self) -> D pub const fn zencodec_media::session::FusedDecoder::new(inner: D) -> Self impl zencodec_media::session::VideoDecoder for zencodec_media::session::FusedDecoder pub type zencodec_media::session::FusedDecoder::Error = ::Error pub fn zencodec_media::session::FusedDecoder::configure(&mut self, config: &zencodec_media::session::CodecConfig, pulse: core::option::Option<&dyn how_far::pulse::Pulse>) -> core::result::Result<(), zencodec_media::session::SessionError<::Error>> pub fn zencodec_media::session::FusedDecoder::end_input(&mut self) -> core::result::Result<(), zencodec_media::session::SessionError<::Error>> pub fn zencodec_media::session::FusedDecoder::receive(&mut self, pulse: core::option::Option<&dyn how_far::pulse::Pulse>) -> core::result::Result, zencodec_media::session::SessionError<::Error>> pub fn zencodec_media::session::FusedDecoder::reset(&mut self) -> core::result::Result<(), zencodec_media::session::SessionError<::Error>> pub fn zencodec_media::session::FusedDecoder::send(&mut self, packet: &mut zencodec_media::packet::Packet, pulse: core::option::Option<&dyn how_far::pulse::Pulse>) -> core::result::Result::Error>> pub fn zencodec_media::session::FusedDecoder::stream_info(&self) -> core::option::Option<&zencodec_media::session::VideoStreamInfo> pub struct zencodec_media::session::FusedEncoder impl zencodec_media::session::FusedEncoder pub fn zencodec_media::session::FusedEncoder::into_inner(self) -> E pub const fn zencodec_media::session::FusedEncoder::new(inner: E) -> Self impl zencodec_media::session::VideoEncoder for zencodec_media::session::FusedEncoder pub type zencodec_media::session::FusedEncoder::Error = ::Error pub fn zencodec_media::session::FusedEncoder::end_input(&mut self) -> core::result::Result<(), zencodec_media::session::SessionError<::Error>> pub fn zencodec_media::session::FusedEncoder::output_config(&self) -> core::option::Option<&zencodec_media::session::CodecConfig> pub fn zencodec_media::session::FusedEncoder::output_fidelity(&self) -> core::option::Option pub fn zencodec_media::session::FusedEncoder::receive(&mut self, pulse: core::option::Option<&dyn how_far::pulse::Pulse>) -> core::result::Result, zencodec_media::session::SessionError<::Error>> pub fn zencodec_media::session::FusedEncoder::send(&mut self, frame: &zencodec::frame_storage::Frame, pulse: core::option::Option<&dyn how_far::pulse::Pulse>) -> core::result::Result::Error>> pub struct zencodec_media::session::VideoDecoderShim(pub D) impl zencodec_media::session::VideoDecoder for zencodec_media::session::VideoDecoderShim pub type zencodec_media::session::VideoDecoderShim::Error = zencodec::traits::incremental::ErasedError pub fn zencodec_media::session::VideoDecoderShim::configure(&mut self, config: &zencodec_media::session::CodecConfig, pulse: core::option::Option<&dyn how_far::pulse::Pulse>) -> core::result::Result<(), zencodec_media::session::SessionError> pub fn zencodec_media::session::VideoDecoderShim::end_input(&mut self) -> core::result::Result<(), zencodec_media::session::SessionError> pub fn zencodec_media::session::VideoDecoderShim::receive(&mut self, pulse: core::option::Option<&dyn how_far::pulse::Pulse>) -> core::result::Result, zencodec_media::session::SessionError> pub fn zencodec_media::session::VideoDecoderShim::reset(&mut self) -> core::result::Result<(), zencodec_media::session::SessionError> pub fn zencodec_media::session::VideoDecoderShim::send(&mut self, packet: &mut zencodec_media::packet::Packet, pulse: core::option::Option<&dyn how_far::pulse::Pulse>) -> core::result::Result> pub fn zencodec_media::session::VideoDecoderShim::stream_info(&self) -> core::option::Option<&zencodec_media::session::VideoStreamInfo> pub struct zencodec_media::session::VideoEncoderShim(pub E) impl zencodec_media::session::VideoEncoder for zencodec_media::session::VideoEncoderShim pub type zencodec_media::session::VideoEncoderShim::Error = zencodec::traits::incremental::ErasedError pub fn zencodec_media::session::VideoEncoderShim::end_input(&mut self) -> core::result::Result<(), zencodec_media::session::SessionError> pub fn zencodec_media::session::VideoEncoderShim::output_config(&self) -> core::option::Option<&zencodec_media::session::CodecConfig> pub fn zencodec_media::session::VideoEncoderShim::output_fidelity(&self) -> core::option::Option pub fn zencodec_media::session::VideoEncoderShim::receive(&mut self, pulse: core::option::Option<&dyn how_far::pulse::Pulse>) -> core::result::Result, zencodec_media::session::SessionError> pub fn zencodec_media::session::VideoEncoderShim::send(&mut self, frame: &zencodec::frame_storage::Frame, pulse: core::option::Option<&dyn how_far::pulse::Pulse>) -> core::result::Result> #[non_exhaustive] pub struct zencodec_media::session::VideoStreamInfo pub zencodec_media::session::VideoStreamInfo::interpretation: alloc::rcs::arc::Arc pub zencodec_media::session::VideoStreamInfo::reorder_depth: core::option::Option impl zencodec_media::session::VideoStreamInfo pub fn zencodec_media::session::VideoStreamInfo::new(interpretation: alloc::rcs::arc::Arc) -> Self pub trait zencodec_media::session::VideoDecoder pub type zencodec_media::session::VideoDecoder::Error: core::error::Error + core::marker::Send + core::marker::Sync + 'static pub fn zencodec_media::session::VideoDecoder::configure(&mut self, config: &zencodec_media::session::CodecConfig, pulse: core::option::Option<&dyn how_far::pulse::Pulse>) -> core::result::Result<(), zencodec_media::session::SessionError> pub fn zencodec_media::session::VideoDecoder::end_input(&mut self) -> core::result::Result<(), zencodec_media::session::SessionError> pub fn zencodec_media::session::VideoDecoder::receive(&mut self, pulse: core::option::Option<&dyn how_far::pulse::Pulse>) -> core::result::Result, zencodec_media::session::SessionError> pub fn zencodec_media::session::VideoDecoder::reset(&mut self) -> core::result::Result<(), zencodec_media::session::SessionError> pub fn zencodec_media::session::VideoDecoder::send(&mut self, packet: &mut zencodec_media::packet::Packet, pulse: core::option::Option<&dyn how_far::pulse::Pulse>) -> core::result::Result> pub fn zencodec_media::session::VideoDecoder::stream_info(&self) -> core::option::Option<&zencodec_media::session::VideoStreamInfo> impl zencodec_media::session::VideoDecoder for alloc::boxed::Box pub type alloc::boxed::Box::Error = ::Error pub fn alloc::boxed::Box::configure(&mut self, config: &zencodec_media::session::CodecConfig, pulse: core::option::Option<&dyn how_far::pulse::Pulse>) -> core::result::Result<(), zencodec_media::session::SessionError<::Error>> pub fn alloc::boxed::Box::end_input(&mut self) -> core::result::Result<(), zencodec_media::session::SessionError<::Error>> pub fn alloc::boxed::Box::receive(&mut self, pulse: core::option::Option<&dyn how_far::pulse::Pulse>) -> core::result::Result, zencodec_media::session::SessionError<::Error>> pub fn alloc::boxed::Box::reset(&mut self) -> core::result::Result<(), zencodec_media::session::SessionError<::Error>> pub fn alloc::boxed::Box::send(&mut self, packet: &mut zencodec_media::packet::Packet, pulse: core::option::Option<&dyn how_far::pulse::Pulse>) -> core::result::Result::Error>> pub fn alloc::boxed::Box::stream_info(&self) -> core::option::Option<&zencodec_media::session::VideoStreamInfo> impl zencodec_media::session::VideoDecoder for zencodec_media::policy::PolicyDecoder pub type zencodec_media::policy::PolicyDecoder::Error = zencodec_media::policy::Error pub fn zencodec_media::policy::PolicyDecoder::configure(&mut self, config: &zencodec_media::session::CodecConfig, pulse: core::option::Option<&dyn how_far::pulse::Pulse>) -> core::result::Result<(), zencodec_media::session::SessionError> pub fn zencodec_media::policy::PolicyDecoder::end_input(&mut self) -> core::result::Result<(), zencodec_media::session::SessionError> pub fn zencodec_media::policy::PolicyDecoder::receive(&mut self, pulse: core::option::Option<&dyn how_far::pulse::Pulse>) -> core::result::Result, zencodec_media::session::SessionError> pub fn zencodec_media::policy::PolicyDecoder::reset(&mut self) -> core::result::Result<(), zencodec_media::session::SessionError> pub fn zencodec_media::policy::PolicyDecoder::send(&mut self, packet: &mut zencodec_media::packet::Packet, pulse: core::option::Option<&dyn how_far::pulse::Pulse>) -> core::result::Result> pub fn zencodec_media::policy::PolicyDecoder::stream_info(&self) -> core::option::Option<&zencodec_media::session::VideoStreamInfo> impl zencodec_media::session::VideoDecoder for zencodec_media::session::FusedDecoder pub type zencodec_media::session::FusedDecoder::Error = ::Error pub fn zencodec_media::session::FusedDecoder::configure(&mut self, config: &zencodec_media::session::CodecConfig, pulse: core::option::Option<&dyn how_far::pulse::Pulse>) -> core::result::Result<(), zencodec_media::session::SessionError<::Error>> pub fn zencodec_media::session::FusedDecoder::end_input(&mut self) -> core::result::Result<(), zencodec_media::session::SessionError<::Error>> pub fn zencodec_media::session::FusedDecoder::receive(&mut self, pulse: core::option::Option<&dyn how_far::pulse::Pulse>) -> core::result::Result, zencodec_media::session::SessionError<::Error>> pub fn zencodec_media::session::FusedDecoder::reset(&mut self) -> core::result::Result<(), zencodec_media::session::SessionError<::Error>> pub fn zencodec_media::session::FusedDecoder::send(&mut self, packet: &mut zencodec_media::packet::Packet, pulse: core::option::Option<&dyn how_far::pulse::Pulse>) -> core::result::Result::Error>> pub fn zencodec_media::session::FusedDecoder::stream_info(&self) -> core::option::Option<&zencodec_media::session::VideoStreamInfo> impl zencodec_media::session::VideoDecoder for zencodec_media::session::VideoDecoderShim pub type zencodec_media::session::VideoDecoderShim::Error = zencodec::traits::incremental::ErasedError pub fn zencodec_media::session::VideoDecoderShim::configure(&mut self, config: &zencodec_media::session::CodecConfig, pulse: core::option::Option<&dyn how_far::pulse::Pulse>) -> core::result::Result<(), zencodec_media::session::SessionError> pub fn zencodec_media::session::VideoDecoderShim::end_input(&mut self) -> core::result::Result<(), zencodec_media::session::SessionError> pub fn zencodec_media::session::VideoDecoderShim::receive(&mut self, pulse: core::option::Option<&dyn how_far::pulse::Pulse>) -> core::result::Result, zencodec_media::session::SessionError> pub fn zencodec_media::session::VideoDecoderShim::reset(&mut self) -> core::result::Result<(), zencodec_media::session::SessionError> pub fn zencodec_media::session::VideoDecoderShim::send(&mut self, packet: &mut zencodec_media::packet::Packet, pulse: core::option::Option<&dyn how_far::pulse::Pulse>) -> core::result::Result> pub fn zencodec_media::session::VideoDecoderShim::stream_info(&self) -> core::option::Option<&zencodec_media::session::VideoStreamInfo> pub trait zencodec_media::session::VideoEncoder pub type zencodec_media::session::VideoEncoder::Error: core::error::Error + core::marker::Send + core::marker::Sync + 'static pub fn zencodec_media::session::VideoEncoder::end_input(&mut self) -> core::result::Result<(), zencodec_media::session::SessionError> pub fn zencodec_media::session::VideoEncoder::output_config(&self) -> core::option::Option<&zencodec_media::session::CodecConfig> pub fn zencodec_media::session::VideoEncoder::output_fidelity(&self) -> core::option::Option pub fn zencodec_media::session::VideoEncoder::receive(&mut self, pulse: core::option::Option<&dyn how_far::pulse::Pulse>) -> core::result::Result, zencodec_media::session::SessionError> pub fn zencodec_media::session::VideoEncoder::send(&mut self, frame: &zencodec::frame_storage::Frame, pulse: core::option::Option<&dyn how_far::pulse::Pulse>) -> core::result::Result> impl zencodec_media::session::VideoEncoder for alloc::boxed::Box pub type alloc::boxed::Box::Error = ::Error pub fn alloc::boxed::Box::end_input(&mut self) -> core::result::Result<(), zencodec_media::session::SessionError<::Error>> pub fn alloc::boxed::Box::output_config(&self) -> core::option::Option<&zencodec_media::session::CodecConfig> pub fn alloc::boxed::Box::output_fidelity(&self) -> core::option::Option pub fn alloc::boxed::Box::receive(&mut self, pulse: core::option::Option<&dyn how_far::pulse::Pulse>) -> core::result::Result, zencodec_media::session::SessionError<::Error>> pub fn alloc::boxed::Box::send(&mut self, frame: &zencodec::frame_storage::Frame, pulse: core::option::Option<&dyn how_far::pulse::Pulse>) -> core::result::Result::Error>> impl zencodec_media::session::VideoEncoder for zencodec_media::session::FusedEncoder pub type zencodec_media::session::FusedEncoder::Error = ::Error pub fn zencodec_media::session::FusedEncoder::end_input(&mut self) -> core::result::Result<(), zencodec_media::session::SessionError<::Error>> pub fn zencodec_media::session::FusedEncoder::output_config(&self) -> core::option::Option<&zencodec_media::session::CodecConfig> pub fn zencodec_media::session::FusedEncoder::output_fidelity(&self) -> core::option::Option pub fn zencodec_media::session::FusedEncoder::receive(&mut self, pulse: core::option::Option<&dyn how_far::pulse::Pulse>) -> core::result::Result, zencodec_media::session::SessionError<::Error>> pub fn zencodec_media::session::FusedEncoder::send(&mut self, frame: &zencodec::frame_storage::Frame, pulse: core::option::Option<&dyn how_far::pulse::Pulse>) -> core::result::Result::Error>> impl zencodec_media::session::VideoEncoder for zencodec_media::session::VideoEncoderShim pub type zencodec_media::session::VideoEncoderShim::Error = zencodec::traits::incremental::ErasedError pub fn zencodec_media::session::VideoEncoderShim::end_input(&mut self) -> core::result::Result<(), zencodec_media::session::SessionError> pub fn zencodec_media::session::VideoEncoderShim::output_config(&self) -> core::option::Option<&zencodec_media::session::CodecConfig> pub fn zencodec_media::session::VideoEncoderShim::output_fidelity(&self) -> core::option::Option pub fn zencodec_media::session::VideoEncoderShim::receive(&mut self, pulse: core::option::Option<&dyn how_far::pulse::Pulse>) -> core::result::Result, zencodec_media::session::SessionError> pub fn zencodec_media::session::VideoEncoderShim::send(&mut self, frame: &zencodec::frame_storage::Frame, pulse: core::option::Option<&dyn how_far::pulse::Pulse>) -> core::result::Result> pub fn zencodec_media::session::drain_decoder(dec: &mut D, pulse: core::option::Option<&dyn how_far::pulse::Pulse>, on_output: F) -> core::result::Result<(), zencodec_media::session::PumpError::Error>, E2>> where D: zencodec_media::session::VideoDecoder + ?core::marker::Sized, F: core::ops::function::FnMut(zencodec::frame_storage::Frame) -> core::result::Result<(), E2> pub fn zencodec_media::session::drain_encoder(enc: &mut E, pulse: core::option::Option<&dyn how_far::pulse::Pulse>, on_output: F) -> core::result::Result<(), zencodec_media::session::PumpError::Error>, E2>> where E: zencodec_media::session::VideoEncoder + ?core::marker::Sized, F: core::ops::function::FnMut(zencodec_media::packet::Packet) -> core::result::Result<(), E2> pub fn zencodec_media::session::erase_video_decoder(d: D) -> alloc::boxed::Box pub fn zencodec_media::session::erase_video_encoder(e: E) -> alloc::boxed::Box pub fn zencodec_media::session::send_frame_until_accepted(enc: &mut E, frame: &zencodec::frame_storage::Frame, pulse: core::option::Option<&dyn how_far::pulse::Pulse>, on_output: F) -> core::result::Result<(), zencodec_media::session::PumpError::Error>, E2>> where E: zencodec_media::session::VideoEncoder + ?core::marker::Sized, F: core::ops::function::FnMut(zencodec_media::packet::Packet) -> core::result::Result<(), E2> pub fn zencodec_media::session::send_packet_until_accepted(dec: &mut D, packet: &mut zencodec_media::packet::Packet, pulse: core::option::Option<&dyn how_far::pulse::Pulse>, on_output: F) -> core::result::Result<(), zencodec_media::session::PumpError::Error>, E2>> where D: zencodec_media::session::VideoDecoder + ?core::marker::Sized, F: core::ops::function::FnMut(zencodec::frame_storage::Frame) -> core::result::Result<(), E2> pub type zencodec_media::session::DynVideoDecoder = (dyn zencodec_media::session::VideoDecoder + core::marker::Send) pub type zencodec_media::session::DynVideoEncoder = (dyn zencodec_media::session::VideoEncoder + core::marker::Send) pub mod zencodec_media::staged #[non_exhaustive] pub enum zencodec_media::staged::Refusal pub zencodec_media::staged::Refusal::ConfigurationChanged pub zencodec_media::staged::Refusal::ConfigurationUnavailable pub zencodec_media::staged::Refusal::ConversionMismatch pub zencodec_media::staged::Refusal::EarlyEnd pub zencodec_media::staged::Refusal::EmptyPacket pub zencodec_media::staged::Refusal::InputAfterEnd pub zencodec_media::staged::Refusal::NoAdmittedFrames pub zencodec_media::staged::Refusal::OfferMismatch pub zencodec_media::staged::Refusal::PolicyChangedAfterInput pub zencodec_media::staged::Refusal::ReceivePendingWithoutPacket pub zencodec_media::staged::Refusal::Terminal pub zencodec_media::staged::Refusal::VideoConfigurationRequired impl core::error::Error for zencodec_media::staged::Refusal impl core::fmt::Display for zencodec_media::staged::Refusal pub fn zencodec_media::staged::Refusal::fmt(&self, f: &mut core::fmt::Formatter<'_>) -> core::fmt::Result #[non_exhaustive] pub enum zencodec_media::staged::Stage pub zencodec_media::staged::Stage::Convert pub zencodec_media::staged::Stage::Encode pub zencodec_media::staged::Stage::Finish pub zencodec_media::staged::Stage::Policy pub zencodec_media::staged::Stage::Prepare pub zencodec_media::staged::Stage::Publish pub zencodec_media::staged::Stage::Terminal pub struct zencodec_media::staged::Completed pub zencodec_media::staged::Completed::report: zencodec::operation::policy::OperationReport pub zencodec_media::staged::Completed::stats: zencodec_media::output::Stats pub struct zencodec_media::staged::Failure pub zencodec_media::staged::Failure::emitted: u64 pub zencodec_media::staged::Failure::report: alloc::boxed::Box pub zencodec_media::staged::Failure::stage: zencodec_media::staged::Stage impl core::error::Error for zencodec_media::staged::Failure pub fn zencodec_media::staged::Failure::source(&self) -> core::option::Option<&(dyn core::error::Error + 'static)> impl core::fmt::Debug for zencodec_media::staged::Failure pub fn zencodec_media::staged::Failure::fmt(&self, f: &mut core::fmt::Formatter<'_>) -> core::fmt::Result impl core::fmt::Display for zencodec_media::staged::Failure pub fn zencodec_media::staged::Failure::fmt(&self, f: &mut core::fmt::Formatter<'_>) -> core::fmt::Result pub struct zencodec_media::staged::StagedEncode impl zencodec_media::staged::StagedEncode pub fn zencodec_media::staged::StagedEncode::finish(self, pulse: core::option::Option<&dyn how_far::pulse::Pulse>) -> core::result::Result> pub fn zencodec_media::staged::StagedEncode::is_failed(&self) -> bool pub fn zencodec_media::staged::StagedEncode::new(encoder: E, mux: M, destination: D, resolver: R, storage: zencodec::storage::StorageBudget, pulse: core::option::Option<&dyn how_far::pulse::Pulse>) -> core::result::Result> pub fn zencodec_media::staged::StagedEncode::push(&mut self, input: zencodec::frame_storage::Frame, pulse: core::option::Option<&dyn how_far::pulse::Pulse>) -> core::result::Result<(), whereat::at::At> pub fn zencodec_media::staged::StagedEncode::push_converted(&mut self, input: zencodec::frame_storage::Frame, target: &zencodec::frame::FrameInterpretation, conversion: zencodec::operation::transition::FrameConversionOffer, execute: impl core::ops::function::FnOnce(zencodec::frame_storage::Frame) -> core::result::Result, pulse: core::option::Option<&dyn how_far::pulse::Pulse>) -> core::result::Result<(), whereat::at::At> pub fn zencodec_media::staged::StagedEncode::report(&self) -> &zencodec::operation::policy::OperationReport pub fn zencodec_media::staged::StagedEncode::with_policy_set(self, preset: zencodec::operation::policy::PolicySet) -> Self pub fn zencodec_media::staged::StagedEncode::with_staging(encoder: E, mux: M, destination: D, resolver: R, staging: zencodec_media::staging::Staging, pulse: core::option::Option<&dyn how_far::pulse::Pulse>) -> core::result::Result> pub type zencodec_media::staged::Cause = alloc::boxed::Box<(dyn core::error::Error + core::marker::Send + core::marker::Sync)> pub mod zencodec_media::staging #[non_exhaustive] pub enum zencodec_media::staging::Refusal pub zencodec_media::staging::Refusal::Additions pub zencodec_media::staging::Refusal::Bytes pub zencodec_media::staging::Refusal::NotAtEnd pub zencodec_media::staging::Refusal::Overflow pub zencodec_media::staging::Refusal::Packets impl core::error::Error for zencodec_media::staging::Refusal impl core::fmt::Display for zencodec_media::staging::Refusal pub fn zencodec_media::staging::Refusal::fmt(&self, f: &mut core::fmt::Formatter<'_>) -> core::fmt::Result pub struct zencodec_media::staging::DiskLimits pub zencodec_media::staging::DiskLimits::max_additions_per_packet: usize pub zencodec_media::staging::DiskLimits::max_bytes: u64 pub zencodec_media::staging::DiskLimits::max_packets: usize impl zencodec_media::staging::DiskLimits pub const fn zencodec_media::staging::DiskLimits::new(max_bytes: u64, max_packets: usize, max_additions_per_packet: usize) -> Self pub struct zencodec_media::staging::Staging impl zencodec_media::staging::Staging pub fn zencodec_media::staging::Staging::disk(file: std::fs::File, limits: zencodec_media::staging::DiskLimits, replay: zencodec::storage::StorageBudget) -> core::result::Result pub fn zencodec_media::staging::Staging::facts(&self) -> zencodec::operation::transition::StagingFacts pub fn zencodec_media::staging::Staging::memory(budget: zencodec::storage::StorageBudget) -> Self pub mod zencodec_media::track #[non_exhaustive] pub enum zencodec_media::track::CodecId pub zencodec_media::track::CodecId::Aac pub zencodec_media::track::CodecId::Av1 pub zencodec_media::track::CodecId::Flac pub zencodec_media::track::CodecId::H264 pub zencodec_media::track::CodecId::Hevc pub zencodec_media::track::CodecId::Opus pub zencodec_media::track::CodecId::Other(zencodec_media::track::CodecTag) pub zencodec_media::track::CodecId::Pcm pub zencodec_media::track::CodecId::Vp8 pub zencodec_media::track::CodecId::Vp9 #[non_exhaustive] pub enum zencodec_media::track::TrackError pub zencodec_media::track::TrackError::NoChannels pub zencodec_media::track::TrackError::ZeroDimension pub zencodec_media::track::TrackError::ZeroSampleRate impl core::error::Error for zencodec_media::track::TrackError impl core::fmt::Display for zencodec_media::track::TrackError pub fn zencodec_media::track::TrackError::fmt(&self, f: &mut core::fmt::Formatter<'_>) -> core::fmt::Result #[non_exhaustive] pub enum zencodec_media::track::TrackKind pub zencodec_media::track::TrackKind::Audio pub zencodec_media::track::TrackKind::Data pub zencodec_media::track::TrackKind::Subtitle pub zencodec_media::track::TrackKind::Video #[non_exhaustive] pub struct zencodec_media::track::AudioTrackInfo pub zencodec_media::track::AudioTrackInfo::channels: zencodec_media::track::ChannelLayout pub zencodec_media::track::AudioTrackInfo::sample_rate: u32 impl zencodec_media::track::AudioTrackInfo pub const fn zencodec_media::track::AudioTrackInfo::new(sample_rate: u32, channels: zencodec_media::track::ChannelLayout) -> Self #[non_exhaustive] pub struct zencodec_media::track::ChannelLayout pub zencodec_media::track::ChannelLayout::count: u16 pub zencodec_media::track::ChannelLayout::mask: core::option::Option impl zencodec_media::track::ChannelLayout pub const fn zencodec_media::track::ChannelLayout::new(count: u16) -> Self pub const fn zencodec_media::track::ChannelLayout::with_mask(self, mask: u64) -> Self pub struct zencodec_media::track::CodecTag(_) impl zencodec_media::track::CodecTag pub fn zencodec_media::track::CodecTag::as_str(&self) -> &str pub fn zencodec_media::track::CodecTag::new(tag: &str) -> Self pub struct zencodec_media::track::TrackInfo impl zencodec_media::track::TrackInfo pub fn zencodec_media::track::TrackInfo::audio(index: u32, codec: zencodec_media::track::CodecId, time_base: zencodec::time::TimeBase, audio: zencodec_media::track::AudioTrackInfo) -> zencodec_media::track::TrackInfoBuilder pub fn zencodec_media::track::TrackInfo::audio_info(&self) -> core::option::Option<&zencodec_media::track::AudioTrackInfo> pub fn zencodec_media::track::TrackInfo::codec(&self) -> &zencodec_media::track::CodecId pub fn zencodec_media::track::TrackInfo::codec_delay(&self) -> core::option::Option pub fn zencodec_media::track::TrackInfo::codec_private(&self) -> core::option::Option<&alloc::rcs::arc::Arc<[u8]>> pub fn zencodec_media::track::TrackInfo::config_epoch(&self) -> u32 pub fn zencodec_media::track::TrackInfo::declared_duration_ticks(&self) -> core::option::Option pub fn zencodec_media::track::TrackInfo::declared_packets(&self) -> core::option::Option pub fn zencodec_media::track::TrackInfo::edit_delay_ticks(&self) -> core::option::Option pub fn zencodec_media::track::TrackInfo::index(&self) -> u32 pub fn zencodec_media::track::TrackInfo::kind(&self) -> zencodec_media::track::TrackKind pub fn zencodec_media::track::TrackInfo::other(index: u32, kind: zencodec_media::track::TrackKind, codec: zencodec_media::track::CodecId, time_base: zencodec::time::TimeBase) -> zencodec_media::track::TrackInfoBuilder pub fn zencodec_media::track::TrackInfo::seek_preroll(&self) -> core::option::Option pub fn zencodec_media::track::TrackInfo::time_base(&self) -> zencodec::time::TimeBase pub fn zencodec_media::track::TrackInfo::video(index: u32, codec: zencodec_media::track::CodecId, time_base: zencodec::time::TimeBase, video: zencodec_media::track::VideoTrackInfo) -> zencodec_media::track::TrackInfoBuilder pub fn zencodec_media::track::TrackInfo::video_info(&self) -> core::option::Option<&zencodec_media::track::VideoTrackInfo> impl core::convert::From<&zencodec_media::track::TrackInfo> for zencodec_media::session::CodecConfig pub fn zencodec_media::session::CodecConfig::from(t: &zencodec_media::track::TrackInfo) -> Self pub struct zencodec_media::track::TrackInfoBuilder(_) impl zencodec_media::track::TrackInfoBuilder pub fn zencodec_media::track::TrackInfoBuilder::build(self) -> core::result::Result pub fn zencodec_media::track::TrackInfoBuilder::with_codec_delay(self, d: zencodec::animation::FrameDuration) -> Self pub fn zencodec_media::track::TrackInfoBuilder::with_codec_private(self, bytes: alloc::rcs::arc::Arc<[u8]>) -> Self pub fn zencodec_media::track::TrackInfoBuilder::with_config_epoch(self, epoch: u32) -> Self pub fn zencodec_media::track::TrackInfoBuilder::with_declared_duration_ticks(self, n: u64) -> Self pub fn zencodec_media::track::TrackInfoBuilder::with_declared_packets(self, n: u64) -> Self pub fn zencodec_media::track::TrackInfoBuilder::with_edit_delay_ticks(self, ticks: i64) -> Self pub fn zencodec_media::track::TrackInfoBuilder::with_seek_preroll(self, d: zencodec::animation::FrameDuration) -> Self #[non_exhaustive] pub struct zencodec_media::track::VideoTrackInfo pub zencodec_media::track::VideoTrackInfo::coded_height: u32 pub zencodec_media::track::VideoTrackInfo::coded_width: u32 pub zencodec_media::track::VideoTrackInfo::color: core::option::Option pub zencodec_media::track::VideoTrackInfo::display: core::option::Option<(u32, u32)> impl zencodec_media::track::VideoTrackInfo pub const fn zencodec_media::track::VideoTrackInfo::new(coded_width: u32, coded_height: u32) -> Self pub const fn zencodec_media::track::VideoTrackInfo::with_color(self, color: zenpixels::cicp::Cicp) -> Self pub const fn zencodec_media::track::VideoTrackInfo::with_display(self, width: u32, height: u32) -> Self