Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Transcoding instead of muxing #10549

Closed
weberc2 opened this issue Nov 8, 2023 · 10 comments
Closed

Transcoding instead of muxing #10549

weberc2 opened this issue Nov 8, 2023 · 10 comments
Labels
stale Stale and will be closed if no activity occurs

Comments

@weberc2
Copy link

weberc2 commented Nov 8, 2023

When I play an HEVC/MKV file, the transcoder kicks in even though the same file converted to HEVC/mp4 plays just fine. I would expect it to remux and not transcode.

Media Info of the file

MP4 version

General
Complete name                            : /media/HD0/torrent-downloads/TV/The Office (2005)/Season 01/Episode 01.mp4
Format                                   : MPEG-4
Format profile                           : Base Media
Codec ID                                 : isom (isom/iso2/mp41)
File size                                : 280 MiB
Duration                                 : 23 min 1 s
Overall bit rate                         : 1 699 kb/s
Writing application                      : Lavf58.45.100
 
Video
ID                                       : 1
Format                                   : HEVC
Format/Info                              : High Efficiency Video Coding
Format profile                           : Main 10@L4.1@High
Codec ID                                 : hev1
Codec ID/Info                            : High Efficiency Video Coding
Duration                                 : 23 min 1 s
Bit rate                                 : 1 556 kb/s
Width                                    : 1 918 pixels
Height                                   : 1 080 pixels
Display aspect ratio                     : 16:9
Frame rate mode                          : Variable
Frame rate                               : 23.976 (24000/1001) FPS
Minimum frame rate                       : 23.564 FPS
Maximum frame rate                       : 24.390 FPS
Color space                              : YUV
Chroma subsampling                       : 4:2:0
Bit depth                                : 10 bits
Bits/(Pixel*Frame)                       : 0.031
Stream size                              : 256 MiB (92%)
Writing library                          : x265 0.0:[Windows][GCC 5.4.0][64 bit] 10bit
Encoding settings                        : cpuid=1173503 / frame-threads=3 / numa-pools=8 / wpp / no-pmode / no-pme / no-psnr / no-ssim / log-level=2 / input-csp=1 / input-res=1918x1080 / interlace=0 / total-frames=0 / level-idc=41 / high-tier=1 / uhd-bd=0 / ref=3 / no-allow-non-conformance / no-repeat-headers / annexb / no-aud / no-hrd / info / hash=0 / no-temporal-layers / open-gop / min-keyint=24 / keyint=240 / bframes=4 / b-adapt=2 / b-pyramid / bframe-bias=0 / rc-lookahead=20 / lookahead-slices=6 / scenecut=40 / no-intra-refresh / ctu=64 / min-cu-size=8 / no-rect / no-amp / max-tu-size=32 / tu-inter-depth=1 / tu-intra-depth=1 / limit-tu=0 / rdoq-level=0 / dynamic-rd=0.00 / no-ssim-rd / signhide / no-tskip / nr-intra=0 / nr-inter=0 / no-constrained-intra / strong-intra-smoothing / max-merge=2 / limit-refs=3 / no-limit-modes / me=3 / subme=3 / merange=57 / temporal-mvp / weightp / no-weightb / no-analyze-src-pics / deblock=0:0 / sao / no-sao-non-deblock / rd=3 / no-early-skip / rskip / no-fast-intra / no-tskip-fast / no-cu-lossless / no-b-intra / rdpenalty=0 / psy-rd=0.30 / psy-rdoq=0.00 / no-rd-refine / analysis-mode=0 / no-lossless / cbqpoffs=0 / crqpoffs=0 / rc=crf / crf=22.0 / qcomp=0.60 / qpstep=4 / stats-write=0 / stats-read=0 / vbv-maxrate=50000 / vbv-bufsize=50000 / vbv-init=0.9 / crf-max=0.0 / crf-min=0.0 / ipratio=1.40 / pbratio=1.30 / aq-mode=1 / aq-strength=1.00 / cutree / zone-count=0 / no-strict-cbr / qg-size=32 / no-rc-grain / qpmax=69 / qpmin=0 / sar=1 / overscan=0 / videoformat=5 / range=0 / colorprim=1 / transfer=1 / colormatrix=1 / chromaloc=0 / display-window=0 / max-cll=0,0 / min-luma=0 / max-luma=1023 / log2-max-poc-lsb=8 / vui-timing-info / vui-hrd-info / slices=1 / opt-qp-pps / opt-ref-list-length-pps / no-multi-pass-opt-rps / scenecut-bias=0.05 / no-opt-cu-delta-qp / no-aq-motion / no-hdr / no-hdr-opt / no-dhdr10-opt / refine-level=5 / no-limit-sao
Language                                 : English
Color range                              : Limited
Color primaries                          : BT.709
Transfer characteristics                 : BT.709
Matrix coefficients                      : BT.709
mdhd_Duration                            : 1381379
Codec configuration box                  : hvcC
 
Audio
ID                                       : 2
Format                                   : AAC LC
Format/Info                              : Advanced Audio Codec Low Complexity
Codec ID                                 : mp4a-40-2
Duration                                 : 23 min 1 s
Bit rate mode                            : Constant
Bit rate                                 : 135 kb/s
Channel(s)                               : 2 channels
Channel layout                           : L R
Sampling rate                            : 48.0 kHz
Frame rate                               : 46.875 FPS (1024 SPF)
Compression mode                         : Lossy
Stream size                              : 22.3 MiB (8%)
Language                                 : English
Default                                  : Yes
Alternate group                          : 1

MKV version

General
Unique ID                                : 10715900546998663703171484987402010233 (0x80FCEB0179BADD0E6BE4EDBB064BE79)
Complete name                            : /media/HD0/torrent-downloads/TV/The Office (2005)/Season 01/Episode 01.mkv
Format                                   : Matroska
Format version                           : Version 4
File size                                : 321 MiB
Duration                                 : 23 min 1 s
Overall bit rate                         : 1 950 kb/s
Encoded date                             : UTC 2018-01-31 05:47:43 / UTC 2017-10-02T15:03:43Z
Writing application                      : mkvmerge v19.0.0 ('Brave Captain') 64-bit
Writing library                          : libebml v1.3.5 + libmatroska v1.4.8 / Lavf57.7.2
 
Video
ID                                       : 1
Format                                   : HEVC
Format/Info                              : High Efficiency Video Coding
Format profile                           : Main 10@L4.1@High
Codec ID                                 : V_MPEGH/ISO/HEVC
Duration                                 : 23 min 1 s
Bit rate                                 : 1 556 kb/s
Width                                    : 1 918 pixels
Height                                   : 1 080 pixels
Display aspect ratio                     : 16:9
Frame rate mode                          : Constant
Frame rate                               : 23.976 (24000/1001) FPS
Color space                              : YUV
Chroma subsampling                       : 4:2:0
Bit depth                                : 10 bits
Bits/(Pixel*Frame)                       : 0.031
Stream size                              : 256 MiB (80%)
Writing library                          : x265 0.0:[Windows][GCC 5.4.0][64 bit] 10bit
Encoding settings                        : cpuid=1173503 / frame-threads=3 / numa-pools=8 / wpp / no-pmode / no-pme / no-psnr / no-ssim / log-level=2 / input-csp=1 / input-res=1918x1080 / interlace=0 / total-frames=0 / level-idc=41 / high-tier=1 / uhd-bd=0 / ref=3 / no-allow-non-conformance / no-repeat-headers / annexb / no-aud / no-hrd / info / hash=0 / no-temporal-layers / open-gop / min-keyint=24 / keyint=240 / bframes=4 / b-adapt=2 / b-pyramid / bframe-bias=0 / rc-lookahead=20 / lookahead-slices=6 / scenecut=40 / no-intra-refresh / ctu=64 / min-cu-size=8 / no-rect / no-amp / max-tu-size=32 / tu-inter-depth=1 / tu-intra-depth=1 / limit-tu=0 / rdoq-level=0 / dynamic-rd=0.00 / no-ssim-rd / signhide / no-tskip / nr-intra=0 / nr-inter=0 / no-constrained-intra / strong-intra-smoothing / max-merge=2 / limit-refs=3 / no-limit-modes / me=3 / subme=3 / merange=57 / temporal-mvp / weightp / no-weightb / no-analyze-src-pics / deblock=0:0 / sao / no-sao-non-deblock / rd=3 / no-early-skip / rskip / no-fast-intra / no-tskip-fast / no-cu-lossless / no-b-intra / rdpenalty=0 / psy-rd=0.30 / psy-rdoq=0.00 / no-rd-refine / analysis-mode=0 / no-lossless / cbqpoffs=0 / crqpoffs=0 / rc=crf / crf=22.0 / qcomp=0.60 / qpstep=4 / stats-write=0 / stats-read=0 / vbv-maxrate=50000 / vbv-bufsize=50000 / vbv-init=0.9 / crf-max=0.0 / crf-min=0.0 / ipratio=1.40 / pbratio=1.30 / aq-mode=1 / aq-strength=1.00 / cutree / zone-count=0 / no-strict-cbr / qg-size=32 / no-rc-grain / qpmax=69 / qpmin=0 / sar=1 / overscan=0 / videoformat=5 / range=0 / colorprim=1 / transfer=1 / colormatrix=1 / chromaloc=0 / display-window=0 / max-cll=0,0 / min-luma=0 / max-luma=1023 / log2-max-poc-lsb=8 / vui-timing-info / vui-hrd-info / slices=1 / opt-qp-pps / opt-ref-list-length-pps / no-multi-pass-opt-rps / scenecut-bias=0.05 / no-opt-cu-delta-qp / no-aq-motion / no-hdr / no-hdr-opt / no-dhdr10-opt / refine-level=5 / no-limit-sao
Language                                 : English
Default                                  : Yes
Forced                                   : No
Color range                              : Limited
Color primaries                          : BT.709
Transfer characteristics                 : BT.709
Matrix coefficients                      : BT.709
 
Audio #1
ID                                       : 2
Format                                   : AAC LC
Format/Info                              : Advanced Audio Codec Low Complexity
Codec ID                                 : A_AAC-2
Duration                                 : 23 min 1 s
Bit rate                                 : 135 kb/s
Channel(s)                               : 2 channels
Channel layout                           : L R
Sampling rate                            : 48.0 kHz
Frame rate                               : 46.875 FPS (1024 SPF)
Compression mode                         : Lossy
Delay relative to video                  : -83 ms
Stream size                              : 22.3 MiB (7%)
Language                                 : English
Default                                  : Yes
Forced                                   : No
 
