Sign in to follow this  
Followers 0
The Kandie Man

MP3 to Ogg -->A GUI Audio Converter

18 posts in this topic

#1 ·  Posted (edited)

I like ogg vorbis. It is patent free and better than mp3 or wma. The downside to ogg vorbis is that very few programs support ogg vorbis and i couldn't find any open source GUI mp3 to ogg converters. So i decided to make one.

I spent a great deal of time looking all over the internet for the most optimized encoders and decoders i could find. I tested them against each other and found the ones with the best time. I then wrote a front-end for them in AutoIt.

You can download a the setup for MP3 to Ogg here:

http://www.thekandieman.com/applications/m..._Beta-setup.exe (2.6MB)

You can download a self extracting 7z archive here:

http://www.thekandieman.com/applications/m....1-beta-src.exe (2.7MB)

You can download a 7z archive here:

http://www.thekandieman.com/applications/m...3.1-beta-src.7z (2.6MB)

The setup contains the compiled autoit executable and binary audio converters.

The 7z archives contain compiled autoit executable, binary audio converters, Nullsoft setup source, and MP3 to Ogg Source.

You only need to download from one of the links to get the whole program, i just felt like making multiple forms of distribution available.

This is the GUI:

Posted Image

Edited by The Kandie Man

"So man has sown the wind and reaped the world. Perhaps in the next few hours there will no remembrance of the past and no hope for the future that might have been." & _"All the works of man will be consumed in the great fire after which he was created." & _"And if there is a future for man, insensitive as he is, proud and defiant in his pursuit of power, let him resolve to live it lovingly, for he knows well how to do so." & _"Then he may say once more, 'Truly the light is sweet, and what a pleasant thing it is for the eyes to see the sun.'" - The Day the Earth Caught Fire

Share this post


Link to post
Share on other sites



Nice one!! This will come really handy! :)

One thing though.. when your GUI fades in, it fades WAY tooo slow.

Share this post


Link to post
Share on other sites

How long does it take to fade, it takes about 1.5 seconds to fade in and even less to fade out for me? Does it take longer than that for you? If it does then i will shorten the fade-in and fade-out time on my next release.


"So man has sown the wind and reaped the world. Perhaps in the next few hours there will no remembrance of the past and no hope for the future that might have been." & _"All the works of man will be consumed in the great fire after which he was created." & _"And if there is a future for man, insensitive as he is, proud and defiant in his pursuit of power, let him resolve to live it lovingly, for he knows well how to do so." & _"Then he may say once more, 'Truly the light is sweet, and what a pleasant thing it is for the eyes to see the sun.'" - The Day the Earth Caught Fire

Share this post


Link to post
Share on other sites

ah yeah. The first time I ran it, it took a while... now when I run it, its about 1-2 seconds.

sry lol.

Share this post


Link to post
Share on other sites

Yeah, the first time it runs it will take a while because it is detecting your CPU instruction sets. Basically, it is determining what encoders will work best on your system. The encoders have MMX, SSE, SSE2, SSE2MT, SSE3, and SSE3MT intruction sets. It will automatically find the highest instruction set your computer has and then use the appropriate encoder.


"So man has sown the wind and reaped the world. Perhaps in the next few hours there will no remembrance of the past and no hope for the future that might have been." & _"All the works of man will be consumed in the great fire after which he was created." & _"And if there is a future for man, insensitive as he is, proud and defiant in his pursuit of power, let him resolve to live it lovingly, for he knows well how to do so." & _"Then he may say once more, 'Truly the light is sweet, and what a pleasant thing it is for the eyes to see the sun.'" - The Day the Earth Caught Fire

Share this post


Link to post
Share on other sites

Do you know and if you know how to convert wma to mp3 with lame.exe then could you post this Run()command what does that? Plzzzz... I am really stuck behind this. If i could convert wma to mp3 then I could finish my program...

Thanks!

Share this post


Link to post
Share on other sites

http://www.goldwave.com/

Use Goldwave. Simply open the wma file with goldwave and then do Save As and save it as an mp3 file of your choice.


"So man has sown the wind and reaped the world. Perhaps in the next few hours there will no remembrance of the past and no hope for the future that might have been." & _"All the works of man will be consumed in the great fire after which he was created." & _"And if there is a future for man, insensitive as he is, proud and defiant in his pursuit of power, let him resolve to live it lovingly, for he knows well how to do so." & _"Then he may say once more, 'Truly the light is sweet, and what a pleasant thing it is for the eyes to see the sun.'" - The Day the Earth Caught Fire

