VLC Web Plugin on IIS Server through authentication?

All you've ever wanted to know about the ActiveX, Mozilla plugins, the web interface and various PHP extensions
dcer
New Cone
New Cone
Posts: 1
Joined: 13 Dec 2011 17:06

VLC Web Plugin on IIS Server through authentication?

Postby dcer » 13 Dec 2011 17:33

Hi,

I have searched these forums and basically all over google for the past week trying to find some information regarding this, since I'm having problems making videos stream from my IIS server.
Sadly, i was not able to find a solution to this, which is why I ask for help here.

I have an IIS 7.5 server running on a Windows 7 64-bit server/computer. I use the VLC Web Plugin for Mozilla Firefox to play the video file in a browser, but without success.
It should also be noted that I have added the MIME type .mkv to the IIS MIME-Types as video/x-matroska, so this should not be the problem. Also, I have given every user full access rights to the entire www folder and the file, so this should not be the problem either.
I cut it down to a very basic HTML file "index.html" and saved the video file right next to the HTML page. Here is my HTML code:

Code: Select all

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>Untitled Document</title> </head> <body style="width:100%; height:100%;"> <embed type="application/x-vlc-plugin" pluginspage="http://www.videolan.org" version="VideoLAN.VLCPlugin.2" width="720" height="405" autoplay="no" id="vlc" target="video.mkv"> </embed> <script type="text/javascript"> var vlc = document.getElementById("vlc"); function mute(){ vlc.audio.toggleMute(); } function play(){ vlc.playlist.play(); } function stop(){ vlc.playlist.stop(); } function pause(){ vlc.playlist.togglePause(); } </script> <br /> <input type="button" onclick='play();' value="Play" /><br> <input type="button" onclick='pause();' value="Pause" /><br> <input type="button" onclick='stop();' value="Stop" /><br> <input type="button" onclick='mute();' value="Mute" /><br> </body> </html>
This code works perfectly locally, by opening the HTML file directly in Firefox without the use of the web server. But as soon as I put it on the IIS web server the play button simply does nothing. It can't authenticate or something.
Here is the log from VLC when I input the video URL from the web server directly into the VLC Media Player:

Code: Select all

qt4 warning: Input option: http-caching=1200 main debug: adding item `http://10.0.0.30/video.mkv' ( http://10.0.0.30/video.mkv ) qt4 debug: Adding a new MRL to recent ones: http://10.0.0.30/video.mkv main debug: rebuilding array of current - root Spilleliste main debug: rebuild done - 1 items, index -1 main debug: processing request item http://10.0.0.30/video.mkv node null skip 0 main debug: resyncing on http://10.0.0.30/video.mkv main debug: http://10.0.0.30/video.mkv is at 0 main debug: starting new item main debug: creating new input thread main debug: Creating an input for 'http://10.0.0.30/video.mkv' main debug: thread (input) created at priority 1 (../.././src/input/input.c:220) main debug: thread started main debug: using timeshift granularity of 50 MiB main debug: using timeshift path 'C:\Users\myuser\AppData\Local\Temp' main debug: `http://10.0.0.30/video.mkv' gives access `http' demux `' path `10.0.0.30/video.mkv' main debug: creating demux: access='http' demux='' path='10.0.0.30/video.mkv' main debug: looking for access_demux module: 0 candidates main debug: no access_demux module matched "http" main debug: TIMER module_need() : 0.000 ms - Total 0.000 ms / 1 intvls (Avg 0.000 ms) main debug: creating access 'http' path='10.0.0.30/video.mkv' main debug: looking for access module: 2 candidates access_http debug: http: server='10.0.0.30' port=80 file='/video.mkv' main debug: net: connecting to 10.0.0.30 port 80 qt4 debug: IM: Setting an input main debug: connection succeeded (socket = 1440) access_http debug: protocol 'HTTP' answer code 401 access_http debug: Content-Type: text/html access_http debug: Server: Microsoft-IIS/7.5 access_http debug: Authentication header: Negotiate main warning: Unknown authentication scheme: 'Negotiate' access_http debug: Authentication header: NTLM main warning: Unknown authentication scheme: 'NTLM' access_http debug: this frame size=1326 access_http debug: authentication failed for realm (null) access_http debug: retrying with user=ServerAdmin main debug: net: connecting to 10.0.0.30 port 80 main debug: connection succeeded (socket = 1440) access_http debug: protocol 'HTTP' answer code 401 access_http debug: Content-Type: text/html access_http debug: Server: Microsoft-IIS/7.5 access_http debug: Authentication header: Negotiate main warning: Unknown authentication scheme: 'Negotiate' access_http debug: Authentication header: NTLM main warning: Unknown authentication scheme: 'NTLM' access_http debug: this frame size=1326 access_http debug: authentication failed for realm (null) main debug: net: connecting to 10.0.0.30 port 80 main debug: connection succeeded (socket = 1484) access_mms error: error: HTTP/1.1 401 Unauthorized main debug: no access module matching "http" could be loaded main debug: TIMER module_need() : 11949.001 ms - Total 11949.001 ms / 1 intvls (Avg 11949.000 ms) main debug: waitpipe: object killed main error: open of `http://10.0.0.30/video.mkv' failed: (null) main debug: finished input main debug: thread ended main debug: dead input main debug: thread times: real 0m11.948683s, kernel 0m0.000000s, user 0m0.000000s main debug: changing item without a request (current 0/1) main debug: nothing to play qt4 debug: IM: Deleting the input main debug: TIMER input launching for 'http://10.0.0.30/video.mkv' : 11974.001 ms - Total 11974.001 ms / 1 intvls (Avg 11974.000 ms)
So, from what I can see from this log, VLC is having problems authenticating with the IIS server through the windows NTLM login authentication. I also tried setting up an apache server with no login system, which successfully played the file as I wanted, but I need a login system for this.

