Chia sẻ máy tính để bàn của bạn với Google Hangouts, màn hình kép và Gnome Shell


42

Tôi có một máy tính xách tay với màn hình tích hợp và màn hình kèm theo.

Khi tôi bắt đầu Hangout video của Google và chia sẻ máy tính để bàn của mình, tôi chỉ muốn chia sẻ màn hình đính kèm, nhưng tôi không biết làm thế nào.

Ngay bây giờ tôi có hai màn hình: LVDS1tương ứng với màn hình máy tính xách tay của tôi, được định cấu hình là màn hình phụ và DP1là màn hình chính của tôi. Nhưng vấn đề vẫn còn nếu tôi thay đổi màn hình máy tính xách tay của mình thành màn hình chính.

$ xrandr
Screen 0: minimum 320 x 200, current 3286 x 1468, maximum 8192 x 8192
LVDS1 connected 1366x768+1920+700 (normal left inverted right x axis y axis) 344mm x 194mm
   1366x768      60.06*+
   1024x768      60.00  
   800x600       60.32    56.25  
   640x480       59.94  
VGA1 disconnected (normal left inverted right x axis y axis)
HDMI1 disconnected (normal left inverted right x axis y axis)
DP1 connected primary 1920x1080+0+0 (normal left inverted right x axis y axis) 475mm x 267mm
   1920x1080     60.00*+
   1280x1024     75.02    60.02  
   1152x864      75.00  
   1024x768      75.08    60.00  
   800x600       75.00    60.32  
   640x480       75.00    60.00  
   720x400       70.08  

Bất cứ khi nào tôi bắt đầu chia sẻ máy tính để bàn của mình trong Hangout, chỉ có màn hình tích hợp (nhỏ hơn) được chia sẻ. Điều tốt nhất là có thể chọn cái nào để chia sẻ, nhưng nếu không, làm thế nào tôi chỉ có thể chia sẻ màn hình đính kèm (lớn hơn)?

Tôi cá là Hangout của Google đang tìm kiếm tệp cấu hình để chọn chia sẻ màn hình nào, nhưng không biết đó là tệp nào.

CHÚ THÍCH

Sử dụng Fedora 20, x86_64, Linux 3.15.10-200, Gnome Shell 3.10.4-8, Firefox 31.

LƯU Ý 2

Sử dụng Google Chrome giúp Google Hangouts chia sẻ cả hai màn hình cùng một lúc thay vì chỉ màn hình của máy tính xách tay, điều mà tôi nghĩ thậm chí còn tồi tệ hơn. Vẫn đang cố gắng tìm hiểu làm thế nào tôi có thể chọn màn hình để chia sẻ.


Là một thử nghiệm nếu bạn đặt màn hình phụ của mình qua hộp thoại cài đặt Gnome, hangouts có được mở trên màn hình phụ không?
slm

@slm: Có vẻ như luôn lấy màn hình máy tính xách tay của tôi để chia sẻ. Không có vấn đề nếu nó là màn hình chính hoặc phụ.
Peque

Tôi cũng đã chiến đấu với các vấn đề của riêng mình với Chrome, Cinnamon và nhiều màn hình. Nó cực kỳ khó chịu. Tôi sẽ cố gắng và tiếp tục đào.
slm

Tôi đang đối mặt với cùng một vấn đề, sử dụng chrome trên Linux Mint 15, chia sẻ màn hình hangout hiển thị cả màn hình của tôi. Thực sự khó chịu

1
Tôi không biết làm thế nào bạn có được một màn hình duy nhất, tôi chưa bao giờ thấy điều đó. Nhưng đối với cả hai màn hình cùng một lúc, tôi nghi ngờ rằng Chromium chỉ chia sẻ một "màn hình" X. XRandR làm cho cả hai màn hình xuất hiện trên một màn hình X, vì vậy cho đến khi ai đó ở Google sửa lỗi mà tôi nghi ngờ có một cách giải quyết mà không sử dụng cái gì khác như Xinerama.
Jarryd

Câu trả lời:


35

Vấn đề

