SIP Videocall

  • Hallo zusammen,
    ich bin neu hier und bin gerade dabei auf einem Raspberry PI DoorPI zu testen (Version 2.5.0.4) Der Rasp-Pi hat eine Kamera, von der ich über den Webstream ein Bild bekomme. Nun möchte ich aber einen SIP Videocall einrichten. Mein SIP Client (Android Tablet) mit installiertem Linphone bekommt vom DoorPI den Anruf nur als Voicecall sobald der "Klingeltaster am Eingang 1 betätigt wird. Telefoniere ich mit anderen Android Tablets mit Linphone untereinander funktioniert der der Video Call. Alle SIP Clients kommunizieren über einen FreePBX Server im lokalen LAN. Der Video Codec auf allen SIP Clients habe ich auf VP8 eingestellt, da DoorPI nur diesen unterstützt. FreePBX mit Asterisk 13 kann diesen Codec.
    Hat jemand einen Tip, ob ich in der DoorPi Config etwas vergessen habe einzustellen?


    Hier ein Ausschnitt aus der DoorPi config:


    [SIP-Phone]
    video_codecs = VP8
    video_device = V4L2: /dev/video0
    video_display_enabled = False
    video_size = uxga


    Vielen Dank schon mal.

    • Offizieller Beitrag

    in der Logdatei mit [lexicon]Trace-Modus[/lexicon] kann man erkennen, welche Video Geräte erkannt wurden und welches letztendlich auch wirklich genutzt wurde.
    Da deine Einstellungen erst einmal gut aussehen, würde ich dort weiter suchen...

  • in der trace datei sind folgende Einträge:


    2016-08-09 19:12:37,975 [INFO] [doorpi.sipphone.from_linphone] Card 'ALSA: USB PnP Sound Device' added
    2016-08-09 19:12:37,976 [INFO] [doorpi.sipphone.from_linphone] Registering all webcam handlers
    2016-08-09 19:12:37,977 [INFO] [doorpi.sipphone.from_linphone] Webcam V4L2: /dev/video0 added
    2016-08-09 19:12:37,978 [INFO] [doorpi.sipphone.from_linphone] Webcam StaticImage: Static picture added
    2016-08-09 19:12:37,979 [INFO] [doorpi.sipphone.from_linphone] ms_factory_init_voip() done
    2016-08-09 19:12:37,979 [INFO] [doorpi.sipphone.from_linphone] Loading ms plugins from [./lib/mediastreamer/plugins]
    2016-08-09 19:12:37,980 [INFO] [doorpi.sipphone.from_linphone] Cannot open directory ./lib/mediastreamer/plugins: No such file or directory


    weiter unten folgt dann:


    2016-08-09 19:12:38,172 [INFO] [doorpi.sipphone.from_linphone] found 2 possible videodevices:
    2016-08-09 19:12:38,173 [DEBUG] [doorpi.sipphone.from_linphone] | name
    2016-08-09 19:12:38,173 [DEBUG] [doorpi.sipphone.from_linphone] ------------------------------------
    2016-08-09 19:12:38,173 [DEBUG] [doorpi.sipphone.from_linphone] [PYLINPHONE] >>> pylinphone_Core_get_video_devices(0x736e59e0 [0xec7668])
    2016-08-09 19:12:38,174 [DEBUG] [doorpi.sipphone.from_linphone] [PYLINPHONE] <<< pylinphone_Core_get_video_devices -> 0x729ad698
    2016-08-09 19:12:38,174 [DEBUG] [doorpi.sipphone.from_linphone] | V4L2: /dev/video0
    2016-08-09 19:12:38,175 [DEBUG] [doorpi.sipphone.from_linphone] | StaticImage: Static picture
    2016-08-09 19:12:38,175 [DEBUG] [doorpi.sipphone.from_linphone] ------------------------------------
    2016-08-09 19:12:38,175 [DEBUG] [doorpi.sipphone.from_linphone] [PYLINPHONE] >>> pylinphone_Core_get_video_devices(0x736e59e0 [0xec7668])
    2016-08-09 19:12:38,176 [DEBUG] [doorpi.sipphone.from_linphone] [PYLINPHONE] <<< pylinphone_Core_get_video_devices -> 0x729ad698
    2016-08-09 19:12:38,176 [TRACE] [doorpi.conf.config_object] get_string for key video_device in section SIP-Phone (default: V4L2: /dev/video0) returns V4L2: /dev/video0
    2016-08-09 19:12:38,177 [DEBUG] [doorpi.sipphone.from_linphone] [PYLINPHONE] >>> pylinphone_Core_get_video_devices(0x736e59e0 [0xec7668])
    2016-08-09 19:12:38,177 [DEBUG] [doorpi.sipphone.from_linphone] [PYLINPHONE] <<< pylinphone_Core_get_video_devices -> 0x729ad698
    2016-08-09 19:12:38,177 [DEBUG] [doorpi.sipphone.from_linphone] [PYLINPHONE] >>> pylinphone_Core_enable_video_capture(0x736e59e0 [0xec7668], 0x2e0620 [1])
    2016-08-09 19:12:38,178 [DEBUG] [doorpi.sipphone.from_linphone] [PYLINPHONE] <<< pylinphone_Core_enable_video_capture -> 0
    2016-08-09 19:12:38,178 [DEBUG] [doorpi.sipphone.from_linphone] [PYLINPHONE] >>> pylinphone_Core_set_video_device(0x736e59e0 [0xec7668], "V4L2: /dev/video0")
    2016-08-09 19:12:38,179 [DEBUG] [doorpi.sipphone.from_linphone] [PYLINPHONE] <<< pylinphone_Core_set_video_device -> 0
    2016-08-09 19:12:38,179 [TRACE] [doorpi.conf.config_object] get_string for key video_size in section SIP-Phone (default: vga) returns uxga
    2016-08-09 19:12:38,180 [DEBUG] [doorpi.sipphone.from_linphone] [PYLINPHONE] >>> pylinphone_Core_set_preferred_video_size_by_name(0x736e59e0 [0xec7668], "uxga")
    2016-08-09 19:12:38,180 [DEBUG] [doorpi.sipphone.from_linphone] [PYLINPHONE] <<< pylinphone_Core_set_preferred_video_size_by_name -> 0
    2016-08-09 19:12:38,181 [DEBUG] [doorpi.sipphone.from_linphone] [PYLINPHONE] >>> pylinphone_Core_get_video_device(0x736e59e0 [0xec7668])
    2016-08-09 19:12:38,181 [DEBUG] [doorpi.sipphone.from_linphone] [PYLINPHONE] <<< pylinphone_Core_get_video_device -> 0x729ad7c8
    2016-08-09 19:12:38,181 [DEBUG] [doorpi.sipphone.from_linphone] using video_device: V4L2: /dev/video0
    2016-08-09 19:12:38,182 [TRACE] [doorpi.conf.config_object] get_list for key video_codecs in section SIP-Phone (default: VP8) returns ['VP8']
    2016-08-09 19:12:38,183 [DEBUG] [doorpi.sipphone.from_linphone] [PYLINPHONE] >>> pylinphone_Core_get_video_codecs(0x736e59e0 [0xec7668])
    2016-08-09 19:12:38,183 [DEBUG] [doorpi.sipphone.from_linphone] [PYLINPHONE] >>> pylinphone_PayloadType_from_native_ptr(0xec6fb0)
    2016-08-09 19:12:38,183 [DEBUG] [doorpi.sipphone.from_linphone] [PYLINPHONE] >>> pylinphone_PayloadType_new()
    2016-08-09 19:12:38,184 [DEBUG] [doorpi.sipphone.from_linphone] [PYLINPHONE] <<< pylinphone_PayloadType_new -> 0x76cdf600
    2016-08-09 19:12:38,184 [DEBUG] [doorpi.sipphone.from_linphone] [PYLINPHONE] >>> pylinphone_PayloadType_init()
    2016-08-09 19:12:38,185 [DEBUG] [doorpi.sipphone.from_linphone] [PYLINPHONE] <<< pylinphone_PayloadType_init -> 0x76cdf600
    2016-08-09 19:12:38,185 [DEBUG] [doorpi.sipphone.from_linphone] [PYLINPHONE] <<< pylinphone_PayloadType_from_native_ptr -> 0x76cdf600
    2016-08-09 19:12:38,185 [DEBUG] [doorpi.sipphone.from_linphone] [PYLINPHONE] <<< pylinphone_Core_get_video_codecs -> 0x729ad6c0
    2016-08-09 19:12:38,186 [DEBUG] [doorpi.sipphone.from_linphone] [PYLINPHONE] >>> pylinphone_PayloadType_get_mime_type(0x76cdf600 [0xec6fb0])
    2016-08-09 19:12:38,186 [DEBUG] [doorpi.sipphone.from_linphone] [PYLINPHONE] <<< pylinphone_PayloadType_get_mime_type -> 0x736e59f8
    2016-08-09 19:12:38,187 [DEBUG] [doorpi.sipphone.from_linphone] [PYLINPHONE] >>> pylinphone_Core_video_capture_enabled(0x736e59e0 [0xec7668])
    2016-08-09 19:12:38,187 [DEBUG] [doorpi.sipphone.from_linphone] [PYLINPHONE] <<< pylinphone_Core_video_capture_enabled -> 0x2e0620
    2016-08-09 19:12:38,187 [DEBUG] [doorpi.sipphone.from_linphone] [PYLINPHONE] >>> pylinphone_PayloadType_get_mime_type(0x76cdf600 [0xec6fb0])
    2016-08-09 19:12:38,188 [DEBUG] [doorpi.sipphone.from_linphone] [PYLINPHONE] <<< pylinphone_PayloadType_get_mime_type -> 0x736e59f8
    2016-08-09 19:12:38,188 [DEBUG] [doorpi.sipphone.from_linphone] enable video codec VP8
    2016-08-09 19:12:38,189 [DEBUG] [doorpi.sipphone.from_linphone] [PYLINPHONE] >>> pylinphone_Core_instance_method_enable_payload_type(0x736e59e0 [0xec7668], 0x76cdf600 [0xec6fb0], 0x2e0620 [1])


    Beim Anruf des Teilnehmers finde ich leider keinen Hinweis auf einen Videocall (kenne mich zu wenig aus im VoIP). Habe deshalb die trace Datei angeängt

  • Habe jetzt nochmals den Trace Mode eingeschaltet und mehrmals den Taster betätigt. Hier kamen nun folgende Meldugen:


    2016-08-09 22:56:59,668 [INFO] [doorpi.sipphone.from_linphone] format MS_YUV420P : max_fps=90, native=1, compressed=0
    2016-08-09 22:56:59,669 [INFO] [doorpi.sipphone.from_linphone] format MS_YUYV : max_fps=90, native=1, compressed=0
    2016-08-09 22:56:59,670 [INFO] [doorpi.sipphone.from_linphone] format MS_RGB24 : max_fps=90, native=1, compressed=0
    2016-08-09 22:56:59,671 [INFO] [doorpi.sipphone.from_linphone] format MS_MJPEG : max_fps=90, native=1, compressed=1
    2016-08-09 22:56:59,672 [INFO] [doorpi.sipphone.from_linphone] VIDIOC_S_FMT: Das Gerät oder die Ressource ist belegt
    2016-08-09 22:56:59,672 [INFO] [doorpi.sipphone.from_linphone] VIDIOC_S_FMT: Das Gerät oder die Ressource ist belegt
    2016-08-09 22:56:59,673 [INFO] [doorpi.sipphone.from_linphone] VIDIOC_S_FMT: Das Gerät oder die Ressource ist belegt
    2016-08-09 22:56:59,674 [INFO] [doorpi.sipphone.from_linphone] VIDIOC_S_FMT: Das Gerät oder die Ressource ist belegt
    2016-08-09 22:56:59,675 [ERROR] [doorpi.sipphone.from_linphone] No compatible format found
    2016-08-09 22:56:59,676 [INFO] [doorpi.sipphone.from_linphone] Could not find any combination of resolution/pixel-format that works !
    2016-08-09 22:56:59,677 [INFO] [doorpi.sipphone.from_linphone] Fallback. Trying to force YUV420 format
    2016-08-09 22:56:59,678 [ERROR] [doorpi.sipphone.from_linphone] VIDIOC_S_FMT failed: Das Gerät oder die Ressource ist belegt
    2016-08-09 22:56:59,679 [INFO] [doorpi.sipphone.from_linphone] Output video size adjusted to match camera resolution (1280x960)
    2016-08-09 22:56:59,680 [INFO] [doorpi.sipphone.from_linphone] Video configuration set: bitrate=1500000bits/s, fps=12,000000, vsize=1280x960 for encoder [0xea58c8]


    Ist da noch eine Einstellung am Raspberry Camera Modul notwendig bzgl. dem Videoformat oder läuft da noch ein Dienst, der die Camera blockiert?

  • Darf ich mich hier einfach mal anhängen?
    Bei mir wird auch kein Video zur Verfügung gestellt vom Doorpi.
    Das Log sagt nur "Call [0x73248388]: disabling video in our call params because the remote doesn't want it."


    Aber in Linhpone als in Zoiper ist die Videoübertragung eigentlich aktiviert...


    Habe das Log mal angehängt


    Gruß Kalle

  • Jo MasterKalle,


    ich hab Zoiper mit Asterisk 13 und 14 im Labor, selbst bei 2x gleicher Hardware (Nexus7) ist bei mir derzeit kein Video Call möglich.


    Hab den Leuten von Zoiper geschrieben, nachdem ich verzweifelt war, scheint noch ein Bug zu sein.


    Bin dann auf einen freien Client unter Android (Antisip) seit dem kann ich den RasDoorpi anrufen und habe einen Videostrom.


    Vom RasDoorpi raus geht's noch nicht mit Video, da muss ich noch debuggen.


    Aldhafera

    SIP: Asterisk 14
    Dect: FrützBüx 7490
    O/S: Debain Jessie
    Automatisierung: CCU2 + CUXD + Pushover + Mail (YAHM)
    Aktoren: (bitte einfach fragen hab 250 Geräte im Einsatz)
    Anbindung Inet DynDns + VPN
    Sicherheit: Palo Alto, Fortigate, LSC ERPM
    Surveillance: Edimax, Digitus, Raspi
    Tracking: Cisco und LoraWan
    Netzwerke: CAT7 - 1Gb Uplink, FO (Multi-, Mono, POF), WLAN. Dect, BidCos, LoRa
    90% Hab ich sicher wieder vergessen - :D