PDA

View Full Version : NLite windows build



sub
2016-10-09, 05:28 PM
NLite is an open source client for NextPVR, which I've experimented with over the last couple of months. It shows the same user NextPVR user interface you're used to, but uses VLC components for playback. It's very experimental at this stage, if you'd like to try it out, I'd appreciate any feedback on how you get on.

You can download a Windows build from http://www.nextpvr.com/nlite-win32.zip

I'd recommend updating your nextpvr.exe to the own attached.

mvallevand
2016-10-09, 05:56 PM
Sub, do you mind putting the source on github?

Marin

sub
2016-10-09, 06:09 PM
Yeah sure, it'll probably be a bit later today or tomorrow. I'd like to tidy up the directory structure and project files first, so that the same source tree can be used for building for Windows, Linux and Mac. It'd be better have this sorted before it putting it on github.

mvallevand
2016-10-09, 07:32 PM
Thanks sub, at least it is your repo so you will get to accept and reject pull requests.

Martin

sub
2016-10-09, 07:41 PM
True :D

I'd prefer to not get it entirely wrong first time though, and have to move all the files around.

martint123
2016-10-10, 09:26 AM
I upgraded my server to current version, copied over the nextpvr.exe file and unzipped the nlite zip file to a temp directory on my client.
ran nlite.exe and I just get a black box on screen (looks like a command prompt box) with a blinking cursor in the top left.

No sign of any config to do or any logs.

sub
2016-10-10, 04:20 PM
If you run it from a command prompt, do you see any output?

I assume your NextPVR webserver is functional? ie, can see the home page at http://<ipaddress>:8866 in your web browser?

martint123
2016-10-10, 04:45 PM
If you run it from a command prompt, do you see any output?

Nope, cursor just drops to the next line. Ctrl-C gets the prompt back.



I assume your NextPVR webserver is functional? ie, can see the home page at http://<ipaddress>:8866 in your web browser?

Yup, takes a while initially, but then runs fine.

sub
2016-10-10, 04:54 PM
Does it make any difference if you run:

nlite.exe -server:<ipaddress>:8866:0000

martint123
2016-10-10, 05:00 PM
Sorry, same, just cursor on next line. (I removed the <> as error with them).

sub
2016-10-10, 05:10 PM
Does dropping these files in the same directory make any difference?

martint123
2016-10-10, 05:29 PM
Afraid no change.

sub
2016-10-10, 05:34 PM
Hmm, that's really odd.

Here is an updated NLite.exe to place in that directory, overwritting the old file. It just adds a bit of logging at the very beginning, so we can see if it's even attempting to start.

martint123
2016-10-10, 05:47 PM
Well it runs, but doesn't do much ;)


C:\temp\nlite-win32-binary>nlite
Checking configuration

sub
2016-10-10, 05:53 PM
This one has a few more log messages around the start up, which hopefully narrow it down.

martint123
2016-10-10, 06:07 PM
slightly more..... (ran it twice with just nlite and with the server params.

C:\temp\nlite-win32-binary>nlite
Checking configuration
About to connect to server
^C
C:\temp\nlite-win32-binary>
C:\temp\nlite-win32-binary>nlite.exe -server:192.168.1.80:8866:0000
Checking configuration
About to connect to server

(thanks for the assistance...)

sub
2016-10-10, 06:20 PM
Ok, so looks like something going on with the networking side of things.

Do you have firewall software on this machine? Can you try temporarily disabling it to see if it makes a difference?

martint123
2016-10-10, 06:32 PM
I had a look at the firewall earlier and disabled it. I fired up a sniffer to see if there was any network activity and noticed something odd.
It is sending something to 255.255.255.255 but from a different IP address. My ip is 192.168.1.6 and it was coming from 169.254.44.197 !!
After a little peeking this IP would appear to be an Oracle Virtualbox pseudo network adapter. I just disabled this and nlite has burst into life.

I've never noticed a problem having these pseudo network adapters (I have virtualbox and vmware ones) and have no clue as to how an application would select which one. Vast apologies for causing you unnecessary work.

sub
2016-10-10, 06:36 PM
I had a look at the firewall earlier and disabled it. I fired up a sniffer to see if there was any network activity and noticed something odd.
It is sending something to 255.255.255.255 but from a different IP address. My ip is 192.168.1.6 and it was coming from 169.254.44.197 !!
After a little peeking this IP would appear to be an Oracle Virtualbox pseudo network adapter. I just disabled this and nlite has burst into life.

I've never noticed a problem having these pseudo network adapters (I have virtualbox and vmware ones) and have no clue as to how an application would select which one. Vast apologies for causing you unnecessary work.Great find. I'll look into this so I can handle it correctly.

So it's running ok for you now?

martint123
2016-10-10, 06:42 PM
Seems to be running fine. Not given it a real push, but will later on tonight.
One oddity spotted with skipping when viewing a recording - skipping forwards with either mouse on progress bar or cursor keys move the current position on the progress bar, but does not change the playback position - in fact it goes back to the start.

I have to go out shortly (well 30 minutes ago ;) so no panic.

thanks again for your patience and remote diags.

sub
2016-10-10, 07:16 PM
Can you post the output of "ipconfig /all"?

Windows is just choosing the wrong NIC when I ask for it to send a broadcast to 255.255.255.255. Reading up on this, it's apparently Windows just decides which device to use, and its awkward to force it to use another device (but I'm gonna have a go at it). I'd say this would would like effect other apps using multi-cast broadcasts.

