Gravação em HD via logitech c930e webcam

0

Eu quero gravar um fluxo de vídeo HD através desta webcam (espero que usando um script) para capturar simultaneamente com uma gravação de tela em um contêiner. (você pode ver o código do pipeline que usei antes, abaixo)

até onde eu sei, a v4l2 não suporta gravação 1080 para este tipo de câmera em fps mais de 5 e eu realmente preciso de um fluxo hd com pelo menos 20 fps. Existe algum outro meio ou aplicação para este propósito?

abaixo é o código do pipeline gstreamer e é baseado no v4l2 e pode capturar apenas 720p em 10 fps, o que não é suficiente! Eu acredito que o ffmpeg tem o mesmo resultado já que ele está usando a v4l2 também. (por favor, note que é possível capturar 1080 com 5 fps (o comando abaixo), mas eu acho que você pode imaginar como a qualidade seria (!), portanto, eu preciso de fps mais de 20)

Eu realmente aprecio se você pudesse me ajudar com isso!

aqui está o código do pipeline dos gstreamers:

 gst-launch -e mpegtsmux name="muxer" ! filesink location=/home/sina/Desktop/UI4.ts \
 v4l2src device="/dev/video1" ! video/x-raw-yuv, width=1280 ,height=720, \
  framerate=10/1 ! videorate ! ffmpegcolorspace ! x264enc ! muxer. v4l2src \
  device="/dev/video0" ! video/x-raw-yuv, width=1024 ,height=768,framerate=10/1 \
 ! x264enc !  muxer.  pulsesrc device="alsa_input.usb-046d_Logitech_Webcam_C930e_AAF8A63E-02-C930e.analog-stereo"\
  ! audioconvert ! lamemp3enc target=1 cbr=true  ! muxer. 

FYI aqui é o resultado de v4l2-ctl -d / dev / video1 - formatos -list :

