Existe uma câmera de eixo conectada ao nosso site (camba.tv) através do componente de conexão de um clique do eixo (que atua como proxy). Podemos nos comunicar com esta câmera somente através de http, definindo o proxy para o endereço do nosso servidor OCCC. Se quisermos obter fluxos RTSP (h.264), só nos resta a opção "RTSP over HTTP". Para isso eu tenho seguido a documentação do eixo VAPIX 3 seção 3.3. Emitir pedidos por meio do violinista, mas não recebo nenhuma resposta. Mas quando eu coloco o URL (axrtsphttp: //1.00408CBEA38B/axis-media/media.amp) no windows media player (com proxy definido para o servidor OCCC 212.78.237.156:3128) o player é capaz de obter fluxo RTSP sobre HTTP após Eu criei um pedido de rastreamento de comunicação entre a câmera eo windows media player através de wireshark e a solicitação que traz o fluxo se parece com
http://1.00408cbea38b/axis-media/media.amp HTTP/1.1
x-sessioncookie: 619
User-Agent: Axis AMC
Host: 1.00408CBEA38B
Proxy-Connection: Keep-Alive
Pragma: no-cache
Authorization: Digest username="root",realm="AXIS_00408CBEA38B",nonce="000a8b40Y0100409c13ac7e6cceb069289041d8feb1691",uri="/axis-media/media.amp",cnonce="9946e2582bd590418c9b70e1b17956c7",nc=00000001,response="f3cab86fc84bfe33719675848e7fdc0a",qop="auth"
HTTP/1.0 200 OK
Content-Type: application/x-rtsp-tunnelled
Date: Tue, 02 Nov 2010 11:45:23 GMT
RTSP/1.0 200 OK
CSeq: 1
Content-Type: application/sdp
Content-Base: rtsp://1.00408CBEA38B/axis-media/media.amp/
Date: Tue, 02 Nov 2010 11:45:23 GMT
Content-Length: 410
v=0
o=- 1288698323798001 1288698323798001 IN IP4 1.00408CBEA38B
s=Media Presentation
e=NONE
c=IN IP4 0.0.0.0
b=AS:50000
t=0 0
a=control:*
a=range:npt=0.000000-
m=video 0 RTP/AVP 96
b=AS:50000
a=framerate:30.0
a=transform:1,0,0;0,1,0;0,0,1
a=control:trackID=1
a=rtpmap:96 H264/90000
a=fmtp:96 packetization-mode=1; profile-level-id=420029; sprop-parameter-sets=Z0IAKeNQFAe2AtwEBAaQeJEV,aM48gA==
RTSP/1.0 200 OK
CSeq: 2
Session: 3F4763D8; timeout=60
Transport: RTP/AVP/TCP;unicast;interleaved=0-1;ssrc=060922C6;mode="PLAY"
Date: Tue, 02 Nov 2010 11:45:24 GMT
RTSP/1.0 200 OK
CSeq: 3
Session: 3F4763D8
Range: npt=0-
RTP-Info: url=rtsp://1.00408CBEA38B/axis-media/media.amp/trackID=1;seq=7392;rtptime=4190934902
Date: Tue, 02 Nov 2010 11:45:24 GMT
[Binary Stream Content]
Mas quando copio essa solicitação para o violinista, só obtenho 200 códigos de status com o tipo de conteúdo definido como application / x-rtsp-tunneled e não há dados de fluxo. A única coisa que faço diferente com o fluxo é usar Basic
no cabeçalho de autorização em vez de Digest
e não obtenho o código de status 401 (Un autorizado). Alguém pode explicar o que está acontecendo aqui? Como posso escrever sequências de solicitação para obter fluxo no violinista? Se for necessário, posso fazer o upload do dump de solicitação wireshark em algum lugar.