Plex: Difference between revisions
(12 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]]. |
|||
* Relevant issues: |
|||
:* [https://www.nvidia.com/en-us/geforce/forums/discover/296230/shield-experience-upgrade-7-2-3/ Nvidia 7-2-3 know bug]: Not a SHIELD bug: Plex takes 30 seconds to start a video on SMB V3 NAS. Workaround for now is configure NAS to SMB V1. (Root cause is opportunistic locking in the NAS, fix is to turn of opportunistic locking to avoid issues with concurrent users/plex accessing the same files multiple times). |
|||
:* [https://forums.plex.tv/t/moved-plex-server-from-synology-to-shield-and-now-movies-very-slow-to-start/387804/], [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]. |
|||
* Fix: |
|||
:* Disable SMB opportunistic lock on NAS. |
|||
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. |
|||
* 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 323: | 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.