#livekit — Public Fediverse posts
Live and recent posts from across the Fediverse tagged #livekit, aggregated by home.social.
-
Run your own Synapse server including Element Call and Element Web
https://blog.sengotta.net/run-your-own-synapse-server-including-element-call-and-element-web/Once again, this is mainly a post for myself, so that I do not forget everything the next time I have to set up a Matrix server. This time it is about Synapse, the reference server for the Matrix protocol.
If you have found this page, you probably already know what Synapse and the Matrix protocol are. Besides normal textchat, it can also handle voice and video calls and many other things. The Matrix protocol is very powerful. Unfortunately, this also makes it very complicated. As a result, there are still not many serious alternatives to Synapse or the Element clients if you want to use the full feature set.
So why am I spending time on this? In everyday life I mainly use Signal. In my opinion it is an excellent service, although some people will probably disagree immediately. However, it is a centralised service, it depends on a mobile phone number, it is within Donald Trump’s jurisdiction, and if the planned chat control ever becomes reality, Signal has already said that they might leave the European market.
For me, my own Synapse server is therefore a kind of emergency plan for communication. It is also very useful for smart home notifications, privacy-related applications and similar things. Matrix is designed to be decentralised, so it is a bit unfortunate that so many users have made matrix.org their permanent home.
Setting up a Synapse server, including the backend for Element Call, is unfortunately not straightforward. That is why I decided to collect everything in one place. This is not a step-by-step tutorial explaining every single line. At some point you still have to think for yourself. The guide is also based on my own setup, namely Docker with a native nginx reverse proxy. Your setup may be different, but perhaps this can still serve as a useful reference. I had to collect the required information from many different sources myself. Therefore, I will include all relevant configuration files so that you can compare them with your own.
Originally I wanted to upload the files to Codeberg, but apparently the service is currently having some problems.
At the end, you should have a working Synapse server including Element Web and Element Call.
Requirements:
- Internet facing Linux server with docker, docker compose and nginx. If you use a firewall dont forget to confgigure it correctly
- Two Domains i use matrix.example.eu and matrixrtc.example.eu, you have to replace them on any accurance
- TLS Certs for both domains
Folder structure
The first step is to create a suitable folder structure. In my case, every container together with its configuration files has its own directory below /opt. For my Matrix server it looks like this.
opt └── matrix ├── elementweb ├── livekit ├── postgres ├── synapse └── docker-compose.yamlYou do not need to create the docker-compose.yaml file yet.
Generate homeserver.yaml
Once the directory structure is ready, let Synapse generate the initial homeserver.yaml together with all required keys and secrets. You can do this with the following command. Afterwards you will find the generated homeserver.yaml inside the synapse directory. If your directory layout is different, simply adjust the command accordingly.
docker run -it --rm \ -v /opt/matrix/synapse:/data \ -e SYNAPSE_SERVER_NAME=matrix.example.eu \ -e SYNAPSE_REPORT_STATS=no \ matrixdotorg/synapse:latest generateEditing homeserver.yaml
Now open the generated homeserver.yaml and apply the changes shown in my example. Please do not simply copy and paste everything, otherwise your own keys and secrets will be overwritten. Go through the file line by line. If you are unsure about a setting, have a look at the Synapse documentation. As already mentioned, you still have to think for yourself from time to time. Also make sure to choose a proper password for the PostgreSQL database. You will need exactly the same password later in your Docker Compose configuration.
# Configuration file for Synapse. # # This is a YAML file: see [1] for a quick introduction. Note in particular # that *indentation is important*: all the elements of a list or dictionary # should have the same indentation. # # [1] https://docs.ansible.com/ansible/latest/reference_appendices/YAMLSyntax.html # # For more information on how to configure Synapse, including a complete accounting of # each option, go to docs/usage/configuration/config_documentation.md or # https://element-hq.github.io/synapse/latest/usage/configuration/config_documentation.html server_name: "matrix.example.eu" pid_file: /data/homeserver.pid listeners: - port: 8008 resources: - compress: false names: - client - federation tls: false type: http x_forwarded: true database: name: psycopg2 args: user: synapse password: mySuperSecretPassword database: synapse host: db port: 5432 cp_min: 5 cp_max: 10 log_config: "/data/matrix.example.eu.log.config" media_store_path: /data/media_store max_upload_size: 50M enable_registration: false enable_registration_without_verification: false registration_shared_secret: "AutoGenerated" # Retention policy retention: enabled: true default_policy: min_lifetime: 1d max_lifetime: 365d url_preview_enabled: true url_preview_ip_range_blacklist: - '127.0.0.0/8' - '10.0.0.0/8' - '172.16.0.0/12' - '192.168.0.0/16' report_stats: false macaroon_secret_key: "AutoGenerated" form_secret: "AutoGenerated" signing_key_path: "/data/matrix.example.eu.signing.key" trusted_key_servers: - server_name: "matrix.org" experimental_features: # MSC3266: Room summary API. Used for knocking over federation msc3266_enabled: true # MSC4222: needed for syncv2 state_after. This allows clients to # correctly track the state of the room. msc4222_enabled: true # MSC4140: Delayed events are required for proper call participation signalling. If disabled it is very likely that you end up with stuck calls in Matrix rooms msc4140_enabled: true # The maximum allowed duration by which sent events can be delayed, as # per MSC4140. max_event_delay_duration: 24h rc_message: # This needs to match at least e2ee key sharing frequency plus a bit of headroom # Note key sharing events are bursty per_second: 0.5 burst_count: 30 # This needs to match at least the heart-beat frequency plus a bit of headroom # Currently the heart-beat is every 5 seconds which translates into a rate of 0.2s rc_delayed_event_mgmt: per_second: 1 burst_count: 20Edit docker-compose.yaml
Next, create the docker-compose.yaml file. The file is already commented, so it should be reasonably clear which values need to be changed. The most important ones are the database password as well as the key and secret for LiveKit. The comments also explain how to generate these values.
services: synapse: image: matrixdotorg/synapse:latest container_name: synapse restart: unless-stopped volumes: - ./synapse:/data ports: - "127.0.0.1:8008:8008" # Bind to loopback depends_on: - db db: image: postgres:16-alpine container_name: synapse-db restart: unless-stopped environment: POSTGRES_USER: synapse POSTGRES_PASSWORD: CHANGEME #also in synapse/homeserver.yaml POSTGRES_DB: synapse POSTGRES_INITDB_ARGS: "--encoding=UTF-8 --lc-collate=C --lc-ctype=C" volumes: - ./postgres:/var/lib/postgresql/data ports: - "127.0.0.1:5432:5432" auth-service: image: ghcr.io/element-hq/lk-jwt-service:latest container_name: element-call-jwt hostname: auth-server environment: - LIVEKIT_JWT_PORT=8080 - LIVEKIT_URL=https://matrixrtc.example.eu/livekit/sfu #CHANGEME - LIVEKIT_KEY=CHANGEME # use tr -dc 'a-zA-Z0-9' </dev/urandom | head -c 64 to generate key / also change in livekit/config.yaml - LIVEKIT_SECRET=CHANGEME # use tr -dc 'a-zA-Z0-9' </dev/urandom | head -c 64 to generate key / also change in livekit/config.yaml - LIVEKIT_FULL_ACCESS_HOMESERVERS=matrix.example.eu restart: unless-stopped ports: - 127.0.0.1:8070:8080 #Change 8070 to whichever port you want JWT to be available on locally livekit: image: livekit/livekit-server:latest container_name: element-call-livekit command: --config /etc/livekit.yaml ports: - 127.0.0.1:7880:7880/tcp - 7881:7881/tcp - 50100-50200:50100-50200/udp restart: unless-stopped volumes: - ./livekit/config.yaml:/etc/livekit.yaml:ro element-web: image: vectorim/element-web:latest restart: unless-stopped ports: - "127.0.0.1:8009:80" healthcheck: test: ["CMD-SHELL", "wget -q -O /dev/null http://localhost:80/version || exit 1"] start_period: "5s" interval: "15s" timeout: "5s" volumes: - ./element-web/config.json:/app/config.json depends_on: - synapseLivekit configuration
The next file to edit is config.yaml inside the livekit directory. Here you mainly have to adjust the external IP address of your server and insert the LiveKit key and secret you generated before. By the way, I recently came across an interesting article (https://sspaeth.de/2026/04/matrix-voip-and-livekit/) explaining that, in most cases, you will not need a TURN server at all—neither the one built into LiveKit nor a separate CoTURN installation. One less service to maintain is rarely a bad thing.
port: 7880 bind_addresses: - "0.0.0.0" rtc: tcp_port: 7881 port_range_start: 50100 port_range_end: 50200 use_external_ip: true node_ip: Externe IP eures Servers room: auto_create: false logging: level: info turn: enabled: false domain: localhost cert_file: "" key_file: "" tls_port: 5349 udp_port: 443 external_tls: true keys: LIVEKIT_KEY: LIVEKIT_SECRET # Values from your docker compose, mind the space!Element Web configuration
The last configuration file is the JSON configuration for Element Web, assuming you want to use it. Once again, you mainly need to adjust the URLs and a few other values so that they match your own setup.
{ "default_server_config": { "m.homeserver": { "base_url": "https://matrix.example.eu", "server_name": "matrix.example.eu" }, "m.identity_server": { "base_url": "https://vector.im" } }, "disable_custom_urls": false, "disable_guests": false, "disable_login_language_selector": false, "disable_3pid_login": false, "force_verification": false, "brand": "Element", "default_widget_container_height": 280, "default_country_code": "DE", "show_labs_settings": false, "features": { "feature_video_rooms": true, "feature_group_calls": true, "feature_element_call_video_rooms": true, "feature_oidc_native_flow": true }, "default_federate": true, "default_theme": "light", "room_directory": { "servers": ["https://matrix.example.eu"] }, "setting_defaults": { "breadcrumbs": true }, "element_call": { "url": "https://matrixrtc.example.eu" }, "map_style_url": "https://api.maptiler.com/maps/streets/style.json?key=fU3vlMsMn4Jb6dnEIFsx" }Nginx configuration
To make your Synapse server reachable from the Internet and allow federation with other Matrix servers, you also need a suitable reverse proxy. In my case this is nginx. You can use the following configuration as a starting point. Of course, you have to replace the domain names and the paths to your TLS certificates with your own values.
# HTTPS redirect server { listen 80; listen [::]:80; server_name matrix.example.eu; location / { return 301 https://$host$request_uri; } } # Client API server { listen 443 ssl http2; listen [::]:443 ssl http2; server_name matrix.example.eu; ssl_certificate /etc/letsencrypt/live/matrix.example.eu/fullchain.pem; ssl_certificate_key /etc/letsencrypt/live/matrix.example.eu/privkey.pem; ssl_protocols TLSv1.2 TLSv1.3; ssl_ciphers HIGH:!aNULL:!MD5; ssl_prefer_server_ciphers on; client_max_body_size 50M; # Well-known for Client Configuration location /.well-known/matrix/client { return 200 '{"m.homeserver": {"base_url": "https://matrix.example.eu"}, "m.identity_server": {"base_url": "https://vector.im"}, "org.matrix.msc4143.rtc_foci": [{"type": "livekit", "livekit_service_url": "https://matrixrtc.example.eu/livekit/jwt"}]}'; default_type application/json; add_header Access-Control-Allow-Origin *; add_header Access-Control-Allow-Methods 'GET, OPTIONS'; } # Well-known for federation location /.well-known/matrix/server { return 200 '{"m.server":"matrix.example.eu:8448"}'; default_type application/json; } location / { proxy_pass http://localhost:8009; proxy_set_header X-Forwarded-For $remote_addr; } # Forward to dockerized Synapse location ~* ^(\/_matrix|\/_synapse\/client) { proxy_pass http://localhost:8008; proxy_set_header X-Forwarded-For $remote_addr; proxy_set_header X-Forwarded-Proto $scheme; proxy_set_header Host $host; proxy_http_version 1.1; proxy_read_timeout 600; proxy_connect_timeout 600; proxy_send_timeout 600; } } # Federation Port 8448 server { listen 8448 ssl http2; listen [::]:8448 ssl http2; server_name matrix.example.eu; ssl_certificate /etc/letsencrypt/live/matrix.example.eu/fullchain.pem; ssl_certificate_key /etc/letsencrypt/live/matrix.example.eu/privkey.pem; ssl_protocols TLSv1.2 TLSv1.3; ssl_ciphers HIGH:!aNULL:!MD5; ssl_prefer_server_ciphers on; client_max_body_size 50M; location / { proxy_pass http://localhost:8008; proxy_set_header X-Forwarded-For $remote_addr; proxy_set_header X-Forwarded-Proto $scheme; proxy_set_header Host $host; proxy_http_version 1.1; } } # HTTPS redirect server { listen 80; listen [::]:80; server_name matrixrtc.example.eu; location / { return 301 https://$host$request_uri; } } # HTTPS Client API server { listen 443 ssl http2; listen [::]:443 ssl http2; server_name matrixrtc.example.eu; ssl_certificate /etc/letsencrypt/live/matrixrtc.example.eu/fullchain.pem; ssl_certificate_key /etc/letsencrypt/live/matrixrtc.example.eu/privkey.pem; ssl_protocols TLSv1.2 TLSv1.3; ssl_ciphers HIGH:!aNULL:!MD5; ssl_prefer_server_ciphers on; location ^~ /livekit/jwt/ { proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto $scheme; # MatrixRTC Authorization Service running at port 8080 proxy_pass http://localhost:8070/; } location ^~ /livekit/sfu/ { proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto $scheme; proxy_send_timeout 120; proxy_read_timeout 120; proxy_buffering off; proxy_set_header Accept-Encoding gzip; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection "upgrade"; # LiveKit SFU websocket connection running at port 7880 proxy_pass http://localhost:7880/; } }After that, create the appropriate symbolic link so that nginx knows about the new configuration and reload the service. Danach konnt Ihr wieder in den Ordner /opt/matrix wechseln und den Synapse Server starten:
Start Synapse Server
Once this is done, change back to your /opt/matrix directory and start the Synapse server.
docker compose upFor the first start I deliberately left out the detached mode. This way you can watch the log output and also see when the database initialisation has finished.
Creating users
Since registration is disabled, you have to create users from the command line. The first user can also be made an administrator straight away. For any additional users, simply replace –admin with –no-admin.
docker exec -it synapse register_new_matrix_user \ http://localhost:8008 \ -c /data/homeserver.yaml \ -u meinErsterUser \ -p SuperSicheresPasswort \ --adminAt this point your own Synapse server should be running and should also be able to federate with other Matrix servers. If you notice mistakes in the configuration or have constructive suggestions, feel free to leave a comment. Setting up a complete Matrix environment is quite complex, and there is no single guide that works perfectly for every setup (and this one isnt it either).
Still, I hope this article encourages some people to set up their own Matrix server. Every additional independent server makes the Matrix ecosystem a little more resilient, and that can only be a good thing.
#element #linux #livekit #matrix #opensource #selfhosting #synapse #unplugbigtech #unplugtrump @bjoern -
Установка и настройка matrix (Synapse), MAS, LiveKit, lk‑jwt‑service, Element‑web, Ketesa совместно с панелью 3x‑ui
Возникла идея написать подробную инструкцию по установке и настройке matrix. Всё, что нашел в интернете — либо устаревшая, неактуальная информация 3–4 летней давности без использования MAS, либо неполная информация с обрезанными конфигурационными файлами, по типу «догадайся сам и допиши». Также все инструкции, которые есть в интернете, в основном по установке в контейнере docker. Я же поделюсь с вами инструкцией по установке без каких либо контейнеров. В условиях блокировки Телеграм и других популярных мессенджеров, протокол matrix дает возможность организовать, например, связь между членами семьи, родственниками и друзьями, не используя ВПН. Постараюсь доступно объяснить и показать все шаги установки и настройки, чтобы это было понятно большинству «чайников». Под «чайниками» я подразумеваю людей, которые знают, что такое терминал в линукс, и на базовом уровне умеют им пользоваться. Зачем нужна установка matrix совместно с панелью 3x‑ui? Всё просто — для экономии денег. Если у вас уже есть сервер с установленной панелью, то зачем арендовать еще один сервер для matrix? Всё можно установить на один сервер. Другой вопрос — правильно ли это? Возможно нет, но у меня такая схема работает несколько месяцев без сбоев.
https://habr.com/ru/articles/1057762/
#matrix #synapse #MAS #Elementweb #livekit #установка #настройка #3xui #Ketesa #lkjwtservice
-
Как мы делаем онлайн звонки: Введение в WebRTC и LiveKit
Хотим рассказать о том, как мы делаем платформу для онлайн звонков и видео конференций с ИИ, но чтобы не слишком сложно было. Начнем с самого низкого уровня - с механизма передачи данных между клиентами в созвоне. В этой статье мы расскажем про WebRTC, NAT, STUN/TURN и немного про LiveKit
-
I dedicated my weekend setting up an unfederated matrix chat server in my local #homelab using #tuwunel + #livekit + #Cinny . Happily everything went mostly well, but I stumbled with the "I can't share audio when streaming my desktop on Linux" problem.
I read on https://docs.livekit.io/transport/media/screenshare/ that this is possible if you share a tab in chrome/mium, but I'm curious if this not working for windows/desktop is a browser problem, a wayland problem, a pipewire problem, a DE problem or a mix of 'em :O? -
Как я сделал групповые звонки в React Native мессенджере: WebRTC, CallKit и грабли production'а
Это третья статья из серии про инженерные решения в ONEMIX — моём мессенджере на React Native. В первой я разбирал трёхуровневый кэш сообщений, во второй — реализацию Double Ratchet E2E. Сегодня — про звонки. Звонки в мессенджере — это та функция, которая работает либо отлично, либо никак. Пользователь привык что WhatsApp/Telegram звонят мгновенно, показывают входящие на заблокированном экране, переживают переключения Wi-Fi/LTE, и работают из фона. Если твоя реализация делает хоть что-то из этого хуже — пользователь это сразу заметит и переключится на "нормальный" мессенджер. Я потратил несколько месяцев на то чтобы довести звонки в ONEMIX до production-уровня. В процессе пришлось изучить WebRTC изнутри, разобраться с iOS CallKit и VoIP push notifications, и собрать десяток граблей которые в туториалах не упоминают. В этой статье — как это устроено, какие решения оказались критичными, и что бы я сделал по-другому. Сразу оговорка. Я не использую готовые SDK типа Agora, Twilio, 100ms. У них отличное качество и поддержка, но они не дают полного контроля над процессом — а для мессенджера контроль критичен. Когда звонок не проходит, пользователь винит приложение, а не "SDK от третьей стороны". Плюс готовые SDK стоят денег, которые на раннем этапе продукта лучше направить в другие места.
https://habr.com/ru/articles/1033930/
#webrtc #react_native #livekit #callkit #voip_push_notifications #trickle_ice #мобильная_разработка #звонки #мессенджер
-
Настраиваем Matrix сервер
Полное руководство по развёртыванию приватного Matrix-сервера с Google-аутентификацией, видеозвонками, Telegram и WhatsApp мостами Никогда не писал статьи, особенно здесь, но попытавшись найти нормальную инструкцию для разворачивания сервера Matrix с Google-аутентификацией, видеозвонками мостом Telegram и WhatsApp понял, что они либо не подходят, либо не учитывают нюансы Google-аутентификации (например не все админские сайты подходят и клиенты), часть инструкций даже на официальном сайте указаны не верно. Сразу скажу что в написании статьи сильно помогал ИИ, он помог зачистить конфиги, и расписала очерёдность настройки различных модулей. Надеюсь данная инструкция будем вам полезна. Если будут вопросы пишите, чем смогу помогу. В этом гайде мы соберём из готовых Docker-контейнеров полнофункциональный Matrix-сервер для семьи или небольшой компании..
https://habr.com/ru/articles/1028012/
#Matrix #Synapse #Element #Docker #Open_Source #LiveKit #WhatsApp_Bridge #Telegram_Bridge #MAS
-
Oh, you want a self-hosted, #FOSS, federated, ethical replacement for Discord? Just switch to #Matrix!
Okay. Did that. All my friends are now on my Matrix instance, eagerly awaiting me to set up feature parity with Discord so we can all switch over.
Oh, you want voice and video chat? No problem! You'll just need to set up #LiveKit, an alt-right cryptofash AI bro software project, on your server. Just run their obfuscated installation script as root, it's that easy!
... Excuse me?!
And somehow this is the standard, nobody bats an eye, no clients support the 'legacy' call system and nobody's working on an alternative implementation?
I feel like I'm taking crazy pills.
-
Livekit supports noise cancelling, if this is added to element-call it would make a ton of people moving from discord really really happy. Its one of the biggest grievances at the moment.
From the page it does not look too hard ro implement, anyone know what is needed knowledge wise to make this happen?
I would love to raise some awareness for this issue specially now that livekit offers support for this.
If possible share this to taise awareness, this issue has been open since 2022 but is now gaining alot of attention
https://github.com/element-hq/element-call/issues/714
https://docs.livekit.io/transport/media/noise-cancellation/
#elementcall #element #matrix #livekit -
Разворачиваем self-hosted Matrix: Synapse + OIDC + LiveKit + подписанные обновления
Привет. Мне стало интересно, насколько реально одному разработчику собрать продакшн‑подобную инфраструктуру мессенджера без managed‑решений и «облачной магии». Не стартап‑презентацию, а инженерный эксперимент: развернуть стек, заставить его жить, увидеть слабые места и понять, что в этой системе действительно критично. На Хабре уже есть материалы про базовую установку Synapse + Element, но моя цель чуть другая — показать сборку, где к Matrix добавляется внешний слой идентификации (OIDC), VoIP‑инфраструктура (LiveKit + TURN) и механизм подписанных обновлений Android‑клиента. В статье — архитектура, ключевые конфиги и границы ответственности компонентов. В следующих частях разберу грабли, потому что в этом стеке они не побочный эффект, а часть реальности.
https://habr.com/ru/articles/1006904/
#Matrix #Synapse #OIDC #LiveKit #WebRTC #Docker #PostgreSQL #Android #Ed25519 #мессенджеры
-
@dnkrupinski Würde noch #Livekit ergänzen, darauf setzt Frankreich: https://github.com/livekit-examples/meet
-
-
✅ #livekit Installation für #Matrix #Web-RTC in naitve rootless Pods via #Quadlet.
Ich muss zu meiner Schande gestehen, dass ich bei der Integration von #systemd massiv auf AI zurückgegriffen habe. Bin mir nicht sicher, ob ich das allein hin bekommen hätte.
Das muss einfacher werden!
Jetzt fehlt noch die Anbindung an den ReverseProxy, dann sollten A/V-Calls auch mit #ElementX klappen.
-
Ai đã thử tự lưu trữ và xây dựng agent thoại LiveKit? Cần yêu cầu nào để tạo agent thoại mở rộng và chuyên nghiệp như VAPI, Retell hay 11Labs? Quy trình ra sao? Mọi góp ý đều được hoan nghênh! #LiveKit #VoiceAgents #AI #DeveloperTools #SelfHosting #ThửTháchCôngNghệ #AgentThảoLuận
https://www.reddit.com/r/selfhosted/comments/1pk43ha/livekit_voice_agents/
-
Zu #Livekit sind wir btw. erst anfang letztes Jahr gewechselt, weil Twilio Video in 2024 - was wir vorher verwendet haben - end-of-life angekündigt hat. Damals habe ich auch einen Vergleich ein paar der möglichen Optionen aufgestellt: https://blog.t1m.me/blog/video-call-clients-and-servers-for-web-apps
Im Prinzip ist diese Komponente aber auch austauschbar!
(2/2)
-
Hi @fexplorer
@littleworld benutzt https://livekit.io für Video Calls.
#Livekit benutzt WebRTC Video calls und der Server sowie Client implementations sind Open-source.
Im Moment verwenden wir auch deren payed hosting service.
Die #Livekit server implementation lässt sich mit etwas aufwand auch selber Hosten,
das anzugehen fehlten uns bisher noch die Resourcen bzw Zeit.(1/2)
-
Just watched https://media.ccc.de/v/matrix-conf-2025-74565-commercialising-matrix
I liked:
• The mix of business and technology - we got both market-/business-model deep-dives and hands-on tech insights.
• The blend of feature showcase and SRE (site-reliability) insights.If you’re working at the intersection of open source communication infrastructure, federation, sovereign software, or enterprise messaging - this is well worth your time.
thx @c3voc
-
Props to the people working on @matrix and @element for making Element Call.
I deployed the LiveKit backend on my Matrix server which was, frankly, quite tricky.
Once it's set up, though, it works super well. I've been using it to communicate with my wife during a week in Birmingham. It has now been battle-tested in a variety of 3G/4G roaming networks and different hotel and aiport Wi-Fis, all while the server was hosted in a different country.
-
This looks to me like Mr Macron relies on a #webex #roomkit. What do you think? Do you like the setup? Pros and Cons? Is it end-to-end encrypted?
#webrtc #livekit #matrix #matrixrtc #opentalk #talk #teams #digitalsovereignty #meet #tchap @OpenTalkMeeting @element @matrix @EC_OSPO @bluehats
Source: https://www.tagesschau.de/ausland/europa/ukraine-europa-usa-100.html
-
@bigbluebutton les nouvelles fonctionnalités de la 3.0 avec le support optionnel de #livekit
new-features | BigBlueButton
https://docs.bigbluebutton.org/new-features/ -
Wechsel zu LiveKit: OpenTalk setzt auf eine noch leistungsfähigere WebRTC-Technologie!
Adaptive Streams, Simulcast & optimierte Skalierbarkeit machen Videokonferenzen noch besser.
Mehr dazu: https://opentalk.eu/de/news/webrtc-upgrade-opentalk-wechselt-zu-livekit
-
Aus alt mach neu: Daniél Kerkmann, Expert Lead bei @OpenTalkMeeting zeigt im Vortrag auf unserer Secure Linux Administration Conference 2025 wie ihr eure proprietären #Cisco Room Kits für moderne Videokonferenzen nutzen könnt. Außerdem erklärt Daniél wie #OpenTalk vom alten WebRTC-Backend Janus auf das moderne #Livekit umgestellt wurde - für eine bessere Performance & Skalierbarkeit und eine Ende-zu-Ende-Verschlüsselung.
SLAC-Ticket sichern:
https://www.slac-2025.de -
Auf den #ChemnitzerLinuxtagen haben wir live gezeigt, wie Open Source alte Cisco Room Kits rettet! Dank #SIP lassen sie sich in moderne Videokonferenzen integrieren – nachhaltig und effizient.
Auch OpenTalk selbst hat ein Upgrade bekommen: Mit #LiveKit sind wir leistungsfähiger denn je. Jetzt die Aufzeichnung ansehen: https://media.ccc.de/v/clt25-372-cisco-room-kits-sip-und-livekit-in-opentalk-von-der-teuren-altlast-zur-sinnvollen-wiederbelebung
#OpenSource #Videokonferenz #DigitaleSouveränität #FOSS #SIP
-
Mehr Flexibilität und Stabilität in OpenTalk: Neue Funktionen und Migration zu LiveKit
Pop-Out Media Streams und die Migration zu LiveKit machen OpenTalk noch flexibler und stabiler. Medienstreams lassen sich individuell anpassen, und die die Stabilität der Verbindungen wurde verbessert.
Alle Details gibt es hier: https://opentalk.eu/de/news/popout-media-streams-und-livekit-opentalk-2501
-
Für Nutzer der von https://opentalk.eu/ gehosteten #OpenTalk Instanz ist seit heute die Version 25.0.1 mit sinnvollen neuen Features verfügbar. Damit wurde auf #Livekit migriert, was für stabilere Audio- und Videoverbindungen sorgt. @OpenTalkMeeting https://opentalk.eu/de/news/popout-media-streams-und-livekit-opentalk-2501
-
🚦 #LiveKit released a transformers-based, semantic End-of-Turn detector, #opensource on #HuggingFace[1]! This model complements voice activity detectors (#VAD) by predicting whether the user's sentence is complete. This helps reduce false starts up to 85% according to their own testing, and is text-based, with a very low latency (~50ms). Find all the details in their post [2].
[1] https://huggingface.co/livekit/turn-detector
[2] https://blog.livekit.io/using-a-transformer-to-improve-end-of-turn-detection