iOS Live TV Channel Tuning Bugs: Deep Dive Into Errors, Workarounds, and Potential Issues

Server Version#: 1.4.3.0.10389 (Mac mini M4, 16 GB RAM, macOS 26.2)
Player Version#: 2026.0.1 (1523) (iPhone 16 Pro Max, iOS 26.2.1)
Tuner Make/Model: HDHomeRun FLEX 4k
Guide/Lineup name: Antenna (Local Broadcast Listings)
Using XMLTV?: No
Channel number/Name: All

Issue Summary

Often times, selecting a live channel from my HDHomeRun source on iOS results in an error and the channel fails to stream. This occurs on WiFi or my cellular network. My HDHomeRun signal strength, signal quality, and symbol quality are all at or near 100% on the related channels, and my home network is an AT&T Gigabit Fiber connection with the HDHomeRun and Plex Server both wired via Ethernet. In this post, I will document reproducible steps that result in the problem, note a series of related errors, and discuss a temporary workaround when encountering this issue/series of issues.

Affected Platforms

  • iOS only (iPhone, iPad)

  • macOS and Apple TV are NOT affected

  • This appears to be transcoding related, and my macOS, Apple TV, and web services all use original/non-transcoded streams.

  • It is my understanding that at some point in June of last year, Plex pushed out an iOS update that forces transcoding for all Live TV streams.

Scenario 1: Select first channel and wait to load :white_check_mark: WORKS

  1. Open Plex for iOS (I’m using my iPhone but see the same behavior on iPad.)
  2. Select the Live TV section (Note that no channels are loaded until selected.)
  3. Select a channel
  4. Observe that the channel stream loads as expected

Scenario 2: Select first channel but select second channel before first channel loads :white_check_mark: WORKS

  1. Open Plex for iOS
  2. Select the Live TV section
  3. Select a channel
  4. Before the requested channel loads, select a different second channel
  5. Observe that the channel initially fails to load
  6. iOS error presented: “Failed to fetch play queue response”
  7. However, in this scenario, the player will recover and successfully play the requested second channel. The presented error in this scenario automatically dismisses.

Scenario 3: After first channel loads, select a second channel :cross_mark: FAILS

  1. Open Plex for iOS
  2. Select the Live TV section
  3. Select a channel
  4. Observe that the channel stream loads as expected
  5. Select a different second channel
  6. Observe that the second channel fails to load
  7. iOS error presented: “Recording failed. Please check your tuner or antenna.”

Scenario 4: After second channel fails, select a third channel :cross_mark: FAILS

  1. Continues from step 7 in Scenario 3
  2. Select a different third channel
  3. Observe that the third channel fails to load
  4. iOS error presented: “Conversion failed. The transcoder process crashed.”

Scenario 5: After third channel fails, select a fourth channel :white_check_mark: WORKS

  1. Continues from step 4 in Scenario 4
  2. Select a different fourth channel
  3. Observe that the fourth channel channel stream loads as expected
  4. Once you observe the “Conversion failed. The transcoder process crashed.” error, selecting a different channel works again.

Temporary Workaround :white_check_mark: WORKS

If at any point you receive an error when selecting a channel, navigating away from the Live TV section from the tab bar and then navigating back to the Live TV section will reset the section and the first channel you select will play as expected.

Potential Issue

I’m noting this as potential, because I am not an engineer. However, to assist in tracking down this issue, I fed console logs into Claude AI while I was triggering various loading errors and had it speculate as to the underlying issue.

Claude speculates that the issue is a server-side session management bug. Claude notes that the Plex Media Server fails to properly terminate Tier 2 (universal transcode) sessions when Tier 1 (HDHomeRun stream) sessions are cancelled during channel switching.

When the “Recording failed. Please check your tuner or antenna.” is presented, an orphaned Tier 2 (universal transcode) session is trying to read from a dead Tier 1 (HD HomeRun) session during playback. When the “Conversion failed. The transcoder process crashed.” is presented, an orphaned Tier 2 (universal transcode) session is trying to read from a dead Tier 1 (HD HomeRun) session at FFmpeg startup.

