Audio conversion for device support
Audio conversion within Songbird had been mentioned quite a few times, but I have not been able to find any suggestions about conversion to formats supported by a particular device just for syncing.
I would greatly enjoy the ability to keep the portions of my library which are stored in non iPod-compatible formats (specifically FLAC) in their respective formats, but still be granted the luxury of easy syncing with my iPod.
A solution to this problem would be for Songbird to automatically create iPod-compatible versions of songs for syncing, which would be deleted after syncing completes. iPod-compatible copies shouldn't need to be saved for any sort of speed advantage as Songbird should only need to replace the files on the iPod if they are changed on the hard drive (which means extra storage space isn't an issue).
I would greatly enjoy the ability to keep the portions of my library which are stored in non iPod-compatible formats (specifically FLAC) in their respective formats, but still be granted the luxury of easy syncing with my iPod.
A solution to this problem would be for Songbird to automatically create iPod-compatible versions of songs for syncing, which would be deleted after syncing completes. iPod-compatible copies shouldn't need to be saved for any sort of speed advantage as Songbird should only need to replace the files on the iPod if they are changed on the hard drive (which means extra storage space isn't an issue).
26
people like this idea
I like this idea!
Tell me when this idea gets some attention.
The more people who like this idea, the more it gets noticed.
The more people who like this idea, the more it gets noticed.
-
Inappropriate?Hi there,
when integrating a feature like that, pplease keep in mind all those MTP Device users (I use e.g. SD Cards and put them into my VW RNS510).
So there should be the possibility to define which formats are supported by the target device.
kind regards,
Stefan
1 person thinks
this is one of the best points
-
That makes sense. I can imagine how a nice user interface for this feature would work.
I wonder if I could write a plug-in to do this. I haven't ever tried writing one, but I can definitely check out the API and see if it would be possible. -
Inappropriate?Great idea! I am also able to do some development, too. I only need a basis and some short instruction how to help you with this project.
I've learned C++, Java and SQL but I'm doing developments within the last 6 years only in C/Side (a native language for an ERP-System called "Navision").
But I guess I can learn another language by doing, too. :-) So just feel free to get in touch with me, if you're starting a project lie that.
kind regards from Nuremberg in Germany,
Stefan
I’m excited
-
I would love your help if it ends up looking possible to implement using an add-on.
My three main programming languages are Python, PHP, and Javascript (all of which are fairly high-level).
I plan to learn C and Assembly in the near future, the first of which will be the more practical in this context, but I'm in school and may not have large amounts of free time available for coding. Also, sorry for the delayed response. -
Inappropriate?No problem at all - so I am looking forward to get in touch with you, in order to help you with any implementation work.
-
Inappropriate?Exactly what I am looking for!
I prefer to keep my library in Flac as it is lossless and open source. That gives me peace of mind for the future. I really do not want to rip my CD collection over again. Waaay too much work!
Yes, this need to uniquely identify each portable device, like WinAmp is doing. And each device needs to have their own setting with supported and preferred formats - even if my device supports MP3, WMA and a few others, I may say I prefer to only use MP3. BUT - if any song already exists as WMA, it should not be converted.
Playlists for the device should be available even when the device is offline. The content on the device should be flagged offline, but it should be possible to add and delete to it. Additions should be displayed immediately while deletions should be flagged as "Marked for deletion on next sync"
About conversion - at the moment I am using a program called Xrecode - http://www.xrecode.com/ . It is the best solution I have found. No jumping through hoops to get the format I want. It can also utilize muliple processors or cores. ou might want to get in touch with the author to see if he is interested in doing something here.
I’m very hopeful!
1 person thinks
this is one of the best points
-
Inappropriate?Okay, I have looked through the Songbird API documentation a bit, and it looks like a plugin might be possible.
Here are some classes and functions which look important below:
- sbIDeviceCapabilities::getSupportedFormats
- sbIDeviceLibraryListener
- sbIDeviceLibrary
- sbILibraryImporter
- sbIDirectoryImportService
And here is how I see the plugin working:
Media import:
(When something is being added to the library by user)
> Check file against stored conversion tables
>> If the files should be converted, convert them using some external program (or the gstreamer core?), save the transcoded copies to our plugin's directory (or whatever the user specifies), and add the files to a separate songbird library (not the main one).
Syncing:
> Wait until a device is connected
> Have we seen this device before?
>> If no, See what formats are supported on device, and ask user what to do.
> Import stored library of converted files into main library
> Add converted files to device's media list
> Wait until sync is completed
> After a sync is completed, remove converted files from main library (don't delete separate stored library)
This is a fairly storage-intensive implementation, not like the one I described in my original post. I'm not sure why I ended up writing out the outline this way.
I’m excited
-
Inappropriate?Meyer, stca, so did you folks ever get around to doing any development on this?
I’m hopeful...
-
Inappropriate?no, I'm still waiting for any action by meyer, because I'm not familiar with songbird adin development but sw development in general i.e. based on C/Side, Java, ...
Loading Profile...





