TruckListStudio jak przekazać obraz z pulpitu?


(rpm) #1

Witam, pobrałem i uruchomiłem ten program pod Linuksem Manjaro, ale nie mogę sobie poradzić z ustawieniami kamerki. Chciałbym przekazać swój pulpit na czacie bezpośrednio do kamerki jak w ManyCam, WebCamMax czy jak to jest w CamTwist pod Apple. Jednak nie umiem tego ustawić odpowiednio skonfigurować, podpowie mi ktoś co i jak mam ustawić? Z góry dzięki za pomoc.

https://sourceforge.net/projects/truckliststudio/?source=typ_redirect


(pocolog) #2

http://superuser.com/questions/411897/ddg#713100

v4l2loopback powinieneś mieć w repozytorium. Później tą “fejkową” kamerkę wybierasz na czacie i voila :wink:


(rpm) #3

No dzięki, ale skompilowałem ten program, załadowałem jego moduł i bawię się z ustawieniami ffmpeg i żaden czat mi tej dodatkowej kamerki nie pokazuje w opcjach. Takie opcje stosuje powiedzmy, które w konsoli widać że działają.

 

 

ffmpeg -f x11grab -r 15 -s 1280x720 -i :0.0+0,0 -vcodec rawvideo -pix_fmt yuv420p -threads 0 -f v4l2 /dev/video1

 


(pocolog) #4

Sprawdź w /dev/ jaką kamerkę tworzy ten moduł. Może to nie będzie /dev/video1 tylko video0 albo video2…

Sprawdź jeszcze w VLC albo innym odtwarzaczu który to umożliwia czy obraz jest prawidłowo przechwytywany.


(rpm) #5

No sprawdziłem to, tworzy właśnie video1, zmieniałem z wpisu video0. A w vlc pokazuje mi się setki oddalających obrazów.


(pocolog) #6

To, że czat nie widzi kamerki, a vlc widzi to dziwna sprawa, ale przynajmniej działa - pomyślimy o tym później :wink:

Ważniejsze, że ffmpeg źle przekazuje obraz, a nie chce mi się studiować dokumentacji więc wywalimy trochę niezrozumiałych przełączników :wink: Spróbuj:

ffmpeg -s 1280x720 -r 15 -f x11grab -i :0.0+0,0 /dev/video1

 


(rpm) #7

Dzięki działa, ale muszę mieć odpalony VLC, dopiero mi czat wykrywa i nawet pierwszą wybiera, ale ważne że już działa. Co prawda powiększać obraz trzeba wpisami, ale dzięki działa. Szkoda że na Linux nie ma graficznego programu, ładnie obudowanego jak ManyCam w opcje.


(pocolog) #8

Może jest tylko go nie znamy :wink:

Zmień sobie jeszcze ten -r 15 (klatki na sekundę) na coś większego bo chyba masz pokaz slajdów, -s to wiadomo rozdziawka jaką łapie zaczynając od punktu :0.0+x,y (gdzie x,y lewy górny róg gdzie zaczyna łapać obraz gdybyś nie chciał całego pulpitu)

edit.

Możesz przetestować coś takiego jak masz w repo https://sourceforge.net/projects/webcamstudio/


(rpm) #9

Dzięki w ogóle dzisiaj nawet z tym co ja podałem

ffmpeg -f x11grab -r 15 -s 1280x720 -i :0.0+0,0 -vcodec rawvideo -pix_fmt yuv420p -threads 0 -f v4l2 /dev/video1

nie działa tyle że z tym fps chodzą w konsoli, wybieram w VLC Pulpit i nic nie przechwytuje dziś kamerki. A z Twoim też nie działało, wywala błąd:

ffmpeg -s 1280x720 -r 25 -f x11grab -i :0.0+0,0 /dev/video1

