libebur128 - (yet another) EBU R 128 implementation |
![]() ![]() |
libebur128 - (yet another) EBU R 128 implementation |
Mar 5 2011, 21:04
Post
#101
|
|
|
Group: Members Posts: 171 Joined: 1-October 04 Member No.: 17420 |
::
Non SSE build has problems if filename includes special characters (here german Umlaut "ü"). "r128-sndfile.exe" -p true *.ogg CODE -1.#J LUFS, true peak: 0.00000000, [02] Stephan Schad - Die geheimnisvolle T├╝r.ogg -1.#J LUFS, true peak: 0.00000000, [03] Stephan Schad - Die geheimnisvolle T├╝r.ogg -19.78 LUFS, true peak: 1.01286089, [08] Stephan Schad - Nachts auf dem Nil.ogg -19.81 LUFS, true peak: 0.98158401, [12] Stephan Schad - Narbenhand.ogg -------------------------------------------------------------------------------- -19.79 LUFS, true peak: 1.01286089 (line 1 & 2) Greetings ... :: |
|
|
|
Mar 6 2011, 09:36
Post
#102
|
|
![]() Group: Developer Posts: 224 Joined: 14-September 04 Member No.: 17002 |
Thank you, I will fix this ASAP.
|
|
|
|
Mar 9 2011, 23:06
Post
#103
|
|
![]() Group: Developer Posts: 224 Joined: 14-September 04 Member No.: 17002 |
I've uploaded 0.2.3:
Library: - Fix possible segfault in ebur128_loudness_range_multiple. Scanners: - Hopefully fix Windows file name problems. - Prettier output of special float values (it is now 'nan', '-inf', 'inf' instead of '1.#J'). - Add '-p dbtp' mode that prints out true peak values in dBTP. - Only show one significant digit. To get "EBU mode" like output (LUFS, LRA, dBTP): CODE $ ./r128-sndfile -p dbtp -l ~/music/bad\ loop\ -\ Luo/*.flac -12.8 LUFS, LRA: 14.2 LU, true peak: -0.0 dBTP, /home/jan/music/bad loop - Luo/bad loop - Luo - 01 Nio.flac -11.1 LUFS, LRA: 8.3 LU, true peak: -0.1 dBTP, /home/jan/music/bad loop - Luo/bad loop - Luo - 02 Eri Valeire.flac -10.1 LUFS, LRA: 11.8 LU, true peak: -0.1 dBTP, /home/jan/music/bad loop - Luo/bad loop - Luo - 03 Kauniit Ihmiset.flac -11.3 LUFS, LRA: 11.8 LU, true peak: -0.6 dBTP, /home/jan/music/bad loop - Luo/bad loop - Luo - 04 Mmin.flac -26.1 LUFS, LRA: 14.9 LU, true peak: -12.0 dBTP, /home/jan/music/bad loop - Luo/bad loop - Luo - 05 3b Or T.flac -14.1 LUFS, LRA: 11.4 LU, true peak: 0.2 dBTP, /home/jan/music/bad loop - Luo/bad loop - Luo - 06 Kannas Nsp.flac -------------------------------------------------------------------------------- -11.8 LUFS, LRA: 13.3 LU, true peak: 0.2 dBTP Download |
|
|
|
Mar 9 2011, 23:06
Post
#104
|
|
![]() Group: Developer Posts: 224 Joined: 14-September 04 Member No.: 17002 |
SSE2 Win32 compile doesn't work with command "r128-sndfile.exe" -p true *.flac OS is Win XP SP3 with all updates. Non-SSE build has no problems. I haven't looked into it yet, but maybe you have a processor that does not support SSE2? Is there some kind of error message? |
|
|
|
Mar 10 2011, 11:48
Post
#105
|
|
|
Group: Members Posts: 171 Joined: 1-October 04 Member No.: 17420 |
|
|
|
|
Mar 10 2011, 22:07
Post
#106
|
|
|
Group: Members Posts: 171 Joined: 1-October 04 Member No.: 17420 |
::
"r128-sndfile.exe" -p all *.ogg CODE -19.9 LUFS, sample peak: 0.90242136, true peak: 0.90705091, true peak: nan dBTP, [02] Stephan Schad - Die geheimnisvolle T³r.ogg -20.0 LUFS, sample peak: 0.91545516, true peak: 0.93392205, true peak: nan dBTP, [03] Stephan Schad - Die geheimnisvolle T³r.ogg -19.9 LUFS, sample peak: 0.99845082, true peak: 0.99928373, true peak: nan dBTP, [08] Stephan Schad - Nachts auf dem Nil.ogg -20.0 LUFS, sample peak: 0.93857467, true peak: 0.97145581, true peak: nan dBTP, [12] Stephan Schad - Narbenhand.ogg -------------------------------------------------------------------------------------------------------------------------------- -20.0 LUFS, sample peak: 0.99845082, true peak: 0.99928373, true peak: nan dBTP dBTP is always "nan". Greetings ... :: This post has been edited by Surfi: Mar 10 2011, 22:08 |
|
|
|
Mar 12 2011, 11:20
Post
#107
|
|
![]() Group: Developer Posts: 224 Joined: 14-September 04 Member No.: 17002 |
|
|
|
|
Mar 12 2011, 15:50
Post
#108
|
|
|
Group: Members Posts: 171 Joined: 1-October 04 Member No.: 17420 |
::
"r128-sndfile.exe" -p all *.ogg CODE -19.9 LUFS, sample peak: 0.90242136, true peak: 0.90705091, true peak: -0.8 dBTP, [02] Stephan Schad - Die geheimnisvolle T³r.ogg -20.0 LUFS, sample peak: 0.91545516, true peak: 0.93392205, true peak: -0.6 dBTP, [03] Stephan Schad - Die geheimnisvolle T³r.ogg -19.9 LUFS, sample peak: 0.99845082, true peak: 0.99928373, true peak: -0.0 dBTP, [08] Stephan Schad - Nachts auf dem Nil.ogg -20.0 LUFS, sample peak: 0.93857467, true peak: 0.97145581, true peak: -0.3 dBTP, [12] Stephan Schad - Narbenhand.ogg --------------------------------------------------------------------------------------------------------------------------------- -20.0 LUFS, sample peak: 0.99845082, true peak: 0.99928373, true peak: -0.0 dBTP ... working! Just one more note: It would be nice if you could rename either the file LICENSE or the folder license in your archive. This leads to an error while extracting, at least for Windows OSs. Thanks for your support and the scanner! :: This post has been edited by Surfi: Mar 12 2011, 15:58 |
|
|
|
Mar 14 2011, 16:15
Post
#109
|
|
![]() Group: Developer Posts: 224 Joined: 14-September 04 Member No.: 17002 |
Final version 0.2.4 is now up, that fixes this and moves LICENSE to COPYING to avoid the name clash under Windows. There is a new option "-DUSE_TAGLIB=OFF" for CMake to build without the Taglib library if you don't need ReplayGain tagging. No other changes! Download |
|
|
|
Mar 14 2011, 19:48
Post
#110
|
|
|
Group: Members Posts: 171 Joined: 1-October 04 Member No.: 17420 |
|
|
|
|
Mar 24 2011, 21:55
Post
#111
|
|
|
Group: Members Posts: 171 Joined: 1-October 04 Member No.: 17420 |
::
... me again. For files with special characters tagging isn't working too. (Win XP SP3 and Win 7 SP1) I've tried r128-sndfile.exe -t album *.flac and r128-sndfile.exe -t album .\ but no success. Greetings ... :: This post has been edited by Surfi: Mar 24 2011, 21:56 |
|
|
|
Mar 24 2011, 22:37
Post
#112
|
|
![]() Group: Developer Posts: 224 Joined: 14-September 04 Member No.: 17002 |
For files with special characters tagging isn't working too. (Win XP SP3 and Win 7 SP1) Ahh, I missed to convert the file name back to the native Windows char encoding when tagging. Will be fixed in the next version! I don't have a clue why SSE/SSE2 does not work on your P4. The only thing I do differently for the SSE build is adding "-msse2 -mfpmath=sse" to the command line. |
|
|
|
Mar 25 2011, 07:14
Post
#113
|
|
|
Group: Members Posts: 6 Joined: 25-March 11 Member No.: 89293 |
Hello,
thank you for this very nice tool. As you may know, the R128 is currently in the process to try to become an ITU recommandation. Concerning the overlapping of short-term blocks, it seems that although ebu tech 3341 mentions "at least 50% overlap" it might end being "75% overlap". I think that's why the qualis audio test set mentions this 75% overlap. Concerning the relative gate threshold for integrated measurement, it probably will end being -10 dB instead of being -8 dB. So, my suggestion would be to have some way implemented into the lib to set up these values (overlapping ratio and relative gate threshold) at initialization. Once again, the library is already, as it is, a very valuable tool ! |
|
|
|
Mar 25 2011, 22:03
Post
#114
|
|
![]() Group: Developer Posts: 224 Joined: 14-September 04 Member No.: 17002 |
I've already changed the block overlap in the development version.
The gate can be changed with the "--gate" option, or by changing the global variable "relative_gate" (ugly hack for now). I'll try to make proper functions for that. I'm not sure whether they should be exposed to the library user. |
|
|
|
Mar 28 2011, 02:52
Post
#115
|
|
|
Group: Members Posts: 7 Joined: 31-January 11 Member No.: 87795 |
Thanks for your efforts. When I use the tagging option (-t album), flac files that have identical tag fields lose all but the first instance (e.g. more than one ARTIST tag retains only the first instance of ARTIST). I wouldn't think that this is "by design."
|
|
|
|
Mar 29 2011, 20:36
Post
#116
|
|
![]() Group: Developer Posts: 224 Joined: 14-September 04 Member No.: 17002 |
I've uploaded 0.3.0. Changelog:
library: - implemented 75% block overlap from the upcoming BS1770 spec. - moved sample/true peak scanning into the library (functions ebur128_sample_peak and ebur128_true_peak). scanner: - fixed bug where files with umlauts could not be tagged. - use newer TagLib version to fix bug where FLAC tag fields were deleted. See here for upstream bug/fix. I'm using a new compiler toolchain for windows builds. I hope it won't break everything. Download |
|
|
|
Mar 29 2011, 20:37
Post
#117
|
|
![]() Group: Developer Posts: 224 Joined: 14-September 04 Member No.: 17002 |
When I use the tagging option (-t album), flac files that have identical tag fields lose all but the first instance (e.g. more than one ARTIST tag retains only the first instance of ARTIST). I wouldn't think that this is "by design." Thanks for the report |
|
|
|
Mar 29 2011, 21:05
Post
#118
|
|
|
Group: Members Posts: 171 Joined: 1-October 04 Member No.: 17420 |
::
"r128-sndfile.exe" -p true *.ogg or "r128-sndfile.exe" -p true "*.ogg" Result: File or directory *.ogg does not exist! Wildcard support seems to be broken. Greetings ... :: |
|
|
|
Mar 29 2011, 21:57
Post
#119
|
|
![]() Group: Developer Posts: 224 Joined: 14-September 04 Member No.: 17002 |
Wildcard support seems to be broken. I can reproduce with cmd.exe. Works correctly in bash. Does it work in powershell? edit: Turns out Windows does globbing a bit differently than 'nix shells... fixing now. OK, I've uploaded 0.3.1 that fixes file globbing in Windows. By default Windows does no wildcard expansion. With mingw-w64, one can link against the provided "CRT_glob.o" to enable globbing support. The previous toolchain did this by default, this one didn't. This post has been edited by Raiden: Mar 29 2011, 22:49 |
|
|
|
Apr 1 2011, 14:23
Post
#120
|
|
|
Group: Members Posts: 171 Joined: 1-October 04 Member No.: 17420 |
|
|
|
|
Apr 1 2011, 15:03
Post
#121
|
|
|
Group: Members Posts: 581 Joined: 17-August 09 Member No.: 72373 |
Scanner: - implemented true peak scanning! Those values will NOT be used for the ReplayGain tags. :: That doesn't make sense to me. If scanning true peaks is possible why not adding an option for tagging them too? Greetings ... :: Interoperability. The ReplayGain spec calls for its tags to be sample peaks. |
|
|
|
Apr 1 2011, 17:28
Post
#122
|
|
|
Group: Members Posts: 171 Joined: 1-October 04 Member No.: 17420 |
Interoperability. The ReplayGain spec calls for its tags to be sample peaks. ::It's an argument. But using true peaks doesn't harm anything. They're always a little bit higher than sample peaks. Other tools (R128GAIN, foo_r128scan) do behave exactly like this (even though it doesn't necessarily mean they're on the right track). :: |
|
|
|
Apr 2 2011, 16:02
Post
#123
|
|
|
Group: Members Posts: 581 Joined: 17-August 09 Member No.: 72373 |
The difference between sample peak and true peak can be several dB. The difference is always in the safe direction. The difference is relevant only when clipping prevention kicks in. It is possibly noticeable but I agree that its not a very significant issue.
|
|
|
|
Apr 2 2011, 17:35
Post
#124
|
|
|
Group: Developer (Donating) Posts: 2040 Joined: 19-October 01 From: Finland Member No.: 322 |
Raiden, it was reported on the foobar2000 forums that libebur128 library has some issues with denormal numbers that slow it down horribly. You might want to take a look. I have prepared a sample file that shows the performance issue.
Attached File(s)
|
|
|
|
Apr 2 2011, 20:13
Post
#125
|
|
![]() Group: Developer Posts: 224 Joined: 14-September 04 Member No.: 17002 |
Raiden, it was reported on the foobar2000 forums that libebur128 library has some issues with denormal numbers that slow it down horribly. You might want to take a look. I have prepared a sample file that shows the performance issue. Thanks, will look into this.
|
|
|
|
![]() ![]() |
|
Lo-Fi Version | Time is now: 23rd May 2013 - 06:01 |