Upgrade MediaPlayer with gstreamer playbin (for GST > 18)

Change implementation of gst pipeline in MediaPlayer to use gstreamer playbin. This makes everything works more smoothly (including instant rate change). This also opens the possibility to allow audio mixing. Other bugfixes include set play speed rate at start, add video effects on reopen media player.
This commit is contained in:
Bruno Herbelin
2023-08-07 19:40:08 +02:00
parent 1b658e9b40
commit 5419622c74
5 changed files with 282 additions and 150 deletions

View File

@@ -414,6 +414,7 @@ void SessionVisitor::visit(MediaPlayer &n)
newelement->SetAttribute("play", n.isPlaying());
newelement->SetAttribute("loop", (int) n.loop());
newelement->SetAttribute("speed", n.playSpeed());
newelement->SetAttribute("video_effect", n.videoEffect().c_str());
newelement->SetAttribute("software_decoding", n.softwareDecodingForced());
newelement->SetAttribute("rewind_on_disabled", n.rewindOnDisabled());
newelement->SetAttribute("sync_to_metronome", (int) n.syncToMetronome());