Commit Graph

1741 Commits

Author SHA1 Message Date
Nanang Izzuddin fdc3c5d9be Misc (re #2147): When tracing is enabled, print ALSA error message when opening device failed in device enumeration.
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@5965 74dad513-b988-da41-8d7b-12977e46ad98
2019-04-10 06:32:27 +00:00
Sauw Ming 681033652a Fixed #2186: Enable video stream keep alive mechanism
* Also add video stream port to video conf when call is on local hold in order for video stream to keep sending keep-alive.



git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@5960 74dad513-b988-da41-8d7b-12977e46ad98
2019-03-27 01:53:57 +00:00
Sauw Ming 2c8710a584 Re #2181: Fixed assertion in darwin_dev pj_assert(frame->size >= stream->frame_size);
But the problem itself is caused by video port, which passes the wrong frame size when the video capture is passive.



git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@5948 74dad513-b988-da41-8d7b-12977e46ad98
2019-03-08 09:22:21 +00:00
Nanang Izzuddin 151c0d526a Re #2181: Fixed unreleased pool when disconnecting ports in video conference.
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@5947 74dad513-b988-da41-8d7b-12977e46ad98
2019-03-08 07:02:23 +00:00
Nanang Izzuddin eafc04d5bf Re #2181: Initial version of video conference implementation.
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@5939 74dad513-b988-da41-8d7b-12977e46ad98
2019-03-05 06:23:02 +00:00
Riza Sulistyo 4e965d2ad1 Close #2174: Fix out of bound error when enabling GnuTLS.
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@5929 74dad513-b988-da41-8d7b-12977e46ad98
2019-01-09 09:15:11 +00:00
Nanang Izzuddin 8c76e17145 Close #2171:
- Apply returned frame quality filter in OpenH264 decoder (drop the frame if decoder returns dsRefLost dsNoParamSets, dsDepLayerLost).
 - Only publish keyframe missing event when decoder returns non-dsErrorFree (was always publishing the event when no frame is returned, while decoder may return dsErrorFree and no frame returned, e.g: when decoding parameter sets).
 - Added a bit more logs for debugging.



git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@5925 74dad513-b988-da41-8d7b-12977e46ad98
2018-12-17 03:46:35 +00:00
Nanang Izzuddin 7fdb4bf16d Re #2168:
- Added a new PJSUA callback on_media_event().
 - Added audio device error handling into PJSUA2.



git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@5923 74dad513-b988-da41-8d7b-12977e46ad98
2018-12-13 06:57:23 +00:00
Nanang Izzuddin eb94374bc8 Close #2168: Added media event for audio device error.
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@5920 74dad513-b988-da41-8d7b-12977e46ad98
2018-12-12 07:16:46 +00:00
Sauw Ming 3a633fecc0 Fixed #2166: Possible buffer overread if RTCP packet length is invalid
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@5919 74dad513-b988-da41-8d7b-12977e46ad98
2018-12-04 02:25:52 +00:00
Sauw Ming 12669335c6 Re #2147 (misc): Fixed incorrect typecast in Speex resampler. Thanks to Sebastian Marek for the patch.
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@5916 74dad513-b988-da41-8d7b-12977e46ad98
2018-11-26 00:57:54 +00:00
Nanang Izzuddin 4957180b34 Misc (re #2147): Removed 'experimental' word for Speex resampling.
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@5915 74dad513-b988-da41-8d7b-12977e46ad98
2018-11-23 10:06:51 +00:00
Nanang Izzuddin f43b6cb0aa Fix #2163:
- Frame rate calculation is now done using temporary variable, instead of using stream decoding channel state directly.
 - Added condition for applying calculated frame rate: it must be greater than zero.
 - Fixed frame rate comparison to use float, was using integer which might get overflow on 32 bit integer platforms.



git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@5913 74dad513-b988-da41-8d7b-12977e46ad98
2018-11-22 03:33:42 +00:00
Sauw Ming c80b56d1ef Fixed #2160: stuck issue in ioqueue when detaching UDP media transport
- Fixed transport_udp so it won't call another read operation when being stopped.
 - Add robustness checks (assertion) in ioqueue recv, recvfrom, and accept to prevent the same op key being used twice. 



git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@5907 74dad513-b988-da41-8d7b-12977e46ad98
2018-11-07 04:34:01 +00:00
Sauw Ming ac7e0e618f Re #2157: Clear the callback rtp_cb2() when detaching transport
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@5903 74dad513-b988-da41-8d7b-12977e46ad98
2018-11-05 00:55:21 +00:00
Sauw Ming 91358a9135 Re #2147 (misc): Removed null video device declaration, which has no implementation
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@5902 74dad513-b988-da41-8d7b-12977e46ad98
2018-11-05 00:47:05 +00:00
Nanang Izzuddin 2bdc03bf22 Misc (re #2147): Assertion in pj_sockaddr_cp() when pjmedia_transport_attach() is called with rem_rtcp zero initialized (thanks Lauri Vänskä for the report).
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@5901 74dad513-b988-da41-8d7b-12977e46ad98
2018-11-02 06:45:58 +00:00
Sauw Ming 2de667c542 Re #2157: Minor change: prioritize rtp_cb2() and add more robustness
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@5898 74dad513-b988-da41-8d7b-12977e46ad98
2018-10-17 00:52:26 +00:00
Sauw Ming 1b030ecdb7 Fixed #2157: Update media transport adapter sample
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@5897 74dad513-b988-da41-8d7b-12977e46ad98
2018-10-16 12:03:21 +00:00
Riza Sulistyo aedbbbbdb9 Re #2147 (misc): Call pj_bzero() to frame_out to avoid undefined value for
bit_info. Thanks to Sai Krishna for the report.



git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@5894 74dad513-b988-da41-8d7b-12977e46ad98
2018-10-02 07:13:16 +00:00
Sauw Ming 1dc36f9a74 Re #2147 (misc): Add assertion in pjmedia_port_info_init() to prevent division by zero.
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@5890 74dad513-b988-da41-8d7b-12977e46ad98
2018-09-24 02:45:20 +00:00
Nanang Izzuddin b02d7b6b01 Close #2152: Updated video stream to delay video frame decoding, the minimum delay is configurable via PJMEDIA_VID_STREAM_DECODE_MIN_DELAY_MSEC.
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@5887 74dad513-b988-da41-8d7b-12977e46ad98
2018-09-19 08:26:41 +00:00
Sauw Ming fdca1bd954 Re #2059 (misc): re r5873, add more comment in the code.
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@5874 74dad513-b988-da41-8d7b-12977e46ad98
2018-09-03 07:45:04 +00:00
Sauw Ming fdcece45bf Re #2059 (misc): Add log for error info when Darwin capture session fails to start running or encounters an error during runtime.
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@5873 74dad513-b988-da41-8d7b-12977e46ad98
2018-09-03 07:36:46 +00:00
Sauw Ming 7db2028ec2 Re #2103:
A couple of improvements:
- Now initialize both video port's renderer AND capture buffer
- Support RGB format as well.

Known limitation: YUV currently only supports I420 and YV12
 


git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@5868 74dad513-b988-da41-8d7b-12977e46ad98
2018-08-28 02:00:05 +00:00
Sauw Ming 657df2b09e Re #2103: Darwin's capture device is passive, thus the video port's clock will fetch the frames much earlier than when the device is ready, getting zero frames and resulting in green screen on the remote side.
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@5867 74dad513-b988-da41-8d7b-12977e46ad98
2018-08-23 04:48:03 +00:00
Sauw Ming 34de9fcee0 Re #2103: Move the black screen initialization of the renderer to pjmedia_vid_port_start() instead
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@5866 74dad513-b988-da41-8d7b-12977e46ad98
2018-08-23 04:45:13 +00:00
Sauw Ming 4fcfc942d8 Fixed #2139: Fix potentially incorrect buffer allocation for video port renderer
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@5864 74dad513-b988-da41-8d7b-12977e46ad98
2018-08-21 08:06:43 +00:00
Nanang Izzuddin f654c5aa08 Close #2103: Initiate video port frame buffer with black for I420 & YV12 formats.
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@5862 74dad513-b988-da41-8d7b-12977e46ad98
2018-08-20 05:30:01 +00:00
Nanang Izzuddin d641faa661 Re #2096: Fixed some compile warnings.
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@5860 74dad513-b988-da41-8d7b-12977e46ad98
2018-08-16 02:39:36 +00:00
Nanang Izzuddin 893cd9d20b Re #2096: Fixed bug of r5855, SRTP encode_sdp() should not reset bypass_srtp flag in reoffer/answer scenario.
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@5857 74dad513-b988-da41-8d7b-12977e46ad98
2018-08-15 10:52:28 +00:00
Nanang Izzuddin 952ddfb355 Re #2096: Answer with one SRTP keying only when offered both (thanks Wei-Wei for the feedback).
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@5855 74dad513-b988-da41-8d7b-12977e46ad98
2018-08-15 02:44:53 +00:00
Sauw Ming 808e9375ae Re #2096: re r5852, fixed assertion in pj_sockaddr_cp() because the address can actually be zero if we haven't received any packets
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@5853 74dad513-b988-da41-8d7b-12977e46ad98
2018-08-03 09:21:51 +00:00
Sauw Ming b6721dc614 Re #2096: DTLS updates
- Fix assertion when DTLS tries to attach transport, but the ICE transport's source RTP address hasn't been updated.
- Fix DTLS transport attachment in dtls_media_start() which misses rtcp-mux checking, causing rtcp-mux to be disabled.



git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@5852 74dad513-b988-da41-8d7b-12977e46ad98
2018-08-03 02:33:28 +00:00
Sauw Ming fd5674b334 Fixed #2136: Increase default ICE password length as mandated by the RFC
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@5850 74dad513-b988-da41-8d7b-12977e46ad98
2018-08-01 08:34:19 +00:00
Nanang Izzuddin 2d8776016d Re #2096:
- Updated DTLS-SRTP to ignore stray packet after DTLS nego has been completed.
 - Added few debugging logs.
 - Fixed false SSL error.



git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@5847 74dad513-b988-da41-8d7b-12977e46ad98
2018-07-27 06:16:26 +00:00
Sauw Ming 1db5b2167d Re #2059 (misc): List ALSA audio device even if it fails to open
If an ALSA audio device cannot be opened for recording and playback, it may mean that they are temporarily busy (such as currently being used by another app), so we should still list it.

Thanks to Tobias Schneider for the patch.



git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@5846 74dad513-b988-da41-8d7b-12977e46ad98
2018-07-27 02:58:41 +00:00
Nanang Izzuddin 5852395694 Re #2096:
- Added new error code for sending RTP/RTCP failure when DTLS-SRTP nego is in progress.
 - When sending RTP/RTCP fails, only print error message once for consecutive same errors.



git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@5845 74dad513-b988-da41-8d7b-12977e46ad98
2018-07-26 07:19:39 +00:00
Sauw Ming e98553fbcb Re #2126: Create thread when creating the event manager, which is required for video. Also add more doc about this in pjmedia_event_mgr.
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@5843 74dad513-b988-da41-8d7b-12977e46ad98
2018-07-26 03:20:03 +00:00
Riza Sulistyo 8dcaa4496d Re #2126: Add rtcp_fb.h and rtcp_fb.c to pjmedia project file for VS2015.
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@5832 74dad513-b988-da41-8d7b-12977e46ad98
2018-07-23 07:03:57 +00:00
Sauw Ming 2cfde147cc Fixed #2131: Incorrect Opus fmtp settings
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@5831 74dad513-b988-da41-8d7b-12977e46ad98
2018-07-23 06:35:57 +00:00
Sauw Ming f5b93b5f5a Fixed #2128: Add feature to allow responding incoming INVITE/re-INVITE asynchronously and set the SDP answer
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@5828 74dad513-b988-da41-8d7b-12977e46ad98
2018-07-20 02:19:41 +00:00
Nanang Izzuddin d0b08f08ae Re #2126: Added rtcp_fb.c to Makefile and fixed compile warnings on gcc.
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@5827 74dad513-b988-da41-8d7b-12977e46ad98
2018-07-19 07:25:17 +00:00
Nanang Izzuddin f61de805c8 Re #2126: Implemented incoming RTCP-FB handling, i.e: parse and notify application via PJMEDIA event framework.
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@5825 74dad513-b988-da41-8d7b-12977e46ad98
2018-07-17 08:11:17 +00:00
Nanang Izzuddin 4028a34cd9 Re #2096: Fixed silly mistake of missing a comma in r5823.
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@5824 74dad513-b988-da41-8d7b-12977e46ad98
2018-07-16 08:04:02 +00:00
Nanang Izzuddin 8ebab77c7f Re #2096:
- For better interoperability, check remote support for DTLS-SRTP by inspecting SDP a=fingerprint availability instead of UDP/TLS/SRTP/SAVP.
 - Bailout DTLS-SRTP when SDP a=fingerprint is not available.



git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@5823 74dad513-b988-da41-8d7b-12977e46ad98
2018-07-16 07:35:52 +00:00
Nanang Izzuddin 8a883d4ffb Close #2126: Initial implementation of RTCP Feedback.
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@5820 74dad513-b988-da41-8d7b-12977e46ad98
2018-07-12 08:22:31 +00:00
Nanang Izzuddin f31f77289b Misc (re #2059): Updated configure script to:
- make sure that C++ compiler is available, and
 - disable ALSA when ALSA development library is not found.

Thanks Alexander Traud for the feedbacks.



git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@5814 74dad513-b988-da41-8d7b-12977e46ad98
2018-06-26 07:08:24 +00:00
Nanang Izzuddin 147c1021fd Misc (re #2059): Fixed various compile warnings on GCC 8.1 (thanks Alexander Traud for the report).
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@5813 74dad513-b988-da41-8d7b-12977e46ad98
2018-06-25 07:56:57 +00:00
Riza Sulistyo 1a7c9f8882 Re #2059 (misc): Fixed some error on transport_srtp.c after #2097 + #2096.
- Fixed nullptr exception, because opt pointer might not be set.
- Remove assertion to check pool and sdp in pjmedia_transport_media_start().
Thanks to Ciro Ferraiuolo for the report.



git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@5811 74dad513-b988-da41-8d7b-12977e46ad98
2018-06-22 17:13:02 +00:00