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 575961 - Playback of two gnlcompositions ends too early
Playback of two gnlcompositions ends too early
Status: RESOLVED DUPLICATE of bug 575972
Product: GStreamer
Classification: Platform
Component: gnonlin
0.10.21
Other Linux
: Normal normal
: git master
Assigned To: GStreamer Maintainers
Edward Hervey
Depends on:
Blocks:
 
 
Reported: 2009-03-19 13:41 UTC by Kari
Modified: 2009-03-19 15:22 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
Python script (3.11 KB, text/plain)
2009-03-19 13:44 UTC, Kari
Details
song5secs.ogg (14.92 KB, application/ogg)
2009-03-19 13:45 UTC, Kari
Details
song10secs.ogg (21.95 KB, application/ogg)
2009-03-19 13:46 UTC, Kari
Details
Python script with "silent source" to play even after filesource has ended. (3.84 KB, text/plain)
2009-03-19 14:22 UTC, Kari
Details

Description Kari 2009-03-19 13:41:55 UTC
Playing two gnlcompositions ends playback too early, it ends when the shortest gnlfilesource ends. The playback should propably end when the longest gnlfilesource ends.

Here's overview of the pipeline:

gnlcomposition1(gnlfilesource1) -> adder -> alsasink
gnlcomposition2(gnlfilesource2) /

gnlfilesource1 plays a 5 seconds long audio file and gnlfilesource2 plays a 10 seconds long audio file.

The pipeline stops playing after 5 seconds. If gnlcomposition2 is removed, the pipeline stops after 10 seconds.

Using Ubuntu 8.10 basic installation, GStreamer 0.10.21, gstreamer0.10-gnonlin 0.10.9-1, Macbook 1,1, Intel Core Duo CPU

Tried with ogg theora audio files and wav audio files, no difference.
Comment 1 Kari 2009-03-19 13:44:17 UTC
Created attachment 130967 [details]
Python script

Python script, which was used to notice the problem.
Comment 2 Kari 2009-03-19 13:45:33 UTC
Created attachment 130968 [details]
song5secs.ogg

First song used by the script
Comment 3 Kari 2009-03-19 13:46:18 UTC
Created attachment 130969 [details]
song10secs.ogg

Second song used by the script
Comment 4 Kari 2009-03-19 14:22:45 UTC
Created attachment 130971 [details]
Python script with "silent source" to play even after filesource has ended.

Got a suggestion that gnlcomposition needs to play something all the time. That's why the shorter gnlcomposition stops the whole pipeline after 5 secs - it doesn't have anything to play out.

This script adds an audiotestsrc, which should play even if gnlfilesource has ended. 

Sadly, even this doesn't work for me.
Comment 5 Edward Hervey 2009-03-19 15:00:58 UTC
First of all... you should be listening to messages on the bus.

bus = self.pipeline.get_bus()
bus.add_signal_watch()
bus.connect(self._busMessageCb)

def _busMessageCb(self, bus, message):
   if message.type == gst.MESSAGE_ERROR:
       print "ERROR !!!"


... and then you would have seen there's an error somewhere.
Comment 6 Edward Hervey 2009-03-19 15:22:09 UTC
The real issue is due to asynchronous segment handling.

I'm marking this as a duplicate of #575972

*** This bug has been marked as a duplicate of 575972 ***