jellyfin / jellyfin-tizen

Jellyfin Samsung TV Client
https://jellyfin.org
936 stars 72 forks source link

No playback on some m3u files #123

Open nixfreak opened 2 years ago

nixfreak commented 2 years ago

Please describe your bug

Not able to stream some *.m3u files during playback it just spins like it loading.

I have built the newest Tizen app and it's awesome , thank you very much. I can't watch live because I get transocdes not found. Even though the same .m3u file works on jelly-web client. Here are some of my specs:

OS: OpenMediaVault using Docker container loaded with Jelly-server 10.7.x Samsung TV: QN65Q***

Jellyfin Version

10.7.7

if other:

No response

Environment

- OS: OpenMediaVault (Debian 10) - Docker container 
- Virtualization: No
- Clients: Jelly-Web, Jelly-tizen
- Browser: Tizen TV App
- FFmpeg Version: ffmpeg version 4.4.1-Jellyfin
- Playback Method: 
- Hardware Acceleration: No
- Plugins: AniDB, movieDB, collection
- Reverse Proxy:
- Base URL:
- Networking: Nat or Net for docker
- Storage: HDD local server

Jellyfin logs

UserId=9f9367f3be3948d0b152cb9fbf9e7d74&StartTimeTicks=0&IsPlayback=true&AutoOpenLiveStream=true&MaxStreamingBitrate=140000000" to "192.168.25.156" in 0:00:06.0612996 with Status Code 200
[2022-06-06 19:02:59.631 -05:00] [ERR] [31] Jellyfin.Server.Middleware.ExceptionMiddleware: Error processing request: "Could not find file '/data/tvshows/transcode/dcf5b9b57c994b818824f1e0df9729f1.ts'". URL "GET" "/Videos/5126a85501f1dce86998dbe5ceb3140f/stream.mov".
[2022-06-06 19:03:00.145 -05:00] [ERR] [37] Jellyfin.Server.Middleware.ExceptionMiddleware: Error processing request: "Could not find file '/data/tvshows/transcode/dcf5b9b57c994b818824f1e0df9729f1.ts'". URL "GET" "/Videos/5126a85501f1dce86998dbe5ceb3140f/stream.mov".
[2022-06-06 19:03:00.648 -05:00] [ERR] [37] Jellyfin.Server.Middleware.ExceptionMiddleware: Error processing request: "Could not find file '/data/tvshows/transcode/dcf5b9b57c994b818824f1e0df9729f1.ts'". URL "GET" "/Videos/5126a85501f1dce86998dbe5ceb3140f/stream.mov".
[2022-06-06 19:03:01.154 -05:00] [ERR] [37] Jellyfin.Server.Middleware.ExceptionMiddleware: Error processing request: "Could not find file '/data/tvshows/transcode/dcf5b9b57c994b818824f1e0df9729f1.ts'". URL "GET" "/Videos/5126a85501f1dce86998dbe5ceb3140f/stream.mov".
[2022-06-06 19:03:01.658 -05:00] [ERR] [11] Jellyfin.Server.Middleware.ExceptionMiddleware: Error processing request: "Could not find file '/data/tvshows/transcode/dcf5b9b57c994b818824f1e0df9729f1.ts'". URL "GET" "/Videos/5126a85501f1dce86998dbe5ceb3140f/stream.mov".
[2022-06-06 19:03:02.165 -05:00] [ERR] [35] Jellyfin.Server.Middleware.ExceptionMiddleware: Error processing request: "Could not find file '/data/tvshows/transcode/dcf5b9b57c994b818824f1e0df9729f1.ts'". URL "GET" "/Videos/5126a85501f1dce86998dbe5ceb3140f/stream.mov".
[2022-06-06 19:04:03.472 -05:00] [INF] [35] Emby.Server.Implementations.Session.SessionWebSocketListener: Sending ForceKeepAlive message to 1 inactive WebSockets.

FFmpeg logs

Just to show that *.m3u file does work and uses DirectStream. TV App won't actually show a ffmpeg logs. This is from the jelly-web client on my laptop (Brave/archlinux)

