SlideShare a Scribd company logo
1 of 84
Download to read offline
The challenges of hybrid meetings
Lorenzo Miniero
@lminiero@fosstodon.org
CommCon 2023
June 20th 2023, Mercure Blackburn Dunkenhalgh Hotel & Spa (UK)
I’ve been doing VoIP/WebRTC for way too long!
Lorenzo Miniero
• Ph.D @ UniNA
• Chairman @ Meetecho
• Main author of Janus
Contacts and info
• lorenzo@meetecho.com
• https://fosstodon.org/@lminiero
• https://www.slideshare.net/LorenzoMiniero
• https://lminiero.bandcamp.com
Just a few words on Meetecho
• Co-founded in 2009 as an academic spin-off
• University research efforts brought to the market
• Completely independent from the University
• Focus on real-time multimedia applications
• Strong perspective on standardization and open source
• Several activities
• Consulting services
• Commercial support and Janus licenses
• Streaming of live events (IETF, RIPE, etc.)
• Proudly brewed in sunny Napoli(*), Italy
Just a few words on Meetecho
• Co-founded in 2009 as an academic spin-off
• University research efforts brought to the market
• Completely independent from the University
• Focus on real-time multimedia applications
• Strong perspective on standardization and open source
• Several activities
• Consulting services
• Commercial support and Janus licenses
• Streaming of live events (IETF, RIPE, etc.)
• Proudly brewed in sunny Napoli(*), Italy
((*)
A different picture, for once!)
Streaming live events via WebRTC pre-pandemic
• Service we provided for several different events
• Mainly IETF (official remote participation tool) and some ACM conferences
• A few other events too (a growing business)
• Typically involved some specific activities
• Fly a couple people + equipment there, of course
• Setup cameras, split/capture projector signals, hooks to room mixer
• Embed some event-specific channel (e.g., Twitter feed, or Sli.do channel)
• ... and then stream everything via WebRTC (sometimes allowing remote speakers)
Until the world changed...
No more live events in person for a while!
Streaming live events via WebRTC pre-pandemic
• Service we provided for several different events
• Mainly IETF (official remote participation tool) and some ACM conferences
• A few other events too (a growing business)
• Typically involved some specific activities
• Fly a couple people + equipment there, of course
• Setup cameras, split/capture projector signals, hooks to room mixer
• Embed some event-specific channel (e.g., Twitter feed, or Sli.do channel)
• ... and then stream everything via WebRTC (sometimes allowing remote speakers)
Until the world changed...
No more live events in person for a while!
Streaming live events via WebRTC pre-pandemic
• Service we provided for several different events
• Mainly IETF (official remote participation tool) and some ACM conferences
• A few other events too (a growing business)
• Typically involved some specific activities
• Fly a couple people + equipment there, of course
• Setup cameras, split/capture projector signals, hooks to room mixer
• Embed some event-specific channel (e.g., Twitter feed, or Sli.do channel)
• ... and then stream everything via WebRTC (sometimes allowing remote speakers)
Until the world changed...
No more live events in person for a while!
A look at how that worked for IETF meetings
A look at how that worked for IETF meetings
A look at how that worked for IETF meetings
A look at how that worked for IETF meetings
A look at how that worked for IETF meetings
A look at how that worked for IETF meetings
A look at how that worked for IETF meetings
A look at how that worked for IETF meetings
A look at how that worked for IETF meetings
A simpler approach for other conferences (e.g., ACM)
Streaming JanusCon (no remote pizza, though)
Then a global pandemic hit...
Then a global pandemic hit...
Reinventing the platform to go fully virtual
https://commcon.xyz/session/turning-live-events-to-virtual-with-janus
Eating our own dog food
Janus
General purpose, open source WebRTC server
• https://github.com/meetecho/janus-gateway
• Demos and documentation: https://janus.conf.meetecho.com
• Community: https://janus.discourse.group/
Eating our own dog food
https://www.slideshare.net/LorenzoMiniero/scaling-webrtc-applications-with-janus
https://www.youtube.com/watch?v=zxRwELmyWU0
Mixed Audio + Streaming
Mixed Audio + Streaming
Mixed Audio + Streaming
SFU Video + Streaming
SFU Video + Streaming
Bringing it all together for Virtual Events
Bringing it all together for Virtual Events
Bringing it all together for Virtual Events
Bringing it all together for Virtual Events
Then, eventually, the world started opening up again
New challenges to overcome
• Before the pandemic, remote participants were few and far between
• Limited number of remote presentations
• Occasional remote question from the queue
• Focus was more on the venue and the local attendees
• In virtual platform, remote participants were not 2nd class citizens anymore...
• ... they were the only ones there!
• Every functionality shared with all other attendees
• After the pandemic, what to expect from a “hybrid” meeting instead?
• At the very least, a much more even distribution
• ~50% local attendees, ~50% remote participants
• How to get them to seamlessly interact with each other?
New challenges to overcome
• Before the pandemic, remote participants were few and far between
• Limited number of remote presentations
• Occasional remote question from the queue
• Focus was more on the venue and the local attendees
• In virtual platform, remote participants were not 2nd class citizens anymore...
• ... they were the only ones there!
• Every functionality shared with all other attendees
• After the pandemic, what to expect from a “hybrid” meeting instead?
• At the very least, a much more even distribution
• ~50% local attendees, ~50% remote participants
• How to get them to seamlessly interact with each other?
New challenges to overcome
• Before the pandemic, remote participants were few and far between
• Limited number of remote presentations
• Occasional remote question from the queue
• Focus was more on the venue and the local attendees
• In virtual platform, remote participants were not 2nd class citizens anymore...
• ... they were the only ones there!
• Every functionality shared with all other attendees
• After the pandemic, what to expect from a “hybrid” meeting instead?
• At the very least, a much more even distribution
• ~50% local attendees, ~50% remote participants
• How to get them to seamlessly interact with each other?
What about the infrastructure?
• Pretty much the same as the virtual one!
• Needed to accomodate potentially large remote attendance
• Feeds from the venue can be scaled automatically as “virtual participants”
• Streams from the room similar to before, with a few tweaks
• Audio mixer is now the Janus AudioBridge, not SIP-based
• Static video feeds are not static anymore, but dynamic
• Support for multiple cameras per room
• Local and remote streams can be consumed dynamically in the venue
• e.g., slides (more on that later)
• Remote presenters to display in the room
• Virtual queues, polls, transcriptions, etc.
What about the infrastructure?
• Pretty much the same as the virtual one!
• Needed to accomodate potentially large remote attendance
• Feeds from the venue can be scaled automatically as “virtual participants”
• Streams from the room similar to before, with a few tweaks
• Audio mixer is now the Janus AudioBridge, not SIP-based
• Static video feeds are not static anymore, but dynamic
• Support for multiple cameras per room
• Local and remote streams can be consumed dynamically in the venue
• e.g., slides (more on that later)
• Remote presenters to display in the room
• Virtual queues, polls, transcriptions, etc.
What about the infrastructure?
• Pretty much the same as the virtual one!
• Needed to accomodate potentially large remote attendance
• Feeds from the venue can be scaled automatically as “virtual participants”
• Streams from the room similar to before, with a few tweaks
• Audio mixer is now the Janus AudioBridge, not SIP-based
• Static video feeds are not static anymore, but dynamic
• Support for multiple cameras per room
• Local and remote streams can be consumed dynamically in the venue
• e.g., slides (more on that later)
• Remote presenters to display in the room
• Virtual queues, polls, transcriptions, etc.
Handling local and remote audio (before)
Handling local and remote audio (now)
Static camera and projector (before)
Adding cameras and making video more dynamic
Adding cameras and making video more dynamic
Adding cameras and making video more dynamic
What about the duplicated feed from the projector?
• Before the pandemic, we’d use a splitter
• Local attendee would plug the laptop to the splitter
• Splitter would feed the content to projector and our streamer
• Streamer would send the content as video remotely
• Got rid of that for fully hybrid events
• All presentation content is always shared via Meetecho, even when local
• Presentation can be light (preloaded slides) or WebRTC-based
• In the venue, agent shows slides/screen feed on main screen
• This allows to never worry about local vs. remote content
• No matter where it’s from, it’s published via WebRTC (or preloaded slides)
• No matter where it’s from, local and remote attendees consume it the same way
What about the duplicated feed from the projector?
• Before the pandemic, we’d use a splitter
• Local attendee would plug the laptop to the splitter
• Splitter would feed the content to projector and our streamer
• Streamer would send the content as video remotely
• Got rid of that for fully hybrid events
• All presentation content is always shared via Meetecho, even when local
• Presentation can be light (preloaded slides) or WebRTC-based
• In the venue, agent shows slides/screen feed on main screen
• This allows to never worry about local vs. remote content
• No matter where it’s from, it’s published via WebRTC (or preloaded slides)
• No matter where it’s from, local and remote attendees consume it the same way
What about the duplicated feed from the projector?
• Before the pandemic, we’d use a splitter
• Local attendee would plug the laptop to the splitter
• Splitter would feed the content to projector and our streamer
• Streamer would send the content as video remotely
• Got rid of that for fully hybrid events
• All presentation content is always shared via Meetecho, even when local
• Presentation can be light (preloaded slides) or WebRTC-based
• In the venue, agent shows slides/screen feed on main screen
• This allows to never worry about local vs. remote content
• No matter where it’s from, it’s published via WebRTC (or preloaded slides)
• No matter where it’s from, local and remote attendees consume it the same way
Displaying content in the venue (before)
Displaying content in the venue (now)
Displaying content in the venue (now)
One queue to rule them all!
• Historically, the IETF relied on mic lines for queues
• You’d stand up in line and wait for your turn
• Caused issues with remote speakers (when was their turn?)
• Partially handled at the time with “Pacman ghosts” + Big Red Button
• In fully virtual platform, not an issue
• Everyone remote, so everyone in the same queue!
• More of a problem in hybrid scenario
• Many remote and local attendees alike
• Solved by putting them all in the same queue
• Local attendees use “companion” web app to get in line
• No need to stand in line, they can do that when it’s their turn
One queue to rule them all!
• Historically, the IETF relied on mic lines for queues
• You’d stand up in line and wait for your turn
• Caused issues with remote speakers (when was their turn?)
• Partially handled at the time with “Pacman ghosts” + Big Red Button
• In fully virtual platform, not an issue
• Everyone remote, so everyone in the same queue!
• More of a problem in hybrid scenario
• Many remote and local attendees alike
• Solved by putting them all in the same queue
• Local attendees use “companion” web app to get in line
• No need to stand in line, they can do that when it’s their turn
One queue to rule them all!
• Historically, the IETF relied on mic lines for queues
• You’d stand up in line and wait for your turn
• Caused issues with remote speakers (when was their turn?)
• Partially handled at the time with “Pacman ghosts” + Big Red Button
• In fully virtual platform, not an issue
• Everyone remote, so everyone in the same queue!
• More of a problem in hybrid scenario
• Many remote and local attendees alike
• Solved by putting them all in the same queue
• Local attendees use “companion” web app to get in line
• No need to stand in line, they can do that when it’s their turn
One queue to rule them all!
• Historically, the IETF relied on mic lines for queues
• You’d stand up in line and wait for your turn
• Caused issues with remote speakers (when was their turn?)
• Partially handled at the time with “Pacman ghosts” + Big Red Button
• In fully virtual platform, not an issue
• Everyone remote, so everyone in the same queue!
• More of a problem in hybrid scenario
• Many remote and local attendees alike
• Solved by putting them all in the same queue
• Local attendees use “companion” web app to get in line
• No need to stand in line, they can do that when it’s their turn
Using the full Meetecho tool
Using the on-site Meetecho tool
Using the on-site Meetecho tool
Displaying the queue in the room
The on-site Meetecho tool
• Via QR code, but also easily accessible from the main agenda
• Uses same credentials to authenticate
• Presents limited set of Meetecho features
• Allows local attendees to use some “remote” features seamlessly
• Getting in line to talk (queue)
• Advancing slides, if preloaded (remote clicker)
• Raising/not raising hands when needed (polls)
• Local attendees recognized from remote ones
• Queue displays different icons depending on device/location
• “Bluesheets” automatically filled in
The on-site Meetecho tool
• Via QR code, but also easily accessible from the main agenda
• Uses same credentials to authenticate
• Presents limited set of Meetecho features
• Allows local attendees to use some “remote” features seamlessly
• Getting in line to talk (queue)
• Advancing slides, if preloaded (remote clicker)
• Raising/not raising hands when needed (polls)
• Local attendees recognized from remote ones
• Queue displays different icons depending on device/location
• “Bluesheets” automatically filled in
The on-site Meetecho tool
• Via QR code, but also easily accessible from the main agenda
• Uses same credentials to authenticate
• Presents limited set of Meetecho features
• Allows local attendees to use some “remote” features seamlessly
• Getting in line to talk (queue)
• Advancing slides, if preloaded (remote clicker)
• Raising/not raising hands when needed (polls)
• Local attendees recognized from remote ones
• Queue displays different icons depending on device/location
• “Bluesheets” automatically filled in
Show of hands (“hum” replacement)
New from IETF 116: live transcriptions
New from IETF 116: live transcriptions
New from IETF 116: live transcriptions
New from IETF 116: live transcriptions
Shared bus to control all the local agents
• Every device in the venue rooms has an agent to control it remotely
• Audio bridge device
• Raspberry Pis controlling cameras and screen duplication
• Raspberry Pis to display content on main and second screen
• All devices register at a controller and wait for commands
• Dynamic behaviour can be orchestrated remotely (e.g., from the NOC)
• Multiple actions that can be triggered
• e.g., start/stop audio, change gains, etc.
• e.g., start/stop cameras, pan/tilt/zoom, etc.
• e.g., start/stop content displays, reset/restart, etc.
Shared bus to control all the local agents
• Every device in the venue rooms has an agent to control it remotely
• Audio bridge device
• Raspberry Pis controlling cameras and screen duplication
• Raspberry Pis to display content on main and second screen
• All devices register at a controller and wait for commands
• Dynamic behaviour can be orchestrated remotely (e.g., from the NOC)
• Multiple actions that can be triggered
• e.g., start/stop audio, change gains, etc.
• e.g., start/stop cameras, pan/tilt/zoom, etc.
• e.g., start/stop content displays, reset/restart, etc.
Shared bus to control all the local agents
• Every device in the venue rooms has an agent to control it remotely
• Audio bridge device
• Raspberry Pis controlling cameras and screen duplication
• Raspberry Pis to display content on main and second screen
• All devices register at a controller and wait for commands
• Dynamic behaviour can be orchestrated remotely (e.g., from the NOC)
• Multiple actions that can be triggered
• e.g., start/stop audio, change gains, etc.
• e.g., start/stop cameras, pan/tilt/zoom, etc.
• e.g., start/stop content displays, reset/restart, etc.
Monitoring and controlling sessions
Monitoring and controlling sessions
Monitoring and controlling sessions
Monitoring and controlling sessions
Monitoring and controlling sessions
What about NDI?
• Wrote about this a few times
• https://www.meetecho.com/blog/webrtc-ndi/
• https://www.meetecho.com/blog/webrtc-ndi-part-2/
• Spoke about this a few times too
• ClueCon: https://youtu.be/RZ58vapWfUw?t=1755
• CommCon:
https://2021.commcon.xyz/talks/whip-ndi-and-janus-genesis-of-a-broadcasting-demo
• Used in practice @ CommCon 2021
• Janus NDI plugin part of early Broadcaster.vc stack
• Could be very useful for patching streams in/out of the venue
• Better interaction with AV team workflows
• Not currently used in our own workflows (yet?), though
What about NDI?
• Wrote about this a few times
• https://www.meetecho.com/blog/webrtc-ndi/
• https://www.meetecho.com/blog/webrtc-ndi-part-2/
• Spoke about this a few times too
• ClueCon: https://youtu.be/RZ58vapWfUw?t=1755
• CommCon:
https://2021.commcon.xyz/talks/whip-ndi-and-janus-genesis-of-a-broadcasting-demo
• Used in practice @ CommCon 2021
• Janus NDI plugin part of early Broadcaster.vc stack
• Could be very useful for patching streams in/out of the venue
• Better interaction with AV team workflows
• Not currently used in our own workflows (yet?), though
What about NDI?
• Wrote about this a few times
• https://www.meetecho.com/blog/webrtc-ndi/
• https://www.meetecho.com/blog/webrtc-ndi-part-2/
• Spoke about this a few times too
• ClueCon: https://youtu.be/RZ58vapWfUw?t=1755
• CommCon:
https://2021.commcon.xyz/talks/whip-ndi-and-janus-genesis-of-a-broadcasting-demo
• Used in practice @ CommCon 2021
• Janus NDI plugin part of early Broadcaster.vc stack
• Could be very useful for patching streams in/out of the venue
• Better interaction with AV team workflows
• Not currently used in our own workflows (yet?), though
What about NDI?
• Wrote about this a few times
• https://www.meetecho.com/blog/webrtc-ndi/
• https://www.meetecho.com/blog/webrtc-ndi-part-2/
• Spoke about this a few times too
• ClueCon: https://youtu.be/RZ58vapWfUw?t=1755
• CommCon:
https://2021.commcon.xyz/talks/whip-ndi-and-janus-genesis-of-a-broadcasting-demo
• Used in practice @ CommCon 2021
• Janus NDI plugin part of early Broadcaster.vc stack
• Could be very useful for patching streams in/out of the venue
• Better interaction with AV team workflows
• Not currently used in our own workflows (yet?), though
What’s next?
• A refactoring of the web UI
• Almost finished!
• Completely redesigned the UI, to make it mobile-ready too
• Better usage of the ton of features we added (and add!) over time
• Improvements on transcription
• Works fine already, but needs tailoring to specific context(s)
• Expanding the events base
• Bespoke solutions for big customers (e.g., IETF, RIPE, etc.)
• Doing the same for other events, possibly with modular feature set
What’s next?
• A refactoring of the web UI
• Almost finished!
• Completely redesigned the UI, to make it mobile-ready too
• Better usage of the ton of features we added (and add!) over time
• Improvements on transcription
• Works fine already, but needs tailoring to specific context(s)
• Expanding the events base
• Bespoke solutions for big customers (e.g., IETF, RIPE, etc.)
• Doing the same for other events, possibly with modular feature set
What’s next?
• A refactoring of the web UI
• Almost finished!
• Completely redesigned the UI, to make it mobile-ready too
• Better usage of the ton of features we added (and add!) over time
• Improvements on transcription
• Works fine already, but needs tailoring to specific context(s)
• Expanding the events base
• Bespoke solutions for big customers (e.g., IETF, RIPE, etc.)
• Doing the same for other events, possibly with modular feature set
Thanks! Questions? Comments?
Get in touch!
• https://fosstodon.org/@lminiero
• https://twitter.com/elminiero
• https://twitter.com/meetecho
• https://twitter.com/januswebrtc
• https://www.meetecho.com/blog/

