Прямая трансляция видео в ionic 4 через веб-разъем - PullRequest
0 голосов
/ 04 июня 2019

Я хочу написать приложение, которое будет смотреть видеопоток через websocket и показывать мне это видео. Для этого я использую ionic 4 (angular 7) и импортирую библиотеку jsmpeg (https://www.npmjs.com/package/jsmpeg).). Моя проблема - ошибка декодирования, насколько я понимаю. Это ошибки, которые создаются с каждым кадром. Как это решить?

import { Component, OnInit, NgZone } from '@angular/core';
import jsmpeg from 'jsmpeg';
@Component({
  selector: 'app-display',
  templateUrl: './display.page.html',
  styleUrls: ['./display.page.scss'],
})
export class DisplayPage implements OnInit {

  videoStarter:any;

  constructor() {
     }


  ngOnInit()
  {

  }
  startVideo(){
    var canvas = document.getElementById('video-canvas');
    var url = new WebSocket('ws://myurl.ru:8080');
    url.onopen = function(evt){
      alert('Connection open');
    }
    url.onclose = function(evt){
      alert('Connection close');
    }
    url.onerror = function(evt){
      alert('Connection error');
    }
    //var jsmpeg = require('jsmpeg');
    var player = new jsmpeg (url, {canvas:canvas, autoplay: true});
  }
}
ERROR TypeError: Cannot read property '1' of undefined
    at push../node_modules/jsmpeg/jsmpg.js.window.jsmpeg.push../node_modules/jsmpeg/jsmpg.js.jsmpeg.decodeBlock (jsmpg.js:1452)
    at push../node_modules/jsmpeg/jsmpg.js.window.jsmpeg.push../node_modules/jsmpeg/jsmpg.js.jsmpeg.decodeMacroblock (jsmpg.js:1042)
    at push../node_modules/jsmpeg/jsmpg.js.window.jsmpeg.push../node_modules/jsmpeg/jsmpg.js.jsmpeg.decodeSlice (jsmpg.js:933)
    at push../node_modules/jsmpeg/jsmpg.js.window.jsmpeg.push../node_modules/jsmpeg/jsmpg.js.jsmpeg.decodePicture (jsmpg.js:672)
    at push../node_modules/jsmpeg/jsmpg.js.window.jsmpeg.push../node_modules/jsmpeg/jsmpg.js.jsmpeg.scheduleDecoding (jsmpg.js:179)
    at ZoneDelegate.push../node_modules/zone.js/dist/zone.js.ZoneDelegate.invokeTask (zone.js:423)
    at Object.onInvokeTask (core.js:17290)
    at ZoneDelegate.push../node_modules/zone.js/dist/zone.js.ZoneDelegate.invokeTask (zone.js:422)
    at Zone.push../node_modules/zone.js/dist/zone.js.Zone.runTask (zone.js:195)
    at push../node_modules/zone.js/dist/zone.js.ZoneTask.invokeTask (zone.js:498)

Ошибки, созданные в html console (F12)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...