• We’re currently investigating an issue related to the forum theme and styling that is impacting page layout and visual formatting. The problem has been identified, and we are actively working on a resolution. There is no impact to user data or functionality, this is strictly a front-end display issue. We’ll post an update once the fix has been deployed. Thanks for your patience while we get this sorted.

What is up with iTunes and its ridiculous single threaded conversions?

sxr7171

Diamond Member
I started a conversion of a folder of music from ALAC to AAC to have a library to sync to my iPhone/iPod. This was started on Thursday and it's still only about a third done. I mean do I really need to wait a week for this stupid program to convert my music? In the meantime I can't use my ALAC library for listening.

This is the dumbest thing I have ever seen. Making at least transcoding multithreaded is trivial, but they don't do it.
 
30000 songs. It's still going. Thankfully MacOS is stable enough to keep going without crashing. But iTunes is frustrating in that it won't easily allow you to resume a conversion. It will write duplicate files on disk and in the library if you start it again.
 
30000 songs. It's still going. Thankfully MacOS is stable enough to keep going without crashing. But iTunes is frustrating in that it won't easily allow you to resume a conversion. It will write duplicate files on disk and in the library if you start it again.

My... god. 😵

How many gigs is that? No wonder it's taking so long.
 
Even with a program that supports multi core converting 30k songs will take a long time. If you think a multi core aware converter will magically finish this overnight you're insane. ON my dual core @ 100% I just caculated my PC would take about 300 hours to do your collection/ which is still 12.5 days, I'd say iTunes is flying thru your collection and if it's not multi-thread and it's already a 1/3rd thru your collection. That's definitely the fastest single thread converting app I've ever seen.
 
30000 songs. It's still going. Thankfully MacOS is stable enough to keep going without crashing. But iTunes is frustrating in that it won't easily allow you to resume a conversion. It will write duplicate files on disk and in the library if you start it again.

iTunes is a lot more frustrating in many other ways and any OS these days is stable enough to handle an operation like that. It's pretty stupid that the player isn't separate from the encoder so that you can listen while you rip, but transcoding a single file in multiple threads is far from trivial. But if you really believe that it's so simple, why not write your own? If it really is, then you should be able to write a new app to do the transcode in multiple threads and it'll be so fast that it'll complete the transcode before iTunes even with it's head start, right?
 
Winamp only uses a single core for transcoding as well, iTunes isn't the only media player that has this limitation. Kind of lame because it doesn't seem like it would be difficult at all to program the software to have N instances (N being number of CPU cores obviously) of the encoder running simultaneously to significantly speed things up, but who knows, I'm not a programmer. Maybe actually implementing something like this is more difficult than I think.
 
Winamp only uses a single core for transcoding as well, iTunes isn't the only media player that has this limitation. Kind of lame because it doesn't seem like it would be difficult at all to program the software to have N instances (N being number of CPU cores obviously) of the encoder running simultaneously to significantly speed things up, but who knows, I'm not a programmer. Maybe actually implementing something like this is more difficult than I think.

There's more work than you think, but doing 1 thread per-file to encode should be pretty simple as long as the library used for the encoding is already thread-safe. If not, it would still be not much work to fork a whole separate process for each file to be encoded. But then that would mean Apple would have to give you a way to configure the number of threads/processes which they obviously don't like doing or make a best guess on their own at runtime (total cores - 2 or something like that so the box is still usable) which would end up pissing off some people too.
 
Back
Top