html5 Cómo acceder a la cámara trasera del teléfono móvil en el navegador
La interfaz chrome30 para android que necesita utilizar HTML5 ya ha implementado el uso de la cámara web para llamar a la cámara trasera del teléfono móvil. El código es el siguiente: lt;!DOCTYPE?htmlgt;<. /p>
lt;html?xmlns ="http://www.w3.org/1999/xhtml"gt;
lt;headgt;
lt;titlegt ;HTML5?GetUserMedia?Demolt;/titlegt;
lt;meta?name="viewport"?content="ancho=ancho-dispositivo,?initial-scale=1.0,?maximum-scale=1.0" ?
lt;/ headgt;
lt;bodygt;
lt;input?type="button"?title="Activar cámara"?value ="Activar cámara"?onclick="getMedia ();"?/gt;lt;br?/gt;
lt;video?height="120px"?autoplay="autoplay"gt; lt;/videogt;lt;hr?/gt ;
lt;input?type="button"?title="Tomar foto"?value="Tomar foto"?onclick="getPhoto(); "?/gt;lt;br?/gt ;
lt;canvas?id="canvas1"?height="120px"? gt;lt;/canvasgt;lt;hr?/gt;
lt;input?type ="botón"?title="Video"?value="Video"?onclick="getVedio();"?/gt;lt;br?/gt;
lt;canvas?id=" lienzo2"?height="120px"gt;lt;/canvasgt;
lt;script?type="text/javascript"gt;
Var?p>var?video?=?document.p>var?video?=?document.querySelector('video');
var?audio,?audioType;
var?canvas1?=?document. getElementById('canvas1');
var?context1?=?canvas1.getContext('2d'); ?=?document.getElementById('canvas2') ;
var?context2?=?canvas2.getContext('2d');
navigator.getUserMedia?=?navigator.getUserMedia ?||?navigator.webkitGetUserMedia?||? navigator.mozGetUserMedia?||?navigator.msGetUserMedia;
>window.URL?=?window.URL?||?window.webkitURL?||?window.mozURL?||?window.msURL;
var p>
var?exArray?=?[];?//ID de origen del dispositivo de almacenamiento
MediaStreamTrack.getSources(function?(sourceInfos)?{
for(var i = 0; i! = sourceInfos.length; i)?{
var?sourceInfo?=?sourceInfos[i];
// El audio y el vídeo se repiten aquí, por lo que es necesario distinguirlos
if(sourceInfo.kind?===?''video'')?{
exArray.push(sourceInfo.id);
} p>
}
}
});
función?getMedia()?{
if(navigator.getUserMedia )?{
navigator.getUserMedia({
'vídeo':?{
'opcional':?[{
' sourceId': ?exArray[1]?alert('¿Nativo?dispositivo?media?streaming?(getUserMedia)?no?compatible?en?este?navegador.');
}
}
}
}
función?successFunc (transmisión)?{
//alert('¿Éxito?to? get?media !');
if(video.mozSrcObject!! ==?undefinido)?{
// En Firefox, video.mozSrcObject está inicialmente vacío en lugar de no definido, Podemos confiar en esto para detectar la compatibilidad con Firefox
video.mozSrcObject?=?stream;
}
else?{
p>video.src?=?window.URL?amp;amp;?window.URL.createObjectURL(stream)?||?stream;
}
/ /video .play();
/?Audio
audio?=?new?Audio();
audioType?=?getAudioType(audio); p>
si?(audioType)?{
audio.src?=?'polaroid.
audio.play();
}
}
función?errorFunc(e)?{
alert('¡Error!' e);
}