Skip to content
Snippets Groups Projects
Commit 15fb0276 authored by Jim's avatar Jim
Browse files

Combine linux-xcomposite and linux-capture (xshm)

parent a9cd60a7
No related branches found
No related tags found
No related merge requests found
Showing
with 179 additions and 3 deletions
......@@ -8,7 +8,6 @@ elseif(APPLE)
add_subdirectory(mac-capture)
elseif("${CMAKE_SYSTEM_NAME}" MATCHES "Linux")
add_subdirectory(linux-capture)
add_subdirectory(linux-xcomposite)
add_subdirectory(linux-pulseaudio)
add_subdirectory(linux-v4l2)
endif()
......
project(linux-capture)
find_package(X11 REQUIRED)
if(NOT X11_Xcomposite_FOUND)
message(STATUS "Xcomposite library not found, linux-capture plugin disabled")
return()
endif()
include_directories(SYSTEM "${CMAKE_SOURCE_DIR}/libobs")
include_directories(SYSTEM
"${CMAKE_SOURCE_DIR}/libobs"
${X11_Xcomposite_INCLUDE_PATH}
${X11_X11_INCLUDE_PATH}
)
set(linux-capture_SOURCES
linux-capture.c
xcursor.c
xhelpers.c
capture-input.c
xshm-input.c
xcomposite-main.cpp
xcompcap-main.cpp
xcompcap-helper.cpp
)
set(linux-capture_HEADERS
xcursor.h
xhelpers.h
xcompcap-main.hpp
xcompcap-helper.hpp
)
add_library(linux-capture MODULE
......@@ -21,10 +34,13 @@ add_library(linux-capture MODULE
)
target_link_libraries(linux-capture
libobs
glad
${X11_LIBRARIES}
${X11_XShm_LIB}
${X11_Xfixes_LIB}
${X11_Xinerama_LIB}
${X11_X11_LIB}
${X11_Xcomposite_LIB}
)
install_obs_plugin_with_data(linux-capture data)
......@@ -2,3 +2,12 @@ X11SharedMemoryScreenInput="التقاط الشاشة (XSHM)"
Screen="الشاشة"
CaptureCursor="مؤشر الالتقاط"
XCCapture="التقاط النافذة (Xcomposite)"
Window="نافذة"
CropTop="الاقتطاع من الأعلى (بكسل)"
CropLeft="الاقتطاع من اليسار (بكسل)"
CropRight="الاقتطاع من اليمين (بكسل)"
CropBottom="الاقتطاع من الأسفل (بكسل)"
SwapRedBlue="مبادلة بين الأحمر و الأزرق"
LockX="قفل السيرفر X عند الالتقاط"
......@@ -2,3 +2,12 @@ X11SharedMemoryScreenInput="Indfang Skærm (XSHM)"
Screen="Skærm"
CaptureCursor="Indfang markøren"
XCCapture="Indfang Vindue (Xcomposite)"
Window="Vindue"
CropTop="Beskær Top (pixels)"
CropLeft="Beskær Venstre (pixels)"
CropRight="Beskær Højre (pixels)"
CropBottom="Beskær bund (pixels)"
SwapRedBlue="Swap rød og blå"
LockX="Lås X server ved optagelse"
......@@ -2,3 +2,12 @@ X11SharedMemoryScreenInput="Monitoraufnahme (XSHM)"
Screen="Monitor"
CaptureCursor="Mauszeiger aufnehmen"
XCCapture="Fensteraufnahme (Xcomposite)"
Window="Fenster"
CropTop="Oben abschneiden (Pixel)"
CropLeft="Links abschneiden (Pixel)"
CropRight="Rechts abschneiden (Pixel)"
CropBottom="Unten abschneiden (Pixel)"
SwapRedBlue="Rot und Blau tauschen"
LockX="X Server sperren während der Aufnahme"
X11SharedMemoryScreenInput="Screen Capture (XSHM)"
Screen="Screen"
CaptureCursor="Capture Cursor"
XCCapture="Window Capture (Xcomposite)"
Window="Window"
CropTop="Crop Top (pixels)"
CropLeft="Crop Left (pixels)"
CropRight="Crop Right (pixels)"
CropBottom="Crop Bottom (pixels)"
SwapRedBlue="Swap red and blue"
LockX="Lock X server when capturing"
......@@ -2,3 +2,12 @@ X11SharedMemoryScreenInput="Captura de pantalla (XSHM)"
Screen="Pantalla"
CaptureCursor="Captura de Cursor"
XCCapture="Captura de ventana (Xcomposite)"
Window="Ventana"
CropTop="Recortar arriba (pixeles)"
CropLeft="Recortar izquierda (pixeles)"
CropRight="Recortar derecha (pixeles)"
CropBottom="Recortar abajo (pixeles)"
SwapRedBlue="Intercambiar rojo y azúl"
LockX="Fijar X server mientras se captura"
......@@ -2,3 +2,12 @@ X11SharedMemoryScreenInput="Ikusleiho Harpena (XSHM)"
Screen="Ikusleihoa"
CaptureCursor="Hartu Kurtsorea"
XCCapture="Leiho Harpena (Xcomposite)"
Window="Leihoa"
CropTop="Moztu Goitik (pixel)"
CropLeft="Moztu Ezkerretik (pixel)"
CropRight="Moztu Eskuinetik (pixel)"
CropBottom="Moztu Behetik (pixel)"
SwapRedBlue="Aldatu gorria eta urdina"
LockX="Blokeatu X zerbitzaria harpenean"
......@@ -2,3 +2,12 @@ X11SharedMemoryScreenInput="Ruudunkaappaus (XSHM)"
Screen="Kuvaruutu"
CaptureCursor="Kaappaa kursori"
XCCapture="Ikkunakaappaus (Xcomposite)"
Window="Ikkuna"
CropTop="Rajaa ylhäältä (pikselit)"
CropLeft="Rajaa vasemmalta (pikselit)"
CropRight="Rajaa oikealta (pikselit)"
CropBottom="Rajaa alhaalta (pikselit)"
SwapRedBlue="Vaihda punainen ja sininen"
LockX="Lukitse X Server kaappauksen aikana"
......@@ -2,3 +2,12 @@ X11SharedMemoryScreenInput="Capture d'écran (XSHM)"
Screen="Écran"
CaptureCursor="Enregistrer le Curseur"
XCCapture="Capture de la fenêtre (Xcomposite)"
Window="Fenêtre"
CropTop="Rogner en Haut (pixels)"
CropLeft="Rogner à Gauche (pixels)"
CropRight="Rogner à Droite (pixels)"
CropBottom="Rogner en Bas (pixels)"
SwapRedBlue="Intervertir le rouge et le bleu"
LockX="Verrouiller le serveur X lors de la capture"
......@@ -2,3 +2,12 @@ X11SharedMemoryScreenInput="Captura de pantalla (XSHM)"
Screen="Pantalla"
CaptureCursor="Captura de cursor"
XCCapture="Captura de xanela (Xcomposite)"
Window="Xanela"
CropTop="Recortar por arriba (píxeles)"
CropLeft="Recortar pola esquerda (píxeles)"
CropRight="Recortar pola dereita (píxeles)"
CropBottom="Recortar por abaixo (píxeles)"
SwapRedBlue="Trocar vermello e azul"
LockX="Bloquear o servidor X durante a captura"
......@@ -2,3 +2,12 @@ X11SharedMemoryScreenInput="Ekranski ulaz (XSHM)"
Screen="Ekran"
CaptureCursor="Snimaj kursor"
XCCapture="Ulaz sa prozora (Xcomposite)"
Window="Prozor"
CropTop="Odseci odozgo (pikseli)"
CropLeft="Odseci sa leva (pikseli)"
CropRight="Odseci sa desna (pikseli)"
CropBottom="Odseci odozdo (pikseli)"
SwapRedBlue="Zameni crvenu i plavu"
LockX="Zaključaj X server u toku snimanja"
......@@ -2,3 +2,12 @@ X11SharedMemoryScreenInput="Képernyő Felvétel (XSHM)"
Screen="Képernyő"
CaptureCursor="Kurzor Rögztítése"
XCCapture="Ablak Felvétel (Xcomposite)"
Window="Ablak"
CropTop="Felső Levágása (pixelek)"
CropLeft="Bal Levágása (pixelek)"
CropRight="Jobb Levágása (pixelek)"
CropBottom="Alsó Levágása (pixelek)"
SwapRedBlue="Piros és Kék Cseréje"
LockX="X Szerver Zárolása Rögzítéskor"
......@@ -2,3 +2,12 @@ X11SharedMemoryScreenInput="Cattura schermo (XSHM)"
Screen="Schermo"
CaptureCursor="Cattura il cursore"
XCCapture="Cattura la finestra (xcomposite)"
Window="Finestra"
CropTop="Crop Superiore (pixels)"
CropLeft="Crop Sinistro (pixels)"
CropRight="Crop Destro (pixels)"
CropBottom="Crop Inferiore (pixels)"
SwapRedBlue="Inverti rosso e blu"
LockX="Blocca l' X Server durante l'acquisizione"
......@@ -2,3 +2,12 @@ X11SharedMemoryScreenInput="画面キャプチャ (XSHM)"
Screen="画面"
CaptureCursor="カーソルをキャプチャ"
XCCapture="ウィンドウキャプチャ (Xcomposite)"
Window="ウィンドウ"
CropTop="上部クロップ(ピクセル)"
CropLeft="左側クロップ(ピクセル)"
CropRight="右側クロップ(ピクセル)"
CropBottom="下部クロップ(ピクセル)"
SwapRedBlue="赤と青を入れ替え"
LockX="キャプチャ時にXサーバをロック"
......@@ -2,3 +2,12 @@ X11SharedMemoryScreenInput="화면 캡쳐 (XSHM)"
Screen="화면"
CaptureCursor="커서 캡쳐"
XCCapture="윈도우 캡쳐(Xcomposite)"
Window="윈도우"
CropTop="위쪽 자르기 (픽셀)"
CropLeft="왼쪽 자르기 (픽셀)"
CropRight="오른쪽 자르기 (픽셀)"
CropBottom="아래 자르기 (픽셀)"
SwapRedBlue="적청 교환"
LockX="캡쳐 시 X 서버를 잠금"
......@@ -2,3 +2,12 @@ X11SharedMemoryScreenInput="Skjermopptak (XSHM)"
Screen="Skjerm"
CaptureCursor="Ta opp musepeker"
XCCapture="Vindusopptak (Xcomposite)"
Window="Vindu"
CropTop="Beskjær toppen (piksler)"
CropLeft="Beskjær venstre (piksler)"
CropRight="Beskjær høyre (piksler)"
CropBottom="Beskjær bunnen (piksler)"
SwapRedBlue="Bytt rød og blå"
LockX="Lås X server under opptak"
......@@ -2,3 +2,12 @@ X11SharedMemoryScreenInput="Schermcapture (XSHM)"
Screen="Scherm"
CaptureCursor="Cursor Opnemen"
XCCapture="Venstercapture (Xcomposite)"
Window="Venster"
CropTop="Boven Bijsnijden (pixels)"
CropLeft="Links Bijsnijden (pixels)"
CropRight="Rechts Bijsnijden (pixels)"
CropBottom="Onder Bijsnijden (pixels)"
SwapRedBlue="Rood en blauw omwisselen"
LockX="Lock X server tijdens het opnemen"
......@@ -2,3 +2,12 @@ X11SharedMemoryScreenInput="Przechwytywanie ekranu (XSHM)"
Screen="Ekran"
CaptureCursor="Przechwytywanie kursora"
XCCapture="Przechwytywanie okna (XComposite)"
Window="Okno"
CropTop="Przytnij od góry (piksele)"
CropLeft="Przytnij z lewej (piksele)"
CropRight="Przytnij z prawej (piksele)"
CropBottom="Przytnij od spodu (piksele)"
SwapRedBlue="Zamień czerwony i niebieski"
LockX="Zablokuj serwer X podczas przechwytywania"
......@@ -2,3 +2,12 @@ X11SharedMemoryScreenInput="Captura de Tela (XSHM)"
Screen="Tela"
CaptureCursor="Capturar o Cursor"
XCCapture="Captura de Janela (Xcomposite)"
Window="Janela"
CropTop="Cortar em Cima (Pixels)"
CropLeft="Cortar à Esquerda (Pixels)"
CropRight="Cortar à Direita (Pixels)"
CropBottom="Cortar em Baixo (Pixels)"
SwapRedBlue="Trocar Vermelho com Azul"
LockX="Bloquear servidor X durante a captura"
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment