Recherche avancée

Médias (1)

Mot : - Tags -/getid3

Sur d’autres sites (333)

  • Cannot duplicate virtual camera on Orange Pi 5B [closed]

    21 janvier, par Denis Kotov

    I have faced with the issue that I cannot duplicate virtual camera for SkyDroid 5.8GHz OTG Receiver on Orange Pi 5B :

    


    orangepi@orangepi-desktop:~$ gst-launch-1.0 v4l2src device=/dev/video0 ! xvimagesink device=/dev/video2

Setting pipeline to PAUSED ...
ERROR: from element /GstPipeline:pipeline0/GstXvImageSink:xvimagesink0: Could not initialise Xv output
Additional debug info:
../sys/xvimage/xvimagesink.c(1806): gst_xv_image_sink_open (): /GstPipeline:pipeline0/GstXvImageSink:xvimagesink0:
Could not open display (null)
ERROR: pipeline doesn't want to preroll.
Failed to set pipeline to PAUSED.
Setting pipeline to NULL ...
Freeing pipeline ...

orangepi@orangepi-desktop:~$ gst-launch-1.0 v4l2src device=/dev/video0 ! v4l2sink device=/dev/video2

Setting pipeline to PAUSED ...
ERROR: from element /GstPipeline:pipeline0/GstV4l2Sink:v4l2sink0: Cannot identify device '/dev/video2'.
Additional debug info:
../sys/v4l2/v4l2_calls.c(608): gst_v4l2_open (): /GstPipeline:pipeline0/GstV4l2Sink:v4l2sink0:
system error: No such file or directory
ERROR: pipeline doesn't want to preroll.
Failed to set pipeline to PAUSED.
Setting pipeline to NULL ...
Freeing pipeline ...


    


    Also I tried to duplicate video camera using ffmpeg :

    


    orangepi@orangepi-desktop:~$ sudo ffmpeg -f video4linux2 -i /dev/video0 -codec copy -f v4l2 /dev/video2

ffmpeg version 6.0-5+git230804.e243e8d001~j1 Copyright (c) 2000-2023 the FFmpeg developers
  built with gcc 11 (Ubuntu 11.4.0-1ubuntu1~22.04)
  configuration: --prefix=/usr --extra-version='5+git230804.e243e8d001~j1' --toolchain=hardened --libdir=/usr/lib/aarch64-linux-gnu --incdir=/usr/include/aarch64-linux-gnu --arch=arm64 --enable-gpl --disable-stripping --enable-gnutls --enable-ladspa --enable-libaom --enable-libass --enable-libbluray --enable-libbs2b --enable-libcaca --enable-libcdio --enable-libcodec2 --enable-libdav1d --enable-libflite --enable-libfontconfig --enable-libfreetype --enable-libfribidi --enable-libglslang --enable-libgme --enable-libgsm --enable-libjack --enable-libmp3lame --enable-libmysofa --enable-libopenjpeg --enable-libopenmpt --enable-libopus --enable-libpulse --enable-librabbitmq --enable-librist --enable-librubberband --enable-libshine --enable-libsnappy --enable-libsoxr --enable-libspeex --enable-libsrt --enable-libssh --enable-libsvtav1 --enable-libtheora --enable-libtwolame --enable-libvidstab --enable-libvorbis --enable-libvpx --enable-libwebp --enable-libx265 --enable-libxml2 --enable-libxvid --enable-libzimg --enable-libzmq --enable-libzvbi --enable-lv2 --enable-omx --enable-openal --enable-opencl --enable-opengl --enable-version3 --enable-rkmpp --enable-sdl2 --disable-sndio --enable-pocketsphinx --enable-librsvg --enable-libdc1394 --enable-libdrm --enable-libiec61883 --enable-chromaprint --enable-frei0r --enable-libx264 --enable-libplacebo --enable-shared
  libavutil      58.  2.100 / 58.  2.100
  libavcodec     60.  3.100 / 60.  3.100
  libavformat    60.  3.100 / 60.  3.100
  libavdevice    60.  1.100 / 60.  1.100
  libavfilter     9.  3.100 /  9.  3.100
  libswscale      7.  1.100 /  7.  1.100
  libswresample   4. 10.100 /  4. 10.100
  libpostproc    57.  1.100 / 57.  1.100
[mjpeg @ 0xaaab04104190] EOI missing, emulating
Input #0, video4linux2,v4l2, from '/dev/video0':
  Duration: N/A, start: 3317.330868, bitrate: N/A
  Stream #0:0: Video: mjpeg (Baseline), yuvj422p(pc, bt470bg/unknown/unknown), 640x480, 30 fps, 30 tbr, 1000k tbn