Odd that Windows would be defaulting to your Virtualbox adapter.

martint123
2016-10-10, 08:22 PM
The real network is the 2nd one. I don't know if I could force it to be number one in the list. Can you suggest another app that would use multi-cast and I could try it to see if it is affected as well.



Windows IP Configuration

Host Name . . . . . . . . . . . . : I5
Primary Dns Suffix . . . . . . . :
Node Type . . . . . . . . . . . . : Hybrid
IP Routing Enabled. . . . . . . . : No
WINS Proxy Enabled. . . . . . . . : No

Ethernet adapter VirtualBox Host-Only Network:

Connection-specific DNS Suffix . :
Description . . . . . . . . . . . : VirtualBox Host-Only Ethernet Adapter
Physical Address. . . . . . . . . : 0A-00-27-00-00-00
DHCP Enabled. . . . . . . . . . . : No
Autoconfiguration Enabled . . . . : Yes
Link-local IPv6 Address . . . . . : fe80::f96d:738b:a8bc:2cc5%22(Preferred)
Autoconfiguration IPv4 Address. . : 169.254.44.197(Preferred)
Subnet Mask . . . . . . . . . . . : 255.255.0.0
Default Gateway . . . . . . . . . :
DHCPv6 IAID . . . . . . . . . . . : 654835751
DHCPv6 Client DUID. . . . . . . . : 00-01-00-01-18-37-E5-64-90-2B-34-59-2D-90
DNS Servers . . . . . . . . . . . : fec0:0:0:ffff::1%1
fec0:0:0:ffff::2%1
fec0:0:0:ffff::3%1
NetBIOS over Tcpip. . . . . . . . : Enabled

Ethernet adapter Ethernet 2:

Connection-specific DNS Suffix . :
Description . . . . . . . . . . . : Qualcomm Atheros AR8161/8165 PCI-E Gigabit Ethernet Controller (NDIS 6.20)
Physical Address. . . . . . . . . : 90-2B-34-59-2D-90
DHCP Enabled. . . . . . . . . . . : No
Autoconfiguration Enabled . . . . : Yes
Link-local IPv6 Address . . . . . : fe80::1c45:ca40:56d2:896c%26(Preferred)
IPv4 Address. . . . . . . . . . . : 192.168.1.6(Preferred)
Subnet Mask . . . . . . . . . . . : 255.255.255.0
Default Gateway . . . . . . . . . : 192.168.1.254
DHCPv6 IAID . . . . . . . . . . . : 361769780
DHCPv6 Client DUID. . . . . . . . : 00-01-00-01-18-37-E5-64-90-2B-34-59-2D-90
DNS Servers . . . . . . . . . . . : 208.67.222.222
208.67.220.220
NetBIOS over Tcpip. . . . . . . . : Enabled

Ethernet adapter VMware Network Adapter VMnet1:

Connection-specific DNS Suffix . :
Description . . . . . . . . . . . : VMware Virtual Ethernet Adapter for VMnet1
Physical Address. . . . . . . . . : 00-50-56-C0-00-01
DHCP Enabled. . . . . . . . . . . : No
Autoconfiguration Enabled . . . . : Yes
Link-local IPv6 Address . . . . . : fe80::ac85:344e:e51d:7665%19(Preferred)
Autoconfiguration IPv4 Address. . : 169.254.118.101(Preferred)
Subnet Mask . . . . . . . . . . . : 255.255.0.0
Default Gateway . . . . . . . . . :
DHCPv6 IAID . . . . . . . . . . . : 453005398
DHCPv6 Client DUID. . . . . . . . : 00-01-00-01-18-37-E5-64-90-2B-34-59-2D-90
DNS Servers . . . . . . . . . . . : fec0:0:0:ffff::1%1
fec0:0:0:ffff::2%1
fec0:0:0:ffff::3%1
NetBIOS over Tcpip. . . . . . . . : Enabled

Ethernet adapter VMware Network Adapter VMnet8:

Connection-specific DNS Suffix . :
Description . . . . . . . . . . . : VMware Virtual Ethernet Adapter for VMnet8
Physical Address. . . . . . . . . : 00-50-56-C0-00-08
DHCP Enabled. . . . . . . . . . . : No
Autoconfiguration Enabled . . . . : Yes
Link-local IPv6 Address . . . . . : fe80::58c:c421:2210:f427%20(Preferred)
Autoconfiguration IPv4 Address. . : 169.254.244.39(Preferred)
Subnet Mask . . . . . . . . . . . : 255.255.0.0
Default Gateway . . . . . . . . . :
DHCPv6 IAID . . . . . . . . . . . : 469782614
DHCPv6 Client DUID. . . . . . . . : 00-01-00-01-18-37-E5-64-90-2B-34-59-2D-90
DNS Servers . . . . . . . . . . . : fec0:0:0:ffff::1%1
fec0:0:0:ffff::2%1
fec0:0:0:ffff::3%1
NetBIOS over Tcpip. . . . . . . . : Enabled