ffmpeg version 3.2 Copyright (c) 2000-2016 the FFmpeg developers

  built with gcc 6.2.1 (GCC) 20160830

  configuration: --prefix=/usr --disable-debug --disable-static --disable-stripping --enable-avisynth --enable-avresample --enable-fontconfig --enable-gmp --enable-gnutls --enable-gpl --enable-ladspa --enable-libass --enable-libbluray --enable-libfreetype --enable-libfribidi --enable-libgsm --enable-libiec61883 --enable-libmodplug --enable-libmp3lame --enable-libopencore_amrnb --enable-libopencore_amrwb --enable-libopenjpeg --enable-libopus --enable-libpulse --enable-libschroedinger --enable-libsoxr --enable-libspeex --enable-libssh --enable-libtheora --enable-libv4l2 --enable-libvidstab --enable-libvorbis --enable-libvpx --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxvid --enable-netcdf --enable-shared --enable-version3 --enable-x11grab

  libavutil 55. 34.100 / 55. 34.100

  libavcodec 57. 64.100 / 57. 64.100

  libavformat 57. 56.100 / 57. 56.100

  libavdevice 57. 1.100 / 57. 1.100

  libavfilter 6. 65.100 / 6. 65.100

  libavresample 3. 1. 0 / 3. 1. 0

  libswscale 4. 2.100 / 4. 2.100

  libswresample 2. 3.100 / 2. 3.100

  libpostproc 54. 1.100 / 54. 1.100

[x11grab @ 0x5618eadf19a0] Stream #0: not enough frames to estimate rate; consider increasing probesize

Input #0, x11grab, from ':0.0+0,0':

  Duration: N/A, start: 1479535842.727748, bitrate: N/A

    Stream #0:0: Video: rawvideo (BGR[0] / 0x524742), bgr0, 1280x720, 25 fps, 1000k tbr, 1000k tbn, 1000k tbc

[NULL @ 0x5618eadfc0e0] Unable to find a suitable output format for '/dev/video1'

/dev/video1: Invalid argument

 


(pocolog) #10

Po restarcie komputera załadowałeś ponownie moduł do ‘fejkowej’ kamerki?

Dodaj go do /etc/modules żeby ładował się na starcie systemu.

echo "v4l2loopback" >> /etc/modules

 


(rpm) #11

Tak zawsze to ładuje od ręki przez sudo i wtedy działało.

sudo modprobe v4l2loopback

Ten program webcamstudio też kiedyś testowałem, ale nie dałem rady ustawić go. Może w połączeniu z tym Twoim programem, coś by ruszyło.


(pocolog) #12

Dobra zainstalowałem u siebie (Debian):

sudo apt install v4l2loopback-dkms

sudo modprobe v4l2loopback

następnie:

ffmpeg -s 800x600 -f x11grab -r 60 -i :0.0+0,0 -vf format=pix_fmts=yuv420p -f v4l2 /dev/video0

i działa. Dla potwierdzenia otworzyłem urządzenie /dev/video0 w VLC i obraz wyświetla się prawidłowo.

Oczywiście -s i -r ustawisz pod siebie.


(rpm) #13

No ja wiem że działa, ale teraz czat nie wykrywa mi tego urządzenia. Nie wiem jak ja to wtedy ustawiłem, że złapał czat przechwytywanie kamerki pulpitu, teraz mi to jakoś nie działa. Wcześniej jak pokazał mi pulpit ten czat w kamerce, to zgasła dioda kamerki. Niby ustawiam dokładnie tak samo jak było, ale nie ma obrazu pulpitu na czacie. Nie mam pojęcia co ja wtedy ustawiłem, było odpalone ffmpeg i wybrałem Pulpit w ustawieniach VLC, to chyba tyle. Jakoś wszystko działało, być może zmienili coś w czacie, w co wątpie.


(pocolog) #14

To się zastanów czy działa czy nie, bo kilka postów wcześniej napisałeś (przynajmniej tak zrozumiałem - pisz wyraźniej) że nie działa i nawet wkleiłeś jaki dostajesz błąd. Więc przetestowałem to u siebie i dałem ci rozwiązanie które na pewno działa.

 

Jeśli teraz działa i VLC widzi obraz, ale nie widzi go czat, to znaczy że coś jest z czatem, a nie z obrazem.

 

VLC nie jest potrzebny do przesłania obrazu na czat, po prostu w oknie wyboru kamery na czacie wpisz ścieżkę /dev/video1 (albo video0 jeśli odłączyłeś kamerę która wcześniej była widziana jako video0).