[video4linux2,v4l2 @ 0xaaab04105750] Unable to open V4L2 device '/dev/video2'
[out#0/video4linux2,v4l2 @ 0xaaab040b9200] Could not write header (incorrect codec parameters ?): No such file or directory
[vost#0:0/copy @ 0xaaab04107640] Error initializing output stream: 
Stream mapping:
  Stream #0:0 -> #0:0 (copy)
    Last message repeated 1 times
[video4linux2,v4l2 @ 0xaaab041039d0] Some buffers are still owned by the caller on close.
ioctl(VIDIOC_QBUF): Bad file descriptor


    


    But it also did not work ...

    


    The reason I want it, because I try to have additional processing using OpenCV but the camera is opened by another application, and it is not possible to similtuniuously open camera in 2 applications at the same time ...

    


    Have somebody faced with similar issue ?

    


  • ffmpeg - store desired output to python variable

    15 janvier, par Chris P

    If i run : ffmpeg -list_devices true -f dshow -i dummy i get :

    


    ffmpeg version 2023-01-30-git-2d202985b7-full_build-www.gyan.dev Copyright (c) 2000-2023 the FFmpeg developers
  built with gcc 12.2.0 (Rev10, Built by MSYS2 project)
  configuration: --enable-gpl --enable-version3 --enable-static --disable-w32threads --disable-autodetect --enable-fontconfig --enable-iconv --enable-gnutls --enable-libxml2 --enable-gmp --enable-bzlib --enable-lzma --enable-libsnappy --enable-zlib --enable-librist --enable-libsrt --enable-libssh --enable-libzmq --enable-avisynth --enable-libbluray --enable-libcaca --enable-sdl2 --enable-libaribb24 --enable-libdav1d --enable-libdavs2 --enable-libuavs3d --enable-libzvbi --enable-librav1e --enable-libsvtav1 --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxavs2 --enable-libxvid --enable-libaom --enable-libjxl --enable-libopenjpeg --enable-libvpx --enable-mediafoundation --enable-libass --enable-frei0r --enable-libfreetype --enable-libfribidi --enable-liblensfun --enable-libvidstab --enable-libvmaf --enable-libzimg --enable-amf --enable-cuda-llvm --enable-cuvid --enable-ffnvcodec --enable-nvdec --enable-nvenc --enable-d3d11va --enable-dxva2 --enable-libvpl --enable-libshaderc --enable-vulkan --enable-libplacebo --enable-opencl --enable-libcdio --enable-libgme --enable-libmodplug --enable-libopenmpt --enable-libopencore-amrwb --enable-libmp3lame --enable-libshine --enable-libtheora --enable-libtwolame --enable-libvo-amrwbenc --enable-libilbc --enable-libgsm --enable-libopencore-amrnb --enable-libopus --enable-libspeex --enable-libvorbis --enable-ladspa --enable-libbs2b --enable-libflite --enable-libmysofa --enable-librubberband --enable-libsoxr --enable-chromaprint
  libavutil      57. 44.100 / 57. 44.100
  libavcodec     59. 59.100 / 59. 59.100
  libavformat    59. 36.100 / 59. 36.100
  libavdevice    59.  8.101 / 59.  8.101
  libavfilter     8. 56.100 /  8. 56.100
  libswscale      6.  8.112 /  6.  8.112
  libswresample   4.  9.100 /  4.  9.100
  libpostproc    56.  7.100 / 56.  7.100
[dshow @ 00000236357d0480] "HP True Vision HD Camera" (video)
[dshow @ 00000236357d0480]   Alternative name "@device_pnp_\\?\usb#vid_04f2&pid_b6ab&mi_00#6&763f234&2&0000#{65e8773d-8f56-11d0-a3b9-00a0c9223196}\global"
[dshow @ 00000236357d0480] "Microphone Array (Intel® Smart Sound Technology for Digital Microphones)" (audio)
[dshow @ 00000236357d0480]   Alternative name "@device_cm_{33D9A762-90C8-11D0-BD43-00A0C911CE86}\wave_{E8824DE9-F848-47F1-BB2A-EB24E11050FC}"
dummy: Immediate exit requested


    


    From this output i want to store : "HP True Vision HD Camera" (first video output) in a python variable.

    


    Is this possible ?

    


    I am trying

    


    import subprocess
ffmpeg_command = ["ffmpeg", "-list_devices", "true","-f", "dshow", "-i", "dummy"]
pipe = subprocess.run(ffmpeg_command,stdout=subprocess.PIPE,stderr=subprocess.PIPE,bufsize=10**8)
output = pipe.stdout
lines = output.splitlines()
for line in lines:
    if line.startswith("[dshow @"):
        if "(video)" in line:
            camera_info = line.split("\"")[1]
            print(camera_info)


    


  • avformat/ffrtmpcrypt : Fix int-conversion warning

    22 décembre 2023, par Frank Plowman
    avformat/ffrtmpcrypt : Fix int-conversion warning
    

    The gcrypt definition of `bn_new` used to use the return statement
    on errors, with an AVERROR return value, regardless of the signature
    of the function where the macro is used - it is called in
    `dh_generate_key` and `ff_dh_init` which return pointers. As a result,
    compiling with gcrypt and the ffrtmpcrypt protocol resulted in an
    int-conversion warning. GCC 14 may upgrade these to errors [1].

    This patch fixes the problem by changing the macro to remove `AVERROR`
    and instead set `bn` to null if the allocation fails. This is the
    behaviour of all the other `bn_new` implementations and so the result is
    already checked at all the callsites. AFAICT, this should be the only
    change needed to get ffmpeg off Fedora's naughty list of projects with
    warnings which may be upgraded to errors in GCC 14 [2].

    [1] : https://gcc.gnu.org/pipermail/gcc/2023-May/241264.html
    [2] : https://www.mail-archive.com/devel@lists.fedoraproject.org/msg196024.html

    Signed-off-by : Frank Plowman <post@frankplowman.com>
    Signed-off-by : Martin Storsjö <martin@martin.st>

    • [DH] libavformat/rtmpdh.c