More Related Content

What's hot

[네전따] 네트워크 엔지니어에게 쿠버네티스는 어떤 의미일까요
[네전따] 네트워크 엔지니어에게 쿠버네티스는 어떤 의미일까요[네전따] 네트워크 엔지니어에게 쿠버네티스는 어떤 의미일까요
[네전따] 네트워크 엔지니어에게 쿠버네티스는 어떤 의미일까요Jo Hoon
 
Pwning mobile apps without root or jailbreak
Pwning mobile apps without root or jailbreakPwning mobile apps without root or jailbreak
Pwning mobile apps without root or jailbreakAbraham Aranguren
 
How VXLAN works on Linux
How VXLAN works on LinuxHow VXLAN works on Linux
How VXLAN works on LinuxEtsuji Nakai
 
Janus + Audio @ Open Source World
Janus + Audio @ Open Source WorldJanus + Audio @ Open Source World
Janus + Audio @ Open Source WorldLorenzo Miniero
 
Ndc17 DevOps? DevOps개발자? 북미에서의 6년
Ndc17 DevOps? DevOps개발자? 북미에서의 6년Ndc17 DevOps? DevOps개발자? 북미에서의 6년
Ndc17 DevOps? DevOps개발자? 북미에서의 6년Taehyun Kim
 