Share this post


Link to post
Share on other sites

I wanna use lame.exe to convert wma to mp3, not another program.

Share this post


Link to post
Share on other sites

You can't. Lame doesn't have a windows media audio decoder built into it. You will have to use some other program to convert it, yes, it is irritating, you can blame microsoft for that.


"So man has sown the wind and reaped the world. Perhaps in the next few hours there will no remembrance of the past and no hope for the future that might have been." & _"All the works of man will be consumed in the great fire after which he was created." & _"And if there is a future for man, insensitive as he is, proud and defiant in his pursuit of power, let him resolve to live it lovingly, for he knows well how to do so." & _"Then he may say once more, 'Truly the light is sweet, and what a pleasant thing it is for the eyes to see the sun.'" - The Day the Earth Caught Fire

Share this post


Link to post
Share on other sites

Nice.... i will remember this when i need something like this again...

8)


NEWHeader1.png

Share this post


Link to post
Share on other sites

I'm testing it, very good :-)

BTW, have you abandoned that project? http://www.autoitscript.com/forum/index.ph...c=26868&hl=

Thanks, i tried. :)

I am very glad to see you have done your fair share of searching(yay,someone that knows what they are talking about! :D ). The project that you mention i did, in a way, abandon, however, i really didn't stop, i simply switched over and wrote MP3 to OGG instead. If you would like to help me with that previous project i would be willing to take it back up. The only problem with it was that i was not too familiar with the dll call function yet. In addition, you have to make buffers, put stuff in arrays in autoit, and create pointers to the buffer arrays. It just turned out to be a pain in the ass. I will take a look at it since you mentioned it. :P


"So man has sown the wind and reaped the world. Perhaps in the next few hours there will no remembrance of the past and no hope for the future that might have been." & _"All the works of man will be consumed in the great fire after which he was created." & _"And if there is a future for man, insensitive as he is, proud and defiant in his pursuit of power, let him resolve to live it lovingly, for he knows well how to do so." & _"Then he may say once more, 'Truly the light is sweet, and what a pleasant thing it is for the eyes to see the sun.'" - The Day the Earth Caught Fire

Share this post


Link to post
Share on other sites

Thanks, i tried. :)

It fills an hole in freeware scenario, I think you have to promote it out of this community. On the other hand you have to admit that a lossy -> lossy conversion is not a great business... am I wrong?

If you would like to help me with that previous project i would be willing to take it back up. The only problem with it was that i was not too familiar with the dll call function yet.

I'm not so skilled :-( Anyway it seems there are not so many dll call experts here, or maybe they don't share their knowledge.

I will take a look at it since you mentioned it. :P

Nice :D

Share this post


Link to post
Share on other sites

It fills an hole in freeware scenario, I think you have to promote it out of this community. On the other hand you have to admit that a lossy -> lossy conversion is not a great business... am I wrong?

I'm not so skilled :-( Anyway it seems there are not so many dll call experts here, or maybe they don't share their knowledge.

Nice :)

Yes, i felt it was necessary to make this to close the gap on the freeware scenario very much like you say. It is also true that lossy to lossy compression is not good because the resulting file has the combined lossyness of both compression algorithms. This however doesn't mean anything bad other than you shouldn't keep converting from mp3 to ogg to mp3 and back, but if you have the original mp3 or ogg files and wish to convert them into the opposite format, you can do so and the lossyness will be trivial, as long as both of them have decent bit rates.

As you can see, this didn't stop those of the lame encoder from making a GUI frontend for lame that converted Ogg files to MP3. I felt that there should be something like this, but capable of both ways. It just makes sense since both of the projects are open source.

Lame GUI frontend that converts ogg to mp3, but not the other way around:

http://www.rarewares.org/dancer/dancer.php?f=108

Lame v3.97 .exe and .dll:

http://www.rarewares.org/dancer/dancer.php?f=107

As you can see, there is a clear lack of support for Ogg. In addition there is also an Ogg GUI frontend with the exact format, but it can't convert from mp3 to ogg.

I will probably take a look at the project i was working on this weekend because i am very busy this week and will probably have time to do so this weekend.


