NextPVR Forums
  • ______
  • Home
  • New Posts
  • Wiki
  • Members
  • Help
  • Search
  • Register
  • Login
  • Home
  • Wiki
  • Members
  • Help
  • Search
NextPVR Forums Public NextPVR iOS and AppleTV Clients v
1 2 3 4 5 6 Next »
New iOS/tvOS/macOS client

 
  • 0 Vote(s) - 0 Average
New iOS/tvOS/macOS client
drvolks
Offline

Junior Member

canada
Posts: 11
Threads: 2
Joined: Jan 2024
#1
2026-02-14, 07:06 PM
Hello everyone,

I'm working on a NextPVR for the Apple platforms. I wanted something a bit easier to navigate than the existing client and also adding a topic section to highlight things you are interested in and probably want to record.

Please give it a try if this is something that can be of interest to you. The TestFlight build is available here for iOS and tvOS (still waiting on approval on the macOS version) : https://testflight.apple.com/join/xfkUWtGh

The source code is available here: https://github.com/Drvolks/NexusPVR

I would appreciate the feedback Smile


Attached Files Thumbnail(s)
       
nolipro
Offline

Junior Member

Canada
Posts: 11
Threads: 0
Joined: Jan 2024
#2
2026-02-27, 09:46 PM
Great ! Thanks.
nolipro
Offline

Junior Member

Canada
Posts: 11
Threads: 0
Joined: Jan 2024
#3
2026-02-28, 12:45 PM
I have installed this application on my Mac mini, Apple TV, and iPad. All features are working correctly except for live TV, which consistently fails with the error message “Playback error: loading failed.” However, scheduled and recordings play back without any issues.

[Image: NexusPVR.png]
drvolks
Offline

Junior Member

canada
Posts: 11
Threads: 2
Joined: Jan 2024
#4
2026-02-28, 12:52 PM
(2026-02-28, 12:45 PM)nolipro Wrote: I have installed this application on my Mac mini, Apple TV, and iPad. All features are working correctly except for live TV, which consistently fails with the error message “Playback error: loading failed.” However, scheduled and recordings play back without any issues.

[Image: NexusPVR.png]

Can you look in the Settings page event logs if you see any errors?
nolipro
Offline

Junior Member

Canada
Posts: 11
Threads: 0
Joined: Jan 2024
#5
2026-02-28, 01:18 PM
Yes, I’ve cleared the logs before retrying live TV. Here are the logs following another failed attempt:

08:12:59 GET /services/service?method=recording.list&sid=***&format=json&filter=recording → 200 (45ms)
08:12:59 GET /services/service?method=recording.list&sid=***&format=json&filter=pending → 200 (45ms)
08:12:59 GET /services/service?method=recording.list&sid=***&format=json&filter=ready → 200 (45ms)
08:13:11 GET /services/service?method=recording.list&sid=***&format=json&filter=recording → 200 (62ms)
08:13:11 GET /services/service?method=recording.list&sid=***&format=json&filter=pending → 200 (63ms)
08:13:11 GET /services/service?method=recording.list&sid=***&format=json&filter=ready → 200 (63ms)
08:13:16 GET /services/service?method=recording.list&sid=***&format=json&filter=pending → 200 (26ms)
08:13:16 GET /services/service?method=recording.list&sid=***&format=json&filter=recording → 200 (26ms)
08:13:16 GET /services/service?method=recording.list&sid=***&format=json&filter=ready → 200 (46ms)
08:13:18 GET /services/service?method=recording.list&sid=***&format=json&filter=ready → ERR (0ms)
cancelled
08:13:18 GET /services/service?method=recording.list&sid=***&format=json&filter=recording → ERR (0ms)
cancelled
08:13:18 GET /services/service?method=recording.list&sid=***&format=json&filter=pending → ERR (0ms)
cancelled
08:13:18 GET /services/service?method=recording.list&sid=***&format=json&filter=recording → 200 (26ms)
08:13:18 GET /services/service?method=recording.list&sid=***&format=json&filter=pending → 200 (27ms)
08:13:18 GET /services/service?method=recording.list&sid=***&format=json&filter=ready → 200 (48ms)
08:13:21 GET /services/service?method=recording.list&sid=***&format=json&filter=recording → 200 (40ms)
08:13:21 GET /services/service?method=recording.list&sid=***&format=json&filter=pending → 200 (40ms)
08:13:21 GET /services/service?method=recording.list&sid=***&format=json&filter=ready → 200 (40ms)
drvolks
Offline

Junior Member

