ashark / hliss Goto Github PK
View Code? Open in Web Editor NEWShare only individual screen via hangouts
Share only individual screen via hangouts
I have noticed, that some windows are invisible in window chooser in Hangouts.
For example Krita window.
archlinux 4.16.6-1-ARCH
krita 4.0.2
Chromium 66.0.3359.139 Arch Linux
KDE Plasma 5.12.5
KDE Frameworks 5.45.0
Qt 5.10.1
We should explore why this is happening.
Actually this should go to chromium bugtracker, but I will left it here.
I was thinking if wouldn't be great have a configuration to make possible to capture at some resolution e render in another (link OBS do).
This could help to lower process usage at old old computers, like mine. I already lowered the FPS.
The following is missing from the documentation:
ffmpeg
, v4l2loopback
)lsusb
need to be added precisely where in fakecamera
rmmod: ERROR: Module v4l2loopback is not currently loaded
I have modified your script to be able to choose a window to share its area.
Or to draw a rectable of the area to be shown.
https://gist.github.com/adrianlzt/216aabb9568b162c92317f768d889c76
Hi,
Trying your script I had the following error: Can't open display :1
Running xrandr
would raise the exact same error.
I don't know much about all that but trying around I fixed it adding DISPLAY=:0.0
before the xrandr
commands.
Just sharing in case someone face the same issue. Maybe there is a proper fix to be done.
Here is my script:
#!/bin/bash
# echo "Probing v4l2-loopback"
sudo rmmod v4l2loopback 2> /dev/null
sudo modprobe v4l2loopback video_nr=7 'card_label=myFakeCam'
DISPLAY=:0.0 xrandr --listactivemonitors
read -p "Which monitor you want to share: " MON_NUMBER
MON_PARSE=`DISPLAY=:0.0 xrandr --listactivemonitors | grep "$MON_NUMBER:" | cut -f4 -d' '`
MON_HEIGHT=`echo $MON_PARSE | cut -f2 -d'/' | cut -f2 -d'x'`
MON_WIDTH=`echo $MON_PARSE | cut -f1 -d'/'`
MON_X=`echo $MON_PARSE | cut -f2 -d'+'`
MON_Y=`echo $MON_PARSE | cut -f3 -d'+'`
# ffmpeg -f x11grab -r 20 -s 1920x1080 -i :0.0+0,0 -vcodec rawvideo -pix_fmt yuv420p -threads 0 -f v4l2 /dev/video7
ffmpeg -f x11grab -r 20 -s "$MON_WIDTH"x"$MON_HEIGHT" -i :0.0+"$MON_X","$MON_Y" -vcodec rawvideo -pix_fmt yuv420p -threads 0 -f v4l2 /dev/video7
Hi!
At first thanks a lot for your script, it is working great on my ubuntu 18.04 System on WebRTC sessions (Jitsi Web conference). Just a small hint for chrome/chromium users to get the v4l2loopback device working one can use the exclusive_caps=1
flag as described here. The entire modprobe
section then looks like that:
# echo "Probing v4l2-loopback"
sudo rmmod v4l2loopback 2> /dev/null
sudo modprobe v4l2loopback video_nr=7 'card_label=myFakeCam' exclusive_caps=1
Maybe you can put a hint on that in the Readme.md.
I successfully start fakecamera
script on Ubuntu 19.04 with KDE environment, and Firefox shows the one screen, but the image from fake webcam is mirrored in Firefox! How can I mirror it back?
It turns out that when you see that ShareMe window, you tend to minimize it. However in this case a screen sharing will be paused. So it would be useful to remove that minimize button from the window.
I do not know if it is achievable by some parameters of vlc.
But I know you can create a special window rule in KDE that will do it for you.
It seems like chromium do not list virtual /dev/videoN devices anymore even when using reinsert-internal-webcam script or actually reinsering some physical webcam or restarting chromium.
It only displays usb web cameras.
You can open chrome://settings/content/camera in new tab and see, that it updates list of webcameras rather frequent. For example for me webcam dissappears immediately from list after ejecting, and appears after around 4 seconds after inserting.
Not sure if it is caused by browser update, I suspect maybe some other system component involved.
Versions when breakage already happened (ArchLinux packages): linux 4.15.3-1, chromium 63.0.3239.84-1
Now when you are sharing screen with vlc-hangouts, then when you want to open some video file, it is played in ShareMe window instead of in separate instance. This behavior is not wanted.
Need to explore if it is possible to run vlc-hangouts in a completely separate instance, while the files opened from file manager should use their own and one instance (i.e. second opened file should be played in a window where first opened file was played).
If you want to vote for native support for working multi-screen screenshare, here's the relevant issue : https://bugs.chromium.org/p/chromium/issues/detail?id=396091
It's not closed, but it's not overly active either.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.