• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

pyfakewebcam - błąd

VPS Starter Arubacloud
+1 głos
287 wizyt
pytanie zadane 17 lutego 2021 w Python przez KumberTwo Dyskutant (8,270 p.)
edycja 17 lutego 2021 przez KumberTwo

Piszę program, który stworzy wirtualną kamerę a ta będzie wyświetlała zmodyfikowany obraz normalnej kamery. Używam linuxa i znalazłem bibliotekę pyfakewebcam. Niestety już samo stworzenie obiektu, zgodnie z przykładem który znajduje się na githubie wyrzuca błąd:
 

cam = pyfakewebcam.FakeWebcam('/dev/video1', 1280, 720)

#  File "/home/uzytkownik/.local/lib/python3.8/site-packages/pyfakewebcam/pyfakewebcam.py", line 54, in __init__
#    fcntl.ioctl(self._video_device, _v4l2.VIDIOC_S_FMT, self._settings)
#  OSError: [Errno 22] Invalid argument

Czy ma ktoś pomysł, co idzie nie tak? Może ktoś zna jakiś inny sposób na "zakłamanie" kamery, aby pokazywała zmodyfikowany obraz? Rozwiązanie najlepiej jakby było w pythonie lub c++ie.  Z góry dzięki

1 odpowiedź

+1 głos
odpowiedź 17 lutego 2021 przez JAKUBW Nałogowiec (33,470 p.)
wybrane 17 lutego 2021 przez KumberTwo
 
Najlepsza

Jeżeli utworzyłeś fejkową kamerę poprzez v4l2loopback to możesz użyć komendy

ffmpeg -re -i video.mp4 -map 0:v -f v4l2 /dev/video0

 /dev/video0 to plik do kamery a video.mp4 to film, który chcesz odtworzyć na wirtualnej kamerce.

Natomiast jak chcesz najprostsze rozwiązanie do wysyłania fakowego strumienia na kamerkę to polecam ci program OBS wraz z pluginem v4l2sink

komentarz 17 lutego 2021 przez KumberTwo Dyskutant (8,270 p.)
Niestety OBS nie wspiera linxa :( ale dzięki za pomocną odpowiedź
1
komentarz 18 lutego 2021 przez JAKUBW Nałogowiec (33,470 p.)
Oj wspiera, wspiera i to oficjalnie. Ja korzystam i jestem zadowolony. A np. plugin v4l2sink jest tylko na Linuxa tak btw
komentarz 18 lutego 2021 przez KumberTwo Dyskutant (8,270 p.)

No to mnie zdziwiłeś. Na głównej stronie znalazłem napis: Supported Platforms: Windows, co sprawiło że porzuciłem obsa, ale faktycznie, poniżej znalazłem link do wersji na linuxa. Dzięki za pomoc

komentarz 18 lutego 2021 przez KumberTwo Dyskutant (8,270 p.)
I czy wiesz może czy jest możliwe korzystanie z tej biblioteki z poziomu jakiegoś języka, np. c++, bez konieczności posiadania obsa?
komentarz 18 lutego 2021 przez JAKUBW Nałogowiec (33,470 p.)
Możesz napisać pluginy do obs... Ale jak nie chcesz z niego korzystać (nie wiem dlaczego, nie wiem co chcesz osiągnąć) to możesz pobawić się w modyfikowanie obrazu na własną rękę używając bibliotek typu opencv. Choć nigdy tego nie robiłem bo obs mi wystarcza to domyślam się że pisanie tego w c++ nie będzie łatwe, już lepiej użyć rust.

Jaki efekt docelowy chcesz uzyskać? Co ma robić twój program?
komentarz 18 lutego 2021 przez KumberTwo Dyskutant (8,270 p.)
Program który piszę z pomocą opencv pobiera aktualny stan kamerki i modyfikuje obraz klatka po klatce. Następnie chciałbym te zmodyfikowane już klatki wyświetlać jako faktyczny output kamery. Doszedłem już do wniosku że powinienem stworzyć wirtualną kamerę, lecz nie potrafie nakarmić jej moimi zmodyfikowanymi klatkami. Z OBSa nie chcę kożystać bo piszę ten program dla pisania go, bardziej w celach edukacyjnych niż użytkowych.

Podobne pytania

0 głosów
1 odpowiedź 259 wizyt
pytanie zadane 28 marca 2018 w Python przez Okto Nowicjusz (120 p.)
0 głosów
0 odpowiedzi 187 wizyt
0 głosów
0 odpowiedzi 51 wizyt

92,775 zapytań

141,703 odpowiedzi

320,560 komentarzy

62,109 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...