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 560641 - rtp mp4 payloader doesn't flush the last frame upon EOS
rtp mp4 payloader doesn't flush the last frame upon EOS
Status: RESOLVED FIXED
Product: GStreamer
Classification: Platform
Component: gst-plugins-good
0.10.10
Other All
: Normal normal
: 0.10.14
Assigned To: GStreamer Maintainers
GStreamer Maintainers
Depends on:
Blocks:
 
 
Reported: 2008-11-13 13:46 UTC by Yotam Shtossel
Modified: 2009-01-23 08:42 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
Proposed fix (432 bytes, patch)
2008-11-13 13:55 UTC, Yotam Shtossel
committed Details | Review

Description Yotam Shtossel 2008-11-13 13:46:09 UTC
Please describe the problem:
The rtpmp4vpay pushes the frames one by one, such that the current frame causes the previous frame to be "released". Thus, the "final" frame is never sent out.

Steps to reproduce:
1. Create a pipeline consisting of a source streaming a finite-length file.
2. "Record" the resulting stream by any means (wireshark, dumping, etc.)
3. Compare input frame count and output frame count


Actual results:
Last frame is not pushed from the payloader

Expected results:
EOS event is handled by flushing remainder frames

Does this happen every time?
Yes

Other information:
Related to bug #434824
Comment 1 Yotam Shtossel 2008-11-13 13:55:52 UTC
Created attachment 122575 [details] [review]
Proposed fix

Solves the issue and AFAIK doesn't break anything else
Comment 2 Wim Taymans 2008-11-13 14:04:50 UTC
        Patch by: Yotam <sh dot yotam at gmail dot com>

        * gst/rtp/gstrtpmp4vpay.c: (gst_rtp_mp4v_pay_event):
        Flush the remaining frames on EOS. Fixes #560641.