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 796742 - audio: remove the non-interleaved layout from the caps of elements that do not actually support this
audio: remove the non-interleaved layout from the caps of elements that do no...
Status: RESOLVED OBSOLETE
Product: GStreamer
Classification: Platform
Component: gst-plugins-base
git master
Other Linux
: Normal normal
: git master
Assigned To: GStreamer Maintainers
GStreamer Maintainers
Depends on: 751605
Blocks:
 
 
Reported: 2018-07-03 13:18 UTC by George Kiagiadakis
Modified: 2018-11-03 12:08 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
adder: remove non-interleaved layout from caps (1.32 KB, patch)
2018-07-03 13:19 UTC, George Kiagiadakis
committed Details | Review

Description George Kiagiadakis 2018-07-03 13:18:35 UTC
A lot of elements claim to be supporting non-interleaved audio, but they actually don't, it's broken.

I'm going to go through all elements and remove this claim unless it's trivial to fix them. This bug will work as a tracker.
Comment 1 George Kiagiadakis 2018-07-03 13:19:30 UTC
Created attachment 372933 [details] [review]
adder: remove non-interleaved layout from caps
Comment 2 Sebastian Dröge (slomo) 2018-07-03 13:56:28 UTC
Comment on attachment 372933 [details] [review]
adder: remove non-interleaved layout from caps

Adder is also deprecated for all practical purposes :)
Comment 3 George Kiagiadakis 2018-07-11 13:57:11 UTC
commit a498d3fe6e2bedd2e1622bb51811d44c8fabd6ed
Author: George Kiagiadakis <george.kiagiadakis@collabora.com>
Date:   Mon Feb 12 15:33:49 2018 +0200

    adder: remove non-interleaved layout from caps
    
    adder needs more than just trivial work to support planar buffers properly
    because it currently reads sub-buffers from GstCollectPads in order for all
    of them to have matching sizes. In planar mode, this means it would truncate
    some channels and mix them up in strange ways. It only works if all input
    buffers in all sink pads have matching sizes.
Comment 4 George Kiagiadakis 2018-07-12 10:28:57 UTC
Other elements that need love:

gst-plugins-base:
* complex case, not sure if it works...
- rawaudioparse

* claims non-interleaved support on big endian arch only ?!:
- volume

* should take care of potential clipping that is denoted only on the GstAudioMeta:
- audiointerleave


gst-plugins-good:
* filters, most likely work, because they operate on each sample individually, in place:
- audioamplify
- audiodynamic
- audioinvert
- rglimiter

* should take care of potential clipping that is denoted only on the GstAudioMeta:
- interleave

* should add GstAudioMeta on the output if necessary:
- deinterleave
- qtdemux
Comment 5 Sebastian Dröge (slomo) 2018-07-12 10:44:40 UTC
(In reply to George Kiagiadakis from comment #4)

> * claims non-interleaved support on big endian arch only ?!:
> - volume

Should support it just fine as long as it doesn't do the per-sample volume based on the controller.
Comment 6 GStreamer system administrator 2018-11-03 12:08:42 UTC
-- GitLab Migration Automatic Message --

This bug has been migrated to freedesktop.org's GitLab instance and has been closed from further activity.

You can subscribe and participate further through the new bug through this link to our GitLab instance: https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/issues/469.