"So man has sown the wind and reaped the world. Perhaps in the next few hours there will no remembrance of the past and no hope for the future that might have been." & _"All the works of man will be consumed in the great fire after which he was created." & _"And if there is a future for man, insensitive as he is, proud and defiant in his pursuit of power, let him resolve to live it lovingly, for he knows well how to do so." & _"Then he may say once more, 'Truly the light is sweet, and what a pleasant thing it is for the eyes to see the sun.'" - The Day the Earth Caught Fire

Share this post


Link to post
Share on other sites

nice program . i would like to use it as sample to a wma to mp3 converter if you dont mind? maybe we could continue the project together ?

i would also like to add a list view to display what files are in and which are to be converted etc

on the target bitrage settings : please dont use all values 1-320 in 1 step increments, please display only valid bitrate ( 64, 128, 192 ,etc..)

a little bug

line 717

was --abr

must be

$mp3bitrate = "--cbr " & Number($readmp3bitrateinput)

tnx

Share this post


Link to post
Share on other sites

#16 ·  Posted (edited)

nice program . i would like to use it as sample to a wma to mp3 converter if you dont mind? maybe we could continue the project together ?

i would also like to add a list view to display what files are in and which are to be converted etc

on the target bitrage settings : please dont use all values 1-320 in 1 step increments, please display only valid bitrate ( 64, 128, 192 ,etc..)

a little bug

line 717

was --abr

must be

$mp3bitrate = "--cbr " & Number($readmp3bitrateinput)

tnx

On the target bitrate settings, you can only do 1 step increments if you don't have cbr checked off. By default, MP3 to OGG uses abr format when you select the bitrate option. When you select the quality option it uses vbr. If you want a constant bit rate, then you have to check off cbr.

Also, on line 717, that isn't a bug, that is instructing the encoder to use average bit rate encoding:

http://lame.sourceforge.net/abr.php

Average bit rate is similar to vbr, but unlike vbr, it tries to average the bitrate is around the number you specify which does not have to be a multiple of 32. What it does is it encodes the mp3 so that at the end of the encoding process, the average of all the vbr frames should be around whatever the target bit rate is, which does not have to be a multiple of 32.

Also, the reason why i did not integrate wma into it was because wma is owned my M$ and they are constantly changing things with their format, it is proprietary, and i don't believe they have command line encoders and decoders. Lame is an open source encoder and decoder that is free to distribute. Ogg Vorbis is an open source non-proprietary format which is superior to mp3 or wma in my opinion and also free to distribute. I don't believe that you can distribute M$ wma encoders, at least not without licensing. I don't like wma with all their copy protection and all that other garbage that M$ has integrated into it. It used to be decent, but with all the garbage that has been tagged onto it to help the RIAA and destroy user playability, well, it just sucks now.

There is also one other thing i would like to point out. This program uses the most optimized encoders and decoders that i could find on the internet. That means, they were written in assembly to optimize them and they are in some cases, they are 4x as fast as the normal ones written in C or C++. So please take note of that when using this program. This program is, as fast as they get, but still allows the average user to encode things without having to mess with command line switches. I would also like to once again point out that there is a different version of the ogg vorbis encoder for each SSE instruction set that is currently available. The encoder for the most up-to-date instruction set is automatically chosen when you start the program for the first time as it gets your CPU instruction sets using cpuz.

Edited by The Kandie Man

"So man has sown the wind and reaped the world. Perhaps in the next few hours there will no remembrance of the past and no hope for the future that might have been." & _"All the works of man will be consumed in the great fire after which he was created." & _"And if there is a future for man, insensitive as he is, proud and defiant in his pursuit of power, let him resolve to live it lovingly, for he knows well how to do so." & _"Then he may say once more, 'Truly the light is sweet, and what a pleasant thing it is for the eyes to see the sun.'" - The Day the Earth Caught Fire

Share this post


Link to post
Share on other sites

hi

ok your correct on the -abr setting, im sorry i oversaw the option (i never used it :-)

for the speed of the programs i never complained :)

for WMA . i already wrote encoder gui now - i only needed to transcode wma to MP3 (using lame) not other way round, therefore also no need to distribute a wma encoder with it..

i posted my prog in the scripts section a few days ago..

Share this post


Link to post
Share on other sites

thanks man


Random

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!


Register a new account

Sign in

Already have an account? Sign in here.


Sign In Now
Sign in to follow this  
Followers 0