Skip to main content

Notice

Please note that most of the software linked on this forum is likely to be safe to use. If you are unsure, feel free to ask in the relevant topics, or send a private message to an administrator or moderator. To help curb the problems of false positives, or in the event that you do find actual malware, you can contribute through the article linked here.
Topic: new Open Source mp3 Encoder from Helix Community (Read 227387 times) previous topic - next topic
0 Members and 1 Guest are viewing this topic.

new Open Source mp3 Encoder from Helix Community

I just read this info from Karl here in Doom9

Quote
We have open sourced our MP3 encoder under the RPSL/RCSL. It has been checked it in under datatype/mp3/codec/encoder

You can build it with the following example configuration in the ribosome build system:

Code: [Select]
bif: helix
target: datatype_mp3_codec_encoder
profile: helix-client-all-defines SYSTEM_ID=linux-2.2-libc6-gcc32-i586



Documentation is available here:
http://datatype.helixcommunity.org/2005/mp3enc.doc

Source is here:
https://helixcommunity.org/viewcvs/.../codec/encoder/


Could be great if someone can try to build a binary for windows at least....maybe John33 

new Open Source mp3 Encoder from Helix Community

Reply #1
The source code link is broken, it's: https://helixcommunity.org/viewcvs/cgi/view.../codec/encoder/
I'll look at it, but there doesn't seem to be a simple d/l or anonymous CVS access, as yet, so it looks like grabbing a file at a time!!

new Open Source mp3 Encoder from Helix Community

Reply #2
What's RPSL/RCSL license, briefly?

new Open Source mp3 Encoder from Helix Community

Reply #3
You can d/l the doc and the source (including the RPSL licence text) from: http://homepage.ntlworld.com/jfe1205/helix_mp3enc.zip 

I've not attempted any kind of build, as yet, this is just copied from the Helix CVS.

new Open Source mp3 Encoder from Helix Community

Reply #4
Quote
The source code link is broken, it's: https://helixcommunity.org/viewcvs/cgi/view.../codec/encoder/
I'll look at it, but there doesn't seem to be a simple d/l or anonymous CVS access, as yet, so it looks like grabbing a file at a time!!
[{POST_SNAPBACK}][/a]

