connect(&xc, &XinemaControl::title_changed, this, &StreamControlItem::title_changed);
connect(&xc, &XinemaControl::duration_changed, this, &StreamControlItem::duration_changed);
connect(&xc, &XinemaControl::position_changed, this, &StreamControlItem::position_changed);
+ connect(&xc, &XinemaControl::channels_changed, this, &StreamControlItem::control_channels_changed);
+ connect(&xc, &XinemaControl::current_audio_channel_changed, this, &StreamControlItem::current_audio_channel_changed);
+ connect(&xc, &XinemaControl::current_spu_channel_changed, this, &StreamControlItem::current_spu_channel_changed);
}
emit control_changed();
emit title_changed();
emit duration_changed();
emit position_changed();
+ emit channels_changed();
+ emit current_audio_channel_changed();
+ emit current_spu_channel_changed();
}
}
return control->get_control().get_position();
}
+
+QStringList StreamControlItem::get_audio_channels() const
+{
+ if(!control)
+ return QStringList();
+
+ return control->get_control().get_audio_channels();
+}
+
+QStringList StreamControlItem::get_spu_channels() const
+{
+ if(!control)
+ return QStringList();
+
+ return control->get_control().get_spu_channels();
+}
+
+void StreamControlItem::select_audio_channel(int chan)
+{
+ if(control)
+ control->get_control().select_audio_channel(chan);
+}
+
+void StreamControlItem::select_spu_channel(int chan)
+{
+ if(control)
+ control->get_control().select_spu_channel(chan);
+}
+
+int StreamControlItem::get_current_audio_channel() const
+{
+ if(!control)
+ return -1;
+
+ return control->get_control().get_current_audio_channel();
+}
+
+int StreamControlItem::get_current_spu_channel() const
+{
+ if(!control)
+ return -1;
+
+ return control->get_control().get_current_spu_channel();
+}
+
+void StreamControlItem::control_channels_changed()
+{
+ emit channels_changed();
+ emit current_audio_channel_changed();
+ emit current_spu_channel_changed();
+}