The Failure Cascade

CHANNEL SWITCH (Channel A → Channel B)
    ↓
iOS cancels Channel A, requests Channel B
    ↓
Server kills Tier 1 (HD HomeRun session for Channel A)
    ↓
Server starts Tier 1 for Channel B
    ↓
BUT: Tier 2 (universal transcode) for Channel A is still running
    ↓
Tier 2 for Channel A tries to read from DEAD Tier 1 for Channel A
    ↓
Gets 404 errors
    ↓
Eventually terminates with "Recording failed" or "Conversion failed"

Key Changes Needed According to Claude

  1. Track session dependencies

    • When universal transcode starts, register it as child of HD HomeRun session
  2. Cascade termination

    • When HD HomeRun session is killed, immediately kill all dependent transcoders
  3. Prevent orphans

    • Don’t allow child sessions to outlive their parents
  4. Better error messages

    • “Session terminated during channel change” instead of “Recording failed” and “Conversion failed”

This set of bugs all still persist after updating to the latest Server and iOS updates today.

Server Version#: 1.43.0.10492 (Mac mini M4, 16 GB RAM, macOS 26.2)
Player Version#: 2026.1.0 (1537) (iPhone 16 Pro Max, iOS 26.2.1)

I confirm the error.

I have the same issue. This has been happening for over a year. Plex team will not fix any issues with the app.

This set of bugs all still persist after updating to the latest Server and iOS updates today.

Server Version#: 1.43.0.10492 (Mac mini M4, 16 GB RAM, macOS 26.2)
Player Version#: 2026.2.0 (1566) (iPhone 16 Pro Max, iOS 26.2.1)

@seekbus thank you for the detailed reporting. Can you please include PMS logs and iOS logs after reproducing the issue? LiveTV errors can sometimes be specific to channels or epg based on region making reproduction difficult. Please share your logs here or DM them to me.

@Atomatth Thanks for the response.

Here are the requested PMS and iOS logs. I tried to edit down the logs so that there isn’t a bunch of superfluous stuff to wade through. The PMS logs were copied from the PMS console window. I edited the iOS logs to focus just on the related time range. If you would prefer to see unfiltered logs I can provide those as well.

Here are the following steps represented by the logs:

  1. Opened Plex to the Live TV tab on my iPhone
  2. Selected ABC (which loads successfully)
  3. Selected NBC (which fails to load)
  4. Selected ABC again (which fails to load)
  5. Selected NBC again (which loads successfully)

Note that this same behavior occurs regardless of which of the channels I choose from my HD HomeRun listings. I only toggled between these two channels to illustrate that channels that were load or fail depending on when they are initiated in the sequence according to the behavior I laid out previously in my bug report.

Plex logs.zip (62.9 KB)

@Atomatth Here is another set of logs following the same steps noted in my previous comment. I realized that I had a second (friend’s) server that was appearing in the logs and was failing and that I opened the Plex app on my iPhone to a previous session that started by throwing a series of errors from an old Live TV session. I removed myself from my friend’s server and force closed the Plex app on my iPhone so that this set of logs is a bit cleaner.

Plex logs B.zip (60.5 KB)

I shared these new logs with Claude. It initially assumed that the issue was related to a lower signal strength for NBC. Once I challenged it to find a new theory, since I could confirm the issue is based on sequence and not signal strength, this was it’s explanation as to what is occurring:

The real culprit isn’t NBC’s signal quality — it’s that the 0x0 errors are happening on session 93cc8b11, which is the ABC tune session, not the NBC tune session.

Look at the timeline closely:

18:09:33 — ABC tune starts. The server creates grab session 93cc8b11-562c-4666-850a-f6d5f5d06555. The 0x0 errors appear at 18:09:34.378–34.974, all tagged to 93cc8b11. Valid dimensions come in at 18:09:35.073, also tagged to 93cc8b11. The ABC tune succeeds.

