Plex: Difference between revisions
(14 intermediate revisions by the same user not shown) | |||
Line 2: | Line 2: | ||
* Plex Forums - https://forums.plex.tv/ |
* Plex Forums - https://forums.plex.tv/ |
||
* NAS Compatibility [https://docs.google.com/spreadsheets/d/1MfYoJkiwSqCXg8cm5-Ac4oOLPRtCkgUxU0jdj3tmMPc/edit#gid=1274624273] |
* NAS Compatibility [https://docs.google.com/spreadsheets/d/1MfYoJkiwSqCXg8cm5-Ac4oOLPRtCkgUxU0jdj3tmMPc/edit#gid=1274624273] |
||
;Plex Add-ons |
|||
* [https://github.com/pannal/Sub-Zero.bundle/ Sub-zero] — an alternative to built-in subtitle finder. |
|||
;Tools |
|||
* [https://www.filebot.net/ Filebot] A tool to rename media according to media center naming schemes (support Plex, Kodi...). |
|||
== Install == |
== Install == |
||
Line 20: | Line 26: | ||
== Configuration == |
== Configuration == |
||
See also |
See also [[Shieldtv]] and [[Configuration NAS Wolverine]]. |
||
=== Plex App on NVidia Shield TV Pro === |
=== Plex App on NVidia Shield TV Pro === |
||
Line 32: | Line 38: | ||
=== Plex Server === |
=== Plex Server === |
||
* Connect: http://captain:32400/ |
|||
* Server - Settings - Library - Disable media deletion. |
* Server - Settings - Library - Disable media deletion. |
||
* Languages - Prefer subtitles in Français. |
* Languages - Prefer subtitles in Français. |
||
Line 58: | Line 65: | ||
* Make sure H365 is enabled if supported. |
* Make sure H365 is enabled if supported. |
||
* Set plex add-on to autostart when Kodi starts (to avoid to navigate to that add-on every time). |
* Set plex add-on to autostart when Kodi starts (to avoid to navigate to that add-on every time). |
||
=== Prevent transcode with AC3 / EAC3 audio on Nvidia Shield TV === |
|||
Although the NVidia shield TV supports AC3 / EAC3 natively, it is transcoded by the support [https://forums.plex.tv/t/native-nvidia-shield-plex-app-wont-direct-play-4k-eac3/616436], [https://www.reddit.com/r/PleX/comments/f8eo85/plex_app_on_shield_tv_refuses_to_direct_play/] |
|||
To prevent that: |
|||
* Use Plex add-on in Kodi, instead of the Plex app on the shield. |
|||
* ??? |
|||
More on DirectPlay: |
|||
* https://www.reddit.com/r/PleX/comments/f8eo85/plex_app_on_shield_tv_refuses_to_direct_play/ |
|||
=== Naming convention === |
=== Naming convention === |
||
Line 127: | Line 124: | ||
.Plex Server |
.Plex Server |
||
* Go to server page, manage, console or troubleshooting and click Download logs. |
* Go to server page, manage, console or troubleshooting and click Download logs. |
||
=== General workaround tips === |
|||
When encountering an issue: |
|||
* Try to disable subtitles to see if issue is related to the subtitles. |
|||
* Try Kodi Plex add-on. |
|||
* Try changing the Plex server. |
|||
=== Rewind / FF issues === |
=== Rewind / FF issues === |
||
Line 137: | Line 140: | ||
=== 30s startup delay === |
=== 30s startup delay === |
||
See [[Plex issue 30s delay]]. |
|||
Symptoms: |
|||
* Symptom: when launching media, 30s (32 in fact) of spinning wheel before media shows up. During that time, dashboard doesn't show any connection. |
|||
* Relevant tickets [https://forums.plex.tv/t/nvidia-shield-tv-pro-2019-very-slow-plex-app-since-8-2-1-firmware/656558/14], [https://forums.plex.tv/t/shield-tv-beta-20-to-30-second-delay-when-playing-media/655246]. |
|||
* Seems to occur only when doing Direct Stream on the Plex App on Shieldh TV Pro. |
|||
* When transcoding (can be forced by disabling HDMI passthrough on Plex App), delay is only 8s on Shield TV Pro. |
|||
:* Can't reproduce this anymore. Audio passthrough disabled doesn't trigger transcode when using AC3 anymore (saw a quick update message before playing the media). |
|||
* On Web browser, delay is ~2s, direct or not. |
|||
* On Kodi addon, delay is ~2s. |
|||
Summary: |
|||
* The symptoms depend on: |
|||
:* Whether media is '''local''' or '''remote''' (SMB). |
|||
:: Local media means media on Shield TV Pro filesystem when using the Shield Plex serer, and media located on NAS filesystem when using the NAS Plex server. |
|||
:* Whether media container is '''MKV''' or '''MP4'''. |
|||
:: The type of MP4 (standard or web optimize) does not matter here (with respect to delay, direct play decision, or VOBSUB support). |
|||
:* Whether using the '''Plex App''' or '''Kodi add-on'''. |
|||
:* Without delay means ~2s. |
|||
* In general '''remote or local''', '''MP4 or MKV''', '''with or without VOBSUB''' are always '''direct played without delay'''. |
|||
* The exceptions are: |
|||
:* On Plex app, '''Remote MKV''' are '''direct play with 30s delay''', and '''MP4 + VOBSUB''' are '''transcoded (with bad quality)'''. |
|||
:: Transcode reason is <code>Direct Play was attempted but failed, fallen back to transcoding</code>. |
|||
:* On Kodi add-on, '''Remote MKV''' are '''direct play with 20s delay''', or sometimes fail to play. |
|||
* In conclusion, if we favor direct play anyway, our best bet is to use the Kodi add-on with the NAS Plex server. |
|||
:* But this means overloading the NAS with an additional process. |
|||
:* Kodi app is less remote friendly than the Plex app. |
|||
Some tests: |
|||
* Select movie. |
|||
* Select version |
|||
* Play from start. |
|||
* When Direct Play, try both Shield as server, and Wolverine. |
|||
* Shield App: |
|||
:* Dec 26, 2020 17:33 |
|||
:* 1080p, 1.9Mbps: Interstellar 1080p H264 AAC stereo .MP4: '''Direct Play AV, 3s''' (+SRT subtitles) |
|||
:* SD, 1.7Mbps: Interstellar 480p H264 AC3 5.1 .MKV: '''''' |
|||
:* SD, 1.5Mbps: Interstellar 480p H264 AAC 5.1 .MKV: '''''' |
|||
:* SD, 1.4Mbps: Interstellar 480p H265 AC3 5.1 .MKV: '''''' |
|||
:* Dec 26, 2020 17:36:35 |
|||
* Shield Kodi: |
|||
:* Note: on Kodi, even when there is a delay, the play request shows up immediately on the dashboard. Looking in the log, we don't see the same 30s delay between the <code>Content-Length</code> requests. |
|||
:* Dec 26, 2020 17:37:51 |
|||
:* 1080p, 1.9Mbps: Interstellar 1080p H264 AAC stereo .MP4: '''Direct Play AV, 3s''' (+SRT subtitles) |
|||
::* Note that in the logs, we see transcode messages, even though it direct plays. |
|||
Dec 26, 2020 19:11:35.247 [4977] DEBUG - [Transcode] MDE: Interstellar (2014): no direct play video profile exists for http/mp4/h264 |
|||
Dec 26, 2020 19:11:35.247 [4977] DEBUG - [Transcode] MDE: Interstellar (2014): no direct play video profile exists for http/mp4/h264/aac |
|||
Dec 26, 2020 19:11:35.247 [4977] DEBUG - [Transcode] MDE: Interstellar (2014): transcoding selected subtitle stream |
|||
Dec 26, 2020 19:11:35.247 [4977] DEBUG - [Transcode] MDE: Interstellar (2014): selected media 0 / 183 |
|||
:* SD, 1.7Mbps: Interstellar 480p H264 AC3 5.1 .MKV: '''Direct Play AV, 20s''' (+SRT subtitles!) |
|||
:* SD, 1.5Mbps: Interstellar 480p H264 AAC 5.1 .MKV: '''Direct Play AV, 20s''' (+SRT subtitles!) |
|||
:* SD, 1.4Mbps: Interstellar 480p H265 AC3 5.1 .MKV: '''''' |
|||
:* Dec 26, 2020 17:40:24 |
|||
* Shield App with Shield Server: |
|||
:* Start — Dec 26, 2020 21:24:34 |
|||
:* Delay One Brave-H264-AAC2ch.mkv: '''DP 30s''' (same with VOBSUB) |
|||
:* Delay Two Brave-H264-AAC2ch-mp4weboptim.m4v: '''DP 2s''' (no VOBSUB available :-( ) |
|||
:* Delay Three Brave-H264-AAC5.1ch.mkv: '''DP 30s''' (same with VOBSUB) |
|||
:* Delay Four Brave-H264-AAC5.1ch-mp4weboptim.m4v: '''DP 2s''' (no VOBSUB available :-( ) |
|||
:* Delay Five Brave-H264-AC32ch.mkv: '''DP 30s''' (same with VOBSUB) |
|||
:* Delay Six Brave-H264-AC32ch-mp4weboptim.m4v: '''DP 2s''' (no VOBSUB available :-( ) |
|||
:* Delay Seven Brave-H264-AC35.1chpassthrough.mkv: '''DP 30s''' (same with VOBSUB) |
|||
:* Delay Eight Brave-H264-AC35.1chpassthrough-mp4weboptim.m4v: '''DP 2s''' (no VOBSUB available :-( ) |
|||
:* Delay Nine Brave-H264-AC35.1chrecoded.mkv: '''DP 30s''' (same with VOBSUB) |
|||
:* Delay Ten Brave-H264-AC35.1chrecoded-mp4weboptim.m4v: '''DP 1s''' (no VOBSUB available :-( ) |
|||
:* End — Dec 26, 2020 21:32:52 |
|||
:* DelayTwo One - Bad Teacher-AAC2ch.mkv: '''DP 30s''' (same with VOBSUB) |
|||
:* DelayTwo Two - Bad Teacher-AAC2ch-mp4weboptim.m4v: '''DP 2s''', but if playing VOBSUB, '''transcode V (and bad quality)''' (transcode reason: Direct Play was attempted but failed, fallen back to transcoding) |
|||
:* DelayTwo Three - Bad Teacher-AAC5.1ch-mp4weboptim.m4v: '''DP 2s''', but if playing VOBSUB, '''transcode V (and bad quality)''' (transcode reason: Direct Play was attempted but failed, fallen back to transcoding) |
|||
:* DelayThree One - Brave - H264-AACstereo-MP4.m4v: '''DP 2s''' (Standard MP4) But if playing VOBSUB, '''transcode V (and bad quality)''' (transcode reason: Direct Play was attempted but failed, fallen back to transcoding)! |
|||
:* DelayThree Two - Brave - H264-AC3passthrough-MP4.m4v: '''DP 2s''' (Standard MP4). But if playing VOBSUB, '''transcode V (and bad quality)''' (transcode reason: Direct Play was attempted but failed, fallen back to transcoding)! |
|||
* Shield App with Shield Server, with local library: |
|||
:* Bad Teacher H264 AC3 5.1.mkv: '''DP 2s''' (same with VOBSUB) |
|||
* Shield Kodi with Shield Server: |
|||
:* Start — Dec 26, 2020 21:38:41 |
|||
:* Delay One Brave-H264-AAC2ch.mkv: '''DP 20s''', but '''DP 2s''' with local media. |
|||
:* Delay Two Brave-H264-AAC2ch-mp4weboptim.m4v: '''DP 2s''' |
|||
:* Delay Three Brave-H264-AAC5.1ch.mkv: '''DP 20s, but doesnt play''' (goes into ''Playing Next'' screen), but '''DP 2s''' with local media. |
|||
:: We get the following errors. But we get the same when it works, except the <code>curl_easy_perform</code> one. |
|||
Dec 26, 2020 21:42:28.038 [10513] Error — Error issuing curl_easy_perform(handle): 28 |
|||
Dec 26, 2020 21:42:30.098 [10358] Error — [Transcode] ClientProfileExtra: missing protocol parameter |
|||
Dec 26, 2020 21:42:30.098 [10358] Warning — [Transcode] ClientProfileExtra: ignoring directive: append-transcode-target-audio-codec(type=videoProfile&context=streaming&audioCodec=ac3) |
|||
Dec 26, 2020 21:42:30.099 [10358] Warning — [Transcode] TranscodeUniversalRequest: at least one profile extra directive could not be read |
|||
Dec 26, 2020 21:42:51.601 [10633] Error — Unknown metadata type: folder |
|||
Dec 26, 2020 21:42:51.693 [10634] Warning — SLOW QUERY: It took 210.000000 ms to retrieve 51 items. |
|||
:* Delay Four Brave-H264-AAC5.1ch-mp4weboptim.m4v: '''DP 2s''' |
|||
:* Delay Five Brave-H264-AC32ch.mkv: '''DP 20s, but doesnt play'''. |
|||
:* Delay Six Brave-H264-AC32ch-mp4weboptim.m4v: '''DP 2s''' |
|||
:* Delay Seven Brave-H264-AC35.1chpassthrough.mkv: '''DP 20s, but doesnt play'''. |
|||
:* Delay Eight Brave-H264-AC35.1chpassthrough-mp4weboptim.m4v: '''DP 2s''' |
|||
:* Delay Nine Brave-H264-AC35.1chrecoded.mkv: '''DP 20s, but doesnt play'''. |
|||
:* Delay Ten Brave-H264-AC35.1chrecoded-mp4weboptim.m4v: '''DP 2s''' |
|||
:* End — Dec 26, 2020 21:54:33 |
|||
:* DelayTwo One - Bad Teacher-AAC2ch.mkv: '''DP 20s''' |
|||
:* DelayTwo Two - Bad Teacher-AAC2ch-mp4weboptim.m4v: '''DP 2s''' |
|||
:* DelayTwo Three - Bad Teacher-AAC5.1ch-mp4weboptim.m4v: '''DP 2s''' |
|||
:* DelayThree One - Brave - H264-AACstereo-MP4.m4v: '''DP 2s''' (MP4 but not web optimized). If playing VOBSUB, '''DP 2s''' also! |
|||
:* DelayThree Two - Brave - H264-AC3passthrough-MP4.m4v: '''DP 2s''' (MP4 but not web optimized). If playing VOBSUB, '''DP 2s''' also! |
|||
* Shield App with Shield Server, with HDMI passthrough disabled: |
|||
:* ... This was our trick to trigger anymore when using AC3, but this doesn't work anymore. |
|||
* Shield App with Synology Server: |
|||
:* End — Dec 26, 2020 23:09:xx |
|||
:* Delay One to Ten: '''Direct Play 2s delay'''. Same with VOBSUB. |
|||
:* End — Dec 26, 2020 23:11:45 |
|||
:* DelayThree One - Brave - H264-AACstereo-MP4.m4v: '''DP 2s''' (MP4 but not web optimized) But if playing VOBSUB, '''Cannot play media''' (because transcode disabled)! |
|||
:* DelayThree Two - Brave - H264-AC3passthrough-MP4.m4v: '''DP 2s''' (MP4 but not web optimized). But if playing VOBSUB, '''Cannot play media''' (because transcode disabled)! |
|||
* Shield Kodi with Synology Server: |
|||
:* Start — Dec 26, 2020 23:15:21 |
|||
:* Delay One to Ten: '''Direct Play 2s delay'''. Same with VOBSUB. |
|||
:* End — Dec 26, 2020 23:18:35 |
|||
:* DelayTwo One - Bad Teacher-AAC2ch.mkv: '''DP 2s''' (same with VOBSUB) |
|||
:* DelayTwo Two - Bad Teacher-AAC2ch-mp4weboptim.m4v: '''DP 2s''' (same with VOBSUB) |
|||
:* DelayTwo Three - Bad Teacher-AAC5.1ch-mp4weboptim.m4v: '''DP 2s''' (same with VOBSUB) |
|||
:* DelayThree One - Brave - H264-AACstereo-MP4.m4v: '''DP 2s''' (MP4 but not web optimized). If playing VOBSUB, '''DP 2s''' also! |
|||
:* DelayThree Two - Brave - H264-AC3passthrough-MP4.m4v: '''DP 2s''' (MP4 but not web optimized). If playing VOBSUB, '''DP 2s''' also! |
|||
Relevant logs analysis: |
|||
* We get a <code>Failed to stream media, client probably disconnected after 5505024 bytes: 104 - Connection reset by peer</code>. Initially thought it was linked to 30s delay, but we get it everytimes. |
|||
<pre> |
|||
49122:Dec 26, 2020 16:53:12.388 [22929] DEBUG - Auth: authenticated user 1 as m.xelp@immie.org |
|||
49123:Dec 26, 2020 16:53:12.388 [32247] DEBUG - Request: [192.168.1.88:42344 (Subnet)] GET /library/parts/12486/1608848836/file.mkv?autoAdjustQuality=0&hasMDE=1&location=lan&mediaBufferSize=74944 (8 live) TLS Signed-in Token (m.xelp@immie.org) (range: bytes=0-) |
|||
49124:Dec 26, 2020 16:53:12.404 [32247] DEBUG - Content-Length of /storage/WOLVERINE/family/movie/_tests/Interstellar (2014) - x265.mkv is 1746637281 (of total: 1746637281). |
|||
49125:Dec 26, 2020 16:53:12.620 [22929] DEBUG - Auth: authenticated user 1 as m.xelp@immie.org |
|||
49126:Dec 26, 2020 16:53:12.620 [31709] DEBUG - Request: [192.168.1.88:42346 (Subnet)] GET /library/parts/12486/1608848836/file.mkv?autoAdjustQuality=0&hasMDE=1&location=lan&mediaBufferSize=74944 (9 live) TLS Signed-in Token (m.xelp@immie.org) (range: bytes=1746378705-) |
|||
49127:Dec 26, 2020 16:53:12.626 [31709] DEBUG - Content-Length of /storage/WOLVERINE/family/movie/_tests/Interstellar (2014) - x265.mkv is 258576 (of total: 1746637281). |
|||
49128:Dec 26, 2020 16:53:42.665 [22929] DEBUG - Failed to stream media, client probably disconnected after 5505024 bytes: 104 - Connection reset by peer |
|||
49129:Dec 26, 2020 16:53:42.665 [22929] DEBUG - Completed after connection close: [192.168.1.88:42344] 206 GET /library/parts/12486/1608848836/file.mkv?autoAdjustQuality=0&hasMDE=1&location=lan&mediaBufferSize=74944 (7 live) TLS 30276ms 5505024 bytes (range: bytes=0-) |
|||
49130:Dec 26, 2020 16:53:42.680 [22929] DEBUG - Completed: [192.168.1.88:42346] 206 GET /library/parts/12486/1608848836/file.mkv?autoAdjustQuality=0&hasMDE=1&location=lan&mediaBufferSize=74944 (7 live) TLS 30059ms 258576 bytes (range: bytes=1746378705-) |
|||
49131:Dec 26, 2020 16:53:42.780 [22929] DEBUG - Auth: authenticated user 1 as m.xelp@immie.org |
|||
49132:Dec 26, 2020 16:53:42.781 [31709] DEBUG - Request: [192.168.1.88:42350 (Subnet)] GET /library/parts/12486/1608848836/file.mkv?autoAdjustQuality=0&hasMDE=1&location=lan&mediaBufferSize=74944 (7 live) TLS Signed-in Token (m.xelp@immie.org) (range: bytes=5006-) |
|||
49133:Dec 26, 2020 16:53:42.795 [31709] DEBUG - Content-Length of /storage/WOLVERINE/family/movie/_tests/Interstellar (2014) - x265.mkv is 1746632275 (of total: 1746637281). |
|||
49134:Dec 26, 2020 16:53:43.252 [22929] DEBUG - Auth: authenticated user 1 as m.xelp@immie.org |
|||
49135:Dec 26, 2020 16:53:43.252 [31709] DEBUG - Request: [192.168.1.88:42352 (Subnet)] POST /playQueues?includeChapters=1&continuous=0&includeLoudnessRamps=1&repeat=0&extrasPrefixCount=0&type=video&shuffle=0&uri=server%3A%2F%2F315dbe1ac5eab4b3b25956e1907bba687927fecf%2Fcom.plexapp.plugins.library%2Flibrary%2Fmetadata%2F183&key=%2Flibrary%2Fmetadata%2F183 (7 live) TLS GZIP Signed-in Token (m.xelp@immie.org) |
|||
</pre> |
|||
* When on Kodi Add-on, we get this msg every 5s, even when no movie playing: |
|||
Dec 26, 2020 17:39:52.399 [22928] DEBUG - Auth: authenticated user 1 as m.xelp@immie.org |
|||
Dec 26, 2020 17:39:52.399 [2609] DEBUG - Request: [192.168.1.61:59608 (Subnet)] GET /statistics/bandwidth?timespan=6 (17 live) GZIP Signed-in Token (m.xelp@immie.org) |
|||
Dec 26, 2020 17:39:52.411 [22928] DEBUG - Completed: [192.168.1.61:59608] 200 GET /statistics/bandwidth?timespan=6 (17 live) GZIP 12ms 1514 bytes (pipelined: 19) |
|||
* When streaming ends, we get: |
|||
Dec 26, 2020 21:57:29.759 [11396] DEBUG — Streaming Resource: Terminated session 0x29fdd71598:440ac09a-635c-4e98-971b-720a0905387e with reason Client stopped playback. |
|||
Relevant client log: |
|||
12-28 18:29:37.154 i: [FFmpeg] [INFO] [Cache] Opening source from https://192-168-1-88.ab962241bee7454183355a238f9372ef.plex.direct:32400/library |
|||
/parts/12474/1608832489/file.mkv?autoAdjustQuality=0&hasMDE=1&location=lan&mediaBufferSize=74944&X-Plex-Client-Identifier=46693b1320189a6d-com-ple |
|||
xapp-android&X-Plex-Client-Platform=Android&X-Plex-Device=SHIELD%20Android%20TV&X-Plex-DRM=widevine%3Avideo&X-Plex-Platform=Android&X-Plex-Platfor |
|||
m-Version=9&X-Plex-Product=Plex%20for%20Android%20(TV)&X-Plex-Token=...UX5q&X-Plex-Version=8.11.0.22186. |
|||
12-28 18:29:37.358 i: [FFmpeg] [INFO] [Cache] Cache is enabled, connecting cache context. |
|||
12-28 18:29:37.470 i: [FFmpeg] [INFO] [Cache] Worker thread has been enabled and will start processing data. |
|||
12-28 18:29:37.479 i: [FFmpeg] [INFO] [Cache] Source seek requested to 1725850017 bytes with 0 whence. |
|||
12-28 18:29:37.480 i: [FFmpeg] [INFO] [Cache] Seek found to 1725850017 bytes. |
|||
12-28 18:29:40.459 i: [HttpServer] /192.168.1.61:38690 - GET /logging |
|||
12-28 18:30:07.725 i: [FFmpeg] [INFO] [Cache] Seek complete to 1725850017 bytes. |
|||
12-28 18:30:07.725 i: [FFmpeg] [INFO] [Cache] Seek has returned with a response of 1725850017. |
|||
12-28 18:30:07.735 i: [FFmpeg] [INFO] [Cache] Source seek requested to 7059 bytes with 0 whence. |
|||
12-28 18:30:07.737 i: [FFmpeg] [INFO] [Cache] Seek found to 7059 bytes. |
|||
12-28 18:30:07.868 i: [FFmpeg] [INFO] [Cache] Seek complete to 7059 bytes. |
|||
12-28 18:30:07.869 i: [FFmpeg] [INFO] [Cache] Seek has returned with a response of 7059. |
|||
Fix: |
|||
Relevant analysis: |
|||
* Disable opportunistic lock on the NAS. |
|||
* When using MP4 (web optimized) container, there is no thumbnail when movie is not identified, but there is one when using .MKV container. |
|||
* AC3/AAC loudness difference: |
|||
:* With HDMI passthrough, loudness is bigger for AC3 than for AAC. When HDMI passthrough is disabled, AC3 and AAC have same loudness, which is same as AAC with HDMI passthrough. |
|||
:* This doesn't occur with Kodi add-on (probably because no HDMI passthrough). |
|||
=== MP4 container with VOBSUB subtitles triggers transcode === |
=== MP4 container with VOBSUB subtitles triggers transcode === |
||
Test case: any DVD converted with Handbrake, using e.g. MP4 container, H264, any audio, VOBSUB subtitles. |
Test case: any DVD converted with Handbrake, using e.g. MP4 container, H264, any audio, VOBSUB subtitles. |
||
Workaround: |
|||
=== MKV container with PGC subtitles triggers transcode === |
|||
* Use '''Kodi add-on'''. |
|||
* Use '''MKV''' container. |
|||
=== MKV container with PGS subtitles triggers transcode === |
|||
Test case: {{file|[zza]Lucy.2014.BDRIP.1080p.x265.AC3.mkv}}. |
Test case: {{file|[zza]Lucy.2014.BDRIP.1080p.x265.AC3.mkv}}. |
||
Workaround: |
|||
* Use '''Kodi add-on'''. |
|||
=== Quality quite bad when transcoding on Shield === |
=== Quality quite bad when transcoding on Shield === |
||
Line 317: | Line 162: | ||
* Note: in App, Video Quality, Adjust automatically is set to OFF, but Home streaming is set to Maximum. |
* Note: in App, Video Quality, Adjust automatically is set to OFF, but Home streaming is set to Maximum. |
||
=== Miscellaneous issues === |
=== Miscellaneous issues log === |
||
* 'Enhanced' - French SRT subtitles not showing |
* {{green|'''Invalid'''}} ''Enhanced'' - French SRT subtitles not showing |
||
:* Because the SRT file was empty / corrupted. |
:* Because the SRT file was empty / corrupted. |
||
* {{green|'''Invalid'''}} ''Lucy'' ({{file|[zza]Lucy.2014.BDRIP.1080p.x265.AC3.mkv}}, MKV, H265, AC3 audio, PGS and SRT subtitles) - Cannot play AC3 audio, keep transcoding it and fails. |
|||
* 'Lucy' - Cannot play AC3 audio. Turns out there was an issue in that track anyway (delay). |
|||
:* Not related to AC3 but to PGS subtitles, which trigger transcode. In addition, there was an issue in that media (audio delay). |
|||
* Keep transcoding AC3 media. |
|||
:* Playing with '''PGS subtitles''' trigger transcode, which fails (so transcode not due to using AC3 as initially thought [https://www.reddit.com/r/PleX/comments/f8eo85/plex_app_on_shield_tv_refuses_to_direct_play/], [https://forums.plex.tv/t/native-nvidia-shield-plex-app-wont-direct-play-4k-eac3/616436]). |
|||
1382:Dec 20, 2020 00:42:18.545 [23009] DEBUG - [Transcode] MDE: Lucy (2014): Direct Play is disabled |
|||
1383:Dec 20, 2020 00:42:18.545 [23009] DEBUG - [Transcode] MDE: Lucy (2014): media must be transcoded in order to use the hls protocol |
|||
:* Note Plex addon on Kodi has better support for subtitles and audio in general [https://forums.plex.tv/t/native-nvidia-shield-plex-app-wont-direct-play-4k-eac3/616436]. |
|||
* {{green|'''Invalid'''}} Keep transcoding AC3 media. |
|||
:* Does not seem to be the case in our DVD tests. The delay is due to something else. |
:* Does not seem to be the case in our DVD tests. The delay is due to something else. |
||
* |
* {{red|'''Issue'''}} Transcoding quality is quite bad even though quality is set to maxium (using Shield TV Pro for transcoding) |
||
:* In the dashboard, we see that often times the bitrate is quite low (1Mb, sometimes less, or a small 2Mb). Why can't we boost the quality of the transcode to the max (say 4Mb)? Disabling HW support does not change much on this. |
|||
* {{green|'''Workaround'''}} ''Ghost in the Shell'' ({{file|Ghost in a Shell.m4v}}, HEVC, AAC LC, VOBSUB), transcode when enabling subtitles. |
|||
:* Known issue, due to MP4 container. |
|||
=== Reset / Retore Plex Server on NVIDIA Shield === |
|||
;Ghost in the Shell (Anime) |
|||
+ Reference: [https://www.reddit.com/r/PleX/comments/p7qke6/restoring_database_backup_of_nvidia_shield_plex/ Reddit post] |
|||
* Direct Play without subtitles, but transcode with subtitles. |
|||
* MP4, but still 30s delay when using shield server. |
|||
This might be necessary if the Plex Media Server on the NVIDIA Shield refuses to start (eg. after a Shield FW upgrade). |
|||
;Lucy |
|||
* File {{file|[zza]Lucy.2014.BDRIP.1080p.x265.AC3.mkv}}, MKV, H265, AC3 audio, PGS and SRT subtitles. |
|||
;Clear data and/or cache |
|||
* Note that file has serious audio delay issues. |
|||
* This steps is necessary to recover the PMS app. |
|||
* Playing with '''PGS subtitles''' trigger transcode, which fails (so transcode not due to using AC3 as initially thought [https://www.reddit.com/r/PleX/comments/f8eo85/plex_app_on_shield_tv_refuses_to_direct_play/], [https://forums.plex.tv/t/native-nvidia-shield-plex-app-wont-direct-play-4k-eac3/616436]). |
|||
* In Shield settings, clear the Plex app '''cache''' (NOT THE DATA), and the PMS app '''data''' (note that PMS is a system app). |
|||
1382:Dec 20, 2020 00:42:18.545 [23009] DEBUG - [Transcode] MDE: Lucy (2014): Direct Play is disabled |
|||
1383:Dec 20, 2020 00:42:18.545 [23009] DEBUG - [Transcode] MDE: Lucy (2014): media must be transcoded in order to use the hls protocol |
|||
;Restore PMS backup |
|||
* Workaround: |
|||
* In Plex app, wait for PMS server to restart, and move the PMS storage location to '''user accessible''' internal storage. |
|||
:* Plex addon on Kodi [https://forums.plex.tv/t/native-nvidia-shield-plex-app-wont-direct-play-4k-eac3/616436]. |
|||
* Then In Nvidia shield storage settings, enable file transfer via network. |
|||
* Also, stop the PMS server by forcing a stop (note that PMS is a system app). |
|||
* From remote PC, go to {{file|smb://xxx.xxx.xx.x/internal/Plex Media Server/Database Backups}} folder, if it exists (otherwise you don't have any backup). Copy the file there to another location. |
|||
* Rename the latest backup files to have them look like: |
|||
:* {{file|com.plexapp.plugins.library.db}} |
|||
:* {{file|com.plexapp.plugins.library.blobs.db}} |
|||
* Go to the PMS internal storage at {{file|//xxx.xxx.xx.x/internal/android/data/com.plexapp.mediaserver.smb/Plex Media Server/Plug-in Support/Databases}} (this requires to move the PMS storage location as said in the first step). Remove the files there, and copy there the two renamed files above. |
|||
* Restart the Plex application (might also need to restart the Nvidia Shield), and wait for the PMS to restart. |
|||
* Visit the PMS server on local network (http://xxx.xxx.xx.x/32400) |
|||
:* check that the libraries are restored. |
|||
:* trigger a '''refresh of all metadata''' to have all arts restored. |
|||
== To Do == |
== To Do == |
||
* Shield TV - Play with Shield audio passthrough settings. See if that enables the direct play of AC3. |
* '''Done''' Shield TV - Play with Shield audio passthrough settings. See if that enables the direct play of AC3. — AC3 is supported wether HDMI passthrough is enabled or not. |
Latest revision as of 21:05, 16 September 2022
Links
- Plex Forums - https://forums.plex.tv/
- NAS Compatibility [1]
- Plex Add-ons
- Sub-zero — an alternative to built-in subtitle finder.
- Tools
- Filebot A tool to rename media according to media center naming schemes (support Plex, Kodi...).
Install
Plex Media Player on Linux
See https://knapsu.eu/plex/. Use flatpak. Dependency on KDE [2].
flatpak remote-add --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo flatpak remote-add --if-not-exists kdeapps --from https://distribute.kde.org/kdeapps.flatpakrepo flatpak remote-add --if-not-exists plex-media-player https://flatpak.knapsu.eu/plex-media-player.flatpakrepo flatpak install plex-media-player tv.plex.PlexMediaPlayer
... doesn't seem to work great on Debian Buster at least.
Kodi Plex Add-On
- Select add-on from videos add-on.
- Sign in to account.
- In settings, enable direct play and enable h265.
- Optionally, set add-on to autostart when Kodi starts.
Configuration
See also Shieldtv and Configuration NAS Wolverine.
Plex App on NVidia Shield TV Pro
- Audio Passthrough:
- Set to HDMI because it amplifies AC3 audio.
- Todo: Note that passthrough is not advised [3], so maybe we should reconsider that.
- Video quality - Adjust automatically:
- Currently set to OFF.
- Todo: Does that influence the quality of transcode?
Plex Server
- Connect: http://captain:32400/
- Server - Settings - Library - Disable media deletion.
- Languages - Prefer subtitles in Français.
How-To
Fix film metadata / bad matching
- Go in server library.
- Select movie, then Fix match....
If movie has several versions available, and one of these is not correct:
- Select first split apart.
See also this post about upgrading the matching agent.
Use Plex add-on in Kodi
Advantage of using the Kodi add-on is that it has (currently) better direct play support (in particular AC3 audio).
To install Plex add-on in Kodi [4],[5]:
- Go to Kodi add-on menu
- Select Download, Videos Add-Ons.
- Select Plex.
- Install.
Some settings to consider:
- Make sure direct play is enabled.
- Make sure H365 is enabled if supported.
- Set plex add-on to autostart when Kodi starts (to avoid to navigate to that add-on every time).
Naming convention
References [6]
Recommended folder structure:
/Media /Movies movie content /Music music content /TV Shows television content
- Basic Naming - separate folder
/Movies /Avatar (2009) Avatar (2009).mkv /Batman Begins (2005) Batman Begins (2005).mp4 Batman Begins (2005).en.srt poster.jpg
- Basic Naming - standalone files (slower scanning)
/Movies Avatar (2009).mkv Batman Begins (2005).mp4
- Split across multiple files
- Use
MovieName (release year) – Split_Name.ext
, where Split_Name iscdX
,discX
,diskX
,dvdX
,partX
orptX
.
/Movies /The Dark Knight (2008) The Dark Knight (2008) - pt1.mp4 The Dark Knight (2008) - pt2.mp4
- Subtitles
- Must enable the local media assets scanner. Recommended formats are SRT, SMI, SSA (or ASS).
- Use
MovieName (Release Date).[Language_Code].ext
orMovies/MovieName (Release Date).[Language_Code].ext
Movies/MovieName (Release Date).[Language_Code].forced.ext
/Movies Avatar (2009).mkv Avatar (2009).en.srt /Movies /Avatar (2009) Avatar (2009).mkv Avatar (2009).eng.ass
Troubleshooting
Collect logs
- Plex Player
- Enable network logging [7].
- Visit the given URL to collect the log (eg. http://192.168.1.88:32500/logging)
.Plex Server
- Go to server page, manage, console or troubleshooting and click Download logs.
General workaround tips
When encountering an issue:
- Try to disable subtitles to see if issue is related to the subtitles.
- Try Kodi Plex add-on.
- Try changing the Plex server.
Rewind / FF issues
- Relevant issues: https://forums.plex.tv/t/fast-forward-and-rewind-will-result-in-infinite-loading-swirl-until-restarting-episode/215991/55
- At least have that issue on Chrome / Debian Buster, with ShieldTV embedded player.
- Trying fix:
- Trying the official player from https://plex.tv, click launch.
- Trying to enable Settings -> Plex Web -> Debug -> Use alternate streaming protocol for video playback. -> Much better!
30s startup delay
See Plex issue 30s delay.
Fix:
- Disable opportunistic lock on the NAS.
MP4 container with VOBSUB subtitles triggers transcode
Test case: any DVD converted with Handbrake, using e.g. MP4 container, H264, any audio, VOBSUB subtitles.
Workaround:
- Use Kodi add-on.
- Use MKV container.
MKV container with PGS subtitles triggers transcode
Test case: [zza]Lucy.2014.BDRIP.1080p.x265.AC3.mkv.
Workaround:
- Use Kodi add-on.
Quality quite bad when transcoding on Shield
- transcoding quality is quite low (using shield plex app and shield plex server)
- Note: in App, Video Quality, Adjust automatically is set to OFF, but Home streaming is set to Maximum.
Miscellaneous issues log
- Invalid Enhanced - French SRT subtitles not showing
- Because the SRT file was empty / corrupted.
- Invalid Lucy ([zza]Lucy.2014.BDRIP.1080p.x265.AC3.mkv, MKV, H265, AC3 audio, PGS and SRT subtitles) - Cannot play AC3 audio, keep transcoding it and fails.
1382:Dec 20, 2020 00:42:18.545 [23009] DEBUG - [Transcode] MDE: Lucy (2014): Direct Play is disabled 1383:Dec 20, 2020 00:42:18.545 [23009] DEBUG - [Transcode] MDE: Lucy (2014): media must be transcoded in order to use the hls protocol
- Note Plex addon on Kodi has better support for subtitles and audio in general [10].
- Invalid Keep transcoding AC3 media.
- Does not seem to be the case in our DVD tests. The delay is due to something else.
- Issue Transcoding quality is quite bad even though quality is set to maxium (using Shield TV Pro for transcoding)
- In the dashboard, we see that often times the bitrate is quite low (1Mb, sometimes less, or a small 2Mb). Why can't we boost the quality of the transcode to the max (say 4Mb)? Disabling HW support does not change much on this.
- Workaround Ghost in the Shell (Ghost in a Shell.m4v, HEVC, AAC LC, VOBSUB), transcode when enabling subtitles.
- Known issue, due to MP4 container.
Reset / Retore Plex Server on NVIDIA Shield
+ Reference: Reddit post
This might be necessary if the Plex Media Server on the NVIDIA Shield refuses to start (eg. after a Shield FW upgrade).
- Clear data and/or cache
- This steps is necessary to recover the PMS app.
- In Shield settings, clear the Plex app cache (NOT THE DATA), and the PMS app data (note that PMS is a system app).
- Restore PMS backup
- In Plex app, wait for PMS server to restart, and move the PMS storage location to user accessible internal storage.
- Then In Nvidia shield storage settings, enable file transfer via network.
- Also, stop the PMS server by forcing a stop (note that PMS is a system app).
- From remote PC, go to smb://xxx.xxx.xx.x/internal/Plex Media Server/Database Backups folder, if it exists (otherwise you don't have any backup). Copy the file there to another location.
- Rename the latest backup files to have them look like:
- com.plexapp.plugins.library.db
- com.plexapp.plugins.library.blobs.db
- Go to the PMS internal storage at //xxx.xxx.xx.x/internal/android/data/com.plexapp.mediaserver.smb/Plex Media Server/Plug-in Support/Databases (this requires to move the PMS storage location as said in the first step). Remove the files there, and copy there the two renamed files above.
- Restart the Plex application (might also need to restart the Nvidia Shield), and wait for the PMS to restart.
- Visit the PMS server on local network (http://xxx.xxx.xx.x/32400)
- check that the libraries are restored.
- trigger a refresh of all metadata to have all arts restored.
To Do
- Done Shield TV - Play with Shield audio passthrough settings. See if that enables the direct play of AC3. — AC3 is supported wether HDMI passthrough is enabled or not.