So my question is, is there a way to make this work through the NTLM login method?
And if not, how do I manage it in for example ASP.net using forms authentication, or PHP using sessions, it doesn't really matter which one, I just need the VoD streaming to be behind a login system, I'll figure out how to connect the login information to the NTLM method myself.

Any help would be greatly appreciated, since I'm really stuck here on this one.

jeanrosw
Blank Cone
Blank Cone
Posts: 13
Joined: 19 Jul 2010 13:59

Re: VLC Web Plugin on IIS Server through authentication?

Postby jeanrosw » 04 Feb 2014 20:26

I have the same problem. I am trying to put on IIS a WEB site for videos and musics.
First, the file's name must not have any space otherwise IIS will not serve it . For the audio files I have no problem.
For the videos, IIS can serve flv , mp4, wmv and vob files but not the avi or mkv files.
Worse: IIS will not serve a directory containing a DVD (VIDEO_TS) . It will not serve either the file VIDEO-TS.IFO wich is Inside the container.

For avi and mkv files I have tried many mime type without success. So I am converting the avi files to wmv files. I will try to do the same for the mkv files.
For the DVD I have no solution.
Any help will be welcome

eli13
Blank Cone
Blank Cone
Posts: 25
Joined: 21 May 2012 15:28

Re: VLC Web Plugin on IIS Server through authentication?

Postby eli13 » 05 Feb 2014 14:17

Why not use Apache with NTLM? Apache has a NTLM Auth Module, its named something like apache-mod-auth-ntlm-winbind.
Maybe you are faster setting up this than getting IIS to work (properly).

jeanrosw
Blank Cone
Blank Cone
Posts: 13
Joined: 19 Jul 2010 13:59

Re: VLC Web Plugin on IIS Server through authentication?

Postby jeanrosw » 26 Feb 2014 15:25

Mon site hébergé sur IIS peut être lu par IE ou Firefox mais pas par Chrome.
Il est accessible des autres ordinateurs du réseau local à l'exception des DVD qui ne sont lisibles que sur le serveur en utilisant ce truc:
lien.playlist.add("file:///<%=left(Request.ServerVariables("PATH_TRANSLATED"),2)%>/jean/buxtehude/membra");
la partie asp est pour identifier sur quelle lettre (C:, D:, F:) se trouve le disque contenant mon DVD
jean est le dossier qui contient mon site web et membra est le dossier qui contient le DVD.
Pour rendre ce site accessible aux ordinateur du réseau local, il y a fallu enlever le pare-feu local de l'ordinateur qui joue le rôle du serveur.
Pour l'accès à la data-bas Access j'ai du activer les applications 32 bits dans le pool d'application.

Je crois que ma manière de faire pour le DVD fait que VLC plugin va directement chercher le dossier là où il se trouve dans l'ordinateur et qu'il n'utilise pas le serveur, d'où
l'accès impossible sur les autres ordinateur du réseau.

J'apprécierais toute aide relative à une solution correcte pour le DVD et à faire en sorte que ce que je fais soit accepté par chrome.

jeanrosw
Blank Cone
Blank Cone
Posts: 13
Joined: 19 Jul 2010 13:59

Re: VLC Web Plugin on IIS Server through authentication?

Postby jeanrosw » 13 Mar 2014 17:45

More info:
I now realize that the VLC plugin is doing some treaming without me knowing it.
What I mean: reading from one computer of the local network a vob file ( 6GO) located on the ISS server, I have almost no delay problem. Sometimes I have had once some hickup like on you tube when there is some traffic but I do not need to download the vob file before reading it. I had not understood that before.
So today I have no problem reading a large vob file but reading several vob files (1.2GO) does not work properly as there is a delay between the files,
delay that do not exist when reading the DVD container or the .IFO file. IIS does not serve the DVD container nor the file .IFO.
So the question is : is there any means to provide the VLC plugin with some data for letting him know that the end of a vob is coming and letting him start loading his buffer with the next vob
before it is too late ?

Thanks in advance for any help


Return to “Web and scripting”

Who is online

Users browsing this forum: No registered users and 3 guests