Plex casting fix when new iOS app skips or won’t start playback

Plex casting fix when new iOS app skips or won’t start playback

What I saw

  • Most of my library played fine. Only about 15% to 20% of titles failed to cast or skipped past certain episodes.

  • Playing directly on the iPhone worked, but casting to Chromecast would stall immediately or buffer forever.

What caused it

  • My Plex server was using a Generic device profile (confirmed in Plex Media Server.log) instead of the proper iOS or Chromecast profiles.

  • With the Generic profile, the server tried to send video in an MKV stream that my Chromecast would not accept.

  • This only hit some files, which is why most of my media still played.

The simple fix that solved it

  1. Remove or rename the Generic profile file. Check all three locations.

    • Windows stock profiles:

    • C:\Program Files (x86)\Plex\Plex Media Server\Resources\Profiles\

    • C:\Program Files\Plex\Plex Media Server\Resources\Profiles\

    • %LOCALAPPDATA%\Plex Media Server\Profiles\

    • If you see Generic.xml in either place, rename it to something like old_Generic.xml_old or remove it.

    • Restart the Plex Media Server service.

  2. Refresh the apps and cast device.

    • Sign out of the Plex iOS app, force-quit the app, then sign back in.

    • Power cycle the Chromecast. Unplug for 20 seconds, plug back in.

  3. Turn Direct Play and Direct Stream back on in the iOS app.

    • iOS Plex app → Me → Settings → Video → enable Allow Direct Play and Allow Direct Stream.

After these steps, the server correctly identified my devices and chose the right streaming method. Casting worked again, including the MP4 that would not start before.

Important network note

Optional checks if you are curious

  • In Plex Web, go to Settings → Devices and remove old entries for your iPhone and Chromecast, then let them re-register.

  • If a title still fights you, change the cast quality to a fixed bitrate instead of Original so the server uses standard HLS.

  • Do not copy iOS.xml or Chromecast.xml and rename it to Generic.xml. Let Plex use the built-in device profiles.

Why some files played while others failed

  • The affected 15% to 20% were the ones that triggered the wrong Generic path on my server.

  • Once the server stopped using Generic and used the correct device profiles, those same files played normally.


Heads-up: Plex updates can restore the stock Generic.xml in Program Files. If casting breaks again after an update, check that folder and rename it again.

The solution works, so marking as solved.