Polymer CLI build runs out of memory - polymer
I am quite surprised, when I run polymer build after implementing more components, it runs out of memory. How isit possible? I won't consider my site/app very big yet ...
info: Building application...
info: Generating build/unbundled...
info: Generating build/bundled...
<--- Last few GCs --->
105411 ms: Mark-sweep 1343.6 (1434.7) -> 1343.0 (1434.7) MB, 1430.6 / 0 ms [allocation failure] [GC in old space requested].
106857 ms: Mark-sweep 1343.0 (1434.7) -> 1343.0 (1434.7) MB, 1446.6 / 0 ms [allocation failure] [GC in old space requested].
108349 ms: Mark-sweep 1343.0 (1434.7) -> 1343.0 (1434.7) MB, 1491.5 / 0 ms [last resort gc].
109808 ms: Mark-sweep 1343.0 (1434.7) -> 1342.6 (1434.7) MB, 1459.5 / 0 ms [last resort gc].
<--- JS stacktrace --->
==== JS stack trace =========================================
Security context: 0x24b44a0c9e31 <JS Object>
2: nextToken [/Users/limjiewmeng/.nvm/versions/node/v6.4.0/lib/node_modules/polymer-cli/node_modules/acorn/dist/acorn.js:~2459] [pc=0x313c0f47bb3b] (this=0x3618e7c0f981 <a Parser with map 0x18a29db9aa01>)
3: next [/Users/limjiewmeng/.nvm/versions/node/v6.4.0/lib/node_modules/polymer-cli/node_modules/acorn/dist/acorn.js:2413] [pc=0x313c0ee10d47] (this=0x3618e7c0f981 <a Parser with map 0x...
FATAL ERROR: CALL_AND_RETRY_LAST Allocation failed - JavaScript heap out of memory
1: node::Abort() [/Users/limjiewmeng/.nvm/versions/node/v6.4.0/bin/node]
2: node::FatalException(v8::Isolate*, v8::Local<v8::Value>, v8::Local<v8::Message>) [/Users/limjiewmeng/.nvm/versions/node/v6.4.0/bin/node]
3: v8::internal::V8::FatalProcessOutOfMemory(char const*, bool) [/Users/limjiewmeng/.nvm/versions/node/v6.4.0/bin/node]
4: v8::internal::Factory::NewFixedArray(int, v8::internal::PretenureFlag) [/Users/limjiewmeng/.nvm/versions/node/v6.4.0/bin/node]
5: v8::internal::FullCodeGenerator::PopulateDeoptimizationData(v8::internal::Handle<v8::internal::Code>) [/Users/limjiewmeng/.nvm/versions/node/v6.4.0/bin/node]
6: v8::internal::FullCodeGenerator::MakeCode(v8::internal::CompilationInfo*) [/Users/limjiewmeng/.nvm/versions/node/v6.4.0/bin/node]
7: v8::internal::Compiler::EnsureDeoptimizationSupport(v8::internal::CompilationInfo*) [/Users/limjiewmeng/.nvm/versions/node/v6.4.0/bin/node]
8: v8::internal::OptimizedCompileJob::CreateGraph() [/Users/limjiewmeng/.nvm/versions/node/v6.4.0/bin/node]
9: v8::internal::Compiler::GetOptimizedCode(v8::internal::Handle<v8::internal::JSFunction>, v8::internal::Compiler::ConcurrencyMode, v8::internal::BailoutId, v8::internal::JavaScriptFrame*) [/Users/limjiewmeng/.nvm/versions/node/v6.4.0/bin/node]
10: v8::internal::(anonymous namespace)::CompileOptimized(v8::internal::Isolate*, v8::internal::Handle<v8::internal::JSFunction>, v8::internal::Compiler::ConcurrencyMode) [/Users/limjiewmeng/.nvm/versions/node/v6.4.0/bin/node]
11: v8::internal::Runtime_CompileOptimized_Concurrent(int, v8::internal::Object**, v8::internal::Isolate*) [/Users/limjiewmeng/.nvm/versions/node/v6.4.0/bin/node]
12: 0x313c0e50961b
13: 0x313c0e538279
[1] 8057 abort polymer build
Running in verbose mode gave me some clues:
debug: accept: bower_components/iron-behaviors/iron-control-state.html
debug: accept: bower_components/paper-ripple/paper-ripple.html
debug: accept: bower_components/paper-styles/color.html
debug: accept: bower_components/iron-a11y-keys-behavior/iron-a11y-keys-behavior.html
debug: accept: bower_components/iron-behaviors/iron-control-state.html
debug: accept: bower_components/paper-ripple/paper-ripple.html
debug: accept: bower_components/paper-styles/color.html
debug: accept: bower_components/iron-a11y-keys-behavior/iron-a11y-keys-behavior.html
debug: accept: bower_components/iron-behaviors/iron-control-state.html
debug: accept: bower_components/paper-ripple/paper-ripple.html
debug: accept: bower_components/paper-styles/color.html
debug: accept: bower_components/iron-a11y-keys-behavior/iron-a11y-keys-behavior.html
Seems like its running in loops?
UPDATE
I notice if I remove some components from polymer.json, it will build but its not really what I want?
UPDATE 2: Possible Workaround
Don't fragment everything. Inline some imports. Think its works around the issue as the build tool is more likely to find similar dependencies in the "larger" bundles and be able to group them together. Instead of having to include them in all bundles.
Just so that I can close this.
It seems like the problem was with creating too many bundles. So instead of loading (nearly) every single component dynamically, which I later learnt is likely not a good idea anyway, I start to group similar things together to include in a bundle. This solved this issue for me.
Related
How to mass flash STM32 Microcontrollers through JTAG Chain with OpenOCD?
I am a beginner to OpenOCD and I am trying to flash 3 STM32 targets in a daisy chain with an ST-Link v2 debugger or OLIMEX as shown below using OpenOCD. The code that I use works if only one Target is connected. But if I connect it to more than one Target, OpenOCD throws an error stating that init failed. "C:\Program Files\GNU ARM Eclipse\OpenOCD\0.10.0-201601101000-dev\bin\openocd" -f "C:\Program Files\GNU ARM Eclipse\OpenOCD\0.10.0-201601101000-dev\scripts\interface\stlink-v2.cfg" -f "C:\Program Files\GNU ARM Eclipse\OpenOCD\0.10.0-201601101000-dev\scripts\target\stm32f3x.cfg" -c init -c targets -c "halt" -c "flash erase_sector 0 0 127" -c "reset halt" -c "flash write_image C:/Users/Buero-1/Desktop/openOCD/init.hex" -c "verify_image C:/Users/Buero-1/Desktop/openOCD/init.hex" -c "reset run" -c shutdown A successful result I get when this code is executed is shown below. GNU ARM Eclipse 64-bits Open On-Chip Debugger 0.10.0-dev-00287-g85cec24-dirty (2016-01-10-10:13) Licensed under GNU GPL v2 For bug reports, read http://openocd.org/doc/doxygen/bugs.html Info : auto-selecting first available session transport "hla_swd". To override use 'transport select <transport>'. adapter speed: 1000 kHz adapter_nsrst_delay: 100 Info : The selected transport took over low-level target control. The results might differ compared to plain JTAG/SWD none separate Info : Unable to match requested speed 1000 kHz, using 950 kHz Info : Unable to match requested speed 1000 kHz, using 950 kHz Info : clock speed 950 kHz Info : STLINK v2 JTAG v29 API v2 SWIM v7 VID 0x0483 PID 0x3748 Info : using stlink api v2 Info : Target voltage: 3.223311 Info : stm32f3x.cpu: hardware has 6 breakpoints, 4 watchpoints TargetName Type Endian TapName State -- ------------------ ---------- ------ ------------------ ------------ 0* stm32f3x.cpu hla_target little stm32f3x.cpu halted Info : device id = 0x20006432 Info : flash size = 256kbytes erased sectors 0 through 127 on flash bank 0 in 0.025984s Info : Unable to match requested speed 1000 kHz, using 950 kHz Info : Unable to match requested speed 1000 kHz, using 950 kHz adapter speed: 950 kHz stm32f3x.cpu: target state: halted target halted due to debug-request, current mode: Thread xPSR: 0x01000000 pc: 0xfffffffe msp: 0xfffffffc Info : Padding image section 0 with 31880 bytes Info : Padding image section 1 with 1 bytes stm32f3x.cpu: target state: halted target halted due to breakpoint, current mode: Thread xPSR: 0x61000000 pc: 0x2000003a msp: 0xfffffffc wrote 47676 bytes from file Z:/Elektronik/GSV13/Fertigung_GSV-13iu/Init/GSV13init_Ver1_6.hex in 1.635796s (28.462 KiB/s) stm32f3x.cpu: target state: halted target halted due to breakpoint, current mode: Thread xPSR: 0x61000000 pc: 0x2000002e msp: 0xfffffffc stm32f3x.cpu: target state: halted target halted due to breakpoint, current mode: Thread xPSR: 0x61000000 pc: 0x2000002e msp: 0xfffffffc verified 15795 bytes in 0.483325s (31.914 KiB/s) Info : Unable to match requested speed 1000 kHz, using 950 kHz Info : Unable to match requested speed 1000 kHz, using 950 kHz adapter speed: 950 kHz shutdown command invoked But as mentioned, if I connect multiple targets in a JTAG chain, the process stops at init and the program ends. The config files are target/stm32f3x.cfg, interface/ftdi/olimex-arm-usb-ocd-h.cfg and interface/stlink-v2.cfg. Please excuse me if my question was very basic. It would be of great help if I am provided an update on how to proceed with my problem. Thank you.
As far as I know STLink v2 does not support daisy chain. https://community.st.com/s/question/0D50X00009XkZTdSAN/does-stlink-utility-support-multiple-devices-on-jtag-chain
CouchBase not restarting properly after disk extension
I'm using CouchBase. We reach the disk limit three days ago. We extended the disk space but CouchBase doesn't starting properly : the web console is not accessible. The debug logs show the lies below: crasher: initial call: application_master:init/4 pid: <0.86.0> registered_name: [] exception exit: {{shutdown, {failed_to_start_child,ns_server_nodes_sup, {shutdown, {failed_to_start_child,start_couchdb_node, {{badmatch,{error,duplicate_name}}, [{ns_server_nodes_sup, '-start_couchdb_node/0-fun-0-',0, [{file,"src/ns_server_nodes_sup.erl"},{line,129}]}, {ns_port_server,init,1, [{file,"src/ns_port_server.erl"},{line,73}]}, {gen_server,init_it,6, [{file, "c:/tools/cygwin/home/ADMINI~1/OTP_SR~2/lib/stdlib/src/gen_server.erl"}, {line,304}]}, {proc_lib,init_p_do_apply,3, [{file, "c:/tools/cygwin/home/ADMINI~1/OTP_SR~2/lib/stdlib/src/proc_lib.erl"}, {line,239}]}]}}}}}, {ns_server,start,[normal,[]]}} in function application_master:init/4 (c:/tools/cygwin/home/ADMINI~1/OTP_SR~2/lib/kernel/src/application_master.erl, line 133) ancestors: [<0.85.0>] messages: [{'EXIT',<0.87.0>,normal}] links: [<0.85.0>,<0.7.0>] dictionary: [] trap_exit: true status: running heap_size: 1598 stack_size: 27 reductions: 202 neighbours: [error_logger:info,2019-11-18T20:44:58.184+01:00,ns_1#127.0.0.1:error_logger<0.6.0>:ale_error_logger_handler:do_log:203] I’m using Windows NT version 6.2 Server Editon. Build 9200 I extended the disk space by using a private Cloud Provider system. The disk wasn’t replace. We just extended it. Does any one faced tis kind of issue?
Ejabberd Disco Iteam not coming
Vrsion: 17.11 Platform : ubuntu 16.04 With the mod_muc configuration, sometimes disco items does not load at all. Here is a configuration I have used for disco items. Here is a crash log I found while crashes mod_muc: db_type: sql default_room_options: - allow_subscription: true - mam: true access_admin: - allow: admin access_create: muc_create access_persistent: muc_create history_size: 100 max_rooms_discoitems: 1000 max_user_conferences: 50 max_users_presence: 50 Also, while joining same muc which was earlier available does not get connection. If I restart the server, things works well and again after certain times muc s doesn't come Error Log: Stopping MUC room x#conference.host.com 2018-07-27 12:57:39.972 [error] <0.32056.26> gen_fsm <0.32056.26> in state normal_state terminated with reason: bad return value: ok 2018-07-27 12:57:39.972 [error] <0.32056.26>#p1_fsm:terminate:760 CRASH REPORT Process <0.32056.26> with 0 neighbours exited with reason: bad return value: ok in p1_fsm:terminate/8 line 760 2018-07-30 05:12:12 =ERROR REPORT==== ** State machine <0.9190.27> terminating ** Last event in was {route,<<>>,{iq,<<"qM1F3-119">>,set,<<"en">>,{jid,<<"usr_name">>,<<"x.y.com">>,<<"1140">>,<<"usr_name">>,<<"x.y.com">>,<<"1140">>},{jid,<<"planet_discovery1532511384">>,<<"conference.x.y.com">>,<<>>,<<"planet_discovery1532511384">>,<<"conference.x.y.com">>,<<>>},[{xmlel,<<"query">>,[{<<"xmlns">>,<<"urn:xmpp:mam:2">>}],[{xmlel,<<"set">>,[{<<"xmlns">>,<<"http://jabber.org/protocol/rsm">>}],[{xmlel,<<"max">>,[],[{xmlcdata,<<"30">>}]},{xmlel,<<"after">>,[],[]}]},{xmlel,<<"x">>,[{<<"xmlns">>,<<"jabber:x:data">>},{<<"type">>,<<"submit">>}],[{xmlel,<<"field">>,[{<<"var">>,<<"FORM_TYPE">>},{<<"type">>,<<"hidden">>}],[{xmlel,<<"value">>,[],[{xmlcdata,<<"urn:xmpp:mam:2">>}]}]}]}]}],#{ip => {0,0,0,0,0,65535,46291,27829}}}} ** When State == normal_state ** Data == {state,<<"planet_discovery1532511384">>, <<"conference.x.y.com">>,<<"x.y.com">>,{all,muc_create,[{allow, [{acl,admin}]}],muc_create},{jid,<<"planet_discovery1532511384">>,<<"conference.x.y.com">>,<<>>,<<"planet_discovery1532511384">>,<<"conference.x.y.com">>,<<>>},{config,<<"Planet Discovery">>,<<>>,true,true,true,anyone,true,true,false,true,true,true,false,true,true,true,true,false,<<>>,true,[moderator,participant,visitor],true,1800,200,false,<<>>,{0,nil},true},{dict,1,16,16,8,80,48,{[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[]},{{[],[],[],[],[],[[{<<"usr_name">>,<<"x.y.com">>,<<"1140">>}|{x.y.com,{jid,<<"usr_name">>,<<"x.y.com">>,<<"1140">>,<<"usr_name">>,<<"x.y.com">>,<<"1140">>},<<"usr_name#x.y.com/1140">>,moderator,{presence,<<"qM1F3-116">>,available,<<"en">>,{jid,<<"usr_name">>,<<"x.y.com">>,<<"1140">>,<<"usr_name">>,<<"x.y.com">>,<<"1140">>},{jid,<<"planet_discovery1532511384">>,<<"conference.x.y.com">>,<<"usr_name#x.y.com/1140">>,<<"planet_discovery1532511384">>,<<"conference.x.y.com">>,<<"usr_name#x.y.com/1140">>},undefined,[],undefined,[{xmlel,<<"c">>,[{<<"xmlns">>,<<"http://jabber.org/protocol/caps">>},{<<"hash">>,<<"sha-1">>},{<<"node">>,<<"http://www.igniterealtime.org/projects/smack">>},{<<"ver">>,<<"p801v5l0jeGbLCy09wmWvQCQ7Ok=">>}],[]},{vcard_xupdate,{<<>>,<<>>},undefined}],#{ip => {0,0,0,0,0,65535,46291,27829}}}}]],[],[],[],[],[],[],[],[],[],[]}}},{dict,0,16,16,8,80,48,{[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[]},{{[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[]}}},{dict,0,16,16,8,80,48,{[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[]},{{[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[]}}},nil,{dict,0,16,16,8,80,48,{[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[]},{{[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[]}}},{dict,1,16,16,8,80,48,{[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[]},{{[],[],[],[[<<"usr_name#x.y.com/1140">>,{<<"usr_name">>,<<"x.y.com">>,<<"1140">>}]],[],[],[],[],[],[],[],[],[],[],[],[]}}},{dict,3,16,16,8,80,48,{[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[]},{{[],[],[],[],[],[],[],[[{<<"usr_name">>,<<"x.y.com">>,<<>>}|{owner,<<>>}]],[],[],[[{<<"miga8747b6">>,<<"x.y.com">>,<<>>}|{owner,<<>>}]],[],[],[],[[{<<"ruba32cc6e">>,<<"x.y.com">>,<<>>}|{owner,<<>>}]],[]}}},{lqueue,{{[],[]},0,unlimited},1000},[],<<>>,false,nil,none,undefined} ** Reason for termination = ** {bad_return_value,ok} 2018-07-30 05:12:12 =CRASH REPORT==== crasher: initial call: mod_muc_room:init/1 pid: <0.9190.27> registered_name: [] exception exit: {{bad_return_value,ok},[{p1_fsm,terminate,8,[{file,"src/p1_fsm.erl"},{line,760}]},{proc_lib,init_p_do_apply,3,[{file,"proc_lib.erl"},{line,247}]}]} ancestors: ['mod_muc_x.y.com',ejabberd_gen_mod_sup,ejabberd_sup,<0.32330.26>] messages: [] links: [] dictionary: [{'$internal_queue_len',0}] trap_exit: true status: running heap_size: 6772 stack_size: 27 reductions: 3310 neighbours: 2018-07-30 12:41:56 =ERROR REPORT====
What ejabberd version? and how did you install it? The syntax of your default_room_options are wrong, did you really use that config like that? And what changes you made from a stock installation? I mean: did you setup a cluster of several nodes, did you enable other modules that may interfere with mod_muc...? And most importantly: you have setup the max_rooms_discoitems to 10000. How many rooms does the service have? That option should be set to a small value, because requesting discoitems for 10.000 rooms means requesting information to each single room, and that means 10.000 queries, and that can have unknown consequences. Does your problem reproduce if you set a low value, like 100?
Unable to tunnle to vmc mysql service due to memory limitation
I am unable to tunnle to my free hosted instance of a rails app on cloudfoundry inftrastructure. When I run 'vmc tunnel mysql-service', I get the below: 1: none 2: mysql 3: mysqldump Which client would you like to start?> 2 Opening tunnel on port 10000... FAILED CFoundry::AccountNotEnoughMemory: 600: Not enough memory capacity, you're allowed: 2048M For more information, see ~/.vmc/crash Checking the ~/.vmc/crash logs I see: Time of crash: 2013-03-13 18:16:54 -0400 CFoundry::AccountNotEnoughMemory: 600: Not enough memory capacity, you're allowed: 2048M <<< REQUEST: PUT https://api.cloudfoundry.com/apps/caldecott REQUEST_HEADERS: Authorization : bearer eyJhbGciOiJSUzI1NiJ9.eyJleHAiOjEzNjM4MTc3OTgsInVzZXJfbmFtZSI6ImhzdWVpbmczQGdtYWlsLmNvbSIsInNjb3BlIjpbImNsb3VkX2NvbnRyb2xsZXIucmVhZCIsIm9wZW5pZCIsInBhc3N3b3JkLndyaXRlIl0sImVtYWlsIjoiaHN1ZWluZzNAZ21haWwuY29tIiwiYXVkIjpbIm9wZW5pZCIsImNsb3VkX2NvbnRyb2xsZXIiLCJwYXNzd29yZCJdLCJqdGkiOiJkMzZjNDI3MS02ZDJkLTRjN2EtOThmYS1kNzc2MjhiZDFiNmMiLCJ1c2VyX2lkIjoiODY0OWZkMzEtY2JiNy00N2YyLTkyNmItODM5Y2MzNWFlMTlmIiwiY2xpZW50X2lkIjoidm1jIn0.Lt1Bw7mBP55Hi9MIPTn90s0RXkJcJwGZXZcqDep4BBnnwjrAOAPQPGlIwBA-Ovy9K5BazMXqnQCOv8kxpK8o4wo3vG6RAJPvF7p76JgZDq0C_n_PUV1LaxGrldnpc2PLawR0FHHChb7tKCJP4cf26lK8A8vg5GEwi8HWO5OJCERI-3CKKiGJB5mVj2rWGmE39-ihAWmT5LpS5jAEZ-XVvo4VDEKknJ8SQC6693FzdCZ2AJBHkAgNxRoCsBtvkxOgKkspI-IkcaMZx884BT24cGbseZ5XY3bj6ZjAb499AfbIFe97Hme4axtpWo8qn1grkrJxyI3gmYAVMHVgo1M1IQ Content-Length : 310 Content-Type : application/json REQUEST_BODY: {"name":"caldecott","instances":1,"state":"STARTED","staging":{"model":"sinatra","stack":"ruby19"},"resources":{"memory":64,"disk":2048,"fds":256},"env":["CALDECOTT_AUTH=43ae7176-67f6-41ac-8cff-bf21b4249a49"],"uris":["caldecott-d9149.cloudfoundry.com"],"services":["mysql-service"],"console":null,"debug":null} RESPONSE: [403] RESPONSE_HEADERS: cache-control : no-cache connection : keep-alive content-type : application/json; charset=utf-8 date : Wed, 13 Mar 2013 22:16:54 GMT keep-alive : timeout=20 server : nginx transfer-encoding : chunked x-ua-compatible : IE=Edge,chrome=1 RESPONSE_BODY: { "code": 600, "description": "Not enough memory capacity, you're allowed: 2048M" } > cfoundry-0.5.2/lib/cfoundry/baseclient.rb:156:in handle_error_response' cfoundry-0.5.2/lib/cfoundry/baseclient.rb:135:inhandle_response' cfoundry-0.5.2/lib/cfoundry/baseclient.rb:85:in request' cfoundry-0.5.2/lib/cfoundry/baseclient.rb:74:input' cfoundry-0.5.2/lib/cfoundry/v1/model_magic.rb:55:in block (2 levels) in define_client_methods' cfoundry-0.5.2/lib/cfoundry/v1/model.rb:91:inupdate!' cfoundry-0.5.2/lib/cfoundry/v1/app.rb:131:in update!' cfoundry-0.5.2/lib/cfoundry/v1/app.rb:121:instart!' tunnel-vmc-plugin-0.2.2/lib/tunnel-vmc-plugin/tunnel.rb:173:in start_helper' tunnel-vmc-plugin-0.2.2/lib/tunnel-vmc-plugin/tunnel.rb:89:increate_helper' tunnel-vmc-plugin-0.2.2/lib/tunnel-vmc-plugin/tunnel.rb:28:in open!' tunnel-vmc-plugin-0.2.2/lib/tunnel-vmc-plugin/plugin.rb:41:inblock in tunnel' interact-0.5.2/lib/interact/progress.rb:98:in with_progress' tunnel-vmc-plugin-0.2.2/lib/tunnel-vmc-plugin/plugin.rb:40:intunnel' mothership-0.5.1/lib/mothership/base.rb:66:in run' mothership-0.5.1/lib/mothership/command.rb:72:inblock in invoke' What actions should I take to resolve this? To offer further background below are a few details about the env. my app is running in: vmc stats logoff Using manifest file manifest.yml Getting stats for logoff... OK instance cpu memory disk 0 0.1% 74.2K of 2G 63.3M of 2G vmc env logoff Using manifest file manifest.yml Getting env for logoff... OK vmc services Getting services... OK name service version mysql-service mysql 5.1
This is because you have used all of your allotted 2Gb of RAM. To tunnel to a service, vmc needs to deploy a small Ruby application called Caldecott, this uses 64Mb. So in short, you need to free up 64Mb!
VLC Web Plugin on IIS Server through authentication?
I have searched the VLC 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: <!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: 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.
VLC does not and will not support NTLM authentication.
maybe is late but, you could use cntlm(http://cntlm.sourceforge.net/)