 
                 case "currentItem.status":
                     if let item = player.currentItem where item.status == .Failed {
-                        state = .Failed(item.error)
-                        nextOrStop()
+                        state = .Failed(.FoundationError(item.error))
                     }
 
                 case "currentItem.loadedTimeRanges":

            }
        }

        nextOrStop()
    }

    private func nextOrStop() {

    case Paused
    case Stopped
    case WaitingForConnection
    case Failed(AudioPlayerError)
}

extension AudioPlayerState: Equatable { }
