IP Kamera+ html parse+ jpeg resim alma?

Başlatan fryrmnd, 11 Eylül 2012, 10:09:39

fryrmnd

Hayırlı işler arkadaşlar. Elimizde bir kaç ip kamera var. Bir tanesinin arayüzünden snapshot aldığımızda yeni bir explorer penceresine .jpeg veya .jpg uzantılı olarak resmi atıyor. Delphi ile bunu IdHttp kullanarak jpeg uzantılı dosyaya kaydettiğimde sıkıntı yok. Düzgün bir şekilde resim geliyor.

Diğer bir ip kameranın snapshot sayfası ise   http://10.10.0.193/live/index.html?Language=0 şeklinde geliyor. Bu durumda resim bozuluyor. Bu resmi nasıl alabilirim? Html parse ile resmi alabilmem mümkün mü? Sayfanın kaynağı göster seçeneği de yok. Html kodları gözükmüyor. Nasıl bir yol izleyebilirim?

Ek:

http://10.10.0.193/live/index.html şeklinde sekmede live streami aldım.  html kodları şu şekilde

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN">
<html lang="en" oncontextmenu="return false">
<head>
<meta http-equiv="pragma" content="no-cache">
<meta http-equiv="cache-control" content="no-cache">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>WV-SP306 Network Camera</title>
</head>
<frameset rows="30,*" frameborder="NO" border="0" framespacing="0">
<frame name="frmTop" src="/live/titlebar.html?Language=0" scrolling="no" noresize frameborder="0" tabindex="3">
<frameset cols="180,*,0,0" frameborder="0" border="0" framespacing="0">
<frame name="frmLeft" src="/live/mainview_hide.html?Language=0" scrolling="auto" noresize frameborder="0" tabindex="1">
<frame name="frmRight" src="/live/mainview_hide.html?Language=0" scrolling="auto" noresize frameborder="0" tabindex="2">
<frame name="frmHide" src="/live/mainview_hide.html?Language=0" scrolling="no" noresize frameborder="0" tabindex="-1">
<frame name="frmRightHide" src="/live/mainview_hide.html?Language=0" scrolling="no" noresize frameborder="0" tabindex="-1">
</frameset>
</frameset>
</html>
or:


snapshot sayfasından http://10.10.0.193/live/oneshot.html  gelen kodlar ise şöyle. Tabi adresi bu şekilde sayfaya girdiğimde resim gözükmedi




<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html lang="en" oncontextmenu="return false">
<head>
<meta http-equiv="pragma" content="no-cache">
<meta http-equiv="cache-control" content="no-cache">
<META HTTP-EQUIV="Content-Type" content="text/html; charset=UTF-8">
<META HTTP-EQUIV="Content-Script-Type" content="text/javascript">
<META HTTP-EQUIV="Content-Style-Type" content="text/css">
<meta name="copyright" content="(C) Panasonic Syetem Networks Co.,Ltd. 2010">
<title>WV-SP306 Network Camera</title>
<link rel=stylesheet type="text/css" href="/css/camera.css?Language=0&Rnd=589">
<script type="text/javascript"	src="/js/cactivex.js?Language=0&Rnd=590"></script>
<script type="text/javascript"	src="/js/chknet.js?Language=0&Rnd=591"></script>
<style type="text/css"> 
<!--
td.CssButton
{
background-image: url(/image/bt_A.gif);
background-repeat: no-repeat;
background-position-x: 50%;
background-position-y: 50%;
text-align: center;
vertical-align: middle;
height: 40pt;
}
span.CssButton
{
cursor: hand;
font-size: 14px;
 
font-weight: bold;
color: #333333;
}
-->
</style>
<script type="text/javascript"> 
<!--
var gPlugDl = "enable";
var gsHttpTBL = new Array("http://","https://");
var gihttps = 0;
var gsHttpFlg = new Array("False","True");
var gsHttpPort = 80;
var gsHttpsPort = 443;
var gsCodec = window.opener.top.frmLeft.menubar_GetCodecMode();
var giResol = 1280;
var gsImgRatio="4_3";
var giQual = 0;
if( gsCodec == "jpeg" )
{
giResol = window.opener.top.frmLeft.menubar_GetResolution();
giQual = window.opener.top.frmLeft.menubar_GetQuality();
}
function InitThisPage()
{
try
{
if(gsImgRatio == "4_3")
{
with ( document.WebVideo )
{
ViewWidth = giResol;
ViewHeight = ( giResol / 4 ) * 3;
RateEstimateMode = 0;
AccessType = 0;
RetryCount = 0;
RetryTIme = 0;
BackColor = 0x000000;
ImageFormat = 0;
TransMethod = 1;
MenuEnable = 1;
IgnoreSSLError = 1;
}
}
else
{
with ( document.WebVideo )
{
ViewWidth = giResol;
ViewHeight = ( giResol / 16 ) * 9;
RateEstimateMode = 0;
AccessType = 0;
RetryCount = 0;
RetryTIme = 0;
BackColor = 0x000000;
ImageFormat = 0;
TransMethod = 1;
MenuEnable = 1;
IgnoreSSLError = 1;
}
}
document.WebVideo.HttpPort = chknet_CheckSetPortNo(location.port, gsHttpPort, gsHttpsPort, gihttps);
document.WebVideo.JpegOneView( gsHttpTBL[gihttps]   location.hostname   "/cgi-bin/camera?resolution="   giResol   "&quality="   giQual   "&Language=0");
}
catch(e)
{
}
}
function DocWriteImage()
{
if(gsImgRatio == "4_3")
{
var iWidth = giResol;
var iHeight = ( giResol / 4 ) * 3;
}
else
{
var iWidth = giResol;
var iHeight = ( giResol / 16 ) * 9;
}
cactivex_CreateVideoControl(iWidth,iHeight,gPlugDl);
}
//-->
</script>
</head>
<body topmargin="0" marginheight="0" background="/image/back.gif" onload="InitThisPage();">
<table width="100%" height="100%">
<tr><td>
<div align="center" valign="middle">
<script type="text/javascript"> 
DocWriteImage();
</script>
</div>
</td></tr>
<tr><td class="CssButton" colspan="3">
<span class="CssButton" tabindex="15" onclick="window.close();" onkeypress="window.close();">&nbsp;&nbsp;Close&nbsp;&nbsp;</span>
</td></tr>
</table>
</body>
</html>