Video Inactive on Raspberry Pi 2

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



are you running pjsua with --video or are you using "vid enable".  I was
unable to get this to work on the RpiB using Openh264 and after following
some steps form another user on this list was able to get video working.

in a nutshell you need to:
install x264
$ apt-get install x264 libx264-dev

download and install ssl (not mandatory)
$ apt-get install openssl
$ apt-get install libssl-dev

download and compile sdl2 (I tried the pre compiled version but this did
not work so had to compile myself)

download and compile ffmpeg 1.2.6 (this will take a few hours so make
yourself a big cup of tea)

$ ./configure --enable-shared --disable-static --enable-memalign-hack
--enable-gpl --enable-libx264
$ make && make install

create file pjproject-2.2.1/pjlib/include/pj/config_site.h
add the following line and save
#define PJMEDIA_HAS_VIDEO 1

download and compile pjproject (add parameters to ./configure if you do not
want ssl)
./configure && make && make install

launch pjsua with --video
or you could use the following
pjsua --video --log-level=5 --add-codec=G722 --auto-answer=200 --no-vad
--ec-tail 0 --playback-dev=0

credit to Silvio for these steps

thanks
Matt

On 10 March 2015 at 07:41, Chirag Ajmera <chirag at ncc.co.in> wrote:

> Kindly can anyone please guide on the below, I have been trying to get
> video working on Arm based boards since last 6 months but no success !
> Compilation has been successful w/o error & vid_streamutil also works
>
> *Issue - Video is Inactive ( camera does not start during a call pjsua,
> but streams with vid_streamutil app )*
> Platform - Raspberry Pi 2 with Asterisk SIP Server
> PJSIP - v2.3 compiled from source omitting openH264 & libyuv
>
> Below is the call disconnection message *( PJSU DEMO APP )*
>
> -----------------------------------------------------------------------------------------
>
> 13:03:20.813    pjsua_aud.c  ..Conf connect: 2 --> 0
> 13:03:20.813    pjsua_aud.c  ...Set sound device: capture=-1, playback=-2
> 13:03:20.814    pjsua_app.c  ....Turning sound device ON
> 13:03:20.814    pjsua_aud.c  ....Opening sound device PCM at 16000/1/20ms
> 13:03:20.838    ec0x21540e8  .....AEC created, clock_rate=16000,
> channel=1, samples per frame=320, tail length=200 ms, latency=0 ms
> 13:03:20.839   conference.c !...Port 2 (ring) transmitting to port 0
> (default:CARD=U0x46d0x81b)
> 13:03:20.839   pjsua_call.c  ..Answering call 0: code=200
> 13:03:20.839  pjsua_media.c  .....Call 0: updating media..
> 13:03:20.840    pjsua_aud.c !......Audio channel update..
> 13:03:20.840  strm0x217f604 !.......VAD temporarily disabled
> 13:03:20.842  strm0x217f604  .......Encoder stream started
> 13:03:20.842  strm0x217f604  .......Decoder stream started
> 13:03:20.842  pjsua_media.c  ......Audio updated, stream #0: PCMU
> (sendrecv)
> 13:03:20.842    pjsua_vid.c  ......Video channel update..
> 13:03:20.863 vstenc0x2183c5  .......Encoder stream started
> 13:03:20.863 vstdec0x2183c5  .......Decoder stream started
> 13:03:20.864    pjsua_vid.c  .......Setting up RX..
> 13:03:20.864    pjsua_vid.c  ........Creating video window: type=stream,
> cap_id=-1, rend_id=0
> 13:03:20.864    pjsua_vid.c  .........Window 0: destroying..
> *13:03:20.864  pjsua_media.c  ......pjsua_vid_channel_update() failed for
> call_id 0 media 1: Invalid video device (PJMEDIA_EVID_INVDEV)*
> 13:03:20.864    pjsua_app.c  .....Call 0 media 0 [type=audio], status is
> Active
> 13:03:20.864    pjsua_aud.c  .....Conf disconnect: 2 -x- 0
> 13:03:20.864   conference.c  ......Port 2 (ring) stop transmitting to port
> 0 (default:CARD=U0x46d0x81b)
> 13:03:20.865    pjsua_aud.c  .....Conf connect: 3 --> 0
> 13:03:20.865   conference.c  ......Port 3 (sip:1004 at 192.168.1.190)
> transmitting to port 0 (default:CARD=U0x46d0x81b)
> 13:03:20.865    pjsua_aud.c  .....Conf connect: 0 --> 3
> 13:03:20.865   conference.c  ......Port 0 (default:CARD=U0x46d0x81b)
> transmitting to port 3 (sip:1004 at 192.168.1.190)
> 13:03:20.865    pjsua_app.c  .....Call 0 media 1 [type=video], status is
> None
> 13:03:20.865    pjsua_app.c  .....Just rejected incoming video offer on
> call 0, use "vid call enable 1" or "vid call add" to enable video!
> 13:03:20.865   pjsua_core.c  ......TX 1032 bytes Response msg
> 200/INVITE/cseq=102 (tdta0x214a428) to UDP 192.168.1.190:5060:
> SIP/2.0 200 OK
> Via: SIP/2.0/UDP 192.168.1.190:5060
> ;rport=5060;received=192.168.1.190;branch=z9hG4bK5aac1fe4
> Call-ID: 6f30ba0b4fc6117d07745c7a2aeaa3a6 at 192.168.1.190:5060
> From: "1004" <sip:1004@192.168.1.190>;tag=as16d63286
> To: <sip:1001 at 192.168.1.190;ob>;tag=fb79d2ca-876b-44eb-851d-533a590e3289
> CSeq: 102 INVITE
> Contact: <sip:1001 at 192.168.1.190:5090;ob>
> Allow: PRACK, INVITE, ACK, BYE, CANCEL, UPDATE, INFO, SUBSCRIBE, NOTIFY,
> REFER, MESSAGE, OPTIONS
> Supported: replaces, 100rel, timer, norefersub
> Content-Type: application/sdp
> Content-Length:   469
>
> v=0
> o=- 3634961600 3634961601 IN IP4 192.168.1.190
> s=pjmedia
> b=AS:352
> t=0 0
> a=X-nat:0
> m=audio 4000 RTP/AVP 0 101
> c=IN IP4 192.168.1.190
> b=TIAS:64000
> a=rtcp:4001 IN IP4 192.168.1.190
> a=sendrecv
> a=rtpmap:0 PCMU/8000
> a=rtpmap:101 telephone-event/8000
> a=fmtp:101 0-16
> m=video 4002 RTP/AVP 99
> c=IN IP4 192.168.1.190
> b=TIAS:256000
> a=rtcp:4003 IN IP4 192.168.1.190
> a=sendrecv
> a=rtpmap:99 H264/90000
> a=fmtp:99 profile-level-id=428014; packetization-mode=0
>
> --end msg--
> 13:03:20.868    pjsua_app.c  .........Call 0 state changed to CONNECTING
> 13:03:20.869   pjsua_core.c  .RX 433 bytes Request msg ACK/cseq=102
> (rdata0x21379ac) from UDP 192.168.1.190:5060:
> ACK sip:1001 at 192.168.1.190:5090;ob SIP/2.0
> Via: SIP/2.0/UDP 192.168.1.190:5060;branch=z9hG4bK4dfc06e3;rport
> Max-Forwards: 70
> From: "1004" <sip:1004@192.168.1.190>;tag=as16d63286
> To: <sip:1001 at 192.168.1.190:5090
> ;ob>;tag=fb79d2ca-876b-44eb-851d-533a590e3289
> Contact: <sip:1004 at 192.168.1.190:5060>
> Call-ID: 6f30ba0b4fc6117d07745c7a2aeaa3a6 at 192.168.1.190:5060
> CSeq: 102 ACK
> User-Agent: FPBX-12.0.43(13.2.0)
> Content-Length: 0
>
>
> --end msg--
> 13:03:20.869    pjsua_app.c  ...Call 0 state changed to CONFIRMED
> 13:03:20.884   Master/sound  Underflow, buf_cnt=0, will generate 1 frame
> 13:03:21.084   Master/sound  Underflow, buf_cnt=0, will generate 1 frame
> 13:03:21.148   openh264.cpp  Frame size changed: 720x480 --> 352x288
> 13:03:21.504  strm0x217f604  VAD re-enabled
> 13:03:29.484   sound_port.c  EC suspended because of inactivity
> 13:03:30.280   pjsua_core.c  .RX 466 bytes Request msg BYE/cseq=103
> (rdata0x21379ac) from UDP 192.168.1.190:5060:
> BYE sip:1001 at 192.168.1.190:5090;ob SIP/2.0
> Via: SIP/2.0/UDP 192.168.1.190:5060;branch=z9hG4bK02497827;rport
> Max-Forwards: 70
> From: "1004" <sip:1004@192.168.1.190>;tag=as16d63286
> To: <sip:1001 at 192.168.1.190:5090
> ;ob>;tag=fb79d2ca-876b-44eb-851d-533a590e3289
> Call-ID: 6f30ba0b4fc6117d07745c7a2aeaa3a6 at 192.168.1.190:5060
> CSeq: 103 BYE
> User-Agent: FPBX-12.0.43(13.2.0)
> X-Asterisk-HangupCause: Normal Clearing
> X-Asterisk-HangupCauseCode: 16
> Content-Length: 0
>
>
> --end msg--
> 13:03:30.281   pjsua_core.c  .......TX 337 bytes Response msg
> 200/BYE/cseq=103 (tdta0x222b5f0) to UDP 192.168.1.190:5060:
> SIP/2.0 200 OK
> Via: SIP/2.0/UDP 192.168.1.190:5060
> ;rport=5060;received=192.168.1.190;branch=z9hG4bK02497827
> Call-ID: 6f30ba0b4fc6117d07745c7a2aeaa3a6 at 192.168.1.190:5060
> From: "1004" <sip:1004@192.168.1.190>;tag=as16d63286
> To: <sip:1001 at 192.168.1.190;ob>;tag=fb79d2ca-876b-44eb-851d-533a590e3289
> CSeq: 103 BYE
> Content-Length:  0
>
>
> --end msg--
> 13:03:30.281    pjsua_app.c  ......Call 0 is DISCONNECTED [reason=200
> (Normal call clearing)]
> 13:03:30.282 pjsua_app_comm  ......
>   [DISCONNCTD] To: "1004" <sip:1004 at 192.168.1.190>;tag=as16d63286
>     Call time: 00h:00m:09s, 1st res in 31 ms, conn in 61ms
>     #0 audio PCMU @8kHz, sendrecv, peer=192.168.1.190:11686
>        SRTP status: Not active Crypto-suite:
>        RX pt=0, last update:00h:00m:00.126s ago
>           total 466pkt 74.5KB (93.2KB +IP hdr) @avg=63.1Kbps/78.9Kbps
>           pkt loss=0 (0.0%), discrd=0 (0.0%), dup=0 (0.0%), reord=0 (0.0%)
>                 (msec)    min     avg     max     last    dev
>           loss period:   0.000   0.000   0.000   0.000   0.000
>           jitter     :   0.000   1.774   5.875   2.125   1.593
>        TX pt=0, ptime=20, last update:00h:00m:04.393s ago
>           total 172pkt 27.5KB (34.4KB +IP hdr) @avg=23.3Kbps/29.1Kbps
>           pkt loss=0 (0.0%), dup=0 (0.0%), reorder=0 (0.0%)
>                 (msec)    min     avg     max     last    dev
>           loss period:   0.000   0.000   0.000   0.000   0.000
>           jitter     :  15.875  15.875  15.875  15.875   0.000
>        RTT msec      :   1.037   1.037   1.037   1.037   0.000
>    * #1 video H264, inactive, peer=192.168.1.190:13954
> <http://192.168.1.190:13954>*
> *       SRTP status: Not active Crypto-suite: *
>        RX  last update:00h:00m:09.153s ago
>           total 944pkt 1.07MB (1.11MB +IP hdr) @avg=911.4Kbps/943.5Kbps
>           pkt loss=0 (0.0%), discrd=0 (0.0%), dup=0 (0.0%), reord=0 (0.0%)
>                 (msec)    min     avg     max     last    dev
>           loss period:   0.000   0.000   0.000   0.000   0.000
>           jitter     :   0.011   1.038   3.211   1.566   0.769
>       * TX  last update:never*
> *          total 0pkt 0B (0B +IP hdr) @avg=0bps/0bps*
> *          pkt loss=0 (0.0%), dup=0 (0.0%), reorder=0 (0.0%)*
> *                (msec)    min     avg     max     last    dev *
> *          loss period:   0.000   0.000   0.000   0.000   0.000*
> *          jitter     :   0.000   0.000   0.000   0.000   0.000*
>        RTT msec      :   0.000   0.000   0.000   0.000   0.000
> 13:03:30.282  pjsua_media.c  ......Call 0: deinitializing media..
> 13:03:30.283  pjsua_media.c  ........Media stream call00:0 is destroyed
> 13:03:30.283    pjsua_vid.c  ........Stopping video stream..
> 13:03:30.287  pjsua_media.c  ........Media stream call00:1 is destroyed
> 13:03:31.282    pjsua_aud.c  Closing sound device after idle for 1
> second(s)
> 13:03:31.282    pjsua_app.c  .Turning sound device OFF
> 13:03:31.283    pjsua_aud.c  .Closing default:CARD=ALSA sound playback
> device and default:CARD=U0x46d0x81b sound capture device
>
>
> -----------------------------------------------------------------------------------------
> *VID_STREAMUTIL OUTPUT ( Streams the VIDEO )*
>
> sudo ./vid_streamutil --send-only --remote=192.168.1.191:4000
> 12:45:18.016 os_core_unix.c !pjlib 2.3 for POSIX initialized
> 12:45:18.121     alsa_dev.c  Added sound device default:CARD=ALSA
> 12:45:18.124     alsa_dev.c  Added sound device sysdefault:CARD=ALSA
> 12:45:18.146     alsa_dev.c  Added sound device default:CARD=U0x46d0x81b
> 12:45:18.163     alsa_dev.c  Added sound device sysdefault:CARD=U0x46d0x81b
> 12:45:18.168     alsa_dev.c  Added sound device
> front:CARD=U0x46d0x81b,DEV=0
> 12:45:18.174     alsa_dev.c  Added sound device
> surround40:CARD=U0x46d0x81b,DEV=0
> 12:45:18.179     alsa_dev.c  Added sound device
> surround41:CARD=U0x46d0x81b,DEV=0
> 12:45:18.183     alsa_dev.c  Added sound device
> surround50:CARD=U0x46d0x81b,DEV=0
> 12:45:18.192     alsa_dev.c  Added sound device
> surround51:CARD=U0x46d0x81b,DEV=0
> 12:45:18.197     alsa_dev.c  Added sound device
> surround71:CARD=U0x46d0x81b,DEV=0
> 12:45:18.203     alsa_dev.c  Added sound device
> iec958:CARD=U0x46d0x81b,DEV=0
> 12:45:18.203     alsa_dev.c  ALSA driver found 11 devices
> 12:45:18.204     alsa_dev.c  ALSA initialized
> 12:45:18.253       pa_dev.c  PortAudio sound library initialized, status=0
> 12:45:18.253       pa_dev.c  PortAudio host api count=2
> 12:45:18.253       pa_dev.c  Sound device count=6
> 12:45:18.253          pjlib  select() I/O Queue created (0x1d698ec)
> 12:45:18.257     v4l2_dev.c  Found capture device UVC Camera (046d:081b)
> 12:45:18.257     v4l2_dev.c    Enumerating formats:
> 12:45:18.257     v4l2_dev.c     Supported: YUV 4:2:2 (YUYV)
> 12:45:18.258     v4l2_dev.c     Unsupported: MJPEG
> 12:45:18.258     v4l2_dev.c     Unsupported: RGB3
> 12:45:18.258     v4l2_dev.c     Supported: BGR3
> 12:45:18.258     v4l2_dev.c     Unsupported: YU12
> 12:45:18.258     v4l2_dev.c     Unsupported: YV12
> 12:45:18.261     v4l2_dev.c  Video4Linux2 has 1 devices
> 12:45:18.261 colorbar_dev.c  Colorbar video src initialized with 1
> device(s):
> 12:45:18.261 colorbar_dev.c   0: Colorbar generator
> 12:45:18.281      sdl_dev.c !SDL_Init() error: No available video device
> 12:45:18.282   openh264.cpp !OpenH264 codec initialized
> 12:45:18.282     vid_port.c  Opening device UVC Camera (046d:081b) [v4l2]
> for capture: format=YUY2, size=720x480 @15:1 fps
> 12:45:18.338     v4l2_dev.c    mmap streaming initialized
> 12:45:18.338     vid_port.c  Device UVC Camera (046d:081b) [v4l2] opened:
> format=YUY2, size=640x480 @15:1 fps
> 12:45:18.341   openh264.cpp  Opening codec..
> 12:45:18.360          rtp.c  pjmedia_rtp_session_init: ses=0x1d720c0,
> default_pt=97, ssrc=0x773f1b32
> 12:45:18.361 vstdec0x74cc60  Decoding channel created 720x480 I420<-H264
> 22/1(~22)fps
> 12:45:18.361          rtp.c  pjmedia_rtp_session_init: ses=0x1d72154,
> default_pt=97, ssrc=0x773f1b32
> 12:45:18.361 vstenc0x74cc60  Encoding channel created 720x480 I420->H264
> 15/1(~15)fps
> 12:45:18.361   udp0x1d75a58  SO_RCVBUF set to 163840
> 12:45:18.361   udp0x1d75a58  SO_SNDBUF set to 163840
> 12:45:18.362   vid_stream.c  Video stream vstrm0x74cc607c created
> 12:45:18.362 vstenc0x74cc60  Encoder stream started
> 12:45:18.362 vstdec0x74cc60  Decoder stream paused
> 12:45:18.362     v4l2_dev.c  Starting v4l2 video stream UVC Camera
> (046d:081b)
> Stream is active, dir is send-only, sending to 192.168.1.91:4000
> 12:45:18.373 vid_streamutil  Sending 720x480 H264 @15.00fps
>
> Commands:
>   q     Quit
>
> Command: q
> 12:45:40.115     v4l2_dev.c  Stopping v4l2 video stream UVC Camera
> (046d:081b)
> 12:45:40.116     vid_port.c  Closing UVC Camera (046d:081b)..
> 12:45:40.116     v4l2_dev.c  Stopping v4l2 video stream UVC Camera
> (046d:081b)
> 12:45:40.117     v4l2_dev.c  Destroying v4l2 video stream UVC Camera
> (046d:081b)
> 12:45:40.123 vstdec0x74cc60  JB summary:
>   size=0/eff=0 prefetch=0 level=0
>   delay (min/max/avg/dev)=0/0/0/0 ms
>   burst (min/max/avg/dev)=0/0/0/0 frames
>   lost=0 discard=0 empty=0
> 12:45:40.281       pa_dev.c  PortAudio sound library shutting down..
>
>
> -----------------------------------------------------------------------------------------
>
> Thank You
> Best,
> Chirag A.
>
> _______________________________________________
> Visit our blog: http://blog.pjsip.org
>
> pjsip mailing list
> pjsip at lists.pjsip.org
> http://lists.pjsip.org/mailman/listinfo/pjsip_lists.pjsip.org
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.pjsip.org/pipermail/pjsip_lists.pjsip.org/attachments/20150310/375c343b/attachment.html>


[Index of Archives]     [Asterisk Users]     [Asterisk App Development]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Security]     [Bugtraq]     [Linux]     [Linux OMAP]     [Linux MIPS]     [Linux API]
  Powered by Linux