Source i (link to git-repo or to original if based on someone elses unmodified work):

Add the source-code for this project on opencode.net

4
Become a Fan
6.1

Available as/for:
Description:
Konvertible is a program to convert audio files to other audio formats via ffmpeg. Konvertible simplifies file conversion for ffmpeg users. You can add more than one audio file and then click the convert button to transcode them one after the other.

In version 1.0 the metadata tags of source files are exported to output files if built with TagLib. You can also edit them by right-clicking and choosing Edit Track Details.

Requirement
-----------
TagLib should be installed if you want to export tags.
Last changelog:

v 1.0.1 -- 5 June 2010
----------------------
* Fix to avoid compile errors if TagLib is not installed

v 1.0 -- 3 June 2010
--------------------
* Tags are now imported to ouput file and are editable

v 0.1.4 -- 6 Jan 2010
---------------------
*Now has a nice progress dialog
*AMR codec double point bitrates can be entered
*User interface enhanced
*Bugfixes

v 0.1.3 -- 22 Dec 2009
--------------------------
*Can determine audio encoders for newer ffmpeg versions which use -codecs switch(thanks to R. Benito)
*Added What's This?


Ratings & Comments

33 Comments

ArTourter

Hi, would it be possible to select the name format of the output file from the tags of the file: <root destination>/$author/$year-$ablum/$track-%title.$ext for example, adding options to strip non vfat compliant character and replacing <space> with some other character such as _? That would be a very useful feature! Thanks for the apps, I will start making a slackware slackbuild for it and put it on slackbuilds.org Cheers

msnkambule

Hello, Thank you for feedback. I will consider your suggestion.

bigbrovar

This is an awesome application and something I have been looking for in very long time. I use to use soundconverter which is also decent but its gnome/gtk. One thing I would love to add is a way to make the menus options (the options for choosing the different codec format a bit more user friendly. Like mp3, OGG, WMA etc. Thanks for the great job and keep it up :)

bigbrovar

while trying to compile I got this error running make /konvertible-1.0/window.cpp:714: error: ‘OUTFILE’ was not declared in this scope /konvertible-1.0/window.cpp:715: error: ‘SOURCEFILE’ was not declared in this scope /konvertible-1.0/window.cpp: In member function ‘void CWindow::clearStatusIcons()’: /konvertible-1.0/window.cpp:854: error: ‘STATUS’ was not declared in this scope make[2]: *** [CMakeFiles/konvertible.dir/window.o] Error 1 make[1]: *** [CMakeFiles/konvertible.dir/all] Error 2

msnkambule

Sorry for that. The error occures if TagLib is not detected. I've uploaded an update that compiles even if there is no TagLib, but tags exporting and editing are then disabled.

jajaX

Hi Nice ! I must try that !!

rbenito

I just tried the new konvertible 1.0, and it works fine, including the imported tags. You might want to add to the INSTALL file that the TagLib development files are needed, though. Without them, any use of the Column enum gave me compiler errors about it being out of scope (probably because it's defined inside the #IFDEF, so another option might be to define it somewhere else, not sure since C/C++ isn't exactly my thing).

msnkambule

Thanks. I removed the enum and placed it outside the #ifdef.

gerstavros

nice app, but can you fix it, so that the new files have the id3 tags of old files?

msnkambule

Hello. Thank you for feedback. I have made some changes that I will upload later that take care of this problem.

joethefox

thank you

dglent

it is ok for mandriva too http://www.mandrivalinux.gr/rpm/2010.0/i586/konvertible-0.1.4-1mgr2010.0.i586.rpm

ssuominen

Thanks for 0.1.2, this is now media-sound/konvertible in Gentoo's Portage. Compiles, installs, works. Only thing I'm missing is a application icon for the desktop entry. ;-)

Leiche

Thanks for 0.1.4. ;) I pack it for PCLinuxOS, and it works for me :) I like it +1

bugmenot1234