You need a free registration at helixcommunity.org to be able to acces their cvs server. More information: [a href="https://common.helixcommunity.org/2004/devdocs/quickstart]https://common.helixcommunity.org/2004/devdocs/quickstart[/url]

new Open Source mp3 Encoder from Helix Community

Reply #5
I beg one of my friend to compile a windows binary of this mp3 coder for me, and here it is:

http://www.hydrogenaudio.org/forums/index....showtopic=35540

Hope someone with good ear can evaluate this coder.

new Open Source mp3 Encoder from Helix Community

Reply #6
I could add this encoder in my next tests
I could make it work, but unfortunately I haven't found yet the magic formula to use it directly with foobar2000. Help would be appreciated  For batch encodings (with PCM source only), I'm using Speek's Wav2Gogo (mp3enc.exe must be renamed as gogo.exe).

This encoder have a nice VBR scale (from 0 to 150).
Some points are obscure to me:

Quote
mode      Select encoding mode: mode-0 stereo=0 mode-1 stereo=1 dual=2 mono=3.

nsbstereo
          Applies to mode-1 stereo mode only.  Number of subbands to
          encode in independent stereo.  Valid values are 4, 8, 12, and 16.
          The encoder limits choices to valid values.  The encoder
          will make a default selection if nsbstereo = -1.
          Valid values for Layer III are 3-32.

filter_select
          Selects input filtering:  no filter = 0,  DC blocking
          filter = 1.


I'd say that quality is (clearly) inferior to LAME but speed could make this encoder more attractive.
Wavpack Hybrid: one encoder for all scenarios
WavPack -c4.5hx6 (44100Hz & 48000Hz) ≈ 390 kbps + correction file
WavPack -c4hx6 (96000Hz) ≈ 768 kbps + correction file
WavPack -h (SACD & DSD) ≈ 2400 kbps at 2.8224 MHz

new Open Source mp3 Encoder from Helix Community

Reply #7
Quote
I could add this encoder in my next tests


Thank you guru.

Quote
I'd say that quality is (clearly) inferior to LAME but speed could make this encoder more attractive.
[a href="index.php?act=findpost&pid=313307"][{POST_SNAPBACK}][/a]



I don't know all the options neither.

This coder is not considered stronger than LAME, but I'm afraid a lot of people want to know how good it can be.

As for the speed, a asm-enabled compile may be more faster (this compile didn't use asm code).

new Open Source mp3 Encoder from Helix Community

Reply #8
At the other forum they asked if this was the Xing encoder. Since it was Karl Lillevold who announced it, it may well be the case. Does anybody know? I couldn't open the .zip file and try it out.
//From the barren lands of the Northsmen

new Open Source mp3 Encoder from Helix Community

Reply #9
Quote
At the other forum they asked if this was the Xing encoder. Since it was Karl Lillevold who announced it, it may well be the case. Does anybody know? I couldn't open the .zip file and try it out.[a href="index.php?act=findpost&pid=313309"][{POST_SNAPBACK}][/a]


Better wait to hear it from Karl himself. I couldn't see any XING headers in the sources, but considering the big amount of assembly code in there, I would suppose it is.

I'm trying to compile it with ASM, but they don't even mention what assembler you should be using! Hopefully it's MASM...

new Open Source mp3 Encoder from Helix Community

Reply #10
DigitalDictator, I have tried to download it @ HA with success. Your problem may be solved by clear the cache of your browser.

As we all know, Real bought Xing's mp3 encoder, so this coder have great possibility to be right the Real tweaked Xing. But this question is supposed to be answered by Karl himself.

new Open Source mp3 Encoder from Helix Community

Reply #11
The VBR mode sounds interesting. I've encoded 35 samples (from Roberto's listening tests) with -V50, and average bitrate was ~127 kbps (but with huge difference between samples). Quality was very interesting (forgot my previous comment about relative quality compared to LAME: serious testing is needed), and I'd say that it should be wise to give at least a try to this encoder.


About VBR and bitrate, it seems that some software have problems to calculate the bitrate. foobar2000 for example evaluate the bitrate at 80 kbps for each samples ?? MisterQuestionMan is also fooled. Only Encspot gives me reliable (I suppose) results. Also funny to see encspot detect three different encoders :
- Gogo (> 3.0) most often
- Lame (old) or m3e
- Xing (new)

http://foobar2000.net/divers/temp/RealEncspot.html
http://foobar2000.net/divers/temp/RealMQM.html
Wavpack Hybrid: one encoder for all scenarios
WavPack -c4.5hx6 (44100Hz & 48000Hz) ≈ 390 kbps + correction file
WavPack -c4hx6 (96000Hz) ≈ 768 kbps + correction file
WavPack -h (SACD & DSD) ≈ 2400 kbps at 2.8224 MHz

new Open Source mp3 Encoder from Helix Community

Reply #12
Quote
About VBR and bitrate, it seems that some software have problems to calculate the bitrate. foobar2000 for example evaluate the bitrate at 80 kbps for each samples ?? MisterQuestionMan is also fooled. Only Encspot gives me reliable (I suppose) results. Also funny to see encspot detect three different encoders :
- Gogo (> 3.0) most often
- Lame (old) or m3e
- Xing (new)

http://foobar2000.net/divers/temp/RealEncspot.html
http://foobar2000.net/divers/temp/RealMQM.html
[a href="index.php?act=findpost&pid=313315"][{POST_SNAPBACK}][/a]


I also tried the vbr mode, after 'fix MP3 header' by foobar2000, the bitrate shows OK. This problem may due to the hush compile that cannot handle vbr-header right.

Note: The encoded mp3 is recognized as 'Xing (new)' by Encspot only when there's no short-block used.

new Open Source mp3 Encoder from Helix Community

Reply #13
Quote
I could make it work, but unfortunately I haven't found yet the magic formula to use it directly with foobar2000. Help would be appreciated

Parameters: %s %d -V50
Highest BPS mode supported: 16


The BPS had me beat for a while.
I'm on a horse.

new Open Source mp3 Encoder from Helix Community

Reply #14
Just tried with my collection of 150 samples. Average bitrate for -V50 setting is 122 kbps. Lowest bitrate happened with sample S26 (66 kbps) and highest one with sample A03 (250 kbps). Wow! That's VBR ! This last sample is now detected by Encspot as a Fhg (fastenc) source 
Anyway, this sample proves if needed that a short-block switching algorithm is present, and is working:

long block = 15,2%
short block = 84,8% !!


I'm typing this message while listening the 150 samples, and the output gallery is far from being crappy. Some samples sound bad (solo harpsichord, percussions) but in average the encoder seems to be useable at this bitrate (not for archiving of course). I'm currently on my notebook I my judgment could be fooled by the poor output of the AC97 component; but on a weak DAP situation is not different.
Ah... I'm listening to piano, and pre-echo could also be annoying (S27 - S36 marimba too). Ringing on S30...
Well, it's MP3 at 123 kbps on average
Wavpack Hybrid: one encoder for all scenarios
WavPack -c4.5hx6 (44100Hz & 48000Hz) ≈ 390 kbps + correction file
WavPack -c4hx6 (96000Hz) ≈ 768 kbps + correction file
WavPack -h (SACD & DSD) ≈ 2400 kbps at 2.8224 MHz

new Open Source mp3 Encoder from Helix Community

Reply #15
Quote
Parameters: %s %d -V50
Highest BPS mode supported: 16


The BPS had me beat for a while.


 

It works fine now, thanks a lot!
Wavpack Hybrid: one encoder for all scenarios
WavPack -c4.5hx6 (44100Hz & 48000Hz) ≈ 390 kbps + correction file
WavPack -c4hx6 (96000Hz) ≈ 768 kbps + correction file
WavPack -h (SACD & DSD) ≈ 2400 kbps at 2.8224 MHz

new Open Source mp3 Encoder from Helix Community

Reply #16
Edit: sorry, it seems there's no need to recompile for now

new Open Source mp3 Encoder from Helix Community

Reply #17
Quote
I also tried the vbr mode, after 'fix MP3 header' by foobar2000, the bitrate shows OK. This problem may due to the hush compile that cannot handle vbr-header right.


Solution: Just add -X or -X2 to the commandline to solve the problem.

From mp3enc.exe -Help:

Code: [Select]
X         MPEG compatable Xing header, -X2 with/TOC
Wavpack Hybrid: one encoder for all scenarios
WavPack -c4.5hx6 (44100Hz & 48000Hz) ≈ 390 kbps + correction file
WavPack -c4hx6 (96000Hz) ≈ 768 kbps + correction file
WavPack -h (SACD & DSD) ≈ 2400 kbps at 2.8224 MHz

new Open Source mp3 Encoder from Helix Community

Reply #18
Yeah. Parameter should be "Parameters: %s %d -V50 -X" to get correct vbr-header.

new Open Source mp3 Encoder from Helix Community

Reply #19
Tomorrow, there will be a asm-enabled binary available.

new Open Source mp3 Encoder from Helix Community

Reply #20
I found a bug:

-V0 -X => no XING header
-V0 -X2 => no XING header

-V0 with 150 classical samples => 96 kbps and therefore could potentially be used in my next test with this group of sample.
Wavpack Hybrid: one encoder for all scenarios
WavPack -c4.5hx6 (44100Hz & 48000Hz) ≈ 390 kbps + correction file
WavPack -c4hx6 (96000Hz) ≈ 768 kbps + correction file
WavPack -h (SACD & DSD) ≈ 2400 kbps at 2.8224 MHz

new Open Source mp3 Encoder from Helix Community

Reply #21
[this is (almost) copied from my reply on doom9]:

If someone were to contribute standalone makefiles, or bugfixes, especially ones that on Win32 will include the i386 asm code, I am sure that would be most appreciated. I can check them into CVS (after a code review on the proper Helix mailing list).

Yes, this is based on the (infamous) Xing encoder, but it has been much improved from its early days, and does not suffer from the well known problems it had. This encoder was never included in any stand-alone Win32 Xing encoder app, but has been shipping with RealPlayer for a few years.

AFAIK, after these improvements, it was also licensed to a large h/w electronics manufacturer who chose it after extensive quality tests.
Sr. Codec Engineer (video) | RealNetworks Codec Group | helixcommunity.org 
This information is provided "AS IS" with no warranties,  grants no rights, and reflects my personal opinion.


new Open Source mp3 Encoder from Helix Community

Reply #23
Quote
Please check.

Youp, -V0 -X is fixed on my side.
I don't know what kind of miracle the asm compile could do, but encoding speed is now much faster! Thanks for this update
Wavpack Hybrid: one encoder for all scenarios
WavPack -c4.5hx6 (44100Hz & 48000Hz) ≈ 390 kbps + correction file
WavPack -c4hx6 (96000Hz) ≈ 768 kbps + correction file
WavPack -h (SACD & DSD) ≈ 2400 kbps at 2.8224 MHz

new Open Source mp3 Encoder from Helix Community

Reply #24
Once again, a way more readable source code than Lame.
To me this is very interesting, in the same category as the 3gpp AAC encoder.