/videos/c015f9b1-f46d-17a7-d91a-c83a88eb7d41/live.m3u8

{"Protocol":1,"Id":"850fee6973082b81eeed2368ce5bc91a","Path":"https://<url.com/movie>/777326319/DDnn4N1Vd8/10017394","EncoderPath":null,"EncoderProtocol":null,"Type":0,"Container":"mov,mp4,m4a,3gp,3g2,mj2","Size":429271790,"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":null,"RequiresClosing":true,"LiveStreamId":"a17c75760a04e99b68cf766e11316e1c_09efa0d56b934a82adec00a87b837fb0_850fee6973082b81eeed2368ce5bc91a","BufferMs":null,"RequiresLooping":false,"SupportsProbing":true,"VideoType":null,"IsoType":null,"Video3DFormat":null,"MediaStreams":[{"Codec":"h264","CodecTag":"avc1","Language":null,"ColorRange":null,"ColorSpace":null,"ColorTransfer":null,"ColorPrimaries":null,"Comment":null,"TimeBase":"1/12288","CodecTimeBase":null,"Title":null,"VideoRange":"SDR","localizedUndefined":null,"localizedDefault":null,"localizedForced":null,"DisplayTitle":"720p H264 SDR","NalLengthSize":"0","IsInterlaced":false,"IsAVC":null,"ChannelLayout":null,"BitRate":543890,"BitDepth":8,"RefFrames":1,"PacketLength":null,"Channels":null,"SampleRate":null,"IsDefault":true,"IsForced":false,"Height":720,"Width":1280,"AverageFrameRate":24,"RealFrameRate":24,"Profile":"High","Type":1,"AspectRatio":"16:9","Index":-1,"Score":null,"IsExternal":false,"DeliveryMethod":null,"DeliveryUrl":null,"IsExternalUrl":null,"IsTextSubtitleStream":false,"SupportsExternalStream":false,"Path":null,"PixelFormat":"yuv420p","Level":31,"IsAnamorphic":false},{"Codec":"eac3","CodecTag":"ec-3","Language":null,"ColorRange":null,"ColorSpace":null,"ColorTransfer":null,"ColorPrimaries":null,"Comment":null,"TimeBase":"1/48000","CodecTimeBase":null,"Title":null,"VideoRange":null,"localizedUndefined":null,"localizedDefault":null,"localizedForced":null,"DisplayTitle":"Dolby Digital\u002B - 5.1 - Default","NalLengthSize":null,"IsInterlaced":false,"IsAVC":null,"ChannelLayout":"5.1","BitRate":640000,"BitDepth":null,"RefFrames":null,"PacketLength":null,"Channels":6,"SampleRate":48000,"IsDefault":true,"IsForced":false,"Height":null,"Width":null,"AverageFrameRate":null,"RealFrameRate":null,"Profile":null,"Type":0,"AspectRatio":null,"Index":-1,"Score":null,"IsExternal":false,"DeliveryMethod":null,"DeliveryUrl":null,"IsExternalUrl":null,"IsTextSubtitleStream":false,"SupportsExternalStream":false,"Path":null,"PixelFormat":null,"Level":0,"IsAnamorphic":null}],"MediaAttachments":[],"Formats":[],"Bitrate":1183890,"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,"DefaultAudioStreamIndex":null,"DefaultSubtitleStreamIndex":null}

/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+genpts -f mov,mp4,m4a,3gp,3g2,mj2 -i "https:<url.com/movie>/777326319/DDnn4N1Vd8/10017394" -map_metadata -1 -map_chapters -1 -threads 0 -sn -codec:v:0 copy -start_at_zero -flags -global_header -vsync -1 -codec:a:0 aac -ac 6 -ab 640000 -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/2e690ad361bd336a161df235958f65a2/" -hls_playlist_type event -hls_segment_filename "/data/tvshows/transcode/2e690ad361bd336a161df235958f65a2%d.ts" -y "/data/tvshows/transcode/2e690ad361bd336a161df235958f65a2.m3u8"

ffmpeg version 4.4.1-Jellyfin Copyright (c) 2000-2021 the FFmpeg developers
  built with gcc 9 (Ubuntu 9.4.0-1ubuntu1~20.04.1)
  configuration: --prefix=/usr/lib/jellyfin-ffmpeg --target-os=linux --extra-version=Jellyfin --disable-doc --disable-ffplay --disable-shared --disable-libxcb --disable-sdl2 --disable-xlib --enable-lto --enable-gpl --enable-version3 --enable-static --enable-gmp --enable-gnutls --enable-libdrm --enable-libass --enable-libfreetype --enable-libfribidi --enable-libfontconfig --enable-libbluray --enable-libmp3lame --enable-libopus --enable-libtheora --enable-libvorbis --enable-libdav1d --enable-libwebp --enable-libvpx --enable-libx264 --enable-libx265 --enable-libzvbi --enable-libzimg --arch=amd64 --enable-opencl --enable-vaapi --enable-amf --enable-libmfx --enable-vdpau --enable-ffnvcodec --enable-cuda --enable-cuda-llvm --enable-cuvid --enable-nvdec --enable-nvenc
  libavutil      56. 70.100 / 56. 70.100
  libavcodec     58.134.100 / 58.134.100
  libavformat    58. 76.100 / 58. 76.100
  libavdevice    58. 13.100 / 58. 13.100
  libavfilter     7.110.100 /  7.110.100
  libswscale      5.  9.100 /  5.  9.100
  libswresample   3.  9.100 /  3.  9.100
  libpostproc    55.  9.100 / 55.  9.100
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'https://<url.com/movie>/777326319/44DX4N1Vd8/10017394':
  Metadata:
    major_brand     : isom
    minor_version   : 512
    compatible_brands: isomiso2avc1mp41
    encoder         : Lavf58.33.100
  Duration: 00:48:08.04, start: 0.000000, bitrate: 1189 kb/s
  Stream #0:0(und): Video: h264 (High) (avc1 / 0x31637661), yuv420p, 1280x720 [SAR 1:1 DAR 16:9], 543 kb/s, 24 fps, 24 tbr, 12288 tbn, 48 tbc (default)
    Metadata:
      handler_name    : VideoHandler
      vendor_id       : [0][0][0][0]
  Stream #0:1(eng): Audio: eac3 (ec-3 / 0x332D6365), 48000 Hz, 5.1(side), fltp, 640 kb/s (default)
    Metadata:
      handler_name    : SoundHandler
      vendor_id       : [0][0][0][0]
    Side data:
      audio service type: main
Stream mapping:
  Stream #0:0 -> #0:0 (copy)
  Stream #0:1 -> #0:1 (eac3 (native) -> aac (native))
Press [q] to stop, [?] for help
Output #0, hls, to '/data/tvshows/transcode/2e690ad361bd336a161df235958f65a2.m3u8':
  Metadata:
    encoder         : Lavf58.76.100
  Stream #0:0: Video: h264 (High) (avc1 / 0x31637661), yuv420p, 1280x720 [SAR 1:1 DAR 16:9], q=2-31, 543 kb/s, 24 fps, 24 tbr, 90k tbn, 24 tbc (default)
  Stream #0:1: Audio: aac (LC), 48000 Hz, 5.1, fltp, 640 kb/s (default)
    Metadata:
      encoder         : Lavc58.134.100 aac
    Side data:
      audio service type: main
frame=    3 fps=0.0 q=-1.0 size=N/A time=-00:00:00.04 bitrate=N/A speed=N/A    
frame=   46 fps=0.0 q=-1.0 size=N/A time=00:00:01.74 bitrate=N/A speed=3.38x    
frame=  101 fps= 93 q=-1.0 size=N/A time=00:00:04.04 bitrate=N/A speed=3.71x    
[hls @ 0x55a86e2dd100] Opening '/data/tvshows/transcode/2e690ad361bd336a161df235958f65a20.ts' for writing
[hls @ 0x55a86e2dd100] Opening '/data/tvshows/transcode/2e690ad361bd336a161df235958f65a2.m3u8.tmp' for writing
frame=  211 fps=133 q=-1.0 size=N/A time=00:00:08.62 bitrate=N/A speed=5.42x    
[hls @ 0x55a86e2dd100] Opening '/data/tvshows/transcode/2e690ad361bd336a161df235958f65a21.ts' for writing
[hls @ 0x55a86e2dd100] Opening '/data/tvshows/transcode/2e690ad361bd336a161df235958f65a2.m3u8.tmp' for writing
[hls @ 0x55a86e2dd100] Opening '/data/tvshows/transcode/2e690ad361bd336a161df235958f65a22.ts' for writing
[hls @ 0x55a86e2dd100] Opening '/data/tvshows/transcode/2e690ad361bd336a161df235958f65a2.m3u8.tmp' for writing
frame=  405 fps=194 q=-1.0 size=N/A time=00:00:16.70 bitrate=N/A speed=7.99x    
[hls @ 0x55a86e2dd100] Opening '/data/tvshows/transcode/2e690ad361bd336a161df235958f65a23.ts' for writing
[hls @ 0x55a86e2dd100] Opening '/data/tvshows/transcode/2e690ad361bd336a161df235958f65a2.m3u8.tmp' for writing
[hls @ 0x55a86e2dd100] Opening '/data/tvshows/transcode/2e690ad361bd336a161df235958f65a24.ts' for writing
[hls @ 0x55a86e2dd100] Opening '/data/tvshows/transcode/2e690ad361bd336a161df235958f65a2.m3u8.tmp' for writing

[https @ 0x55a86e164e80] Stream ends prematurely at 278151168, should be 429271790
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x55a86e163f00] Packet corrupt (stream = 0, dts = 22473728).
https:<url.com>/movie>/777326319/DDnn4N1Vd8/10017394: corrupt input packet in stream 0
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x55a86e163f00] stream 1, offset 0x10946c6a: partial file
frame=43897 fps=144 q=-1.0 size=N/A time=00:30:28.87 bitrate=N/A speed=5.99x    
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x55a86e163f00] stream 0, offset 0x1094766a: partial file
https:<url.com/movie>/777326319/DDnn4N1Vd8/10017394: Invalid data found when processing input
[mpegts @ 0x55a86e235780] Error applying bitstream filters to an output packet for stream #0: Invalid data found when processing input
[hls @ 0x55a86e2dd100] Opening '/data/tvshows/transcode/2e690ad361bd336a161df235958f65a2399.ts' for writing
[hls @ 0x55a86e2dd100] Opening '/data/tvshows/transcode/2e690ad361bd336a161df235958f65a2.m3u8.tmp' for writing
Error writing trailer of /data/tvshows/transcode/2e690ad361bd336a161df235958f65a2.m3u8: Invalid data found when processing input
frame=43897 fps=144 q=-1.0 Lsize=N/A time=00:30:28.87 bitrate=N/A speed=5.99x    
video:126909kB audio:136827kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: unknown
[aac @ 0x55a86e16f980] Qavg: 12701.729

Please attach any browser or client logs here

No response

Please attach any screenshots here

No response

Code of Conduct

dmitrylyzo commented 2 years ago

TV App won't actually show a ffmpeg logs.

The ffmpeg logs are on the server, the client type doesn't matter.

This is from the jelly-web client on my laptop (Brave/archlinux)

I see server-side errors: corrupt input packet in stream 0, Invalid data found when processing input. But you said it works in "jelly-web". Does it really work in the browser (Brave)?

Samsung TV: QN65Q***

I believe that 65 is 65". What is after the second Q? https://developer.samsung.com/smarttv/develop/specifications/tv-model-groups.html

nixfreak commented 2 years ago

Sorry about that the Model of the TV is: QN65Q60TAFXZA Yes I can really play videos on my laptop using Brave browser using the jelly-web UI.

Also I get FFmpeg logs when I playback on the web UI. I don't see any FFmpeg logs using from the TV client. I have full access to the server and all logs. I can also see the transcode files in the transcode directory when playing something using the web-UI.