canada
Posts: 11
Threads: 2
Joined: Jan 2024
#6
2026-02-28, 03:00 PM
(2026-02-28, 01:18 PM)nolipro Wrote: Yes, I’ve cleared the logs before retrying live TV. Here are the logs following another failed attempt:

08:12:59 GET /services/service?method=recording.list&sid=***&format=json&filter=recording → 200 (45ms)
08:12:59 GET /services/service?method=recording.list&sid=***&format=json&filter=pending → 200 (45ms)
08:12:59 GET /services/service?method=recording.list&sid=***&format=json&filter=ready → 200 (45ms)
08:13:11 GET /services/service?method=recording.list&sid=***&format=json&filter=recording → 200 (62ms)
08:13:11 GET /services/service?method=recording.list&sid=***&format=json&filter=pending → 200 (63ms)
08:13:11 GET /services/service?method=recording.list&sid=***&format=json&filter=ready → 200 (63ms)
08:13:16 GET /services/service?method=recording.list&sid=***&format=json&filter=pending → 200 (26ms)
08:13:16 GET /services/service?method=recording.list&sid=***&format=json&filter=recording → 200 (26ms)
08:13:16 GET /services/service?method=recording.list&sid=***&format=json&filter=ready → 200 (46ms)
08:13:18 GET /services/service?method=recording.list&sid=***&format=json&filter=ready → ERR (0ms)
  cancelled
08:13:18 GET /services/service?method=recording.list&sid=***&format=json&filter=recording → ERR (0ms)
  cancelled
08:13:18 GET /services/service?method=recording.list&sid=***&format=json&filter=pending → ERR (0ms)
  cancelled
08:13:18 GET /services/service?method=recording.list&sid=***&format=json&filter=recording → 200 (26ms)
08:13:18 GET /services/service?method=recording.list&sid=***&format=json&filter=pending → 200 (27ms)
08:13:18 GET /services/service?method=recording.list&sid=***&format=json&filter=ready → 200 (48ms)
08:13:21 GET /services/service?method=recording.list&sid=***&format=json&filter=recording → 200 (40ms)
08:13:21 GET /services/service?method=recording.list&sid=***&format=json&filter=pending → 200 (40ms)
08:13:21 GET /services/service?method=recording.list&sid=***&format=json&filter=ready → 200 (40ms)

Those are all recording list calls. In the latest build (139) I've added some video player logs as well hopefully it will help narrow down the issue!
Thanks for helping Smile
mvallevand
Offline

Posting Freak

Ontario Canada
Posts: 54,995
Threads: 983
Joined: May 2006
#7
2026-02-28, 03:09 PM
Although you use &client you should still be adding the &sid unless the client and the sid are the same.

Martin
nolipro
Offline

Junior Member

Canada
Posts: 11
Threads: 0
Joined: Jan 2024
#8
2026-02-28, 03:27 PM
J just installed the new build (139). Here are the logs:
10:25:22 GET /services/service?method=recording.list&sid=***&format=json&filter=recording → 200 (18ms)
10:25:22 GET /services/service?method=recording.list&sid=***&format=json&filter=pending → 200 (18ms)
10:25:22 GET /services/service?method=recording.list&sid=***&format=json&filter=ready → 200 (327ms)
10:25:26 GET /services/service?method=recording.list&sid=***&format=json&filter=recording → 200 (31ms)
10:25:26 GET /services/service?method=recording.list&sid=***&format=json&filter=pending → 200 (31ms)
10:25:26 GET /services/service?method=recording.list&sid=***&format=json&filter=ready → 200 (59ms)
10:25:27 PLAY Source /v1 [CFTM-DT] (201000000) (MPEG-2) [2 sources] → ERR
Cannot open file 'Source%20/v1%20%5BCFTM-DT%5D%20(201000000)%20(MPEG-2)%20%5B2%20sources%5D': No such file or directory
10:25:27 PLAY Source /v1 [CFTM-DT] (201000000) (MPEG-2) [2 sources] → ERR
Failed to open Source%20/v1%20%5BCFTM-DT%5D%20(201000000)%20(MPEG-2)%20%5B2%20sources%5D.
10:25:27 PLAY Source /v1 [CFTM-DT] (201000000) (MPEG-2) [2 sources] → ERR
Failed to open Source%20/v1%20%5BCFTM-DT%5D%20(201000000)%20(MPEG-2)%20%5B2%20sources%5D.
10:25:27 GET /services/service?method=recording.list&sid=***&format=json&filter=ready → ERR (1ms)
cancelled
10:25:27 GET /services/service?method=recording.list&sid=***&format=json&filter=recording → ERR (1ms)
cancelled
10:25:27 GET /services/service?method=recording.list&sid=***&format=json&filter=pending → ERR (1ms)
cancelled
10:25:27 GET /services/service?method=recording.list&sid=***&format=json&filter=recording → 200 (29ms)
10:25:27 GET /services/service?method=recording.list&sid=***&format=json&filter=pending → 200 (29ms)
10:25:27 GET /services/service?method=recording.list&sid=***&format=json&filter=ready → 200 (42ms)
10:25:31 GET /services/service?method=recording.list&sid=***&format=json&filter=recording → 200 (50ms)
10:25:31 GET /services/service?method=recording.list&sid=***&format=json&filter=pending → 200 (50ms)
10:25:31 GET /services/service?method=recording.list&sid=***&format=json&filter=ready → 200 (50ms)
drvolks
Offline

