Jellyfin LiveTV issues with HDHomerun

I’m trying to switch from Plex to Jellyfin. I added a docker to my Unraid server.

We use a triplet of HD HomeRuns. I added one of my HDHR-US tuners in to Jellyfin last weekend, and subscribed to schedules direct free 7 day trial for guide. When tuning to a channel, on any client, all I get is a spinning ball of death. Looking at the logs, here’s what it comes up with:

[11:11:12] [INF] [138] MediaBrowser.Api.Playback.MediaInfoService: User policy for steve. EnablePlaybackRemuxing: True EnableVideoPlaybackTranscoding: True EnableAudioPlaybackTranscoding: True
[11:11:12] [INF] [138] MediaBrowser.Api.Playback.MediaInfoService: Profile: Unknown Profile, Path: http://192.168.0.109, isEligibleForDirectPlay: True, isEligibleForDirectStream: True
[11:11:12] [INF] [138] MediaBrowser.Api.Playback.MediaInfoService: Profile: Unknown Profile, No direct play profiles found for Path: http://192.168.0.109
[11:11:12] [INF] [138] Emby.Server.Implementations.LiveTv.LiveTvManager: Opening channel stream from Emby, external channel Id: hdhr_4.2
[11:11:12] [INF] [138] Emby.Server.Implementations.LiveTv.EmbyTV.EmbyTV: Streaming Channel hdhr_4.2
[11:11:12] [INF] [138] Emby.Server.Implementations.LiveTv.TunerHosts.HdHomerun.HdHomerunHost: GetChannelStream: channel id: hdhr_4.2. stream id: native_e6cf28a2c44a0ece86c37057a16de041_709d2c736a590e9244c42461391ea650 profile: native
[11:11:12] [INF] [138] Emby.Server.Implementations.LiveTv.TunerHosts.HdHomerun.HdHomerunHost: Opening HDHR UDP Live stream from 192.168.0.109
[11:11:12] [ERR] [65] Emby.Server.Implementations.LiveTv.TunerHosts.HdHomerun.HdHomerunHost: Error opening live stream:

System.Net.Sockets.SocketException (99): Cannot assign requested address
at System.Net.Sockets.Socket.UpdateStatusAfterSocketErrorAndThrowException(SocketError error, String callerName)

at System.Net.Sockets.Socket.DoBind(EndPoint endPointSnapshot, SocketAddress socketAddress)
at System.Net.Sockets.Socket.Bind(EndPoint localEP)
at System.Net.Sockets.TcpClient..ctor(IPEndPoint localEP)
at Emby.Server.Implementations.LiveTv.TunerHosts.HdHomerun.HdHomerunManager.StartStreaming(IPAddress remoteIp, IPAddress localIp, Int32 localPort, IHdHomerunChannelCommands commands, Int32 numTuners, CancellationToken cancellationToken)
at Emby.Server.Implementations.LiveTv.TunerHosts.HdHomerun.HdHomerunUdpStream.Open(CancellationToken openCancellationToken)
[11:11:12] [ERR] [65] Emby.Server.Implementations.LiveTv.TunerHosts.HdHomerun.HdHomerunHost: Error opening tuner

System.Net.Sockets.SocketException (99): Cannot assign requested address
at System.Net.Sockets.Socket.UpdateStatusAfterSocketErrorAndThrowException(SocketError error, String callerName)

at System.Net.Sockets.Socket.DoBind(EndPoint endPointSnapshot, SocketAddress socketAddress)
at System.Net.Sockets.Socket.Bind(EndPoint localEP)
at System.Net.Sockets.TcpClient..ctor(IPEndPoint localEP)
at Emby.Server.Implementations.LiveTv.TunerHosts.HdHomerun.HdHomerunManager.StartStreaming(IPAddress remoteIp, IPAddress localIp, Int32 localPort, IHdHomerunChannelCommands commands, Int32 numTuners, CancellationToken cancellationToken)
at Emby.Server.Implementations.LiveTv.TunerHosts.HdHomerun.HdHomerunUdpStream.Open(CancellationToken openCancellationToken)
at Emby.Server.Implementations.LiveTv.TunerHosts.BaseTunerHost.GetChannelStream(String channelId, String streamId, List`1 currentLiveStreams, CancellationToken cancellationToken)
[11:11:12] [ERR] [65] Emby.Server.Implementations.HttpServer.HttpListenerHost: Error processing request. URL: http://192.168.0.218:8096/Items/2f79ed5620ee0b26a0c65e8f1ca12a2e/PlaybackInfo?UserId=5d2f59d95f864cf1b9796a092b3b8aae&StartTimeTicks=0&IsPlayback=true&AutoOpenLiveStream=true&MaxStreamingBitrate=140000000

MediaBrowser.Controller.LiveTv.LiveTvConflictException: Exception of type 'MediaBrowser.Controller.LiveTv.LiveTvConflictException' was thrown.

at Emby.Server.Implementations.LiveTv.TunerHosts.BaseTunerHost.GetChannelStream(String channelId, String streamId, List`1 currentLiveStreams, CancellationToken cancellationToken)
at Emby.Server.Implementations.LiveTv.EmbyTV.EmbyTV.GetChannelStreamWithDirectStreamProvider(String channelId, String streamId, List`1 currentLiveStreams, CancellationToken cancellationToken)
at Emby.Server.Implementations.LiveTv.LiveTvManager.GetChannelStream(String id, String mediaSourceId, List`1 currentLiveStreams, CancellationToken cancellationToken)
at Emby.Server.Implementations.LiveTv.LiveTvMediaSourceProvider.OpenMediaSource(String openToken, List`1 currentLiveStreams, CancellationToken cancellationToken)
at Emby.Server.Implementations.Library.MediaSourceManager.OpenLiveStreamInternal(LiveStreamRequest request, CancellationToken cancellationToken)
at Emby.Server.Implementations.Library.MediaSourceManager.OpenLiveStream(LiveStreamRequest request, CancellationToken cancellationToken)
at MediaBrowser.Api.Playback.MediaInfoService.OpenMediaSource(OpenMediaSource request)
at MediaBrowser.Api.Playback.MediaInfoService.GetPlaybackInfo(GetPostedPlaybackInfo request)
at MediaBrowser.Api.Playback.MediaInfoService.Post(GetPostedPlaybackInfo request)
at Emby.Server.Implementations.Services.ServiceExecGeneral.GetTaskResult(Task task)
at Emby.Server.Implementations.Services.ServiceHandler.ProcessRequestAsync(HttpListenerHost httpHost, IRequest httpReq, HttpResponse httpRes, ILogger logger, CancellationToken cancellationToken)
at Emby.Server.Implementations.HttpServer.HttpListenerHost.RequestHandler(IHttpRequest httpReq, String urlString, String host, String localPath, CancellationToken cancellationToken)

I am getting the same error: SocketException (99).
Running Jellyfin on clean Ubuntu install using Docker.
Docker config is using the recommended settings for HDHomerun.
The HDHomerun video works on system through the HDHomerun_config_gui app once VLC is loaded.
But clicking on live tv in Jellyfin results in spinning wheel and SocketException (99) in log.
Help!