Struct TranscodeSession

Source
pub struct TranscodeSession { /* private fields */ }

Implementations§

Source§

impl TranscodeSession

Source

pub fn session_id(&self) -> &str

The session ID allows for re-retrieving this session at a later date.

Source

pub fn is_offline(&self) -> bool

Source

pub fn protocol(&self) -> Protocol

The selected protocol.

Source

pub fn container(&self) -> ContainerFormat

The selected container.

Source

pub fn video_transcode(&self) -> Option<(Decision, VideoCodec)>

Source

pub fn audio_transcode(&self) -> Option<(Decision, AudioCodec)>

Source

pub async fn download<W>(&self, writer: W) -> Result<()>
where W: AsyncWrite + Unpin,

Downloads the transcoded data to the provided writer.

For streaming transcodes (MPEG-DASH or HLS) this will return the playlist data. This crate doesn’t contain any support for processing these streaming formats and figuring out how to use them is currently left as an exercise for the caller.

For offline transcodes it is possible to start downloading before the transcode is complete. In this case any data already transcoded is downloaded and then the connection will remain open and more data will be delivered to the writer as it becomes available. This can mean that the HTTP connection is idle for long periods of time waiting for more data to be transcoded and so the normal timeouts are disabled for offline transcode downloads.

Unfortunately there does not appear to be any way to restart downloads from a specific point in the file. So if the download fails for any reason you have to start downloading all over again. It may make more sense to wait until the transcode is complete or nearly complete before attempting download.

Source

pub async fn status(&self) -> Result<TranscodeStatus>

Source

pub async fn stats(&self) -> Result<TranscodeSessionStats>

Retrieves the current transcode stats.

Source

pub async fn cancel(self) -> Result<()>

Cancels the transcode and removes any transcoded data from the server.

NB! Be careful with cancelling sessions too often! Cancelling a few transcoding sessions in a short succession, or cancelling a session shortly after it was initiated might crash the Plex server. At least the one running inside a Linux Docker Container.

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T> Instrument for T

Source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
Source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
Source§

impl<T> Instrument for T

Source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
Source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<T> WithSubscriber for T

Source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

impl<T> WithSubscriber for T

Source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

impl<T> ErasedDestructor for T
where T: 'static,