ioctl: VIDIOC_ENUM_FMT
 Index       : 0
 Type        : Video Capture
 Pixel Format: 'YUYV'
 Name        : YUV 4:2:2 (YUYV)
     Size: Discrete 640x480
         Interval: Discrete 0.033s (30.000 fps)
         Interval: Discrete 0.042s (24.000 fps)
         Interval: Discrete 0.050s (20.000 fps)
         Interval: Discrete 0.067s (15.000 fps)
         Interval: Discrete 0.100s (10.000 fps)
         Interval: Discrete 0.133s (7.500 fps)
         Interval: Discrete 0.200s (5.000 fps)
     Size: Discrete 160x120
         Interval: Discrete 0.033s (30.000 fps)
         Interval: Discrete 0.042s (24.000 fps)
         Interval: Discrete 0.050s (20.000 fps)
         Interval: Discrete 0.067s (15.000 fps)
         Interval: Discrete 0.100s (10.000 fps)
         Interval: Discrete 0.133s (7.500 fps)
         Interval: Discrete 0.200s (5.000 fps)
     Size: Discrete 176x144
         Interval: Discrete 0.033s (30.000 fps) 
         Interval: Discrete 0.042s (24.000 fps)
         Interval: Discrete 0.050s (20.000 fps)
         Interval: Discrete 0.067s (15.000 fps)
         Interval: Discrete 0.100s (10.000 fps)
         Interval: Discrete 0.133s (7.500 fps)
         Interval: Discrete 0.200s (5.000 fps)
     Size: Discrete 320x180
         Interval: Discrete 0.033s (30.000 fps)
         Interval: Discrete 0.042s (24.000 fps)
         Interval: Discrete 0.050s (20.000 fps)
         Interval: Discrete 0.067s (15.000 fps)
         Interval: Discrete 0.100s (10.000 fps)
         Interval: Discrete 0.133s (7.500 fps)
         Interval: Discrete 0.200s (5.000 fps)
     Size: Discrete 320x240
         Interval: Discrete 0.033s (30.000 fps)
         Interval: Discrete 0.042s (24.000 fps)
         Interval: Discrete 0.050s (20.000 fps)
         Interval: Discrete 0.067s (15.000 fps)
         Interval: Discrete 0.100s (10.000 fps)
         Interval: Discrete 0.133s (7.500 fps)
         Interval: Discrete 0.200s (5.000 fps)
     Size: Discrete 352x288
         Interval: Discrete 0.033s (30.000 fps)
         Interval: Discrete 0.042s (24.000 fps)
         Interval: Discrete 0.050s (20.000 fps)
         Interval: Discrete 0.067s (15.000 fps)
         Interval: Discrete 0.100s (10.000 fps)
         Interval: Discrete 0.133s (7.500 fps)
         Interval: Discrete 0.200s (5.000 fps)
     Size: Discrete 424x240
         Interval: Discrete 0.033s (30.000 fps)
         Interval: Discrete 0.042s (24.000 fps)
         Interval: Discrete 0.050s (20.000 fps)
         Interval: Discrete 0.067s (15.000 fps)
         Interval: Discrete 0.100s (10.000 fps)
         Interval: Discrete 0.133s (7.500 fps)
         Interval: Discrete 0.200s (5.000 fps)
     Size: Discrete 480x270
         Interval: Discrete 0.033s (30.000 fps)
         Interval: Discrete 0.042s (24.000 fps)
         Interval: Discrete 0.050s (20.000 fps)
         Interval: Discrete 0.067s (15.000 fps)
         Interval: Discrete 0.100s (10.000 fps)
         Interval: Discrete 0.133s (7.500 fps)
         Interval: Discrete 0.200s (5.000 fps)
     Size: Discrete 640x360
         Interval: Discrete 0.033s (30.000 fps)
         Interval: Discrete 0.042s (24.000 fps)
         Interval: Discrete 0.050s (20.000 fps)
         Interval: Discrete 0.067s (15.000 fps)
         Interval: Discrete 0.100s (10.000 fps)
         Interval: Discrete 0.133s (7.500 fps)
         Interval: Discrete 0.200s (5.000 fps)
     Size: Discrete 800x448
         Interval: Discrete 0.033s (30.000 fps)
         Interval: Discrete 0.042s (24.000 fps)
         Interval: Discrete 0.050s (20.000 fps)
         Interval: Discrete 0.067s (15.000 fps)
         Interval: Discrete 0.100s (10.000 fps)
         Interval: Discrete 0.133s (7.500 fps)
         Interval: Discrete 0.200s (5.000 fps)
     Size: Discrete 800x600
         Interval: Discrete 0.042s (24.000 fps)
         Interval: Discrete 0.050s (20.000 fps)
         Interval: Discrete 0.067s (15.000 fps)
         Interval: Discrete 0.100s (10.000 fps)
         Interval: Discrete 0.133s (7.500 fps)
         Interval: Discrete 0.200s (5.000 fps)
     Size: Discrete 848x480
         Interval: Discrete 0.033s (30.000 fps)
         Interval: Discrete 0.042s (24.000 fps)
         Interval: Discrete 0.050s (20.000 fps)
         Interval: Discrete 0.067s (15.000 fps)
         Interval: Discrete 0.100s (10.000 fps)
         Interval: Discrete 0.133s (7.500 fps)
         Interval: Discrete 0.200s (5.000 fps)
     Size: Discrete 960x540
         Interval: Discrete 0.067s (15.000 fps)
         Interval: Discrete 0.100s (10.000 fps)
         Interval: Discrete 0.133s (7.500 fps)
         Interval: Discrete 0.200s (5.000 fps)
     Size: Discrete 1024x576
         Interval: Discrete 0.067s (15.000 fps)
         Interval: Discrete 0.100s (10.000 fps)
         Interval: Discrete 0.133s (7.500 fps)
         Interval: Discrete 0.200s (5.000 fps)
     Size: Discrete 1280x720
         Interval: Discrete 0.100s (10.000 fps)
         Interval: Discrete 0.133s (7.500 fps)
         Interval: Discrete 0.200s (5.000 fps)
     Size: Discrete 1600x896
         Interval: Discrete 0.133s (7.500 fps)
         Interval: Discrete 0.200s (5.000 fps)
     Size: Discrete 1920x1080
         Interval: Discrete 0.200s (5.000 fps)
     Size: Discrete 2304x1296
         Interval: Discrete 0.500s (2.000 fps)
     Size: Discrete 2304x1536
         Interval: Discrete 0.500s (2.000 fps)

 Index       : 1
 Type        : Video Capture
 Pixel Format: 'MJPG' (compressed)
 Name        : MJPEG
     Size: Discrete 640x480
    Interval: Discrete 0.033s (30.000 fps)
    Interval: Discrete 0.042s (24.000 fps)
    Interval: Discrete 0.050s (20.000 fps)
    Interval: Discrete 0.067s (15.000 fps)
    Interval: Discrete 0.100s (10.000 fps)
    Interval: Discrete 0.133s (7.500 fps)
    Interval: Discrete 0.200s (5.000 fps)