Ethernet adapter Ethernet:

Media State . . . . . . . . . . . : Media disconnected
Connection-specific DNS Suffix . :
Description . . . . . . . . . . . : TAP-Windows Adapter V9
Physical Address. . . . . . . . . : 00-FF-B0-21-B5-BC
DHCP Enabled. . . . . . . . . . . : Yes
Autoconfiguration Enabled . . . . : Yes

martint123
2016-10-10, 08:35 PM
Annoyingly now that it has worked, it is working all the time, even reverting to the original install file..........
I have done nothing to the network setting other than disbaling and then re-enabling the interface...... bloody computers

edit - could it have done techy things like setting up network routes that have stuck

sub
2016-10-10, 08:44 PM
Odd. I'm not sure why anything would have changed.

Instead of just doing the broadcast to 255.255.255.255, I could force it to the broadcast address of a specific adapter, but then I'd have to actually look at your list of network adapters and make a decision between them - and it's not easy to tell which one I should use.

mvallevand
2016-10-10, 08:49 PM
Shouldn't that be 255.255.255.0

Martin

martint123
2016-10-10, 08:57 PM
If I do a TCP/IP reset with netsh int ip reset and a reboot then I get the original problem back i.e. nothing happens.
So it looks like windows remembers something once it has worked..... routes, mac address ??? - ask Bill.

'fraid I'm going to have to pack in for the night now.

Thanks again for the help.

sub
2016-10-10, 08:58 PM
Shouldn't that be 255.255.255.0

Martin
No, I don't think so, and it is generally working for discovery.

mvallevand
2016-10-10, 11:42 PM
Right I was thinking the netmask and not INADDR_BROADCAST address. In any case like martin123 mine won't connect to my backend but it does connect to a local instance. The problem is it connects to NextPVR on this adapter which is ok locally but it won't find



Ethernet adapter VirtualBox Host-Only Network:

Connection-specific DNS Suffix . :
Link-local IPv6 Address . . . . . : fe80::60d4:3f1:d5ca:a2ab%10
IPv4 Address. . . . . . . . . . . : 192.168.56.1
Subnet Mask . . . . . . . . . . . : 255.255.255.0
Default Gateway . . . . . . . . . :


I disabled this as a test and still no good because it connect on the IP of my laptops's internal nic which doesn't have a cable into it, I then disable that and it connected to my remote backend successfully.

FWIW it worth that test local instance of NRecord logs the same "bad" address

2016-10-10 19:16:52.235 [INFO][9] IP Address: 192.168.56.1
after disabling Vbox
2016-10-10 19:28:09.767 [INFO][9] IP Address: 192.168.99.1
and finally with both those disabled
2016-10-10 19:34:49.657 [INFO][9] IP Address: 172.16.3.55

Thinking about that one is wrong too, my wired NIC has a lower metric so it should have used another one. 3.62

Martin

sub
2016-10-10, 11:56 PM
If I don't let Windows choose the appropriate device to broadcast on, then I'm going to have to manually choose it. Looking at martint123's ipconfig output, I can't see any information to help me decide which would be the real NIC (short of process-of-elimination, avoiding device with names containing VirtualBox/VMWare etc).