Python과 Git으로 만드는 모바일 게임 패치 시스템
Python과 Git으로 만드는 모바일 게임 패치 시스템Python과 Git으로 만드는 모바일 게임 패치 시스템
Python과 Git으로 만드는 모바일 게임 패치 시스템Youngtaek Oh
 
Hacking Adobe Experience Manager sites
Hacking Adobe Experience Manager sitesHacking Adobe Experience Manager sites
Hacking Adobe Experience Manager sitesMikhail Egorov
 
Traffic Control with Envoy Proxy
Traffic Control with Envoy ProxyTraffic Control with Envoy Proxy
Traffic Control with Envoy ProxyMark McBride
 
ネットワークエンジニアのための Puppet / Chef
ネットワークエンジニアのための Puppet / Chefネットワークエンジニアのための Puppet / Chef
ネットワークエンジニアのための Puppet / Chefnpsg
 
쿠버네티스를 이용한 기능 브랜치별 테스트 서버 만들기 (GitOps CI/CD)
쿠버네티스를 이용한 기능 브랜치별 테스트 서버 만들기 (GitOps CI/CD)쿠버네티스를 이용한 기능 브랜치별 테스트 서버 만들기 (GitOps CI/CD)
쿠버네티스를 이용한 기능 브랜치별 테스트 서버 만들기 (GitOps CI/CD)충섭 김
 
Locking down your Kubernetes cluster with Linkerd
Locking down your Kubernetes cluster with LinkerdLocking down your Kubernetes cluster with Linkerd
Locking down your Kubernetes cluster with LinkerdBuoyant
 
ROS/ROS2 Distributed System with Kubernetes
ROS/ROS2 Distributed System with KubernetesROS/ROS2 Distributed System with Kubernetes
ROS/ROS2 Distributed System with KubernetesTomoya Fujita
 
Cilium - Bringing the BPF Revolution to Kubernetes Networking and Security
Cilium - Bringing the BPF Revolution to Kubernetes Networking and SecurityCilium - Bringing the BPF Revolution to Kubernetes Networking and Security
Cilium - Bringing the BPF Revolution to Kubernetes Networking and SecurityThomas Graf
 
Tutorial: Using GoBGP as an IXP connecting router
Tutorial: Using GoBGP as an IXP connecting routerTutorial: Using GoBGP as an IXP connecting router
Tutorial: Using GoBGP as an IXP connecting routerShu Sugimoto
 
〈야생의 땅: 듀랑고〉 서버 아키텍처 Vol. 3
〈야생의 땅: 듀랑고〉 서버 아키텍처 Vol. 3〈야생의 땅: 듀랑고〉 서버 아키텍처 Vol. 3
〈야생의 땅: 듀랑고〉 서버 아키텍처 Vol. 3Heungsub Lee
 
User Acquisition Campaigns: Web vs. App w/ Morgan Brown
User Acquisition Campaigns: Web vs. App w/ Morgan BrownUser Acquisition Campaigns: Web vs. App w/ Morgan Brown
User Acquisition Campaigns: Web vs. App w/ Morgan BrownBranch
 
jq: JSON - Like a Boss
jq: JSON - Like a Bossjq: JSON - Like a Boss
jq: JSON - Like a BossBob Tiernay
 
