IPB

Welcome Guest ( Log In | Register )

R128GAIN: An EBU R128 compliant loudness scanner
pbelkner
post Jan 5 2011, 19:38
Post #1





Group: Members
Posts: 412
Joined: 13-June 10
Member No.: 81467



I've just uploaded on sourceforge a first version of r128gain, an EBU R128 (http://tech.ebu.ch/loudness) compliant loudness scanner:
http://sourceforge.net/projects/r128gain/files/
  • process single files (tracks):
    • In order to just scan and analyze one file (WAV, FLAC or WV):
      CODE
      r128gain <file>
    • In order to scan, analyze and tag one file (currently only FLAC, result will be in <directory>):
      CODE
      r128gain <file> <directory>
    • In order to scan, analyze one file (WAV, WV) and encode and tag into FLAC (result will be in <directory>):
      CODE
      r128gain <file> <directory> flac
  • recursively process directories (the content of a directory is considered an album):
    • In order to just recursively scan and analyze a directory:
      CODE
      r128gain <directory>
    • In order to recursively scan, analyze and tag a directory:
      CODE
      r128gain <directory> <directory>
      r128gain <directory>/* <directory>
    • In order to recursively scan, analyze a directory and encode and tag into FLAC:
      CODE
      r128gain <directory> <directory> flac
      r128gain <directory>/* <directory> flac
Tagging is currently supported only for FLAC:
  • REPLAYGAIN_REFERENCE_LOUDNESS: always -23 LUFS (corresponding to EBU R128)
  • REPLAYGAIN_TRACK_GAIN: loudness difference to -23 LUFS in LU measured for this track
  • REPLAYGAIN_TRACK_PEAK: true peak measured at 192 kHz for this track
  • REPLAYGAIN_ALBUM_GAIN: loudness difference to -23 LUFS in LU measured for the whole album
  • REPLAYGAIN_ALBUM_PEAK: true peak measured at 192 kHz for the whole album
These tags should be honored by each Replay Gain compliant media player.
Go to the top of the page
+Quote Post
 
Start new topic
Replies
pbelkner
post Jan 6 2011, 09:19
Post #2





Group: Members
Posts: 412
Joined: 13-June 10
Member No.: 81467



QUOTE (Fandango @ Jan 6 2011, 02:53) *
On a completely other note... What about patents?

I'm no lawyer, but the least I can say is the following: At the time of this writing the implementation of R128GAIN is exclusively based on information publicly available from the following documents:
  1. ITU-R BS.1770 ‘Algorithms to measure audio programme loudness and true-peak audio level’
  2. EBU Technical Recommendation R 128: Loudness normalisation and permitted maximum level of audio signals
  3. EBU Tech Doc 3341: ‘Loudness Metering ‘EBU Mode’ metering to supplement loudness normalisation in accordance with EBU R 128’
  4. EBU Tech Doc 3342 ‘Loudness Range: A descriptor to supplement loudness normalisation in accordance with EBU R 128’
None of them contain any reference to a patent, especially not in their list of references.

QUOTE (mudlord @ Jan 6 2011, 04:42) *
What is the license for the tool?

QUOTE (Fandango @ Jan 6 2011, 02:53) *
Is it safe to use your tool in other projects?

It's GPLv3 (http://www.gnu.org/licenses/gpl.html)
Go to the top of the page
+Quote Post
mudlord
post Jan 6 2011, 13:20
Post #3





Group: Developer (Donating)
Posts: 818
Joined: 1-December 07
Member No.: 49165



QUOTE (pbelkner @ Jan 6 2011, 02:19) *



Any reason why? To suit "Free" software uses only? Doing so restricts other players like FB2K from using that code, even if a different implementation is made....>_>
Go to the top of the page
+Quote Post
pbelkner
post Jan 6 2011, 15:26
Post #4





Group: Members
Posts: 412
Joined: 13-June 10
Member No.: 81467



QUOTE (mudlord @ Jan 6 2011, 14:20) *
QUOTE (pbelkner @ Jan 6 2011, 02:19) *



Any reason why? To suit "Free" software uses only?

R128GAIN is heavily based on SoX (uses SoX IO, re-sampler, filters, chain architecture etc.)

IO will probably be re-implemented in order to support most of the existing codecs using FFmpeg.

Both, SoX and FFmpeg, are GPLed, hence R128GAIN is "GPL infected".

QUOTE (mudlord @ Jan 6 2011, 14:20) *
Doing so restricts other players like FB2K from using that code, even if a different implementation is made....>_>

Yep.
Go to the top of the page
+Quote Post
Soap
post Jan 6 2011, 15:53
Post #5





Group: Members
Posts: 1017
Joined: 19-November 06
Member No.: 37767



QUOTE (pbelkner @ Jan 6 2011, 09:26) *
Both, SoX and FFmpeg, are GPLed, hence R128GAIN is "GPL infected".

ffmepg is v2.1 or later. Is there a reason you went to v3?


--------------------
Creature of habit.
Go to the top of the page
+Quote Post
pbelkner
post Jan 6 2011, 16:13
Post #6





Group: Members
Posts: 412
Joined: 13-June 10
Member No.: 81467



QUOTE (Soap @ Jan 6 2011, 16:53) *
QUOTE (pbelkner @ Jan 6 2011, 09:26) *
Both, SoX and FFmpeg, are GPLed, hence R128GAIN is "GPL infected".

ffmepg is v2.1 or later. Is there a reason you went to v3?

Not really.
Go to the top of the page
+Quote Post
Soap
post Jan 6 2011, 16:21
Post #7





Group: Members
Posts: 1017
Joined: 19-November 06
Member No.: 37767



QUOTE (pbelkner @ Jan 6 2011, 10:13) *
QUOTE (Soap @ Jan 6 2011, 16:53) *

ffmepg is v2.1 or later. Is there a reason you went to v3?

Not really.

Your call, not mine, but unless you're worried about Tivoation (however you spell it) or one of the other corner cases covered in new by v3, removing v2 becomes a (significant?) restriction on uptake.


--------------------
Creature of habit.
Go to the top of the page
+Quote Post

Posts in this topic
- pbelkner   R128GAIN: An EBU R128 compliant loudness scanner   Jan 5 2011, 19:38
- - googlebot   Didn't try the tool, yet, but had a look at th...   Jan 5 2011, 20:13
|- - pbelkner   QUOTE (googlebot @ Jan 5 2011, 21:13) Did...   Jan 5 2011, 21:32
- - C.R.Helmrich   Wow, thank you so much for this tool! I was al...   Jan 5 2011, 23:23
|- - pbelkner   QUOTE (C.R.Helmrich @ Jan 6 2011, 00:23) ...   Jan 6 2011, 00:46
|- - C.R.Helmrich   QUOTE (pbelkner @ Jan 6 2011, 01:46) It i...   Jan 6 2011, 15:23
|- - pbelkner   QUOTE (C.R.Helmrich @ Jan 6 2011, 16:23) ...   Jan 6 2011, 16:03
|- - googlebot   QUOTE (pbelkner @ Jan 6 2011, 16:03) What...   Jan 7 2011, 21:34
|- - pbelkner   QUOTE (googlebot @ Jan 7 2011, 22:34) I a...   Jan 7 2011, 22:17
|- - googlebot   QUOTE (pbelkner @ Jan 7 2011, 22:17) It s...   Jan 7 2011, 22:35
|- - pbelkner   QUOTE (googlebot @ Jan 7 2011, 23:35) PS ...   Jan 7 2011, 23:21
|- - C.R.Helmrich   QUOTE (pbelkner @ Jan 8 2011, 00:21) Many...   Jan 8 2011, 14:29
|- - pbelkner   QUOTE (C.R.Helmrich @ Jan 8 2011, 15:29) ...   Jan 10 2011, 17:38
|- - pbelkner   QUOTE (pbelkner @ Jan 10 2011, 18:38) The...   Jan 10 2011, 18:01
|- - C.R.Helmrich   Exactly, and if you pull out the "/n" in...   Jan 10 2011, 18:20
- - Fandango   On a completely other note... What about patents? ...   Jan 6 2011, 01:53
|- - mudlord   QUOTE (Fandango @ Jan 5 2011, 18:53) On a...   Jan 6 2011, 13:22
|- - cpchan   QUOTE (mudlord @ Jan 6 2011, 08:22) The o...   Jan 6 2011, 13:44
|- - mudlord   QUOTE (cpchan @ Jan 6 2011, 07:44) QUOTE ...   Jan 6 2011, 13:46
- - Notat   Congratulations on this! I know that BS.1770 ...   Jan 6 2011, 02:37
- - mudlord   What is the license for the tool?   Jan 6 2011, 03:42
- - A_Man_Eating_Duck   i can't for the life of me get this app to jus...   Jan 6 2011, 08:14
|- - pbelkner   QUOTE (A_Man_Eating_Duck @ Jan 6 2011, 09...   Jan 6 2011, 09:34
- - pbelkner   QUOTE (Fandango @ Jan 6 2011, 02:53) On a...   Jan 6 2011, 09:19
|- - mudlord   QUOTE (pbelkner @ Jan 6 2011, 02:19) It...   Jan 6 2011, 13:20
|- - pbelkner   QUOTE (mudlord @ Jan 6 2011, 14:20) QUOTE...   Jan 6 2011, 15:26
|- - Soap   QUOTE (pbelkner @ Jan 6 2011, 09:26) Both...   Jan 6 2011, 15:53
|- - cpchan   QUOTE (Soap @ Jan 6 2011, 10:53) ffmepg i...   Jan 6 2011, 16:09
|- - pbelkner   QUOTE (Soap @ Jan 6 2011, 16:53) QUOTE (p...   Jan 6 2011, 16:13
|- - Soap   QUOTE (pbelkner @ Jan 6 2011, 10:13) QUOT...   Jan 6 2011, 16:21
|- - pbelkner   QUOTE (Soap @ Jan 6 2011, 17:21) QUOTE (p...   Jan 6 2011, 16:49
|- - saratoga   QUOTE (pbelkner @ Jan 6 2011, 10:49) QUOT...   Jan 6 2011, 18:37
|- - cpchan   QUOTE (saratoga @ Jan 6 2011, 13:37) That...   Jan 7 2011, 01:39
- - Zao   Note that "use" in mudlord's post is...   Jan 6 2011, 13:29
|- - cpchan   QUOTE (Zao @ Jan 6 2011, 08:29) If you ev...   Jan 6 2011, 13:48
|- - Zao   QUOTE (cpchan @ Jan 6 2011, 13:48) QUOTE ...   Jan 6 2011, 13:52
|- - cpchan   QUOTE (Zao @ Jan 6 2011, 08:52) If more k...   Jan 6 2011, 13:59
- - Zao   Even if the end artifact is a program, this preven...   Jan 6 2011, 13:47
|- - cpchan   QUOTE (Zao @ Jan 6 2011, 08:47) Even if t...   Jan 6 2011, 13:52
|- - Zao   QUOTE (cpchan @ Jan 6 2011, 13:52) What i...   Jan 6 2011, 13:54
- - Zao   If a developer uses a library with one of the usua...   Jan 6 2011, 14:02
|- - cpchan   QUOTE (Zao @ Jan 6 2011, 09:02) If a deve...   Jan 6 2011, 14:14
- - lvqcl   Please remember that QUOTE (pbelkner @ Jan 6 ...   Jan 6 2011, 14:10
- - Zao   You cannot always dynamically link to a library, a...   Jan 6 2011, 14:16
|- - cpchan   QUOTE (Zao @ Jan 6 2011, 09:16) You canno...   Jan 6 2011, 14:33
|- - mudlord   QUOTE (cpchan @ Jan 6 2011, 08:33) QUOTE ...   Jan 7 2011, 07:19
|- - googlebot   QUOTE (mudlord @ Jan 7 2011, 07:19)To avo...   Jan 7 2011, 10:46
|- - 2Bdecided   QUOTE (googlebot @ Jan 7 2011, 09:46) No ...   Jan 7 2011, 17:45
- - GHammer   Seven of 38 posts on software licensing. Geesh...   Jan 7 2011, 04:39
|- - mudlord   QUOTE (GHammer @ Jan 6 2011, 21:39) Seven...   Jan 7 2011, 07:14
- - romor   Bad talk. You are free to see his posts if you wan...   Jan 7 2011, 15:57
|- - Soap   forget it.   Jan 7 2011, 16:43
|- - staale   Hi, Just wanted to add that we've released ou...   Jan 7 2011, 17:08
- - googlebot   Forget this, too. Else the joke doesn't work o...   Jan 7 2011, 17:02
- - jangk   Hello, back to audio issues again. Thank you pbel...   Jan 7 2011, 17:27
|- - pbelkner   QUOTE (jangk @ Jan 7 2011, 18:27) Am I mi...   Jan 7 2011, 18:13
|- - jangk   QUOTE (pbelkner @ Jan 7 2011, 18:13) QUOT...   Jan 7 2011, 19:13
|- - pbelkner   QUOTE (jangk @ Jan 7 2011, 20:13) Anyhow,...   Jan 7 2011, 19:56
- - mudlord   QUOTE How about you program your own lib or shut u...   Jan 7 2011, 18:57
- - jdoering   Please pardon the noob here; hopefully I'm kee...   Jan 8 2011, 00:28
|- - googlebot   Completely agree! One doesn't really have ...   Jan 8 2011, 01:51
|- - pbelkner   QUOTE (jdoering @ Jan 8 2011, 01:28) But ...   Jan 8 2011, 09:32
- - Notat   I have it on good authority that the calculation c...   Jan 8 2011, 18:42
- - googlebot   A fully standard compliant single-pass outline is ...   Jan 8 2011, 19:40
- - pbelkner   v0.3 released I've just uploaded the new vers...   Jan 9 2011, 18:47
|- - googlebot   QUOTE (pbelkner @ Jan 9 2011, 18:47) CODE...   Jan 12 2011, 20:26
|- - pbelkner   QUOTE (googlebot @ Jan 12 2011, 21:26) QU...   Jan 13 2011, 10:26
- - googlebot   Works perfectly, great job! Even for multichan...   Jan 10 2011, 09:58
- - googlebot   Just out of curiosity, where does that 0.4 come fr...   Jan 10 2011, 18:35
|- - jdoering   QUOTE (googlebot @ Jan 10 2011, 09:35) Ju...   Jan 10 2011, 19:27
- - googlebot   Duh. My bad!   Jan 10 2011, 21:40
- - Fandango   I have a proposal. New standard tag fields: EBU_...   Jan 11 2011, 23:14
|- - Notat   QUOTE (Fandango @ Jan 11 2011, 15:14) Wit...   Jan 12 2011, 04:11
|- - Fandango   QUOTE (Notat @ Jan 12 2011, 04:11) QUOTE ...   Jan 13 2011, 16:21
|- - pbelkner   QUOTE (Fandango @ Jan 13 2011, 17:21) But...   Jan 13 2011, 17:01
||- - 2Bdecided   QUOTE (pbelkner @ Jan 13 2011, 16:01) EBU...   Jan 13 2011, 17:24
|- - 2Bdecided   QUOTE (Fandango @ Jan 13 2011, 15:21) Mos...   Jan 13 2011, 17:20
- - Fandango   PS: I'd say that using GAIN in your prefix is ...   Jan 12 2011, 02:02
- - jdoering   I had been hoping that the written tags were being...   Jan 12 2011, 06:40
|- - pbelkner   QUOTE (jdoering @ Jan 12 2011, 07:40) I h...   Jan 12 2011, 10:21
|- - jdoering   QUOTE (pbelkner @ Jan 12 2011, 01:21) QUO...   Jan 12 2011, 21:24
|- - pbelkner   QUOTE (jdoering @ Jan 12 2011, 22:24) I t...   Jan 13 2011, 11:01
- - jdoering   Just compared r128gain output versus ReplayGain fo...   Jan 12 2011, 10:18
- - googlebot   I think you both have a valid point. I also think...   Jan 12 2011, 12:58
|- - pbelkner   QUOTE (googlebot @ Jan 12 2011, 13:58) =...   Jan 12 2011, 13:14
||- - C.R.Helmrich   QUOTE (pbelkner @ Jan 12 2011, 14:14) QUO...   Jan 12 2011, 18:27
|||- - Notat   QUOTE (C.R.Helmrich @ Jan 12 2011, 10:27)...   Jan 13 2011, 02:57
|||- - jdoering   QUOTE (Notat @ Jan 12 2011, 17:57) QUOTE ...   Jan 13 2011, 06:21
|||- - C.R.Helmrich   QUOTE (jdoering @ Jan 13 2011, 07:21) I...   Jan 13 2011, 10:25
|||- - pbelkner   QUOTE (C.R.Helmrich @ Jan 13 2011, 11:25)...   Jan 13 2011, 10:37
||- - 2Bdecided   QUOTE (pbelkner @ Jan 12 2011, 12:14) QUO...   Jan 13 2011, 11:23
||- - Notat   QUOTE (2Bdecided @ Jan 13 2011, 03:23) Yo...   Jan 13 2011, 15:41
|- - pbelkner   QUOTE (googlebot @ Jan 12 2011, 13:58) PS...   Jan 12 2011, 17:07
- - googlebot   How large are the expected differences? Is there a...   Jan 12 2011, 18:46
- - C.R.Helmrich   True. I guess for the averaging we should leave ou...   Jan 12 2011, 19:00
- - Raiden   What is so special about pink noise? How does pink...   Jan 13 2011, 11:44
- - googlebot   Pink noise has equal energy over all octaves. It...   Jan 13 2011, 12:02
- - jangk   Thank you Notat for the link to AES "Loudness...   Jan 13 2011, 13:57
- - benski   I'm with David. I think we should verify the ...   Jan 13 2011, 17:27
- - Fandango   So if the old tags are used, how do I know whether...   Jan 13 2011, 18:22
6 Pages V   1 2 3 > » 


Closed TopicStart new topic
1 User(s) are reading this topic (1 Guests and 0 Anonymous Users)
0 Members:

 



RSS Lo-Fi Version Time is now: 27th November 2014 - 13:13