I am also trying to overcome this problem. I have done some research and found that you can typically set a parameter to the object and embed code to transparent:
<param name="wmode" value="transparent" />
But this only works with flash based plugins. I have tried many solutions found elsewhere on the net but non seem to overlay my div over the embedded application/x-google-vlc-plugin. I also tried modifying a script that worked for the flash player but once the plugin changed, so did my working overlay. There must be a solution somewhere?! I know z-index will not order these objects. Any help would be much appreciated. Here is the general code i am working with, if you see any problems or have any suggestions, feel free to speak out!
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
</head>
<style type="text/css">
#cover {top:0;left:0;width:500px;height:300px;background-color:#666;z-index:100;position:absolute;}
</style>
<body>
<div id="cover"></div>
<OBJECT classid="clsid:9BE31822-FDAD-461B-AD51-BE1D1C159921"
codebase="
http://downloads.videolan.org/pub/video ... /axvlc.cab"
width="500" height="auto" id="vlc" events="True" class="top">
<param name="Src" value="rtsp://address" />
<param name="ShowDisplay" value="True" />
<param name="AutoLoop" value="False" />
<param name="AutoPlay" value="True" />
<param NAME="wmode" VALUE="transparent">
<embed id="vlcEmb" type="application/x-google-vlc-plugin" version="VideoLAN.VLCPlugin.2" autoplay="yes" loop="no" width="500" height="auto" wmode="transparent" menu="false" target="rtsp://address" ></embed>
</OBJECT>
</body>
</html>