web-dev-qa-db-fra.com

Recevez le flux vidéo webRTC en utilisant python opencv en temps réel

Salut,
Je crée un pipeline où j'ai besoin d'accéder aux données de la caméra et de faire quelques algorithmes opencv dedans. Je peux envoyer la vidéo depuis la source en utilisant webRTC. https://lostechies.com/derickbailey/2014/03/13/build-a-local-webcam-with-webrtc-in-less-than-20-lines/

Mais, j'ai besoin d'aide pour savoir comment recevoir le flux vidéo en python et faire le traitement. Comment puis-je accéder au flux vidéo d'un flux WebRTC vers python = backend?

Il s'agit du code javascript en cours d'exécution.

(function(){
  var mediaOptions = { audio: false, video: true };

  if (!navigator.getUserMedia) {
      navigator.getUserMedia = navigator.getUserMedia || navigator.webkitGetUserMedia || navigator.mozGetUserMedia || navigator.msGetUserMedia;
  }

  if (!navigator.getUserMedia){
    return alert('getUserMedia not supported in this browser.');
  }

  navigator.getUserMedia(mediaOptions, success, function(e) {
    console.log(e);
  });

  function success(stream){
    var video = document.querySelector("#player");
    video.src = window.URL.createObjectURL(stream);
  }
})();

J'ai besoin d'aide pour recevoir la vidéo de ce script Java utilisant python.

5
Sreekiran

Je suis l'auteur de aiortc. Avez-vous vérifié l'exemple server, car il illustre comment traiter la vidéo à l'aide d'OpenCV?

https://github.com/jlaine/aiortc/tree/master/examples/server

5
Jeremy

https://webrtchacks.com/webrtc-cv-tensorflow/ montre un tutoriel assez approfondi pour faire WebRTC + tensorflow. Vous pouvez probablement échanger facilement tensorflow pour opencv. Cela capture un cadre de la webcam et l'envoie en utilisant HTTP de temps en temps. Si vous voulez aller plus en temps réel que cela, vous devrez utiliser WebRTC sur le serveur, par ex. en utilisant https://github.com/jlaine/aiortc

1
Philipp Hancke