Size: Discrete 160x120
    Interval: Discrete 0.033s (30.000 fps)
    Interval: Discrete 0.042s (24.000 fps)
    Interval: Discrete 0.050s (20.000 fps)
    Interval: Discrete 0.067s (15.000 fps)
    Interval: Discrete 0.100s (10.000 fps)
    Interval: Discrete 0.133s (7.500 fps)
    Interval: Discrete 0.200s (5.000 fps)
Size: Discrete 176x144
    Interval: Discrete 0.033s (30.000 fps)
    Interval: Discrete 0.042s (24.000 fps)
    Interval: Discrete 0.050s (20.000 fps)
    Interval: Discrete 0.067s (15.000 fps)
    Interval: Discrete 0.100s (10.000 fps)
    Interval: Discrete 0.133s (7.500 fps)
    Interval: Discrete 0.200s (5.000 fps)
Size: Discrete 320x180
    Interval: Discrete 0.033s (30.000 fps)
    Interval: Discrete 0.042s (24.000 fps)
    Interval: Discrete 0.050s (20.000 fps)
    Interval: Discrete 0.067s (15.000 fps)
    Interval: Discrete 0.100s (10.000 fps)
    Interval: Discrete 0.133s (7.500 fps)
    Interval: Discrete 0.200s (5.000 fps)
Size: Discrete 320x240
    Interval: Discrete 0.033s (30.000 fps)
    Interval: Discrete 0.042s (24.000 fps)
    Interval: Discrete 0.050s (20.000 fps)
    Interval: Discrete 0.067s (15.000 fps)
    Interval: Discrete 0.100s (10.000 fps)
    Interval: Discrete 0.133s (7.500 fps)
    Interval: Discrete 0.200s (5.000 fps)
Size: Discrete 352x288
    Interval: Discrete 0.033s (30.000 fps)
    Interval: Discrete 0.042s (24.000 fps)
    Interval: Discrete 0.050s (20.000 fps)
    Interval: Discrete 0.067s (15.000 fps)
    Interval: Discrete 0.100s (10.000 fps)
    Interval: Discrete 0.133s (7.500 fps)
    Interval: Discrete 0.200s (5.000 fps)
Size: Discrete 424x240
    Interval: Discrete 0.033s (30.000 fps)
    Interval: Discrete 0.042s (24.000 fps)
    Interval: Discrete 0.050s (20.000 fps)
    Interval: Discrete 0.067s (15.000 fps)
    Interval: Discrete 0.100s (10.000 fps)
    Interval: Discrete 0.133s (7.500 fps)
    Interval: Discrete 0.200s (5.000 fps)
Size: Discrete 480x270
    Interval: Discrete 0.033s (30.000 fps)
    Interval: Discrete 0.042s (24.000 fps)
    Interval: Discrete 0.050s (20.000 fps)
    Interval: Discrete 0.067s (15.000 fps)
    Interval: Discrete 0.100s (10.000 fps)
    Interval: Discrete 0.133s (7.500 fps)
    Interval: Discrete 0.200s (5.000 fps)
Size: Discrete 640x360
    Interval: Discrete 0.033s (30.000 fps)
    Interval: Discrete 0.042s (24.000 fps)
    Interval: Discrete 0.050s (20.000 fps)
    Interval: Discrete 0.067s (15.000 fps)
    Interval: Discrete 0.100s (10.000 fps)
    Interval: Discrete 0.133s (7.500 fps)
    Interval: Discrete 0.200s (5.000 fps)
