check if audio_only on active
This commit is contained in:
parent
b2093ddf35
commit
f4e11a989f
@ -45,7 +45,7 @@ pub struct Filters {
|
|||||||
pub audio_out_link: Vec<String>,
|
pub audio_out_link: Vec<String>,
|
||||||
pub video_out_link: Vec<String>,
|
pub video_out_link: Vec<String>,
|
||||||
pub output_map: Vec<String>,
|
pub output_map: Vec<String>,
|
||||||
audio_track_count: i32,
|
config: PlayoutConfig,
|
||||||
audio_position: i32,
|
audio_position: i32,
|
||||||
video_position: i32,
|
video_position: i32,
|
||||||
audio_last: i32,
|
audio_last: i32,
|
||||||
@ -53,7 +53,7 @@ pub struct Filters {
|
|||||||
}
|
}
|
||||||
|
|
||||||
impl Filters {
|
impl Filters {
|
||||||
pub fn new(audio_track_count: i32, audio_position: i32) -> Self {
|
pub fn new(config: PlayoutConfig, audio_position: i32) -> Self {
|
||||||
Self {
|
Self {
|
||||||
audio_chain: String::new(),
|
audio_chain: String::new(),
|
||||||
video_chain: String::new(),
|
video_chain: String::new(),
|
||||||
@ -63,7 +63,7 @@ impl Filters {
|
|||||||
audio_out_link: vec![],
|
audio_out_link: vec![],
|
||||||
video_out_link: vec![],
|
video_out_link: vec![],
|
||||||
output_map: vec![],
|
output_map: vec![],
|
||||||
audio_track_count,
|
config,
|
||||||
audio_position,
|
audio_position,
|
||||||
video_position: 0,
|
video_position: 0,
|
||||||
audio_last: -1,
|
audio_last: -1,
|
||||||
@ -155,7 +155,7 @@ impl Filters {
|
|||||||
pub fn map(&mut self) -> Vec<String> {
|
pub fn map(&mut self) -> Vec<String> {
|
||||||
let mut o_map = self.output_map.clone();
|
let mut o_map = self.output_map.clone();
|
||||||
|
|
||||||
if self.video_last == -1 && !self.video_chain.is_empty() {
|
if self.video_last == -1 && !self.config.processing.audio_only {
|
||||||
let v_map = "0:v".to_string();
|
let v_map = "0:v".to_string();
|
||||||
|
|
||||||
if !o_map.contains(&v_map) {
|
if !o_map.contains(&v_map) {
|
||||||
@ -164,7 +164,7 @@ impl Filters {
|
|||||||
}
|
}
|
||||||
|
|
||||||
if self.audio_last == -1 {
|
if self.audio_last == -1 {
|
||||||
for i in 0..self.audio_track_count {
|
for i in 0..self.config.processing.audio_tracks {
|
||||||
let a_map = format!("{}:a:{i}", self.audio_position);
|
let a_map = format!("{}:a:{i}", self.audio_position);
|
||||||
|
|
||||||
if !o_map.contains(&a_map) {
|
if !o_map.contains(&a_map) {
|
||||||
@ -179,7 +179,7 @@ impl Filters {
|
|||||||
|
|
||||||
impl Default for Filters {
|
impl Default for Filters {
|
||||||
fn default() -> Self {
|
fn default() -> Self {
|
||||||
Self::new(1, 0)
|
Self::new(PlayoutConfig::new(None), 0)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -513,7 +513,7 @@ pub fn filter_chains(
|
|||||||
node: &mut Media,
|
node: &mut Media,
|
||||||
filter_chain: &Option<Arc<Mutex<Vec<String>>>>,
|
filter_chain: &Option<Arc<Mutex<Vec<String>>>>,
|
||||||
) -> Filters {
|
) -> Filters {
|
||||||
let mut filters = Filters::new(config.processing.audio_tracks, 0);
|
let mut filters = Filters::new(config.clone(), 0);
|
||||||
|
|
||||||
if node.unit == Encoder {
|
if node.unit == Encoder {
|
||||||
if !config.processing.audio_only {
|
if !config.processing.audio_only {
|
||||||
|
Loading…
x
Reference in New Issue
Block a user