2011-10-05 2 views
3

나는 네트워크 내부에있는 웹캠에서 일련의 jpg를 가져 오는 데 사용되는 javascript 스 니펫을 가지고 있습니다. 지금은 Apache2를 통해 역 프록시 처리되고 우리 웹 사이트에 내장되어 있습니다.프록시 된 웹캠에서 가져온 JPG "비디오"속도가 빨라 졌습니까?

디스플레이를 "정지"상태로 유지하려면 시간 초과로 인해 컨설턴트 코드를 2 초로 조정해야했습니다. 누군가는 데이터의 일부를 더 잘 캐시하고 적절한 자바 스크립트 코딩으로 속도를 높일 수 있다고 제안했습니다.

내가 지금 가지고 있습니다 :이 작업을 수행 할 수있는 방법이

<center> 
<img id="video" src="../../img/unconnected.jpg" alt="video" height="480" width="640" /> 
</center> 
<script type="text/javascript">// <![CDATA[ 
var sourceImage = "http://www.ourwebsite.com/video/link/image.cgi?v=jpg:640x480&seq=1"; 

function show() { 
    document.getElementById("video").src = sourceImage + Math.random(); 

    setTimeout(show, 2000); 
} 

show(); 
// ]]></script> 

있습니까?

+0

더 나은 방법을 통해 웹캠의 영상을 공급하는 수 있습니다 비디오 인코더 (대신 프록시없이)를 사용하고 HTTP 라이브 스트리밍 또는 기타 스트리밍 솔루션을 사용하십시오. 장점은 대역폭을 많이 절약 할 수 있다는 것입니다. – derobert

답변

2

화려한 것은 아니지만 시간에 따라 이미지가 도착합니다. 만료 된 문제입니다. 각 이미지를 가져올 수 있도록 사전에 타이밍을 조절하지만이 만료되기 전에 잠시 도착 적응 알고리즘을 작성하기위한

보너스 포인트)

sourceImage = "http://www.yourwebsite.com/video/image.cgi?v=jpg:640x480&seq=1"; 

function show() { 
     document.getElementById("video").src = sourceImage + Math.random(); 
} 
document.getElementById("video").onload = show; 
document.getElementById("video").onerror = show; 

show(); 
관련 문제