 
         self.setupPlayerItem(nil)
 
-        if let url = url {
-            let asset = AVURLAsset(url: url, options: .none)
-            self.setupAsset(asset)
-        }
+        let asset = AVURLAsset(url: url, options: .none)
+        self.setupAsset(asset)
     }
 
     fileprivate func setupAsset(_ asset: AVAsset, loadableKeys: [String] = ["tracks", "playable", "duration"]) {


extension Player {

    fileprivate func setup(url: URL?) {
        guard isViewLoaded else { return }

        // ensure everything is reset beforehand

    /// - Parameter url: URL of the asset.
    open var url: URL? {
        didSet {
            if let url = self.url {
                setup(url: url)
            }
        }
    }