Junior Member

canada
Posts: 11
Threads: 2
Joined: Jan 2024
#9
2026-02-28, 03:57 PM
(2026-02-28, 03:27 PM)nolipro Wrote: J just installed the new build (139). Here are the logs:
10:25:22 GET /services/service?method=recording.list&sid=***&format=json&filter=recording → 200 (18ms)
10:25:22 GET /services/service?method=recording.list&sid=***&format=json&filter=pending → 200 (18ms)
10:25:22 GET /services/service?method=recording.list&sid=***&format=json&filter=ready → 200 (327ms)
10:25:26 GET /services/service?method=recording.list&sid=***&format=json&filter=recording → 200 (31ms)
10:25:26 GET /services/service?method=recording.list&sid=***&format=json&filter=pending → 200 (31ms)
10:25:26 GET /services/service?method=recording.list&sid=***&format=json&filter=ready → 200 (59ms)
10:25:27 PLAY Source /v1 [CFTM-DT] (201000000) (MPEG-2) [2 sources] → ERR
  Cannot open file 'Source%20/v1%20%5BCFTM-DT%5D%20(201000000)%20(MPEG-2)%20%5B2%20sources%5D': No such file or directory
10:25:27 PLAY Source /v1 [CFTM-DT] (201000000) (MPEG-2) [2 sources] → ERR
  Failed to open Source%20/v1%20%5BCFTM-DT%5D%20(201000000)%20(MPEG-2)%20%5B2%20sources%5D.
10:25:27 PLAY Source /v1 [CFTM-DT] (201000000) (MPEG-2) [2 sources] → ERR
  Failed to open Source%20/v1%20%5BCFTM-DT%5D%20(201000000)%20(MPEG-2)%20%5B2%20sources%5D.
10:25:27 GET /services/service?method=recording.list&sid=***&format=json&filter=ready → ERR (1ms)
  cancelled
10:25:27 GET /services/service?method=recording.list&sid=***&format=json&filter=recording → ERR (1ms)
  cancelled
10:25:27 GET /services/service?method=recording.list&sid=***&format=json&filter=pending → ERR (1ms)
  cancelled
10:25:27 GET /services/service?method=recording.list&sid=***&format=json&filter=recording → 200 (29ms)
10:25:27 GET /services/service?method=recording.list&sid=***&format=json&filter=pending → 200 (29ms)
10:25:27 GET /services/service?method=recording.list&sid=***&format=json&filter=ready → 200 (42ms)
10:25:31 GET /services/service?method=recording.list&sid=***&format=json&filter=recording → 200 (50ms)
10:25:31 GET /services/service?method=recording.list&sid=***&format=json&filter=pending → 200 (50ms)
10:25:31 GET /services/service?method=recording.list&sid=***&format=json&filter=ready → 200 (50ms)

That's great information. Please try the latest build 142, hopefully it is fixed now!
I've also applied @mvallevand suggestion and made sure the Sid is provided with every url.
nolipro
Offline

Junior Member

Canada
Posts: 11
Threads: 0
Joined: Jan 2024
#10
2026-02-28, 04:22 PM (This post was last modified: 2026-02-28, 04:59 PM by nolipro.)
I just installed the new build 142, Live TV is working perfectly for around 30 secondes than stop. Here are the logs:

11:56:47 GET /services/service?method=recording.list&sid=***&format=json&filter=recording → 200 (210ms)
11:56:47 GET /services/service?method=recording.list&sid=***&format=json&filter=pending → 200 (210ms)
11:56:47 GET /services/service?method=recording.list&sid=***&format=json&filter=ready → 200 (211ms)
11:56:49 GET /services/service?method=recording.list&sid=***&format=json&filter=recording → 200 (46ms)
11:56:49 GET /services/service?method=recording.list&sid=***&format=json&filter=pending → 200 (46ms)
11:56:49 GET /services/service?method=recording.list&sid=***&format=json&filter=ready → 200 (57ms)
11:56:51 GET /services/service?method=channel.stream.start&sid=***&format=json&channel_id=7159 → 200 (442ms)
11:56:51 GET /services/service?method=recording.list&sid=***&format=json&filter=recording → ERR
cancelled
11:56:51 GET /services/service?method=recording.list&sid=***&format=json&filter=pending → ERR
cancelled
11:56:51 GET /services/service?method=recording.list&sid=***&format=json&filter=ready → ERR
cancelled
11:56:51 GET /services/service?method=recording.list&sid=***&format=json&filter=recording → 200 (15ms)
11:56:51 GET /services/service?method=recording.list&sid=***&format=json&filter=pending → 200 (18ms)
11:56:51 PLAY /live → ERR
mpeg2video: Invalid frame dimensions 0x0.
11:56:51 PLAY /live → ERR
mpeg2video: Invalid frame dimensions 0x0.
11:56:51 PLAY /live → ERR
mpeg2video: Invalid frame dimensions 0x0.
11:56:51 PLAY /live → ERR
mpeg2video: Invalid frame dimensions 0x0.
11:56:51 PLAY /live → ERR
mpeg2video: Invalid frame dimensions 0x0.
11:56:51 PLAY /live → ERR
mpeg2video: Invalid frame dimensions 0x0.
11:56:51 PLAY /live → ERR
mpeg2video: Invalid frame dimensions 0x0.
11:56:51 PLAY /live → ERR
mpeg2video: Invalid frame dimensions 0x0.
11:56:51 PLAY /live → ERR
mpeg2video: Invalid frame dimensions 0x0.
11:56:51 PLAY /live → ERR
mpeg2video: Invalid frame dimensions 0x0.
11:56:51 PLAY /live → ERR
mpeg2video: Invalid frame dimensions 0x0.
11:56:51 PLAY /live → ERR
mpeg2video: Invalid frame dimensions 0x0.
11:56:51 PLAY /live → ERR
mpeg2video: Invalid frame dimensions 0x0.
11:56:51 GET /services/service?method=recording.list&sid=***&format=json&filter=ready → 200 (36ms)
11:56:52 PLAY 1280x720 · MPEG-2 video · swdec · 5.1
11:57:18 PLAY /live → ERR
http: Will reconnect at 57148780 in 0 second(s), error=End of file.
11:57:18 PLAY /live → ERR
http: HTTP error 404 Not Found
11:57:21 PLAY /live → ERR
ac3: incomplete frame
11:57:22 PLAY /live → ERR
mpeg2video: ac-tex damaged at 75 44
11:57:22 PLAY /live → ERR
mpeg2video: Warning MVs not available
11:57:26 GET /services/service?method=recording.list&sid=***&format=json&filter=recording → 200 (51ms)
11:57:26 GET /services/service?method=recording.list&sid=***&format=json&filter=pending → 200 (51ms)
11:57:26 GET /services/service?method=recording.list&sid=***&format=json&filter=ready → 200 (222ms)
« Next Oldest | Next Newest »

Users browsing this thread: 1 Guest(s)

Pages (3): 1 2 3 Next »


Possibly Related Threads…
Thread Author Replies Views Last Post
  How do I adjust the skip time in the IOS client? BigBillSD 5 2,240 2026-02-16, 01:39 PM
Last Post: chama98
  Status of TVos app Allan 21 4,958 2026-02-14, 07:09 PM
Last Post: drvolks
  iOS Client EPG Colincam 3 1,468 2025-06-06, 08:50 PM
Last Post: Allan
  iOS app (and tvOS) set user/password to server psycik 4 2,133 2025-02-08, 04:42 PM
Last Post: sub
  Schedules Direct and the iOS client... Colincam 2 1,595 2024-11-16, 09:24 AM
Last Post: Colincam
Wink Apple TV Client best solution? sota 8 5,649 2024-08-15, 04:53 PM
Last Post: Kiwiamg
  Crash on startup - sometimes. iOS and tvOs psycik 1 1,647 2022-10-09, 03:33 AM
Last Post: psycik
  Latest TvOS NextPvr app won't connect manually markn62 43 16,160 2021-08-10, 04:12 PM
Last Post: markn62
  tvOS 13 & NEXTPVR - Playback Issues dsaunders 2 3,572 2019-10-05, 01:24 AM
Last Post: sub
  Apple TV Client Rob1 18 9,088 2019-03-09, 09:14 PM
Last Post: sub

  • View a Printable Version
  • Subscribe to this thread
Forum Jump:

© Designed by D&D, modified by NextPVR - Powered by MyBB

Linear Mode
Threaded Mode