0.1.1 compiled just fine... But it segfaults on startup. Here is the backtrace in case it helps: Application: The Konvertible (konvertible), signal: Segmentation fault The current source language is "auto; currently c". [KCrash Handler] #5 QBasicAtomicInt::ref (this=0x7fff0ff7e860) at /usr/include/qt4/QtCore/qatomic_x86_64.h:121 #6 QString (this=0x7fff0ff7e860) at /usr/include/qt4/QtCore/qstring.h:712 #7 CWindow::changeExtension (this=0x7fff0ff7e860) at /home/user/Source/konvertible-0.1.1/window.cpp:232 #8 0x000000000040b602 in CWindow (this=0x7fff0ff7e860, parent=<value optimized out>, f=<value optimized out>) at /home/user/Source/konvertible-0.1.1/window.cpp:172 #9 0x00000000004066ea in main (argc=1, argv=0x7fff0ff7eb98) at /home/user/Source/konvertible-0.1.1/main.cpp:50 /home/user/Source/konvertible-0.1.1 is, of course, the path where I uncompressed the source of konvertible. Any idea as to what might be going on here?

msnkambule

Hi. I was going to ask you if you have ffmpeg installed, but from where the program crashes it tells me you have it. Before I change something in the code, can you please post me the first 4 or five lines of the output of: ffmpeg -formats |grep "EA" |less There is something I think I might have overlooked.

bugmenot1234

Sure I can. The whole output of ffmpeg -formats | grep "EA" is as follows: FFmpeg version SVN-r20654, Copyright (c) 2000-2009 Fabrice Bellard, et al. built on Nov 29 2009 08:11:53 with gcc 4.3.4 configuration: --prefix=/usr --extra-cflags='-Wall -g ' --cc='ccache cc' --enable-shared --enable-libmp3lame --enable-gpl --enable-libfaad --enable-libvorbis --enable-pthreads --enable-libfaac --enable-libxvid --enable-postproc --enable-x11grab --enable-libgsm --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libx264 --enable-libtheora --enable-libdc1394 --enable-libspeex --enable-nonfree --disable-stripping --enable-avfilter --enable-libdirac --disable-decoder=libdirac --enable-libschroedinger --disable-encoder=libschroedinger --enable-avfilter-lavf --enable-libopenjpeg --enable-version3 --disable-altivec --disable-armv5te --disable-armv6 --disable-vis libavutil 50. 5. 1 / 50. 5. 1 libavcodec 52.42. 0 / 52.42. 0 libavformat 52.39. 2 / 52.39. 2 libavdevice 52. 2. 0 / 52. 2. 0 libavfilter 1.11. 0 / 1.11. 0 libswscale 0. 7. 2 / 0. 7. 2 libpostproc 51. 2. 0 / 51. 2. 0

bugmenot1234

Sure I can. The whole output of ffmpeg -formats | grep "EA" is as follows: FFmpeg version SVN-r20654, Copyright (c) 2000-2009 Fabrice Bellard, et al. built on Nov 29 2009 08:11:53 with gcc 4.3.4 configuration: --prefix=/usr --extra-cflags='-Wall -g ' --cc='ccache cc' --enable-shared --enable-libmp3lame --enable-gpl --enable-libfaad --enable-libvorbis --enable-pthreads --enable-libfaac --enable-libxvid --enable-postproc --enable-x11grab --enable-libgsm --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libx264 --enable-libtheora --enable-libdc1394 --enable-libspeex --enable-nonfree --disable-stripping --enable-avfilter --enable-libdirac --disable-decoder=libdirac --enable-libschroedinger --disable-encoder=libschroedinger --enable-avfilter-lavf --enable-libopenjpeg --enable-version3 --disable-altivec --disable-armv5te --disable-armv6 --disable-vis libavutil 50. 5. 1 / 50. 5. 1 libavcodec 52.42. 0 / 52.42. 0 libavformat 52.39. 2 / 52.39. 2 libavdevice 52. 2. 0 / 52. 2. 0 libavfilter 1.11. 0 / 1.11. 0 libswscale 0. 7. 2 / 0. 7. 2 libpostproc 51. 2. 0 / 51. 2. 0