[NDC18] 만들고 붓고 부수고 - 〈야생의 땅: 듀랑고〉 서버 관리 배포 이야기
[NDC18] 만들고 붓고 부수고 - 〈야생의 땅: 듀랑고〉 서버 관리 배포 이야기[NDC18] 만들고 붓고 부수고 - 〈야생의 땅: 듀랑고〉 서버 관리 배포 이야기
[NDC18] 만들고 붓고 부수고 - 〈야생의 땅: 듀랑고〉 서버 관리 배포 이야기Chanwoong Kim
 

What's hot (20)

[네전따] 네트워크 엔지니어에게 쿠버네티스는 어떤 의미일까요
[네전따] 네트워크 엔지니어에게 쿠버네티스는 어떤 의미일까요[네전따] 네트워크 엔지니어에게 쿠버네티스는 어떤 의미일까요
[네전따] 네트워크 엔지니어에게 쿠버네티스는 어떤 의미일까요
 
Pwning mobile apps without root or jailbreak
Pwning mobile apps without root or jailbreakPwning mobile apps without root or jailbreak
Pwning mobile apps without root or jailbreak
 
How VXLAN works on Linux
How VXLAN works on LinuxHow VXLAN works on Linux
How VXLAN works on Linux
 
Janus + Audio @ Open Source World
Janus + Audio @ Open Source WorldJanus + Audio @ Open Source World
Janus + Audio @ Open Source World
 
Ndc17 DevOps? DevOps개발자? 북미에서의 6년
Ndc17 DevOps? DevOps개발자? 북미에서의 6년Ndc17 DevOps? DevOps개발자? 북미에서의 6년
Ndc17 DevOps? DevOps개발자? 북미에서의 6년
 
Python과 Git으로 만드는 모바일 게임 패치 시스템
Python과 Git으로 만드는 모바일 게임 패치 시스템Python과 Git으로 만드는 모바일 게임 패치 시스템
Python과 Git으로 만드는 모바일 게임 패치 시스템
 
Janus & docker: friends or foe
Janus & docker: friends or foe Janus & docker: friends or foe
Janus & docker: friends or foe
 
Hacking Adobe Experience Manager sites
Hacking Adobe Experience Manager sitesHacking Adobe Experience Manager sites
Hacking Adobe Experience Manager sites
 
Traffic Control with Envoy Proxy
Traffic Control with Envoy ProxyTraffic Control with Envoy Proxy
Traffic Control with Envoy Proxy
 
ネットワークエンジニアのための Puppet / Chef
ネットワークエンジニアのための Puppet / Chefネットワークエンジニアのための Puppet / Chef
ネットワークエンジニアのための Puppet / Chef
 
쿠버네티스를 이용한 기능 브랜치별 테스트 서버 만들기 (GitOps CI/CD)
쿠버네티스를 이용한 기능 브랜치별 테스트 서버 만들기 (GitOps CI/CD)쿠버네티스를 이용한 기능 브랜치별 테스트 서버 만들기 (GitOps CI/CD)
쿠버네티스를 이용한 기능 브랜치별 테스트 서버 만들기 (GitOps CI/CD)
 
Locking down your Kubernetes cluster with Linkerd
Locking down your Kubernetes cluster with LinkerdLocking down your Kubernetes cluster with Linkerd
Locking down your Kubernetes cluster with Linkerd
 
Scale Kubernetes to support 50000 services
Scale Kubernetes to support 50000 servicesScale Kubernetes to support 50000 services
Scale Kubernetes to support 50000 services
 
ROS/ROS2 Distributed System with Kubernetes
ROS/ROS2 Distributed System with KubernetesROS/ROS2 Distributed System with Kubernetes
ROS/ROS2 Distributed System with Kubernetes
 
Cilium - Bringing the BPF Revolution to Kubernetes Networking and Security
Cilium - Bringing the BPF Revolution to Kubernetes Networking and SecurityCilium - Bringing the BPF Revolution to Kubernetes Networking and Security
Cilium - Bringing the BPF Revolution to Kubernetes Networking and Security
 
Tutorial: Using GoBGP as an IXP connecting router
Tutorial: Using GoBGP as an IXP connecting routerTutorial: Using GoBGP as an IXP connecting router
Tutorial: Using GoBGP as an IXP connecting router
 
〈야생의 땅: 듀랑고〉 서버 아키텍처 Vol. 3
〈야생의 땅: 듀랑고〉 서버 아키텍처 Vol. 3〈야생의 땅: 듀랑고〉 서버 아키텍처 Vol. 3
〈야생의 땅: 듀랑고〉 서버 아키텍처 Vol. 3
 
User Acquisition Campaigns: Web vs. App w/ Morgan Brown
User Acquisition Campaigns: Web vs. App w/ Morgan BrownUser Acquisition Campaigns: Web vs. App w/ Morgan Brown
User Acquisition Campaigns: Web vs. App w/ Morgan Brown
 
jq: JSON - Like a Boss
jq: JSON - Like a Bossjq: JSON - Like a Boss
jq: JSON - Like a Boss
 
[NDC18] 만들고 붓고 부수고 - 〈야생의 땅: 듀랑고〉 서버 관리 배포 이야기
[NDC18] 만들고 붓고 부수고 - 〈야생의 땅: 듀랑고〉 서버 관리 배포 이야기[NDC18] 만들고 붓고 부수고 - 〈야생의 땅: 듀랑고〉 서버 관리 배포 이야기
[NDC18] 만들고 붓고 부수고 - 〈야생의 땅: 듀랑고〉 서버 관리 배포 이야기
 

Similar to The challenges of hybrid meetings @ CommCon 2023

WebRTC, RED and Janus @ ClueCon21
WebRTC, RED and Janus @ ClueCon21WebRTC, RED and Janus @ ClueCon21
WebRTC, RED and Janus @ ClueCon21Lorenzo Miniero
 
Write a SocialTV app @ OpenSIPS 2021
Write a SocialTV app @ OpenSIPS 2021Write a SocialTV app @ OpenSIPS 2021
Write a SocialTV app @ OpenSIPS 2021Lorenzo Miniero
 
WebRTC Broadcasting @ TADSummit 2023
WebRTC Broadcasting @ TADSummit 2023WebRTC Broadcasting @ TADSummit 2023
WebRTC Broadcasting @ TADSummit 2023Lorenzo Miniero
 
Turning live events to virtual with Janus
Turning live events to virtual with JanusTurning live events to virtual with Janus
Turning live events to virtual with JanusLorenzo Miniero
 
Multistream in Janus @ CommCon 2019
Multistream in Janus @ CommCon 2019Multistream in Janus @ CommCon 2019
Multistream in Janus @ CommCon 2019Lorenzo Miniero
 
WebRTC Rockstars Asian Tour 2017
WebRTC Rockstars Asian Tour 2017WebRTC Rockstars Asian Tour 2017
WebRTC Rockstars Asian Tour 2017Lorenzo Miniero
 
Janus Workshop @ ClueCon 2020
Janus Workshop @ ClueCon 2020Janus Workshop @ ClueCon 2020
Janus Workshop @ ClueCon 2020Lorenzo Miniero
 
Janus + NDI @ ClueCon 2021
Janus + NDI @ ClueCon 2021Janus + NDI @ ClueCon 2021
Janus + NDI @ ClueCon 2021Lorenzo Miniero
 
Janus/Asterisk @ Astricon 2017
Janus/Asterisk @ Astricon 2017Janus/Asterisk @ Astricon 2017
Janus/Asterisk @ Astricon 2017Lorenzo Miniero
 
JamRTC @ Wonder WebRTC unConference
JamRTC @ Wonder WebRTC unConferenceJamRTC @ Wonder WebRTC unConference
JamRTC @ Wonder WebRTC unConferenceLorenzo Miniero
 
