GNOME Bugzilla – Bug 676033
tsdemux: when pts is not included in each packet stream drops frames
Last modified: 2013-06-12 08:18:56 UTC
Created attachment 214007 [details] [review] Fix frame dropping due to wrong buffer timestamps. We see an issue with IPTV streams provided by cablecom. These streams contain the PTS not in all packets, so it happens that the firstbuffer timestamp is set to 0 initially. In this case it should be updated to a valid timestamp as soon as the first timestamp is seen. Attached patch solves this by adding a timestamp == 0 check. A testfile to reproduce the issue can be grabbed from http://jusst.de/files/cablecom-nick.ts
Seems to work fine here without that patch. Can you give more details/logs ?
I can confirm that current git works without the patch. A bisect turned out that it was actually fixed by your packetizer rewrite (commits 389ff33b38e9ea4e63e00fec606c716184aa4f62 - 663e22be71db4a231992a0e54dde1f6b31f99571). This seems to have solved the initial problem which were the 0-timestamps which should have been GST_CLOCK_TIME_NONE in the first place. So from my point of view you can close the bug and drop the patch. Thanks.
With current git the provided testfile is broken again, when playing with udpsrc. I use tsplay (http://tstools.berlios.de/) to replay it as udp multicast stream like this: tsplay cablecom-nick.ts 239.0.50.1:4444 gst-launch playbin2 uri=udp://239.0.50.1:4444 You will see lots of dropped frames and artefacts in the stream. So far I did not find an obvious reason for this.
This works fine for me with git master and glib from git master (it fails with my system glib 2.34.3 because udpsrc complains about "could [not] add membership: Error joining multicast group: No such device"), so it seems the ts-related aspect is now obsolete. Could you re-test and confirm?
Julian, this should work fine with this latest commit. Could you check and confirm ? commit 65ba9b4756203786c54c9cbf10670a75438f14da Author: Edward Hervey <edward@collabora.com> Date: Fri Apr 26 15:39:30 2013 +0200 tsdemux: convert packet PTS/DTS as soon as possible We let the mpegtspacketizer deal with pcr wraparound/resets. https://bugzilla.gnome.org/show_bug.cgi?id=674536
Closing bug as per latest 3 comments