• Login
  • Register
  • Login Register
    Login
    Username/Email:
    Password:
    Or login with a social network below
  • Forum
  • Website
  • GitHub
  • Status
  • Translation
  • Features
  • Team
  • Rules
  • Help
  • Feeds
User Links
  • Login
  • Register
  • Login Register
    Login
    Username/Email:
    Password:
    Or login with a social network below

    Useful Links Forum Website GitHub Status Translation Features Team Rules Help Feeds
    Jellyfin Forum Support Troubleshooting SOLVED: Unable to record live TV but am able to view it

     
    • 0 Vote(s) - 0 Average

    SOLVED: Unable to record live TV but am able to view it

    generically_named
    Offline

    Junior Member

    Posts: 3
    Threads: 1
    Joined: 2024 Mar
    Reputation: 0
    Country:Australia
    #1
    2024-03-05, 01:22 PM
    Hi all,

    I have setup the m3u tuner in my Jellyfin instance with the Adelaide Free to Air TV channels: https://i.mjh.nz/au/Adelaide/raw-tv.m3u8

    My issue is that I can view Channel 10, Channel 10Peach and Channel 10Bold live but cannot record them. I have tried forcing transcoding on my user and when viewing live this is still successful. Looking at the logs (see logs appended at end of post) it appears the same thing happens as ffprobe attempts to probe the link (https://i.mjh.nz/10bold-sa.m3u8, it is geo-restricted) but fails. The difference is that the second time, when I am watching live, it provides the -useragent option which seems to do something. In experiments on my Windows computer with ffprobe I found the following:

    Command:
    Code:
    ffprobe -v error -show_format -show_streams "https://i.mjh.nz/10bold-sa.m3u8"
    Returns:
    Code:
    https://i.mjh.nz/10bold-sa.m3u8: Server returned 404 Not Found

    But if I specify user agent:
    Command: 
    Code:
    ffprobe -v error -show_format -show_streams -user_agent "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/64.0.3282.140 Safari/537.36 Edge/18.17763" "https://i.mjh.nz/10bold-sa.m3u8"

    Returns: 
    Code:
    [STREAM]
    index=0
    codec_name=h264
    codec_long_name=H.264 / AVC / MPEG-4 AVC / MPEG-4 part 10
    profile=Main
    codec_type=video
    codec_tag_string=[27][0][0][0]
    codec_tag=0x001b
    width=1280
    height=720
    coded_width=1280
    coded_height=720
    closed_captions=0
    film_grain=0
    has_b_frames=1
    sample_aspect_ratio=1:1
    display_aspect_ratio=16:9
    pix_fmt=yuv420p
    level=31
    color_range=tv
    color_space=bt709
    color_transfer=bt709
    color_primaries=bt709
    chroma_location=left
    field_order=unknown
    refs=1
    is_avc=false
    nal_length_size=0
    id=N/A
    r_frame_rate=25/1
    avg_frame_rate=25/1
    time_base=1/90000
    start_pts=899205232
    start_time=9991.169244
    duration_ts=N/A
    duration=N/A
    bit_rate=N/A
    max_bit_rate=N/A
    bits_per_raw_sample=8
    nb_frames=N/A
    nb_read_frames=N/A
    nb_read_packets=N/A
    extradata_size=53
    DISPOSITION:default=0
    DISPOSITION:dub=0
    DISPOSITION:original=0
    DISPOSITION:comment=0
    DISPOSITION:lyrics=0
    DISPOSITION:karaoke=0
    DISPOSITION:forced=0
    DISPOSITION:hearing_impaired=0
    DISPOSITION:visual_impaired=0
    DISPOSITION:clean_effects=0
    DISPOSITION:attached_pic=0
    DISPOSITION:timed_thumbnails=0
    DISPOSITION:non_diegetic=0
    DISPOSITION:captions=0
    DISPOSITION:descriptions=0
    DISPOSITION:metadata=0
    DISPOSITION:dependent=0
    DISPOSITION:still_image=0
    TAG:variant_bitrate=2873200
    [/STREAM]
    [STREAM]
    index=1
    codec_name=aac
    codec_long_name=AAC (Advanced Audio Coding)
    profile=LC
    codec_type=audio
    codec_tag_string=[15][0][0][0]
    codec_tag=0x000f
    sample_fmt=fltp
    sample_rate=48000
    channels=2
    channel_layout=stereo
    bits_per_sample=0
    initial_padding=0
    id=N/A
    r_frame_rate=0/0
    avg_frame_rate=0/0
    time_base=1/90000
    start_pts=899207032
    start_time=9991.189244
    duration_ts=N/A
    duration=N/A
    bit_rate=N/A
    max_bit_rate=N/A
    bits_per_raw_sample=N/A
    nb_frames=N/A
    nb_read_frames=N/A
    nb_read_packets=N/A
    DISPOSITION:default=0
    DISPOSITION:dub=0
    DISPOSITION:original=0
    DISPOSITION:comment=0
    DISPOSITION:lyrics=0
    DISPOSITION:karaoke=0
    DISPOSITION:forced=0
    DISPOSITION:hearing_impaired=0
    DISPOSITION:visual_impaired=0
    DISPOSITION:clean_effects=0
    DISPOSITION:attached_pic=0
    DISPOSITION:timed_thumbnails=0
    DISPOSITION:non_diegetic=0
    DISPOSITION:captions=0
    DISPOSITION:descriptions=0
    DISPOSITION:metadata=0
    DISPOSITION:dependent=0
    DISPOSITION:still_image=0
    TAG:variant_bitrate=2873200
    TAG:language=und
    [/STREAM]
    [STREAM]
    index=2
    codec_name=scte_35
    codec_long_name=SCTE 35 Message Queue
    profile=unknown
    codec_type=data
    codec_tag_string=[0][0][0][0]
    codec_tag=0x0000
    id=N/A
    r_frame_rate=0/0
    avg_frame_rate=0/0
    time_base=1/90000
    start_pts=N/A
    start_time=N/A
    duration_ts=N/A
    duration=N/A
    bit_rate=N/A
    max_bit_rate=N/A
    bits_per_raw_sample=N/A
    nb_frames=N/A
    nb_read_frames=N/A
    nb_read_packets=N/A
    DISPOSITION:default=0
    DISPOSITION:dub=0
    DISPOSITION:original=0
    DISPOSITION:comment=0
    DISPOSITION:lyrics=0
    DISPOSITION:karaoke=0
    DISPOSITION:forced=0
    DISPOSITION:hearing_impaired=0
    DISPOSITION:visual_impaired=0
    DISPOSITION:clean_effects=0
    DISPOSITION:attached_pic=0
    DISPOSITION:timed_thumbnails=0
    DISPOSITION:non_diegetic=0
    DISPOSITION:captions=0
    DISPOSITION:descriptions=0
    DISPOSITION:metadata=0
    DISPOSITION:dependent=0
    DISPOSITION:still_image=0
    TAG:variant_bitrate=2873200
    [/STREAM]
    [STREAM]
    index=3
    codec_name=timed_id3
    codec_long_name=timed ID3 metadata
    profile=unknown
    codec_type=data
    codec_tag_string=ID3
    codec_tag=0x20334449
    id=N/A
    r_frame_rate=0/0
    avg_frame_rate=0/0
    time_base=1/90000
    start_pts=N/A
    start_time=N/A
    duration_ts=N/A
    duration=N/A
    bit_rate=N/A
    max_bit_rate=N/A
    bits_per_raw_sample=N/A
    nb_frames=N/A
    nb_read_frames=N/A
    nb_read_packets=N/A
    DISPOSITION:default=0
    DISPOSITION:dub=0
    DISPOSITION:original=0
    DISPOSITION:comment=0
    DISPOSITION:lyrics=0
    DISPOSITION:karaoke=0
    DISPOSITION:forced=0
    DISPOSITION:hearing_impaired=0
    DISPOSITION:visual_impaired=0
    DISPOSITION:clean_effects=0
    DISPOSITION:attached_pic=0
    DISPOSITION:timed_thumbnails=0
    DISPOSITION:non_diegetic=0
    DISPOSITION:captions=0
    DISPOSITION:descriptions=0
    DISPOSITION:metadata=0
    DISPOSITION:dependent=0
    DISPOSITION:still_image=0
    TAG:variant_bitrate=2873200
    [/STREAM]
    [STREAM]
    index=4
    codec_name=h264
    codec_long_name=H.264 / AVC / MPEG-4 AVC / MPEG-4 part 10
    profile=Main
    codec_type=video
    codec_tag_string=[27][0][0][0]
    codec_tag=0x001b
    width=1024
    height=576
    coded_width=1024
    coded_height=576
    closed_captions=0
    film_grain=0
    has_b_frames=1
    sample_aspect_ratio=1:1
    display_aspect_ratio=16:9
    pix_fmt=yuv420p
    level=31
    color_range=tv
    color_space=bt709
    color_transfer=bt709
    color_primaries=bt709
    chroma_location=left
    field_order=unknown
    refs=1
    is_avc=false
    nal_length_size=0
    id=N/A
    r_frame_rate=25/1
    avg_frame_rate=25/1
    time_base=1/90000
    start_pts=899205232
    start_time=9991.169244
    duration_ts=N/A
    duration=N/A
    bit_rate=N/A
    max_bit_rate=N/A
    bits_per_raw_sample=8
    nb_frames=N/A
    nb_read_frames=N/A
    nb_read_packets=N/A
    extradata_size=53
    DISPOSITION:default=0
    DISPOSITION:dub=0
    DISPOSITION:original=0
    DISPOSITION:comment=0
    DISPOSITION:lyrics=0
    DISPOSITION:karaoke=0
    DISPOSITION:forced=0
    DISPOSITION:hearing_impaired=0
    DISPOSITION:visual_impaired=0
    DISPOSITION:clean_effects=0
    DISPOSITION:attached_pic=0
    DISPOSITION:timed_thumbnails=0
    DISPOSITION:non_diegetic=0
    DISPOSITION:captions=0
    DISPOSITION:descriptions=0
    DISPOSITION:metadata=0
    DISPOSITION:dependent=0
    DISPOSITION:still_image=0
    TAG:variant_bitrate=1828200
    [/STREAM]
    [STREAM]
    index=5
    codec_name=aac
    codec_long_name=AAC (Advanced Audio Coding)
    profile=LC
    codec_type=audio
    codec_tag_string=[15][0][0][0]
    codec_tag=0x000f
    sample_fmt=fltp
    sample_rate=48000
    channels=2
    channel_layout=stereo
    bits_per_sample=0
    initial_padding=0
    id=N/A
    r_frame_rate=0/0
    avg_frame_rate=0/0
    time_base=1/90000
    start_pts=899207032
    start_time=9991.189244
    duration_ts=N/A
    duration=N/A
    bit_rate=N/A
    max_bit_rate=N/A
    bits_per_raw_sample=N/A
    nb_frames=N/A
    nb_read_frames=N/A
    nb_read_packets=N/A
    DISPOSITION:default=0
    DISPOSITION:dub=0
    DISPOSITION:original=0
    DISPOSITION:comment=0
    DISPOSITION:lyrics=0
    DISPOSITION:karaoke=0
    DISPOSITION:forced=0
    DISPOSITION:hearing_impaired=0
    DISPOSITION:visual_impaired=0
    DISPOSITION:clean_effects=0
    DISPOSITION:attached_pic=0
    DISPOSITION:timed_thumbnails=0
    DISPOSITION:non_diegetic=0
    DISPOSITION:captions=0
    DISPOSITION:descriptions=0
    DISPOSITION:metadata=0
    DISPOSITION:dependent=0
    DISPOSITION:still_image=0
    TAG:variant_bitrate=1828200
    TAG:language=und
    [/STREAM]
    [STREAM]
    index=6
    codec_name=scte_35
    codec_long_name=SCTE 35 Message Queue
    profile=unknown
    codec_type=data
    codec_tag_string=[0][0][0][0]
    codec_tag=0x0000
    id=N/A
    r_frame_rate=0/0
    avg_frame_rate=0/0
    time_base=1/90000
    start_pts=N/A
    start_time=N/A
    duration_ts=N/A
    duration=N/A
    bit_rate=N/A
    max_bit_rate=N/A
    bits_per_raw_sample=N/A
    nb_frames=N/A
    nb_read_frames=N/A
    nb_read_packets=N/A
    DISPOSITION:default=0
    DISPOSITION:dub=0
    DISPOSITION:original=0
    DISPOSITION:comment=0
    DISPOSITION:lyrics=0
    DISPOSITION:karaoke=0
    DISPOSITION:forced=0
    DISPOSITION:hearing_impaired=0
    DISPOSITION:visual_impaired=0
    DISPOSITION:clean_effects=0
    DISPOSITION:attached_pic=0
    DISPOSITION:timed_thumbnails=0
    DISPOSITION:non_diegetic=0
    DISPOSITION:captions=0
    DISPOSITION:descriptions=0
    DISPOSITION:metadata=0
    DISPOSITION:dependent=0
    DISPOSITION:still_image=0
    TAG:variant_bitrate=1828200
    [/STREAM]
    [STREAM]
    index=7
    codec_name=timed_id3
    codec_long_name=timed ID3 metadata
    profile=unknown
    codec_type=data
    codec_tag_string=ID3
    codec_tag=0x20334449
    id=N/A
    r_frame_rate=0/0
    avg_frame_rate=0/0
    time_base=1/90000
    start_pts=899223232
    start_time=9991.369244
    duration_ts=N/A
    duration=N/A
    bit_rate=N/A
    max_bit_rate=N/A
    bits_per_raw_sample=N/A
    nb_frames=N/A
    nb_read_frames=N/A
    nb_read_packets=N/A
    DISPOSITION:default=0
    DISPOSITION:dub=0
    DISPOSITION:original=0
    DISPOSITION:comment=0
    DISPOSITION:lyrics=0
    DISPOSITION:karaoke=0
    DISPOSITION:forced=0
    DISPOSITION:hearing_impaired=0
    DISPOSITION:visual_impaired=0
    DISPOSITION:clean_effects=0
    DISPOSITION:attached_pic=0
    DISPOSITION:timed_thumbnails=0
    DISPOSITION:non_diegetic=0
    DISPOSITION:captions=0
    DISPOSITION:descriptions=0
    DISPOSITION:metadata=0
    DISPOSITION:dependent=0
    DISPOSITION:still_image=0
    TAG:variant_bitrate=1828200
    [/STREAM]
    [STREAM]
    index=8
    codec_name=h264
    codec_long_name=H.264 / AVC / MPEG-4 AVC / MPEG-4 part 10
    profile=Main
    codec_type=video
    codec_tag_string=[27][0][0][0]
    codec_tag=0x001b
    width=960
    height=540
    coded_width=960
    coded_height=540
    closed_captions=0
    film_grain=0
    has_b_frames=1
    sample_aspect_ratio=1:1
    display_aspect_ratio=16:9
    pix_fmt=yuv420p
    level=31
    color_range=tv
    color_space=bt709
    color_transfer=bt709
    color_primaries=bt709
    chroma_location=left
    field_order=unknown
    refs=1
    is_avc=false
    nal_length_size=0
    id=N/A
    r_frame_rate=25/1
    avg_frame_rate=25/1
    time_base=1/90000
    start_pts=899205232
    start_time=9991.169244
    duration_ts=N/A
    duration=N/A
    bit_rate=N/A
    max_bit_rate=N/A
    bits_per_raw_sample=8
    nb_frames=N/A
    nb_read_frames=N/A
    nb_read_packets=N/A
    extradata_size=52
    DISPOSITION:default=0
    DISPOSITION:dub=0
    DISPOSITION:original=0
    DISPOSITION:comment=0
    DISPOSITION:lyrics=0
    DISPOSITION:karaoke=0
    DISPOSITION:forced=0
    DISPOSITION:hearing_impaired=0
    DISPOSITION:visual_impaired=0
    DISPOSITION:clean_effects=0
    DISPOSITION:attached_pic=0
    DISPOSITION:timed_thumbnails=0
    DISPOSITION:non_diegetic=0
    DISPOSITION:captions=0
    DISPOSITION:descriptions=0
    DISPOSITION:metadata=0
    DISPOSITION:dependent=0
    DISPOSITION:still_image=0
    TAG:variant_bitrate=1504800
    [/STREAM]
    [STREAM]
    index=9
    codec_name=aac
    codec_long_name=AAC (Advanced Audio Coding)
    profile=LC
    codec_type=audio
    codec_tag_string=[15][0][0][0]
    codec_tag=0x000f
    sample_fmt=fltp
    sample_rate=48000
    channels=2
    channel_layout=stereo
    bits_per_sample=0
    initial_padding=0
    id=N/A
    r_frame_rate=0/0
    avg_frame_rate=0/0
    time_base=1/90000
    start_pts=899207032
    start_time=9991.189244
    duration_ts=N/A
    duration=N/A
    bit_rate=N/A
    max_bit_rate=N/A
    bits_per_raw_sample=N/A
    nb_frames=N/A
    nb_read_frames=N/A
    nb_read_packets=N/A
    DISPOSITION:default=0
    DISPOSITION:dub=0
    DISPOSITION:original=0
    DISPOSITION:comment=0
    DISPOSITION:lyrics=0
    DISPOSITION:karaoke=0
    DISPOSITION:forced=0
    DISPOSITION:hearing_impaired=0
    DISPOSITION:visual_impaired=0
    DISPOSITION:clean_effects=0
    DISPOSITION:attached_pic=0
    DISPOSITION:timed_thumbnails=0
    DISPOSITION:non_diegetic=0
    DISPOSITION:captions=0
    DISPOSITION:descriptions=0
    DISPOSITION:metadata=0
    DISPOSITION:dependent=0
    DISPOSITION:still_image=0
    TAG:variant_bitrate=1504800
    TAG:language=und
    [/STREAM]
    [STREAM]
    index=10
    codec_name=scte_35
    codec_long_name=SCTE 35 Message Queue
    profile=unknown
    codec_type=data
    codec_tag_string=[0][0][0][0]
    codec_tag=0x0000
    id=N/A
    r_frame_rate=0/0
    avg_frame_rate=0/0
    time_base=1/90000
    start_pts=N/A
    start_time=N/A
    duration_ts=N/A
    duration=N/A
    bit_rate=N/A
    max_bit_rate=N/A
    bits_per_raw_sample=N/A
    nb_frames=N/A
    nb_read_frames=N/A
    nb_read_packets=N/A
    DISPOSITION:default=0
    DISPOSITION:dub=0
    DISPOSITION:original=0
    DISPOSITION:comment=0
    DISPOSITION:lyrics=0
    DISPOSITION:karaoke=0
    DISPOSITION:forced=0
    DISPOSITION:hearing_impaired=0
    DISPOSITION:visual_impaired=0
    DISPOSITION:clean_effects=0
    DISPOSITION:attached_pic=0
    DISPOSITION:timed_thumbnails=0
    DISPOSITION:non_diegetic=0
    DISPOSITION:captions=0
    DISPOSITION:descriptions=0
    DISPOSITION:metadata=0
    DISPOSITION:dependent=0
    DISPOSITION:still_image=0
    TAG:variant_bitrate=1504800
    [/STREAM]
    [STREAM]
    index=11
    codec_name=timed_id3
    codec_long_name=timed ID3 metadata
    profile=unknown
    codec_type=data
    codec_tag_string=ID3
    codec_tag=0x20334449
    id=N/A
    r_frame_rate=0/0
    avg_frame_rate=0/0
    time_base=1/90000
    start_pts=899223232
    start_time=9991.369244
    duration_ts=N/A
    duration=N/A
    bit_rate=N/A
    max_bit_rate=N/A
    bits_per_raw_sample=N/A
    nb_frames=N/A
    nb_read_frames=N/A
    nb_read_packets=N/A
    DISPOSITION:default=0
    DISPOSITION:dub=0
    DISPOSITION:original=0
    DISPOSITION:comment=0
    DISPOSITION:lyrics=0
    DISPOSITION:karaoke=0
    DISPOSITION:forced=0
    DISPOSITION:hearing_impaired=0
    DISPOSITION:visual_impaired=0
    DISPOSITION:clean_effects=0
    DISPOSITION:attached_pic=0
    DISPOSITION:timed_thumbnails=0
    DISPOSITION:non_diegetic=0
    DISPOSITION:captions=0
    DISPOSITION:descriptions=0
    DISPOSITION:metadata=0
    DISPOSITION:dependent=0
    DISPOSITION:still_image=0
    TAG:variant_bitrate=1504800
    [/STREAM]
    [FORMAT]
    filename=https://i.mjh.nz/10bold-sa.m3u8
    nb_streams=12
    nb_programs=3
    format_name=hls
    format_long_name=Apple HTTP Live Streaming
    start_time=9991.169244
    duration=N/A
    size=1320
    bit_rate=N/A
    probe_score=100
    [/FORMAT]

    Trying to open the m3u8 link (https://i.mjh.nz/10bold-sa.m3u8) in VLC appears to be a fools errand as VLC spits the dummy the same way ffprobe does returning a 404. Opening the link in a browser however and feeding the downloaded m3u8 file to Windows Media Player (the new one on Windows 10 not the old one that existed in 7) it is able to stream no problem. VLC will still not open this m3u8 file. Drilling down into the file we see that it is multi-resolution and drilling down into one of those links we find multiple .ts streams with associated key files:

    https://i.mjh.nz/10bold-sa.m3u8 m3u8 file:
    Code:
    #EXTM3U
    #EXT-X-VERSION:3
    #EXT-X-INDEPENDENT-SEGMENTS

    #EXT-X-STREAM-INF:BANDWIDTH=2873200,AVERAGE-BANDWIDTH=2961200,CODECS="avc1.4d401f,mp4a.40.2",RESOLUTION=1280x720,FRAME-RATE=25.000,SUBTITLES="subs"
    https://dai.google.com/linear/hls/pb/event/uaOe3c3CTWSMacikv1mV2g/stream/f3ba01e3-1cad-47e9-87fc-48bae6dbbaba:TPE/variant/ad17b9e2fc6d43b49162adf3af4d518a/bandwidth/2873200.m3u8
    #EXT-X-STREAM-INF:BANDWIDTH=1828200,AVERAGE-BANDWIDTH=1861200,CODECS="avc1.4d401f,mp4a.40.2",RESOLUTION=1024x576,FRAME-RATE=25.000,SUBTITLES="subs"
    https://dai.google.com/linear/hls/pb/event/uaOe3c3CTWSMacikv1mV2g/stream/f3ba01e3-1cad-47e9-87fc-48bae6dbbaba:TPE/variant/34594be309d8a2189f08473c69289ffc/bandwidth/1828200.m3u8
    #EXT-X-STREAM-INF:BANDWIDTH=1504800,AVERAGE-BANDWIDTH=1531200,CODECS="avc1.4d401f,mp4a.40.2",RESOLUTION=960x540,FRAME-RATE=25.000,SUBTITLES="subs"
    https://dai.google.com/linear/hls/pb/event/uaOe3c3CTWSMacikv1mV2g/stream/f3ba01e3-1cad-47e9-87fc-48bae6dbbaba:TPE/variant/7bc1d381422a6cff33d25301d23f2b4c/bandwidth/1504800.m3u8
    #EXT-X-MEDIA:TYPE=SUBTITLES,NAME="English",DEFAULT=NO,AUTOSELECT=NO,FORCED=NO,LANGUAGE="eng",GROUP-ID="subs",URI="https://dai.google.com/linear/hls/pb/event/uaOe3c3CTWSMacikv1mV2g/stream/f3ba01e3-1cad-47e9-87fc-48bae6dbbaba:TPE/variant/4d1b61dd17691d3956f6b323feb066c4/bandwidth/000.m3u8"

    Excerpt from the 1280x720 m3u8 file:
    Code:
    #EXT-X-KEY:METHOD=AES-128,URI="https://net10-livestream-keys.play.cbsi.video/10BoldSA/key/K65800.key",IV=0x0000000000000000000000000001010D
    #EXTINF:6.00000,
    https://net10-livestream.play.cbsi.video/10BoldSA/stream420240305T101744_65805.ts

    I am at a loss for how to proceed as modifying the ffprobe/ffmpeg programming in my Jellyfin instance is a bit beyond me (I don't know where to look, if I am pointed in the right direction I can probably figure it out). 

    I was warned that this could be considered an attempt to circumvent DRM, it is not. Recording free to air TV is legal in Australia and this channel is a Free to air channel. The fact I can stream it in Jellyfin live I think shows how we are not circumventing DRM but fixing an issue with ffprobe/ffmpeg's stream interpretation/management.

    Any help would be greatly appreciated

    Log of Jellyfin attempting to record:
    Code:
    [2024-03-05 09:43:06.080 +00:00] [DBG] [61] Emby.Server.Implementations.LiveTv.LiveTvMediaSourceProvider: MediaSources: [MediaSourceInfo { Protocol: Http, Id: "2b9fbe6b3f1c32692733c1cc2d3e5e08", Path: "https://i.mjh.nz/10bold-sa.m3u8", EncoderPath: null, EncoderProtocol: null, Type: Default, Container: null, Size: null, Name: null, IsRemote: True, ETag: null, RunTimeTicks: null, ReadAtNativeFramerate: False, IgnoreDts: True, IgnoreIndex: False, GenPtsInput: False, SupportsTranscoding: True, SupportsDirectStream: True, SupportsDirectPlay: True, IsInfiniteStream: True, RequiresOpening: True, OpenToken: "LiveTvChannel_b1296ce0d17a17abee829599d4fd1b1b_2b9fbe6b3f1c32692733c1cc2d3e5e08", RequiresClosing: True, LiveStreamId: null, BufferMs: 1500, RequiresLooping: False, SupportsProbing: True, VideoType: null, IsoType: null, Video3DFormat: null, MediaStreams: [MediaStream { Codec: null, CodecTag: null, Language: null, ColorRange: null, ColorSpace: null, ColorTransfer: null, ColorPrimaries: null, DvVersionMajor: null, DvVersionMinor: null, DvProfile: null, DvLevel: null, RpuPresentFlag: null, ElPresentFlag: null, BlPresentFlag: null, DvBlSignalCompatibilityId: null, Comment: null, TimeBase: null, CodecTimeBase: null, Title: null, VideoRange: "SDR", VideoRangeType: "SDR", VideoDoViTitle: null, LocalizedUndefined: null, LocalizedDefault: null, LocalizedForced: null, LocalizedExternal: null, DisplayTitle: "SDR", NalLengthSize: null, IsInterlaced: True, IsAVC: null, ChannelLayout: null, BitRate: null, BitDepth: null, RefFrames: null, PacketLength: null, Channels: null, SampleRate: null, IsDefault: False, IsForced: False, Height: null, Width: null, AverageFrameRate: null, RealFrameRate: null, Profile: null, Type: Video, AspectRatio: null, Index: -1, Score: null, IsExternal: False, DeliveryMethod: null, DeliveryUrl: null, IsExternalUrl: null, IsTextSubtitleStream: False, SupportsExternalStream: False, Path: null, PixelFormat: null, Level: null, IsAnamorphic: null }, MediaStream { Codec: null, CodecTag: null, Language: null, ColorRange: null, ColorSpace: null, ColorTransfer: null, ColorPrimaries: null, DvVersionMajor: null, DvVersionMinor: null, DvProfile: null, DvLevel: null, RpuPresentFlag: null, ElPresentFlag: null, BlPresentFlag: null, DvBlSignalCompatibilityId: null, Comment: null, TimeBase: null, CodecTimeBase: null, Title: null, VideoRange: null, VideoRangeType: null, VideoDoViTitle: null, LocalizedUndefined: null, LocalizedDefault: null, LocalizedForced: null, LocalizedExternal: null, DisplayTitle: "", NalLengthSize: null, IsInterlaced: False, IsAVC: null, ChannelLayout: null, BitRate: null, BitDepth: null, RefFrames: null, PacketLength: null, Channels: null, SampleRate: null, IsDefault: False, IsForced: False, Height: null, Width: null, AverageFrameRate: null, RealFrameRate: null, Profile: null, Type: Audio, AspectRatio: null, Index: -1, Score: null, IsExternal: False, DeliveryMethod: null, DeliveryUrl: null, IsExternalUrl: null, IsTextSubtitleStream: False, SupportsExternalStream: False, Path: null, PixelFormat: null, Level: null, IsAnamorphic: null }], MediaAttachments: [], Formats: [], Bitrate: null, Timestamp: null, RequiredHttpHeaders: [("User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/64.0.3282.85 Safari/537.36")], TranscodingUrl: null, TranscodingSubProtocol: null, TranscodingContainer: null, AnalyzeDurationMs: null, TranscodeReasons: 0, DefaultAudioStreamIndex: null, DefaultSubtitleStreamIndex: null, VideoStream: MediaStream { Codec: null, CodecTag: null, Language: null, ColorRange: null, ColorSpace: null, ColorTransfer: null, ColorPrimaries: null, DvVersionMajor: null, DvVersionMinor: null, DvProfile: null, DvLevel: null, RpuPresentFlag: null, ElPresentFlag: null, BlPresentFlag: null, DvBlSignalCompatibilityId: null, Comment: null, TimeBase: null, CodecTimeBase: null, Title: null, VideoRange: "SDR", VideoRangeType: "SDR", VideoDoViTitle: null, LocalizedUndefined: null, LocalizedDefault: null, LocalizedForced: null, LocalizedExternal: null, DisplayTitle: "SDR", NalLengthSize: null, IsInterlaced: True, IsAVC: null, ChannelLayout: null, BitRate: null, BitDepth: null, RefFrames: null, PacketLength: null, Channels: null, SampleRate: null, IsDefault: False, IsForced: False, Height: null, Width: null, AverageFrameRate: null, RealFrameRate: null, Profile: null, Type: Video, AspectRatio: null, Index: -1, Score: null, IsExternal: False, DeliveryMethod: null, DeliveryUrl: null, IsExternalUrl: null, IsTextSubtitleStream: False, SupportsExternalStream: False, Path: null, PixelFormat: null, Level: null, IsAnamorphic: null } }]
    [2024-03-05 09:43:06.080 +00:00] [INF] [61] Jellyfin.Api.Helpers.MediaInfoHelper: User policy for "generically_named". EnablePlaybackRemuxing: True EnableVideoPlaybackTranscoding: True EnableAudioPlaybackTranscoding: True
    [2024-03-05 09:43:06.081 +00:00] [DBG] [61] Jellyfin.Api.Helpers.MediaInfoHelper: Profile: "Jellyfin Media Player", Path: "https://i.mjh.nz/10bold-sa.m3u8", isEligibleForDirectPlay: True, isEligibleForDirectStream: False
    [2024-03-05 09:43:06.081 +00:00] [DBG] [61] Jellyfin.Api.Helpers.MediaInfoHelper: DirectPlay Result for Profile: "Jellyfin Media Player", Path: "https://i.mjh.nz/10bold-sa.m3u8", PlayMethod: DirectPlay, AudioStreamIndex: -1, SubtitleStreamIndex: null, Reasons: 0
    [2024-03-05 09:43:06.081 +00:00] [INF] [61] Jellyfin.Api.Helpers.MediaInfoHelper: StreamBuilder.BuildVideoItem( Profile="Jellyfin Media Player", Path="https://i.mjh.nz/10bold-sa.m3u8", AudioStreamIndex=null, SubtitleStreamIndex=null ) => ( PlayMethod=DirectPlay, TranscodeReason=0 ) "media:/videos/b1296ce0-d17a-17ab-ee82-9599d4fd1b1b/stream?MediaSourceId=2b9fbe6b3f1c32692733c1cc2d3e5e08&Static=true&AudioStreamIndex=-1&api_key=<token>"
    [2024-03-05 09:43:06.082 +00:00] [INF] [61] Emby.Server.Implementations.LiveTv.LiveTvManager: Opening channel stream from "Emby", external channel Id: "m3u_464db0b32520b55ea9ab3e05f8566404967b61a25cb0f43eef9c0e7a8d05d2a9"
    [2024-03-05 09:43:06.083 +00:00] [INF] [61] Emby.Server.Implementations.LiveTv.EmbyTV.EmbyTV: Streaming Channel "m3u_464db0b32520b55ea9ab3e05f8566404967b61a25cb0f43eef9c0e7a8d05d2a9"
    [2024-03-05 09:43:06.084 +00:00] [INF] [61] Emby.Server.Implementations.LiveTv.TunerHosts.M3UTunerHost: Live stream opened after 0.0008ms
    [2024-03-05 09:43:06.084 +00:00] [INF] [61] Emby.Server.Implementations.LiveTv.EmbyTV.EmbyTV: Returning mediasource streamId "2b9fbe6b3f1c32692733c1cc2d3e5e08", mediaSource.Id "2b9fbe6b3f1c32692733c1cc2d3e5e08", mediaSource.LiveStreamId null
    [2024-03-05 09:43:06.084 +00:00] [INF] [61] Emby.Server.Implementations.Library.MediaSourceManager: Waiting 3000ms before probing the live stream
    [2024-03-05 09:43:09.084 +00:00] [INF] [61] MediaBrowser.MediaEncoding.Encoder.MediaEncoder: "/usr/lib/jellyfin-ffmpeg/ffprobe" "-analyzeduration 3000000 -i \"https://i.mjh.nz/10bold-sa.m3u8\" -threads 0 -v warning -print_format json -show_streams -show_format"
    [2024-03-05 09:43:09.084 +00:00] [DBG] [61] MediaBrowser.MediaEncoding.Encoder.MediaEncoder: Starting ffprobe with args "-analyzeduration 3000000 -i \"https://i.mjh.nz/10bold-sa.m3u8\" -threads 0 -v warning -print_format json -show_streams -show_format"
    [2024-03-05 09:43:10.830 +00:00] [ERR] [84] Emby.Server.Implementations.Library.MediaSourceManager: Error probing live tv stream
    MediaBrowser.Common.FfmpegException: ffprobe failed - streams and format are both null.
      at MediaBrowser.MediaEncoding.Encoder.MediaEncoder.GetMediaInfoInternal(String inputPath, String primaryPath, MediaProtocol protocol, Boolean extractChapters, String probeSizeArgument, Boolean isAudio, Nullable`1 videoType, Boolean forceEnableLogging, CancellationToken cancellationToken)
      at MediaBrowser.MediaEncoding.Encoder.MediaEncoder.GetMediaInfoInternal(String inputPath, String primaryPath, MediaProtocol protocol, Boolean extractChapters, String probeSizeArgument, Boolean isAudio, Nullable`1 videoType, Boolean forceEnableLogging, CancellationToken cancellationToken)
      at Emby.Server.Implementations.Library.LiveStreamHelper.AddMediaInfoWithProbe(MediaSourceInfo mediaSource, Boolean isAudio, String cacheKey, Boolean addProbeDelay, CancellationToken cancellationToken)
      at Emby.Server.Implementations.Library.MediaSourceManager.OpenLiveStreamInternal(LiveStreamRequest request, CancellationToken cancellationToken)

    Log of me streaming that same channel:
    Code:
    [2024-03-05 10:21:04.397 +00:00] [DBG] [196] Emby.Server.Implementations.LiveTv.LiveTvMediaSourceProvider: MediaSources: [MediaSourceInfo { Protocol: Http, Id: "2b9fbe6b3f1c32692733c1cc2d3e5e08", Path: "https://i.mjh.nz/10bold-sa.m3u8", EncoderPath: null, EncoderProtocol: null, Type: Default, Container: null, Size: null, Name: null, IsRemote: True, ETag: null, RunTimeTicks: null, ReadAtNativeFramerate: False, IgnoreDts: True, IgnoreIndex: False, GenPtsInput: False, SupportsTranscoding: True, SupportsDirectStream: True, SupportsDirectPlay: True, IsInfiniteStream: True, RequiresOpening: True, OpenToken: "LiveTvChannel_b1296ce0d17a17abee829599d4fd1b1b_2b9fbe6b3f1c32692733c1cc2d3e5e08", RequiresClosing: True, LiveStreamId: null, BufferMs: 1500, RequiresLooping: False, SupportsProbing: True, VideoType: null, IsoType: null, Video3DFormat: null, MediaStreams: [MediaStream { Codec: null, CodecTag: null, Language: null, ColorRange: null, ColorSpace: null, ColorTransfer: null, ColorPrimaries: null, DvVersionMajor: null, DvVersionMinor: null, DvProfile: null, DvLevel: null, RpuPresentFlag: null, ElPresentFlag: null, BlPresentFlag: null, DvBlSignalCompatibilityId: null, Comment: null, TimeBase: null, CodecTimeBase: null, Title: null, VideoRange: "SDR", VideoRangeType: "SDR", VideoDoViTitle: null, LocalizedUndefined: null, LocalizedDefault: null, LocalizedForced: null, LocalizedExternal: null, DisplayTitle: "SDR", NalLengthSize: null, IsInterlaced: True, IsAVC: null, ChannelLayout: null, BitRate: null, BitDepth: null, RefFrames: null, PacketLength: null, Channels: null, SampleRate: null, IsDefault: False, IsForced: False, Height: null, Width: null, AverageFrameRate: null, RealFrameRate: null, Profile: null, Type: Video, AspectRatio: null, Index: -1, Score: null, IsExternal: False, DeliveryMethod: null, DeliveryUrl: null, IsExternalUrl: null, IsTextSubtitleStream: False, SupportsExternalStream: False, Path: null, PixelFormat: null, Level: null, IsAnamorphic: null }, MediaStream { Codec: null, CodecTag: null, Language: null, ColorRange: null, ColorSpace: null, ColorTransfer: null, ColorPrimaries: null, DvVersionMajor: null, DvVersionMinor: null, DvProfile: null, DvLevel: null, RpuPresentFlag: null, ElPresentFlag: null, BlPresentFlag: null, DvBlSignalCompatibilityId: null, Comment: null, TimeBase: null, CodecTimeBase: null, Title: null, VideoRange: null, VideoRangeType: null, VideoDoViTitle: null, LocalizedUndefined: null, LocalizedDefault: null, LocalizedForced: null, LocalizedExternal: null, DisplayTitle: "", NalLengthSize: null, IsInterlaced: False, IsAVC: null, ChannelLayout: null, BitRate: null, BitDepth: null, RefFrames: null, PacketLength: null, Channels: null, SampleRate: null, IsDefault: False, IsForced: False, Height: null, Width: null, AverageFrameRate: null, RealFrameRate: null, Profile: null, Type: Audio, AspectRatio: null, Index: -1, Score: null, IsExternal: False, DeliveryMethod: null, DeliveryUrl: null, IsExternalUrl: null, IsTextSubtitleStream: False, SupportsExternalStream: False, Path: null, PixelFormat: null, Level: null, IsAnamorphic: null }], MediaAttachments: [], Formats: [], Bitrate: null, Timestamp: null, RequiredHttpHeaders: [("User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/64.0.3282.85 Safari/537.36")], TranscodingUrl: null, TranscodingSubProtocol: null, TranscodingContainer: null, AnalyzeDurationMs: null, TranscodeReasons: 0, DefaultAudioStreamIndex: null, DefaultSubtitleStreamIndex: null, VideoStream: MediaStream { Codec: null, CodecTag: null, Language: null, ColorRange: null, ColorSpace: null, ColorTransfer: null, ColorPrimaries: null, DvVersionMajor: null, DvVersionMinor: null, DvProfile: null, DvLevel: null, RpuPresentFlag: null, ElPresentFlag: null, BlPresentFlag: null, DvBlSignalCompatibilityId: null, Comment: null, TimeBase: null, CodecTimeBase: null, Title: null, VideoRange: "SDR", VideoRangeType: "SDR", VideoDoViTitle: null, LocalizedUndefined: null, LocalizedDefault: null, LocalizedForced: null, LocalizedExternal: null, DisplayTitle: "SDR", NalLengthSize: null, IsInterlaced: True, IsAVC: null, ChannelLayout: null, BitRate: null, BitDepth: null, RefFrames: null, PacketLength: null, Channels: null, SampleRate: null, IsDefault: False, IsForced: False, Height: null, Width: null, AverageFrameRate: null, RealFrameRate: null, Profile: null, Type: Video, AspectRatio: null, Index: -1, Score: null, IsExternal: False, DeliveryMethod: null, DeliveryUrl: null, IsExternalUrl: null, IsTextSubtitleStream: False, SupportsExternalStream: False, Path: null, PixelFormat: null, Level: null, IsAnamorphic: null } }]
    [2024-03-05 10:21:04.398 +00:00] [INF] [196] Jellyfin.Api.Helpers.MediaInfoHelper: User policy for "generically_named". EnablePlaybackRemuxing: True EnableVideoPlaybackTranscoding: True EnableAudioPlaybackTranscoding: True
    [2024-03-05 10:21:04.398 +00:00] [DBG] [196] Jellyfin.Api.Helpers.MediaInfoHelper: Profile: "Unknown Profile", Path: "https://i.mjh.nz/10bold-sa.m3u8", isEligibleForDirectPlay: True, isEligibleForDirectStream: False
    [2024-03-05 10:21:04.398 +00:00] [DBG] [196] Jellyfin.Api.Helpers.MediaInfoHelper: DirectPlay Result for Profile: "Anonymous Profile", Path: "https://i.mjh.nz/10bold-sa.m3u8", PlayMethod: null, AudioStreamIndex: -1, SubtitleStreamIndex: null, Reasons: ContainerNotSupported, VideoCodecNotSupported, AudioCodecNotSupported
    [2024-03-05 10:21:04.398 +00:00] [DBG] [196] Jellyfin.Api.Helpers.MediaInfoHelper: Transcode Result for Profile: "Anonymous Profile", Path: "https://i.mjh.nz/10bold-sa.m3u8", PlayMethod: Transcode, AudioStreamIndex: -1, SubtitleStreamIndex: null, Reasons: ContainerNotSupported, VideoCodecNotSupported, AudioCodecNotSupported
    [2024-03-05 10:21:04.399 +00:00] [INF] [196] Jellyfin.Api.Helpers.MediaInfoHelper: StreamBuilder.BuildVideoItem( Profile="Anonymous Profile", Path="https://i.mjh.nz/10bold-sa.m3u8", AudioStreamIndex=null, SubtitleStreamIndex=null ) => ( PlayMethod=Transcode, TranscodeReason=ContainerNotSupported, VideoCodecNotSupported, AudioCodecNotSupported ) "media:/videos/b1296ce0-d17a-17ab-ee82-9599d4fd1b1b/master.m3u8?MediaSourceId=2b9fbe6b3f1c32692733c1cc2d3e5e08&VideoCodec=h264&AudioCodec=aac,mp3&AudioStreamIndex=-1&VideoBitrate=59616000&AudioBitrate=384000&api_key=<token>&TranscodingMaxAudioChannels=2&RequireAvc=false&SegmentContainer=ts&MinSegments=1&BreakOnNonKeyFrames=True&TranscodeReasons=ContainerNotSupported,%20VideoCodecNotSupported,%20AudioCodecNotSupported"
    [2024-03-05 10:21:04.400 +00:00] [INF] [196] Emby.Server.Implementations.LiveTv.LiveTvManager: Opening channel stream from "Emby", external channel Id: "m3u_464db0b32520b55ea9ab3e05f8566404967b61a25cb0f43eef9c0e7a8d05d2a9"
    [2024-03-05 10:21:04.400 +00:00] [INF] [196] Emby.Server.Implementations.LiveTv.EmbyTV.EmbyTV: Streaming Channel "m3u_464db0b32520b55ea9ab3e05f8566404967b61a25cb0f43eef9c0e7a8d05d2a9"
    [2024-03-05 10:21:04.402 +00:00] [INF] [196] Emby.Server.Implementations.LiveTv.TunerHosts.M3UTunerHost: Live stream opened after 0.0009ms
    [2024-03-05 10:21:04.402 +00:00] [INF] [196] Emby.Server.Implementations.LiveTv.EmbyTV.EmbyTV: Returning mediasource streamId "2b9fbe6b3f1c32692733c1cc2d3e5e08", mediaSource.Id "2b9fbe6b3f1c32692733c1cc2d3e5e08", mediaSource.LiveStreamId null
    [2024-03-05 10:21:04.403 +00:00] [INF] [196] Emby.Server.Implementations.Library.MediaSourceManager: Waiting 3000ms before probing the live stream
    [2024-03-05 10:21:07.403 +00:00] [INF] [107] MediaBrowser.MediaEncoding.Encoder.MediaEncoder: "/usr/lib/jellyfin-ffmpeg/ffprobe" "-analyzeduration 3000000 -i \"https://i.mjh.nz/10bold-sa.m3u8\" -threads 0 -v warning -print_format json -show_streams -show_format"
    [2024-03-05 10:21:07.403 +00:00] [DBG] [107] MediaBrowser.MediaEncoding.Encoder.MediaEncoder: Starting ffprobe with args "-analyzeduration 3000000 -i \"https://i.mjh.nz/10bold-sa.m3u8\" -threads 0 -v warning -print_format json -show_streams -show_format"
    [2024-03-05 10:21:08.121 +00:00] [DBG] [133] Emby.Server.Implementations.HttpServer.WebSocketConnection: WS "REDACTED_CLIENT_IP" received message: WebSocketMessage`1 { MessageType: KeepAlive, MessageId: 00000000-0000-0000-0000-000000000000, ServerId: null, Data: null }
    [2024-03-05 10:21:09.452 +00:00] [ERR] [196] Emby.Server.Implementations.Library.MediaSourceManager: Error probing live tv stream
    MediaBrowser.Common.FfmpegException: ffprobe failed - streams and format are both null.
      at MediaBrowser.MediaEncoding.Encoder.MediaEncoder.GetMediaInfoInternal(String inputPath, String primaryPath, MediaProtocol protocol, Boolean extractChapters, String probeSizeArgument, Boolean isAudio, Nullable`1 videoType, Boolean forceEnableLogging, CancellationToken cancellationToken)
      at MediaBrowser.MediaEncoding.Encoder.MediaEncoder.GetMediaInfoInternal(String inputPath, String primaryPath, MediaProtocol protocol, Boolean extractChapters, String probeSizeArgument, Boolean isAudio, Nullable`1 videoType, Boolean forceEnableLogging, CancellationToken cancellationToken)
      at Emby.Server.Implementations.Library.LiveStreamHelper.AddMediaInfoWithProbe(MediaSourceInfo mediaSource, Boolean isAudio, String cacheKey, Boolean addProbeDelay, CancellationToken cancellationToken)
      at Emby.Server.Implementations.Library.MediaSourceManager.OpenLiveStreamInternal(LiveStreamRequest request, CancellationToken cancellationToken)
    [2024-03-05 10:21:09.453 +00:00] [INF] [196] Emby.Server.Implementations.Library.MediaSourceManager: Live stream opened: MediaSourceInfo { Protocol: Http, Id: "2b9fbe6b3f1c32692733c1cc2d3e5e08", Path: "https://i.mjh.nz/10bold-sa.m3u8", EncoderPath: null, EncoderProtocol: null, Type: Default, Container: null, Size: null, Name: null, IsRemote: True, ETag: null, RunTimeTicks: null, ReadAtNativeFramerate: False, IgnoreDts: True, IgnoreIndex: False, GenPtsInput: False, SupportsTranscoding: True, SupportsDirectStream: False, SupportsDirectPlay: True, IsInfiniteStream: True, RequiresOpening: True, OpenToken: null, RequiresClosing: True, LiveStreamId: "a17c75760a04e99b68cf766e11316e1c_09efa0d56b934a82adec00a87b837fb0_2b9fbe6b3f1c32692733c1cc2d3e5e08", BufferMs: null, RequiresLooping: False, SupportsProbing: True, VideoType: null, IsoType: null, Video3DFormat: null, MediaStreams: [MediaStream { Codec: null, CodecTag: null, Language: null, ColorRange: null, ColorSpace: null, ColorTransfer: null, ColorPrimaries: null, DvVersionMajor: null, DvVersionMinor: null, DvProfile: null, DvLevel: null, RpuPresentFlag: null, ElPresentFlag: null, BlPresentFlag: null, DvBlSignalCompatibilityId: null, Comment: null, TimeBase: null, CodecTimeBase: null, Title: null, VideoRange: "SDR", VideoRangeType: "SDR", VideoDoViTitle: null, LocalizedUndefined: null, LocalizedDefault: null, LocalizedForced: null, LocalizedExternal: null, DisplayTitle: "SDR", NalLengthSize: null, IsInterlaced: True, IsAVC: null, ChannelLayout: null, BitRate: 20000000, BitDepth: null, RefFrames: null, PacketLength: null, Channels: null, SampleRate: null, IsDefault: False, IsForced: False, Height: null, Width: null, AverageFrameRate: null, RealFrameRate: null, Profile: null, Type: Video, AspectRatio: null, Index: -1, Score: null, IsExternal: False, DeliveryMethod: null, DeliveryUrl: null, IsExternalUrl: null, IsTextSubtitleStream: False, SupportsExternalStream: False, Path: null, PixelFormat: null, Level: null, IsAnamorphic: null }, MediaStream { Codec: null, CodecTag: null, Language: null, ColorRange: null, ColorSpace: null, ColorTransfer: null, ColorPrimaries: null, DvVersionMajor: null, DvVersionMinor: null, DvProfile: null, DvLevel: null, RpuPresentFlag: null, ElPresentFlag: null, BlPresentFlag: null, DvBlSignalCompatibilityId: null, Comment: null, TimeBase: null, CodecTimeBase: null, Title: null, VideoRange: null, VideoRangeType: null, VideoDoViTitle: null, LocalizedUndefined: null, LocalizedDefault: null, LocalizedForced: null, LocalizedExternal: null, DisplayTitle: "", NalLengthSize: null, IsInterlaced: False, IsAVC: null, ChannelLayout: null, BitRate: null, BitDepth: null, RefFrames: null, PacketLength: null, Channels: null, SampleRate: null, IsDefault: False, IsForced: False, Height: null, Width: null, AverageFrameRate: null, RealFrameRate: null, Profile: null, Type: Audio, AspectRatio: null, Index: -1, Score: null, IsExternal: False, DeliveryMethod: null, DeliveryUrl: null, IsExternalUrl: null, IsTextSubtitleStream: False, SupportsExternalStream: False, Path: null, PixelFormat: null, Level: null, IsAnamorphic: null }], MediaAttachments: [], Formats: [], Bitrate: 20000000, Timestamp: null, RequiredHttpHeaders: [("User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/64.0.3282.85 Safari/537.36")], TranscodingUrl: null, TranscodingSubProtocol: null, TranscodingContainer: null, AnalyzeDurationMs: 3000, TranscodeReasons: 0, DefaultAudioStreamIndex: null, DefaultSubtitleStreamIndex: null, VideoStream: MediaStream { Codec: null, CodecTag: null, Language: null, ColorRange: null, ColorSpace: null, ColorTransfer: null, ColorPrimaries: null, DvVersionMajor: null, DvVersionMinor: null, DvProfile: null, DvLevel: null, RpuPresentFlag: null, ElPresentFlag: null, BlPresentFlag: null, DvBlSignalCompatibilityId: null, Comment: null, TimeBase: null, CodecTimeBase: null, Title: null, VideoRange: "SDR", VideoRangeType: "SDR", VideoDoViTitle: null, LocalizedUndefined: null, LocalizedDefault: null, LocalizedForced: null, LocalizedExternal: null, DisplayTitle: "SDR", NalLengthSize: null, IsInterlaced: True, IsAVC: null, ChannelLayout: null, BitRate: 20000000, BitDepth: null, RefFrames: null, PacketLength: null, Channels: null, SampleRate: null, IsDefault: False, IsForced: False, Height: null, Width: null, AverageFrameRate: null, RealFrameRate: null, Profile: null, Type: Video, AspectRatio: null, Index: -1, Score: null, IsExternal: False, DeliveryMethod: null, DeliveryUrl: null, IsExternalUrl: null, IsTextSubtitleStream: False, SupportsExternalStream: False, Path: null, PixelFormat: null, Level: null, IsAnamorphic: null } }
    [2024-03-05 10:21:09.453 +00:00] [INF] [196] Jellyfin.Api.Helpers.MediaInfoHelper: User policy for "generically_named". EnablePlaybackRemuxing: True EnableVideoPlaybackTranscoding: True EnableAudioPlaybackTranscoding: True
    [2024-03-05 10:21:09.453 +00:00] [DBG] [196] Jellyfin.Api.Helpers.MediaInfoHelper: Profile: "Unknown Profile", Path: "https://i.mjh.nz/10bold-sa.m3u8", isEligibleForDirectPlay: True, isEligibleForDirectStream: False
    [2024-03-05 10:21:09.453 +00:00] [DBG] [196] Jellyfin.Api.Helpers.MediaInfoHelper: DirectPlay Result for Profile: "Anonymous Profile", Path: "https://i.mjh.nz/10bold-sa.m3u8", PlayMethod: null, AudioStreamIndex: -1, SubtitleStreamIndex: null, Reasons: ContainerNotSupported, VideoCodecNotSupported, AudioCodecNotSupported
    [2024-03-05 10:21:09.453 +00:00] [DBG] [196] Jellyfin.Api.Helpers.MediaInfoHelper: Transcode Result for Profile: "Anonymous Profile", Path: "https://i.mjh.nz/10bold-sa.m3u8", PlayMethod: Transcode, AudioStreamIndex: -1, SubtitleStreamIndex: null, Reasons: ContainerNotSupported, VideoCodecNotSupported, AudioCodecNotSupported
    [2024-03-05 10:21:09.453 +00:00] [INF] [196] Jellyfin.Api.Helpers.MediaInfoHelper: StreamBuilder.BuildVideoItem( Profile="Anonymous Profile", Path="https://i.mjh.nz/10bold-sa.m3u8", AudioStreamIndex=null, SubtitleStreamIndex=null ) => ( PlayMethod=Transcode, TranscodeReason=ContainerNotSupported, VideoCodecNotSupported, AudioCodecNotSupported ) "media:/videos/b1296ce0-d17a-17ab-ee82-9599d4fd1b1b/master.m3u8?MediaSourceId=2b9fbe6b3f1c32692733c1cc2d3e5e08&VideoCodec=h264&AudioCodec=aac,mp3&AudioStreamIndex=-1&VideoBitrate=59616000&AudioBitrate=384000&api_key=<token>&LiveStreamId=a17c75760a04e99b68cf766e11316e1c_09efa0d56b934a82adec00a87b837fb0_2b9fbe6b3f1c32692733c1cc2d3e5e08&TranscodingMaxAudioChannels=2&RequireAvc=false&SegmentContainer=ts&MinSegments=1&BreakOnNonKeyFrames=True&TranscodeReasons=ContainerNotSupported,%20VideoCodecNotSupported,%20AudioCodecNotSupported"
    [2024-03-05 10:21:09.453 +00:00] [WRN] [196] Jellyfin.Server.Middleware.ResponseTimeMiddleware: Slow HTTP Response from "http://REDACTED_SERVER_IP:8096/Items/b1296ce0d17a17abee829599d4fd1b1b/PlaybackInfo?UserId=da87ea8a37f340509e035dbd69f6bda9&StartTimeTicks=0&IsPlayback=true&AutoOpenLiveStream=true&MaxStreamingBitrate=60000000" to "REDACTED_CLIENT_IP" in 0:00:05.0818417 with Status Code 200
    [2024-03-05 10:21:10.687 +00:00] [DBG] [107] Jellyfin.Api.Auth.CustomAuthenticationHandler: AuthenticationScheme: "CustomAuthentication" was successfully authenticated.
    [2024-03-05 10:21:10.687 +00:00] [DBG] [107] Jellyfin.Api.Auth.CustomAuthenticationHandler: AuthenticationScheme: "CustomAuthentication" was successfully authenticated.
    [2024-03-05 10:21:10.714 +00:00] [DBG] [33] Jellyfin.Api.Auth.CustomAuthenticationHandler: AuthenticationScheme: "CustomAuthentication" was successfully authenticated.
    [2024-03-05 10:21:10.714 +00:00] [DBG] [33] Jellyfin.Api.Auth.CustomAuthenticationHandler: AuthenticationScheme: "CustomAuthentication" was successfully authenticated.
    [2024-03-05 10:21:10.715 +00:00] [DBG] [182] Jellyfin.Api.Auth.CustomAuthenticationHandler: AuthenticationScheme: "CustomAuthentication" was successfully authenticated.
    [2024-03-05 10:21:10.717 +00:00] [INF] [33] Jellyfin.Api.Controllers.DynamicHlsController: Current HLS implementation doesn't support non-keyframe breaks but one is requested, ignoring that request
    [2024-03-05 10:21:10.724 +00:00] [INF] [33] Jellyfin.Api.Helpers.TranscodingJobHelper: "/usr/lib/jellyfin-ffmpeg/ffmpeg" "-analyzeduration 3000000 -user_agent \"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/64.0.3282.85 Safari/537.36\" -fflags +igndts -init_hw_device vaapi=va:,kernel_driver=i915,driver=iHD -init_hw_device qsv=qs@va -filter_hw_device qs -autorotate 0 -i \"https://i.mjh.nz/10bold-sa.m3u8\" -map_metadata -1 -map_chapters -1 -threads 0 -sn -codec:v:0 h264_qsv -preset 7 -look_ahead 0 -b:v 20000000 -maxrate 20000000 -bufsize 40000000 -vf \"setparams=color_primaries=bt709:color_trc=bt709:colorspace=bt709,yadif=0:-1:0,format=yuv420p\" -flags -global_header -codec:a:0 libfdk_aac -ac 2 -ab 384000 -copyts -avoid_negative_ts disabled -max_muxing_queue_size 2048 -f hls -max_delay 5000000 -hls_time 3 -hls_segment_type mpegts -start_number 0 -hls_base_url \"hls/dc8e32b1aa2e78c34381851f49e46cc7/\" -hls_segment_filename \"/config/data/transcodes/dc8e32b1aa2e78c34381851f49e46cc7%d.ts\" -hls_playlist_type event -hls_list_size 0 -y \"/config/data/transcodes/dc8e32b1aa2e78c34381851f49e46cc7.m3u8\""

    Technical details:
    Jellyfin installation type: Docker running on Ubuntu Server 22.04 x64
    Jellyfin version: 10.8.13
    Clients in use: Brave Web Client; Android App (Android 12 on a Samsung Note 10+), Windows Jellyfin Client
    I believe I have redacted all IP addressed in the logs...
    Go to solution
    TheDreadPirate
    Offline

    Community Moderator

    Posts: 15,374
    Threads: 10
    Joined: 2023 Jun
    Reputation: 460
    Country:United States
    #2
    2024-03-07, 06:40 PM
    In the m3u tuner config, try enabled auto looping.
    Jellyfin 10.10.7 (Docker)
    Ubuntu 24.04.2 LTS w/HWE
    Intel i3 12100
    Intel Arc A380
    OS drive - SK Hynix P41 1TB
    Storage
        4x WD Red Pro 6TB CMR in RAIDZ1
    [Image: GitHub%20Sponsors-grey?logo=github]
    generically_named
    Offline

    Junior Member

    Posts: 3
    Threads: 1
    Joined: 2024 Mar
    Reputation: 0
    Country:Australia
    #3
    2024-03-08, 09:16 AM
    (2024-03-07, 06:40 PM)TheDreadPirate Wrote: In the m3u tuner config, try enabled auto looping.
    Thanks for the suggestion DreadPirate, enabled that but I'm still getting a failure:
    Code:
    2024-03-08 19:30:57.181 +10:30] [INF] [42] Emby.Server.Implementations.LiveTv.LiveTvManager: Opening channel stream from "Emby", external channel Id: "m3u_464db0b32520b55ea9ab3e05f8566404967b61a25cb0f43eef9c0e7a8d05d2a9"
    [2024-03-08 19:30:57.184 +10:30] [INF] [42] Emby.Server.Implementations.LiveTv.EmbyTV.EmbyTV: Streaming Channel "m3u_464db0b32520b55ea9ab3e05f8566404967b61a25cb0f43eef9c0e7a8d05d2a9"
    [2024-03-08 19:30:57.187 +10:30] [INF] [42] Emby.Server.Implementations.LiveTv.TunerHosts.M3UTunerHost: Live stream opened after 0.0016ms
    [2024-03-08 19:30:57.187 +10:30] [INF] [42] Emby.Server.Implementations.LiveTv.EmbyTV.EmbyTV: Returning mediasource streamId "2b9fbe6b3f1c32692733c1cc2d3e5e08", mediaSource.Id "2b9fbe6b3f1c32692733c1cc2d3e5e08", mediaSource.LiveStreamId null
    [2024-03-08 19:30:57.188 +10:30] [INF] [42] Emby.Server.Implementations.Library.MediaSourceManager: Waiting 3000ms before probing the live stream
    [2024-03-08 19:31:00.186 +10:30] [INF] [42] MediaBrowser.MediaEncoding.Encoder.MediaEncoder: "/usr/lib/jellyfin-ffmpeg/ffprobe" "-analyzeduration 3000000 -i \"https://i.mjh.nz/10bold-sa.m3u8\" -threads 0 -v warning -print_format json -show_streams -show_format"
    [2024-03-08 19:31:00.186 +10:30] [DBG] [42] MediaBrowser.MediaEncoding.Encoder.MediaEncoder: Starting ffprobe with args "-analyzeduration 3000000 -i \"https://i.mjh.nz/10bold-sa.m3u8\" -threads 0 -v warning -print_format json -show_streams -show_format"
    [2024-03-08 19:31:01.044 +10:30] [ERR] [49] Emby.Server.Implementations.Library.MediaSourceManager: Error probing live tv stream
    MediaBrowser.Common.FfmpegException: ffprobe failed - streams and format are both null.
      at MediaBrowser.MediaEncoding.Encoder.MediaEncoder.GetMediaInfoInternal(String inputPath, String primaryPath, MediaProtocol protocol, Boolean extractChapters, String probeSizeArgument, Boolean isAudio, Nullable`1 videoType, Boolean forceEnableLogging, CancellationToken cancellationToken)
      at MediaBrowser.MediaEncoding.Encoder.MediaEncoder.GetMediaInfoInternal(String inputPath, String primaryPath, MediaProtocol protocol, Boolean extractChapters, String probeSizeArgument, Boolean isAudio, Nullable`1 videoType, Boolean forceEnableLogging, CancellationToken cancellationToken)
      at Emby.Server.Implementations.Library.LiveStreamHelper.AddMediaInfoWithProbe(MediaSourceInfo mediaSource, Boolean isAudio, String cacheKey, Boolean addProbeDelay, CancellationToken cancellationToken)
      at Emby.Server.Implementations.Library.MediaSourceManager.OpenLiveStreamInternal(LiveStreamRequest request, CancellationToken cancellationToken)

    Currently exploring tvheadend to manage the live streams because I have access to reencoded streams for tvheadend from the guy who does a lot of the IPTV lists in Australia. Just getting tvheadend working is a headending headache and I'm not certain it'll work.

    Any more ideas for Jellyfin to do it? Have tried using custom client header settings but that hasn't done anything.
    TheDreadPirate
    Offline

    Community Moderator

    Posts: 15,374
    Threads: 10
    Joined: 2023 Jun
    Reputation: 460
    Country:United States
    #4
    2024-03-08, 06:09 PM
    I only have some simple, public TV, IPTV channels on my Jellyfin. But my understanding is that TVHeadEnd is a must for a lot of more complex IPTV/OTA TV setups.
    Jellyfin 10.10.7 (Docker)
    Ubuntu 24.04.2 LTS w/HWE
    Intel i3 12100
    Intel Arc A380
    OS drive - SK Hynix P41 1TB
    Storage
        4x WD Red Pro 6TB CMR in RAIDZ1
    [Image: GitHub%20Sponsors-grey?logo=github]
    generically_named
    Offline

    Junior Member

    Posts: 3
    Threads: 1
    Joined: 2024 Mar
    Reputation: 0
    Country:Australia
    #5
    2024-03-09, 04:26 AM
    (2024-03-08, 06:09 PM)TheDreadPirate Wrote: I only have some simple, public TV, IPTV channels on my Jellyfin.  But my understanding is that TVHeadEnd is a must for a lot of more complex IPTV/OTA TV setups.

    Yeah, Jellyfin's IPTV ability is indeed fairly simple. I have eventually got Jellyfin working properly with these TV channels BUT I had to take the streams in through tvheadend and then the tvheadend plugin wasn't ideal and I'd rather Jellyfin handle recording. Given this I then have Antennas as an intermediary between tvheadend an Jellyfin.

    Essentially:
    - Streams configured in tvheadend
    - Antennas takes streams and 're-broadcasts' them for Jellyfin
    - Jellyfin takes in the Antennas streams as HDHomeRun streams and can do all the things I need it to do.

    Thanks for your help DreadPirate
    « Next Oldest | Next Newest »

    Users browsing this thread: 1 Guest(s)


    • View a Printable Version
    • Subscribe to this thread
    Forum Jump:

    Home · Team · Help · Contact
    © Designed by D&D - Powered by MyBB
    L


    Jellyfin

    The Free Software Media System

    Linear Mode
    Threaded Mode