fix ts mode with hdhr clients (#588)
This commit is contained in:
@@ -10,6 +10,8 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/).
|
|||||||
- Thread count is now forced to `1` for all streaming modes other than HLS Segmenter
|
- Thread count is now forced to `1` for all streaming modes other than HLS Segmenter
|
||||||
- Fix bug with HLS Segmenter in cultures where `.` is a group/thousands separator
|
- Fix bug with HLS Segmenter in cultures where `.` is a group/thousands separator
|
||||||
- Fix search results page crashing with some media kinds
|
- Fix search results page crashing with some media kinds
|
||||||
|
- Always use MPEG-TS or MPEG-TS (Legacy) streaming mode with HDHR (Plex)
|
||||||
|
- Other configured modes will fall back to MPEG-TS when accessed by Plex
|
||||||
|
|
||||||
### Changed
|
### Changed
|
||||||
- Upgrade ffmpeg from 4.4 to 5.0 in all docker images
|
- Upgrade ffmpeg from 4.4 to 5.0 in all docker images
|
||||||
|
|||||||
@@ -22,7 +22,7 @@ namespace ErsatzTV.Core.Hdhr
|
|||||||
|
|
||||||
public string URL => _channel.StreamingMode switch
|
public string URL => _channel.StreamingMode switch
|
||||||
{
|
{
|
||||||
StreamingMode.HttpLiveStreamingDirect => $"{_scheme}://{_host}/iptv/channel/{_channel.Number}.m3u8",
|
StreamingMode.TransportStream => $"{_scheme}://{_host}/iptv/channel/{_channel.Number}.ts?mode=ts-legacy",
|
||||||
_ => $"{_scheme}://{_host}/iptv/channel/{_channel.Number}.ts"
|
_ => $"{_scheme}://{_host}/iptv/channel/{_channel.Number}.ts"
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -45,7 +45,7 @@ namespace ErsatzTV.Core.Iptv
|
|||||||
StreamingMode.HttpLiveStreamingDirect => "m3u8?mode=hls-direct",
|
StreamingMode.HttpLiveStreamingDirect => "m3u8?mode=hls-direct",
|
||||||
StreamingMode.HttpLiveStreamingSegmenter => "m3u8?mode=segmenter",
|
StreamingMode.HttpLiveStreamingSegmenter => "m3u8?mode=segmenter",
|
||||||
StreamingMode.TransportStreamHybrid => "ts",
|
StreamingMode.TransportStreamHybrid => "ts",
|
||||||
_ => "ts?mode=legacy"
|
_ => "ts?mode=ts-legacy"
|
||||||
};
|
};
|
||||||
|
|
||||||
string vcodec = channel.FFmpegProfile.VideoCodec.Split("_").Head();
|
string vcodec = channel.FFmpegProfile.VideoCodec.Split("_").Head();
|
||||||
|
|||||||
@@ -59,7 +59,7 @@ namespace ErsatzTV.Controllers
|
|||||||
{
|
{
|
||||||
FFmpegProcessRequest request = mode switch
|
FFmpegProcessRequest request = mode switch
|
||||||
{
|
{
|
||||||
"legacy" => new GetConcatProcessByChannelNumber(Request.Scheme, Request.Host.ToString(), channelNumber),
|
"ts-legacy" => new GetConcatProcessByChannelNumber(Request.Scheme, Request.Host.ToString(), channelNumber),
|
||||||
_ => new GetWrappedProcessByChannelNumber(Request.Scheme, Request.Host.ToString(), channelNumber)
|
_ => new GetWrappedProcessByChannelNumber(Request.Scheme, Request.Host.ToString(), channelNumber)
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user