mirror of
https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs.git
synced 2025-02-16 21:05:15 +00:00
Fix build with improved Query API
This commit is contained in:
parent
a0a01f3013
commit
b7c06e0203
2 changed files with 11 additions and 16 deletions
|
@ -271,7 +271,7 @@ impl Demuxer {
|
|||
fn sink_activate(pad: &gst::Pad, _parent: &Option<gst::Object>) -> bool {
|
||||
let mode = {
|
||||
let mut query = gst::Query::new_scheduling();
|
||||
if !pad.peer_query(query.get_mut().unwrap()) {
|
||||
if !pad.peer_query(&mut query) {
|
||||
return false;
|
||||
}
|
||||
|
||||
|
|
|
@ -1118,27 +1118,22 @@ impl ToggleRecord {
|
|||
match query.view_mut() {
|
||||
QueryView::Scheduling(ref mut q) => {
|
||||
let mut new_query = gst::Query::new_scheduling();
|
||||
let res = stream.sinkpad.peer_query(new_query.get_mut().unwrap());
|
||||
let res = stream.sinkpad.peer_query(&mut new_query);
|
||||
if !res {
|
||||
return res;
|
||||
}
|
||||
|
||||
gst_log!(self.cat, obj: pad, "Downstream returned {:?}", new_query);
|
||||
|
||||
match new_query.view() {
|
||||
QueryView::Scheduling(ref n) => {
|
||||
let (flags, min, max, align) = n.get_result();
|
||||
q.set(flags, min, max, align);
|
||||
q.add_scheduling_modes(&n.get_scheduling_modes()
|
||||
.iter()
|
||||
.cloned()
|
||||
.filter(|m| m != &gst::PadMode::Pull)
|
||||
.collect::<Vec<_>>());
|
||||
gst_log!(self.cat, obj: pad, "Returning {:?}", q.get_mut_query());
|
||||
return true;
|
||||
}
|
||||
_ => unreachable!(),
|
||||
}
|
||||
let (flags, min, max, align) = new_query.get_result();
|
||||
q.set(flags, min, max, align);
|
||||
q.add_scheduling_modes(&new_query.get_scheduling_modes()
|
||||
.iter()
|
||||
.cloned()
|
||||
.filter(|m| m != &gst::PadMode::Pull)
|
||||
.collect::<Vec<_>>());
|
||||
gst_log!(self.cat, obj: pad, "Returning {:?}", q.get_mut_query());
|
||||
return true;
|
||||
}
|
||||
QueryView::Seeking(ref mut q) => {
|
||||
// Seeking is not possible here
|
||||
|
|
Loading…
Reference in a new issue