Size: Discrete 800x448
    Interval: Discrete 0.033s (30.000 fps)
    Interval: Discrete 0.042s (24.000 fps)
    Interval: Discrete 0.050s (20.000 fps)
    Interval: Discrete 0.067s (15.000 fps)
    Interval: Discrete 0.100s (10.000 fps)
    Interval: Discrete 0.133s (7.500 fps)
    Interval: Discrete 0.200s (5.000 fps)
Size: Discrete 800x600
    Interval: Discrete 0.033s (30.000 fps)
    Interval: Discrete 0.042s (24.000 fps)
    Interval: Discrete 0.050s (20.000 fps)
    Interval: Discrete 0.067s (15.000 fps)
    Interval: Discrete 0.100s (10.000 fps)
    Interval: Discrete 0.133s (7.500 fps)
    Interval: Discrete 0.200s (5.000 fps)
Size: Discrete 848x480
    Interval: Discrete 0.033s (30.000 fps)
    Interval: Discrete 0.042s (24.000 fps)
    Interval: Discrete 0.050s (20.000 fps)
    Interval: Discrete 0.067s (15.000 fps)
    Interval: Discrete 0.100s (10.000 fps)
    Interval: Discrete 0.133s (7.500 fps)
    Interval: Discrete 0.200s (5.000 fps)
Size: Discrete 960x540
    Interval: Discrete 0.033s (30.000 fps)
    Interval: Discrete 0.042s (24.000 fps)
    Interval: Discrete 0.050s (20.000 fps)
    Interval: Discrete 0.067s (15.000 fps)
    Interval: Discrete 0.100s (10.000 fps)
    Interval: Discrete 0.133s (7.500 fps)
    Interval: Discrete 0.200s (5.000 fps)
Size: Discrete 1024x576
    Interval: Discrete 0.033s (30.000 fps)
    Interval: Discrete 0.042s (24.000 fps)
    Interval: Discrete 0.050s (20.000 fps)
    Interval: Discrete 0.067s (15.000 fps)
    Interval: Discrete 0.100s (10.000 fps)
    Interval: Discrete 0.133s (7.500 fps)
    Interval: Discrete 0.200s (5.000 fps)
Size: Discrete 1280x720
    Interval: Discrete 0.033s (30.000 fps)
    Interval: Discrete 0.042s (24.000 fps)
    Interval: Discrete 0.050s (20.000 fps)
    Interval: Discrete 0.067s (15.000 fps)
    Interval: Discrete 0.100s (10.000 fps)
    Interval: Discrete 0.133s (7.500 fps)
    Interval: Discrete 0.200s (5.000 fps)
Size: Discrete 1600x896
    Interval: Discrete 0.033s (30.000 fps)
    Interval: Discrete 0.042s (24.000 fps)
    Interval: Discrete 0.050s (20.000 fps)
    Interval: Discrete 0.067s (15.000 fps)
    Interval: Discrete 0.100s (10.000 fps)
    Interval: Discrete 0.133s (7.500 fps)
    Interval: Discrete 0.200s (5.000 fps)
Size: Discrete 1920x1080
    Interval: Discrete 0.033s (30.000 fps)
    Interval: Discrete 0.042s (24.000 fps)
    Interval: Discrete 0.050s (20.000 fps)
    Interval: Discrete 0.067s (15.000 fps)
    Interval: Discrete 0.100s (10.000 fps)
    Interval: Discrete 0.133s (7.500 fps)
    Interval: Discrete 0.200s (5.000 fps)
    
por Sina Sh 26.05.2015 / 21:54

1 resposta

0

Para capturar com vídeo FullHD com mais de 5fps, você precisa da câmera para usar um formato codificado e não um vídeo bruto. A partir da saída dos formatos de lista v4l2, você pode ver que ele suporta 30fps em FullHD com MJPEG.

Então, ao invés de usar video / x-raw-yuv para seus limites, você deve usar image / jpeg. Lembre-se que, se você precisar que o resultado final seja H264, use um decodificador antes de reencodificá-lo (jpegdec).

Com isso dito, você está usando o gstreamer 0.10 que agora está 3 anos obsoleto e não consolidado. É altamente recomendável migrar para a versão 1.x que é a versão atual do upstream e tem, entre outros, suporte aprimorado para câmeras não brutas.

    
por thiagoss 27.05.2015 / 11:03