Я полагаю, что AVPlayer сохраняет AVPlayerItem в initWithPlayerItem: function, так что вы, возможно, теряете память с вашим AVPlayerItem. «currentItem» является свойством только для чтения и не должно быть «retain», которое предназначено только для доступных для записи свойств.