jami-daemon issueshttps://git.jami.net/savoirfairelinux/jami-daemon/-/issues2023-11-20T14:09:49Zhttps://git.jami.net/savoirfairelinux/jami-daemon/-/issues/883complete C ABI for plugins (then Python/JS)2023-11-20T14:09:49ZLéo Banno-Cloutiercomplete C ABI for plugins (then Python/JS)I tried writing a Jami plugin in Rust, and so far, the plugin starts as expected, however I have a hard time invoking services such as `getPluginPreferences` and `getPluginAccPreferences`.
`invokeService` takes `(const JAMI_PluginAPI* a...I tried writing a Jami plugin in Rust, and so far, the plugin starts as expected, however I have a hard time invoking services such as `getPluginPreferences` and `getPluginAccPreferences`.
`invokeService` takes `(const JAMI_PluginAPI* api, const char* name, void* data)` as parameters, and the `void *` data variable gets casted to c++ types, such as `std::string` and `std::map`, which makes the ABI not completely C compatible. I was able to make `getPluginDataPath` work by changing `static_cast<std::string>` to `static_cast<char*>`, and I'll see how far I can go without too much hassle.Léo Banno-CloutierLéo Banno-Cloutierhttps://git.jami.net/savoirfairelinux/jami-daemon/-/issues/798Swarm: add API to promote someone to an administrator2023-04-13T20:11:10ZSébastien BlinSwarm: add API to promote someone to an administrator# Goal
Because an administrator can leave, the swarm will have no administrator at the end. Make it possible for an administrator to promote someone else.
# TODO
+ Implement promotion/demotion (NOTE: no demotion if 1 admin) in the dae...# Goal
Because an administrator can leave, the swarm will have no administrator at the end. Make it possible for an administrator to promote someone else.
# TODO
+ Implement promotion/demotion (NOTE: no demotion if 1 admin) in the daemon
+ Validate an API
+ Add feature in clients
+ Check demotion2023-09-30https://git.jami.net/savoirfairelinux/jami-daemon/-/issues/797Swarm: add support for multiple roles2023-11-20T14:38:31ZSébastien BlinSwarm: add support for multiple roles# Goal
In a swarm, pretty every action should be an action that needs to be permitted for a role and administrators should be able to add new roles.
# TODO
analyze what needs to change in the daemon# Goal
In a swarm, pretty every action should be an action that needs to be permitted for a role and administrators should be able to add new roles.
# TODO
analyze what needs to change in the daemon2023-12-31https://git.jami.net/savoirfairelinux/jami-daemon/-/issues/694ffmpeg: add G711, G729 codecs (SIP)2022-07-06T00:18:18Zovariffmpeg: add G711, G729 codecs (SIP)Please add the following codecs to Jami:
* [G.711a](https://en.wikipedia.org/wiki/G.711)
* [G.711u](https://en.wikipedia.org/wiki/G.711)
* [G.729a](https://en.wikipedia.org/wiki/G.729)
What do you think?
Thank you
> MyNetFone uses th...Please add the following codecs to Jami:
* [G.711a](https://en.wikipedia.org/wiki/G.711)
* [G.711u](https://en.wikipedia.org/wiki/G.711)
* [G.729a](https://en.wikipedia.org/wiki/G.729)
What do you think?
Thank you
> MyNetFone uses the **G.711a** codec, it is the standard codec used in Australia and Europe. The **G.711u** codec is used within the US, and may be present in PBXs or UC platforms from US vendors. The **G.729a** codec is often used for conference calling services.<br>
> https://www.mynetfone.com.au/support/faq/question/477
> The patents for G.711, released in 1972, have expired, so it may be used without the need for a licence
> https://en.wikipedia.org/wiki/G.711#Licensing
> As of January 1, 2017, the patent terms of most licensed patents under the G.729 Consortium have expired, the remaining unexpired patents are usable on a royalty-free basis.<br>
> https://en.wikipedia.org/wiki/G.729.1
https://git.jami.net/savoirfairelinux/ring-daemon/issues/200Backloghttps://git.jami.net/savoirfairelinux/jami-daemon/-/issues/953Call Swarm: full pass2024-03-28T00:05:08ZSébastien BlinCall Swarm: full pass# TODO
+ Check performance
+ Check call ending announcement
+ Check support on all platforms
+ Fallback
+ ask for hosts
+ audio binding
+ test with 8 devices
+ Performance# TODO
+ Check performance
+ Check call ending announcement
+ Check support on all platforms
+ Fallback
+ ask for hosts
+ audio binding
+ test with 8 devices
+ PerformanceSébastien BlinSébastien Blinhttps://git.jami.net/savoirfairelinux/jami-daemon/-/issues/874Unit test - mock camera to allow to use video in unit tests2023-07-17T12:11:22ZSébastien BlinUnit test - mock camera to allow to use video in unit testsFor now we don't check the video from the unit tests as there is generally no camera on the build machinesFor now we don't check the video from the unit tests as there is generally no camera on the build machineshttps://git.jami.net/savoirfairelinux/jami-daemon/-/issues/829Homogeneize features in video-conferences and 1:1 calls2024-03-04T18:51:02ZovariHomogeneize features in video-conferences and 1:1 calls(sblin):
+ Add voice-activity, multi-stream, raiseHand and other features for video-conferences in 1:1 calls
---
Original post:
Leon: Linux Mint 20.3 Cinnamon jami-client-qt deb edition from jami.net<br>
Pat: iPad jami 3.28 from app...(sblin):
+ Add voice-activity, multi-stream, raiseHand and other features for video-conferences in 1:1 calls
---
Original post:
Leon: Linux Mint 20.3 Cinnamon jami-client-qt deb edition from jami.net<br>
Pat: iPad jami 3.28 from apple store<br>
Merv: macOS jami 2.10 from apple store
Leon, Pat and Merv all delete each other and afterwards add each other as a contact. This is to make each conversion a Swarm as advised in [Taranis, a major release of Jami](https://jami.net/taranis-a-major-release-of-jami/).
1. Leon makes an audio call with Pat (no raise/lower hand button)
1. Leon adds Merv to audio call so there is a 3-way audio conversation (still no raise/lower hand button)
1. Enable video and the raise/lower hand button appears for Leon and Pat; however there is no raise/lower hand button for Merv and Merv can not see when Leon or Pat raise their hand.
Thank youSébastien BlinSébastien Blin2024-03-04https://git.jami.net/savoirfairelinux/jami-daemon/-/issues/795Call in large groups - multi-host?2023-01-07T14:02:03ZSébastien BlinCall in large groups - multi-host?If we remove the limit for swarm, creating a call may have issue for the hosts as they will be able to receive and host thousands of calls.If we remove the limit for swarm, creating a call may have issue for the hosts as they will be able to receive and host thousands of calls.2023-12-31https://git.jami.net/savoirfairelinux/jami-daemon/-/issues/794[Design needed]Public swarm discovery2023-11-30T04:15:58ZSébastien Blin[Design needed]Public swarm discovery+ Some ideas https://www.rfc-editor.org/rfc/rfc7033
+ Announce public known conversations to contact
+ Change nameserver to get public invite+ Some ideas https://www.rfc-editor.org/rfc/rfc7033
+ Announce public known conversations to contact
+ Change nameserver to get public invite2023-12-31https://git.jami.net/savoirfairelinux/jami-daemon/-/issues/752Windows: offer full fps range for video camera2022-12-23T20:29:35ZSébastien BlinWindows: offer full fps range for video cameraEg from https://git.jami.net/savoirfairelinux/jami-client-qt/-/issues/747
```
$ ffmpeg -f dshow -list_options true -i video="ManyCam Virtual Webcam"
[dshow @ 000001F46BD265C0] DirectShow video device options (from video devices)
[dsho...Eg from https://git.jami.net/savoirfairelinux/jami-client-qt/-/issues/747
```
$ ffmpeg -f dshow -list_options true -i video="ManyCam Virtual Webcam"
[dshow @ 000001F46BD265C0] DirectShow video device options (from video devices)
[dshow @ 000001F46BD265C0] Pin "Capture" (alternative pin name "0")
[dshow @ 000001F46BD265C0] pixel_format=yuyv422 min s=1920x1080 fps=0.015625 max s=1920x1080 fps=60.0002
[dshow @ 000001F46BD265C0] pixel_format=yuyv422 min s=1600x1200 fps=0.015625 max s=1600x1200 fps=60.0002
```
Jami only displays 60fps (max fps). However with some modification we can offer the range 1,5,10,15...60
I think it's not important as anyway the virtual camera will probably be encoded to 60fps by the original app anyway, and codec will already do optimize, so the data reduction will be minor.https://git.jami.net/savoirfairelinux/jami-daemon/-/issues/649test/meson.build is outdated2022-03-29T12:28:37ZBruno Paganitest/meson.build is outdatedSince I’ve discovered you now provide meson for building, I’m switching Arch packages to it but I’ve encountered an issue:
```
jami-daemon/test/meson.build:59:0: ERROR: File unitTest/channel/testChannel.cpp does not exist.
```
The file s...Since I’ve discovered you now provide meson for building, I’m switching Arch packages to it but I’ve encountered an issue:
```
jami-daemon/test/meson.build:59:0: ERROR: File unitTest/channel/testChannel.cpp does not exist.
```
The file seems to be gone a while ago, but `test/meson.build` wasn’t updated accordingly. For now, I will just keep tests disabled (they were already, but I thought redoing the package would be a good opportunity to enable them).https://git.jami.net/savoirfairelinux/jami-daemon/-/issues/620MediaDemuxer: can lock on disconnect2023-04-17T14:09:50ZSébastien BlinMediaDemuxer: can lock on disconnect# Scenario
+ Plug a camera
+ Show it in media settings
+ Unplug
# Expected scenario
+ The UI should not freeze
# Current result
sometimes, the UI is freezing, blocking on destroying the video input.
# Backtrace
```
Thread 1 (Threa...# Scenario
+ Plug a camera
+ Show it in media settings
+ Unplug
# Expected scenario
+ The UI should not freeze
# Current result
sometimes, the UI is freezing, blocking on destroying the video input.
# Backtrace
```
Thread 1 (Thread 0x7fffe2a99d40 (LWP 2929030) "jami-qt"):
#0 0x00007fffeda179d7 in __pthread_clockjoin_ex () at /lib64/libpthread.so.0
#1 0x00007fffedffd687 in std::thread::join() () at /lib64/libstdc++.so.6
#2 0x00007fffec773cbb in jami::video::VideoInput::~VideoInput() () at /home/amarok/Projects/jami/daemon/src/.libs/libring.so.0
#3 0x00007fffec4cae2a in DRing::stopCamera() () at /home/amarok/Projects/jami/daemon/src/.libs/libring.so.0
#4 0x00007ffff7d17752 in VideoManagerInterface::stopCamera() (this=<optimized out>) at /home/amarok/Projects/jami/lrc/src/qtwrapper/videomanager_wrap.h:184
#5 0x00007ffff7d1cad0 in lrc::api::AVModel::setDeviceSettings(lrc::api::video::Settings&) (this=0x1496890, settings=...) at /home/amarok/Projects/jami/lrc/src/avmodel.cpp:293
#6 0x000000000049d42d in SettingsAdapter::set_Video_Settings_Rate_And_Resolution(QString const&, double, QString const&) (this=0xffb380, deviceId=..., rate=30, resolution=...) at /home/amarok/Projects/jami/client-qt/src/settingsadapter.cpp:193
#7 0x0000000000434c41 in SettingsAdapter::qt_static_metacall(QObject*, QMetaObject::Call, int, void**) (_o=_o@entry=0xffb380, _c=_c@entry=QMetaObject::InvokeMetaMethod, _id=_id@entry=17, _a=_a@entry=0x7fffffff2710) at /home/amarok/Projects/jami/client-qt/build-local/jami-qt_autogen/UVLADIE3JM/moc_settingsadapter.cpp:708
#8 0x00000000004385ee in SettingsAdapter::qt_metacall(QMetaObject::Call, int, void**) (this=0xffb380, _c=QMetaObject::InvokeMetaMethod, _id=17, _a=0x7fffffff2710) at /home/amarok/Projects/jami/client-qt/build-local/jami-qt_autogen/UVLADIE3JM/moc_settingsadapter.cpp:969
#9 0x00007fffeeb08cf5 in QQmlObjectOrGadget::metacall(QMetaObject::Call, int, void**) const () at /lib64/libQt5Qml.so.5
#10 0x00007fffeea11149 in CallPrecise(QQmlObjectOrGadget const&, QQmlPropertyData const&, QV4::ExecutionEngine*, QV4::CallData*, QMetaObject::Call) () at /lib64/libQt5Qml.so.5
#11 0x00007fffeea123f7 in QV4::QObjectMethod::callInternal(QV4::Value const*, QV4::Value const*, int) const () at /lib64/libQt5Qml.so.5
#12 0x00007fffeea38cce in QV4::Runtime::CallPropertyLookup::call(QV4::ExecutionEngine*, QV4::Value const&, unsigned int, QV4::Value*, int) () at /lib64/libQt5Qml.so.5
#13 0x00007fff4014bb4e in ()
#14 0x00007fffffff2d40 in ()
#15 0x0000000000000010 in ()
#16 0x00007fff4014b000 in ()
#17 0x00007fff4014bb8b in ()
#18 0x000000000088d800 in ()
#19 0x00007fffeea2ceba in QV4::Moth::VME::exec(QV4::CppStackFrame*, QV4::ExecutionEngine*) [clone .part.0] () at /lib64/libQt5Qml.so.5
#20 0x00007fffee9d7d48 in QV4::ArrowFunction::virtualCall(QV4::FunctionObject const*, QV4::Value const*, QV4::Value const*, int) () at /lib64/libQt5Qml.so.5
#21 0x00007fffeea3cc46 in QV4::Runtime::CallQmlContextPropertyLookup::call(QV4::ExecutionEngine*, unsigned int, QV4::Value*, int) () at /lib64/libQt5Qml.so.5
#22 0x00007fff40148084 in ()
#23 0x00007fffffff3010 in ()
#24 0x0000000000000000 in ()
Thread 224 (Thread 0x7ffcceffd640 (LWP 2929321) "jami-qt"):
#0 0x00007fffedcf35db in ioctl () at /lib64/libc.so.6
#1 0x00007fffec9c4759 in mmap_read_frame (pkt=0x7ffc6401f2c0, ctx=0x7ffc64002200) at libavdevice/v4l2.c:505
#2 v4l2_read_packet (ctx=0x7ffc64002200, pkt=0x7ffc6401f2c0) at libavdevice/v4l2.c:992
#3 0x00007fffeca222c2 in ff_read_packet (s=s@entry=0x7ffc64002200, pkt=pkt@entry=0x7ffc6401f2c0) at libavformat/utils.c:843
#4 0x00007fffeca22c3b in read_frame_internal (s=s@entry=0x7ffc64002200, pkt=0x7ffc6401f2c0) at libavformat/utils.c:1546
#5 0x00007fffeca23938 in av_read_frame (s=0x7ffc64002200, pkt=0x7ffc6401f2c0) at libavformat/utils.c:1750
#6 0x00007fffec413fa7 in jami::MediaDemuxer::decode() () at /home/amarok/Projects/jami/daemon/src/.libs/libring.so.0
#7 0x00007fffec76f6a9 in jami::video::VideoInput::captureFrame() () at /home/amarok/Projects/jami/daemon/src/.libs/libring.so.0
#8 0x00007fffec774bcb in jami::video::VideoInput::process() () at /home/amarok/Projects/jami/daemon/src/.libs/libring.so.0
#9 0x00007fffec32602d in jami::ThreadLoop::mainloop(std::thread::id&, std::function<bool ()>, std::function<void ()>, std::function<void ()>) () at /home/amarok/Projects/jami/daemon/src/.libs/libring.so.0
#10 0x00007fffec326758 in std::thread::_State_impl<std::thread::_Invoker<std::tuple<void (jami::ThreadLoop::*)(std::thread::id&, std::function<bool ()>, std::function<void ()>, std::function<void ()>), jami::ThreadLoop*, std::reference_wrapper<std::thread::id>, std::function<bool ()>, std::function<void ()>, std::function<void ()> > > >::_M_run() () at /home/amarok/Projects/jami/daemon/src/.libs/libring.so.0
#11 0x00007fffedffd444 in execute_native_thread_routine () at /lib64/libstdc++.so.6
#12 0x00007fffeda163f9 in start_thread () at /lib64/libpthread.so.0
#13 0x00007fffedcfcb53 in clone () at /lib64/libc.so.6
```
av_read_frame can block forever, causing the VideoInput to wait.Sébastien BlinSébastien Blinhttps://git.jami.net/savoirfairelinux/jami-daemon/-/issues/400Use PKCS #11 API for access to cryptographic keys2024-02-15T21:21:00ZVladimir StoiakinUse PKCS #11 API for access to cryptographic keysHi!
It would be nice if Jami can store account's cryptographic keys on devices specially designed for this purpose, like smartcards or tokens.
GnuTLS already have support for [this](https://www.gnutls.org/reference/gnutls-pkcs11.html)....Hi!
It would be nice if Jami can store account's cryptographic keys on devices specially designed for this purpose, like smartcards or tokens.
GnuTLS already have support for [this](https://www.gnutls.org/reference/gnutls-pkcs11.html).
Related to ring-project#719.https://git.jami.net/savoirfairelinux/jami-daemon/-/issues/174Moving from one wifi to another during a call freeze the video2024-01-06T10:28:00ZSébastien BlinMoving from one wifi to another during a call freeze the videoAudio is still working, but not the control channel nor video channel
If possible, the video should come back, be renegotiated or the call closed. (timeout between media packets?)Audio is still working, but not the control channel nor video channel
If possible, the video should come back, be renegotiated or the call closed. (timeout between media packets?)https://git.jami.net/savoirfairelinux/jami-daemon/-/issues/975Link voice setup callback to host (without rtp session)2024-03-25T18:36:16ZSébastien BlinLink voice setup callback to host (without rtp session)https://git.jami.net/savoirfairelinux/jami-daemon/-/issues/974Various asserts and crashes with TURN / PJNATH2024-03-25T18:29:13ZAdrien BéraudVarious asserts and crashes with TURN / PJNATHTypical assertion when PJSIP built with asserts:
```
2024-03-22 14:13:31.793 9191-9191 DEBUG pid-9191 A *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***
2024-03-22 14:13:31.793 9191-9191 D...Typical assertion when PJSIP built with asserts:
```
2024-03-22 14:13:31.793 9191-9191 DEBUG pid-9191 A *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***
2024-03-22 14:13:31.793 9191-9191 DEBUG pid-9191 A Build fingerprint: 'google/cheetah/cheetah:14/AP1A.240305.019.A1/11445699:user/release-keys'
2024-03-22 14:13:31.793 9191-9191 DEBUG pid-9191 A Revision: 'MP1.0'
2024-03-22 14:13:31.793 9191-9191 DEBUG pid-9191 A ABI: 'arm64'
2024-03-22 14:13:31.793 9191-9191 DEBUG pid-9191 A Timestamp: 2024-03-22 14:13:31.550572829-0400
2024-03-22 14:13:31.793 9191-9191 DEBUG pid-9191 A Process uptime: 2s
2024-03-22 14:13:31.793 9191-9191 DEBUG pid-9191 A Cmdline: cx.ring
2024-03-22 14:13:31.793 9191-9191 DEBUG pid-9191 A pid: 8414, tid: 9172, name: Thread-64 >>> cx.ring <<<
2024-03-22 14:13:31.793 9191-9191 DEBUG pid-9191 A uid: 10352
2024-03-22 14:13:31.793 9191-9191 DEBUG pid-9191 A tagged_addr_ctrl: 0000000000000001 (PR_TAGGED_ADDR_ENABLE)
2024-03-22 14:13:31.793 9191-9191 DEBUG pid-9191 A signal 6 (SIGABRT), code -1 (SI_QUEUE), fault addr --------
2024-03-22 14:13:31.793 9191-9191 DEBUG pid-9191 A Abort message: '../src/pjnath/turn_session.c:740: pj_status_t pj_turn_session_alloc(pj_turn_session *, const pj_turn_alloc_param *): assertion "sess->state>PJ_TURN_STATE_NULL && sess->state<=PJ_TURN_STATE_RESOLVED" failed'
2024-03-22 14:13:31.793 9191-9191 DEBUG pid-9191 A x0 0000000000000000 x1 00000000000023d4 x2 0000000000000006 x3 000000795e531320
2024-03-22 14:13:31.793 9191-9191 DEBUG pid-9191 A x4 2f333639622d6d6e x5 2f333639622d6d6e x6 2f333639622d6d6e x7 7f7f7f7f7f7f7f7f
2024-03-22 14:13:31.793 9191-9191 DEBUG pid-9191 A x8 00000000000000f0 x9 0000007d40c87200 x10 0000000000000001 x11 0000007d40cd1ba0
2024-03-22 14:13:31.793 9191-9191 DEBUG pid-9191 A x12 0000007d5ac86020 x13 000000007fffffff x14 00000000009ffbec x15 00000247cba606d0
2024-03-22 14:13:31.793 9191-9191 DEBUG pid-9191 A x16 0000007d40d3cfc8 x17 0000007d40d1a160 x18 000000795b0d8000 x19 00000000000020de
2024-03-22 14:13:31.793 9191-9191 DEBUG pid-9191 A x20 00000000000023d4 x21 00000000ffffffff x22 0000000000002374 x23 00000000000020de
2024-03-22 14:13:31.793 9191-9191 DEBUG pid-9191 A x24 000000795e5318b0 x25 000000795e5318b0 x26 000000795e531bf0 x27 00000000000fc000
2024-03-22 14:13:31.793 9191-9191 DEBUG pid-9191 A x28 00000000000fe000 x29 000000795e5313a0
2024-03-22 14:13:31.793 9191-9191 DEBUG pid-9191 A lr 0000007d40cc2e48 sp 000000795e531300 pc 0000007d40cc2e74 pst 0000000000001000
2024-03-22 14:13:31.793 9191-9191 DEBUG pid-9191 A 11 total frames
2024-03-22 14:13:31.793 9191-9191 DEBUG pid-9191 A backtrace:
2024-03-22 14:13:31.793 9191-9191 DEBUG pid-9191 A #00 pc 000000000005ee74 /apex/com.android.runtime/lib64/bionic/libc.so (abort+164) (BuildId: 33ad5959e2b38fc822cda3c642e16c94)
2024-03-22 14:13:31.793 9191-9191 DEBUG pid-9191 A #01 pc 000000000005f284 /apex/com.android.runtime/lib64/bionic/libc.so (__assert2+36) (BuildId: 33ad5959e2b38fc822cda3c642e16c94)
2024-03-22 14:13:31.793 9191-9191 DEBUG pid-9191 A #02 pc 0000000001922e2c /data/app/~~VtmIPQIw72akn02OjhBU0g==/cx.ring-aDZMbBTi4zOBSAIxpYGD2w==/base.apk!libjami-core-jni.so (offset 0xd64000) (pj_turn_session_alloc+284) (BuildId: f128353698d79bade99658daa4d09034a3aee20e)
2024-03-22 14:13:31.793 9191-9191 DEBUG pid-9191 A #03 pc 000000000192a61c /data/app/~~VtmIPQIw72akn02OjhBU0g==/cx.ring-aDZMbBTi4zOBSAIxpYGD2w==/base.apk!libjami-core-jni.so (offset 0xd64000) (BuildId: f128353698d79bade99658daa4d09034a3aee20e)
2024-03-22 14:13:31.793 9191-9191 DEBUG pid-9191 A #04 pc 000000000192a258 /data/app/~~VtmIPQIw72akn02OjhBU0g==/cx.ring-aDZMbBTi4zOBSAIxpYGD2w==/base.apk!libjami-core-jni.so (offset 0xd64000) (BuildId: f128353698d79bade99658daa4d09034a3aee20e)
2024-03-22 14:13:31.793 9191-9191 DEBUG pid-9191 A #05 pc 000000000194d5f4 /data/app/~~VtmIPQIw72akn02OjhBU0g==/cx.ring-aDZMbBTi4zOBSAIxpYGD2w==/base.apk!libjami-core-jni.so (offset 0xd64000) (BuildId: f128353698d79bade99658daa4d09034a3aee20e)
2024-03-22 14:13:31.793 9191-9191 DEBUG pid-9191 A #06 pc 00000000019414bc /data/app/~~VtmIPQIw72akn02OjhBU0g==/cx.ring-aDZMbBTi4zOBSAIxpYGD2w==/base.apk!libjami-core-jni.so (offset 0xd64000) (ioqueue_dispatch_write_event+416) (BuildId: f128353698d79bade99658daa4d09034a3aee20e)
2024-03-22 14:13:31.793 9191-9191 DEBUG pid-9191 A #07 pc 0000000001945428 /data/app/~~VtmIPQIw72akn02OjhBU0g==/cx.ring-aDZMbBTi4zOBSAIxpYGD2w==/base.apk!libjami-core-jni.so (offset 0xd64000) (pj_ioqueue_poll+1476) (BuildId: f128353698d79bade99658daa4d09034a3aee20e)
2024-03-22 14:13:31.793 9191-9191 DEBUG pid-9191 A #08 pc 0000000001739b98 /data/app/~~VtmIPQIw72akn02OjhBU0g==/cx.ring-aDZMbBTi4zOBSAIxpYGD2w==/base.apk!libjami-core-jni.so (offset 0xd64000) (BuildId: f128353698d79bade99658daa4d09034a3aee20e)
2024-03-22 14:13:31.793 9191-9191 DEBUG pid-9191 A #09 pc 00000000000ca7cc /apex/com.android.runtime/lib64/bionic/libc.so (__pthread_start(void*)+204) (BuildId: 33ad5959e2b38fc822cda3c642e16c94)
2024-03-22 14:13:31.793 9191-9191 DEBUG pid-9191 A #10 pc 00000000000607b0 /apex/com.android.runtime/lib64/bionic/libc.so (__start_thread+64) (BuildId: 33ad5959e2b38fc822cda3c642e16c94)
```Sébastien BlinFrançois-Simon Fauteux-ChapleauSébastien Blinhttps://git.jami.net/savoirfairelinux/jami-daemon/-/issues/973Flatpak: Automatic Upgrades: tag versions of jami-daemon which jami-client de...2024-03-22T09:29:01ZovariFlatpak: Automatic Upgrades: tag versions of jami-daemon which jami-client depends on>> It would be great if this Flatpak package would upgrade automatically if a newer upstream version of Jami is released.
> Not possible because of how jami-client depends on specific untagged versions of jami-daemon.
https://github.co...>> It would be great if this Flatpak package would upgrade automatically if a newer upstream version of Jami is released.
> Not possible because of how jami-client depends on specific untagged versions of jami-daemon.
https://github.com/flathub/net.jami.Jami/issues/86https://git.jami.net/savoirfairelinux/jami-daemon/-/issues/972Modified contact profile synchronization2024-03-19T13:01:46ZPierre NicolasModified contact profile synchronizationhttps://git.jami.net/savoirfairelinux/jami-client-android/-/issues/1402#note_48719
> The display name and the profile picture, which I have assigned to my contact myself, have not been synchronised.https://git.jami.net/savoirfairelinux/jami-client-android/-/issues/1402#note_48719
> The display name and the profile picture, which I have assigned to my contact myself, have not been synchronised.https://git.jami.net/savoirfairelinux/jami-daemon/-/issues/970Video camera stream is black when hardware acceleration is enabled2024-03-08T13:26:13ZPaul Le Guen de KerneizonVideo camera stream is black when hardware acceleration is enabled## How to report a bug
## One bug = one bug report
If you have multiple issues, please file separate bug reports. It will be much easier to track bugs that way.
## Avoid duplicates
Search for similar problem - update existing issue i...## How to report a bug
## One bug = one bug report
If you have multiple issues, please file separate bug reports. It will be much easier to track bugs that way.
## Avoid duplicates
Search for similar problem - update existing issue instead of creating new one.
## Bug report form
## Describe your environment
Please specify the following:
- OS: Ubuntu 22.04.4 LTS
- Jami version: 202402141827
- What build you are using: jami.net
## Steps to reproduce
1. Enable hardware acceleration in parameters with 960x540 resolution
2. Start a video call
- Actual result: My video camera stream is black on the Jami screen of other contacts in the meeting. However, I can see myself on my Jami screen. Must disable hardware acceleration to solve the problem or change the video resolution to 1280x720
- Expected result: Other people can see my camera video stream instead of a black screen.
## Additional information
- With Jami enable with `--debug`, this log appeared:
```
[1709890977.592|52761|accel.cpp :298 ] Failed to push frame to GPU: Invalid argument
[1709890977.593|52761|media_encoder.cpp :438 ] Fail to get frame
[1709890977.593|52761|video_sender.cpp :87 ] encoding failed
```
- The issue appears whatever camera I use
- My laptop is a Lenovo P14S with AMD GPU and same hardware
- We achieve to reproduce the same bug with Fedora 39
On contact side:
![Screenshot_from_2024-03-08_11-29-49](/uploads/f93d51095c449899708f64255c9f4850/Screenshot_from_2024-03-08_11-29-49.png)
On my side:
![Screenshot_from_2024-03-08_11-29-48](/uploads/f5672232032c2ce2a9671ebf44825c2e/Screenshot_from_2024-03-08_11-29-48.png)
For retrieving logs, cf [this page](https://git.jami.net/savoirfairelinux/ring-project/wikis/tutorials/Bug-report-guide#logs).https://git.jami.net/savoirfairelinux/jami-daemon/-/issues/966Merge bind and attach methods2024-02-28T15:12:19ZSébastien BlinMerge bind and attach methods