Audio #2
ID                                       : 3
Format                                   : AAC LC
Format/Info                              : Advanced Audio Codec Low Complexity
Codec ID                                 : A_AAC-2
Duration                                 : 23 min 1 s
Bit rate                                 : 129 kb/s
Channel(s)                               : 2 channels
Channel layout                           : L R
Sampling rate                            : 48.0 kHz
Frame rate                               : 46.875 FPS (1024 SPF)
Compression mode                         : Lossy
Delay relative to video                  : -126 ms
Stream size                              : 21.2 MiB (7%)
Title                                    : Commentary 1
Language                                 : English
Default                                  : No
Forced                                   : No
 
Audio #3
ID                                       : 4
Format                                   : AAC LC
Format/Info                              : Advanced Audio Codec Low Complexity
Codec ID                                 : A_AAC-2
Duration                                 : 23 min 1 s
Bit rate                                 : 127 kb/s
Channel(s)                               : 2 channels
Channel layout                           : L R
Sampling rate                            : 48.0 kHz
Frame rate                               : 46.875 FPS (1024 SPF)
Compression mode                         : Lossy
Delay relative to video                  : -126 ms
Stream size                              : 20.9 MiB (7%)
Title                                    : Commentary 2
Language                                 : English
Default                                  : No
Forced                                   : No

Logs

Logs showing playback of mkv and then playback of mp4

[2023-11-08 00:18:52.318 -06:00] [INF] Defined LAN addresses : "[10.0.0.0/8,172.16.0.0/12,192.168.0.0/16]"
[2023-11-08 00:18:52.318 -06:00] [INF] Defined LAN exclusions : "[]"
[2023-11-08 00:18:52.318 -06:00] [INF] Using LAN addresses: "[10.0.0.0/8,172.16.0.0/12,192.168.0.0/16]"
[2023-11-08 01:18:52.432 -06:00] [INF] Defined LAN addresses : "[10.0.0.0/8,172.16.0.0/12,192.168.0.0/16]"
[2023-11-08 01:18:52.433 -06:00] [INF] Defined LAN exclusions : "[]"
[2023-11-08 01:18:52.433 -06:00] [INF] Using LAN addresses: "[10.0.0.0/8,172.16.0.0/12,192.168.0.0/16]"
[2023-11-08 01:59:59.998 -06:00] [INF] "DailyTrigger" fired for task: "Extract Chapter Images"
[2023-11-08 01:59:59.998 -06:00] [INF] Queuing task "ChapterImagesTask"
[2023-11-08 01:59:59.998 -06:00] [INF] Executing "Extract Chapter Images"
[2023-11-08 02:00:00.477 -06:00] [INF] "Extract Chapter Images" Completed after 0 minute(s) and 0 seconds
[2023-11-08 02:00:00.478 -06:00] [INF] ExecuteQueuedTasks
[2023-11-08 02:00:00.999 -06:00] [INF] Daily trigger for "Extract Chapter Images" set to fire at 2023-11-09 02:00:00.000 -06:00, which is 23:59:59.0008188 from now.
[2023-11-08 02:18:52.519 -06:00] [INF] Defined LAN addresses : "[10.0.0.0/8,172.16.0.0/12,192.168.0.0/16]"
[2023-11-08 02:18:52.520 -06:00] [INF] Defined LAN exclusions : "[]"
[2023-11-08 02:18:52.520 -06:00] [INF] Using LAN addresses: "[10.0.0.0/8,172.16.0.0/12,192.168.0.0/16]"
[2023-11-08 03:18:52.630 -06:00] [INF] Defined LAN addresses : "[10.0.0.0/8,172.16.0.0/12,192.168.0.0/16]"
[2023-11-08 03:18:52.630 -06:00] [INF] Defined LAN exclusions : "[]"
[2023-11-08 03:18:52.630 -06:00] [INF] Using LAN addresses: "[10.0.0.0/8,172.16.0.0/12,192.168.0.0/16]"
[2023-11-08 03:57:45.544 -06:00] [INF] "IntervalTrigger" fired for task: "Scan Media Library"
[2023-11-08 03:57:45.546 -06:00] [INF] Queuing task "RefreshMediaLibraryTask"
[2023-11-08 03:57:45.548 -06:00] [INF] Executing "Scan Media Library"
[2023-11-08 03:57:45.548 -06:00] [INF] Stopping directory watching for path "/media/HD0/torrent-downloads/Movies"
[2023-11-08 03:57:45.549 -06:00] [INF] Stopping directory watching for path "/media/HD0/Films"
[2023-11-08 03:57:45.550 -06:00] [INF] Validating media library
[2023-11-08 03:57:59.655 -06:00] [INF] "Scan Media Library" Completed after 0 minute(s) and 14 seconds
[2023-11-08 03:57:59.656 -06:00] [INF] ExecuteQueuedTasks
[2023-11-08 03:57:59.764 -06:00] [INF] Watching directory "/media/HD0/Films"
[2023-11-08 03:57:59.771 -06:00] [INF] Watching directory "/media/HD0/torrent-downloads/Movies"
[2023-11-08 03:57:59.772 -06:00] [ERR] Error in Directory watcher for: "/media/HD0/torrent-downloads/TV"
System.UnauthorizedAccessException: Access to the path '/media/HD0/torrent-downloads/TV/The Office (2005)/Season 08/featurettes/deleted scenes' is denied.
 ---> System.IO.IOException: Permission denied
   --- End of inner exception stack trace ---
