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 347783 - [PLUGIN-MOVE] GDP elements should be moved
[PLUGIN-MOVE] GDP elements should be moved
Status: RESOLVED FIXED
Product: GStreamer
Classification: Platform
Component: gst-plugins-base
git master
Other Linux
: Normal enhancement
: 0.10.10
Assigned To: Wim Taymans
GStreamer Maintainers
READY-FOR-MOVE
Depends on: 349204 349916
Blocks:
 
 
Reported: 2006-07-17 13:59 UTC by Michael Smith
Modified: 2006-08-22 10:11 UTC
See Also:
GNOME target: ---
GNOME version: ---



Description Michael Smith 2006-07-17 13:59:24 UTC
We want to move the GDP elements out of -bad.

This is a bug tracking what needs to be done.

General consensus right now seems to be that -base is appropriate, but that needs to be decided.
Comment 1 Michael Smith 2006-07-17 14:01:32 UTC
Problems that should be fixed before moving:

depay:
  src ALWAYS pad with caps ANY - bad for decodebin? Also, category is wrong
    for decodebin, and is there a typefinder? Do we care?
  parent_class gets set by BOILERPLATE,no need to do it again.


depay:
  line 352: typo, fix with s/and/an/. This is in a FIXME: shouldn't you fix it,
    or delete the FIXME?
  parent_class is already set by BOILERPLATE


docs: in index.html, no description (likewise at top of individual pages)
pages then have red <include></include> shown! This is presumably an error somewhere, I haven't investigated further what the cause of these errors is.

Comment 2 Thomas Vander Stichele 2006-07-17 14:08:30 UTC
- removed parent_class setting, thanks for spotting
- depay: src ALWAYS with caps ANY is the correct thing to do - there will always be one stream out if one stream goes in, and we don't know the caps in advance.  So if that doesn't work with playbin, I'm fine with that.  On typefinding - I am undecided if we need it.  I haven't needed it myself, and it may be too soon to actually have it as an "official" file format.  Limited use too, since only one stream by design.  (Maybe we could mux it in ogg ;))
- the FIXME is still there because I haven't been able to trigger that case that I know of, and I'm as yet unsure on how to handle it.  Removing it is shuffling it under the carpet; I prefer to keep it there - unless you have a suggestion to reproduce or fix ?
- docs - I'll check on your machine, not sure what happens there for your, works here.
Comment 3 Michael Smith 2006-07-17 14:10:34 UTC
Also, the tests re-define 'buffers' (which is defined from the gstcheck header file). I don't know why this compiles at all. It should be removed.

Actually, I think it's pretty busted that it's in the header at all. It should probably be declared extern in the header, and actually defined somewhere in libgstcheck. But that's a problem unrelated to these new elements.

Comment 4 Thomas Vander Stichele 2006-07-26 10:53:21 UTC
Commited that change, along with a bogus proxying of get/set caps in one of the elements.

Please let me know if there's anything left.  If not, comment with a READY-FOR-MOVE

Thanks for reviewing !
Comment 5 Zaheer Abbas Merali 2006-07-29 21:23:51 UTC
Notice the issue with raw audio stored as gdp.
Comment 6 Wim Taymans 2006-07-31 09:03:14 UTC
from a quick look at the plugins:

 - gdp depayloader:
   - could be smarter with events received on the sinkpad:
     - EOS: check if one was sent in the datastream, if not forward, else ignore.
     - tags: forward or discard? It currently discards.
   - seeking? either disable (false from seeking query, src event hanler returns
     FALSE) or implement something.
   - DISCONT flag should clear the adapter. 
   - caps should be cleared in PAUSE->READY.

 - gdp payloader
   - seeking? I would disable this. (implement seeking query, return false from
     seekable, implement src event handler, return false from seek)
   - this->queue leaks
   
Comment 7 Wim Taymans 2006-08-02 16:56:34 UTC
        * gst/gdp/gstgdpdepay.c: (gst_gdp_depay_init),
        (gst_gdp_depay_finalize), (gst_gdp_depay_sink_event),
        (gst_gdp_depay_src_event), (gst_gdp_depay_chain),
        (gst_gdp_depay_change_state):
        Disable seeking.
        Small cleanups.
        Clear adapter on disconts.
        Clear caps when going to READY instead of NULL

        * gst/gdp/gstgdppay.c: (gst_gdp_pay_class_init),
        (gst_gdp_pay_init), (gst_gdp_pay_finalize), (gst_gdp_pay_reset),
        (gst_gdp_buffer_from_caps), (gst_gdp_pay_buffer_from_buffer),
        (gst_gdp_buffer_from_event), (gst_gdp_pay_reset_streamheader),
        (gst_gdp_queue_buffer), (gst_gdp_pay_chain),
        (gst_gdp_pay_sink_event), (gst_gdp_pay_src_event),
        (gst_gdp_pay_change_state):
        * gst/gdp/gstgdppay.h:
        Reset payloader when going to READY.
        Fix leaked buffers in ->queue on push errors.
        Disable seeking.
        Code cleanups.
        Create packetizer in _init, free in _finalize.
Comment 8 Thomas Vander Stichele 2006-08-21 19:03:04 UTC
committed, closing.