So I'm writing a program that needs to scan the user's music library and then retrieve metadata on the tracks they have from a central server. I expect that each track will have roughly 100 bytes of metadata returned on average, so if the user has 10,000 tracks, that's a about 1MB I'll need to transfer from the server to the client. Are there any good suggestions for this?
One option I have in mind is to submit the track info as an HTTP POST request, and then use PHP to format the metadata into one big XML response containing all the information. But it seems wasteful to format the data into XML and then parse it on the iPhone. So I'm wondering if there's a more efficient way. I suppose another option would be to write my own daemon and use raw TCP, but it seems like it would possibly be overkill. The most important thing to me is to minimize retrieval and decoding time.