Custom Query (2195 matches)
Results (2001 - 2100 of 2195)
Ticket | Summary | Owner | Type | Priority | Milestone | Component |
---|---|---|---|---|---|---|
#1933 | Update pjnath-test for IPv6 support | bennylp | enhancement | normal | release-2.5.5 | pjnath |
Description |
This will update pjnath-test for IPv6 support.
|
|||||
#2071 | Update pjsip_resolve() to be able to return more than one resolved address | bennylp | enhancement | normal | release-2.8 | pjsip |
Description |
Currently pj_getaddrinfo() in pjsip_resolve will only return the first address. So this can be useful in situations where that first address has an address family which is unsupported by applications (such as IPv4-only client which receives an IPv6 address when trying to register, hence causing it to fail). Thanks to Alexander Traud for the report. |
|||||
#2053 | Update pjsua_get_snd_dev() info before calling on_snd_dev_operation() callback | bennylp | enhancement | normal | release-2.7.1 | pjsua-lib |
Description |
In on_snd_dev_operation() callback, sometimes it may be helpful to know which sound device is being opened/closed. This ticket will make sure that if pjsua_get_snd_dev() is called from within the callback, it will provide the desired info. |
|||||
#632 | Update resample with libresample implementation to use relative include path (thanks Seth Hinze for the patch). | nanang | enhancement | minor | Known-Issues | pjmedia |
#996 | Update the ETag header in the pending PUBLISH requests if the value changes in the previous request (thanks Johan Lantz for the report) | bennylp | defect | normal | release-1.6 | pjsip |
Description |
In relation to #411 |
|||||
#559 | Update the pool alternative API (pool_alt.h) with the latest pool API | bennylp | defect | minor | release-1.0-rc1 | pjlib |
Description |
The pool's alternative API (pool_alt.h) allows completely different pool back-ends to be used, and in pjlib's distribution, we have malloc() based pool where each pj_pool_alloc() call will call malloc(). This is useful for checking the memory integrity of the library using tools such as Valgrind or Purify. This alternative API has not been used for long time and needs updating to make it compilable. |
|||||
#1383 | Update the transport adapter sample in pjsua | bennylp | defect | normal | release-1.12 | applications |
Description |
A new wiki Media_Transport_Adapter was created to demonstrate how to use transport adapter. The pjsua application contains a sample on how to use the sample adapter, but it needs to be updated to the latest API according to the wiki. |
|||||
#1250 | Update the year in copyright text in all files | bennylp | enhancement | normal | release-1.10 | common |
#1348 | Update the year in copyright text in all files | bennylp | enhancement | normal | release-2.0-alpha | common |
#1736 | Update to bdSound's bdiMad audio device to support output routing | nanang | enhancement | normal | release-2.2 | pjmedia-audiodev |
Description |
Added support to get and set audio output routing (i.e. loudspeaker and default output) on mobile devices. |
|||||
#598 | Update to draft-ietf-behave-rfc3489bis-18 and draft-ietf-behave-turn-09 | bennylp | enhancement | normal | release-1.0-rc1 | pjnath |
Description |
Changes from rfc3489bis-15 to rfc3489bis-18:
Changed from turn-07 to turn-09:
|
|||||
#991 | Update to the latest PortAudio (PA) and fix PA issues on MacOS X Snow Leopard (thanks Saul Ibarra Corretge for the fix) | nanang | defect | normal | release-1.5.5 | pjmedia-audiodev |
Description |
Some errors have been reported on building/running PJSIP on MacOS X Snow Leopard: src/../../../portaudio/src/hostapi/coreaudio/pa_mac_core.c:510: warning: 'AudioDeviceGetProperty' is deprecated (declared at /System/Library/Frameworks/CoreAudio.framework/Headers/AudioHardware.h:2367) src/../../../portaudio/src/hostapi/coreaudio/pa_mac_core.c: In function 'OpenAndSetupOneAudioUnit': src/../../../portaudio/src/hostapi/coreaudio/pa_mac_core.c:800: error: 'ComponentDescription' undeclared (first use in this function) src/../../../portaudio/src/hostapi/coreaudio/pa_mac_core.c:800: error: (Each undeclared identifier is reported only once src/../../../portaudio/src/hostapi/coreaudio/pa_mac_core.c:800: error: for each function it appears in.) src/../../../portaudio/src/hostapi/coreaudio/pa_mac_core.c:800: error: expected ';' before 'desc' src/../../../portaudio/src/hostapi/coreaudio/pa_mac_core.c:801: error: 'Component' undeclared (first use in this function) src/../../../portaudio/src/hostapi/coreaudio/pa_mac_core.c:801: error: expected ';' before 'comp' src/../../../portaudio/src/hostapi/coreaudio/pa_mac_core.c:866: error: 'desc' undeclared (first use in this function) src/../../../portaudio/src/hostapi/coreaudio/pa_mac_core.c:872: error: 'comp' undeclared (first use in this function) Solution provided by Saul Ibarra Corretge can be found here. |
|||||
#1846 | Update to use 'HIGH' ciphers as default in OpenSSL | bennylp | enhancement | normal | release-2.4.5 | applications |
Description |
Since March 2015, a TLS/SSL security vulnerability was revealed, which mandates to disable certain TLS cipher-suites <https://en.wikipedia.org/wiki/FREAK>. Furthermore since February 2015, RFC 7465 prohibits the cipher-suite RC4. To achieve this with OpenSSL, the cipher-suite list has to be changed from "DEFAULT" to "HIGH". Furthermore, all ciphers which were not included in "DEFAULT" before (like eNULL), should not appear now either. Therefore: HIGH:-COMPLEMENTOFDEFAULT. Special thanks to Alexander Traud for his excellent suggestion, description, and patch. |
|||||
#451 | Updated PortAudio to the latest revision | nanang | defect | blocker | release-0.9.0 | pjmedia |
Description |
This fixes several problems, among other things:
|
|||||
#2132 | Updated account matching algo for incoming request | bennylp | enhancement | normal | release-2.8 | pjsua-lib |
Description |
Currently local account is always bound to a transport since r5784 (of 2.8). Unfortunately the current account matching algo in pjsua_acc_find_for_incoming() may select a local account with incompatible transport type, which may cause failure in sending response with error PJSIP_ETPNOTSUITABLE. |
|||||
#165 | Updated config.sub to support new targets (eg. blackfin) | bennylp | enhancement | normal | release-0.5.10.2 | common |
#166 | Updated config.sub to support new targets (eg. blackfin) | bennylp | enhancement | normal | release-0.7.0-rc1 | common |
#2177 | Updated configure-android script for NDK r17, r18, r19 | nanang | defect | normal | release-2.9 | common |
Description |
Known issues with current configure-android:
Thank you Ryan Wallach for the feedback. |
|||||
#1847 | Upgrade libsrtp version and support for AES-256 crypto | nanang | enhancement | normal | release-2.5 | pjmedia |
#364 | Upon shutdown, un-REGISTER request should be sent only after un-PUBLISH request has completed successfully | bennylp | defect | normal | release-1.5 | pjsua-lib |
Description |
.. or otherwise (un)PUBLISH will fail either with 403/Unregistered or with authentication failure, since account may have been deleted. Thanks Babon Frederic and Nicholas Xu for pointing this out. |
|||||
#1287 | Use "static const char*" to replace "define THIS_FILE" if that reduces size | bennylp | enhancement | minor | release-2.x | common |
#1246 | Use CFHost API for pj_getaddrinfo() on iPhone OS | bennylp | defect | normal | release-1.10 | pjlib |
Description |
On iPhone OS, getaddrinfo() is sometimes unable to resolve local hostname returned by gethostname(), causing delay around 2-5 sec during the initialization process. Previous fix (see ticket #1104) tried to append ".local" for the value returned by gethostname(), however there are cases when the hostname has a "-2" suffix such as "hostname-2.local" which causes this fix ineffective. |
|||||
#1494 | Use EC options to determine whether to use device/software EC | nanang | enhancement | normal | release-1.14 | pjmedia |
Description |
Currently, when device EC is available, pjmedia will automatically use it. However, it turns out that there are cases where using software EC is actually preferable, so an option for the application to choose whether to use device/software EC should be introduced. |
|||||
#1298 | Use PJ_ERROR consistently | bennylp | enhancement | minor | release-2.9 | common |
Description |
Replacing PJ_LOG for writing error message log with status code. |
|||||
#1673 | Use Request URI when matching incoming request to account if the To URI contains tel: URL | bennylp | enhancement | normal | release-2.2 | pjsua-lib |
Description |
Incoming request will be matched to PJSUA accounts by looking at the To URI. And if the To URI contains tel: URI, the default account will be used. This ticket adds further try, that is to try to use the request URI when the To URI contains tel: URI. |
|||||
#792 | Use Visual Studio property sheets for all projects | ismangil | enhancement | normal | common | |
Description |
Modify projects to use property sheets, so it will be easier to tweak in the future. |
|||||
#1613 | Use appropriate request for ioctl() function to access the interface flags (thanks to Peter Koletzki for the report) | bennylp | defect | normal | release-2.1 | pjlib |
Description |
When using SIOCGIFCONF ifreq struct would be filled with the interface address rather than the flags of the interface. Therefore any test against the flags of this interface are not working at the moment. For gaining access to the flags, an additional socketctrl SIOCGIFFLAGS should be used. |
|||||
#2047 | Use ar/ranlib from android ndk binutils when building using clang with --use-ndk-cflags option | bennylp | defect | normal | release-2.7.1 | common |
Description |
At the moment when building android using clang, the build process will use ar/ranlib from host machine's binutils. This is not a problem on linux, however error will be raised on MacOS: warning: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ranlib: warning for library: ../lib/libpj-arm-unknown-linux-androideabi.a the table of contents is empty (no object file members in the library define global symbols) output/pjlib-test-arm-unknown-linux-androideabi/main.o: In function `main': pjlib/build/../src/pjlib-test/main.c:(.text.main+0x3c): undefined reference to `PJ_SOCK_DGRAM' pjlib/build/../src/pjlib-test/main.c:(.text.main+0x4c): undefined reference to `PJ_SOCK_DGRAM' pjlib/build/../src/pjlib-test/main.c:74: undefined reference to `pj_str' pjlib/build/../src/pjlib-test/main.c:76: undefined reference to `pj_strtoul' pjlib/build/../src/pjlib-test/main.c:82: undefined reference to `pj_str' ... This ticket will check and use the binutils from the android ndk. |
|||||
#2205 | Use bound address for outgoing UDP SIP messages | ming | defect | normal | release-2.9 | pjsua-lib |
Description |
For TCP&TLS, we already have ticket #1575, which will use the configured bind address for outgoing messages. However, for UDP, this is not the case. So even though the user has specified the bound_addr when calling pjsua_transport_create(UDP,...), the outgoing messages may still use different Via and Contact addresses. |
|||||
#1819 | Use expiration field to indicate registration/unregistration in registration callback | bennylp | enhancement | normal | release-2.4 | pjsip |
Description |
In registration callback on_reg_state2(), especially in failure cases, sometimes it's difficult to distinguish whether the callback is called for registration or unregistration request. This ticket will fix it by setting cbparam.expiration field to 0 in case of unregistration and > 0 otherwise. |
|||||
#2211 | Use group lock instead of mutex for SIP dialog which is useful for B2BUA scenarios | riza | enhancement | normal | release-2.10 | pjsip |
Description |
On B2BUA scenario (with 2 leg/dialog):
It will lead to a deadlock scenario. For this scenario, it is useful for both dialog to use the same lock (e.g: group lock). The patch will introduce new API which will help for the above scenario.
Thanks to Peter Koletzki for the report. |
|||||
#1764 | Use latest early media SDP received on forked early media on 18x response. | bennylp | enhancement | normal | release-2.3 | pjsip |
Description |
Previously, ticket #1644 only allows this to happen upon receiving 183 response only. This ticket will expand it to all 18x responses. |
|||||
#2249 | Use sorted linked list for timer | riza | enhancement | normal | release-2.10 | pjlib |
Description |
Currently, the library use binary heap tree for timer implementation. However it is difficult to debug when a crash happen. This ticket will use a sorted linked list as an alternative. Note that this implementation is intended for debugging purposes and based on our test, it will hamper performance significantly if used with large number of entries. sorted linked list: 05:31:25.191 ....random scheduling/cancelling test.. 05:31:25.191 test 1 of 1.. 05:31:25.191 Entries 0-100: schedule 1,594,896 ent/sec 05:31:25.193 Entries 101-1,000: schedule 624,652 ent/sec 05:31:25.416 Entries 1,001-10,000: schedule 40,300 ent/sec 05:33:24.605 Entries 10,001-100,000: schedule 755 ent/sec 07:48:19.304 Entries 100,001-500,000: schedule 49 ent/sec 07:48:19.305 Entries 500,000-499,900: cancel 3,401,360 ent/sec 07:48:19.319 Entries 499,899-499,000: cancel 5,322,676 ent/sec 07:48:19.326 Entries 498,999-490,000: cancel 8,436,298 ent/sec 07:48:19.337 Entries 489,999-400,000: cancel 8,541,803 ent/sec 07:48:19.374 Entries 399,999-0: cancel 10,727,227 ent/sec 07:48:19.374 ....increment scheduling/cancelling test.. 07:48:19.375 test 1 of 1.. 07:48:19.377 Entries 0-100: schedule 2,673,796 ent/sec 07:48:19.380 Entries 101-1,000: schedule 2,785,869 ent/sec 07:48:19.385 Entries 1,001-10,000: schedule 2,887,626 ent/sec 07:48:19.408 Entries 10,001-100,000: schedule 3,932,474 ent/sec 07:48:19.521 Entries 100,001-500,000: schedule 3,569,618 ent/sec 07:48:19.521 Entries 500,000-499,900: cancel 7,874,015 ent/sec 07:48:19.522 Entries 499,899-499,000: cancel 13,498,498 ent/sec 07:48:19.526 Entries 498,999-490,000: cancel 8,376,617 ent/sec 07:48:19.535 Entries 489,999-400,000: cancel 10,622,735 ent/sec 07:48:19.565 Entries 399,999-0: cancel 13,477,373 ent/sec binary heap tree: 13:10:40.284 ....random scheduling/cancelling test.. 13:10:40.284 test 1 of 1.. 13:10:40.285 Entries 0-100: schedule 967,117 ent/sec 13:10:40.286 Entries 101-1,000: schedule 1,344,399 ent/sec 13:10:40.294 Entries 1,001-10,000: schedule 1,700,716 ent/sec 13:10:40.359 Entries 10,001-100,000: schedule 1,367,398 ent/sec 13:10:40.594 Entries 100,001-500,000: schedule 1,713,635 ent/sec 13:10:40.594 Entries 500,000-499,900: cancel 998,003 ent/sec 13:10:40.596 Entries 499,899-499,000: cancel 1,417,533 ent/sec 13:10:40.602 Entries 498,999-490,000: cancel 2,005,661 ent/sec 13:10:40.643 Entries 489,999-400,000: cancel 2,230,563 ent/sec 13:10:40.783 Entries 399,999-0: cancel 2,858,820 ent/sec 13:10:40.783 ....increment scheduling/cancelling test.. 13:10:40.786 test 1 of 1.. 13:10:40.787 Entries 0-100: schedule 3,125,000 ent/sec 13:10:40.788 Entries 101-1,000: schedule 2,535,966 ent/sec 13:10:40.791 Entries 1,001-10,000: schedule 2,508,851 ent/sec 13:10:40.820 Entries 10,001-100,000: schedule 3,170,262 ent/sec 13:10:40.940 Entries 100,001-500,000: schedule 3,344,568 ent/sec 13:10:40.940 Entries 500,000-499,900: cancel 358,680 ent/sec 13:10:40.944 Entries 499,899-499,000: cancel 465,296 ent/sec 13:10:40.960 Entries 498,999-490,000: cancel 571,470 ent/sec 13:10:41.069 Entries 489,999-400,000: cancel 820,636 ent/sec 13:10:41.377 Entries 399,999-0: cancel 1,303,636 ent/sec |
|||||
#628 | Use the fixed point version of IPP G.729 implementation on architectures that don't have FPU (thanks Seth Hinze for the patch). | nanang | enhancement | normal | release-1.0-rc3 | pjmedia |
#1196 | Using default audio input/output devices in coreaudio backend on Mac OS X. | nanang | enhancement | normal | release-1.10 | pjmedia-audiodev |
Description |
Currently, coreaudio backend will use the first input/output audio device as the default. It is more preferable if we can use the system's default input/output audio device instead. |
|||||
#1380 | Using locking to specific listener feature may cause outgoing TCP connection to be created for every request | bennylp | defect | normal | Known-Issues-and-Ideas | pjsip |
#1600 | V4L2 capture device always re-enqueue buffer with index zero (thanks Atilla Filiz for the patch) | ming | defect | normal | release-2.1 | pjmedia-videodev |
#548 | Validate memory usage | bennylp | task | normal | release-1.0-rc1 | common |
Description |
.. as part of QA. |
|||||
#1768 | Various Android fixes related to garbage collector and other crashes | bennylp | defect | normal | release-2.3 | common |
Description |
Fixes in sample Android application and also other places related to assertion and crashes, due to garbage collection issue (see GC issues in PJSUA2 book) or other issues. |
|||||
#2135 | Various PJSUA tests (Python scripts, unit tests) updates and fixes | bennylp | defect | normal | release-2.8 | unit-tests |
Description |
|
|||||
#348 | Various bugs in string comparison functions | bennylp | defect | normal | release-0.8.0 | pjlib |
Description |
Bug in pj_strcmp2() will cause pj_strcmp2("1", "12") to return equal. Checking other string functions reveals that some string comparison functions are not exactly compliant with ANSI. For example, given: char *s1 = "2"; char *s2 = "11"; With ANSI, strcmp(s1, s2) will return 1, while with pj_strcmp(s1, s2) will return -1. The reason why the result was different was because string comparison in PJLIB was too optimized for speed, so it only cares about the fact that the string was different. |
|||||
#1347 | Various cases of bad SDP answer generated when receiving offer with multiple media. | bennylp | defect | normal | release-2.0-alpha | pjsua-lib |
Description |
Sample cases (note that video is disabled and max_audio_cnt is 1/default):
|
|||||
#1974 | Various fixes for DNS, primarily for IPv6 | bennylp | defect | normal | release-2.6 | pjlib-util |
Description |
Thank you to Richard Mudgett (Digium) for the report. |
|||||
#1920 | Various patches related to FFMpeg | nanang | enhancement | normal | release-2.5.1 | pjmedia |
Description |
This ticket will contain various patches related to FFMpeg. For example, newer FFMpeg might deprecate API and introduce a new one. |
|||||
#684 | Various transmit data buffer leaks when transmission fails immediately | bennylp | defect | normal | release-1.0.1 | pjsip |
Description |
One of the scenario when transmission fails immediately is when memory allocation fails when allocating the contiguous buffer for the message. Another scenario is when a module rejects the transmission by returning non-PJ_SUCCESS in the on_tx_request() callback. This this occurs, there are some scenarios that are causing the transmit data to leak, or in other cases wrong state to be invoked in the dialog/invite session/pjsua call layer. |
|||||
#2096 | Various updates in DTLS-SRTP | nanang | defect | normal | release-2.8 | pjmedia |
Description |
A place for any bug fixes or enhancements related to DTLS-SRTP. |
|||||
#1423 | Verify call media states after a re-offer rejected by peer | bennylp | defect | normal | release-2.0-rc | pjsua-lib |
Description |
Sending a re-offer with new call setting will modify call media states, and the call media states need to be reverted back when the re-offer is rejected by peer. |
|||||
#2085 | Via header mismatch in CANCEL | bennylp | defect | normal | release-2.8 | pjsip |
Description |
Scenario:
See also #1996. Thanks Marcus Froeschl for the report. |
|||||
#1537 | Via rewrite: putting the right IP address in Via sent-by for outgoing requests | bennylp | enhancement | normal | release-2.0.1 | pjsip |
Description |
Problem Description Currently outgoing request has its Via sent-by filled in automatically with the address of the SIP transport being used to send the request. Since normally there is only one UDP transport instance that is shared by everything, this causes few problems:
Solution This ticket adds allow_via_rewrite option in PJSUA-LIB account config to fix the Via sent-by to use the same interface address as the one in the REGISTER request, as long as the request uses the same transport instance as the previous REGISTER request. By default this option is enabled. |
|||||
#1996 | Via-Header mismatch in CANCEL | bennylp | defect | normal | release-2.7 | pjsip |
Description |
According to RFC 3261: A CANCEL constructed by a client MUST have only a single Via header field value *matching the top Via value in the request being cancelled*. Using the same values for these header fields allows the CANCEL to be matched with the request it cancels. However, in PJSIP, when there is an IP address change situation, the Via header will be updated with the new address, causing the CANCEL's Via header to be different from the original INVITE's Via. |
|||||
#1263 | Video API for PJSUA-LIB | nanang | task | major | release-2.0-alpha | pjsua-lib |
Description |
PJSUA-LIB video API specification: 1. Video Device Enumeration APISpecifications:
2. Video Call APISpecifications:
Notes:
3. Video Capture Preview APISpecifications:
4. Media Info and Statistic APIThe new API can be used for both audio and video. Specifications:
5. Notification APINothing special for video. Update in media status is reported in on_media_state() callback as usual. Application may use media status API to query about video status. |
|||||
#2022 | Video Toolbox H264 encoder and decoder for Mac and iOS | nanang | enhancement | normal | release-2.7 | pjmedia |
Description |
Add support for native H264 encoder and decoder for Mac and iOS platform using Apple's Video Toolbox framework. |
|||||
#1361 | Video codec API changes | bennylp | defect | normal | release-2.0-alpha2 | pjmedia |
#2181 | Video conference implementation | enhancement | normal | release-2.9 | pjmedia | |
Description |
This ticket will implement video conference using centralized approach which is very similar to the existing audio conference, i.e: there will be an endpoint that act as the conference manager that is capable to establish multiple video calls, mix video from the participants (managed via connecting/disconnecting ports), and then send the mixing result to each participant. The video mixing operation is done by video conference bridge, which will use very similar APIs to the audio conference bridge. Video conference bridge specifications
ImplementationBasically, the video conference implementation shares the same concept as the audio conference, so for applications that already have audio conference feature, integrating video conference feature should be relatively simple. For participant, no modification is needed, it will see the video conference as a usual P2P video call, the video from other participants will be rendered into the same video window of the remote side of the video call (the conference manager). For conference manager, it can setups the video conference using a very similar way as setting up an audio conference (with additional efforts for managing the UI perhaps). A sample code for this can be checked below. Conference ports in a video window in PJSUAA video window may be related to two or more conference ports, application should be aware of this so it can manage the conference properly. A video window represents a video renderer device and is automatically registered to the video conference bridge. The conference slot ID can be queried via pjsua_vid_win_get_info(), the slot ID should be in pjsua_vid_win_info.slot_id. This is a sink port. As a sink port, it normally has a source, for example a capturer device or a call video stream. The conference slot ID of the source port should be queried separately, for example:
Sample usage: three parties video conferenceHere are steps to setup a three parties video conference:
|
|||||
#1729 | Video devices may still be built even when video is disabled (thanks Tzafrir Cohen for the patch) | ming | defect | normal | release-2.2 | pjmedia-videodev |
#1265 | Video events | bennylp | task | major | release-2.0-alpha | pjsua-lib |
Description |
While in general there are only few window events to be exported to application, since video window has no decoration (hence user cannot move, resize, close, etc.), there are events that may be interesting to app:
|
|||||
#1501 | Video format changed event triggered repeatedly when receiving dynamic video framerate (thanks Omar Hussein for the report) | nanang | defect | normal | release-2.0 | pjmedia |
Description |
As reported here, SDL is started-stopped repeatedly after PJMEDIA_EVENT_FMT_CHANGED event is triggered repeatedly. Moreover, the log shows that the incoming video framerate is changed continuously. |
|||||
#1437 | Video keyframe request/response using RTCP feedback Picture Loss Indication | nanang | enhancement | normal | release-2.10 | pjmedia |
Description |
This ticket is the continuation of #1234 (missing video keyframe handling) with focus on RTCP-FB PLI for requesting video keyframe. In PJSUA, this feature is by default enabled and configurable via call setting, i.e: pjsua_call_setting.req_keyframe_method with bitflag PJSUA_VID_REQ_KEYFRAME_RTCP_PLI. When enabled, it will be signaled in SDP offer/answer, which will look like this: a=rtcp-fb:* nack pli Application can also monitor incoming RTCP-FB PLI packet via PJSUA callback on_call_media_event() for event PJMEDIA_EVENT_RX_RTCP_FB. This ticket also introduces some macro settings:
|
|||||
#1850 | Video local preview cannot be started during an active video call on Android | bennylp | defect | normal | release-2.4.5 | pjsua-lib |
Description |
This is due to failure in setting output window visibility, note that Android renderer doesn't support PJMEDIA_VID_DEV_CAP_OUTPUT_HIDE capability, so pjsua_vid_preview_start() will return PJMEDIA_EVID_INVCAP and video doesn't not show up. Also, the function misses applying window output handle setting. Thanks Giorgio Alfarano for the report and the patch. |
|||||
#1360 | Video orientation support | nanang | defect | normal | release-2.0-alpha2 | pjmedia |
Description |
Background
Objective
Notes
Ideas
Issues
SpecificationBased on the background above, the following API will be implemented by this ticket:
|
|||||
#1236 | Video payload type issues (mostly for H.264) | nanang | defect | normal | Known-Issues-and-Ideas | pjmedia |
Description |
Known cases:
|
|||||
#1304 | Video port review/refactoring | ming | defect | normal | release-2.0-alpha | pjmedia |
Description |
|
|||||
#1827 | Video port's clock thread may get stuck during format change event | bennylp | defect | normal | release-2.4 | common |
Description |
It's caused by two things:
|
|||||
#1876 | Video renderer restarted multiple times | nanang | defect | normal | release-2.4.5 | pjmedia |
Description |
After investigation, the renderer restarts are triggered by multiple frame rate change events. Pjmedia learns remote frame rate by inspecting incoming RTP timestamp interval, when it detects frame rate is increasing, it will send PJMEDIA_EVENT_FMT_CHANGED event to application, in this case it is video port, which eventually will trigger video renderer restart. Unfortunately, some endpoints may send video RTP timestamps not in a fixed interval (even when the fps is fixed). |
|||||
#1444 | Video stream not transmitting when native preview is used (thanks Régis Montoya for the fix) | bennylp | defect | normal | release-2.0-rc | pjsua-lib |
Description |
It turns out that video capture port is not connected to anywhere when video capture device uses native preview. |
|||||
#1201 | Video support in PJSUA-LIB | bennylp | enhancement | normal | release-2.0-dev | pjsua-lib |
#1261 | Video tee | ming | task | major | release-2.0-alpha | pjmedia |
#1280 | Videoport only buffers 1 frame | nanang | defect | minor | release-2.x | pjmedia |
#1435 | Vidgui stuck after re-INVITE | bennylp | defect | normal | release-2.0-rc | applications |
Description |
Not always happen, but quite often. |
|||||
#1478 | Virtual video device for streaming AVI file | ming | enhancement | normal | release-2.0-rc | pjmedia-videodev |
Description |
Create a virtual video device for streaming AVI file. |
|||||
#85 | Visual Studio 2005 Sample-Makefile | bennylp | defect | normal | release-0.5.10 | applications |
Description |
Trunk (Rev. 916) does not compile samples section under VS 2005. Change first line of pjsip-apps\build\Samples-vc.mak from TARGET = i386-win32-vc6-$(BUILD_MODE) to TARGET = i386-win32-vc8-$(BUILD_MODE) Cheers,
|
|||||
#72 | Visual Studio 2005 Workspace support | bennylp | enhancement | normal | release-0.5.10 | common |
Description |
Yup, finally I'm committed to support this! (don't ask about VS7 or VS7.1 as I don't have them :) ). |
|||||
#1881 | Visual Studio 2015 support | bennylp | enhancement | normal | release-2.5 | common |
Description |
To support to Visual Studio 2015 (VS 2015), this ticket will introduce these files: - Solution file : pjproject-vs14.sln - Project files : *.vcxproj - Project properties sheet files : *.props - Project filter files : *.filters Please note that in VS 2015, VC++ directories settings are available in the user property sheet. To include them in a global setting, use Microsoft.cpp.<Platform>.users (e.g: Microsoft.Cpp.Win32.user) properties sheet file. |
|||||
#1365 | Volume setting not applied in Symbian MDA audio device creation | nanang | defect | normal | release-1.12 | pjmedia-audiodev |
#447 | WAV player cuts last data from the WAV file | bennylp | defect | normal | release-0.9.0 | pjmedia |
Description |
When the WAV player (pjmedia_wav_player_port) is not configured to playback in a loop, it will ignore the last portion of the WAV file if the WAV file size is not aligned to the WAV port's buffer size. |
|||||
#1502 | WAV player with NO_LOOP option still plays samples from start in the last frame (thanks Dmitry Dudkin for the patch) | nanang | defect | normal | release-1.14.2 | pjmedia |
Description |
In fill_buffer(), after encountering EOF the rest of the buffer is zeroed, but then it is overridden with the start of WAV data (rewinding). Original report can be found here. |
|||||
#67 | WAV playlist support | bennylp | enhancement | normal | release-0.5.10 | pjmedia |
Description |
David Clark has contributed support for playing multiple WAV files in a playlist. Need to integrate this with the library. |
|||||
#454 | WMME assertion after running application for a while | bennylp | defect | minor | Known-Issues-and-Ideas | pjmedia |
Description |
One user reported that after running application with WMME backend for a while (just over a minute), the application raised an assertion "May be heap corruption caused by your app or some DLL it loaded" |
|||||
#968 | WMME audio device initialization should not return non-PJ_SUCCESS just because of no audio device installed. | nanang | defect | normal | release-1.5 | pjmedia-audiodev |
Description |
This ticket fixes bug in #768. |
|||||
#1273 | WMME-dev extended format not yet ported | nanang | task | normal | release-2.0-beta | pjmedia-audiodev |
#1197 | WSAECONNRESET errors on Windows 2000 or 2003 may cause UDP transport to stop working | bennylp | defect | normal | release-1.10 | pjlib |
Description |
According to the following KB: a bug in Windows 2000 prior to SP2, and reportedly in Window 2003 as well, will cause error WSAECONNRESET to be returned for the UDP socket until the socket is closed, effectively making the socket unusable. In PJSIP, we handle this by stopping the UDP transport if we have ten (10) consecutive errors from the OS. This ticket disables WSAECONNRESET for all UDP sockets instantiated from PJLIB, using SIO_UDP_CONNRESET IOCTL as described by the KB. To disable this feature (in other words to revert to the behavior of previous PJSIP versions), declare PJ_SOCK_DISABLE_WSAECONNRESET to 0 in your config_site.h. |
|||||
#1702 | Warnings when building/linking the Python module due to different linker architecture | bennylp | defect | normal | release-2.2 | python |
Description |
Warnings similar to the following may occur on MacOS X when building the Python module:
These warnings can just be ignored because the module will still be built for the available architecture (x86_64 in this case). If you want to get rid of the warnings, you can set the ARCHFLAGS to include only architecture that you want to build as follows: $ ARCHFLAGS='-arch x86_64' python setup.py build |
|||||
#1480 | Wav player not rewinding after resetting the position to zero (thanks Han Rui and Alejandro Orellana for the feedback) | nanang | defect | normal | release-1.14 | pjmedia |
Description |
There is a bug in pjmedia_wav_player_port_set_pos(), the read buffer pointer is not reset after buffer gets updated. This may only noticeable on small wav files (sized around buffer size). |
|||||
#497 | Waveform Similarity Based Overlap-Add (WSOLA) implementation | nanang | enhancement | normal | release-0.9.0 | pjmedia |
Description |
WSOLA is used to speed up or slow down audio playback without changing the pitch. We can use this functionality to get around audio drifts, and also as base implementation for packet lost concealment (PLC). |
|||||
#1281 | What pjmedia_vid_param fields are initialized by default_param()? | ming | defect | minor | release-2.0-alpha | pjmedia |
Description |
What pjmedia_vid_param fields are initialized by default_param()? Can app expect all fields will be initialized with default values, and ready to be used? |
|||||
#1240 | When call is redirected with 3xx response, call info may still show old target as the remote peer | bennylp | defect | normal | release-1.10 | pjsua-lib |
Description |
When call is redirected to a new target by 3xx response, call info may still show old target as the remote info. |
|||||
#71 | When host doesn't have any NIC interfaces, it should return 127.0.0.1 instead of error | bennylp | defect | normal | release-0.5.10 | pjlib |
Description |
The primary host IP is resolved by detecting the default interface. Unfortunately when no NIC is present in the host, the pj_gethostip() function will return error while it really should return 127.0.0.1. |
|||||
#488 | When outgoing request within dialog is responded with 481 or 408, should send BYE after terminating dialog (thanks Philippe Leuba) | bennylp | defect | major | release-0.9.0 | pjsip |
Description |
When we send an INFO request in an INVITE initiated dialog and receive back a 481 or 408 response, the stack invokes the on_state_changed() callback of the invite session with the PJSIP_INV_STATE_DISCONNECTED state. This result in the termination of the dialog and is compliant with section 12.2.1.2 of RFC 3261, however a BYE request is not sent.
|
|||||
#2014 | When receiving an SDP answer for SRTP, process the tag correctly based on the offer | nanang | defect | normal | release-2.7 | pjmedia |
Description |
Related to r5500 which attempts to restart crypto numbering from 1 on a re-INVITE. Currently, the tag matching is not based on the offer, but the index of the crypto suite setting. This patch will match the tag using the offer. Thanks to Colin Morelli for the report. |
|||||
#1740 | When request URI uses sips scheme, TLS must always be used (thanks Peter Koletzki for the report) | bennylp | defect | normal | release-2.2.1 | pjsip |
Description |
As specified in RFC3261 8.1.2: Independent of which URI is used as input to the procedures of [4], if the Request-URI specifies a SIPS resource, the UAC MUST follow the procedures of [4] as if the input URI were a SIPS URI. Local policy MAY specify an alternate set of destinations to attempt. If the Request-URI contains a SIPS URI, any alternate destinations MUST be contacted with TLS. |
|||||
#2054 | When set CXXCFLAGS manually, make sure it is applied correctly. | bennylp | defect | normal | release-2.7.1 | common |
Description |
Setting CXXCFLAGS manually sometimes is needed, e.g: set "-std=c++03" option. However the current build configuration might ignore/overwrite it. This patch will make sure that the CXXCFLAGS is applied correctly. Thanks to Alexander Traud for the patch. |
|||||
#1319 | When sips scheme is used, TLS must be used even when transport=tcp is specified in the URI (thanks Iñaki Baz Castillo for the report) | bennylp | defect | normal | release-1.12 | pjsip |
Description |
Consider the following URI:
With the above URL, currently PJSIP will connect to destination host using TCP transport to port 5060. The correct behavior is to connect to destination host using TLS over TCP to port 5061. |
|||||
#2221 | When using Openssl as TLS backend, close notify alert is not sent before closing the connection | riza | defect | normal | release-2.10 | pjlib |
Description |
Before closing a connection, close notify alert must be sent to avoid truncation attack as stated in rfc5246: 7.2.1. Closure Alerts The client and the server must share knowledge that the connection is ending in order to avoid a truncation attack. Either party may initiate the exchange of closing messages. Currently, the close notify alert is not sent before the connection is closed. Thanks to Peter Koletzki for the report. |
|||||
#2170 | When using pjsua2 API, Re-INVITE with no SDP will be responded with 488 response | bennylp | defect | normal | release-2.9 | pjsip |
Description |
Changeset r5828 introduced a bug, which allow the library to send 488 response to a Re-INVITE with no SDP when using pjsua2 API. Currently on_rx_reinvite() will always be set to pjsua_call_on_rx_reinvite() when using pjsua2 API. The callback didn't provide the SDP answer which is expected. If the answer is not set. the library will detect this as an invalid operation and generate the 488 response. This ticket will avoid the check when no SDP is provided and allow the library to generate the offer instead. Thanks to Ryan Wallach for the report. |
|||||
#1900 | Windows 10 / Universal Windows Platform port | bennylp | enhancement | normal | release-2.6 | common |
Description |
Support Windows 10 / Universal Windows Platform and continue the work for Windows Phone 8 support (#1704). Build guide: Building for UWP & WP8 |
|||||
#1704 | Windows Phone WP8 Port | bennylp | enhancement | normal | release-2.x | common |
Description |
Port PJSIP to Windows Phone/WP8 platform. |
|||||
#806 | Windows mobile testing | nanang, ismangil, bennylp | task | normal | release-1.2-QA | common |
#807 | Windows testing | nanang, bennylp | task | normal | release-1.2-QA | common |
#2179 | Wipe out memory used for storing SSL keys before released | nanang | enhancement | normal | release-2.9 | pjlib |
Description |
Zeroing our buffers should be sufficient as we cannot really manage the OpenSSL internal buffers. Moreover, it seems that OpenSSL already does wipe out its internal buffers, i.e: a lot of OpenSSL_cleanse() calls in OpenSSL source code, the function will fill a buffer with garbage or zero. But unfortunately cannot really find official docs about it. Additionally, SSL socket pool content will be zeroed before released, it is done using a new API pj_pool_secure_release(). Thanks Peter Koletzki for the feedback. |
|||||
#1219 | Work on ffmpeg codecs | bennylp | enhancement | normal | release-2.0-dev | applications |