sub
2016-10-10, 11:59 PM
Just to double check - was this problem happening on client sending the broadcast on the wrong NIC, or was the problem the IP address the server was replying with? (I couldn't see either of these potentially happening)

mvallevand
2016-10-11, 12:41 AM
The IP address of the wrong NIC. I would prefer you used the device with the lowest metric, at least then I could set it.

Martin

sub
2016-10-11, 12:43 AM
If it was replying with the wrong IP address, this would probably fix it:

http://forums.nextpvr.com/showthread.php?58712-Updated-to-1-3-cannot-add-server-anymore-(remotely)&p=508229#post508229

mvallevand
2016-10-11, 01:01 AM
Nlite is not sending any UDP to my server so I don't think that is the problem. If I disable NIC's it works. There seems to be lots of post about this but from route command I would like to to use my default gateway and 0.0.0.0 destination from the routing table.

Martin

sub
2016-10-11, 01:16 AM
Yeah, the client side is still a problem. I'm still looking into a way to solve that side of things.

That patch can help in scenarios where the server is multi-homed and returning the wrong IP address.

sub
2016-10-11, 03:57 AM
Can you let me know if this helps?

mvallevand
2016-10-11, 04:58 AM
I had to do a taskkill on the webclient nextpvr on the host but after that it connected on the desired adapter.

Martin

mvallevand
2016-10-11, 05:22 AM
Nlite doesn't seem to play files from files or folders in the Video library with the /stream api that have spaces in them. I also have to taskkill the server nextpvr.exe after this.

Martin

sub
2016-10-11, 06:10 AM
Nlite doesn't seem to play files from files or folders in the Video library with the /stream api that have spaces in them. I also have to taskkill the server nextpvr.exe after this.

MartinAh, right you. Give this one a go.

martint123
2016-10-11, 09:23 AM
Just to double check - was this problem happening on client sending the broadcast on the wrong NIC, or was the problem the IP address the server was replying with? (I couldn't see either of these potentially happening)

Ah - I didn't catch that, just saw source and destination ip address.

mvallevand
2016-10-11, 11:11 AM
Ah, right you. Give this one a go.

So you fixed that on the server? NMT and Kodi work fine by and I think I just url encoded the string (except '\\/:%.?=;') to handle accented characters etc, hopefully this won't impact those clients.

Martin

sub
2016-10-11, 04:16 PM
So you fixed that on the server? NMT and Kodi work fine by and I think I just url encoded the string (except '\\/:%.?=;') to handle accented characters etc, hopefully this won't impact those clients.The server was a better place to fix this, since the URL is more accurate now, but let me know if it does cause those a problem and I'll provide an updated server that conditionally does this escaping.

mvallevand
2016-10-11, 07:46 PM
No problems with Kodi, I don't really use the NMT anymore.

Here is a comparison of NLite vs VLC, Kodi (web client) and NextPVR clientmode with the same file so not bad but hopefully this can be tweaked . NLite and VLC also use most of the WDF CPU. NLites's network use is bursty, it is the only one playing via http.

Martin

sub
2016-10-11, 07:53 PM
No problems with Kodi, I don't really use the NMT anymore. Thinking about it, the NMT doesn't use this same activity stuff, so it should fine too (nothing should have changed from what it currently receives). I haven't used an NMT in years.


Here is a comparison of NLite vs VLC, Kodi (web client) and NextPVR clientmode with the same file so not bad but hopefully this can be tweaked . NLite and VLC also use most of the WDF CPU. NLites's network use is bursty, it is the only one playing via http.I'm sure we'll be able to improve things a bit over time, but unknown how much. I don't know that much about libvlc or libsdl at this stage, but there may be options for further use hardware acceleration.

mvallevand
2016-10-11, 08:04 PM
I am always worried about the /stream API and the NMT. I know you had to add the tweak &mode=http for fred250 which I also used in x-newa because of the difference in the read length and looking there still seems like there is a discrepancy between the requested content-length and what is sent.

Martin

sub
2016-10-11, 08:19 PM
I am always worried about the /stream API and the NMT. I know you had to add the tweak &mode=http for fred250 which I also used in x-newa because of the difference in the read length and looking there still seems like there is a discrepancy between the requested content-length and what is sent.This escaping change will only change for the filenames sent via the webclient interface, then NMT filenames will still have the spaces etc...so that change shouldn't have had any flow on effects to the NMT.

Yeah, I remember the difference, and wish it wasn't that way.

mvallevand
2016-10-11, 11:28 PM
Keystroke handling needs some work,

- num pad ignored
- page up/down not working
- Home key not working
- Backspace not acting as back.

- ctrl F/R not working in EPG
- Skip/Next keys not working in EPG

Martin

sub
2016-10-12, 12:22 AM
Give these a go. It should address all those, and get the freetext entry in the Search screen work (which always used a slightly different input mechanism to allow for keyboards with national characters - umlauts etc)

mvallevand
2016-10-12, 12:36 AM
Give these a go. It should address all those, and get the freetext entry in the Search screen work (which always used a slightly different input mechanism to allow for keyboards with national characters - umlauts etc)

These still aren't working

- Backspace not acting as back.
- ctrl F/R not working in EPG Just sent as F and R Kodi sends 131142 and 131154
- Skip/Next keys not working in EPG no key sent

Also forgot to mention my favourite for navigating on slow clients, no function keys work. 112 to 120 work in Kodi for fn1-9

Not sure why a new NextPVR is included are new and different key= combinations then the NMT and Web Client?

Martin

sub
2016-10-12, 12:58 AM
- Backspace not acting as back.
- ctrl F/R not working in EPG Just sent as F and R Kodi sends 131142 and 131154
- Skip/Next keys not working in EPG no key sentI just double checked, and these three are definitely working for me. I've rebuild it an reattached, in case I got something wrong last time.

I'll check the F keys.

The SDL key codes aren't a good match to the Windows key codes, so I'm having to translate a lot of them.

mvallevand
2016-10-12, 01:05 AM
No still nothing the BS is key=8 but I had to map that to 27 for Kodi.

Martin

sub
2016-10-12, 01:07 AM
It should be 8 for Backspace.

27 is Escape.

Hmm, why is it not working for you. F keys are also working ok here.

mvallevand
2016-10-12, 01:15 AM
BS never worked as 8 for me in Kodi but I will try it again sometime. Maybe connect to my test server and see if it works for you?

Martin

sub
2016-10-12, 01:16 AM
See if this helps. If not - if you're running from 'nrecord RUN', so you can see the webclient instance, you'll see the titlebar update with the key information.

sub
2016-10-12, 01:19 AM
I wonder where you're trying to use it - does the same place work in NextPVR itself? In the freetext search, you can press backspace to erase characters. You can also use it in the few fields that allow text entry.

I wonder if since you'd be using 27 Escape in XNEWA, you've just got used to this behaving different to the main app? ie, I can only get back out to the main menu using Escape key, not backspace.

mvallevand
2016-10-12, 01:28 AM
No it was users who wanted a back key but really Back go back a chain ESC should go to root

Martin

sub
2016-10-12, 01:33 AM
I've always just used Esc for backing out one step.

I don't want to be changing the behaviour from the way the bulk of user are used to it working this way. I could look into providing an option for that though.

sub
2016-10-12, 01:34 AM
Did that latest build help?

mvallevand
2016-10-12, 01:45 AM
Yes except for the multimedia skip/next. However F2 doesn't handle an http error and freezes the host server NextPVR instance requiring a taskkill.

Martin

sub
2016-10-12, 02:14 AM
Yes except for the multimedia skip/next.With any luck this update will work with those keys

mvallevand
2016-10-12, 02:45 AM
No mostly they return key=31 I will need to try with a mce remote to see what happens here with them

Martin

mvallevand
2016-10-12, 12:58 PM
From the remote most of the keys return key=31 probably not worth writing them down until you have a chance to look or put the source on github so I can check.

The two top priorities should

- stop because you need a keyboard tp hit ctrl-s
- and Back Using a remote reminded me that many remotes need to use the Back key as Esc and that should not trigger the useless key=8 Fortunately my MCE remote does have a clear key that does do Esc.

While playing a recording hitting the single keyboard character and arrow keys without control do weird things After you get an OSD F, R and arrows do attempt to seek but then there are 404's 400 and then I need to exit nlite and get back in. Others just give a not a png messages.

Space does play/pause and numbers do show OSD.

If I don't hit arrows after the number the OSD disappears but the number is not cleared, not sure if that is a NextPVR thing.

Killing nlite with a video playing I need to ctrl-s on restart whether I have crashed on a seek or not.

Martin

sub
2016-10-12, 09:37 PM
Hmm, I'm not really sure what to do about remotes. When it comes to the MCE remote, they send some of the buttons as keystrokes, which SDL is seeing, and the app is able to pass to NextPVR. I've done some improvements so that Stop and Back from an MCE remote work the way you're expecting, but I'm guessing you'd quickly come back and tell me other buttons on the MCE remote don't work - which is true. The only way I could implement see some of these extra buttons is doing some really Windows specific API stuff (which is probably fine, but the app isn't currently having to do that).

For the navigation keys during playback, I'll need to implement support for these directly into NLite, since it's doing the playback. In NLite these types of keys wouldn't be passed back to NextPVR.

mvallevand
2016-10-12, 10:14 PM
Hmm, I'm not really sure what to do about remotes. When it comes to the MCE remote, they send some of the buttons as keystrokes, which SDL is seeing, and the app is able to pass to NextPVR. I've done some improvements so that Stop and Back from an MCE remote work the way you're expecting, but I'm guessing you'd quickly come back and tell me other buttons on the MCE remote don't work - which is true. The only way I could implement see some of these extra buttons is doing some really Windows specific API stuff (which is probably fine, but the app isn't currently having to do that).

Are sure implementing support for ctrl+key won't help? In any case the VK_ codes are often supported on Linux varieties. The WM_APPCOMMAND codes might be a problem. Perhaps have NLite map the command from an Kodi remote configuration back to what the server wants as most clients that will be supported will support Kodi remote mapping in LIRC etc.

If you implement Stop and Back, certain old MVP users will ask for Back to function like Stop


For the navigation keys during playback, I'll need to implement support for these directly into NLite, since it's doing the playback. In NLite these types of keys wouldn't be passed back to NextPVR.

If you are controlling playback then you probably want to disable the OSD mouse bar.

Martin

sub
2016-10-13, 01:04 AM
Here is some my minor tweaks, to improve stop/back with an MCE remote, and the ">|" "|<" skip buttons. I haven't added WM_APPCOMMAND for the other MCE buttons.

Also fixed an issue that had snuck in somewhere along the way for trying to skip during playback leading to a 404

mvallevand
2016-10-13, 03:23 AM
Ok no crashes on seeking with the keyboard but nothing with my Hauppague MCE Remote. Seeking is a bit hard to judge because as I posted before the timeline is wrong on all my files but after seeking back the timeline is not in sync with the current display position.

Martin

mvallevand
2016-10-13, 04:17 PM
The server was a better place to fix this, since the URL is more accurate now, but let me know if it does cause those a problem and I'll provide an updated server that conditionally does this escaping.

This new URL breaks Kodi xnewa playback from a share because the passed filename is no longer the valid filename. How are you goig to make it conditional?

Martin

sub
2016-10-13, 04:44 PM
What is the user agent when the request comes form XNEWA?

I'd have thought that since you're manipulating the string anyway to extract the filename part, and construction a share-based filename from it, you could have just added the step of unescaping it? I'm happy to do it in NextPVR based on the user agent if you prefer though.

mvallevand
2016-10-13, 04:52 PM
Headers are follows from Krypton, perhaps



2016-10-13 12:03:53.645 [DEBUG][20] method=recording.lastupdated
2016-10-13 12:03:53.645 [DEBUG][20] parameters:
2016-10-13 12:03:53.645 [DEBUG][20] method: recording.lastupdated
2016-10-13 12:03:53.645 [DEBUG][20] sid: 7653ca7498994070a7dcffbaebf5f1cd
2016-10-13 12:03:53.645 [DEBUG][20] client_ip: 172.16.3.62
2016-10-13 12:03:53.645 [DEBUG][20] host_callback: 172.16.3.2:8866
2016-10-13 12:03:53.645 [DEBUG][20] physical_path: C:\Users\Public\NPVR\web\
2016-10-13 12:03:53.645 [DEBUG][20] user_agent: Python-urllib/2.7
2016-10-13 12:03:53.645 [DEBUG][20] range:
2016-10-13 12:03:53.646 [DEBUG][20] requested_path: /service
2016-10-13 12:03:53.646 [DEBUG][20] verb: GET
2016-10-13 12:03:53.646 [DEBUG][20] LastUpdated


Thinking about the the NMT does something like this too. I also pass things like WebRadio ,UPnP and YouTube URLs and I have just started on using links from Google Drive.

Unescaping does work but it means a new client for everyone.

Martin

sub
2016-10-13, 05:02 PM
Thinking about the the NMT does something like this too.NMT/MVP have a different interface controller class, and never go near this code that was escaping the URLs for sending to web clients. If you were passing something to the NMT with spaces before, then it'll still have spaces.


I also pass things like WebRadio ,UPnP and YouTube URLs and I have just started on using links from Google Drive.Can you give me a concrete example of one that is failing?


Unescaping does work but it means a new client for everyone.Yep, I hear you and I'm happy to post a patch that defaults to the old style for XNEWA. In general, I think these correctly escaped URLs are right thing to do, since they're supposed to be URLs and should be in a valid format, so should default to that.

What clientID are you using with your requests? Does that identify XNEWA?

mvallevand
2016-10-13, 05:38 PM
NMT/MVP have a different interface controller class, and never go near this code that was escaping the URLs for sending to web clients. If you were passing something to the NMT with spaces before, then it'll still have spaces.

Probably at the end of this I i will need to connect an NMT to confirm.


Can you give me a concrete example of one that is failing?

Non work unescaped here I just show you what is extracted before and after I unescape them



13:22:09 T:8124 DEBUG: /stream?f=K%3A%5C12%20Monkeys%5C12%20Monkeys.S02E01 .Year%20of%20the%20Monkey.ts
13:22:09 T:8124 DEBUG: /stream?f=K:\12 Monkeys\12 Monkeys.S02E01.Year of the Monkey.ts

13:24:08 T:8124 DEBUG: /stream?f=%5C%5C172.16.3.244%5CMovies%5CValley%20Gi rl%5CValley%20Girl%20(1983).ts
13:24:08 T:8124 DEBUG: /stream?f=\\172.16.3.244\Movies\Valley Girl\Valley Girl (1983).ts

13:25:28 T:13592 DEBUG: /stream?f=https%3A%2F%2Fdrive.google.com%2Fuc%3Fexp ort%3Ddownload%26id%removed
13:25:28 T:13592 DEBUG: /stream?f=https://drive.google.com/uc?export=download&id=removed




What clientID are you using with your requests? Does that identify XNEWA?

Yes but technically I send KNEWA+MAC ID since I changed to KNEWA for Kodi.

Martin

sub
2016-10-13, 05:53 PM
This one should give unescaped data with a clientID starting with KNEWA.

mvallevand
2016-10-13, 06:12 PM
This one should give unescaped data with a clientID starting with KNEWA.

No it didn't




2016-10-13 14:01:07.091 [DEBUG][3] Got Web Request (172.16.3.62): /activity format=json&client=KNEWA0xc8bfd398405L&sid=a80af774bdca41e78dfce790a623d4c5

2016-10-13 14:01:07.091 [DEBUG][10] ClientGetActivity() returning:
{
"url": "/stream?client=KNEWA0xc8bfd398405L&f=K%3A%5CScorpion%5CScorpion.S03E03.It%20Isn't%20t he%20Fall%20that%20Kills%20You.ts",
"screen": "Recordings",
"recording_id": "16998",
"recording_name": "Scorpion",
"recording_title": "Scorpion",
"recording_description": "When Walter is accidentally launched into space in a rocket, Team Scorpion must find a way to bring him home before his oxygen runs out.",
"recording_subtitle": "It Isn't the Fall that Kills You"

}


Martin

sub
2016-10-13, 06:51 PM
Ok, I'll take another look.

I tried to test it with XNEWA in Kodi Windows Store version (which I'd installed the other day when a user reported a problem), and it did really weird stuff, with flickering and mouse droppings everywhere. In short I gave up, so had a guess at the change without being able to test it.

sub
2016-10-13, 07:00 PM
Hmm, it did send the unencoded urls to XNEWA when I tried. I've attached an updated version with a little more logging.

mvallevand
2016-10-13, 07:00 PM
Ok, I'll take another look.

I tried to test it with XNEWA in Kodi Windows Store version (which I'd installed the other day when a user reported a problem), and it did really weird stuff, with flickering and mouse droppings everywhere. In short I gave up, so had a guess at the change without being able to test it.

You would need to change the xnewa skin to Estuary, chance the Kodi skin to Confluence, or default to web client on Krypton


Hmm, it did send the unencoded urls to XNEWA when I tried. I've attached an updated version with a little more logging.

That worked thanks

Martin

sub
2016-10-16, 07:16 AM
Here is a slightly updated version, with better stability, with several small improvements.

DRL
2016-10-26, 12:01 AM
Hi sub, I am quite interested in this NLite approach. I installed and have been following along with the thread and versions.

Where I am. Launch brings up two screens, one is a dos window with scolling info. The other is the main screen for menu.

For whatever reason, the menu screen will --- on a random basis work.
When it works the functionality is as would be expected, unfortunately this may be about one out of six or seven launches, I have no idea what variable is causing this hit or miss launch.

The scrolling screen does not seem to be indicating errors except at the very start when it talks about failed to open Tahoma.

Anyway has there been any further dev.

Thanks and appreciated
D.

sub
2016-10-26, 12:09 AM
Hi sub, I am quite interested in this NLite approach. I installed and have been following along with the thread and versions.

Where I am. Launch brings up two screens, one is a dos window with scolling info. The other is the main screen for menu.

For whatever reason, the menu screen will --- on a random basis work.
When it works the functionality is as would be expected, unfortunately this may be about one out of six or seven launches, I have no idea what variable is causing this hit or miss launch.What happens when it doesn't work? It may have been something I've already fixed.


The scrolling screen does not seem to be indicating errors except at the very start when it talks about failed to open Tahoma.You can igore that message about the tahoma font, and wont get this message in the next build.


Anyway has there been any further dev.Yes, there has been several updated builds of NLite and the components it depends on since the last one posted here. Unfortunately it required several updated NextPVR files, so it was getting difficult to provide this as patches. I'm aiming to get a new release of NextPVR out in the next week, and will provide an updated NLite with it.

DRL
2016-10-26, 05:11 PM
Great, I solved the inconsistent start up simply by moving the NLite folder to be directly on the C:/ tree. Formally was located in my downloads folder. Don't know why this made a difference but it did. It consistently fires up now on every launch.

Looking forward to any future releases, appreciated.
D.

mvallevand
2016-10-26, 05:39 PM
I am not sure if the fix is in that version but in older version if you exit nlite while video is playing you will have a black screen and you might have to hit ctrl-s to get the GUI back.

Martin

DRL
2016-10-28, 07:07 PM
Well I had it working but after a win10 update it now looks to localhost for the server instead of the server ip, any suggestions?

mvallevand
2016-10-28, 07:15 PM
Well I had it working but after a win10 update it now looks to localhost for the server instead of the server ip, any suggestions?

Is the recording service started on your client? You may not have the service disabled.

Martin

sub
2016-10-28, 07:41 PM
You can also run it with "-server ipaddress:8866:0000"

DRL
2016-10-28, 09:24 PM
You can also run it with "-server ipaddress:8866:0000"

Great and thanks-- a one line bat did the trick.

gEd
2016-10-29, 01:59 AM
Sub, might there ever be an nlite for OSX?

sub
2016-10-29, 02:11 AM
Sure, I've compiled it and ran it on Mac before. I'm not really an expert in packaging up mac apps though. Anyone else with development tools should be able to compile and run it, following the same general steps as Linux build.

martint123
2018-02-10, 02:49 PM
May I ask how to get to "settings" in nlite.
I've enabled the music plugin on my server and it works on there, but I can't see it on the nlite client nor a way of adding plugins.
There is a music directory under plugins on the client.
It's such a long time since I had to tweak nlite I may well have forgotten something obvious!

Graham
2018-02-10, 04:09 PM
May I ask how to get to "settings" in nlite.


My understanding is that there are no settings for nlite. It should mimic the NextPVR setup on the NextPVR server. Is the music plugin installed in NextPVR on the server?

martint123
2018-02-10, 04:26 PM
My understanding is that there are no settings for nlite. It should mimic the NextPVR setup on the NextPVR server. Is the music plugin installed in NextPVR on the server?

Yes Graham, installed and running on the server as I mentioned ;)
I'm in the process of wrecking the kitchen, painting and replacing so wanted some background music to help pass the time.
Not to worry, I have an old kodi install that I was playing with and that seems to be doing what I want.

robw1uk
2018-04-13, 07:04 AM
Is this nlite still downloadable ?

JEF
2018-04-13, 07:27 AM
You should find it here
https://forums.nextpvr.com/showthread.php?58982-NLite-Build-(19th-December)

robw1uk
2018-04-13, 07:35 AM
Hi

Cheers jef works ok but dont like the cmd window in the background lol

Rob

sub
2018-04-13, 07:50 AM
It's actually not so easy to get rid of that window entirely. I can auto hide, but you'd probably see a brief flash of it.

Personally, that window never bother me - since it was in the background behind the main nlite window, and would show useful messages if anything crashed.

robw1uk
2018-04-13, 08:03 AM
Hi

If you could auto hide it , if you have the time be great ( Sorry i am just a fussy person sometimes lol )

Rob

mvallevand
2018-04-13, 04:25 PM
Hi

If you could auto hide it , if you have the time be great ( Sorry i am just a fussy person sometimes lol )

Rob

Create a shortcut for nlite that redirect stdout

Nlite.exe > nul

Martin

robw1uk
2018-04-13, 07:41 PM
Create a shortcut for nlite that redirect stdout

Nlite.exe > nul

Martin

Can u explain more

sub
2018-04-13, 08:00 PM
I've just posted a new build at https://forums.nextpvr.com/showthread.php?58982-NLite-Build, which no longer creates a console window.

robw1uk
2018-04-14, 06:36 AM
I've just posted a new build at https://forums.nextpvr.com/showthread.php?58982-NLite-Build, which no longer creates a console window.

Thanks sub brilliant

robw1uk
2018-04-14, 06:38 AM
Dont suppose this can be made for an android box ?

sub
2018-04-14, 06:42 AM
Apparently libvlc and libsdl2 are available for Android, so in theory it'd be possible. I don't personally know anything about cross compiling native apps for use on Android devices, so won't be tackling it myself. Someone who has some experience with that type of development could take the nlite source and give it a go though.

robw1uk
2018-04-14, 06:46 AM
Thats a shame , I wouldnt have a clue lol . maybe someone will read this and crack on with it ..

cdogg
2018-07-18, 02:42 PM
Is there anyway to have our own keymapping file for nlite? What are the current keymaps for nlite at this time?

sub
2018-07-18, 06:20 PM
nlite passes any keystrokes through to NextPVR, so you should get the same keys as NextPVR

http://www.nextpvr.com/nwiki/pmwiki.php?n=KeyboardReference.KeyboardReference

cdogg
2018-07-31, 05:13 PM
Any switches to pass that would launch nlite in fullscreen at start? Any other switches as well?

sub
2018-07-31, 06:05 PM
I updated http://nextpvr.com/nlite-win32.zip to include support for a "-fullscreen" command line parameter.

cdogg
2018-08-01, 02:45 PM
Works great thanks!

cdogg
2018-08-07, 05:16 AM
Is 1920x1080 support possible? When I pause a recording, the progress bar resets back to 00:00. This causes skipping ahead to skip ahead based on the placement of the progress bar and not the actual position of the file.

sub
2018-08-07, 06:26 AM
Is 1920x1080 support possible?When I find some spare time, I'll add command line options to allow you to control the resolution.


When I pause a recording, the progress bar resets back to 00:00. This causes skipping ahead to skip ahead based on the placement of the progress bar and not the actual position of the file.This can happen if the vlc components don't like something about the transport stream timeline.

cdogg
2018-08-10, 08:16 PM
It does keep proper time when skipping ahead or back and if I choose to resume rather than play from the beginning. Is there a way to use different components rather than VLC? Example, MPC is much better and faster at handling every file I've thrown at it vs VLC.

Regarding the keymaps, nLite doesn't respect some of the kaymappings.xml file. For example, stopping is still CTRL+S even though NextPVR doesn't perform this way and there is no CTRL+S in my mapping file anymore. It's just S. I'm guessing it's an assumed command that's not in my keymapping.xml file. Some commands here "http://www.nextpvr.com/nwiki/pmwiki.php?n=KeyboardReference.KeyboardReference" work and some commands in my keymappings.xml file work. I feel it's because I need more statements in my mappings file? Did I over complicate or confuse what I'm asking?

sub
2018-08-10, 08:27 PM
It does keep proper time when skipping ahead or back and if I choose to resume rather than play from the beginning.If you can let me know the download URL for one of your recordings, I'll try it out here, and see if I can improve things


Is there a way to use different components rather than VLC? Example, MPC is much better and faster at handling every file I've thrown at it vs VLC. No - that would be an entire rewrite.

The primary reason it was written to use VLC is because it was cross platform, so could be compiled for Windows/Linux/Mac etc. MPC is windows-only directshow etc, so not a viable option for this app.


Regarding the keymaps, nLite doesn't respect some of the kaymappings.xml file. For example, stopping is still CTRL+S even though NextPVR doesn't perform this way and there is no CTRL+S in my mapping file anymore. It's just S. I'm guessing it's an assumed command that's not in my keymapping.xml file. Some commands here "http://www.nextpvr.com/nwiki/pmwiki.php?n=KeyboardReference.KeyboardReference" work and some commands in my keymappings.xml file work. I feel it's because I need more statements in my mappings file? Did I over complicate or confuse what I'm asking?Yeah, the keys during playback are not an exact match. I've tried to keep it the same where possible, but it's not perfect.

When it's in the menus, pretty much everything is going via a copy of NextPVR.exe, so you get the same UI and keystrokes etc. When nlite.exe is playing media, either live tv or recordings, it's actually just streaming the video file from the recording service (NRecord.exe), and the NextPVR.exe isn't really involved, so it doesn't really have the ability to enforce the same controls etc. It just has some hard coded keys for basic functions.

cdogg
2018-08-10, 09:20 PM
Thank you for all the clarification and rather quick reply!

File example, "https://cdoggs.net/dufE47G8dj3853DKPVrfG7d8FRP5027dhf/examplestream.ts"

So just to say I asked, is there a way to change the hardcoded keymaps in NRecord.exe? Either seperate file wise or using something like Resource Hacker?