[2023-11-08 03:57:59.773 -06:00] [INF] Stopping directory watching for path "/media/HD0/torrent-downloads/TV"
[2023-11-08 03:57:59.779 -06:00] [INF] Watching directory "/media/HD0/torrent-downloads/TV"
[2023-11-08 04:18:52.662 -06:00] [INF] Defined LAN addresses : "[10.0.0.0/8,172.16.0.0/12,192.168.0.0/16]"
[2023-11-08 04:18:52.664 -06:00] [INF] Defined LAN exclusions : "[]"
[2023-11-08 04:18:52.665 -06:00] [INF] Using LAN addresses: "[10.0.0.0/8,172.16.0.0/12,192.168.0.0/16]"
[2023-11-08 05:18:52.784 -06:00] [INF] Defined LAN addresses : "[10.0.0.0/8,172.16.0.0/12,192.168.0.0/16]"
[2023-11-08 05:18:52.785 -06:00] [INF] Defined LAN exclusions : "[]"
[2023-11-08 05:18:52.785 -06:00] [INF] Using LAN addresses: "[10.0.0.0/8,172.16.0.0/12,192.168.0.0/16]"
[2023-11-08 06:18:52.924 -06:00] [INF] Defined LAN addresses : "[10.0.0.0/8,172.16.0.0/12,192.168.0.0/16]"
[2023-11-08 06:18:52.925 -06:00] [INF] Defined LAN exclusions : "[]"
[2023-11-08 06:18:52.925 -06:00] [INF] Using LAN addresses: "[10.0.0.0/8,172.16.0.0/12,192.168.0.0/16]"
[2023-11-08 07:18:52.957 -06:00] [INF] Defined LAN addresses : "[10.0.0.0/8,172.16.0.0/12,192.168.0.0/16]"
[2023-11-08 07:18:52.958 -06:00] [INF] Defined LAN exclusions : "[]"
[2023-11-08 07:18:52.959 -06:00] [INF] Using LAN addresses: "[10.0.0.0/8,172.16.0.0/12,192.168.0.0/16]"
[2023-11-08 08:18:53.069 -06:00] [INF] Defined LAN addresses : "[10.0.0.0/8,172.16.0.0/12,192.168.0.0/16]"
[2023-11-08 08:18:53.070 -06:00] [INF] Defined LAN exclusions : "[]"
[2023-11-08 08:18:53.071 -06:00] [INF] Using LAN addresses: "[10.0.0.0/8,172.16.0.0/12,192.168.0.0/16]"
[2023-11-08 09:18:53.207 -06:00] [INF] Defined LAN addresses : "[10.0.0.0/8,172.16.0.0/12,192.168.0.0/16]"
[2023-11-08 09:18:53.208 -06:00] [INF] Defined LAN exclusions : "[]"
[2023-11-08 09:18:53.208 -06:00] [INF] Using LAN addresses: "[10.0.0.0/8,172.16.0.0/12,192.168.0.0/16]"
[2023-11-08 10:18:53.344 -06:00] [INF] Defined LAN addresses : "[10.0.0.0/8,172.16.0.0/12,192.168.0.0/16]"
[2023-11-08 10:18:53.347 -06:00] [INF] Defined LAN exclusions : "[]"
[2023-11-08 10:18:53.347 -06:00] [INF] Using LAN addresses: "[10.0.0.0/8,172.16.0.0/12,192.168.0.0/16]"
[2023-11-08 10:39:30.479 -06:00] [INF] "IntervalTrigger" fired for task: "Clean Log Directory"
[2023-11-08 10:39:30.480 -06:00] [INF] Queuing task "DeleteLogFileTask"
[2023-11-08 10:39:30.481 -06:00] [INF] Executing "Clean Log Directory"
[2023-11-08 10:39:30.483 -06:00] [INF] "Clean Log Directory" Completed after 0 minute(s) and 0 seconds
[2023-11-08 10:39:30.485 -06:00] [INF] ExecuteQueuedTasks
[2023-11-08 10:39:30.700 -06:00] [INF] "IntervalTrigger" fired for task: "Download missing subtitles"
[2023-11-08 10:39:30.700 -06:00] [INF] Queuing task "SubtitleScheduledTask"
[2023-11-08 10:39:30.701 -06:00] [INF] Executing "Download missing subtitles"
[2023-11-08 10:39:30.702 -06:00] [INF] "Download missing subtitles" Completed after 0 minute(s) and 0 seconds
[2023-11-08 10:39:30.703 -06:00] [INF] ExecuteQueuedTasks
[2023-11-08 10:39:31.015 -06:00] [INF] "IntervalTrigger" fired for task: "Clean Cache Directory"
[2023-11-08 10:39:31.015 -06:00] [INF] Queuing task "DeleteCacheFileTask"
[2023-11-08 10:39:31.015 -06:00] [INF] Executing "Clean Cache Directory"
[2023-11-08 10:39:31.046 -06:00] [INF] "Clean Cache Directory" Completed after 0 minute(s) and 0 seconds
[2023-11-08 10:39:31.047 -06:00] [INF] ExecuteQueuedTasks
[2023-11-08 10:39:31.214 -06:00] [INF] "IntervalTrigger" fired for task: "Clean Transcode Directory"
[2023-11-08 10:39:31.215 -06:00] [INF] Queuing task "DeleteTranscodeFileTask"
[2023-11-08 10:39:31.216 -06:00] [INF] Executing "Clean Transcode Directory"
[2023-11-08 10:39:31.216 -06:00] [INF] "Clean Transcode Directory" Completed after 0 minute(s) and 0 seconds
[2023-11-08 10:39:31.217 -06:00] [INF] ExecuteQueuedTasks
[2023-11-08 10:39:31.379 -06:00] [INF] "IntervalTrigger" fired for task: "TasksRefreshChannels"
[2023-11-08 10:39:31.379 -06:00] [INF] Queuing task "RefreshChannelsScheduledTask"
[2023-11-08 10:39:31.379 -06:00] [INF] Executing "TasksRefreshChannels"
[2023-11-08 10:39:31.380 -06:00] [INF] "TasksRefreshChannels" Completed after 0 minute(s) and 0 seconds
[2023-11-08 10:39:31.380 -06:00] [INF] ExecuteQueuedTasks
[2023-11-08 10:39:31.801 -06:00] [INF] "IntervalTrigger" fired for task: "Optimize database"
[2023-11-08 10:39:31.801 -06:00] [INF] Queuing task "OptimizeDatabaseTask"
[2023-11-08 10:39:31.801 -06:00] [INF] Executing "Optimize database"
[2023-11-08 10:39:31.801 -06:00] [INF] Optimizing and vacuuming jellyfin.db...
[2023-11-08 10:39:31.913 -06:00] [INF] jellyfin.db optimized successfully!
[2023-11-08 10:39:31.913 -06:00] [INF] "Optimize database" Completed after 0 minute(s) and 0 seconds
[2023-11-08 10:39:31.914 -06:00] [INF] ExecuteQueuedTasks
[2023-11-08 10:39:34.444 -06:00] [INF] "IntervalTrigger" fired for task: "Update Plugins"
[2023-11-08 10:39:34.444 -06:00] [INF] Queuing task "PluginUpdateTask"
[2023-11-08 10:39:34.444 -06:00] [INF] Executing "Update Plugins"
[2023-11-08 10:39:36.539 -06:00] [INF] "Update Plugins" Completed after 0 minute(s) and 2 seconds
[2023-11-08 10:39:36.540 -06:00] [INF] ExecuteQueuedTasks
[2023-11-08 10:42:15.023 -06:00] [INF] WS "100.114.142.135" request
[2023-11-08 10:43:03.056 -06:00] [INF] Sending ForceKeepAlive message to 1 inactive WebSockets.
[2023-11-08 10:43:15.057 -06:00] [INF] Lost 1 WebSockets.
[2023-11-08 10:47:48.017 -06:00] [INF] Playback stopped reported by app "Jellyfin Web" "10.8.11" playing "Pilot". Stopped at "44035" ms
[2023-11-08 10:47:51.080 -06:00] [INF] Executing "Scan Media Library"
[2023-11-08 10:47:51.083 -06:00] [INF] Stopping directory watching for path "/media/HD0/torrent-downloads/Movies"
[2023-11-08 10:47:51.084 -06:00] [INF] Stopping directory watching for path "/media/HD0/Films"
[2023-11-08 10:47:51.084 -06:00] [INF] Validating media library
[2023-11-08 10:48:10.493 -06:00] [INF] "Scan Media Library" Completed after 0 minute(s) and 19 seconds
[2023-11-08 10:48:10.498 -06:00] [INF] ExecuteQueuedTasks
[2023-11-08 10:48:10.499 -06:00] [INF] Watching directory "/media/HD0/Films"
[2023-11-08 10:48:10.611 -06:00] [INF] Watching directory "/media/HD0/torrent-downloads/Movies"
[2023-11-08 10:48:10.614 -06:00] [ERR] Error in Directory watcher for: "/media/HD0/torrent-downloads/TV"
System.UnauthorizedAccessException: Access to the path '/media/HD0/torrent-downloads/TV/The Office (2005)/Season 08/featurettes/deleted scenes' is denied.
 ---> System.IO.IOException: Permission denied
   --- End of inner exception stack trace ---
[2023-11-08 10:48:10.614 -06:00] [INF] Stopping directory watching for path "/media/HD0/torrent-downloads/TV"
[2023-11-08 10:48:10.621 -06:00] [INF] Watching directory "/media/HD0/torrent-downloads/TV"
[2023-11-08 10:48:20.724 -06:00] [INF] User policy for "weberc2". EnablePlaybackRemuxing: True EnableVideoPlaybackTranscoding: True EnableAudioPlaybackTranscoding: True
[2023-11-08 10:48:20.725 -06:00] [INF] StreamBuilder.BuildVideoItem( Profile="Anonymous Profile", Path="/media/HD0/torrent-downloads/TV/The Office (2005)/Season 01/Episode 01.mkv", AudioStreamIndex=null, SubtitleStreamIndex=null ) => ( PlayMethod=Transcode, TranscodeReason=VideoCodecNotSupported, AudioCodecNotSupported ) "media:/videos/b8457277-ab7e-36ab-0a80-861e5b0cd021/master.m3u8?MediaSourceId=b8457277ab7e36ab0a80861e5b0cd021&VideoCodec=h264&AudioCodec=aac&AudioStreamIndex=1&VideoBitrate=266531528&AudioBitrate=135139&AudioSampleRate=48000&MaxFramerate=23.976025&api_key=<token>&TranscodingMaxAudioChannels=2&RequireAvc=false&Tag=e7670573d27ec67aa37926e83db067f2&SegmentContainer=ts&MinSegments=2&BreakOnNonKeyFrames=True&hevc-level=123&hevc-videobitdepth=10&hevc-profile=main10&hevc-audiochannels=2&aac-profile=lc&TranscodeReasons=VideoCodecNotSupported,%20AudioCodecNotSupported"
[2023-11-08 10:48:21.189 -06:00] [INF] Current HLS implementation doesn't support non-keyframe breaks but one is requested, ignoring that request
[2023-11-08 10:48:21.192 -06:00] [INF] "/usr/lib/jellyfin-ffmpeg/ffmpeg" "-analyzeduration 200M -f matroska,webm -autorotate 0 -i file:\"/media/HD0/torrent-downloads/TV/The Office (2005)/Season 01/Episode 01.mkv\" -map_metadata -1 -map_chapters -1 -threads 0 -map 0:0 -map 0:1 -map -0:s -codec:v:0 libx264 -preset veryfast -crf 23 -maxrate 4875352 -bufsize 9750704 -x264opts:0 subme=0:me_range=4:rc_lookahead=10:me=dia:no_chroma_me:8x8dct=0:partitions=none -force_key_frames:0 \"expr:gte(t,0+n_forced*3)\" -sc_threshold:v:0 0 -vf \"setparams=color_primaries=bt709:color_trc=bt709:colorspace=bt709,scale=trunc(min(max(iw\,ih*a)\,min(1918\,1080*a))/2)*2:trunc(min(max(iw/a\,ih)\,min(1918/a\,1080))/2)*2,format=yuv420p\" -codec:a:0 copy -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_segment_filename \"/var/lib/jellyfin/transcodes/2a308e3c1a02707845b73d2e389fd93b%d.ts\" -hls_playlist_type vod -hls_list_size 0 -y \"/var/lib/jellyfin/transcodes/2a308e3c1a02707845b73d2e389fd93b.m3u8\""
[2023-11-08 10:48:32.687 -06:00] [WRN] Slow HTTP Response from "http://100.109.60.17:8096/videos/b8457277-ab7e-36ab-0a80-861e5b0cd021/hls1/main/0.ts?DeviceId=TW96aWxsYS81LjAgKE1hY2ludG9zaDsgSW50ZWwgTWFjIE9TIFggMTBfMTVfNykgQXBwbGVXZWJLaXQvNTM3LjM2IChLSFRNTCwgbGlrZSBHZWNrbykgQ2hyb21lLzExNy4wLjAuMCBTYWZhcmkvNTM3LjM2fDE2OTg0Mzc0NDY1NjE1&MediaSourceId=b8457277ab7e36ab0a80861e5b0cd021&VideoCodec=h264&AudioCodec=aac&AudioStreamIndex=1&VideoBitrate=266531528&AudioBitrate=135139&AudioSampleRate=48000&MaxFramerate=23.976025&PlaySessionId=62e13a223af04efa84e2e5198678bc8c&api_key=296a30d8a8e043e6a23fb14b41ca9c75&TranscodingMaxAudioChannels=2&RequireAvc=false&Tag=e7670573d27ec67aa37926e83db067f2&SegmentContainer=ts&MinSegments=2&BreakOnNonKeyFrames=True&hevc-level=123&hevc-videobitdepth=10&hevc-profile=main10&hevc-audiochannels=2&aac-profile=lc&TranscodeReasons=VideoCodecNotSupported,%20AudioCodecNotSupported&runtimeTicks=0&actualSegmentLengthTicks=30000000" to "100.114.142.135" in 0:00:11.5045354 with Status Code 200
[2023-11-08 10:48:34.739 -06:00] [INF] Stopping ffmpeg process with q command for "/var/lib/jellyfin/transcodes/2a308e3c1a02707845b73d2e389fd93b.m3u8"
[2023-11-08 10:48:35.304 -06:00] [INF] FFmpeg exited with code 0
[2023-11-08 10:48:35.304 -06:00] [INF] Deleting partial stream file(s) "/var/lib/jellyfin/transcodes/2a308e3c1a02707845b73d2e389fd93b.m3u8"
[2023-11-08 10:48:35.329 -06:00] [WRN] Slow HTTP Response from "http://100.109.60.17:8096/videos/b8457277-ab7e-36ab-0a80-861e5b0cd021/hls1/main/1.ts?DeviceId=TW96aWxsYS81LjAgKE1hY2ludG9zaDsgSW50ZWwgTWFjIE9TIFggMTBfMTVfNykgQXBwbGVXZWJLaXQvNTM3LjM2IChLSFRNTCwgbGlrZSBHZWNrbykgQ2hyb21lLzExNy4wLjAuMCBTYWZhcmkvNTM3LjM2fDE2OTg0Mzc0NDY1NjE1&MediaSourceId=b8457277ab7e36ab0a80861e5b0cd021&VideoCodec=h264&AudioCodec=aac&AudioStreamIndex=1&VideoBitrate=266531528&AudioBitrate=135139&AudioSampleRate=48000&MaxFramerate=23.976025&PlaySessionId=62e13a223af04efa84e2e5198678bc8c&api_key=296a30d8a8e043e6a23fb14b41ca9c75&TranscodingMaxAudioChannels=2&RequireAvc=false&Tag=e7670573d27ec67aa37926e83db067f2&SegmentContainer=ts&MinSegments=2&BreakOnNonKeyFrames=True&hevc-level=123&hevc-videobitdepth=10&hevc-profile=main10&hevc-audiochannels=2&aac-profile=lc&TranscodeReasons=VideoCodecNotSupported,%20AudioCodecNotSupported&runtimeTicks=30000000&actualSegmentLengthTicks=30000000" to "100.114.142.135" in 0:00:02.0303647 with Status Code 200
[2023-11-08 10:48:36.756 -06:00] [WRN] Slow HTTP Response from "http://100.109.60.17:8096/Sessions/Playing" to "100.114.142.135" in 0:00:03.2019478 with Status Code 204
[2023-11-08 10:48:36.810 -06:00] [INF] Playback stopped reported by app "Jellyfin Web" "10.8.11" playing "Pilot". Stopped at "1135" ms
[2023-11-08 10:48:36.879 -06:00] [WRN] Slow HTTP Response from "http://100.109.60.17:8096/Sessions/Playing/Stopped" to "100.114.142.135" in 0:00:02.1975153 with Status Code 204
[2023-11-08 10:48:37.480 -06:00] [INF] User policy for "weberc2". EnablePlaybackRemuxing: True EnableVideoPlaybackTranscoding: True EnableAudioPlaybackTranscoding: True
[2023-11-08 10:48:37.480 -06:00] [INF] StreamBuilder.BuildVideoItem( Profile="Anonymous Profile", Path="/media/HD0/torrent-downloads/TV/The Office (2005)/Season 01/Episode 01.mp4", AudioStreamIndex=null, SubtitleStreamIndex=null ) => ( PlayMethod=DirectPlay, TranscodeReason=0 ) "media:/videos/6995af81-283f-815f-8b8d-bd4860038e5d/stream.mp4?MediaSourceId=6995af81283f815f8b8dbd4860038e5d&Static=true&VideoCodec=hevc&AudioCodec=aac&AudioStreamIndex=1&api_key=<token>&Tag=20ec8421a8adcafa8e109a39360c78a5"
[2023-11-08 10:48:39.920 -06:00] [INF] Playback stopped reported by app "Jellyfin Web" "10.8.11" playing "Pilot". Stopped at "1455" ms
[2023-11-08 10:48:40.474 -06:00] [WRN] Slow HTTP Response from "http://100.109.60.17:8096/Sessions/Playing" to "100.114.142.135" in 0:00:02.3977857 with Status Code 204

