IPB

Welcome Guest ( Log In | Register )

4 Pages V  < 1 2 3 4 >  
Reply to this topicStart new topic
fpMP3Enc: a multi-core MP3 encoder based upon LAME 3.98.2
smeargol
post Nov 10 2009, 00:34
Post #51





Group: Members
Posts: 4
Joined: 3-May 08
Member No.: 53249



Very good work!
I would like to try it out, but so far the compiled version from Roberto has crashed on me every time I tried to use it ohmy.gif
I think the problem is my CPU, as I have an AMD Phenom2, which doesn't support the SSE4 instruction set. dry.gif

So, is there any possibility of getting a non-SSE4 binary?

I have been trying to compile it myself, but I have pretty much no idea what I'm doing, I just wanted to try this really badly ^^

Thank you very much in advance!


/me is off to uninstall MSVC++ Express Edition...
Go to the top of the page
+Quote Post
GeorgeFP
post Nov 10 2009, 07:08
Post #52





Group: Members
Posts: 81
Joined: 2-August 09
Member No.: 71959



QUOTE (smeargol @ Nov 10 2009, 00:34) *
So, is there any possibility of getting a non-SSE4 binary?

I have been trying to compile it myself, but I have pretty much no idea what I'm doing, I just wanted to try this really badly ^^

I must admit that building the binaries from version 17 is a bit difficult since some 3rd party files are missing. I will add them in the next release.

I will also add a text file with step-by-step instructions for non-programmers that will help to build the project - starting with the MSVC++ download smile.gif
Go to the top of the page
+Quote Post
smeargol
post Nov 10 2009, 14:01
Post #53





Group: Members
Posts: 4
Joined: 3-May 08
Member No.: 53249



QUOTE (GeorgeFP @ Nov 10 2009, 08:08) *
I must admit that building the binaries from version 17 is a bit difficult since some 3rd party files are missing. I will add them in the next release.

I will also add a text file with step-by-step instructions for non-programmers that will help to build the project - starting with the MSVC++ download smile.gif


Thank you very much for the quick reply!

It is very nice of you to include instructions on how to compile, I just hope the next release is soon, I can't wait to try it out laugh.gif


So, thanks again, looking forward to the next release cool.gif
Go to the top of the page
+Quote Post
GeorgeFP
post Nov 18 2009, 18:01
Post #54





Group: Members
Posts: 81
Joined: 2-August 09
Member No.: 71959



QUOTE (smeargol @ Nov 10 2009, 14:01) *
It is very nice of you to include instructions on how to compile, I just hope the next release is soon, I can't wait to try it out laugh.gif

Bad news: The Visual C++ 2008 Express Edition does not accept the solution file that was created by the Professional Edition sad.gif

But it's possible to download a trial version of the Professional Edition. I will try it the next days.
Go to the top of the page
+Quote Post
smeargol
post Nov 20 2009, 22:58
Post #55





Group: Members
Posts: 4
Joined: 3-May 08
Member No.: 53249



QUOTE (GeorgeFP @ Nov 18 2009, 19:01) *
Bad news: The Visual C++ 2008 Express Edition does not accept the solution file that was created by the Professional Edition sad.gif

But it's possible to download a trial version of the Professional Edition. I will try it the next days.


Thanks for keeping us updated! Even bad news is news, and that you've already found an alternative is great to hear too!

I hope the trial isn't as restricted as the Express Edition, as in "dear god I hope it will compile on that" wink.gif

Good luck!

This post has been edited by smeargol: Nov 20 2009, 23:00
Go to the top of the page
+Quote Post
jamesbaud
post Dec 3 2009, 08:29
Post #56





Group: Members
Posts: 107
Joined: 15-December 03
Member No.: 10468



QUOTE (GeorgeFP @ Oct 29 2009, 01:53) *
QUOTE (GeorgeFP @ Oct 28 2009, 21:02) *
I asked Roberto from RareWares if he can put the binaries on his site.

Good news. The binaries will be available for download soon.

With the initial version of the FLAC plugin it's possible to batch-convert FLAC files (44.1kHz/2ch/16bit) directly to MP3.

The command-line for FLAC to MP3 VBR is:

FPSTREAM filemask *.flac ( readfile flac*i -f "*fp" + flacdec fdec*i -s flac*i + fpmp3enc menc*i -s fdec*i --vbr-new + fpwritemp3file mp3*i -s menc*i -f "*n.mp3" )

You can also add another MP3 encoding task by extending the command line before the ')':

+ fpmp3enc <an ID1>*i -s fdec*i [MP3 options] + fpwritemp3file <an ID2>*i -s <an ID1>*i -f <file name>

Performance is quite good...


Could you provide a screenshot to configure foobar to use fpMP3Enc?

See my other request also:
http://www.hydrogenaudio.org/forums/index....st&p=671021

Thanks.
Go to the top of the page
+Quote Post
sandhuatha
post Dec 5 2009, 21:59
Post #57





Group: Members
Posts: 1
Joined: 5-December 09
Member No.: 75640



