Become a MacRumors Supporter for $50/year with no ads, ability to filter front page stories, and private forums.
If I really wanted that I would have opened a ranting thread about the reverting artwork issue that it´s present since iTunes Match release date back in 2011.

;)
 
It's not about how much software you can write anymore, it's about how much software you can test.
These days anyone can code. All it takes is time and patience. The real value is not your code, but your unit tests and test cases, test samples. For example, it may take years to collect enough tricky input to be absolutely confident that you can test your code against a large number of cases. Anyone can sit down and write the code, but few will have the real-world customer test cases to prove it's working correctly. This is especially true for complex documents, such as PDF, DOC, DOCX, as well as compilers. It's even more important if you want to support slightly corrupt images, music and videos. Most players just crash upon the slightest corruption.
 
  • Like
Reactions: B/D
Funny thing is this is a very specific, concrete, and particular issue... so particular that I, in all honesty, can´t understand what has change from iTunes 12.3 to 12.4 as far as streaming backend is concerned. Because yes, as the article says, after further testing I think that we can isolate this bug only to iTunes 12.4-12.4.1. macOS Sierra Beta come with 12.5 doesn´t it?. iTunes 12.3 and older version handle streaming perfectly well.

Interesting...

I worked in radio for nearly 20 years. One of the first rules is, "No dead air!" (no silence). So it's pretty easy for me to spin a scenario...

Apple Music is run by creatives with a radio background.
People notice there's a problem with streaming playlists when there's a poor network connection (driving in my car, turn on the radio...) - there's dead air while the next track buffers.
Here's what goes on at the meeting: "We can't have dead air, so let's start buffering sooner. But it's sorta dumb to start buffering at the beginning of the previous track - if it's one of those 18-minute classical tracks, that could eat up a lot of precious storage. So, let's start buffering a minute before the end-of-track."

The thing is, this solution, as simplistic as it is, probably solved far more problems than it created. The vast majority of tracks are longer than one minute, so the end result is smoother playback for the vast majority of listeners. They may or may not consciously notice that the music flows more smoothly... it's the silence that "pulls the ear" and makes someone notice something's wrong. And nobody notices if a track has been skipped unless they know which track is supposed to come next.

But if the problem really is this simply stated, then the solution will be, too. Add a conditional loop: "If track length < 1 minute, start buffering the next track immediately." Since the preceding track may be too short, maybe there will be some dead air from time to time, but that's (probably) preferable to skipping a track.

