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 545433 - [wavparse] support tempo tag
[wavparse] support tempo tag
Status: RESOLVED FIXED
Product: GStreamer
Classification: Platform
Component: gst-plugins-good
git master
Other Linux
: Normal enhancement
: 0.10.11
Assigned To: Stefan Sauer (gstreamer, gtkdoc dev)
GStreamer Maintainers
Depends on:
Blocks:
 
 
Reported: 2008-07-30 05:59 UTC by Stefan Sauer (gstreamer, gtkdoc dev)
Modified: 2008-08-22 16:04 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
adds reading the acid chunk and adding tempo to taglist (4.74 KB, patch)
2008-07-30 09:13 UTC, Stefan Sauer (gstreamer, gtkdoc dev)
committed Details | Review

Description Stefan Sauer (gstreamer, gtkdoc dev) 2008-07-30 05:59:42 UTC
** The acid chunk goes a little something like this:
**
** 4 bytes          'acid'
** 4 bytes (int)     length of chunk starting at next byte
**
** 4 bytes (int)     type of file:
**        this appears to be a bit mask,however some combinations
**        are probably impossible and/or qualified as "errors"
**
**        0x01 On: One Shot         Off: Loop
**        0x02 On: Root note is Set Off: No root
**        0x04 On: Stretch is On,   Off: Strech is OFF
**        0x08 On: Disk Based       Off: Ram based
**        0x10 On: ??????????       Off: ????????? (Acidizer puts that ON)
**
** 2 bytes (short)      root note
**        if type 0x10 is OFF : [C,C#,(...),B] -> [0x30 to 0x3B]
**        if type 0x10 is ON  : [C,C#,(...),B] -> [0x3C to 0x47]
**         (both types fit on same MIDI pitch albeit different octaves, so who cares)
**
** 2 bytes (short)      ??? always set to 0x8000
** 4 bytes (float)      ??? seems to be always 0
** 4 bytes (int)        number of beats
** 2 bytes (short)      meter denominator   //always 4 in SF/ACID
** 2 bytes (short)      meter numerator     //always 4 in SF/ACID
**                      //are we sure about the order?? usually its num/denom
** 4 bytes (float)      tempo
**

From wav.c in libsndfile library
Comment 1 Stefan Sauer (gstreamer, gtkdoc dev) 2008-07-30 09:02:40 UTC
2008-07-30  Stefan Kost  <ensonic@users.sf.net>

	* gst-libs/gst/riff/riff-ids.h:
	  Adding acid chunk for tempo and loop information.

Comment 2 Stefan Sauer (gstreamer, gtkdoc dev) 2008-07-30 09:13:41 UTC
Created attachment 115548 [details] [review]
adds reading the acid chunk and adding tempo to taglist
Comment 3 Stefan Sauer (gstreamer, gtkdoc dev) 2008-08-05 14:20:37 UTC
2008-08-05  Stefan Kost  <ensonic@users.sf.net>

	* gst/wavparse/gstwavparse.c:
	  Handle the acid chunk and send tempo as part of tags. Other fields are
	  interesting too, but need more tag-definitions. Fixes #545433.