Jeśli sobie dalej nie poradzisz to napisz jaki to ma być czat, żebym mógł sprawdzić.


(rpm) #15

Tak pewnie nie jest, ale to czat musi mi wykryć sam. Wtedy wykryło jako 000.0001 czy jakoś tak. A teraz tylko moją kamerkę wykrywa.


(pocolog) #16

Pokaż wynik komendy

sudo lsmod

 


(rpm) #17

Wiesz co już działa, tylko muszę wpierw uruchomić ffmpeg w konsoli odświeżyć czat i kamerkę włączyć. Od razu już ją wykrywa i ustawia jako pierwszą. Pojawił się tylko teraz taki problem, że obraz jest w dwóch kolorach różowym i zielonym.

Module Size Used by

sg 36864 0

st 53248 0

v4l2loopback 32768 0

sha256_ssse3 32768 1

sha256_generic 24576 1 sha256_ssse3

hmac 16384 1

drbg 32768 1

ansi_cprng 16384 0

ctr 16384 1

ccm 20480 1

fuse 90112 3

uvcvideo 86016 0

videobuf2_vmalloc 16384 1 uvcvideo

videobuf2_memops 16384 1 videobuf2_vmalloc

videobuf2_v4l2 24576 1 uvcvideo

videobuf2_core 32768 2 uvcvideo,videobuf2_v4l2

v4l2_common 16384 1 videobuf2_v4l2

videodev 147456 5 uvcvideo,v4l2loopback,v4l2_common,videobuf2_core,videobuf2_v4l2

hid_a4tech 16384 0

media 20480 2 uvcvideo,videodev

joydev 20480 0

mousedev 20480 0

kvm_amd 65536 0

nls_iso8859_1 16384 1

nls_cp437 20480 1

vfat 20480 1

fat 65536 1 vfat

kvm 466944 1 kvm_amd

hp_wmi 16384 0

sparse_keymap 16384 1 hp_wmi

irqbypass 16384 1 kvm

amdkfd 114688 1

amd_iommu_v2 20480 1 amdkfd

arc4 16384 2

rt2800pci 16384 0

rt2800mmio 16384 1 rt2800pci

rt2800lib 86016 2 rt2800pci,rt2800mmio

rt2x00pci 16384 1 rt2800pci

rt2x00mmio 16384 2 rt2800pci,rt2800mmio

radeon 1470464 5

rt2x00lib 49152 5 rt2x00pci,rt2800lib,rt2800pci,rt2800mmio,rt2x00mmio

evdev 24576 17

input_leds 16384 0

led_class 16384 2 rt2x00lib,input_leds

mac_hid 16384 0

psmouse 122880 0

mac80211 651264 3 rt2x00lib,rt2x00pci,rt2800lib

ttm 77824 1 radeon

snd_hda_codec_realtek 69632 1

drm_kms_helper 106496 1 radeon

snd_hda_codec_generic 69632 1 snd_hda_codec_realtek

cfg80211 483328 2 mac80211,rt2x00lib

snd_hda_codec_hdmi 49152 1

eeprom_93cx6 16384 1 rt2800pci

snd_hda_intel 36864 5

k10temp 16384 0

drm 286720 8 ttm,drm_kms_helper,radeon

crc_ccitt 16384 1 rt2800lib

rfkill 20480 4 cfg80211,hp_wmi

snd_hda_codec 106496 4 snd_hda_codec_realtek,snd_hda_codec_hdmi,snd_hda_codec_generic,snd_hda_intel

r8168 483328 0

snd_hda_core 49152 5 snd_hda_codec_realtek,snd_hda_codec_hdmi,snd_hda_codec_generic,snd_hda_codec,snd_hda_intel

snd_hwdep 16384 1 snd_hda_codec

rtsx_pci_ms 20480 0

memstick 16384 1 rtsx_pci_ms

snd_pcm 86016 4 snd_hda_codec_hdmi,snd_hda_codec,snd_hda_intel,snd_hda_core

syscopyarea 16384 1 drm_kms_helper

shpchp 32768 0

sysfillrect 16384 1 drm_kms_helper

sysimgblt 16384 1 drm_kms_helper

fb_sys_fops 16384 1 drm_kms_helper

