IPB

Welcome Guest ( Log In | Register )

 
Reply to this topicStart new topic
Anyone willing to write an ipod plugin?, Long shot, but it'd be cool
saratoga
post Dec 11 2003, 22:55
Post #1





Group: Members
Posts: 4957
Joined: 2-September 02
Member No.: 3264



Foobar's already got an amazing batch renamer, tagger and transcoder. So it can take files, name and catalogue them on a disk and then spit out a low bitrate Nero AAC file, already replaygained for portable use.

The only thing i could still ask for would be an option for it to upload to my Ipod. I don't even know if its possible, but i thought I'd toss out the idea.
Go to the top of the page
+Quote Post
Leolo
post Jan 13 2004, 02:55
Post #2





Group: Members
Posts: 69
Joined: 18-December 02
Member No.: 4127



Hi,

I agree wholeheartedly with this request. Currently there's no decent freeware utility to transfer mp4 songs to an iPod under Windows.

iTunes is extremely slow in my computer (an old Celeron 633 MHz), and both Ephpod and vPod screw accented Spanish characters in mp4 tags sad.gif

We really need a lightweight tool to send mp4 files to our iPods that has decent unicode support.

Please!
Go to the top of the page
+Quote Post
d00d4h4x
post Jan 21 2004, 03:19
Post #3





Group: Members
Posts: 2
Joined: 20-January 04
Member No.: 11400



I also agree, I can't ever seem to get iTunes to work. Also the "security features" in iTunes are always giving me trouble.

I would try to make something but I cant program c or c++ and I can't seem to work on projects that take more that a few hours. blink.gif


--------------------
If you need a better signature copy this to yours!
Go to the top of the page
+Quote Post
saratoga
post Jan 21 2004, 03:53
Post #4





Group: Members
Posts: 4957
Joined: 2-September 02
Member No.: 3264



Are there specs out there for how the Ipod's database works? I know little c++, but I'd still like to look at it.
Go to the top of the page
+Quote Post
d00d4h4x
post Jan 21 2004, 23:38
Post #5





Group: Members
Posts: 2
Joined: 20-January 04
Member No.: 11400



I did find one site Here that might be helpful. It seems fairly close to the same as my 3rd Gen. 20gig uses.

P.S.
The database file is in '?:\iPod_Control\iTunes\'
The file name is 'iTunesDB'


--------------------
If you need a better signature copy this to yours!
Go to the top of the page
+Quote Post
Otto42
post Jan 25 2004, 06:42
Post #6





Group: Members
Posts: 1075
Joined: 15-October 03
From: Memphis, TN
Member No.: 9323



I've written several programs to parse and write the iPod's database file. I'd be glad to help in any way I could. I've found that finding good documentation for the iTunesDB and PlayCount files are a bit difficult, so I've taken to keeping my own notes and such. Unfortunately, my notes are probably not readable to anybody else. wink.gif

In any case, I know nothing of Foobar's plugin mechanism, but if anyone wants to tackle the project, I know virtually everything there is to know about the iPod's databases. Except for smart playlists. I haven't figured those out totally yet. They're hard little bastards to reverse engineer. tongue.gif


--------------------
http://ottodestruct.com
Go to the top of the page
+Quote Post
Sid59
post Jan 25 2004, 07:08
Post #7





Group: Members
Posts: 41
Joined: 17-January 04
Member No.: 11313



that'd be cool .. the biggest draw of iTunes / iPod sync are the 25 Most played, 25 Recently PLayer, Favorites .. wouldn't the plugin need to incorporate those functions too?

a UI with that would be cool too.
Go to the top of the page
+Quote Post
Xecter
post Jan 25 2004, 18:57
Post #8





Group: Members
Posts: 33
Joined: 9-March 03
Member No.: 5396



Sid59,


I am 100% sure that foobar can easily replicate iTunes smartplaylists. However, foobar needs a media library before anything like that can be done.


Although i love my ipod and foobar, i can't imagine a iPod plugin at the moment due to the lack of a library.