Thanks a lot for this utility. I am very happy to see my Core i7 / 6GB machine used to it's max smile.gif

How do I get this tool to recursively go into folders, find the *.flac files and convert them to mp3 in the same folder?
Go to the top of the page
+Quote Post
GeorgeFP
post Dec 5 2009, 23:51
Post #58





Group: Members
Posts: 81
Joined: 2-August 09
Member No.: 71959



QUOTE (sandhuatha @ Dec 5 2009, 21:59) *
How do I get this tool to recursively go into folders, find the *.flac files and convert them to mp3 in the same folder?

The command-line has to be extended for that. I've added it to my list.
Go to the top of the page
+Quote Post
edwardar
post Dec 30 2009, 17:16
Post #59





Group: Members
Posts: 98
Joined: 8-July 04
Member No.: 15139



Any chance someone could give a foobar2000 command line for this? I can never work out the whole pipeline thing!

I want to go from FLAC to MP3 as fast as possible!

Thanks.
Go to the top of the page
+Quote Post
GeorgeFP
post Dec 31 2009, 10:08
Post #60





Group: Members
Posts: 81
Joined: 2-August 09
Member No.: 71959



QUOTE (edwardar @ Dec 30 2009, 17:16) *
Any chance someone could give a foobar2000 command line for this? I can never work out the whole pipeline thing!

I want to go from FLAC to MP3 as fast as possible!

Thanks.

The tool 'fpFLAC2MP3' is the one you need. AFAIK you cannot use it with foobar2000.
Go to the top of the page
+Quote Post
-sanb-
post Jan 2 2010, 15:06
Post #61





Group: Members
Posts: 10
Joined: 7-February 08
Member No.: 51112



how can i use them with winamp?
Go to the top of the page
+Quote Post
flapane
post Jan 18 2010, 22:00
Post #62





Group: Members
Posts: 26
Joined: 16-December 09
From: Italy
Member No.: 76053



Will you add mp3 transcoding (mp3 to mp3) support?


--------------------
Flavio's page - www.flapane.com
Go to the top of the page
+Quote Post
GeorgeFP
post Jan 18 2010, 22:41
Post #63





Group: Members
Posts: 81
Joined: 2-August 09
Member No.: 71959



QUOTE (flapane @ Jan 18 2010, 22:00) *
Will you add mp3 transcoding (mp3 to mp3) support?

Currently, there are no plans to add new features to MP3.
Go to the top of the page
+Quote Post
LordCorvin
post Jan 23 2010, 20:06
Post #64





Group: Members
Posts: 66
Joined: 30-September 01
Member No.: 94



Sorry if that've been asked already, but is there any objective tests of produced MP3s quality? As I understand - the process is touching a very low levels of encoder. Is it safe to use it for usual purposes and not testing - only?

Thanks.
Go to the top of the page
+Quote Post
GeorgeFP
post Jan 23 2010, 20:46
Post #65





Group: Members
Posts: 81
Joined: 2-August 09
Member No.: 71959



QUOTE (LordCorvin @ Jan 23 2010, 20:06) *
Sorry if that've been asked already, but is there any objective tests of produced MP3s quality? As I understand - the process is touching a very low levels of encoder. Is it safe to use it for usual purposes and not testing - only?

The quality should be exactly the same as LAME since I didn't modify the algorithm. I just split the serial code into asynchronous parts and let them execute in parallel. All encoding features including bit reservoir are still present.
Go to the top of the page
+Quote Post
LordCorvin
post Jan 23 2010, 22:27
Post #66





Group: Members
Posts: 66
Joined: 30-September 01
Member No.: 94



QUOTE (GeorgeFP @ Jan 23 2010, 20:46) *
QUOTE (LordCorvin @ Jan 23 2010, 20:06) *
Sorry if that've been asked already, but is there any objective tests of produced MP3s quality? As I understand - the process is touching a very low levels of encoder. Is it safe to use it for usual purposes and not testing - only?

The quality should be exactly the same as LAME since I didn't modify the algorithm. I just split the serial code into asynchronous parts and let them execute in parallel. All encoding features including bit reservoir are still present.


So, in theory, I shall get bitwise-equal output from your version and the original one? If that's true, it's indeed safe to use it without any quality tests smile.gif
Go to the top of the page
+Quote Post
GeorgeFP
post Jan 23 2010, 23:04
Post #67





Group: Members
Posts: 81
Joined: 2-August 09
Member No.: 71959



QUOTE (LordCorvin @ Jan 23 2010, 22:27) *
So, in theory, I shall get bitwise-equal output from your version and the original one?

Yes, if you compare the floats (with a small error) instead of the bits.
Go to the top of the page
+Quote Post
q_b6
post Jan 24 2010, 02:12
Post #68





Group: Members
Posts: 50
Joined: 4-February 06
Member No.: 27538



QUOTE (GeorgeFP @ Aug 3 2009, 02:18) *
QUOTE (Kitsuned @ Aug 2 2009, 16:49) *
Doesn't foobar2000 already do this if you have more than one core in your computer? I was getting similar numbers on quad core machine when I had to do some coding for my dad. My core duo goes about 43x if its not running warm.

