                 videoElement = new org.osmf.elements.VideoElement(dsr, new RTMPDynamicStreamingNetLoader());
             }
         }
-        else if (source is String)
+        else if (source is String && source != "")
         {
             var urlResource:URLResource = new URLResource(source as String);
             videoElement = mediaFactory.createMediaElement(urlResource);

        // we're hidden or for some other reason), but we need to seek 
        // to the first frame, then we have to do this on our own 
        // by using our load() method.
        if ((!autoPlay || !shouldBePlaying) && autoDisplayFirstFrame)
            load();
        
        // set videoPlayer's element to the newly constructed VideoElement

        
        if (videoElement)
        {
            // If we are loading a video, make sure the timers are restored in case
            // they had been disabled. The timers will be disabled again if we are 
            // only loading the first frame.
            if (!isNaN(oldCurrentTimeUpdateInterval))
            {
                videoPlayer.currentTimeUpdateInterval = oldCurrentTimeUpdateInterval;
                videoPlayer.bytesLoadedUpdateInterval = oldBytesLoadedUpdateInterval;
            }

            if (videoElement.getMetadata(LayoutMetadata.LAYOUT_NAMESPACE) == null)
            {
