xiph-mueller at maazl.de
2015-May-15 10:01 UTC
[Vorbis-dev] Extension to libvorbis for lossless volume changes
I added a new function to libvorbis that allows lossless changes of the volume to an vorbis_block. This can help to get reasonable loudness on hardware players that do not support the Replay Gain tags. int vorbis_gainadj(vorbis_block *vb, ogg_packet *op, float* dbgain); dbgain contains the relative adjustment for each channel. The trick is quite simple. I adjust the first 2 floor values for each channel if they are nonzero. Of course, it only works with floor type 1 and returns an error with floor 0. But I have never seen any files with floor 0. It is quite straight forward to extend vorbisgain with this function to modify the gain values to fit the loudness coarsely. Is there any interest to add this function to the libvorbis code? And if so, how to do this? Marcel
Nicolas George
2015-May-28 17:57 UTC
[Vorbis-dev] Extension to libvorbis for lossless volume changes
Le sextidi 26 flor?al, an CCXXIII, xiph-mueller at maazl.de a ?crit?:> I added a new function to libvorbis that allows lossless changes of the > volume to an vorbis_block. This can help to get reasonable loudness on > hardware players that do not support the Replay Gain tags. > > int vorbis_gainadj(vorbis_block *vb, ogg_packet *op, float* dbgain); > dbgain contains the relative adjustment for each channel. > > The trick is quite simple. I adjust the first 2 floor values for each > channel if they are nonzero. Of course, it only works with floor type 1 > and returns an error with floor 0. But I have never seen any files with > floor 0. > It is quite straight forward to extend vorbisgain with this function to > modify the gain values to fit the loudness coarsely. > > Is there any interest to add this function to the libvorbis code? > And if so, how to do this?I can not speak for the Xiph people, but I suggest you post the code here (with appropriate licence), assuming it is not too big. That way, it will not be lost for the community, even later if you loose interest. Regards, -- Nicolas George -------------- next part -------------- A non-text attachment was scrubbed... Name: not available Type: application/pgp-signature Size: 819 bytes Desc: Digital signature Url : http://lists.xiph.org/pipermail/vorbis-dev/attachments/20150528/f8285418/attachment.pgp