Hóa ra đã có một vấn đề mở trong trình theo dõi Chromium về sự bất tiện gây phiền nhiễu này. Các tùy chọn hiện có do Hangouts cung cấp có nhược điểm lớn:

  1. Chia sẻ toàn bộ màn hình: Nếu bạn có nhiều màn hình (tôi có ba màn hình) và chia sẻ "Toàn bộ màn hình", những người khác trong hangout sẽ không thể nhìn thấy bất cứ điều gì.

  2. Chia sẻ ứng dụng: Nếu bạn chỉ chia sẻ một ứng dụng cụ thể, thì:

    • Bạn sẽ phải tự chuyển sang các ứng dụng khác trong khi phát trực tuyến bằng cách quay lại hangouts và bật / tắt Chia sẻ màn hình.
    • Trong một số ứng dụng, các cửa sổ bổ sung (như hộp thoại cho tùy chọn, menu, cửa sổ bật lên, v.v.) sẽ không được ghi lại như một phần của ứng dụng bạn đang chia sẻ. Và hầu hết các lần đó là những hộp thoại bạn muốn tập trung vào.

Giải pháp / cách giải quyết

Một cách giải quyết rất tốt là ở Nhận xét 18 của cùng một cuộc thảo luận này, vì vậy tất cả các khoản tín dụng nên được gửi đến tác giả của bình luận.

Tôi sẽ tóm tắt quy trình tại đây, cho phép bạn Chia sẻ một phần / Khu vực của màn hình đa màn hình của bạn trong Google Hangouts đang chạy trong Máy Linux .

  1. Mở VLC trong chế độ "Chụp màn hình" và cho nó biết phần nào của màn hình X11 mà bạn muốn nó chụp, sử dụng các tham số dòng lệnh Mô-đun màn hình thích hợp . Bạn có thể thực hiện việc này thông qua cấu hình GUI HOẶC sử dụng dòng lệnh:

    vlc \
        --no-video-deco \
        --no-embedded-video \
        --screen-fps=20 \
        --screen-top=32 \
        --screen-left=0 \
        --screen-width=1920 \
        --screen-height=1000 \
        screen://
    
  2. Quay trở lại Google Hangouts và chia sẻ cửa sổ VLC mới mở, giờ đây đóng vai trò là "cổng thông tin" của bạn đến phần thú vị trên màn hình của bạn.

Ghi chú quan trọng

  1. Di chuyển cửa sổ VLC ra khỏi phần màn hình bạn đang chụp để tránh hiệu ứng khởi động .

  2. Đừng KHÔNG thay đổi kích thước hoặc giảm thiểu các cửa sổ VLC vì nó sẽ ảnh hưởng đến độ phân giải của phần màn hình của bạn. Nếu bạn muốn đưa nó ra khỏi đường đi trong khi phát trực tuyến đến hangouts, chỉ cần di chuyển nó ra khỏi màn hình mà KHÔNG thay đổi kích thước hoặc chỉ giả vờ nó không ở đó.

  3. Con trỏ chuột không bị bắt bởi VLC trong linux. Tác giả của cách giải quyết cũng đề xuất một giải pháp cho vấn đề này: ExtraMaus , một chương trình C đơn giản tạo ra "bản sao" chuột của bạn, nhưng VLC có thể nhìn thấy.

[TL; DR] Giải thích các giá trị tôi đã chọn trong ví dụ

  1. Các screen://tham số chỉ ra chúng tôi muốn kích hoạt các module Screen Capture. Bạn sẽ luôn luôn sử dụng tham số này.

  2. Các cờ --no-video-deco--no-embedded-videoẩn menu cửa sổ và thanh công cụ điều khiển video tương ứng. Bạn không muốn chia sẻ những điều này thông qua Hangouts, vì vậy tôi khuyên bạn nên luôn bao gồm các tham số này.

  3. Các --screen-fps=20không phải 20. Bạn có thể làm cho nó 30 hay 10, kể từ khi thực hiện chủ yếu ảnh hưởng bởi cách Chrome mã hóa các dòng video.

  4. Các khu vực của màn hình bạn muốn chụp theo quy ước tiêu chuẩn [ --screen-top, --screen-left, --screen-width, --screen-height]. Giả sử tôi có hai màn hình, mỗi màn hình 1920x1080, cho tổng số màn hình "ảo" 3840x1080 khi đặt cạnh nhau, tôi có thể đưa ra các tọa độ sau:

    1. [ 0, 0, 1920, 1080] cho toàn bộ màn hình bên trái của tôi
    2. [ 0, 1920, 1920, 1080] cho toàn bộ màn hình bên phải của tôi
    3. [32, 0, 1920, 1000]đối với một phần màn hình bên trái của tôi trải dài toàn bộ chiều rộng của nó nhưng cắt các 32pixel từ trên cùng của nó (nơi tôi thường có thanh tiêu đề của cửa sổ) và các 1080-1000-32 = 48pixel từ dưới cùng (nơi tôi có thanh tác vụ KDE của mình).

