After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 626048 - [videomixer] needs mode that syncs streams based on timestamps
[videomixer] needs mode that syncs streams based on timestamps
Status: RESOLVED FIXED
Product: GStreamer
Classification: Platform
Component: gst-plugins-good
git master
Other Linux
: Normal enhancement
: 0.10.26
Assigned To: GStreamer Maintainers
GStreamer Maintainers
Depends on:
Blocks: 624905
 
 
Reported: 2010-08-04 17:30 UTC by Tim-Philipp Müller
Modified: 2010-09-04 13:07 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
videomixer2: Add videomixer2 element (138.93 KB, patch)
2010-08-05 18:45 UTC, Sebastian Dröge (slomo)
none Details | Review
videomixer2: Add videomixer2 element (138.87 KB, patch)
2010-09-02 08:46 UTC, Sebastian Dröge (slomo)
none Details | Review

Description Tim-Philipp Müller 2010-08-04 17:30:33 UTC
Currently it only looks at durations, it seems, try:

    gst-launch-0.10 videomixer name=mix ! ffmpegcolorspace ! timeoverlay ! xvimagesink \
        videotestsrc pattern=circular timestamp-offset=10000000000 ! alpha alpha=0.5 ! mix. \
        videotestsrc ! alpha alpha=0.5 ! mix.


The circular pattern should only show up after 10 seconds have passed, but it shows up immediately with the current video mixer.
Comment 1 Sebastian Dröge (slomo) 2010-08-04 17:37:59 UTC
I'm working on this... but you probably want running time and not stream time, right?
Comment 2 Sebastian Dröge (slomo) 2010-08-04 17:46:17 UTC
Syncing on stream time doesn't make much sense I guess because you have different streams which could have absolutely different stream times...

Also it would probably require to select some kind of master sinkpad again, which defines the output segment.
Comment 3 Sebastian Dröge (slomo) 2010-08-05 18:45:19 UTC
Created attachment 167207 [details] [review]
videomixer2: Add videomixer2 element

This is based on collectpads2 and is synchronizing
all streams based on the running time.

Fixes bug #626048, #624905.
Comment 4 Sebastian Dröge (slomo) 2010-08-05 18:47:03 UTC
This "works" but I'm not 100% sure if it's completely correct everywhere yet. Works fine in pitivi too.

I'll commit it after next -good release and some more work :)
Comment 5 Sebastian Dröge (slomo) 2010-09-02 08:46:21 UTC
Created attachment 169331 [details] [review]
videomixer2: Add videomixer2 element

This is based on collectpads2 and is synchronizing
all streams based on the running time.

New features compared to old videomixer:
 * Synchronizing frames on the running time
 * Improved and simplified negotiation
 * Full QoS support
 * Variable framerate support

Fixes bug #626048, #624905.
Comment 6 Sebastian Dröge (slomo) 2010-09-04 13:07:51 UTC
commit bcfd60a8d200e3f18d6260e1a6d71835d76036fb
Author: Sebastian Dröge <sebastian.droege@collabora.co.uk>
Date:   Mon Jul 26 16:07:15 2010 +0200

    videomixer2: Add videomixer2 element
    
    This is based on collectpads2 and is synchronizing
    all streams based on the running time.
    
    New features compared to old videomixer:
     * Synchronizing frames on the running time
     * Improved and simplified negotiation
     * Full QoS support
     * Variable framerate support
    
    Fixes bug #626048, #624905.