FFmpeg Logs

/videos/b8457277-ab7e-36ab-0a80-861e5b0cd021/hls1/main/0.ts

{"Protocol":0,"Id":"b8457277ab7e36ab0a80861e5b0cd021","Path":"/media/HD0/torrent-downloads/TV/The Office (2005)/Season 01/Episode 01.mkv","EncoderPath":null,"EncoderProtocol":null,"Type":0,"Container":"mkv,webm","Size":336766496,"Name":"Episode 01","IsRemote":false,"ETag":"e7670573d27ec67aa37926e83db067f2","RunTimeTicks":13815060480,"ReadAtNativeFramerate":false,"IgnoreDts":false,"IgnoreIndex":false,"GenPtsInput":false,"SupportsTranscoding":true,"SupportsDirectStream":true,"SupportsDirectPlay":true,"IsInfiniteStream":false,"RequiresOpening":false,"OpenToken":null,"RequiresClosing":false,"LiveStreamId":null,"BufferMs":null,"RequiresLooping":false,"SupportsProbing":true,"VideoType":0,"IsoType":null,"Video3DFormat":null,"MediaStreams":[{"Codec":"hevc","CodecTag":null,"Language":"eng","ColorRange":null,"ColorSpace":"bt709","ColorTransfer":"bt709","ColorPrimaries":"bt709","DvVersionMajor":null,"DvVersionMinor":null,"DvProfile":null,"DvLevel":null,"RpuPresentFlag":null,"ElPresentFlag":null,"BlPresentFlag":null,"DvBlSignalCompatibilityId":null,"Comment":null,"TimeBase":"1/1000","CodecTimeBase":null,"Title":null,"VideoRange":"SDR","VideoRangeType":"SDR","VideoDoViTitle":null,"LocalizedUndefined":null,"LocalizedDefault":null,"LocalizedForced":null,"LocalizedExternal":null,"DisplayTitle":"1080p HEVC SDR","NalLengthSize":null,"IsInterlaced":false,"IsAVC":null,"ChannelLayout":null,"BitRate":1950141,"BitDepth":10,"RefFrames":1,"PacketLength":null,"Channels":null,"SampleRate":null,"IsDefault":true,"IsForced":false,"Height":1080,"Width":1918,"AverageFrameRate":23.976025,"RealFrameRate":23.976025,"Profile":"Main 10","Type":1,"AspectRatio":"16:9","Index":0,"Score":null,"IsExternal":false,"DeliveryMethod":null,"DeliveryUrl":null,"IsExternalUrl":null,"IsTextSubtitleStream":false,"SupportsExternalStream":false,"Path":null,"PixelFormat":"yuv420p10le","Level":123,"IsAnamorphic":null},{"Codec":"aac","CodecTag":null,"Language":"eng","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":"1/1000","CodecTimeBase":null,"Title":null,"VideoRange":null,"VideoRangeType":null,"VideoDoViTitle":null,"LocalizedUndefined":null,"LocalizedDefault":null,"LocalizedForced":null,"LocalizedExternal":null,"DisplayTitle":"English - AAC - Stereo - Default","NalLengthSize":null,"IsInterlaced":false,"IsAVC":null,"ChannelLayout":"stereo","BitRate":135139,"BitDepth":null,"RefFrames":null,"PacketLength":null,"Channels":2,"SampleRate":48000,"IsDefault":true,"IsForced":false,"Height":null,"Width":null,"AverageFrameRate":null,"RealFrameRate":null,"Profile":"LC","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},{"Codec":"aac","CodecTag":null,"Language":"eng","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":"1/1000","CodecTimeBase":null,"Title":"Commentary 1","VideoRange":null,"VideoRangeType":null,"VideoDoViTitle":null,"LocalizedUndefined":null,"LocalizedDefault":null,"LocalizedForced":null,"LocalizedExternal":null,"DisplayTitle":"Commentary 1 - English - AAC - Stereo","NalLengthSize":null,"IsInterlaced":false,"IsAVC":null,"ChannelLayout":"stereo","BitRate":128614,"BitDepth":null,"RefFrames":null,"PacketLength":null,"Channels":2,"SampleRate":48000,"IsDefault":false,"IsForced":false,"Height":null,"Width":null,"AverageFrameRate":null,"RealFrameRate":null,"Profile":"LC","Type":0,"AspectRatio":null,"Index":2,"Score":null,"IsExternal":false,"DeliveryMethod":null,"DeliveryUrl":null,"IsExternalUrl":null,"IsTextSubtitleStream":false,"SupportsExternalStream":false,"Path":null,"PixelFormat":null,"Level":0,"IsAnamorphic":null},{"Codec":"aac","CodecTag":null,"Language":"eng","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":"1/1000","CodecTimeBase":null,"Title":"Commentary 2","VideoRange":null,"VideoRangeType":null,"VideoDoViTitle":null,"LocalizedUndefined":null,"LocalizedDefault":null,"LocalizedForced":null,"LocalizedExternal":null,"DisplayTitle":"Commentary 2 - English - AAC - Stereo","NalLengthSize":null,"IsInterlaced":false,"IsAVC":null,"ChannelLayout":"stereo","BitRate":126863,"BitDepth":null,"RefFrames":null,"PacketLength":null,"Channels":2,"SampleRate":48000,"IsDefault":false,"IsForced":false,"Height":null,"Width":null,"AverageFrameRate":null,"RealFrameRate":null,"Profile":"LC","Type":0,"AspectRatio":null,"Index":3,"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":2340757,"Timestamp":null,"RequiredHttpHeaders":{},"TranscodingUrl":null,"TranscodingSubProtocol":null,"TranscodingContainer":null,"AnalyzeDurationMs":null,"DefaultAudioStreamIndex":null,"DefaultSubtitleStreamIndex":null}

/usr/lib/jellyfin-ffmpeg/ffmpeg -analyzeduration 200M -f matroska,webm -autorotate 0 -i file:"/media/HD0/torrent-downloads/TV/The Office (2005)/Season 01/Episode 01.mkv" -map_metadata -1 -map_chapters -1 -threads 0 -map 0:0 -map 0:1 -map -0:s -codec:v:0 libx264 -preset veryfast -crf 23 -maxrate 4875352 -bufsize 9750704 -x264opts:0 subme=0:me_range=4:rc_lookahead=10:me=dia:no_chroma_me:8x8dct=0:partitions=none -force_key_frames:0 "expr:gte(t,0+n_forced*3)" -sc_threshold:v:0 0 -vf "setparams=color_primaries=bt709:color_trc=bt709:colorspace=bt709,scale=trunc(min(max(iw\,ih*a)\,min(1918\,1080*a))/2)*2:trunc(min(max(iw/a\,ih)\,min(1918/a\,1080))/2)*2,format=yuv420p" -codec:a:0 copy -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_segment_filename "/var/lib/jellyfin/transcodes/2a308e3c1a02707845b73d2e389fd93b%d.ts" -hls_playlist_type vod -hls_list_size 0 -y "/var/lib/jellyfin/transcodes/2a308e3c1a02707845b73d2e389fd93b.m3u8"


ffmpeg version 5.1.3-Jellyfin Copyright (c) 2000-2022 the FFmpeg developers
  built with gcc 10 (Debian 10.2.1-6)
  configuration: --prefix=/usr/lib/jellyfin-ffmpeg --target-os=linux --extra-libs=-lfftw3f --extra-version=Jellyfin --disable-doc --disable-ffplay --disable-ptx-compression --disable-static --disable-libxcb --disable-sdl2 --disable-xlib --enable-lto --enable-gpl --enable-version3 --enable-shared --enable-gmp --enable-gnutls --enable-chromaprint --enable-libdrm --enable-libass --enable-libfreetype --enable-libfribidi --enable-libfontconfig --enable-libbluray --enable-libmp3lame --enable-libopus --enable-libtheora --enable-libvorbis --enable-libopenmpt --enable-libdav1d --enable-libwebp --enable-libvpx --enable-libx264 --enable-libx265 --enable-libzvbi --enable-libzimg --enable-libfdk-aac --toolchain=hardened --enable-cross-compile --arch=arm64 --cross-prefix=/usr/bin/aarch64-linux-gnu-
  libavutil      57. 28.100 / 57. 28.100
  libavcodec     59. 37.100 / 59. 37.100
  libavformat    59. 27.100 / 59. 27.100
  libavdevice    59.  7.100 / 59.  7.100
  libavfilter     8. 44.100 /  8. 44.100
  libswscale      6.  7.100 /  6.  7.100
  libswresample   4.  7.100 /  4.  7.100
  libpostproc    56.  6.100 / 56.  6.100
Input #0, matroska,webm, from 'file:/media/HD0/torrent-downloads/TV/The Office (2005)/Season 01/Episode 01.mkv':
  Metadata:
    CREATION_TIME   : 2017-10-02T15:03:43Z
    ENCODER         : Lavf57.7.2
  Duration: 00:23:01.51, start: 0.000000, bitrate: 1950 kb/s
  Stream #0:0(eng): Video: hevc (Main 10), yuv420p10le(tv, bt709), 1918x1080 [SAR 1:1 DAR 959:540], 23.98 fps, 23.98 tbr, 1k tbn (default)
    Metadata:
      BPS             : 1555821
      BPS-eng         : 1555821
      DURATION        : 00:23:01.380000000
      DURATION-eng    : 00:23:01.380000000
      NUMBER_OF_FRAMES: 33120
      NUMBER_OF_FRAMES-eng: 33120
      NUMBER_OF_BYTES : 268647603
      NUMBER_OF_BYTES-eng: 268647603
      _STATISTICS_WRITING_APP: mkvmerge v19.0.0 ('Brave Captain') 64-bit
      _STATISTICS_WRITING_APP-eng: mkvmerge v19.0.0 ('Brave Captain') 64-bit
      _STATISTICS_WRITING_DATE_UTC: 2018-01-31 05:47:43
      _STATISTICS_WRITING_DATE_UTC-eng: 2018-01-31 05:47:43
      _STATISTICS_TAGS: BPS DURATION NUMBER_OF_FRAMES NUMBER_OF_BYTES
      _STATISTICS_TAGS-eng: BPS DURATION NUMBER_OF_FRAMES NUMBER_OF_BYTES
  Stream #0:1(eng): Audio: aac (LC), 48000 Hz, stereo, fltp (default)
    Metadata:
      BPS             : 135139
      BPS-eng         : 135139
      DURATION        : 00:23:01.461000000
      DURATION-eng    : 00:23:01.461000000
      NUMBER_OF_FRAMES: 64756
      NUMBER_OF_FRAMES-eng: 64756
      NUMBER_OF_BYTES : 23336159
      NUMBER_OF_BYTES-eng: 23336159
      _STATISTICS_WRITING_APP: mkvmerge v19.0.0 ('Brave Captain') 64-bit
      _STATISTICS_WRITING_APP-eng: mkvmerge v19.0.0 ('Brave Captain') 64-bit
      _STATISTICS_WRITING_DATE_UTC: 2018-01-31 05:47:43
      _STATISTICS_WRITING_DATE_UTC-eng: 2018-01-31 05:47:43
      _STATISTICS_TAGS: BPS DURATION NUMBER_OF_FRAMES NUMBER_OF_BYTES
      _STATISTICS_TAGS-eng: BPS DURATION NUMBER_OF_FRAMES NUMBER_OF_BYTES
  Stream #0:2(eng): Audio: aac (LC), 48000 Hz, stereo, fltp
    Metadata:
      title           : Commentary 1
      BPS             : 128614
      BPS-eng         : 128614
      DURATION        : 00:23:01.333000000
      DURATION-eng    : 00:23:01.333000000
      NUMBER_OF_FRAMES: 64750
      NUMBER_OF_FRAMES-eng: 64750
      NUMBER_OF_BYTES : 22207473
      NUMBER_OF_BYTES-eng: 22207473
      _STATISTICS_WRITING_APP: mkvmerge v19.0.0 ('Brave Captain') 64-bit
      _STATISTICS_WRITING_APP-eng: mkvmerge v19.0.0 ('Brave Captain') 64-bit
      _STATISTICS_WRITING_DATE_UTC: 2018-01-31 05:47:43
      _STATISTICS_WRITING_DATE_UTC-eng: 2018-01-31 05:47:43
      _STATISTICS_TAGS: BPS DURATION NUMBER_OF_FRAMES NUMBER_OF_BYTES
      _STATISTICS_TAGS-eng: BPS DURATION NUMBER_OF_FRAMES NUMBER_OF_BYTES
  Stream #0:3(eng): Audio: aac (LC), 48000 Hz, stereo, fltp
    Metadata:
      title           : Commentary 2
      BPS             : 126863
      BPS-eng         : 126863
      DURATION        : 00:23:01.333000000
      DURATION-eng    : 00:23:01.333000000
      NUMBER_OF_FRAMES: 64750
      NUMBER_OF_FRAMES-eng: 64750
      NUMBER_OF_BYTES : 21905118
      NUMBER_OF_BYTES-eng: 21905118
      _STATISTICS_WRITING_APP: mkvmerge v19.0.0 ('Brave Captain') 64-bit
      _STATISTICS_WRITING_APP-eng: mkvmerge v19.0.0 ('Brave Captain') 64-bit
      _STATISTICS_WRITING_DATE_UTC: 2018-01-31 05:47:43
      _STATISTICS_WRITING_DATE_UTC-eng: 2018-01-31 05:47:43
      _STATISTICS_TAGS: BPS DURATION NUMBER_OF_FRAMES NUMBER_OF_BYTES
      _STATISTICS_TAGS-eng: BPS DURATION NUMBER_OF_FRAMES NUMBER_OF_BYTES
Stream mapping:
  Stream #0:0 -> #0:0 (hevc (native) -> h264 (libx264))
  Stream #0:1 -> #0:1 (copy)
Press [q] to stop, [?] for help
[libx264 @ 0x55805d1370] using SAR=1/1
[libx264 @ 0x55805d1370] using cpu capabilities: ARMv8 NEON
[libx264 @ 0x55805d1370] profile Main, level 4.0, 4:2:0, 8-bit
[libx264 @ 0x55805d1370] 264 - core 160 r3011 cde9a93 - H.264/MPEG-4 AVC codec - Copyleft 2003-2020 - http://www.videolan.org/x264.html - options: cabac=1 ref=1 deblock=1:0:0 analyse=0x1:0 me=dia subme=0 psy=1 psy_rd=1.00:0.00 mixed_ref=0 me_range=4 chroma_me=0 trellis=0 8x8dct=0 cqm=0 deadzone=21,11 fast_pskip=1 chroma_qp_offset=0 threads=6 lookahead_threads=1 sliced_threads=0 nr=0 decimate=1 interlaced=0 bluray_compat=0 constrained_intra=0 bframes=3 b_pyramid=2 b_adapt=1 b_bias=0 direct=1 weightb=1 open_gop=0 weightp=1 keyint=250 keyint_min=23 scenecut=0 intra_refresh=0 rc_lookahead=10 rc=crf mbtree=1 crf=23.0 qcomp=0.60 qpmin=0 qpmax=69 qpstep=4 vbv_maxrate=4875 vbv_bufsize=9750 crf_max=0.0 nal_hrd=none filler=0 ip_ratio=1.40 aq=1:1.00
Output #0, hls, to '/var/lib/jellyfin/transcodes/2a308e3c1a02707845b73d2e389fd93b.m3u8':
  Metadata:
    encoder         : Lavf59.27.100
  Stream #0:0: Video: h264, yuv420p(tv, bt709, progressive), 1918x1080 [SAR 1:1 DAR 959:540], q=2-31, 23.98 fps, 90k tbn (default)
    Metadata:
      encoder         : Lavc59.37.100 libx264
    Side data:
      cpb: bitrate max/min/avg: 4875000/0/0 buffer size: 9750000 vbv_delay: N/A
  Stream #0:1: Audio: aac (LC), 48000 Hz, stereo, fltp (default)
frame=    1 fps=0.0 q=0.0 size=N/A time=00:00:00.00 bitrate=N/A speed=   0x    
frame=   11 fps=0.0 q=0.0 size=N/A time=00:00:00.34 bitrate=N/A speed=0.511x    
frame=   19 fps= 16 q=0.0 size=N/A time=00:00:00.68 bitrate=N/A speed=0.564x    
frame=   27 fps= 16 q=28.0 size=N/A time=00:00:01.02 bitrate=N/A speed=0.593x    
frame=   35 fps= 16 q=28.0 size=N/A time=00:00:01.30 bitrate=N/A speed=0.579x    
frame=   42 fps= 15 q=28.0 size=N/A time=00:00:01.64 bitrate=N/A speed=0.593x    
frame=   50 fps= 15 q=28.0 size=N/A time=00:00:01.98 bitrate=N/A speed=0.587x    
frame=   59 fps= 15 q=28.0 size=N/A time=00:00:02.32 bitrate=N/A speed=0.598x    
frame=   66 fps= 15 q=28.0 size=N/A time=00:00:02.75 bitrate=N/A speed=0.62x    
frame=   74 fps= 14 q=28.0 size=N/A time=00:00:03.09 bitrate=N/A speed=0.603x    
frame=   84 fps= 15 q=28.0 size=N/A time=00:00:03.43 bitrate=N/A speed=0.605x    
frame=   90 fps= 15 q=28.0 size=N/A time=00:00:03.58 bitrate=N/A speed=0.579x    
[hls @ 0x55805ea7a0] Opening '/var/lib/jellyfin/transcodes/2a308e3c1a02707845b73d2e389fd93b0.ts' for writing
frame=   97 fps= 14 q=34.0 size=N/A time=00:00:03.92 bitrate=N/A speed=0.58x    
frame=  104 fps= 14 q=35.0 size=N/A time=00:00:04.26 bitrate=N/A speed=0.587x    
frame=  112 fps= 14 q=37.0 size=N/A time=00:00:04.60 bitrate=N/A speed=0.59x    
frame=  121 fps= 14 q=29.0 size=N/A time=00:00:04.94 bitrate=N/A speed=0.588x    
frame=  130 fps= 14 q=28.0 size=N/A time=00:00:05.29 bitrate=N/A speed=0.588x    
frame=  137 fps= 14 q=28.0 size=N/A time=00:00:05.65 bitrate=N/A speed=0.594x    
frame=  145 fps= 14 q=28.0 size=N/A time=00:00:05.97 bitrate=N/A speed=0.595x    
frame=  153 fps= 14 q=28.0 size=N/A time=00:00:06.31 bitrate=N/A speed=0.596x    
frame=  161 fps= 14 q=28.0 size=N/A time=00:00:06.65 bitrate=N/A speed=0.596x    
[hls @ 0x55805ea7a0] Opening '/var/lib/jellyfin/transcodes/2a308e3c1a02707845b73d2e389fd93b1.ts' for writing
frame=  172 fps= 15 q=28.0 size=N/A time=00:00:06.99 bitrate=N/A speed=0.598x    
frame=  179 fps= 15 q=28.0 size=N/A time=00:00:07.50 bitrate=N/A speed=0.613x    
frame=  188 fps= 15 q=28.0 size=N/A time=00:00:07.85 bitrate=N/A speed=0.615x    
frame=  193 fps= 15 q=28.0 size=N/A time=00:00:08.04 bitrate=N/A speed=0.606x    

[q] command received. Exiting.

[hls @ 0x55805ea7a0] Opening '/var/lib/jellyfin/transcodes/2a308e3c1a02707845b73d2e389fd93b2.ts' for writing
frame=  198 fps= 14 q=-1.0 Lsize=N/A time=00:00:08.34 bitrate=N/A speed=0.598x    
video:4161kB audio:159kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: unknown
[libx264 @ 0x55805d1370] frame I:3     Avg QP:15.29  size: 58382
[libx264 @ 0x55805d1370] frame P:77    Avg QP:23.96  size: 32918
[libx264 @ 0x55805d1370] frame B:118   Avg QP:26.14  size: 13141
[libx264 @ 0x55805d1370] consecutive B-frames: 19.7%  1.0%  4.5% 74.7%
[libx264 @ 0x55805d1370] mb I  I16..4: 57.5%  0.0% 42.5%
[libx264 @ 0x55805d1370] mb P  I16..4: 51.9%  0.0%  0.0%  P16..4: 33.4%  0.0%  0.0%  0.0%  0.0%    skip:14.7%
[libx264 @ 0x55805d1370] mb B  I16..4:  5.5%  0.0%  0.0%  B16..8: 31.7%  0.0%  0.0%  direct: 8.2%  skip:54.6%  L0:41.0% L1:46.2% BI:12.8%
[libx264 @ 0x55805d1370] coded y,uvDC,uvAC intra: 19.4% 15.9% 0.6% inter: 13.2% 7.8% 0.0%
[libx264 @ 0x55805d1370] i16 v,h,dc,p: 37% 24% 14% 24%
[libx264 @ 0x55805d1370] i4 v,h,dc,ddl,ddr,vr,hd,vl,hu: 25% 20% 12%  4% 11%  8%  7%  6%  8%
[libx264 @ 0x55805d1370] i8c dc,h,v,p: 58% 18% 21%  3%
[libx264 @ 0x55805d1370] Weighted P-Frames: Y:2.6% UV:0.0%
[libx264 @ 0x55805d1370] kb/s:4127.25

Stats for Nerds Screenshots

Server System (please complete the following information):

  • OS: Raspbian
  • Jellyfin Version: 10.8.11
  • Hardware settings & device: Raspberry Pi 4
  • Reverse proxy: none
  • Other hardware notes: USB3 hard disk

Client System (please complete the following information):

  • Device: MacBook Pro
  • OS: macOS
  • Client: Web/Browser
  • Browser (if Web client): Chrome
  • Client and Browser Version: 10.8.11 and 117.0.5938.132 x86_64
@weberc2
Copy link
Author

weberc2 commented Nov 8, 2023

I'm also seeing "SupportsDirectStream": false and "TranscodingUrl": "...VideoCodec=h264..." in the PlaybackInfo response body:

URL: http://raspberrypi:8096/Items/b8457277ab7e36ab0a80861e5b0cd021/PlaybackInfo?UserId=488517aee48541448542fa83102806a3&StartTimeTicks=974509670&IsPlayback=true&AutoOpenLiveStream=true&MaxStreamingBitrate=76363636

Request Body

{
    "DeviceProfile": {
        "MaxStreamingBitrate": 120000000,
        "MaxStaticBitrate": 100000000,
        "MusicStreamingTranscodingBitrate": 384000,
        "DirectPlayProfiles": [
            {
                "Container": "webm",
                "Type": "Video",
                "VideoCodec": "vp8,vp9,av1",
                "AudioCodec": "vorbis,opus"
            },
            {
                "Container": "mp4,m4v",
                "Type": "Video",
                "VideoCodec": "h264,hevc,vp9,av1",
                "AudioCodec": "aac,mp3,opus,flac,vorbis"
            },
            {
                "Container": "mov",
                "Type": "Video",
                "VideoCodec": "h264",
                "AudioCodec": "aac,mp3,opus,flac,vorbis"
            },
            {
                "Container": "opus",
                "Type": "Audio"
            },
            {
                "Container": "webm",
                "AudioCodec": "opus",
                "Type": "Audio"
            },
            {
                "Container": "mp3",
                "Type": "Audio"
            },
            {
                "Container": "aac",
                "Type": "Audio"
            },
            {
                "Container": "m4a",
                "AudioCodec": "aac",
                "Type": "Audio"
            },
            {
                "Container": "m4b",
                "AudioCodec": "aac",
                "Type": "Audio"
            },
            {
                "Container": "flac",
                "Type": "Audio"
            },
            {
                "Container": "webma",
                "Type": "Audio"
            },
            {
                "Container": "webm",
                "AudioCodec": "webma",
                "Type": "Audio"
            },
            {
                "Container": "wav",
                "Type": "Audio"
            },
            {
                "Container": "ogg",
                "Type": "Audio"
            }
        ],
        "TranscodingProfiles": [
            {
                "Container": "ts",
                "Type": "Audio",
                "AudioCodec": "aac",
                "Context": "Streaming",
                "Protocol": "hls",
                "MaxAudioChannels": "2",
                "MinSegments": "2",
                "BreakOnNonKeyFrames": true
            },
            {
                "Container": "aac",
                "Type": "Audio",
                "AudioCodec": "aac",
                "Context": "Streaming",
                "Protocol": "http",
                "MaxAudioChannels": "2"
            },
            {
                "Container": "mp3",
                "Type": "Audio",
                "AudioCodec": "mp3",
                "Context": "Streaming",
                "Protocol": "http",
                "MaxAudioChannels": "2"
            },
            {
                "Container": "opus",
                "Type": "Audio",
                "AudioCodec": "opus",
                "Context": "Streaming",
                "Protocol": "http",
                "MaxAudioChannels": "2"
            },
            {
                "Container": "wav",
                "Type": "Audio",
                "AudioCodec": "wav",
                "Context": "Streaming",
                "Protocol": "http",
                "MaxAudioChannels": "2"
            },
            {
                "Container": "opus",
                "Type": "Audio",
                "AudioCodec": "opus",
                "Context": "Static",
                "Protocol": "http",
                "MaxAudioChannels": "2"
            },
            {
                "Container": "mp3",
                "Type": "Audio",
                "AudioCodec": "mp3",
                "Context": "Static",
                "Protocol": "http",
                "MaxAudioChannels": "2"
            },
            {
                "Container": "aac",
                "Type": "Audio",
                "AudioCodec": "aac",
                "Context": "Static",
                "Protocol": "http",
                "MaxAudioChannels": "2"
            },
            {
                "Container": "wav",
                "Type": "Audio",
                "AudioCodec": "wav",
                "Context": "Static",
                "Protocol": "http",
                "MaxAudioChannels": "2"
            },
            {
                "Container": "ts",
                "Type": "Video",
                "AudioCodec": "aac,mp3",
                "VideoCodec": "h264",
                "Context": "Streaming",
                "Protocol": "hls",
                "MaxAudioChannels": "2",
                "MinSegments": "2",
                "BreakOnNonKeyFrames": true
            }
        ],
        "ContainerProfiles": [],
        "CodecProfiles": [
            {
                "Type": "VideoAudio",
                "Codec": "aac",
                "Conditions": [
                    {
                        "Condition": "Equals",
                        "Property": "IsSecondaryAudio",
                        "Value": "false",
                        "IsRequired": false
                    }
                ]
            },
            {
                "Type": "VideoAudio",
                "Conditions": [
                    {
                        "Condition": "Equals",
                        "Property": "IsSecondaryAudio",
                        "Value": "false",
                        "IsRequired": false
                    }
                ]
            },
            {
                "Type": "Video",
                "Codec": "h264",
                "Conditions": [
                    {
                        "Condition": "NotEquals",
                        "Property": "IsAnamorphic",
                        "Value": "true",
                        "IsRequired": false
                    },
                    {
                        "Condition": "EqualsAny",
                        "Property": "VideoProfile",
                        "Value": "high|main|baseline|constrained baseline|high 10",
                        "IsRequired": false
                    },
                    {
                        "Condition": "EqualsAny",
                        "Property": "VideoRangeType",
                        "Value": "SDR",
                        "IsRequired": false
                    },
                    {
                        "Condition": "LessThanEqual",
                        "Property": "VideoLevel",
                        "Value": "52",
                        "IsRequired": false
                    },
                    {
                        "Condition": "NotEquals",
                        "Property": "IsInterlaced",
                        "Value": "true",
                        "IsRequired": false
                    }
                ]
            },
            {
                "Type": "Video",
                "Codec": "hevc",
                "Conditions": [
                    {
                        "Condition": "NotEquals",
                        "Property": "IsAnamorphic",
                        "Value": "true",
                        "IsRequired": false
                    },
                    {
                        "Condition": "EqualsAny",
                        "Property": "VideoProfile",
                        "Value": "main|main 10",
                        "IsRequired": false
                    },
                    {
                        "Condition": "EqualsAny",
                        "Property": "VideoRangeType",
                        "Value": "SDR",
                        "IsRequired": false
                    },
                    {
                        "Condition": "LessThanEqual",
                        "Property": "VideoLevel",
                        "Value": "183",
                        "IsRequired": false
                    },
                    {
                        "Condition": "NotEquals",
                        "Property": "IsInterlaced",
                        "Value": "true",
                        "IsRequired": false
                    }
                ]
            },
            {
                "Type": "Video",
                "Codec": "vp9",
                "Conditions": [
                    {
                        "Condition": "EqualsAny",
                        "Property": "VideoRangeType",
                        "Value": "SDR|HDR10|HLG",
                        "IsRequired": false
                    }
                ]
            },
            {
                "Type": "Video",
                "Codec": "av1",
                "Conditions": [
                    {
                        "Condition": "EqualsAny",
                        "Property": "VideoRangeType",
                        "Value": "SDR|HDR10|HLG",
                        "IsRequired": false
                    }
                ]
            }
        ],
        "SubtitleProfiles": [
            {
                "Format": "vtt",
                "Method": "External"
            },
            {
                "Format": "ass",
                "Method": "External"
            },
            {
                "Format": "ssa",
                "Method": "External"
            }
        ],
        "ResponseProfiles": [
            {
                "Type": "Video",
                "Container": "m4v",
                "MimeType": "video/mp4"
            }
        ]
    }
}

Response Body

{
    "MediaSources": [
        {
            "Protocol": "File",
            "Id": "b8457277ab7e36ab0a80861e5b0cd021",
            "Path": "/media/HD0/torrent-downloads/TV/The Office (2005)/Season 01/Episode 01.mkv",
            "Type": "Default",
            "Container": "webm",
            "Size": 336766496,
            "Name": "Episode 01",
            "IsRemote": false,
            "ETag": "e7670573d27ec67aa37926e83db067f2",
            "RunTimeTicks": 13815060480,
            "ReadAtNativeFramerate": false,
            "IgnoreDts": false,
            "IgnoreIndex": false,
            "GenPtsInput": false,
            "SupportsTranscoding": true,
            "SupportsDirectStream": false,
            "SupportsDirectPlay": false,
            "IsInfiniteStream": false,
            "RequiresOpening": false,
            "RequiresClosing": false,
            "RequiresLooping": false,
            "SupportsProbing": true,
            "VideoType": "VideoFile",
            "MediaStreams": [
                {
                    "Codec": "hevc",
                    "Language": "eng",
                    "ColorSpace": "bt709",
                    "ColorTransfer": "bt709",
                    "ColorPrimaries": "bt709",
                    "TimeBase": "1/1000",
                    "VideoRange": "SDR",
                    "VideoRangeType": "SDR",
                    "DisplayTitle": "1080p HEVC SDR",
                    "IsInterlaced": false,
                    "BitRate": 1950141,
                    "BitDepth": 10,
                    "RefFrames": 1,
                    "IsDefault": true,
                    "IsForced": false,
                    "Height": 1080,
                    "Width": 1918,
                    "AverageFrameRate": 23.976025,
                    "RealFrameRate": 23.976025,
                    "Profile": "Main 10",
                    "Type": "Video",
                    "AspectRatio": "16:9",
                    "Index": 0,
                    "IsExternal": false,
                    "IsTextSubtitleStream": false,
                    "SupportsExternalStream": false,
                    "PixelFormat": "yuv420p10le",
                    "Level": 123
                },
                {
                    "Codec": "aac",
                    "Language": "eng",
                    "TimeBase": "1/1000",
                    "DisplayTitle": "English - AAC - Stereo - Default",
                    "IsInterlaced": false,
                    "ChannelLayout": "stereo",
                    "BitRate": 135139,
                    "Channels": 2,
                    "SampleRate": 48000,
                    "IsDefault": true,
                    "IsForced": false,
                    "Profile": "LC",
                    "Type": "Audio",
                    "Index": 1,
                    "IsExternal": false,
                    "IsTextSubtitleStream": false,
                    "SupportsExternalStream": false,
                    "Level": 0
                },
                {
                    "Codec": "aac",
                    "Language": "eng",
                    "TimeBase": "1/1000",
                    "Title": "Commentary 1",
                    "DisplayTitle": "Commentary 1 - English - AAC - Stereo",
                    "IsInterlaced": false,
                    "ChannelLayout": "stereo",
                    "BitRate": 128614,
                    "Channels": 2,
                    "SampleRate": 48000,
                    "IsDefault": false,
                    "IsForced": false,
                    "Profile": "LC",
                    "Type": "Audio",
                    "Index": 2,
                    "IsExternal": false,
                    "IsTextSubtitleStream": false,
                    "SupportsExternalStream": false,
                    "Level": 0
                },
                {
                    "Codec": "aac",
                    "Language": "eng",
                    "TimeBase": "1/1000",
                    "Title": "Commentary 2",
                    "DisplayTitle": "Commentary 2 - English - AAC - Stereo",
                    "IsInterlaced": false,
                    "ChannelLayout": "stereo",
                    "BitRate": 126863,
                    "Channels": 2,
                    "SampleRate": 48000,
                    "IsDefault": false,
                    "IsForced": false,
                    "Profile": "LC",
                    "Type": "Audio",
                    "Index": 3,
                    "IsExternal": false,
                    "IsTextSubtitleStream": false,
                    "SupportsExternalStream": false,
                    "Level": 0
                }
            ],
            "MediaAttachments": [],
            "Formats": [],
            "Bitrate": 2340757,
            "RequiredHttpHeaders": {},
            "TranscodingUrl": "/videos/b8457277-ab7e-36ab-0a80-861e5b0cd021/master.m3u8?DeviceId=TW96aWxsYS81LjAgKE1hY2ludG9zaDsgSW50ZWwgTWFjIE9TIFggMTBfMTVfNykgQXBwbGVXZWJLaXQvNTM3LjM2IChLSFRNTCwgbGlrZSBHZWNrbykgQ2hyb21lLzExNy4wLjAuMCBTYWZhcmkvNTM3LjM2fDE2OTg0Mzc0NDY1NjE1\u0026MediaSourceId=b8457277ab7e36ab0a80861e5b0cd021\u0026VideoCodec=h264\u0026AudioCodec=aac\u0026AudioStreamIndex=1\u0026VideoBitrate=76228497\u0026AudioBitrate=135139\u0026AudioSampleRate=48000\u0026MaxFramerate=23.976025\u0026PlaySessionId=7aa8d829a0334f98bec12bd96db9e69a\u0026api_key=296a30d8a8e043e6a23fb14b41ca9c75\u0026TranscodingMaxAudioChannels=2\u0026RequireAvc=false\u0026Tag=e7670573d27ec67aa37926e83db067f2\u0026SegmentContainer=ts\u0026MinSegments=2\u0026BreakOnNonKeyFrames=True\u0026hevc-level=123\u0026hevc-videobitdepth=10\u0026hevc-profile=main10\u0026hevc-audiochannels=2\u0026aac-profile=lc\u0026TranscodeReasons=VideoCodecNotSupported,%20AudioCodecNotSupported",
            "TranscodingSubProtocol": "hls",
            "TranscodingContainer": "ts",
            "DefaultAudioStreamIndex": 1
        }
    ],
    "PlaySessionId": "7aa8d829a0334f98bec12bd96db9e69a"
}

@weberc2
Copy link
Author

weberc2 commented Nov 8, 2023

I'm also seeing "SupportsDirectStream":true in the ffmpeg log (full log contents in the issue description):

{
  "Protocol": 0,
  "Id": "b8457277ab7e36ab0a80861e5b0cd021",
  "Path": "/media/HD0/torrent-downloads/TV/The Office (2005)/Season 01/Episode 01.mkv",
  "EncoderPath": null,
  "EncoderProtocol": null,
  "Type": 0,
  "Container": "mkv,webm",
  "Size": 336766496,
  "Name": "Episode 01",
  "IsRemote": false,
  "ETag": "e7670573d27ec67aa37926e83db067f2",
  "RunTimeTicks": 13815060480,
  "ReadAtNativeFramerate": false,
  "IgnoreDts": false,
  "IgnoreIndex": false,
  "GenPtsInput": false,
  "SupportsTranscoding": true,
  "SupportsDirectStream": true,
  "SupportsDirectPlay": true,
  "IsInfiniteStream": false,
  "RequiresOpening": false,
  "OpenToken": null,
  "RequiresClosing": false,
  "LiveStreamId": null,
  "BufferMs": null,
  "RequiresLooping": false,
  "SupportsProbing": true,
  "VideoType": 0,
  "IsoType": null,
  "Video3DFormat": null,
  "MediaStreams": [
    {
      "Codec": "hevc",
      "CodecTag": null,
      "Language": "eng",
      "ColorRange": null,
      "ColorSpace": "bt709",
      "ColorTransfer": "bt709",
      "ColorPrimaries": "bt709",
      "DvVersionMajor": null,
      "DvVersionMinor": null,
      "DvProfile": null,
      "DvLevel": null,
      "RpuPresentFlag": null,
      "ElPresentFlag": null,
      "BlPresentFlag": null,
      "DvBlSignalCompatibilityId": null,
      "Comment": null,
      "TimeBase": "1/1000",
      "CodecTimeBase": null,
      "Title": null,
      "VideoRange": "SDR",
      "VideoRangeType": "SDR",
      "VideoDoViTitle": null,
      "LocalizedUndefined": null,
      "LocalizedDefault": null,
      "LocalizedForced": null,
      "LocalizedExternal": null,
      "DisplayTitle": "1080p HEVC SDR",
      "NalLengthSize": null,
      "IsInterlaced": false,
      "IsAVC": null,
      "ChannelLayout": null,
      "BitRate": 1950141,
      "BitDepth": 10,
      "RefFrames": 1,
      "PacketLength": null,
      "Channels": null,
      "SampleRate": null,
      "IsDefault": true,
      "IsForced": false,
      "Height": 1080,
      "Width": 1918,
      "AverageFrameRate": 23.976025,
      "RealFrameRate": 23.976025,
      "Profile": "Main 10",
      "Type": 1,
      "AspectRatio": "16:9",
      "Index": 0,
      "Score": null,
      "IsExternal": false,
      "DeliveryMethod": null,
      "DeliveryUrl": null,
      "IsExternalUrl": null,
      "IsTextSubtitleStream": false,
      "SupportsExternalStream": false,
      "Path": null,
      "PixelFormat": "yuv420p10le",
      "Level": 123,
      "IsAnamorphic": null
    },
    {
      "Codec": "aac",
      "CodecTag": null,
      "Language": "eng",
      "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": "1/1000",
      "CodecTimeBase": null,
      "Title": null,
      "VideoRange": null,
      "VideoRangeType": null,
      "VideoDoViTitle": null,
      "LocalizedUndefined": null,
      "LocalizedDefault": null,
      "LocalizedForced": null,
      "LocalizedExternal": null,
      "DisplayTitle": "English - AAC - Stereo - Default",
      "NalLengthSize": null,
      "IsInterlaced": false,
      "IsAVC": null,
      "ChannelLayout": "stereo",
      "BitRate": 135139,
      "BitDepth": null,
      "RefFrames": null,
      "PacketLength": null,
      "Channels": 2,
      "SampleRate": 48000,
      "IsDefault": true,
      "IsForced": false,
      "Height": null,
      "Width": null,
      "AverageFrameRate": null,
      "RealFrameRate": null,
      "Profile": "LC",
      "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
    },
    {
      "Codec": "aac",
      "CodecTag": null,
      "Language": "eng",
      "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": "1/1000",
      "CodecTimeBase": null,
      "Title": "Commentary 1",
      "VideoRange": null,
      "VideoRangeType": null,
      "VideoDoViTitle": null,
      "LocalizedUndefined": null,
      "LocalizedDefault": null,
      "LocalizedForced": null,
      "LocalizedExternal": null,
      "DisplayTitle": "Commentary 1 - English - AAC - Stereo",
      "NalLengthSize": null,
      "IsInterlaced": false,
      "IsAVC": null,
      "ChannelLayout": "stereo",
      "BitRate": 128614,
      "BitDepth": null,
      "RefFrames": null,
      "PacketLength": null,
      "Channels": 2,
      "SampleRate": 48000,
      "IsDefault": false,
      "IsForced": false,
      "Height": null,
      "Width": null,
      "AverageFrameRate": null,
      "RealFrameRate": null,
      "Profile": "LC",
      "Type": 0,
      "AspectRatio": null,
      "Index": 2,
      "Score": null,
      "IsExternal": false,
      "DeliveryMethod": null,
      "DeliveryUrl": null,
      "IsExternalUrl": null,
      "IsTextSubtitleStream": false,
      "SupportsExternalStream": false,
      "Path": null,
      "PixelFormat": null,
      "Level": 0,
      "IsAnamorphic": null
    },
    {
      "Codec": "aac",
      "CodecTag": null,
      "Language": "eng",
      "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": "1/1000",
      "CodecTimeBase": null,
      "Title": "Commentary 2",
      "VideoRange": null,
      "VideoRangeType": null,
      "VideoDoViTitle": null,
      "LocalizedUndefined": null,
      "LocalizedDefault": null,
      "LocalizedForced": null,
      "LocalizedExternal": null,
      "DisplayTitle": "Commentary 2 - English - AAC - Stereo",
      "NalLengthSize": null,
      "IsInterlaced": false,
      "IsAVC": null,
      "ChannelLayout": "stereo",
      "BitRate": 126863,
      "BitDepth": null,
      "RefFrames": null,
      "PacketLength": null,
      "Channels": 2,
      "SampleRate": 48000,
      "IsDefault": false,
      "IsForced": false,
      "Height": null,
      "Width": null,
      "AverageFrameRate": null,
      "RealFrameRate": null,
      "Profile": "LC",
      "Type": 0,
      "AspectRatio": null,
      "Index": 3,
      "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": 2340757,
  "Timestamp": null,
  "RequiredHttpHeaders": {},
  "TranscodingUrl": null,
  "TranscodingSubProtocol": null,
  "TranscodingContainer": null,
  "AnalyzeDurationMs": null,
  "DefaultAudioStreamIndex": null,
  "DefaultSubtitleStreamIndex": null
}

@dmitrylyzo
Copy link
Contributor

dmitrylyzo commented Nov 9, 2023

HEVC remuxing currently/always requires fMP4 to be enabled on the client (Settings / Playback).
I didn't immediately realize what the problem was, since I'm used to Samsung TV supporting HEVC in TS.

@weberc2
Copy link
Author

weberc2 commented Nov 10, 2023

@dmitrylyzo Ok, I can try enabling that setting on Chrome. I'm noticing there's a setting in the iOS app called "prefer fMP4", but it's grayed out--is there any way to support this in iOS? In particular, when I stream to my Samsung TV (I believe DLNA is the protocol it uses?) I still see this issue (is this because my iOS app doesn't support fMP4 or because the TV doesn't support it?).

Also, is there documentation somewhere I can update to make this more obvious to newbies like myself? I'm happy to submit a PR.

Lastly, in the longer term, shouldn't the server remix regardless of whether the client supports fMP4? As a user, my intuition is that if the client can play HEVC/mp4 then the server should remux it even if the client doesn't support fMP4--would this be a reasonable feature request?

@weberc2
Copy link
Author

weberc2 commented Nov 10, 2023

I toggled the "Prefer fMP4" setting in Chrome, but it still transcodes when I play HEVC/mkv content.

@dmitrylyzo
Copy link
Contributor

I toggled the "Prefer fMP4" setting in Chrome, but it still transcodes when I play HEVC/mkv content.

Turns out fMP4 is only available for Safari, Tizen, and webOS: https://github.com/jellyfin/jellyfin-web/blob/4b6bbcfe2671b21a79e347241eed3c70acaad9e3/src/scripts/browserDeviceProfile.js#L693
It will be available for Chrome in 10.9: jellyfin/jellyfin-web#4762

I'm noticing there's a setting in the iOS app called "prefer fMP4", but it's grayed out--is there any way to support this in iOS?

It should be available on any web based client: browsers, Android (mobile), iOS (not Swiftfin), Tizen, webOS. Although enabling it doesn't guarantee that it will use fMP4 - this will be tested later when playback starts.

In particular, when I stream to my Samsung TV (I believe DLNA is the protocol it uses?) I still see this issue (is this because my iOS app doesn't support fMP4 or because the TV doesn't support it?).

If you are using AirPlay then, I guess, it depends on your source device (iOS).
Jellyfin has a "Cast To" feature (though sometimes it's not available). You can control one Jellyfin client from the another. In this case, it will depend on the target device.

Also, is there documentation somewhere I can update to make this more obvious to newbies like myself? I'm happy to submit a PR.

Probably.
https://github.com/jellyfin/jellyfin.org/blob/master/docs/general/clients/codec-support.md

Lastly, in the longer term, shouldn't the server remix regardless of whether the client supports fMP4? As a user, my intuition is that if the client can play HEVC/mp4 then the server should remux it even if the client doesn't support fMP4--would this be a reasonable feature request?

Progressive transcoding (remux to MKV/MP4) was removed for web based clients: jellyfin/jellyfin-web#4385
Iirc, it restarted transcoding when seeking.

@weberc2
Copy link
Author

weberc2 commented Nov 11, 2023

Turns out fMP4 is only available for Safari, Tizen, and webOS

Ah, that makes sense.

It will be available for Chrome in 10.9

Huzzah! 🎊

Progressive transcoding (remux to MKV/MP4) was removed for web based clients: jellyfin/jellyfin-web#4385 Iirc, it restarted transcoding when seeking.

Forgive my ignorance, but why not just remux the whole file when the stream starts? If episode-01.mp4 plays just fine on a given client, but episode-01.mkv doesn't work, why not just remux episode-01.mkv -> episode-01.mp4 when playback starts? It only takes 3.5s for a Raspberry Pi with a USB-connected spinning metal disk to remux a 1080p TV episode, but maybe this is undesirable since a 4K movie might take multiple minutes to remux ahead of time?

@dmitrylyzo
Copy link
Contributor

Forgive my ignorance, but why not just remux the whole file when the stream starts?

When you resume watching, it starts from the requested time. Otherwise, it will take some time to remux the file from the beginning. Imagine it needs to remux almost the entire movie (big size) if you start playback almost from the end.

IMO, those seeking problems were mostly due to poor implementation of seeking in the absence of timestamps. Timestamps can be fixed with copyts. To fix seeking we shouldn't restart the transcoding job when the new time is within the current session.

Not sure, maybe there were also problems with audio desync.

@jellyfin-bot
Copy link
Contributor

This issue has gone 120 days without an update and will be closed within 21 days if there is no new activity. To prevent this issue from being closed, please confirm the issue has not already been fixed by providing updated examples or logs.

If you have any questions you can use one of several ways to contact us.

@jellyfin-bot jellyfin-bot added the stale Stale and will be closed if no activity occurs label Mar 11, 2024
@jellyfin-bot
Copy link
Contributor

This issue was closed due to inactivity.

@jellyfin-bot jellyfin-bot closed this as not planned Won't fix, can't repro, duplicate, stale Apr 1, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
stale Stale and will be closed if no activity occurs
Projects
Archived in project
Development

No branches or pull requests

3 participants