Current section

Files

Jump to
membrane_vk_video_plugin lib transcoder output_spec.ex
Raw

lib/transcoder/output_spec.ex

defmodule Membrane.VKVideo.Transcoder.OutputSpec do
@moduledoc false
alias Membrane.VKVideo.Encoder
@type t :: %__MODULE__{
width: non_neg_integer(),
height: non_neg_integer(),
tune: :low_latency | :high_quality,
rate_control:
:encoder_default
| :disabled
| {:variable_bitrate, Encoder.VariableBitrate.t()}
| {:constant_bitrate, Encoder.ConstantBitrate.t()},
scaling_algorithm: :nearest_neighbor | :lanczos3 | :bilinear
}
@enforce_keys [:width, :height]
defstruct @enforce_keys ++
[
tune: :low_latency,
rate_control: :encoder_default,
scaling_algorithm: :bilinear
]
end