Nice find. I will try to add a button based on this technique.
The timeouts you're seeing are also unexpected. Does that happen only with live tv, or recordings too?
Nice find. I will try to add a button based on this technique.
The timeouts you're seeing are also unexpected. Does that happen only with live tv, or recordings too?
Can you submit a diagnostic log after these fail?
I'm trying to reproduce the behavior on my local system and trying to play the master.m3u8 and stream.m3u8 in my VLC all work great.
Just tried with a recording.
Right clicked Watch Now, open in new tab which allows me to Open with VLC.
VLC doesn't play it.
This is what was passed to VLC.
master.m3u8
#EXTM3U
#EXT-X-VERSION:3
#EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=3776000,RESOLUTION=1280x720
stream.m3u8?abitrate=192&acodec=aac&bitrate=3776&deinterlacer=hardware&indexed=true&resolution=720&ssize=1&vcodec=copy
dvr log
2021/01/16 08:18:05.235078 [HLS] Stopping inactive session file2758-ip192.168.1.2
But, if I open this url in VLC it plays the recording.
http://192.168.1.4:8089/dvr/files/2758/stream.mpg
If I'm using VLC as a client there is no need to transcode/remux since VLC can handle mpeg2/H.264 video and AC-3/AAC audio.
VLC isn't playing the master.m3u8 because it thinks the stream.m3u8 is a local file. VLC error is "filesystem error: cannot open file C:\Users\chDVRuser\AppData\Local\Temp\stream.m3u8 (No such file or directory)". I'm sure the reason this happens is that Firefox downloads the master.m3u8 from Channels DVR, saves it to a temp directory and launches VLC pointing it to the playlist file, so any references in the playlist, like stream.m3u8, are considered relative file paths.
I really don't want my NAS transcoding/remuxing either Live TV or recordings when using VLC to play them. That's why I use stream.mpg with VLC.
When Firefox opens an m3u with VLC on Windows, according to Windows process monitor, this is how Firefox launches VLC.
"absoulte path to\vlc.exe" --started-from-file "C:\Users\chDVRuser\AppData\Local\Temp\master.m3u8"
VLC option --started-from-file means VLC is started from file association (default disabled). Tell VLC that it is being launched due to a file association in the OS.
Edge does the same, just using a different temp directory.
Not sure how it works on other OS's.
Watching this with great interest.

If at all possible, can this functionality be added to the Watch Now button for the Recordings Web UI as well? Using VLC to bypass transcoding on recorded content would be a nice feature.
The failure of VLC to autoplay the above example is due to master.m3u returning relative URIs. This is certainly a gray area (or maybe a violation) of RFC 8216. The use of relative URIs in playlist M3Us is explicitly permitted and addressed:
4.1 ... A URI in a Playlist, whether it is a URI line or part of a tag, MAY be relative. Any relative URI is considered to be relative to the URI of the Playlist that contains it.
The use of relative URIs in a master playlist is not mentioned, but this thread illustrates some of the issues it can cause. Because a master.m3u may be passed a player in some proprietary fashion, a relative URI may be undefined for the player.
To verify this, I used VLC MacOS:
curl -sL "http://dvr.lxc.lan:8089/devices/ANY/channels/9077/hls/master.m3u8?" >/tmp/master.m3u /Applications/VLC.app/Contents/MacOS/VLC /tmp/master.m3u (lots of 404 errors since it cannot resolve the URI) vi /tmp/master.m3u change: stream.m3u8?acodec=copy&bitrate=3063&indexed=true&resolution=720&ssize=1&vcodec=copy to: http://dvr.lxc.lan/devices/ANY/channels/9077/hls/stream.m3u8?acodec=copy&bitrate=3063&indexed=true&resolution=720&ssize=1&vcodec=copy /Applications/VLC.app/Contents/MacOS/VLC /tmp/master.m3u VLC now plays without issue.
I added a VLC button in the latest prerelease. Please try it out and lmk if it works
Hmm, I couldn't get this working on macOS. I tried with Safari and Chrome. I do have VLC as well as my preferred IINA installed on this Mac but I'm not sure if macOS is able to handle "vlc://" links in that way. I also tried manually pasting the URL into VLC's File -> Open Network dialog (both with the VLC:// prefix as well as it removed, and the https// part fixed to be https://) but those attempts failed too.
Doesn’t work for me either. It does work in iOS.
Ditto not working on Windows 10 in Firefox and Chrome, as well as pasting the link directly in VLC.
![]()
If it helps at all in troubleshooting, I have a desktop shortcut like this that does work:
"C:\Program Files\VideoLAN\VLC\vlc.exe" "https://dvr-nexus-media-01.local:8089/devices/ANY/channels.m3u?format=ts"
Not working on Windows 10 in Firefox, Brave or Edge.
Firefox gives this error, other browsers do nothing.
The address wasn’t understood
Firefox doesn’t know how to open this address, because one of the following protocols (vlc) isn’t associated with any program or is not allowed in this context.
You might need to install other software to open this address.
Appears the URI Scheme vlc has to have a protocol handler registered with the browser?
It's not an officially recognized scheme Uniform Resource Identifier (URI) Schemes
Okay I found out it only works on iOS. For Mac/Windows, you have to install a helper: https://github.com/stefansundin/vlc-protocol
I'm not sure why this isn't built into VLC already.
VLC long ago had a mozilla plugin I used. When you installed VLC it was an option. Been missing for ages.
I tried VLC-protocol.app (from https://github.com/stefansundin/vlc-protocol/releases) on my mac, but it doesn't appear to work anymore: https://github.com/stefansundin/vlc-protocol/issues/12
I will try to convince/help VLC add this feature directly: VLC on desktop will not open vlc:// urls (#26581) · Issues · VideoLAN / VLC · GitLab
After installing the helper app, I got the windows version working playing a live channel.
Recordings also work.
Working in Brave, Edge and Firefox now.
I takes awhile for live tv to appear in vlc this way.
14-38 seconds to start.
When you stop and close vlc it takes awhile for Channels DVR to close the tuner.
Recordings start instantly.
If we just want to paste the URL into a media player like VLC or IINA on macOS, and launch it manually, what's the proper format to use? Because these attempts are failing:



It doesn't work remotely yet. It's on my todo list.
OK, cool, thanks.
Everything @chDVRuser said is exactly my experience. Also, when I try to jump back and forth on the timeline there is the same many seconds delay before it starts playing again.
Earlier, I had tried the "Launch in VLC" add-ons for Firefox that were available, but none of them had worked for me. The one @tmm1 found works, though is convoluted to set up for sure! The only real issue I have is that when you select to play in VLC it opens a new tab and doesn't close it.
This worked for me and I am able to use VLC with a couple clicks to watch my recordings.
https://github.com/stefansundin/vlc-protocol 5
On Windows.
It's also transcoding for HDHR sources when it shouldn't since VLC can handle mpeg2 video and AC-3 audio.
Transcodes both video and audio with source mpeg2 video/AC-3 audio and says it's transcoding.
Transcodes audio with source H.264 video/AC-3 audio but says it's just remuxing.