1
Đây là cách giải quyết tốt. Dễ để thực hiện. Cảm ơn
Pierre de LESPINAY

1
nếu gặp sự cố như: VLC không thể mở màn hình MRL ': //'. Kiểm tra nhật ký để biết chi tiết. sudo apt-get install vlc-plugin-access-Extra sau đó sử dụng dòng lệnh từ phía trên để mở vlc của bạn
Leo Yu

1
Tôi đã có thể sử dụng nó trong một thời gian dài với Debian. Bây giờ tôi đang ở Ubuntu và dường như không biết các đối số:unknown option or missing mandatory argument '--screen-top=0'
Pierre de LESPINAY 16/11/18

1
Tôi đã thực hiện một số lưu ý khi thực hiện việc này với i3 gist.github.com/kylebrandt/237368095cd9803536ac26529340a60f
Kyle Brandt

Điều này được sử dụng để làm việc cho tôi, nhưng không còn nữa. VLC 3.0.7
Lucas Bustamante

5

Tôi nghĩ rằng tôi đã tìm thấy một cách giải quyết tốt hơn so với sử dụng vlc. Chúng tôi chỉ cần tạo một webcam giả hiển thị màn hình của chúng tôi.

# Unload
sudo rmmod v4l2loopback
# Load module
sudo modprobe v4l2loopback video_nr=7 'card_label=myFakeCam' 'exclusive_caps=1'

ffmpeg -f x11grab -r 20 -s 1920x1080 -i :0.0+0,0 -vcodec rawvideo -pix_fmt yuv420p -threads 0 -f v4l2 /dev/video7

Sau đó, chúng ta cần làm cho nó xuất hiện trong crom trong danh sách các máy ảnh có sẵn. Chúng ta có thể làm cho nó ví dụ bằng cách tắt và sau đó kích hoạt webcam máy tính xách tay nội bộ. Trước tiên, bạn nên tìm hiểu bus USB và số cổng của nó. Trong trường hợp của tôi: Bus là 01 và Port là 4, vì vậy tôi chạy:

sudo sh -c "echo '0'> /sys/bus/usb/devices/1-4/bConfigurationValue"
sudo sh -c "echo '1'> /sys/bus/usb/devices/1-4/bConfigurationValue"

Sau đó, tôi có thể chọn myFakeCam trong Hangouts.

Tôi đã mô tả một số ý tưởng khác và một số chi tiết khác trong hliss repo .

Google Chrome không thể thấy máy ảnh giả



-2

Tải xrdp trên máy tính xách tay của bạn. Bắt đầu kết nối rdesktop với localhost. Sử dụng phiên rdesktop để bắt đầu phiên google + và chỉ cửa sổ / máy tính để bàn đó sẽ được chia sẻ.

Tôi nhận ra đây là một công việc xung quanh, nhưng nó sẽ hoàn thành những gì bạn đang muốn làm.


Buồn cười :-). Nhưng vâng, đó không thực sự là một giải pháp (thậm chí không phải là giải pháp). Tôi chỉ đơn giản là tắt màn hình máy tính xách tay trước khi bắt đầu hangout, nhanh hơn và sạch hơn ... ;-) Mọi người thường muốn chia sẻ những gì họ đã mở trong máy tính để bàn của họ (những gì họ hiện đang làm việc).
Peque
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.