Personally with a library, foobar will be 100x better than any player ever made. Seriously. Winamp with its library, although it works well, it lacks customization. If foobar ever had a library it would be very customizable and very easy to use.

if it ever gets made, an ipod plugin would be great. Since i can create ipod database tags from APEv2 tags instead of using crappy id3v2.

Anyways:

If a ipod plugin where to be made it would be nice to:

Customize the fields it would create in the ipod database;
instead of having the %artist% field used on my pc for the %artist% field on ipod, maybe i want to use %cdartist% or something.

Customize the sort order when browsing on the ipod? Instead of sorting
<artist> <album> <tracknumber>
maybe i want
<artist> <album> <title>



Alot can be done with an ipod plugin, but loads more can be done with a foobar library first.
wink.gif wink.gif
Go to the top of the page
+Quote Post
mj-barton
post Jan 25 2004, 21:55
Post #9





Group: Members
Posts: 152
Joined: 28-December 03
Member No.: 10759



This would be cool. Are they any strides toward this project. Our has it just died.
Go to the top of the page
+Quote Post
saratoga
post Jan 25 2004, 22:28
Post #10





Group: Members
Posts: 4957
Joined: 2-September 02
Member No.: 3264



QUOTE (Sid59 @ Jan 24 2004, 10:08 PM)
that'd be cool .. the biggest draw of iTunes / iPod sync are the 25 Most played,  25 Recently PLayer, Favorites .. wouldn't the plugin need to incorporate those functions too?

a UI with that would be cool too.

I've never used any of that and I'd have no use for it. I'd be happy with a simple way to have the transcoder add AACs foobar made from flacs to my Ipod, or something along those lines. I think this should be the first priority, then later once basic stuff is in place we can worry about advanced features.

Otto42: wow that'd be helpful. Unfortunately my programming so far only encompasses java and straight c, not c++ as foobar uses. Soon I need to learn c++, so eventually i will be able to attempt this if no one steps up first.

Could you post whatever code\notes you're willing to share? I don't mind if its unreadable, I'm a student with nothing but time on my hands smile.gif

This post has been edited by Mike Giacomelli: Jan 25 2004, 22:29
Go to the top of the page
+Quote Post
herr klang
post Jan 26 2004, 09:58
Post #11





Group: Members
Posts: 43
Joined: 26-May 03
From: Seattle, WA
Member No.: 6825



otto42: i'm pretty sure there's a large demand out there to figure out how exactly that little file works, not only for synchronisation with other software, but also so one can transfer files _off_ of the ipod easily smile.gif

if you'd share what you know, i'm sure a lot of good things could happen.
Go to the top of the page
+Quote Post
zanson
post Jan 26 2004, 14:21
Post #12





Group: Members
Posts: 126
Joined: 17-April 03
Member No.: 6027



QUOTE (Mike Giacomelli @ Jan 25 2004, 05:28 PM)
Unfortunately my programming so far only encompasses java and straight c, not c++ as foobar uses.  Soon  I need to learn c++, so eventually i will be able to attempt this if no one steps up first.

Side note: If you know C and Java, picking up C++ should be pretty easy, as all the OO stuff, which you should be familiar with from java is the main problem people have in switching from non-OO C to OO C++...
Go to the top of the page
+Quote Post
Otto42
post Jan 26 2004, 20:08
Post #13





Group: Members
Posts: 1075
Joined: 15-October 03
From: Memphis, TN
Member No.: 9323



QUOTE (herr klang @ Jan 26 2004, 12:58 AM)
otto42: i'm pretty sure there's a large demand out there to figure out how exactly that little file works, not only for synchronisation with other software, but also so one can transfer files _off_ of the ipod easily smile.gif

if you'd share what you know, i'm sure a lot of good things could happen.

Transfer off the iPod easily? No problem. I wrote this little tool a while back for people on the Apple forums. smile.gif

