Latest PMS not reporting play status on older clients (breaking API change?)

Server Version#: 1.28.2.6151
Player Version#: OpenPHT-1.9.0.0-b0d709a7

Since the most recent version of PMS, my OpenPHT clients are having issues. I understand this is an unsupported client, but I suspect many older clients are going to suffer this same problem.

Specifically:

  • The server doesn’t show that anything is playing even though the file is streaming to the device
  • The play progress is not updating, e.g. if a file is played to the end, the server doesn’t mark it as watched. Likely linked to the point above. This is the main pain point at the moment. Even stopping a file half way doesn’t register, so I next time I want to continue watching, I need to seek to where I left off. This is painful UX.
  • On a less important, but also sad note, I used to be able to use the Plex Android app to connect to my OpenPHT clients and then use the mobile app like a remote to play files. This hasn’t worked for several versions of PMS now.

Logs included below. As soon as the file starts playing, the server emits this line specifically:

Sep 26, 2022 08:08:47.915 [0x7fce119e4b00] DEBUG - Failed to stream media, client probably disconnected after 229376 bytes: 104 - Connection reset by peer

I am still using OpenPHT since it’s still the best client with the 10ft view for a Raspberry Pi. PMP was never as stable for me. I would love to try the new HTPC interface, but there is no aarch64/arm64 support yet.

The last time there were issues like this with the play status, it impacted OpenPHT as well as older smart TV clients, so I suspect the same will happen here again.

Logs:

Sep 26, 2022 08:08:47.297 [0x7fce0a694b00] DEBUG - Request: [192.168.1.194:53888 (Allowed Network (Subnet))] GET /video/:/transcode/universal/decision?copyts=1&directPlay=1&directStream=1&duration=6144715&fastSeek=1&hasMDE=1&location=lan&maxVideoBitrate=200000&mediaIndex=0&partIndex=0&path=%2flibrary%2fmetadata%2f175891&protocol=http&session=89dbe4f8-bded-49d8-94f6-f9fb0a6d5605&videoQuality=100&videoResolution=1920x1080 (7 live) #d7a TLS Signed-in Token (michaelantunes) (OpenPHT-Embedded) (range: bytes=0-)  / Accept => */* / Host => 192-168-1-102.c2e9eb0c13ec409a82ce791b11e80dd7.plex.direct:32400 / Range => bytes=0- / User-Agent => Mozilla/5.0 (Macintosh; Intel Mac OS X 10_8_2) AppleWebKit/537.17 (KHTML, like Gecko) Chrome/24.0.1312.52 Safari/537.17 / X-Plex-Client-Capabilities => protocols=shoutcast,http-video;videoDecoders=h264{profile:high&resolution:1080&level:51};audioDecoders=mp3,aac,dts{bitrate:800000&channels:8} / X-Plex-Client-Identifier => 89dbe4f8-bded-49d8-94f6-f9fb0a6d5605 / X-Plex-Client-Profile-Extra => add-transcode-target-audio-codec(type=videoProfile&context=streaming&protocol=*&audioCodec=dca) / X-Plex-Device => RaspberryPi / X-Plex-Device-Name => OpenPHT-Embedded / X-Plex-Language => en / X-Plex-Model => RaspberryPi / X-Plex-Platform => Plex Home Theater / X-Plex-Product => Plex Home Theater / X-Plex-Token => xxxxxxxxxxxxxxxxxxxx / X-Plex-Version => 1.9.0.0-b0d709a7
Sep 26, 2022 08:08:47.297 [0x7fce0a694b00] DEBUG - [Req#d7a/Transcode] Found session GUID of 89dbe4f8-bded-49d8-94f6-f9fb0a6d5605 in session start.
Sep 26, 2022 08:08:47.297 [0x7fce0a694b00] DEBUG - [Req#d7a/Transcode] TranscodeUniversalRequest: using augmented profile Raspberry PI
Sep 26, 2022 08:08:47.298 [0x7fce0a694b00] DEBUG - [Req#d7a/Transcode] Downloading document http://127.0.0.1:32400/library/metadata/175891?includeBandwidths=1&offset=-1&X-Plex-Client-Capabilities=protocols%3dshoutcast%2chttp-video%3bvideoDecoders%3dh264%7bprofile%3ahigh%26resolution%3a1080%26level%3a51%7d%3baudioDecoders%3dmp3%2caac%2cdts%7bbitrate%3a800000%26channels%3a8%7d&X-Plex-Incomplete-Segments=1&X-Plex-Session-Identifier=89dbe4f8-bded-49d8-94f6-f9fb0a6d5605
Sep 26, 2022 08:08:47.312 [0x7fce0a694b00] DEBUG - [Req#d7a/Transcode/Req#dee] We're going to try to auto-select an audio stream for account 1.
Sep 26, 2022 08:08:47.312 [0x7fce0a694b00] DEBUG - [Req#d7a/Transcode/Req#dee] Selecting best audio stream for part ID 212945 (autoselect: 1 language: en)
Sep 26, 2022 08:08:47.312 [0x7fce0a694b00] DEBUG - [Req#d7a/Transcode/Req#dee] We're going to try to auto-select a subtitle.
Sep 26, 2022 08:08:47.312 [0x7fce0a694b00] DEBUG - [Req#d7a/Transcode/Req#dee] Audio Stream: 511786, Subtitle Stream: -1
Sep 26, 2022 08:08:47.313 [0x7fce0a694b00] VERBOSE - [Req#d7a/Transcode/Req#dee] It took 0.0 sec to serialize a list with 1 elements.
Sep 26, 2022 08:08:47.315 [0x7fce0a694b00] DEBUG - [Req#d7a/Transcode] Streaming Resource: Added session 0x7fce0f443fe8:89dbe4f8-bded-49d8-94f6-f9fb0a6d5605
Sep 26, 2022 08:08:47.316 [0x7fce0a694b00] DEBUG - [Req#d7a/Transcode] Streaming Resource: Reached Decision id=175891 codes=(MDE=1000,Direct play OK.) media=(id=166482 part=(id=212945 decision=direct play protocol=http streams=(Video=(id=511785 decision= width=720 height=372) Audio=(id=511786 decision= channels=0 rate=0))))
Sep 26, 2022 08:08:47.316 [0x7fce0a694b00] VERBOSE - It took 0.0 sec to serialize a list with 1 elements.
Sep 26, 2022 08:08:47.317 [0x7fce11be7b00] DEBUG - Completed: [192.168.1.194:53888] 206 GET /video/:/transcode/universal/decision?copyts=1&directPlay=1&directStream=1&duration=6144715&fastSeek=1&hasMDE=1&location=lan&maxVideoBitrate=200000&mediaIndex=0&partIndex=0&path=%2flibrary%2fmetadata%2f175891&protocol=http&session=89dbe4f8-bded-49d8-94f6-f9fb0a6d5605&videoQuality=100&videoResolution=1920x1080 (7 live) TLS 20ms 5626 bytes (pipelined: 4) (range: bytes=0-) 
Sep 26, 2022 08:08:47.751 [0x7fce119e4b00] VERBOSE - Comparing request from 192.168.1.194 against 192.168.1.111/255.255.255.255
Sep 26, 2022 08:08:47.751 [0x7fce119e4b00] VERBOSE - Comparing request from 192.168.1.194 against 192.168.1.194/255.255.255.255
Sep 26, 2022 08:08:47.751 [0x7fce0d25fb00] DEBUG - Request: [192.168.1.194:53896 (Allowed Network (Subnet))] GET /library/parts/212945/1662046165/file.mp4 (8 live) #cbb TLS Signed-in Token (michaelantunes) (OpenPHT-Embedded) (range: bytes=0-)  / Accept => */* / Connection => close / Host => 192-168-1-102.c2e9eb0c13ec409a82ce791b11e80dd7.plex.direct:32400 / Icy-MetaData => 1 / Range => bytes=0- / User-Agent => Mozilla/5.0 (Windows; U; Windows NT 5.1; fr; rv:1.9.2b4) Gecko/20091124 Firefox/3.6b4 (.NET CLR 3.5.30729) / X-Plex-Client-Capabilities => protocols=shoutcast,http-video;videoDecoders=h264{profile:high&resolution:1080&level:51};audioDecoders=mp3,aac,dts{bitrate:800000&channels:8} / X-Plex-Client-Identifier => 89dbe4f8-bded-49d8-94f6-f9fb0a6d5605 / X-Plex-Client-Profile-Extra => add-transcode-target-audio-codec(type=videoProfile&context=streaming&protocol=*&audioCodec=dca) / X-Plex-Device => RaspberryPi / X-Plex-Device-Name => OpenPHT-Embedded / X-Plex-Language => en / X-Plex-Model => RaspberryPi / X-Plex-Platform => Plex Home Theater / X-Plex-Product => Plex Home Theater / X-Plex-Token => xxxxxxxxxxxxxxxxxxxx / X-Plex-Version => 1.9.0.0-b0d709a7
Sep 26, 2022 08:08:47.755 [0x7fce0d25fb00] VERBOSE - [IDLE] Adding (0->1) work item http_download - /library/parts/212945/1662046165/file.mp4?X-Plex-Token=xxxxxxxxxxxxxxxxxxxx
Sep 26, 2022 08:08:47.755 [0x7fce0d25fb00] VERBOSE - [IDLE] Server is now active
Sep 26, 2022 08:08:47.755 [0x7fce0d25fb00] VERBOSE - [IDLE] * http_download - /library/parts/212945/1662046165/file.mp4?X-Plex-Token=xxxxxxxxxxxxxxxxxxxx - 1 active item(s)
Sep 26, 2022 08:08:47.755 [0x7fce0d25fb00] DEBUG - Content-Length of /home/mike/Downloads/Movies/Not Watched/Fall (2022)/Fall (2022).mp4 is 1046296259 (of total: 1046296259).
Sep 26, 2022 08:08:47.884 [0x7fce11be7b00] VERBOSE - Comparing request from 192.168.1.194 against 192.168.1.111/255.255.255.255
Sep 26, 2022 08:08:47.884 [0x7fce11be7b00] VERBOSE - Comparing request from 192.168.1.194 against 192.168.1.194/255.255.255.255
Sep 26, 2022 08:08:47.884 [0x7fce0a694b00] DEBUG - Request: [192.168.1.194:53898 (Allowed Network (Subnet))] GET /library/parts/212945/1662046165/file.mp4 (9 live) #e06 TLS Signed-in Token (michaelantunes) (OpenPHT-Embedded) (range: bytes=1041670941-)  / Accept => */* / Connection => close / Host => 192-168-1-102.c2e9eb0c13ec409a82ce791b11e80dd7.plex.direct:32400 / Icy-MetaData => 1 / Range => bytes=1041670941- / User-Agent => Mozilla/5.0 (Windows; U; Windows NT 5.1; fr; rv:1.9.2b4) Gecko/20091124 Firefox/3.6b4 (.NET CLR 3.5.30729) / X-Plex-Client-Capabilities => protocols=shoutcast,http-video;videoDecoders=h264{profile:high&resolution:1080&level:51};audioDecoders=mp3,aac,dts{bitrate:800000&channels:8} / X-Plex-Client-Identifier => 89dbe4f8-bded-49d8-94f6-f9fb0a6d5605 / X-Plex-Client-Profile-Extra => add-transcode-target-audio-codec(type=videoProfile&context=streaming&protocol=*&audioCodec=dca) / X-Plex-Device => RaspberryPi / X-Plex-Device-Name => OpenPHT-Embedded / X-Plex-Language => en / X-Plex-Model => RaspberryPi / X-Plex-Platform => Plex Home Theater / X-Plex-Product => Plex Home Theater / X-Plex-Token => xxxxxxxxxxxxxxxxxxxx / X-Plex-Version => 1.9.0.0-b0d709a7
Sep 26, 2022 08:08:47.888 [0x7fce0a694b00] VERBOSE - [IDLE] Adding (1->2) work item http_download - /library/parts/212945/1662046165/file.mp4?X-Plex-Token=xxxxxxxxxxxxxxxxxxxx
Sep 26, 2022 08:08:47.888 [0x7fce0a694b00] VERBOSE - [IDLE] * http_download - /library/parts/212945/1662046165/file.mp4?X-Plex-Token=xxxxxxxxxxxxxxxxxxxx - 2 active item(s)
Sep 26, 2022 08:08:47.888 [0x7fce0a694b00] DEBUG - Content-Length of /home/mike/Downloads/Movies/Not Watched/Fall (2022)/Fall (2022).mp4 is 4625318 (of total: 1046296259).
Sep 26, 2022 08:08:47.915 [0x7fce119e4b00] DEBUG - Failed to stream media, client probably disconnected after 229376 bytes: 104 - Connection reset by peer
Sep 26, 2022 08:08:47.915 [0x7fce119e4b00] DEBUG - Completed after connection close: [192.168.1.194:53896] 206 GET /library/parts/212945/1662046165/file.mp4 (9 live) TLS 164ms 229376 bytes (range: bytes=0-) 
Sep 26, 2022 08:08:47.916 [0x7fce119e4b00] VERBOSE - [IDLE] Removing (2->1) work item http_download - /library/parts/212945/1662046165/file.mp4?X-Plex-Token=xxxxxxxxxxxxxxxxxxxx
Sep 26, 2022 08:08:47.916 [0x7fce119e4b00] VERBOSE - [IDLE] * http_download - /library/parts/212945/1662046165/file.mp4?X-Plex-Token=xxxxxxxxxxxxxxxxxxxx - 1 active item(s)
Sep 26, 2022 08:08:48.535 [0x7fce119e4b00] DEBUG - Completed: [192.168.1.194:53898] 206 GET /library/parts/212945/1662046165/file.mp4 (8 live) TLS 651ms 4625318 bytes (range: bytes=1041670941-) 
Sep 26, 2022 08:08:49.102 [0x7fce119e4b00] VERBOSE - Comparing request from 192.168.1.194 against 192.168.1.111/255.255.255.255
Sep 26, 2022 08:08:49.102 [0x7fce119e4b00] VERBOSE - Comparing request from 192.168.1.194 against 192.168.1.194/255.255.255.255
Sep 26, 2022 08:08:49.102 [0x7fce0d25fb00] DEBUG - Request: [192.168.1.194:53900 (Allowed Network (Subnet))] GET /library/parts/212945/1662046165/file.mp4 (9 live) #e15 TLS Signed-in Token (michaelantunes) (OpenPHT-Embedded) (range: bytes=48-)  / Accept => */* / Connection => close / Host => 192-168-1-102.c2e9eb0c13ec409a82ce791b11e80dd7.plex.direct:32400 / Icy-MetaData => 1 / Range => bytes=48- / User-Agent => Mozilla/5.0 (Windows; U; Windows NT 5.1; fr; rv:1.9.2b4) Gecko/20091124 Firefox/3.6b4 (.NET CLR 3.5.30729) / X-Plex-Client-Capabilities => protocols=shoutcast,http-video;videoDecoders=h264{profile:high&resolution:1080&level:51};audioDecoders=mp3,aac,dts{bitrate:800000&channels:8} / X-Plex-Client-Identifier => 89dbe4f8-bded-49d8-94f6-f9fb0a6d5605 / X-Plex-Client-Profile-Extra => add-transcode-target-audio-codec(type=videoProfile&context=streaming&protocol=*&audioCodec=dca) / X-Plex-Device => RaspberryPi / X-Plex-Device-Name => OpenPHT-Embedded / X-Plex-Language => en / X-Plex-Model => RaspberryPi / X-Plex-Platform => Plex Home Theater / X-Plex-Product => Plex Home Theater / X-Plex-Token => xxxxxxxxxxxxxxxxxxxx / X-Plex-Version => 1.9.0.0-b0d709a7
Sep 26, 2022 08:08:49.106 [0x7fce0d25fb00] VERBOSE - [IDLE] Adding (1->2) work item http_download - /library/parts/212945/1662046165/file.mp4?X-Plex-Token=xxxxxxxxxxxxxxxxxxxx
Sep 26, 2022 08:08:49.106 [0x7fce0d25fb00] VERBOSE - [IDLE] * http_download - /library/parts/212945/1662046165/file.mp4?X-Plex-Token=xxxxxxxxxxxxxxxxxxxx - 2 active item(s)
Sep 26, 2022 08:08:49.106 [0x7fce0d25fb00] DEBUG - Content-Length of /home/mike/Downloads/Movies/Not Watched/Fall (2022)/Fall (2022).mp4 is 1046296211 (of total: 1046296259).
Sep 26, 2022 08:08:49.115 [0x7fce119e4b00] VERBOSE - [IDLE] Removing (2->1) work item http_download - /library/parts/212945/1662046165/file.mp4?X-Plex-Token=xxxxxxxxxxxxxxxxxxxx
Sep 26, 2022 08:08:49.115 [0x7fce119e4b00] VERBOSE - [IDLE] * http_download - /library/parts/212945/1662046165/file.mp4?X-Plex-Token=xxxxxxxxxxxxxxxxxxxx - 1 active item(s)
Sep 26, 2022 08:08:52.229 [0x7fce11be7b00] VERBOSE - WebSocket: processed 1 frame(s)
Sep 26, 2022 08:08:55.454 [0x7fce11be7b00] VERBOSE - WebSocket: processed 1 frame(s)
Sep 26, 2022 08:08:56.428 [0x7fce119e4b00] VERBOSE - WebSocket: processed 1 frame(s)
Sep 26, 2022 08:08:57.720 [0x7fce11be7b00] VERBOSE - We didn't receive any data from 192.168.1.194:53890 in time, dropping connection.
Sep 26, 2022 08:09:00.564 [0x7fce119e4b00] DEBUG - WebSocket: client initiated close
Sep 26, 2022 08:09:00.564 [0x7fce119e4b00] VERBOSE - WebSocket: processed 0 frame(s)
Sep 26, 2022 08:09:00.564 [0x7fce11be7b00] DEBUG - NotificationStream: Removing because of close
Sep 26, 2022 08:09:00.569 [0x7fce119e4b00] DEBUG - handleStreamRead code 1: stream truncated
Sep 26, 2022 08:09:00.569 [0x7fce119e4b00] DEBUG - Completed after connection close: [192.168.1.157:49434] -3 GET /:/websockets/notifications?filters=log (8 live) TLS GZIP 44148ms 84925 bytes

This seems quite similar to this issue from a few years back: Plex Server 1.15.3.858 and above broke save resume on OPHT, Orca and Other Plex players - #98 by dane22

OpenPHT is no longer maintained by Plex . It was released to Public domain a few years ago. PHT became “Open” PHT when it was released to the public domain.

Since that time, mid 2021 the maintainer for QNAP systems stopped supporting it.

The timeline of products PHT → PMP → specific Plex apps for Windows and Mac and set top boxes.

Regrettably, this is not supportable. You will need to use an appropriate Plex app for your device (computers, TVs, and set top boxes)

I have been a Plex user for 10+ years and understand this history. There was nothing wrong with PHT - it has been my daily driver for the longest time. It just works! I feel like this kind of response is alienating towards long time Plex users.

You no longer provide Raspberry Pi PMP images and the new HTPC doesn’t support ARM devices (will it ever?).

From this response you’re basically saying I need to buy a new device or stop updating PMS.

Can Plex not at least provide some technical detail regarding this breaking change so we can apply a patch to OpenPHT?

This topic was automatically closed 90 days after the last reply. New replies are no longer allowed.