Solved

"permission denied" with media player 9

Posted on 2003-11-10
8
717 Views
Last Modified: 2008-01-09
Hi,

I have this html page with a media player object:

<html>
<head>

<script>
<!--
function showPosition(num)
{            
    document.WinMedia.currentposition=document.WinMedia.getmarkertime(num);
    document.WinMedia.Play()
}
//-->
</script>
</head>

<body topmargin='0' leftmargin='0' bgcolor='#010066' onload="showPosition(1)">
<object id="WinMedia" width="224" height="176"
  codebase="http://activex.microsoft.com/activex/controls/mplayer/en/nsmp2inf.cab#Version=6,4,5,715"
  classid="CLSID:22D6F312-B0F6-11D0-94AB-0080C74C7E95"
  standby="Loading Windows Media Player components..."
  type="application/x-oleobject">
  <param name="FileName" value="mms://192.168.1.1/video.asf">
  <param name="ShowStatusBar" value="true">
  <param name="EnableContextMenu" value="false">
  <param name="AutoSize" value="false">
  <param name="ShowControls" value="false">
  <param name="ShowDisplay" value="false">
  <param name="DefaultFrame" value="synch">
  <param name="autostart" value="false">
</object>
</body>
</html>

With Windows Media Player series 9, as soon as the "showPosition()" script is invoked, I get the error:

"Javascript run-time error: permission denied" (or authorization denied, couldn't figure out the precise english translation here). The statement that cause the problem is "document.WinMedia.getmarkertime(num)". Sseems that reading the marker time is enough to trigger the error.

Any help?
0
Comment
Question by:cip
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
8 Comments
 
LVL 16

Expert Comment

by:jaysolomon
ID: 9716175
Try this

function showPosition(num)
{          
    document.getElementById('WinMedia').currentposition=document.getElementById('WinMedia').getmarkertime(num);
    document.getElementById('WinMedia').Play()
}
0
 
LVL 1

Author Comment

by:cip
ID: 9716267
Jaysolomon,

Tried that, but unfortunately I still get the permission denied message.

0
 
LVL 2

Expert Comment

by:Mikehd
ID: 9718016
Maybe a shot in the dark, but is the html page and the media in the same domain?

M=
0
Online Training Solution

Drastically shorten your training time with WalkMe's advanced online training solution that Guides your trainees to action. Forget about retraining and skyrocket knowledge retention rates.

 
LVL 25

Expert Comment

by:devic
ID: 9719591
hey cip,

your link is dead:
   mms://192.168.1.1/video.asf

try some other:
   mms://media3.ag.org/gc2003/20030801_PMvideo.asf
0
 
LVL 25

Accepted Solution

by:
devic earned 200 total points
ID: 9719596
sound is inside, you need wait...
0
 
LVL 1

Author Comment

by:cip
ID: 9721096
Mikehd,

I have downloaded and copied the lesson in the same folder of the html file, and changed the filename parameter to:

<param name="FileName" value="video.asf">

but I am still getting the error.

Devic, I changed the parameter file to point to your video, same thing. The link is dead because I don't want my video server address to be public. What do you mean by "sound is inside, you need wait"?
0
 
LVL 25

Expert Comment

by:devic
ID: 9721454
Mikehd,

i mean, that movie beginn without sound, and sound in this movie come later.



so i changed only  mms link and for me works fine:
===========================
<html>
<head>

<script>
<!--
function showPosition(num)
{          
   document.WinMedia.currentposition=document.WinMedia.getmarkertime(num);
   document.WinMedia.Play()
}
//-->
</script>
</head>

<body topmargin='0' leftmargin='0' bgcolor='#010066' onload="showPosition(1)">
<object id="WinMedia" width="224" height="176"
 codebase="http://activex.microsoft.com/activex/controls/mplayer/en/nsmp2inf.cab#Version=6,4,5,715"
 classid="CLSID:22D6F312-B0F6-11D0-94AB-0080C74C7E95"
 standby="Loading Windows Media Player components..."
 type="application/x-oleobject">
 <param name="FileName" value="mms://media3.ag.org/gc2003/20030801_PMvideo.asf">
 <param name="ShowStatusBar" value="true">
 <param name="EnableContextMenu" value="false">
 <param name="AutoSize" value="false">
 <param name="ShowControls" value="false">
 <param name="ShowDisplay" value="false">
 <param name="DefaultFrame" value="synch">
 <param name="autostart" value="false">
</object>
</body>
</html>
0
 
LVL 1

Author Comment

by:cip
ID: 9722061
I finally managed to solve the problem.

When the script executes the command WinMedia.getMarkerTime(num), the media player still hasn't completely loaded the file, and the total number of markers (property markerCount) is set to 0. So the attempt to read the position of marker number 1, when the total number of markers is still 0, triggers the error.

I changed the script this way:

var globalTries = 0;

function showPosition(num)
{            
  self.setTimeout("timeoutShowPosition("+num+")",200);
}

function timeoutShowPosition(num)
{
  if (WinMedia.MarkerCount == 0) // MarketCount still 0, file hasn't completely loaded yet
  {
    if (globalTries > 100 ) // timeout after 20 seconds
      alert("Timeout occurred trying to open the movie.");
    else
      self.setTimeout("timeoutShowPosition("+num+")",200);
            
    globalTries++; // increment tries
    return;
  }
      
  document.WinMedia.currentposition=document.WinMedia.getmarkertime(num);
  document.WinMedia.Play()
}

I didn't want to believe that today's media players could still have syncronizing problems, but that is it.

I'll give Devic's the points. His sentence "you need to wait" gave me the idea of waiting till the file was loaded, even if the real sentence meaning is different.
0

Featured Post

On Demand Webinar - Networking for the Cloud Era

This webinar discusses:
-Common barriers companies experience when moving to the cloud
-How SD-WAN changes the way we look at networks
-Best practices customers should employ moving forward with cloud migration
-What happens behind the scenes of SteelConnect’s one-click button

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Avoid defining the variables in the global scope; trying to define them in a local function scope. Because:   • Look-up is performed every time a variable is accessed.   • Variables are resolved backwards from most specific to least specific scope…
This article demonstrates how to create a simple responsive confirmation dialog with Ok and Cancel buttons using HTML, CSS, jQuery and Promises
The viewer will learn the basics of jQuery, including how to invoke it on a web page. Reference your jQuery libraries: (CODE) Include your new external js/jQuery file: (CODE) Write your first lines of code to setup your site for jQuery.: (CODE)
The viewer will learn the basics of jQuery including how to code hide show and toggles. Reference your jQuery libraries: (CODE) Include your new external js/jQuery file: (CODE) Write your first lines of code to setup your site for jQuery…

751 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question