savoirfairelinux issueshttps://git.jami.net/groups/savoirfairelinux/-/issues2021-06-15T15:13:27Zhttps://git.jami.net/savoirfairelinux/jami-libclient/-/issues/455Plugin system: automatic load plugin after installation2021-06-15T15:13:27ZAline Gondim SantosPlugin system: automatic load plugin after installationIteration 27Aline Gondim SantosAline Gondim Santoshttps://git.jami.net/savoirfairelinux/jami-daemon/-/issues/394Plugin System: add "always"preference2021-02-01T19:51:38ZAline Gondim SantosPlugin System: add "always"preferenceAdd a preference that will automatically toggle a plug-in at call/conversation startAdd a preference that will automatically toggle a plug-in at call/conversation startIteration 27Aline Gondim SantosAline Gondim Santoshttps://git.jami.net/savoirfairelinux/jami-daemon/-/issues/393Swarm: replay_conversation. Some block at end + during join2021-01-27T16:04:22ZSébastien BlinSwarm: replay_conversation. Some block at end + during joinIteration 27Sébastien BlinSébastien Blinhttps://git.jami.net/savoirfairelinux/jami-daemon/-/issues/390audio: use Opus PLC and FEC2021-02-03T16:29:41ZAdrien Béraudaudio: use Opus PLC and FECAudio glitches are noticed in case of packet drop. Use Opus PLC and FEC to improve audio qualityAudio glitches are noticed in case of packet drop. Use Opus PLC and FEC to improve audio qualityIteration 27Pierre LespagnolPierre Lespagnol2021-04-01https://git.jami.net/savoirfairelinux/jami-daemon/-/issues/388conference: occasional flicker of black frames / artifacts2021-01-30T01:53:41ZAdrien Béraudconference: occasional flicker of black frames / artifactsIteration 27Pierre LespagnolPierre Lespagnolhttps://git.jami.net/savoirfairelinux/jami-client-android/-/issues/878call: show remote recording indication2021-02-05T23:39:29ZAdrien Béraudcall: show remote recording indicationIteration 27Amirhossein NaghshzanAmirhossein Naghshzanhttps://git.jami.net/savoirfairelinux/jami-client-gnome/-/issues/1240Improve Jami's description in AppStream metadata2021-02-03T03:44:46ZBruno KleinertImprove Jami's description in AppStream metadataHi,
the current AppStream description is weak and does not clearly describe Jami.
[0001-Improve-AppStream-description.patch](/uploads/7962a59ac2c9a35e3419ff4fb9bfe6c1/0001-Improve-AppStream-description.patch) is a patch to improve Jami...Hi,
the current AppStream description is weak and does not clearly describe Jami.
[0001-Improve-AppStream-description.patch](/uploads/7962a59ac2c9a35e3419ff4fb9bfe6c1/0001-Improve-AppStream-description.patch) is a patch to improve Jami's AppStream description to give users a better idea of the package and list Jami's key features.
Cheers,
BrunoIteration 27Amin BandaliAmin Bandalihttps://git.jami.net/savoirfairelinux/jami-client-qt/-/issues/245GNU/Linux: dbus: can connect to a running dbus but cannot start it2021-01-28T22:27:07ZSébastien BlinGNU/Linux: dbus: can connect to a running dbus but cannot start it# Scenario
Daemon installed system wide. Starting the client-qt should start the daemon
# Current result
The daemon is not started# Scenario
Daemon installed system wide. Starting the client-qt should start the daemon
# Current result
The daemon is not startedIteration 27Albert Babí OllerAlbert Babí Ollerhttps://git.jami.net/savoirfairelinux/jami-client-qt/-/issues/230Code smell, packaging: do not include $${LRC}/src2021-02-03T19:09:54ZSébastien BlinCode smell, packaging: do not include $${LRC}/srcIf somebody install libringclient, it will be /usr/include/libringclient/ not /usr/include/libringclient/src so the build will fails. $${LRC} will link to the installed lrc anyway
Same for /build, as it will be /usr/libIf somebody install libringclient, it will be /usr/include/libringclient/ not /usr/include/libringclient/src so the build will fails. $${LRC} will link to the installed lrc anyway
Same for /build, as it will be /usr/libIteration 27Albert Babí OllerAlbert Babí Ollerhttps://git.jami.net/savoirfairelinux/jami-daemon/-/issues/366Crash with H264_VAAPI2021-01-21T14:20:59ZPierre LespagnolCrash with H264_VAAPIThe crash occurs sometimes 30 seconds after the start of the call in the decoding part when H264_VAAPI codec is used.
[bt.log](/uploads/65888eb2ff40cf3d20665befcf72a4b2/bt.log)The crash occurs sometimes 30 seconds after the start of the call in the decoding part when H264_VAAPI codec is used.
[bt.log](/uploads/65888eb2ff40cf3d20665befcf72a4b2/bt.log)Iteration 27Pierre LespagnolPierre Lespagnolhttps://git.jami.net/savoirfairelinux/jami-client-android/-/issues/853Add setting to allow/forbid screenshots or screen recording2021-01-21T16:04:52ZAdrien BéraudAdd setting to allow/forbid screenshots or screen recordingIn general settings, section "privacy".
When forbid, the appropriate Android API should be used to prevent screenshots or screen recordingIn general settings, section "privacy".
When forbid, the appropriate Android API should be used to prevent screenshots or screen recordingIteration 27Amirhossein NaghshzanAmirhossein Naghshzanhttps://git.jami.net/savoirfairelinux/jami-client-android/-/issues/851Add setting to configure message privacy2021-03-08T18:02:24ZAdrien BéraudAdd setting to configure message privacyIn general settings, section "privacy".
Add setting to configure the privacy level of incoming message notifications (if the message content should appear on the lock screen etc.)In general settings, section "privacy".
Add setting to configure the privacy level of incoming message notifications (if the message content should appear on the lock screen etc.)Iteration 27Amirhossein NaghshzanAmirhossein Naghshzanhttps://git.jami.net/savoirfairelinux/jami-client-macos/-/issues/265Add support for setModerator2021-02-04T13:52:27ZSébastien BlinAdd support for setModerator- add option to enable/disable local moderator
- display default moderator list
- add contact picker
- add/remove default moderator- add option to enable/disable local moderator
- display default moderator list
- add contact picker
- add/remove default moderatorIteration 27Pierre LespagnolKateryna KostiukPierre Lespagnolhttps://git.jami.net/savoirfairelinux/jami-daemon/-/issues/342Recording issues2021-02-03T20:42:51ZPierre LespagnolRecording issues* [x] Audio or video cut off too soon #40
* [ ] Client crashes #1218
* [ ] Recording stop after change of input #236
* [ ] Use acceleration for recording #237
* [ ] Jami daemon crash when streaming a recorded file #270* [x] Audio or video cut off too soon #40
* [ ] Client crashes #1218
* [ ] Recording stop after change of input #236
* [ ] Use acceleration for recording #237
* [ ] Jami daemon crash when streaming a recorded file #270Iteration 27Pierre LespagnolPierre Lespagnolhttps://git.jami.net/savoirfairelinux/jami-client-android/-/issues/832Improve picture transfer UI2024-01-26T13:33:39ZAdrien BéraudImprove picture transfer UIReplace texts like "initializing transfer" with nice animationsReplace texts like "initializing transfer" with nice animationsIteration 27https://git.jami.net/savoirfairelinux/jami-client-android/-/issues/810When Jami is "forced stop", sharing any file through Android's menu will wake...2021-03-03T22:09:18ZaevwWhen Jami is "forced stop", sharing any file through Android's menu will wake up the app againHello devs,
Would it be possible to prevent this from happening? Other apps stay frozen and only unfreeze when specifically triggered to do so.
It doesn't matter for what app "share with" is being used, merely using OS's sharing comman...Hello devs,
Would it be possible to prevent this from happening? Other apps stay frozen and only unfreeze when specifically triggered to do so.
It doesn't matter for what app "share with" is being used, merely using OS's sharing command wake Jami up.
ThanksIteration 27Amirhossein NaghshzanAdrien BéraudAmirhossein Naghshzanhttps://git.jami.net/savoirfairelinux/jami-project/-/issues/717Conference: mute not working / video deactivation partially working2021-01-20T19:16:57ZGuillaume HellerConference: mute not working / video deactivation partially working**Audio:**
* Currently, the mute option is not handled during a conference.
* An user (host included) should be able to mute his/her own micro.
**Camera:**
* An user should be able to hide his/her camera during a conference.
* Curre...**Audio:**
* Currently, the mute option is not handled during a conference.
* An user (host included) should be able to mute his/her own micro.
**Camera:**
* An user should be able to hide his/her camera during a conference.
* Currently, the host can not hide his/her camera. It is working fine for other users.Iteration 27Pierre LespagnolPierre Lespagnolhttps://git.jami.net/savoirfairelinux/jami-client-android/-/issues/631android: rotation doesn't work the first time2021-01-28T20:12:38ZSébastien Blinandroid: rotation doesn't work the first timeAndroid call another device. During the first call the rotation doesn't work or after a media restartAndroid call another device. During the first call the rotation doesn't work or after a media restartIteration 27Pierre LespagnolMohamed ChibaniPierre Lespagnolhttps://git.jami.net/savoirfairelinux/jami-daemon/-/issues/384Call: deadlock in SIPCall::SIPSessionReinvite()2021-01-20T15:17:07ZAmirhossein NaghshzanCall: deadlock in SIPCall::SIPSessionReinvite()Just after the peer accepted the call:
```
thread #14, name = 'DRing'
frame #0: 0x00007b569ab2e2a8 libc.so`syscall + 24
frame #1: 0x00007b569ab31f03 libc.so`__futex_wait_ex(void volatile*, bool, int, bool, timespec const*) + ...Just after the peer accepted the call:
```
thread #14, name = 'DRing'
frame #0: 0x00007b569ab2e2a8 libc.so`syscall + 24
frame #1: 0x00007b569ab31f03 libc.so`__futex_wait_ex(void volatile*, bool, int, bool, timespec const*) + 147
frame #2: 0x00007b569ab9cb4d libc.so`NonPI::MutexLockWithTimeout(pthread_mutex_internal_t*, bool, timespec const*) + 541
frame #3: 0x00007b53ade1d6c6 libc++_shared.so`std::__ndk1::recursive_mutex::lock() [inlined] std::__ndk1::__libcpp_recursive_mutex_lock(__m=<unavailable>) at __threading_support:244
frame #4: 0x00007b53ade1d6c1 libc++_shared.so`std::__ndk1::recursive_mutex::lock(this=<unavailable>) at mutex.cpp:71
frame #5: 0x00007b53ae257503 libring.so`std::__ndk1::lock_guard<std::__ndk1::recursive_mutex>::lock_guard(this=0x00007b53b03369b0, __m=0x00007b5518d611b0) at __mutex_base:99
frame #6: 0x00007b53ae626e9a libring.so`jami::SIPCall::~SIPCall(this=0x00007b5518d61100) at sipcall.cpp:112
frame #7: 0x00007b53ae3b6a28 libring.so`std::__ndk1::shared_ptr<jami::SIPCall> jami::CallFactory::newCall<jami::SIPCall, jami::JamiAccount>(this=0x00007b5518d61100)::ConcreteCall::~ConcreteCall() at call_factory.h:89
frame #8: 0x00007b53ae3b63d6 libring.so`std::__ndk1::__shared_ptr_emplace<std::__ndk1::shared_ptr<jami::SIPCall> jami::CallFactory::newCall<jami::SIPCall, jami::JamiAccount>(std::__ndk1::shared_ptr<jami::JamiAccount>, std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> > const&, jami::Call::CallType, std::__ndk1::map<std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> >, std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> >, std::__ndk1::less<std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> > >, std::__ndk1::allocator<std::__ndk1::pair<std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> > const, std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> > > > > const&)::ConcreteCall, std::__ndk1::allocator<std::__ndk1::shared_ptr<jami::SIPCall> jami::CallFactory::newCall<jami::SIPCall, jami::JamiAccount>(std::__ndk1::shared_ptr<jami::JamiAccount>, std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> > const&, jami::Call::CallType, std::__ndk1::map<std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> >, std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> >, std::__ndk1::less<std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> > >, std::__ndk1::allocator<std::__ndk1::pair<std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> > const, std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> > > > > const&)::ConcreteCall> >::__on_zero_shared(this=0x00007b5518d610e0) at memory:3581
frame #9: 0x00007b53ae246fdd libring.so`std::__ndk1::__shared_count::__release_shared(this=0x00007b5518d610e0) at memory:3415
frame #10: 0x00007b53ae246f7f libring.so`std::__ndk1::__shared_weak_count::__release_shared(this=0x00007b5518d610e0) at memory:3457
frame #11: 0x00007b53ae263f1c libring.so`std::__ndk1::shared_ptr<jami::SIPCall>::~shared_ptr(this=0x00007b5458d4b208) at memory:4393
frame #12: 0x00007b53ae2e5dc6 libring.so`jami::JamiAccount::onConnectedOutgoingCall(this=0x00007b5458d4b1d8)::$_9::~$_9() at jamiaccount.cpp:664
frame #13: 0x00007b53ae30a855 libring.so`std::__ndk1::__compressed_pair_elem<jami::JamiAccount::onConnectedOutgoingCall(std::__ndk1::shared_ptr<jami::SIPCall> const&, std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> > const&, jami::IpAddr)::$_9, 0, false>::~__compressed_pair_elem(this=0x00007b5458d4b1d8) at memory:2133
frame #14: 0x00007b53ae30a938 libring.so`std::__ndk1::__compressed_pair<jami::JamiAccount::onConnectedOutgoingCall(std::__ndk1::shared_ptr<jami::SIPCall> const&, std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> > const&, jami::IpAddr)::$_9, std::__ndk1::allocator<jami::JamiAccount::onConnectedOutgoingCall(std::__ndk1::shared_ptr<jami::SIPCall> const&, std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> > const&, jami::IpAddr)::$_9> >::~__compressed_pair(this=0x00007b5458d4b1d8) at memory:2210
frame #15: 0x00007b53ae30b255 libring.so`std::__ndk1::__function::__alloc_func<jami::JamiAccount::onConnectedOutgoingCall(std::__ndk1::shared_ptr<jami::SIPCall> const&, std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> > const&, jami::IpAddr)::$_9, std::__ndk1::allocator<jami::JamiAccount::onConnectedOutgoingCall(std::__ndk1::shared_ptr<jami::SIPCall> const&, std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> > const&, jami::IpAddr)::$_9>, void (bool)>::destroy(this=0x00007b5458d4b1d8) at functional:1559
frame #16: 0x00007b53ae30a45b libring.so`std::__ndk1::__function::__func<jami::JamiAccount::onConnectedOutgoingCall(std::__ndk1::shared_ptr<jami::SIPCall> const&, std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> > const&, jami::IpAddr)::$_9, std::__ndk1::allocator<jami::JamiAccount::onConnectedOutgoingCall(std::__ndk1::shared_ptr<jami::SIPCall> const&, std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> > const&, jami::IpAddr)::$_9>, void (bool)>::destroy_deallocate(this=0x00007b5458d4b1d0) at functional:1706
frame #17: 0x00007b53ae25630a libring.so`std::__ndk1::__function::__value_func<void (bool)>::~__value_func(this=0x00007b5458d4ce70) at functional:1828
frame #18: 0x00007b53ae253e25 libring.so`std::__ndk1::function<void (bool)>::~function(this=0x00007b5458d4ce70) at functional:2460
frame #19: 0x00007b53ae6305f6 libring.so`jami::SIPCall::initIceMediaTransport(this=0x00007b5458d4ce60)::$_20::~$_20() at sipcall.cpp:1644
frame #20: 0x00007b53ae652285 libring.so`std::__ndk1::__compressed_pair_elem<jami::SIPCall::initIceMediaTransport(bool, std::__ndk1::optional<jami::IceTransportOptions>, unsigned int)::$_20, 0, false>::~__compressed_pair_elem(this=0x00007b5458d4ce60) at memory:2133
frame #21: 0x00007b53ae652368 libring.so`std::__ndk1::__compressed_pair<jami::SIPCall::initIceMediaTransport(bool, std::__ndk1::optional<jami::IceTransportOptions>, unsigned int)::$_20, std::__ndk1::allocator<jami::SIPCall::initIceMediaTransport(bool, std::__ndk1::optional<jami::IceTransportOptions>, unsigned int)::$_20> >::~__compressed_pair(this=0x00007b5458d4ce60) at memory:2210
frame #22: 0x00007b53ae652c85 libring.so`std::__ndk1::__function::__alloc_func<jami::SIPCall::initIceMediaTransport(bool, std::__ndk1::optional<jami::IceTransportOptions>, unsigned int)::$_20, std::__ndk1::allocator<jami::SIPCall::initIceMediaTransport(bool, std::__ndk1::optional<jami::IceTransportOptions>, unsigned int)::$_20>, void (bool)>::destroy(this=0x00007b5458d4ce60) at functional:1559
frame #23: 0x00007b53ae651e8b libring.so`std::__ndk1::__function::__func<jami::SIPCall::initIceMediaTransport(bool, std::__ndk1::optional<jami::IceTransportOptions>, unsigned int)::$_20, std::__ndk1::allocator<jami::SIPCall::initIceMediaTransport(bool, std::__ndk1::optional<jami::IceTransportOptions>, unsigned int)::$_20>, void (bool)>::destroy_deallocate(this=0x00007b5458d4ce50) at functional:1706
frame #24: 0x00007b53ae25630a libring.so`std::__ndk1::__function::__value_func<void (bool)>::~__value_func(this=0x00007b5598d491b0) at functional:1828
frame #25: 0x00007b53ae253e25 libring.so`std::__ndk1::function<void (bool)>::~function(this=0x00007b5598d491b0) at functional:2460
frame #26: 0x00007b53ae58b7fd libring.so`jami::IceTransport::Impl::~Impl(this=0x00007b5598d49170) at ice_transport.cpp:465
frame #27: 0x00007b53ae5a443b libring.so`std::__ndk1::default_delete<jami::IceTransport::Impl>::operator(this=0x00007b5418d5b8b0, __ptr=0x00007b5598d49170)(jami::IceTransport::Impl*) const at memory:2338
frame #28: 0x00007b53ae5a43bf libring.so`std::__ndk1::unique_ptr<jami::IceTransport::Impl, std::__ndk1::default_delete<jami::IceTransport::Impl> >::reset(this=0x00007b5418d5b8b0, __p=0x0000000000000000) at memory:2593
frame #29: 0x00007b53ae597ed9 libring.so`std::__ndk1::unique_ptr<jami::IceTransport::Impl, std::__ndk1::default_delete<jami::IceTransport::Impl> >::~unique_ptr(this=0x00007b5418d5b8b0) at memory:2547
frame #30: 0x00007b53ae58de75 libring.so`jami::IceTransport::~IceTransport(this=0x00007b5418d5b8b0) at ice_transport.cpp:981
frame #31: 0x00007b53ae66164b libring.so`std::__ndk1::default_delete<jami::IceTransport>::operator(this=0x00007b5518d7b0e0, __ptr=0x00007b5418d5b8b0)(jami::IceTransport*) const at memory:2338
frame #32: 0x00007b53ae658dcf libring.so`std::__ndk1::unique_ptr<jami::IceTransport, std::__ndk1::default_delete<jami::IceTransport> >::reset(this=0x00007b5518d7b0e0, __p=0x00007b5418d61350) at memory:2593
frame #33: 0x00007b53ae65974d libring.so`std::__ndk1::unique_ptr<jami::IceTransport, std::__ndk1::default_delete<jami::IceTransport> >::operator=(this=0x00007b5518d7b0e0, __u=0x00007b53b0336ea0) at memory:2512
frame #34: 0x00007b53ae628d2f libring.so`jami::SIPCall::initIceMediaTransport(this=0x00007b5518d7ad00, master=true, options=optional<jami::IceTransportOptions> @ 0x00007b53b03371b0, channel_num=4) at sipcall.cpp:1680
frame #35: 0x00007b53ae62865e libring.so`jami::SIPCall::SIPSessionReinvite(this=0x00007b5518d7ad00) at sipcall.cpp:315
frame #36: 0x00007b53ae62c40b libring.so`jami::SIPCall::switchInput(this=0x00007b5518d7ad00, resource="camera://1") at sipcall.cpp:869
frame #37: 0x00007b53ae51d9f0 libring.so`jami::Manager::switchInput(this=0x00007b53afe24678, call_id="7987882540241637", res="camera://1") at manager.cpp:2369
frame #38: 0x00007b53ae244e75 libring.so`DRing::switchInput(callID="7987882540241637", resource="camera://1") at callmanager.cpp:332
frame #39: 0x00007b53ae20b814 libring.so`::Java_cx_ring_daemon_RingserviceJNI_switchInput_1_1SWIG_10(jenv=0x00007b54c8d40530, jcls=<unavailable>, jarg1=<unavailable>, jarg2=0x00007b53b0337444) at ring_wrapper.cpp:8173
frame #40: 0x00007b5408689ec8 libart.so`art_quick_generic_jni_trampoline + 216
frame #41: 0x00007b540868a350 libart.so
```Iteration 26Sébastien BlinSébastien Blinhttps://git.jami.net/savoirfairelinux/jami-client-qt/-/issues/157Allow conference moderators to mute or kick participants2021-01-16T13:50:34ZAdrien BéraudAllow conference moderators to mute or kick participantsIteration 26Pierre LespagnolPierre Lespagnol