18:09:43.757 — NBC tune request arrives. The server immediately cancels the ABC subscription and tears down the grab for 93cc8b11. Then it starts a new NBC grab — but look at what happens: the NBC grab reuses the same underlying tuner (tuner 2 on device 10A64F5F). The second-layer transcoder session f0e65fe7 is still running, consuming the 93cc8b11 stream.

The NBC grab’s new session ID starts fresh, but the second-layer transcoder f0e65fe7 is still pointed at the now-dying 93cc8b11 stream. When NBC’s new grab begins writing data through tuner 2 — the same physical tuner — the f0e65fe7 transcoder is consuming a segment stream that is mid-transition. The MPEG2 decoder gets caught between two different broadcast streams on the same tuner and receives frames where the dimension metadata hasn’t been established yet for the new channel, hence 0x0.

In other words: the issue isn’t NBC’s signal initializing slowly — it’s the dual-layered transcoding architecture (grab session → transcode session) hitting a channel-switch boundary on a shared tuner before the inner transcoder has been properly torn down and rebuilt. The f0e65fe7 transcoder doesn’t know the grab underneath it just switched channels; it’s still trying to decode frames that are now from a different multiplex.

The fact that the second NBC attempt works cleanly supports this: by that point, f0e65fe7 had been killed and a genuinely fresh transcoder was spun up for the NBC grab, with no stale decoder state carrying over.

I believe that this is related to an already reported issue where transcoding MPEG2 on MacOS 26 is broken.

Thanks for the reply. Based on @chris_decker08’s recommendations in the shared post, I already had Convert Video While Recording turned off and I unchecked Use Hardware-Accelerated Video Encoding. I can confirm that those changes have no impact on the issue I’m seeing. The behavior I’ve described here persists.

I’m also not sure if this is a MacOS 26 only issue. I’ve been dealing with issues streaming Live TV for months and my PMS was running on an old Mac mini that no longer supported newer system updates. To rule out outdated hardware/system software being an issue, I upgraded the hardware for my media server in an attempt to resolve my issues and that did not fix the problem. I have not reconnected my old mini to confirm that the behavior I was seeing there was exactly the same, but I can do that if that is helpful.

If this muddies the water instead of helping, feel free to ignore. I’m attaching logs from my old Mac mini following the same behavior of launching Plex on my iPhone, switching to the Live TV tab, selecting ABC (which loads successfully), switching to NBC (which fails), switching back to ABC (which fails), and then switching back to NBC (which loads successfully momentarily but then fails).

I should note that the behavior of Live TV on Plex running from my old Mac mini is a lot less predictable than the new mini. Although a lot of the error behavior is similar, it is less likely to recover successfully on the fourth attempt and the pattern doesn’t repeat in the same way. Plex Server is also far less stable on this old hardware. The stability issues aren’t represented in these logs because it’s a relatively short session, but the crashing issues were my main motivator to upgrade hardware.

Server Version#: 1.4.3.0.10492 (Mac mini Late 2014, 16 GB RAM, macOS 12.7.6)
Player Version#: 2026.2.0 (1566) (iPhone 16 Pro Max, iOS 26.2.1)
Tuner Make/Model: HDHomeRun FLEX 4k
Guide/Lineup name: Antenna (Local Broadcast Listings)
Using XMLTV?: No
Channel number/Name: All

Plex Logs (Old Mac Mini).zip (58.3 KB)

Can you please stop editing the logs? Download the zip of your PMS logs and share the entirety of the zip. Please.

Sure. Here are complete server logs from the old and new server mini as well as my iPhone.

Plex Media Server Logs_2026-02-25_08-24-59 (New Mini).zip (3.1 MB)

plex-log-2026-02-25T03_28_50.165Z.zip (167.9 KB)

Plex Media Server Logs_2026-02-25_08-29-59 (Old Mini).zip (3.4 MB)

Reporting that this problem appears to be resolved with the 2026.3.0 iOS update. If there is anything specific I can test, please let me know. Thanks.