WHIP WebRTC Broadcasting @ FOSDEM 2022
WHIP WebRTC Broadcasting @ FOSDEM 2022WHIP WebRTC Broadcasting @ FOSDEM 2022
WHIP WebRTC Broadcasting @ FOSDEM 2022Lorenzo Miniero
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024Lorenzo Miniero
 
Can SFUs and MCUs be friends @ IIT-RTC 2020
Can SFUs and MCUs be friends @ IIT-RTC 2020Can SFUs and MCUs be friends @ IIT-RTC 2020
Can SFUs and MCUs be friends @ IIT-RTC 2020Lorenzo Miniero
 
Janus/SIP @ OpenSIPS 2019
Janus/SIP @ OpenSIPS 2019Janus/SIP @ OpenSIPS 2019
Janus/SIP @ OpenSIPS 2019Lorenzo Miniero
 
WHIP and Janus @ IIT-RTC 2021
WHIP and Janus @ IIT-RTC 2021WHIP and Janus @ IIT-RTC 2021
WHIP and Janus @ IIT-RTC 2021Lorenzo Miniero
 
Janus @ WebRTC Meetup Stockholm
Janus @ WebRTC Meetup StockholmJanus @ WebRTC Meetup Stockholm
Janus @ WebRTC Meetup StockholmLorenzo Miniero
 
Can WebRTC help musicians? @ FOSDEM 2021
Can WebRTC help musicians? @ FOSDEM 2021Can WebRTC help musicians? @ FOSDEM 2021
Can WebRTC help musicians? @ FOSDEM 2021Lorenzo Miniero
 
Janus/SIP @ OpenSIPS 2017
Janus/SIP @ OpenSIPS 2017Janus/SIP @ OpenSIPS 2017
Janus/SIP @ OpenSIPS 2017Lorenzo Miniero
 

Similar to The challenges of hybrid meetings @ CommCon 2023 (20)

WebRTC, RED and Janus @ ClueCon21
WebRTC, RED and Janus @ ClueCon21WebRTC, RED and Janus @ ClueCon21
WebRTC, RED and Janus @ ClueCon21
 
Write a SocialTV app @ OpenSIPS 2021
Write a SocialTV app @ OpenSIPS 2021Write a SocialTV app @ OpenSIPS 2021
Write a SocialTV app @ OpenSIPS 2021
 
WebRTC Broadcasting @ TADSummit 2023
WebRTC Broadcasting @ TADSummit 2023WebRTC Broadcasting @ TADSummit 2023
WebRTC Broadcasting @ TADSummit 2023
 
Janus @ ClueCon 2019
Janus @ ClueCon 2019Janus @ ClueCon 2019
Janus @ ClueCon 2019
 
Turning live events to virtual with Janus
Turning live events to virtual with JanusTurning live events to virtual with Janus
Turning live events to virtual with Janus
 
Multistream in Janus @ CommCon 2019
Multistream in Janus @ CommCon 2019Multistream in Janus @ CommCon 2019
Multistream in Janus @ CommCon 2019
 
Janus @ RTC2017 Beijing
Janus @ RTC2017 BeijingJanus @ RTC2017 Beijing
Janus @ RTC2017 Beijing
 
WebRTC Rockstars Asian Tour 2017
WebRTC Rockstars Asian Tour 2017WebRTC Rockstars Asian Tour 2017
WebRTC Rockstars Asian Tour 2017
 
Janus Workshop @ ClueCon 2020
Janus Workshop @ ClueCon 2020Janus Workshop @ ClueCon 2020
Janus Workshop @ ClueCon 2020
 
Janus + NDI @ ClueCon 2021
Janus + NDI @ ClueCon 2021Janus + NDI @ ClueCon 2021
Janus + NDI @ ClueCon 2021
 
Janus/Asterisk @ Astricon 2017
Janus/Asterisk @ Astricon 2017Janus/Asterisk @ Astricon 2017
Janus/Asterisk @ Astricon 2017
 
JamRTC @ Wonder WebRTC unConference
JamRTC @ Wonder WebRTC unConferenceJamRTC @ Wonder WebRTC unConference
JamRTC @ Wonder WebRTC unConference
 
WHIP WebRTC Broadcasting @ FOSDEM 2022
WHIP WebRTC Broadcasting @ FOSDEM 2022WHIP WebRTC Broadcasting @ FOSDEM 2022
WHIP WebRTC Broadcasting @ FOSDEM 2022
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024
 
Can SFUs and MCUs be friends @ IIT-RTC 2020
Can SFUs and MCUs be friends @ IIT-RTC 2020Can SFUs and MCUs be friends @ IIT-RTC 2020
Can SFUs and MCUs be friends @ IIT-RTC 2020
 
Janus/SIP @ OpenSIPS 2019
Janus/SIP @ OpenSIPS 2019Janus/SIP @ OpenSIPS 2019
Janus/SIP @ OpenSIPS 2019
 
WHIP and Janus @ IIT-RTC 2021
WHIP and Janus @ IIT-RTC 2021WHIP and Janus @ IIT-RTC 2021
WHIP and Janus @ IIT-RTC 2021
 
Janus @ WebRTC Meetup Stockholm
Janus @ WebRTC Meetup StockholmJanus @ WebRTC Meetup Stockholm
Janus @ WebRTC Meetup Stockholm
 
Can WebRTC help musicians? @ FOSDEM 2021
Can WebRTC help musicians? @ FOSDEM 2021Can WebRTC help musicians? @ FOSDEM 2021
Can WebRTC help musicians? @ FOSDEM 2021
 
Janus/SIP @ OpenSIPS 2017
Janus/SIP @ OpenSIPS 2017Janus/SIP @ OpenSIPS 2017
Janus/SIP @ OpenSIPS 2017
 

More from Lorenzo Miniero

Getting AV1/SVC to work in the Janus WebRTC Server
Getting AV1/SVC to work in the Janus WebRTC ServerGetting AV1/SVC to work in the Janus WebRTC Server
Getting AV1/SVC to work in the Janus WebRTC ServerLorenzo Miniero
 
Real-Time Text and WebRTC @ Kamailio World 2023
Real-Time Text and WebRTC @ Kamailio World 2023Real-Time Text and WebRTC @ Kamailio World 2023
Real-Time Text and WebRTC @ Kamailio World 2023Lorenzo Miniero
 
Become a rockstar using FOSS!
Become a rockstar using FOSS!Become a rockstar using FOSS!
Become a rockstar using FOSS!Lorenzo Miniero
 
Scaling WebRTC deployments with multicast @ IETF 110 MBONED
Scaling WebRTC deployments with multicast @ IETF 110 MBONEDScaling WebRTC deployments with multicast @ IETF 110 MBONED
Scaling WebRTC deployments with multicast @ IETF 110 MBONEDLorenzo Miniero
 
Janus Workshop pt.2 @ ClueCon 2021
Janus Workshop pt.2 @ ClueCon 2021Janus Workshop pt.2 @ ClueCon 2021
Janus Workshop pt.2 @ ClueCon 2021Lorenzo Miniero
 
Virtual IETF meetings with WebRTC @ IETF 109 MOPS
Virtual IETF meetings with WebRTC @ IETF 109 MOPSVirtual IETF meetings with WebRTC @ IETF 109 MOPS
Virtual IETF meetings with WebRTC @ IETF 109 MOPSLorenzo Miniero
 
Insertable Streams and E2EE @ ClueCon2020
Insertable Streams and E2EE @ ClueCon2020Insertable Streams and E2EE @ ClueCon2020
Insertable Streams and E2EE @ ClueCon2020Lorenzo Miniero
 
Janus workshop @ RTC2019 Beijing
Janus workshop @ RTC2019 BeijingJanus workshop @ RTC2019 Beijing
Janus workshop @ RTC2019 BeijingLorenzo Miniero
 