iPodCopy
(If the link doesn't work, my DSL is probably down. Try again later.)

Anyway, all it does is parse the iTunesDB file enough to get some useful info and then let you copy the files off the iPod using your own format.

I can share what I know, no problem. Let me clean up my notes and post 'em somewhere. I'll get back to you.

Also, the most useful guide I've found to figuring out the iPod's databases and such has been the source code for gtkpod. Reading the code is like pulling teeth, and there's no documentation to speak of, but it does cover almost everything, if you are patient enough to look through it.


--------------------
http://ottodestruct.com
Go to the top of the page
+Quote Post
saratoga
post Jan 27 2004, 03:27
Post #14





Group: Members
Posts: 4957
Joined: 2-September 02
Member No.: 3264



QUOTE
i'm pretty sure there's a large demand out there to figure out how exactly that little file works, not only for synchronisation with other software, but also so one can transfer files _off_ of the ipod easily


Ever heard of a program called foobar wink.gif Should just be able to load the ipod's music into a playlist, and use the renamer to get the orginal files back.

QUOTE
If you know C and Java, picking up C++ should be pretty easy, as all the OO stuff, which you should be familiar with from java is the main problem people have in switching from non-OO C to OO C++...


I hope so. I'm doing c++, small talk and c# next semester so I hope c++ comes easy.

QUOTE
I can share what I know, no problem. Let me clean up my notes and post 'em somewhere. I'll get back to you.


Thanks!
Go to the top of the page
+Quote Post
Otto42
post Jan 28 2004, 00:18
Post #15





Group: Members
Posts: 1075
Joined: 15-October 03
From: Memphis, TN
Member No.: 9323



Okay, here's some info to help people get started on figuring out the iTunesDB and PlayCounts files. Most of it I just copied from my notes. Note that my notes started from other notes I found on the web, I just added and refined them as I figured out new bits and such. Anyway, that's why a lot of them will look similar. It's because they are similar. smile.gif

I tried to add some explanation at the top, but I'm not good at writing. About midway I gave up and just added the rest of the notes in. wink.gif

So here you go. Linky


--------------------
http://ottodestruct.com
Go to the top of the page
+Quote Post
Scream
post Jan 28 2004, 01:42
Post #16





Group: Banned
Posts: 11
Joined: 15-January 04
Member No.: 11264



Check Here if you are wanted to develop one, its the source code to a ipod plugin for winamp5... shouldnt be too difficult for someone to port
Go to the top of the page
+Quote Post
Otto42
post Jan 28 2004, 20:00
Post #17





Group: Members
Posts: 1075
Joined: 15-October 03
From: Memphis, TN
Member No.: 9323



QUOTE (Xecter @ Jan 25 2004, 09:57 AM)
I am 100% sure that foobar can easily replicate iTunes smartplaylists. However, foobar needs a media library before anything like that can be done.

Although i love my ipod and foobar, i can't imagine a iPod plugin at the moment due to the lack of a library.

How about the album list? That's kind of a library, isn't it? If you have all your tracks loaded into there, then they're at least accessible by foobar plugins, I would think. Enough for you to transfer to the iPod, anyway.

As I understand it, loading stuff into foobar will add the files to the database if the database is enabled and the directory is in the restrict directories list. So why not simply make an iPod plugin transfer the contents of the database to the iPod? It should work.

This post has been edited by Otto42: Jan 28 2004, 20:10


--------------------
http://ottodestruct.com
Go to the top of the page
+Quote Post
Xecter
post Jan 28 2004, 20:27
Post #18





Group: Members
Posts: 33
Joined: 9-March 03
Member No.: 5396



Album list is a very limited version of what i have in mind. See a library would also organize everything in artists and albums, but would also keep track of year, date added/modified, play count, my rating, grouping, etc etc.

Basically every field possible.

iTunes creates a database with all your play metainfomation. With smartplaylists i can create a playlist by just adding rules. IE:

Playlist:
MyRating <=2
Playcount <=10
Genre = Trance

This would create a playlist with songs that only meet these conditions.
Also, smart playlists are 100% dynamic, both in the library and the iPod. Personally, the only reason i use iTunes is because of smartplaylists. If i didnt like smartplaylists, i would just use Ephpod.

Even if Foobar had a really kick ass library and smartlist abilities it would be 100x better than software audio player ever MADE. Let alone being able to do it on the iPod!
Go to the top of the page
+Quote Post
Otto42
post Jan 28 2004, 22:14
Post #19





Group: Members
Posts: 1075
Joined: 15-October 03
From: Memphis, TN
Member No.: 9323



QUOTE (Xecter @ Jan 28 2004, 11:27 AM)
Album list is a very limited version of what i have in mind. See a library would also organize everything in artists and albums, but would also keep track of year, date added/modified, play count, my rating, grouping, etc etc.

Yes, but, all that *is* in Foobar's database, which the album list actually uses. What you actually display in the "album list" is totally configurable, but you can display any of that information that you like.

Quick example.. Add " | [%date%]" to the end of the "tree hierarchy" in the Album list settings. Now the year appears as a subitem of every song. The info is there and available, just not normally displayed.

QUOTE (Xecter @ Jan 28 2004, 11:27 AM)
iTunes creates a database with all your play metainfomation. With smartplaylists i can create a playlist by just adding rules. IE:

Playlist:
MyRating <=2
Playcount <=10
Genre = Trance

This would create a playlist with songs that only meet these conditions.
Also, smart playlists are 100% dynamic, both in the library and the iPod. Personally, the only reason i use iTunes is because of smartplaylists. If i didnt like smartplaylists, i would just use Ephpod.

The smartlist thing could be added on to Foobar's playlist functionality, I feel. All the data in the database is there to let it do it, more or less. Making smartlists transfer to the iPod is harder though because of the special smartlist MHOD types in the iTunesDB.

This post has been edited by Otto42: Jan 28 2004, 22:22


--------------------
http://ottodestruct.com
Go to the top of the page
+Quote Post
Sid59
post Jan 28 2004, 23:16
Post #20





Group: Members
Posts: 41
Joined: 17-January 04
Member No.: 11313



i think the ipod plugin would need a seperate database from albumlist. i only want certain albums / songs on my ipod. so, if it can have its own database and upload and update its self.

i can only imagine the use of this with the foo_tunes UI. That would be awesome.
Go to the top of the page
+Quote Post
saratoga
post Jan 29 2004, 00:13
Post #21





Group: Members
Posts: 4957
Joined: 2-September 02
Member No.: 3264



QUOTE (Xecter @ Jan 28 2004, 11:27 AM)
Album list is a very limited version of what i have in mind. See a library would also organize everything in artists and albums, but would also keep track of year, date added/modified, play count, my rating, grouping, etc etc.

Basically every field possible.

iTunes creates a database with all your play metainfomation. With smartplaylists i can create a playlist by just adding rules. IE:

Playlist:
MyRating <=2
Playcount <=10
Genre = Trance

This would create a playlist with songs that only meet these conditions.
Also, smart playlists are 100% dynamic, both in the library and the iPod. Personally, the only reason i use iTunes is because of smartplaylists. If i didnt like smartplaylists, i would just use Ephpod.

Even if Foobar had a really kick ass library and smartlist abilities it would be 100x better than software audio player ever MADE. Let alone being able to do it on the iPod!

I don't see anything there that couldn't be done with the existing database. All the metadata is there, you'd just need to sort it into playlists, and perhaps add something to count the times each item is played (not sure if thats already done).

QUOTE
i think the ipod plugin would need a seperate database from albumlist. i only want certain albums / songs on my ipod. so, if it can have its own database and upload and update its self.


You don't need a seperate database I think, just a seperate playlist. Basically create a playlist that represents all items on the Ipod. Keeping it syched with the Ipod would be interesting though if you're going to use iTunes as well (sinced iTunes might change a file so that foobar's playlist was out of data, I guess you'd need to parse the Ipod's database everytime you load the Ipod to make sure its up to data, hopefully parseing it would be quick enough that no one would notice the delay).

This sucks, I've got Java, digital logic and some circuit design classes all this semester, so no time to teach myself c++ and work on these ideas sad.gif
Go to the top of the page
+Quote Post
Xecter
post Jan 29 2004, 00:44
Post #22





Group: Members
Posts: 33
Joined: 9-March 03
Member No.: 5396



QUOTE (Mike Giacomelli @ Jan 28 2004, 03:13 PM)
I don't see anything there that couldn't be done with the existing database. All the metadata is there, you'd just need to sort it into playlists, and perhaps add something to count the times each item is played (not sure if thats already done).


Yes. The current database is great. The database can easily be rebuilt with a library in mind. Using explorer as a start; instead of browsing thru folders, you browse via tags (ie, artist, genre, date, etc). Then add counters for playcount, and the other such values.
(ALSO: on playcount, should be kept inside the database, not rewritten to files when they are finished being played. That could problems with people using ID3v2, it should be written to the file when its tag is updated)

Once the database is turned into more of a library, smartplaylist functionality can be added.

Then once smartplaylists working with Foobar, a "complete" iPod plugin can be made.

To sync the ipod it would be simple. Just create a masterlist for the iPod; upon syncing, it would send new playcounts and ratings to songs changed on the ipod, update the items on the local PC. THen it would transfer any new songs, playlists, and new metadata, to the iPod.


Unforunately i can't be of great help. I know only very limited C++, but i would be more than happy to help you guys out in anyway possible, both with Foo_Library, and Foo_iPizzle
biggrin.gif biggrin.gif
Go to the top of the page
+Quote Post
Otto42
post Jan 29 2004, 03:33
Post #23





Group: Members
Posts: 1075
Joined: 15-October 03
From: Memphis, TN
Member No.: 9323



QUOTE (Xecter @ Jan 28 2004, 03:44 PM)
Foo_iPizzle

Foo_iPizzle's off the hizzle f'shizzle! biggrin.gif

This post has been edited by Otto42: Jan 29 2004, 03:34


--------------------
http://ottodestruct.com
Go to the top of the page
+Quote Post
Otto42
post Feb 1 2004, 18:35
Post #24





Group: Members
Posts: 1075
Joined: 15-October 03
From: Memphis, TN
Member No.: 9323



Okay, if anyone wants to get started working on this, here's something to get you started going on it.

I wrote a big set of classes to encapsulate and somewhat abstract the iTunesDB file structure. Basically, these classes create a one to one correspondance between what's in the iTunesDB and what's in objects in memory. Currently, they provide the ability to read the contents of the iTunesDB and manipulate it. I am working on adding the writing capabilities to it as well, to make it easy to write out an iTunesDB after you change it.

The best way to use this is to write a wrapper class that use these classes to work with. Your wrapper class would be the interface that converts from whatever structures are most convienent for you to use into the iPodDB classes. I've provided an example wrapper class that demonstrates what I'm talking about here, as well as a "main" function that uses that wrapper class to do something semi-useful. This will let you define how you want manipulate the songs and tracks and playlists and stuff on the Foobar side of things, and will use my classes to deal with the nitty gritty of reading/parsing/creating/writing the actual iTunesDB file format itself. The wrapper class would deal with the conversion between the two, sort of thing. It'll be clear when you read the files a bit closer. smile.gif

Anyway, here's the file: http://otto.homedns.org:8888/iTunes/iPodDB.zip
It's enough to get started with if someone wants to make a foobar plugin, and I'll have the writing aspects done in the next week or so, so that you'll eventually be able to just call "write" from the main iPod_mhbd class and it'll create a proper iTunesDB file for you, ready to go. biggrin.gif


--------------------
http://ottodestruct.com
Go to the top of the page
+Quote Post
Aero
post Feb 29 2004, 10:28
Post #25





Group: Members
Posts: 836
Joined: 20-December 02
Member No.: 4166



I have posted the initial version of foo_pod, described in this thread.
Go to the top of the page
+Quote Post

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: 16th September 2014 - 11:28