I remember related issues when playing CDs back in the day. There were CD players that had a feature that would temporarily pause a CD between tracks (effectively, adding a few seconds of silence). Sometimes, that was a good thing, other times it resulted in over-long silences (such as when a classical album producer had already provided an appropriately-timed break between movements). It could be especially jarring if it was a live concert recording, as audience noise and room tone disappeared for a few seconds. Similarly, "broadcast" CD players might, by default, stop at the end of each track (I'm talking about you, Studer and Denon!). If you wanted to play through, then you had to override that setting, or program the track sequence... Let's just say that a fair percentage of "air talent" was far more talented at speaking to the audience than at mastering the idiosyncrasies of the equipment.
 
Huh, wow. I'm kinda amazed that this happened to software with such a large developer support.

How did this happen lol?! It's not like iTunes is beta software.

These types of bugs suggest that Apple sucks at test automation/unit tests. They just give it to somebody and they play a their favorite songs. What they should do is make iTunes play a huge number of randomly selected tracks from the service.

Google understands and invests a bit in this stuff. It's not about how much software you can write anymore, it's about how much software you can test.

At a point where I'm just not surprised about these bugs

Seriously? SERIOUSLY?

This is 'Apple Quality'?

Where?

Why would Apple Music even care? It's a buggy mess...
A bug in software? That is just completely unimaginable and improbable. Seriously, it's just as unlikely and surprising as a faucet leaking somewhere.
 
These types of bugs suggest that Apple sucks at test automation/unit tests. They just give it to somebody and they play a their favorite songs. What they should do is make iTunes play a huge number of randomly selected tracks from the service.

Google understands and invests a bit in this stuff. It's not about how much software you can write anymore, it's about how much software you can test.

I would agree. This bug never should've made it past unit testing.

The fact that this bug does not exist on Sierra suggest that it's already been fixed that branch of iTunes, but the fix was never ported to the master branch that the rest of us receive.
 
Test cases are only as good as your testers. Out of a library of 29,988 tracks, I have 281 tracks that are < 1 minute. 238 of those are commercial tracks.

I don't see a major problem with this failing...although it should be scheduled for a fix.
 
A bug in software? That is just completely unimaginable and improbable. Seriously, it's just as unlikely and surprising as a faucet leaking somewhere.

I'm not saying its improbably and unimaginable, its just that this is a really rudimentary function and given how many developers apple has, and how high profile and priority iTunes and Apple Music is, it's odd that it was an oversight.

I don't program in Xcode, but that kind of logical functions aren't all that uncommon.

Test cases are only as good as your testers. Out of a library of 29,988 tracks, I have 281 tracks that are < 1 minute. 238 of those are commercial tracks.

I don't see a major problem with this failing...although it should be scheduled for a fix.

significant amount of albums have intros/intermezzos/outros.
 
I'm not saying its improbably and unimaginable, its just that this is a really rudimentary function and given how many developers apple has, and how high profile and priority iTunes and Apple Music is, it's odd that it was an oversight.

I don't program in Xcode, but that kind of logical functions aren't all that uncommon.



significant amount of albums have intros/intermezzos/outros.
When humans are involved it's not really all that odd that there are simple things or complex things or things in between those that might not be right at different times in different places.
 
Never would have seen this since I play only my own songs that are on my own Mac.

Wow! Can't you guys proofread what you type before you Post Reply? Or maybe you were asleep in class.
 
Glad I only listen to music stored locally. But I got a feeling that this issue will get fixed pretty soon as it'll affect a lot of people.
Local music playing still has rare bugs. I've had issues where it plays the same song twice while in shuffle + loop mode before it's looped through the rest of the songs.

I'm also PO'd that the only way to shuffle all music is to tell Siri to do it now. Either that or make a smart playlist matching all songs.
 
Last edited:
  • Like
Reactions: B/D
I worked in radio for nearly 20 years. One of the first rules is, "No dead air!" (no silence). So it's pretty easy for me to spin a scenario...

Apple Music is run by creatives with a radio background.
People notice there's a problem with streaming playlists when there's a poor network connection (driving in my car, turn on the radio...) - there's dead air while the next track buffers.
Here's what goes on at the meeting: "We can't have dead air, so let's start buffering sooner. But it's sorta dumb to start buffering at the beginning of the previous track - if it's one of those 18-minute classical tracks, that could eat up a lot of precious storage. So, let's start buffering a minute before the end-of-track."

The thing is, this solution, as simplistic as it is, probably solved far more problems than it created. The vast majority of tracks are longer than one minute, so the end result is smoother playback for the vast majority of listeners. They may or may not consciously notice that the music flows more smoothly... it's the silence that "pulls the ear" and makes someone notice something's wrong. And nobody notices if a track has been skipped unless they know which track is supposed to come next.

But if the problem really is this simply stated, then the solution will be, too. Add a conditional loop: "If track length < 1 minute, start buffering the next track immediately." Since the preceding track may be too short, maybe there will be some dead air from time to time, but that's (probably) preferable to skipping a track.

I remember related issues when playing CDs back in the day. There were CD players that had a feature that would temporarily pause a CD between tracks (effectively, adding a few seconds of silence). Sometimes, that was a good thing, other times it resulted in over-long silences (such as when a classical album producer had already provided an appropriately-timed break between movements). It could be especially jarring if it was a live concert recording, as audience noise and room tone disappeared for a few seconds. Similarly, "broadcast" CD players might, by default, stop at the end of each track (I'm talking about you, Studer and Denon!). If you wanted to play through, then you had to override that setting, or program the track sequence... Let's just say that a fair percentage of "air talent" was far more talented at speaking to the audience than at mastering the idiosyncrasies of the equipment.


Wow, thank you very much for your thoughtful, carefully written, highly informative and detailed post. However despite I can now perfectly understand why Apple Music buffering works the way it works, fact remains that this bug doesn´t happen in prior version of iTunes nor occurs in iTunes 12.5 beta on macOs sierra.

So I wonder... the buffering system was different on iTunes 12.4? It´s different again on iTunes 12.5 beta? And, if so, what have changed and why?

Besides this, this bug is particularly annoying and major because the tracks dont skip, but they freeze in a perpetual false buffering. Minor but crucial difference, if you ask me.

:)
[doublepost=1466721028][/doublepost]So, in the meantime, it´s possible to downgrade to iTunes 12.3?
 
  • Like
Reactions: villicodelirant
Test cases are only as good as your testers. Out of a library of 29,988 tracks, I have 281 tracks that are < 1 minute. 238 of those are commercial tracks.

I don't see a major problem with this failing...although it should be scheduled for a fix.

Out of your library, which would I use for testing...

The shortest track. The longest track. The tracks with the shortest and the longest title. A track with a 30 megapixel photo as artwork. A track where the title is a mixture of Japanese, Chinese, Hebrew and Arabic. An album with 200 tracks (yes, I've got that as well).

See, that would have found the bug. And I don't know if it would have found any others, but it might.
 
  • Like
Reactions: B/D
Ok, so you can uninstall iTunes 12.4 via terminal, but now the question is where a legit DMG of 12.3 version can be found, if that´s possible.
 
I don't buy cheap faucets, and it's ridiculous to think that *ALL* faucets leak...

Cheap ass faucets leak...
There are cheap faucets, and it is ridiculous to think that all faucets leak, just as it is to somehow pick up on any of that from what I said when none of that was said or even implied.
 
  • Like
Reactions: villicodelirant
Register on MacRumors! This sidebar will go away, and you'll see fewer ads.