I cannot confirm this on my quad core. Converting the test set with foobar2000 took me about 6 minutes which gave a 47.4x speed. (BTW, the test was encoding to CBR 128.)

QUOTE (Mike Giacomelli @ Aug 2 2009, 18:38) *
Running two encodes in parallel results in essentially perfect parallelization. The only overhead comes from disk contention, which is still a problem for the multithreaded single process case anyway.

This is not a problem in "fpMP3Enc". I/O processing is a separate task and is controlled by a file I/O scheduler that sorts and serializes I/O operations on the same drive. The encoder tasks work only on memory.

That's the reason why foobar2000 has a 47.4x performance while "fpMP3Enc" has 80.2x. I think, on an i7 it's possible to get 150x and above... unfortunately I don't have such a system to test it.

QUOTE
Running one process will encounter additional overhead due to thread synchronization, lack of granularity in parallelism, overhead for inter-thread communication, etc. In order to make up for this, there would have to be additional work saved by running in one process and I don't see what that would be for MP3.

As you mentioned above, concurrent disk access is a problem when you execute multiple encoder processes in parallel. If you run them as tasks in one process you can use a file I/O scheduler that takes care of it, as I did.


I think fb2k's relative poor performance is somehow due to Windows's poor pipe performance.
Try to write a fb2k compatible version and compare it with lame ?
Go to the top of the page
+Quote Post
GeorgeFP
post Jan 24 2010, 19:11
Post #69





Group: Members
Posts: 81
Joined: 2-August 09
Member No.: 71959



QUOTE (q_b6 @ Jan 24 2010, 02:12) *
I think fb2k's relative poor performance is somehow due to Windows's poor pipe performance.

I don't know how foobar2000 handles concurrent file access, but it seems that I've found a better way by using an I/O scheduler.
QUOTE
Try to write a fb2k compatible version and compare it with lame ?

In the test, I compared fpMP3Enc with foobar2000+LAME.
Go to the top of the page
+Quote Post
flapane
post Jun 18 2011, 17:55
Post #70





Group: Members
Posts: 26
Joined: 16-December 09
From: Italy
Member No.: 76053



Hi,
could you explain me why it runs single threaded on a single encoding (ie. one files only)?
Is it related to how LAME works?


--------------------
Flavio's page - www.flapane.com
Go to the top of the page
+Quote Post
GeorgeFP
post Jun 18 2011, 20:14
Post #71





Group: Members
Posts: 81
Joined: 2-August 09
Member No.: 71959



By design, the encoder will run with at least three threads (1 CPU, 2 I/O). If you don't set the number of CPU threads in the command-line, the number of threads will be <number of processors> + 2.

If the encoding speed feels like being single-threaded, then either you're using CBR or ABR, or the number of threads is too high. Currently, using more than three CPU threads would slow down the encoding.
Go to the top of the page
+Quote Post
JJZolx
post May 21 2012, 02:10
Post #72





Group: Members
Posts: 378
Joined: 26-November 04
Member No.: 18345



Any thoughts to updating this to make it based on LAME 3.99.5?
Go to the top of the page
+Quote Post
GeorgeFP
post May 21 2012, 19:17
Post #73





Group: Members
Posts: 81
Joined: 2-August 09
Member No.: 71959



QUOTE (JJZolx @ May 21 2012, 03:10) *
Any thoughts to updating this to make it based on LAME 3.99.5?

Ha, coincidentally two days ago I've started porting LAME 3.99.5 to C++ using my new multicore framework. It will take some time...
Go to the top of the page
+Quote Post
lar1r
post Aug 10 2012, 21:48
Post #74





Group: Members
Posts: 2
Joined: 10-August 12
Member No.: 102201



QUOTE (GeorgeFP @ May 21 2012, 19:17) *
QUOTE (JJZolx @ May 21 2012, 03:10) *
Any thoughts to updating this to make it based on LAME 3.99.5?

Ha, coincidentally two days ago I've started porting LAME 3.99.5 to C++ using my new multicore framework. It will take some time...


Interesting. Will it be able to compile using the latest VS2012?
Really looking forward to this.
Any idea how it does on newer cpus (Like my FX CPU)

Thx
Go to the top of the page
+Quote Post
GeorgeFP
post Aug 11 2012, 11:33
Post #75





Group: Members
Posts: 81
Joined: 2-August 09
Member No.: 71959



QUOTE (lar1r @ Aug 10 2012, 22:48) *
Interesting. Will it be able to compile using the latest VS2012?
Really looking forward to this.
Any idea how it does on newer cpus (Like my FX CPU)


Currently, I'm working with VS2010 but I will switch to VS2012 when it's available.

At the moment I cannot say anything about the performance but the plan is to get a 4x speedup on an Intel 2600K.
Go to the top of the page
+Quote Post

4 Pages V  < 1 2 3 4 >
Reply to this 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: 21st April 2014 - 09:37