Simulcast/SVC @ IIT-RTC 2019
Simulcast/SVC @ IIT-RTC 2019Simulcast/SVC @ IIT-RTC 2019
Simulcast/SVC @ IIT-RTC 2019Lorenzo Miniero
 
Fuzzing Janus @ IPTComm 2019
Fuzzing Janus @ IPTComm 2019Fuzzing Janus @ IPTComm 2019
Fuzzing Janus @ IPTComm 2019Lorenzo Miniero
 
Welcome to JanusCon! -- Past, Present and Future of Janus
Welcome to JanusCon! -- Past, Present and Future of JanusWelcome to JanusCon! -- Past, Present and Future of Janus
Welcome to JanusCon! -- Past, Present and Future of JanusLorenzo Miniero
 

More from Lorenzo Miniero (12)

Getting AV1/SVC to work in the Janus WebRTC Server
Getting AV1/SVC to work in the Janus WebRTC ServerGetting AV1/SVC to work in the Janus WebRTC Server
Getting AV1/SVC to work in the Janus WebRTC Server
 
BWE in Janus
BWE in JanusBWE in Janus
BWE in Janus
 
Real-Time Text and WebRTC @ Kamailio World 2023
Real-Time Text and WebRTC @ Kamailio World 2023Real-Time Text and WebRTC @ Kamailio World 2023
Real-Time Text and WebRTC @ Kamailio World 2023
 
Become a rockstar using FOSS!
Become a rockstar using FOSS!Become a rockstar using FOSS!
Become a rockstar using FOSS!
 
Scaling WebRTC deployments with multicast @ IETF 110 MBONED
Scaling WebRTC deployments with multicast @ IETF 110 MBONEDScaling WebRTC deployments with multicast @ IETF 110 MBONED
Scaling WebRTC deployments with multicast @ IETF 110 MBONED
 
Janus Workshop pt.2 @ ClueCon 2021
Janus Workshop pt.2 @ ClueCon 2021Janus Workshop pt.2 @ ClueCon 2021
Janus Workshop pt.2 @ ClueCon 2021
 
Virtual IETF meetings with WebRTC @ IETF 109 MOPS
Virtual IETF meetings with WebRTC @ IETF 109 MOPSVirtual IETF meetings with WebRTC @ IETF 109 MOPS
Virtual IETF meetings with WebRTC @ IETF 109 MOPS
 
Insertable Streams and E2EE @ ClueCon2020
Insertable Streams and E2EE @ ClueCon2020Insertable Streams and E2EE @ ClueCon2020
Insertable Streams and E2EE @ ClueCon2020
 
Janus workshop @ RTC2019 Beijing
Janus workshop @ RTC2019 BeijingJanus workshop @ RTC2019 Beijing
Janus workshop @ RTC2019 Beijing
 
Simulcast/SVC @ IIT-RTC 2019
Simulcast/SVC @ IIT-RTC 2019Simulcast/SVC @ IIT-RTC 2019
Simulcast/SVC @ IIT-RTC 2019
 
Fuzzing Janus @ IPTComm 2019
Fuzzing Janus @ IPTComm 2019Fuzzing Janus @ IPTComm 2019
Fuzzing Janus @ IPTComm 2019
 
Welcome to JanusCon! -- Past, Present and Future of Janus
Welcome to JanusCon! -- Past, Present and Future of JanusWelcome to JanusCon! -- Past, Present and Future of Janus
Welcome to JanusCon! -- Past, Present and Future of Janus
 

Recently uploaded

Benefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksBenefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksSoftradix Technologies
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking MenDelhi Call girls
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountPuma Security, LLC
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking MenDelhi Call girls
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 3652toLead Limited
 
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024BookNet Canada
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024BookNet Canada
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...shyamraj55
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machinePadma Pradeep
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationRidwan Fadjar
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdfhans926745
 
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...HostedbyConfluent
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesSinan KOZAK
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticscarlostorres15106
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
How to Remove Document Management Hurdles with X-Docs?
How to Remove Document Management Hurdles with X-Docs?How to Remove Document Management Hurdles with X-Docs?
How to Remove Document Management Hurdles with X-Docs?XfilesPro
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking MenDelhi Call girls
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptxHampshireHUG
 
Pigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slidespraypatel2
 

Recently uploaded (20)

Benefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksBenefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other Frameworks
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path Mount
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
 
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machine
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 Presentation
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen Frames
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
How to Remove Document Management Hurdles with X-Docs?
How to Remove Document Management Hurdles with X-Docs?How to Remove Document Management Hurdles with X-Docs?
How to Remove Document Management Hurdles with X-Docs?
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
Pigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food Manufacturing
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 