msnkambule

I think the program crashes when its codecs list is empty which means that it can't determine audio formats ffmpeg encodes. I have fixed that in the code so that it gives error message instead of crashing and you can try the update. ffmpeg -formats | grep "EA" gives a list of those and konvertible runs that to get the list. I'm not sure why in your case it segfaults since there are always audio formats ffmpeg encodes.

bugmenot1234

I have good news and I have bad news. The good news is that the new error message works, so the app doesn't segfault anymore. The bad news is that the new error message works, so the app apparently is not seeing my ffmpeg installation (or maybe it does but still refuses to work for whatever reason).

bugmenot1234

And I know where exactly it's failing. When I run ffmpeg -formats, none of the lines that you use to populate the codec list contain "EA", they all contain either "E" or "DE". So where you have "if (codecls[0].contains("EA"))", I changed it to "if (codecls[0].contains("E"))", and it no longer gives the error message. I don't know if that's a fix or a workaround, or if it should be "E", "DE" or "EA", or if it really works (haven't tested it with my changes except to see if the error message still appeared). What I do know is that the loop in which you populate the codec list needs some work, 'cause I don't think I should be seeing values like "muxing supported (=)" in the combobox.

bugmenot1234

I finally got to test it (with the aforementioned change so the list of codecs actually contains something). It does not work. I tried to convert a flac file to mp3, and it says: Unknown encoder 'mp3' And that's strange, because according to the output ffmpeg -formats, my installation of ffmpeg is able to both decode and encode mp3 (it is listed as "DE", which apparently means "Decoding and Encoding supported"). I'll take another look at the code, just in case the issue is in konvertible and not in ffmpeg, and post the results of my research if I find anything relevant.

bugmenot1234

Target located! I think you want to check ffmpeg -codecs, not ffmpeg -formats. At least that worked for me. So apparently, the fix is to leave the original "EA" as it is, and change "ffmpeg.start("ffmpeg", QStringList() << "-formats")" to "ffmpeg.start("ffmpeg", QStringList() << "-codecs")".

msnkambule

Thanks for taking your time to fix the program. I'm not sure about the -codecs as the documentation of my installed ffmpeg does not contain it, and when I try it on the command line I get an error. Concerning -formats, the documentation states that it will "show available formats, codecs, bitstream filters, protocols, and frame size and frame rate abbreviations." That is why I used it.

bugmenot1234

You're welcome. It's good to play with someone else's code just for fun once in a while, as opposed to reading and fixing code (mine and/or my lab group's members') as part of my homework... ;) As for the -codecs switch, it could be an option specific of my version of ffmpeg (0.5+svn20091129 installed from the debian-multimedia.org unofficial repos for Debian Testing, so the maintainers of the repos may or may not have modified the program)... So a better fix would be to support both possibilities. That can be accomplished in at least two ways: Use ffmpeg -formats and if the size of the list is zero, repopulate it, this time using ffmpeg -codecs. But that could require an additional loop in the case where ffmpeg -formats is not the right option to use, so it's less than optimal... Another option is, if the Qt Process class supports it, to check if ffmpeg -codecs returns an error, or an exit code different from zero (as I assume it would if you use a version of ffmpeg that does not understand the -codecs option) and use -formats if it does, -codecs if it doesn't. That would not require an extra loop doing the same thing, just an if/else.

Pling
0 Affiliates
Details
license
version 1.0.1
updated
added
downloads 24h 0
mediaviews 24h 0
pageviews 24h 0

Other Audio Extractors/Converters:

M4Baker
crabman1
last update date: 14 years ago

Score 5.7

Konvert2Ogg
ascending
last update date: 17 years ago

Score 5.0

K-Yamo
cycomyco
last update date: 10 years ago

Score 5.0

Perl Audio Converter
viron
last update date: 11 years ago

Score 6.6

soundKonverter
HessiJames
last update date: 7 years ago

Score 8.6

Sound Converter
kassoulet
last update date: 15 years ago

Score 5.8