i2c_algo_bit 16384 1 radeon

snd_timer 28672 1 snd_pcm

i2c_piix4 24576 0

snd 65536 18 snd_hda_codec_realtek,snd_hwdep,snd_timer,snd_hda_codec_hdmi,snd_pcm,snd_hda_codec_generic,snd_hda_codec,snd_hda_intel

soundcore 16384 1 snd

wmi 20480 1 hp_wmi

thermal 20480 0

fjes 28672 0

battery 20480 0

acpi_cpufreq 20480 0

tpm_tis 20480 0

tpm 36864 1 tpm_tis

button 16384 0

ip6t_REJECT 16384 1

processor 32768 3 acpi_cpufreq

nf_reject_ipv6 16384 1 ip6t_REJECT

video 36864 0

nf_log_ipv6 16384 5

ac 16384 0

hp_wireless 16384 0

xt_hl 16384 22

ip6t_rt 16384 3

nf_conntrack_ipv6 20480 8

nf_defrag_ipv6 36864 1 nf_conntrack_ipv6

ipt_REJECT 16384 1

nf_reject_ipv4 16384 1 ipt_REJECT

nf_log_ipv4 16384 5

nf_log_common 16384 2 nf_log_ipv4,nf_log_ipv6

xt_LOG 16384 10

xt_limit 16384 13

xt_tcpudp 16384 18

xt_addrtype 16384 4

nf_conntrack_ipv4 16384 8

nf_defrag_ipv4 16384 1 nf_conntrack_ipv4

xt_conntrack 16384 16

ip6table_filter 16384 1

ip6_tables 28672 1 ip6table_filter

nf_conntrack_netbios_ns 16384 0

nf_conntrack_broadcast 16384 1 nf_conntrack_netbios_ns

nf_nat_ftp 16384 0

nf_nat 24576 1 nf_nat_ftp

nf_conntrack_ftp 20480 1 nf_nat_ftp

nf_conntrack 90112 8 nf_nat_ftp,nf_conntrack_netbios_ns,nf_nat,xt_conntrack,nf_conntrack_broadcast,nf_conntrack_ftp,nf_conntrack_ipv4,nf_conntrack_ipv6

iptable_filter 16384 1

sch_fq_codel 20480 6

ip_tables 28672 1 iptable_filter

x_tables 28672 13 ip6table_filter,xt_hl,ip_tables,xt_tcpudp,xt_limit,xt_conntrack,xt_LOG,iptable_filter,ip6t_rt,ipt_REJECT,ip6_tables,xt_addrtype,ip6t_REJECT

ext4 516096 2

crc16 16384 1 ext4

mbcache 20480 1 ext4

jbd2 94208 1 ext4

hid_generic 16384 0

usbhid 45056 0

hid 114688 3 hid_a4tech,hid_generic,usbhid

sr_mod 24576 0

cdrom 49152 1 sr_mod

sd_mod 36864 5

rtsx_pci_sdmmc 24576 0

mmc_core 114688 1 rtsx_pci_sdmmc

serio_raw 16384 0

atkbd 24576 0

libps2 16384 2 atkbd,psmouse

ohci_pci 16384 0

rtsx_pci 45056 2 rtsx_pci_ms,rtsx_pci_sdmmc

ohci_hcd 45056 1 ohci_pci

ahci 36864 4

ehci_pci 16384 0

ehci_hcd 69632 1 ehci_pci

libahci 28672 1 ahci

usbcore 196608 6 uvcvideo,ohci_hcd,ohci_pci,ehci_hcd,ehci_pci,usbhid

usb_common 16384 1 usbcore

libata 196608 2 ahci,libahci

scsi_mod 151552 5 sg,st,libata,sd_mod,sr_mod

i8042 24576 0

serio 20480 6 serio_raw,atkbd,i8042,psmouse

 


(pocolog) #18

Z jakimi parametrami uruchamiasz ffmpeg?

Odpal ffmpeg najlepiej tak jak podałem w ostatnim moim wątku gdzie pisałem, że podaje przetestowane parametry które działają.


(rpm) #19

Bardzo Ci dziękuję działa już z różnymi przeglądarkami. 

Pozdrawiam!