The challenges of hybrid meetings @ CommCon 2023

  • 1. The challenges of hybrid meetings Lorenzo Miniero @lminiero@fosstodon.org CommCon 2023 June 20th 2023, Mercure Blackburn Dunkenhalgh Hotel & Spa (UK)
  • 2. I’ve been doing VoIP/WebRTC for way too long! Lorenzo Miniero • Ph.D @ UniNA • Chairman @ Meetecho • Main author of Janus Contacts and info • lorenzo@meetecho.com • https://fosstodon.org/@lminiero • https://www.slideshare.net/LorenzoMiniero • https://lminiero.bandcamp.com
  • 3. Just a few words on Meetecho • Co-founded in 2009 as an academic spin-off • University research efforts brought to the market • Completely independent from the University • Focus on real-time multimedia applications • Strong perspective on standardization and open source • Several activities • Consulting services • Commercial support and Janus licenses • Streaming of live events (IETF, RIPE, etc.) • Proudly brewed in sunny Napoli(*), Italy
  • 4. Just a few words on Meetecho • Co-founded in 2009 as an academic spin-off • University research efforts brought to the market • Completely independent from the University • Focus on real-time multimedia applications • Strong perspective on standardization and open source • Several activities • Consulting services • Commercial support and Janus licenses • Streaming of live events (IETF, RIPE, etc.) • Proudly brewed in sunny Napoli(*), Italy
  • 6. Streaming live events via WebRTC pre-pandemic • Service we provided for several different events • Mainly IETF (official remote participation tool) and some ACM conferences • A few other events too (a growing business) • Typically involved some specific activities • Fly a couple people + equipment there, of course • Setup cameras, split/capture projector signals, hooks to room mixer • Embed some event-specific channel (e.g., Twitter feed, or Sli.do channel) • ... and then stream everything via WebRTC (sometimes allowing remote speakers) Until the world changed... No more live events in person for a while!
  • 7. Streaming live events via WebRTC pre-pandemic • Service we provided for several different events • Mainly IETF (official remote participation tool) and some ACM conferences • A few other events too (a growing business) • Typically involved some specific activities • Fly a couple people + equipment there, of course • Setup cameras, split/capture projector signals, hooks to room mixer • Embed some event-specific channel (e.g., Twitter feed, or Sli.do channel) • ... and then stream everything via WebRTC (sometimes allowing remote speakers) Until the world changed... No more live events in person for a while!
  • 8. Streaming live events via WebRTC pre-pandemic • Service we provided for several different events • Mainly IETF (official remote participation tool) and some ACM conferences • A few other events too (a growing business) • Typically involved some specific activities • Fly a couple people + equipment there, of course • Setup cameras, split/capture projector signals, hooks to room mixer • Embed some event-specific channel (e.g., Twitter feed, or Sli.do channel) • ... and then stream everything via WebRTC (sometimes allowing remote speakers) Until the world changed... No more live events in person for a while!
  • 9. A look at how that worked for IETF meetings
  • 10. A look at how that worked for IETF meetings
  • 11. A look at how that worked for IETF meetings
  • 12. A look at how that worked for IETF meetings
  • 13. A look at how that worked for IETF meetings
  • 14. A look at how that worked for IETF meetings
  • 15. A look at how that worked for IETF meetings
  • 16. A look at how that worked for IETF meetings
  • 17. A look at how that worked for IETF meetings
  • 18. A simpler approach for other conferences (e.g., ACM)
  • 19. Streaming JanusCon (no remote pizza, though)
  • 20. Then a global pandemic hit...
  • 21. Then a global pandemic hit...
  • 22. Reinventing the platform to go fully virtual https://commcon.xyz/session/turning-live-events-to-virtual-with-janus
  • 23. Eating our own dog food Janus General purpose, open source WebRTC server • https://github.com/meetecho/janus-gateway • Demos and documentation: https://janus.conf.meetecho.com • Community: https://janus.discourse.group/
  • 24. Eating our own dog food https://www.slideshare.net/LorenzoMiniero/scaling-webrtc-applications-with-janus https://www.youtube.com/watch?v=zxRwELmyWU0
  • 25. Mixed Audio + Streaming
  • 26. Mixed Audio + Streaming
  • 27. Mixed Audio + Streaming
  • 28. SFU Video + Streaming
  • 29. SFU Video + Streaming
  • 30. Bringing it all together for Virtual Events
  • 31. Bringing it all together for Virtual Events
  • 32. Bringing it all together for Virtual Events
  • 33. Bringing it all together for Virtual Events
  • 34. Then, eventually, the world started opening up again
  • 35. New challenges to overcome • Before the pandemic, remote participants were few and far between • Limited number of remote presentations • Occasional remote question from the queue • Focus was more on the venue and the local attendees • In virtual platform, remote participants were not 2nd class citizens anymore... • ... they were the only ones there! • Every functionality shared with all other attendees • After the pandemic, what to expect from a “hybrid” meeting instead? • At the very least, a much more even distribution • ~50% local attendees, ~50% remote participants • How to get them to seamlessly interact with each other?
  • 36. New challenges to overcome • Before the pandemic, remote participants were few and far between • Limited number of remote presentations • Occasional remote question from the queue • Focus was more on the venue and the local attendees • In virtual platform, remote participants were not 2nd class citizens anymore... • ... they were the only ones there! • Every functionality shared with all other attendees • After the pandemic, what to expect from a “hybrid” meeting instead? • At the very least, a much more even distribution • ~50% local attendees, ~50% remote participants • How to get them to seamlessly interact with each other?
  • 37. New challenges to overcome • Before the pandemic, remote participants were few and far between • Limited number of remote presentations • Occasional remote question from the queue • Focus was more on the venue and the local attendees • In virtual platform, remote participants were not 2nd class citizens anymore... • ... they were the only ones there! • Every functionality shared with all other attendees • After the pandemic, what to expect from a “hybrid” meeting instead? • At the very least, a much more even distribution • ~50% local attendees, ~50% remote participants • How to get them to seamlessly interact with each other?
  • 38. What about the infrastructure? • Pretty much the same as the virtual one! • Needed to accomodate potentially large remote attendance • Feeds from the venue can be scaled automatically as “virtual participants” • Streams from the room similar to before, with a few tweaks • Audio mixer is now the Janus AudioBridge, not SIP-based • Static video feeds are not static anymore, but dynamic • Support for multiple cameras per room • Local and remote streams can be consumed dynamically in the venue • e.g., slides (more on that later) • Remote presenters to display in the room • Virtual queues, polls, transcriptions, etc.
  • 39. What about the infrastructure? • Pretty much the same as the virtual one! • Needed to accomodate potentially large remote attendance • Feeds from the venue can be scaled automatically as “virtual participants” • Streams from the room similar to before, with a few tweaks • Audio mixer is now the Janus AudioBridge, not SIP-based • Static video feeds are not static anymore, but dynamic • Support for multiple cameras per room • Local and remote streams can be consumed dynamically in the venue • e.g., slides (more on that later) • Remote presenters to display in the room • Virtual queues, polls, transcriptions, etc.
  • 40. What about the infrastructure? • Pretty much the same as the virtual one! • Needed to accomodate potentially large remote attendance • Feeds from the venue can be scaled automatically as “virtual participants” • Streams from the room similar to before, with a few tweaks • Audio mixer is now the Janus AudioBridge, not SIP-based • Static video feeds are not static anymore, but dynamic • Support for multiple cameras per room • Local and remote streams can be consumed dynamically in the venue • e.g., slides (more on that later) • Remote presenters to display in the room • Virtual queues, polls, transcriptions, etc.
  • 41. Handling local and remote audio (before)
  • 42. Handling local and remote audio (now)
  • 43. Static camera and projector (before)
  • 44. Adding cameras and making video more dynamic
  • 45. Adding cameras and making video more dynamic
  • 46. Adding cameras and making video more dynamic
  • 47. What about the duplicated feed from the projector? • Before the pandemic, we’d use a splitter • Local attendee would plug the laptop to the splitter • Splitter would feed the content to projector and our streamer • Streamer would send the content as video remotely • Got rid of that for fully hybrid events • All presentation content is always shared via Meetecho, even when local • Presentation can be light (preloaded slides) or WebRTC-based • In the venue, agent shows slides/screen feed on main screen • This allows to never worry about local vs. remote content • No matter where it’s from, it’s published via WebRTC (or preloaded slides) • No matter where it’s from, local and remote attendees consume it the same way
  • 48. What about the duplicated feed from the projector? • Before the pandemic, we’d use a splitter • Local attendee would plug the laptop to the splitter • Splitter would feed the content to projector and our streamer • Streamer would send the content as video remotely • Got rid of that for fully hybrid events • All presentation content is always shared via Meetecho, even when local • Presentation can be light (preloaded slides) or WebRTC-based • In the venue, agent shows slides/screen feed on main screen • This allows to never worry about local vs. remote content • No matter where it’s from, it’s published via WebRTC (or preloaded slides) • No matter where it’s from, local and remote attendees consume it the same way
  • 49. What about the duplicated feed from the projector? • Before the pandemic, we’d use a splitter • Local attendee would plug the laptop to the splitter • Splitter would feed the content to projector and our streamer • Streamer would send the content as video remotely • Got rid of that for fully hybrid events • All presentation content is always shared via Meetecho, even when local • Presentation can be light (preloaded slides) or WebRTC-based • In the venue, agent shows slides/screen feed on main screen • This allows to never worry about local vs. remote content • No matter where it’s from, it’s published via WebRTC (or preloaded slides) • No matter where it’s from, local and remote attendees consume it the same way
  • 50. Displaying content in the venue (before)
  • 51. Displaying content in the venue (now)
  • 52. Displaying content in the venue (now)
  • 53. One queue to rule them all! • Historically, the IETF relied on mic lines for queues • You’d stand up in line and wait for your turn • Caused issues with remote speakers (when was their turn?) • Partially handled at the time with “Pacman ghosts” + Big Red Button • In fully virtual platform, not an issue • Everyone remote, so everyone in the same queue! • More of a problem in hybrid scenario • Many remote and local attendees alike • Solved by putting them all in the same queue • Local attendees use “companion” web app to get in line • No need to stand in line, they can do that when it’s their turn
  • 54. One queue to rule them all! • Historically, the IETF relied on mic lines for queues • You’d stand up in line and wait for your turn • Caused issues with remote speakers (when was their turn?) • Partially handled at the time with “Pacman ghosts” + Big Red Button • In fully virtual platform, not an issue • Everyone remote, so everyone in the same queue! • More of a problem in hybrid scenario • Many remote and local attendees alike • Solved by putting them all in the same queue • Local attendees use “companion” web app to get in line • No need to stand in line, they can do that when it’s their turn
  • 55. One queue to rule them all! • Historically, the IETF relied on mic lines for queues • You’d stand up in line and wait for your turn • Caused issues with remote speakers (when was their turn?) • Partially handled at the time with “Pacman ghosts” + Big Red Button • In fully virtual platform, not an issue • Everyone remote, so everyone in the same queue! • More of a problem in hybrid scenario • Many remote and local attendees alike • Solved by putting them all in the same queue • Local attendees use “companion” web app to get in line • No need to stand in line, they can do that when it’s their turn
  • 56. One queue to rule them all! • Historically, the IETF relied on mic lines for queues • You’d stand up in line and wait for your turn • Caused issues with remote speakers (when was their turn?) • Partially handled at the time with “Pacman ghosts” + Big Red Button • In fully virtual platform, not an issue • Everyone remote, so everyone in the same queue! • More of a problem in hybrid scenario • Many remote and local attendees alike • Solved by putting them all in the same queue • Local attendees use “companion” web app to get in line • No need to stand in line, they can do that when it’s their turn
  • 57. Using the full Meetecho tool
  • 58. Using the on-site Meetecho tool
  • 59. Using the on-site Meetecho tool
  • 60. Displaying the queue in the room
  • 61. The on-site Meetecho tool • Via QR code, but also easily accessible from the main agenda • Uses same credentials to authenticate • Presents limited set of Meetecho features • Allows local attendees to use some “remote” features seamlessly • Getting in line to talk (queue) • Advancing slides, if preloaded (remote clicker) • Raising/not raising hands when needed (polls) • Local attendees recognized from remote ones • Queue displays different icons depending on device/location • “Bluesheets” automatically filled in
  • 62. The on-site Meetecho tool • Via QR code, but also easily accessible from the main agenda • Uses same credentials to authenticate • Presents limited set of Meetecho features • Allows local attendees to use some “remote” features seamlessly • Getting in line to talk (queue) • Advancing slides, if preloaded (remote clicker) • Raising/not raising hands when needed (polls) • Local attendees recognized from remote ones • Queue displays different icons depending on device/location • “Bluesheets” automatically filled in
  • 63. The on-site Meetecho tool • Via QR code, but also easily accessible from the main agenda • Uses same credentials to authenticate • Presents limited set of Meetecho features • Allows local attendees to use some “remote” features seamlessly • Getting in line to talk (queue) • Advancing slides, if preloaded (remote clicker) • Raising/not raising hands when needed (polls) • Local attendees recognized from remote ones • Queue displays different icons depending on device/location • “Bluesheets” automatically filled in
  • 64. Show of hands (“hum” replacement)
  • 65. New from IETF 116: live transcriptions
  • 66. New from IETF 116: live transcriptions
  • 67. New from IETF 116: live transcriptions
  • 68. New from IETF 116: live transcriptions
  • 69. Shared bus to control all the local agents • Every device in the venue rooms has an agent to control it remotely • Audio bridge device • Raspberry Pis controlling cameras and screen duplication • Raspberry Pis to display content on main and second screen • All devices register at a controller and wait for commands • Dynamic behaviour can be orchestrated remotely (e.g., from the NOC) • Multiple actions that can be triggered • e.g., start/stop audio, change gains, etc. • e.g., start/stop cameras, pan/tilt/zoom, etc. • e.g., start/stop content displays, reset/restart, etc.
  • 70. Shared bus to control all the local agents • Every device in the venue rooms has an agent to control it remotely • Audio bridge device • Raspberry Pis controlling cameras and screen duplication • Raspberry Pis to display content on main and second screen • All devices register at a controller and wait for commands • Dynamic behaviour can be orchestrated remotely (e.g., from the NOC) • Multiple actions that can be triggered • e.g., start/stop audio, change gains, etc. • e.g., start/stop cameras, pan/tilt/zoom, etc. • e.g., start/stop content displays, reset/restart, etc.
  • 71. Shared bus to control all the local agents • Every device in the venue rooms has an agent to control it remotely • Audio bridge device • Raspberry Pis controlling cameras and screen duplication • Raspberry Pis to display content on main and second screen • All devices register at a controller and wait for commands • Dynamic behaviour can be orchestrated remotely (e.g., from the NOC) • Multiple actions that can be triggered • e.g., start/stop audio, change gains, etc. • e.g., start/stop cameras, pan/tilt/zoom, etc. • e.g., start/stop content displays, reset/restart, etc.
  • 77. What about NDI? • Wrote about this a few times • https://www.meetecho.com/blog/webrtc-ndi/ • https://www.meetecho.com/blog/webrtc-ndi-part-2/ • Spoke about this a few times too • ClueCon: https://youtu.be/RZ58vapWfUw?t=1755 • CommCon: https://2021.commcon.xyz/talks/whip-ndi-and-janus-genesis-of-a-broadcasting-demo • Used in practice @ CommCon 2021 • Janus NDI plugin part of early Broadcaster.vc stack • Could be very useful for patching streams in/out of the venue • Better interaction with AV team workflows • Not currently used in our own workflows (yet?), though
  • 78. What about NDI? • Wrote about this a few times • https://www.meetecho.com/blog/webrtc-ndi/ • https://www.meetecho.com/blog/webrtc-ndi-part-2/ • Spoke about this a few times too • ClueCon: https://youtu.be/RZ58vapWfUw?t=1755 • CommCon: https://2021.commcon.xyz/talks/whip-ndi-and-janus-genesis-of-a-broadcasting-demo • Used in practice @ CommCon 2021 • Janus NDI plugin part of early Broadcaster.vc stack • Could be very useful for patching streams in/out of the venue • Better interaction with AV team workflows • Not currently used in our own workflows (yet?), though
  • 79. What about NDI? • Wrote about this a few times • https://www.meetecho.com/blog/webrtc-ndi/ • https://www.meetecho.com/blog/webrtc-ndi-part-2/ • Spoke about this a few times too • ClueCon: https://youtu.be/RZ58vapWfUw?t=1755 • CommCon: https://2021.commcon.xyz/talks/whip-ndi-and-janus-genesis-of-a-broadcasting-demo • Used in practice @ CommCon 2021 • Janus NDI plugin part of early Broadcaster.vc stack • Could be very useful for patching streams in/out of the venue • Better interaction with AV team workflows • Not currently used in our own workflows (yet?), though
  • 80. What about NDI? • Wrote about this a few times • https://www.meetecho.com/blog/webrtc-ndi/ • https://www.meetecho.com/blog/webrtc-ndi-part-2/ • Spoke about this a few times too • ClueCon: https://youtu.be/RZ58vapWfUw?t=1755 • CommCon: https://2021.commcon.xyz/talks/whip-ndi-and-janus-genesis-of-a-broadcasting-demo • Used in practice @ CommCon 2021 • Janus NDI plugin part of early Broadcaster.vc stack • Could be very useful for patching streams in/out of the venue • Better interaction with AV team workflows • Not currently used in our own workflows (yet?), though
  • 81. What’s next? • A refactoring of the web UI • Almost finished! • Completely redesigned the UI, to make it mobile-ready too • Better usage of the ton of features we added (and add!) over time • Improvements on transcription • Works fine already, but needs tailoring to specific context(s) • Expanding the events base • Bespoke solutions for big customers (e.g., IETF, RIPE, etc.) • Doing the same for other events, possibly with modular feature set
  • 82. What’s next? • A refactoring of the web UI • Almost finished! • Completely redesigned the UI, to make it mobile-ready too • Better usage of the ton of features we added (and add!) over time • Improvements on transcription • Works fine already, but needs tailoring to specific context(s) • Expanding the events base • Bespoke solutions for big customers (e.g., IETF, RIPE, etc.) • Doing the same for other events, possibly with modular feature set
  • 83. What’s next? • A refactoring of the web UI • Almost finished! • Completely redesigned the UI, to make it mobile-ready too • Better usage of the ton of features we added (and add!) over time • Improvements on transcription • Works fine already, but needs tailoring to specific context(s) • Expanding the events base • Bespoke solutions for big customers (e.g., IETF, RIPE, etc.) • Doing the same for other events, possibly with modular feature set
  • 84. Thanks! Questions? Comments? Get in touch! • https://fosstodon.org/@lminiero • https://twitter.com/elminiero • https://twitter.com/meetecho • https://twitter.com/januswebrtc • https://www.meetecho.com/blog/