Recherche avancée

Médias (1)

Mot : - Tags -/Christian Nold

Autres articles (68)

  • Other interesting software

    13 avril 2011, par

    We don’t claim to be the only ones doing what we do ... and especially not to assert claims to be the best either ... What we do, we just try to do it well and getting better ...
    The following list represents softwares that tend to be more or less as MediaSPIP or that MediaSPIP tries more or less to do the same, whatever ...
    We don’t know them, we didn’t try them, but you can take a peek.
    Videopress
    Website : http://videopress.com/
    License : GNU/GPL v2
    Source code : (...)

  • Problèmes fréquents

    10 mars 2010, par

    PHP et safe_mode activé
    Une des principales sources de problèmes relève de la configuration de PHP et notamment de l’activation du safe_mode
    La solution consiterait à soit désactiver le safe_mode soit placer le script dans un répertoire accessible par apache pour le site

  • Les formats acceptés

    28 janvier 2010, par

    Les commandes suivantes permettent d’avoir des informations sur les formats et codecs gérés par l’installation local de ffmpeg :
    ffmpeg -codecs ffmpeg -formats
    Les format videos acceptés en entrée
    Cette liste est non exhaustive, elle met en exergue les principaux formats utilisés : h264 : H.264 / AVC / MPEG-4 AVC / MPEG-4 part 10 m4v : raw MPEG-4 video format flv : Flash Video (FLV) / Sorenson Spark / Sorenson H.263 Theora wmv :
    Les formats vidéos de sortie possibles
    Dans un premier temps on (...)

Sur d’autres sites (8862)

  • FFMPEG "Segmentation fault" with network stream source

    23 décembre 2023, par user11186466

    I use release : 4.2.2 (static) from "https://johnvansickle.com/ffmpeg/"

    



    Final code will be on "Amazon AWS lambda"

    



    Goal : use a url stream and add watermak

    



    Link to video : ​https://feoval.fr/519.mp4

    



    Link to Watermak : ​https://feoval.fr/watermark.png

    



    ./ffmpeg -i "https://feoval.fr/519.mp4" -i "./watermark.png" -filter_complex "overlay=W-w-10:H-h-10:format=rgb" -f "mp4" -movflags "frag_keyframe+empty_moov" -pix_fmt "yuv420p" test.mp4


    



    return "Segmentation fault"

    



    I have the same error on my computer and on AWS Lambda server

    



    ./ffmpeg -i "https://feoval.fr/519.mp4" -f "mp4" -movflags "frag_keyframe+empty_moov" -pix_fmt "yuv420p" test.mp4


    



    work (but not watermak)

    



    ./ffmpeg -i "./519.mp4" -i "./watermark.png" -filter_complex "overlay=W-w-10:H-h-10:format=rgb" -f "mp4" -movflags "frag_keyframe+empty_moov" -pix_fmt "yuv420p" test.mp4


    



    work (but not with stream)

    



    Thanks you very much !

    



    Logs for the first case who return "Segmentation fault" :

    



    ...
Stream mapping:
Stream #0:0 (h264) -> overlay:main (graph 0)
Stream #1:0 (png) -> overlay:overlay (graph 0)
overlay (graph 0) -> Stream #0:0 (libx264)
Stream #0:1 -> #0:1 (aac (native) -> aac (native))
Press [q] to stop, ? for help
[libx264 @ 0x742e480] using cpu capabilities: MMX2 SSE2Fast SSSE3 SSE4.2 AVX
[libx264 @ 0x742e480] profile High, level 3.1, 4:2:0, 8-bit
[libx264 @ 0x742e480] 264 - core 159 r2991 1771b55 - H.264/MPEG-4 AVC codec - Copyleft 2003-2019 - ​http://www.videolan.org/x264.html - options: cabac=1 ref=3 deblock=1:0:0 analyse=0x3:0x113 me=hex subme=7 psy=1 psy_rd=1.00:0.00 mixed_ref=1 me_range=16 chroma_me=1 trellis=1 8x8dct=1 cqm=0 deadzone=21,11 fast_pskip=1 chroma_qp_offset=-2 threads=12 lookahead_threads=2 sliced_threads=0 nr=0 decimate=1 interlaced=0 bluray_compat=0 constrained_intra=0 bframes=3 b_pyramid=2 b_adapt=1 b_bias=0 direct=1 weightb=1 open_gop=0 weightp=2 keyint=250 keyint_min=25 scenecut=40 intra_refresh=0 rc_lookahead=40 rc=crf mbtree=1 crf=23.0 qcomp=0.60 qpmin=0 qpmax=69 qpstep=4 ip_ratio=1.40 aq=1:1.00
Output #0, mp4, to 'test.mp4':
Metadata:
major_brand : mp42
minor_version : 1
compatible_brands: isommp41mp42
encoder : Lavf58.29.100
Stream #0:0: Video: h264 (libx264) (avc1 / 0x31637661), yuv420p, 480x848, q=-1--1, 30 fps, 15360 tbn, 30 tbc (default)
Metadata:
encoder : Lavc58.54.100 libx264
Side data:
cpb: bitrate max/min/avg: 0/0/0 buffer size: 0 vbv_delay: -1
Stream #0:1(und): Audio: aac (LC) (mp4a / 0x6134706D), 44100 Hz, stereo, fltp, 128 kb/s (default)
Metadata:
creation_time : 2020-01-13T08:54:26.000000Z
handler_name : Core Media Audio
encoder : Lavc58.54.100 aac
Segmentation fault (core dumped)


    


  • FFplay only plays MPEG-DASH when in the same directory

    26 mars 2020, par M. Parker

    I’ve created a series of video segments using dashenc.c from ffmpeg’s libav on my windows machine. The mpd file is templated, so it’s fairly simple and it passes validation. The video plays, but only if I put ffplay in the same folder as all the files and use :

    ffplay -i manifest.mpd

    If I try to play from some other directory, or even the same directory using :

    ffplay -i c:\tmp\manifest.mpd

    or

    ffplay -i c:/tmp/manifest.mpd

    The attempt fails, producing this error :

    [dash @ 0000016ce0d69900] Failed to open an initialization section in playlist 0
    [dash @ 0000016ce0d69900] Error when loading first fragment, playlist 0
    C:/tmp/manifest.mpd: Invalid argument

    The mpd file :

    <?xml version="1.0" encoding="utf-8"?>
    <mpd xmlns="urn:mpeg:dash:schema:mpd:2011" profiles="urn:mpeg:dash:profile:isoff-live:2011" type="dynamic" minimumupdateperiod="PT500S" suggestedpresentationdelay="PT4S" availabilitystarttime="2020-03-23T14:54:16Z" publishtime="2020-03-23T14:54:25Z" timeshiftbufferdepth="PT4811H53M52.3S" minbuffertime="PT9.6S">
       <programinformation>
       </programinformation>
       <period start="PT0.0S">
           <adaptationset contenttype="video" segmentalignment="true" bitstreamswitching="true">
               <representation mimetype="video/mp4" codecs="avc1.42001e" bandwidth="5953124" width="720" height="480">
                   <segmenttemplate timescale="1000000" duration="5000000" availabilitytimeoffset="4.967" initialization="init-stream$RepresentationID$.m4s" media="media-stream$RepresentationID$-$Number%06d$.m4s" startnumber="1">
                   </segmenttemplate>
               </representation>
           </adaptationset>
       </period>
    </mpd>

    Adding in a BaseUrl element didn’t help ; my guess is I’m formatting it wrong. Any ideas what I might do to fix this ?

  • Why can't I duplicate an MJPEG stream from a webcam to a V4L2 Loopback Device on Linux ?

    17 août 2021, par Chris White

    I'm trying to duplicate a USB webcam device V4L2 stream (/dev/video0) to a V4L2 Loopback Device (/dev/video99) at the highest resolution and framerate possible with the hardware available on a Raspberry Pi 4 running the latest Raspbian (also the minimum CPU load). I'm using FFMPEG version 7:4.1.6-1 deb10u1+rpt2 and v4l2loopback version 0.12.5.1.

    &#xA;

    The output from :&#xA;ffmpeg -f v4l2 -list_formats all -i /dev/video0 gives me the following :

    &#xA;

    [video4linux2,v4l2 @ 0xc1e1c0] Compressed:       mjpeg :          Motion-JPEG : 1600x1200 3264x2448 2592x1944 2048x1536 1280x960 1024x768 800x600 640x480 320x240 1600x1200&#xA;[video4linux2,v4l2 @ 0xc1e1c0] Raw       :     yuyv422 :           YUYV 4:2:2 : 1600x1200 3264x2448 2592x1944 2048x1536 1280x960 1024x768 800x600 640x480 320x240 1600x1200&#xA;

    &#xA;

    3264x2448px is the native CCD resolution, and the image is being used for machine vision purposes, so I'd like to use this maximum resolution at the highest framerate I can. The reason for the loopback device is so that I can view/stream the videofeed (with GStreamer) and take high resolution PNG snapshots simultaneously, using the command ffmpeg -f v4l2 -video_size 3264x2448 -i /dev/video99 -frames 1 capture.png -y From my understanding this means there is an MJPEG stream at this resolution and according to the command v4l2-ctl -d /dev/video0 --list-formats-ext I can manage 15fps :

    &#xA;

    ioctl: VIDIOC_ENUM_FMT&#xA;    Type: Video Capture&#xA;&#xA;    [0]: &#x27;MJPG&#x27; (Motion-JPEG, compressed)&#xA;        Size: Discrete 1600x1200&#xA;            Interval: Discrete 0.067s (15.000 fps)&#xA;            Interval: Discrete 0.067s (15.000 fps)&#xA;        Size: Discrete 3264x2448&#xA;            Interval: Discrete 0.067s (15.000 fps)&#xA;        Size: Discrete 2592x1944&#xA;            Interval: Discrete 0.067s (15.000 fps)&#xA;        Size: Discrete 2048x1536&#xA;            Interval: Discrete 0.067s (15.000 fps)&#xA;        Size: Discrete 1280x960&#xA;            Interval: Discrete 0.067s (15.000 fps)&#xA;        Size: Discrete 1024x768&#xA;            Interval: Discrete 0.033s (30.000 fps)&#xA;        Size: Discrete 800x600&#xA;            Interval: Discrete 0.033s (30.000 fps)&#xA;        Size: Discrete 640x480&#xA;            Interval: Discrete 0.033s (30.000 fps)&#xA;        Size: Discrete 320x240&#xA;            Interval: Discrete 0.033s (30.000 fps)&#xA;        Size: Discrete 1600x1200&#xA;            Interval: Discrete 0.067s (15.000 fps)&#xA;            Interval: Discrete 0.067s (15.000 fps)&#xA;    [1]: &#x27;YUYV&#x27; (YUYV 4:2:2)&#xA;        Size: Discrete 1600x1200&#xA;            Interval: Discrete 0.100s (10.000 fps)&#xA;            Interval: Discrete 0.100s (10.000 fps)&#xA;        Size: Discrete 3264x2448&#xA;            Interval: Discrete 0.500s (2.000 fps)&#xA;        Size: Discrete 2592x1944&#xA;            Interval: Discrete 0.333s (3.000 fps)&#xA;        Size: Discrete 2048x1536&#xA;            Interval: Discrete 0.333s (3.000 fps)&#xA;        Size: Discrete 1280x960&#xA;            Interval: Discrete 0.100s (10.000 fps)&#xA;        Size: Discrete 1024x768&#xA;            Interval: Discrete 0.100s (10.000 fps)&#xA;        Size: Discrete 800x600&#xA;            Interval: Discrete 0.033s (30.000 fps)&#xA;        Size: Discrete 640x480&#xA;            Interval: Discrete 0.033s (30.000 fps)&#xA;        Size: Discrete 320x240&#xA;            Interval: Discrete 0.033s (30.000 fps)&#xA;        Size: Discrete 1600x1200&#xA;            Interval: Discrete 0.100s (10.000 fps)&#xA;            Interval: Discrete 0.100s (10.000 fps)&#xA;

    &#xA;

    I feel like I've tried every possible version of GStreamer/FFMPEG command to achieve this and have had varying success, but more often than not I come up against "av_interleaved_write_frame() : Cannot allocate memory" or some issue with converting M-JPEG to rawvideo for the loopback device...

    &#xA;

    What command should I be using ? I'm at the end of my tether !

    &#xA;

    I've tried :

    &#xA;

    gst-launch-1.0 v4l2src device=/dev/video0 ! "image/jpeg,width=3264,height=2448,framerate=15/1" ! avdec_mjpeg ! "video/x-raw,format=YUY2,width=3264,height=2448,framerate=15/1" ! v4l2sink device=/dev/video99&#xA;

    &#xA;

    and

    &#xA;

    ffmpeg -f v4l2 -video_size 3264x2448 -i /dev/video0 -vcodec rawvideo -pix_fmt yuyv422 -r 1 -f v4l2 /dev/video99&#xA;

    &#xA;

    (EDIT) gives :

    &#xA;

    ffmpeg version 4.1.6-1~deb10u1&#x2B;rpt2 Copyright (c) 2000-2020 the FFmpeg developers&#xA;  built with gcc 8 (Raspbian 8.3.0-6&#x2B;rpi1)&#xA;  configuration: --prefix=/usr --extra-version=&#x27;1~deb10u1&#x2B;rpt2&#x27; --toolchain=hardened --incdir=/usr/include/arm-linux-gnueabihf --enable-gpl --disable-stripping --enable-avresample --disable-filter=resample --enable-avisynth --enable-gnutls --enable-ladspa --enable-libaom --enable-libass --enable-libbluray --enable-libbs2b --enable-libcaca --enable-libcdio --enable-libcodec2 --enable-libflite --enable-libfontconfig --enable-libfreetype --enable-libfribidi --enable-libgme --enable-libgsm --enable-libjack --enable-libmp3lame --enable-libmysofa --enable-libopenjpeg --enable-libopenmpt --enable-libopus --enable-libpulse --enable-librsvg --enable-librubberband --enable-libshine --enable-libsnappy --enable-libsoxr --enable-libspeex --enable-libssh --enable-libtheora --enable-libtwolame --enable-libvidstab --enable-libvorbis --enable-libvpx --enable-libwavpack --enable-libwebp --enable-libx265 --enable-libxml2 --enable-libxvid --enable-libzmq --enable-libzvbi --enable-lv2 --enable-omx --enable-openal --enable-opengl --enable-sdl2 --enable-omx-rpi --enable-mmal --enable-neon --enable-rpi --enable-vout-drm --enable-v4l2-request --enable-libudev --enable-libdc1394 --enable-libdrm --enable-libiec61883 --enable-chromaprint --enable-frei0r --enable-libx264 --enable-shared --libdir=/usr/lib/arm-linux-gnueabihf --cpu=arm1176jzf-s --arch=arm&#xA;  libavutil      56. 22.100 / 56. 22.100&#xA;  libavcodec     58. 35.100 / 58. 35.100&#xA;  libavformat    58. 20.100 / 58. 20.100&#xA;  libavdevice    58.  5.100 / 58.  5.100&#xA;  libavfilter     7. 40.101 /  7. 40.101&#xA;  libavresample   4.  0.  0 /  4.  0.  0&#xA;  libswscale      5.  3.100 /  5.  3.100&#xA;  libswresample   3.  3.100 /  3.  3.100&#xA;  libpostproc    55.  3.100 / 55.  3.100&#xA;Input #0, video4linux2,v4l2, from &#x27;/dev/video0&#x27;:&#xA;  Duration: N/A, start: 14226.770484, bitrate: 255688 kb/s&#xA;    Stream #0:0: Video: rawvideo (YUY2 / 0x32595559), yuyv422, 3264x2448, 255688 kb/s, 2 fps, 2 tbr, 1000k tbn, 1000k tbc&#xA;Stream mapping:&#xA;  Stream #0:0 -> #0:0 (rawvideo (native) -> rawvideo (native))&#xA;Press [q] to stop, [?] for help&#xA;Output #0, video4linux2,v4l2, to &#x27;/dev/video99&#x27;:&#xA;  Metadata:&#xA;    encoder         : Lavf58.20.100&#xA;    Stream #0:0: Video: rawvideo (YUY2 / 0x32595559), yuyv422, 3264x2448, q=2-31, 127844 kb/s, 1 fps, 1 tbn, 1 tbc&#xA;    Metadata:&#xA;      encoder         : Lavc58.35.100 rawvideo&#xA;av_interleaved_write_frame(): Cannot allocate memory&#xA;frame=    1 fps=0.0 q=-0.0 Lsize=N/A time=00:00:01.00 bitrate=N/A speed=15.8x    &#xA;video:15606kB audio:0kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: unknown&#xA;Conversion failed!&#xA;

    &#xA;

    and

    &#xA;

    ffmpeg -f v4l2 -video_size 3264x2448 -i /dev/video0 -vcodec rawvideo -pix_fmt yuv420p -r 15 -f v4l2 /dev/video99&#xA;

    &#xA;

    (EDIT) gives :

    &#xA;

    ffmpeg version 4.1.6-1~deb10u1&#x2B;rpt2 Copyright (c) 2000-2020 the FFmpeg developers&#xA;  built with gcc 8 (Raspbian 8.3.0-6&#x2B;rpi1)&#xA;  configuration: --prefix=/usr --extra-version=&#x27;1~deb10u1&#x2B;rpt2&#x27; --toolchain=hardened --incdir=/usr/include/arm-linux-gnueabihf --enable-gpl --disable-stripping --enable-avresample --disable-filter=resample --enable-avisynth --enable-gnutls --enable-ladspa --enable-libaom --enable-libass --enable-libbluray --enable-libbs2b --enable-libcaca --enable-libcdio --enable-libcodec2 --enable-libflite --enable-libfontconfig --enable-libfreetype --enable-libfribidi --enable-libgme --enable-libgsm --enable-libjack --enable-libmp3lame --enable-libmysofa --enable-libopenjpeg --enable-libopenmpt --enable-libopus --enable-libpulse --enable-librsvg --enable-librubberband --enable-libshine --enable-libsnappy --enable-libsoxr --enable-libspeex --enable-libssh --enable-libtheora --enable-libtwolame --enable-libvidstab --enable-libvorbis --enable-libvpx --enable-libwavpack --enable-libwebp --enable-libx265 --enable-libxml2 --enable-libxvid --enable-libzmq --enable-libzvbi --enable-lv2 --enable-omx --enable-openal --enable-opengl --enable-sdl2 --enable-omx-rpi --enable-mmal --enable-neon --enable-rpi --enable-vout-drm --enable-v4l2-request --enable-libudev --enable-libdc1394 --enable-libdrm --enable-libiec61883 --enable-chromaprint --enable-frei0r --enable-libx264 --enable-shared --libdir=/usr/lib/arm-linux-gnueabihf --cpu=arm1176jzf-s --arch=arm&#xA;  libavutil      56. 22.100 / 56. 22.100&#xA;  libavcodec     58. 35.100 / 58. 35.100&#xA;  libavformat    58. 20.100 / 58. 20.100&#xA;  libavdevice    58.  5.100 / 58.  5.100&#xA;  libavfilter     7. 40.101 /  7. 40.101&#xA;  libavresample   4.  0.  0 /  4.  0.  0&#xA;  libswscale      5.  3.100 /  5.  3.100&#xA;  libswresample   3.  3.100 /  3.  3.100&#xA;  libpostproc    55.  3.100 / 55.  3.100&#xA;Input #0, video4linux2,v4l2, from &#x27;/dev/video0&#x27;:&#xA;  Duration: N/A, start: 13704.103283, bitrate: 255688 kb/s&#xA;    Stream #0:0: Video: rawvideo (YUY2 / 0x32595559), yuyv422, 3264x2448, 255688 kb/s, 2 fps, 2 tbr, 1000k tbn, 1000k tbc&#xA;Stream mapping:&#xA;  Stream #0:0 -> #0:0 (rawvideo (native) -> rawvideo (native))&#xA;Press [q] to stop, [?] for help&#xA;Output #0, video4linux2,v4l2, to &#x27;/dev/video99&#x27;:&#xA;  Metadata:&#xA;    encoder         : Lavf58.20.100&#xA;    Stream #0:0: Video: rawvideo (I420 / 0x30323449), yuv420p, 3264x2448, q=2-31, 1438248 kb/s, 15 fps, 15 tbn, 15 tbc&#xA;    Metadata:&#xA;      encoder         : Lavc58.35.100 rawvideo&#xA;av_interleaved_write_frame(): Cannot allocate memory&#xA;    Last message repeated 7 times&#xA;frame=    8 fps=0.0 q=-0.0 Lsize=N/A time=00:00:00.53 bitrate=N/A dup=7 drop=0 speed=1.37x    &#xA;video:93636kB audio:0kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: unknown&#xA;Conversion failed!&#xA;

    &#xA;

    and

    &#xA;

    ffmpeg -f v4l2 -input_format mjpeg -i /dev/video0 -vcodec copy -f v4l2 /dev/video99&#xA;

    &#xA;

    (EDIT) gives :

    &#xA;

    ffmpeg version 4.1.6-1~deb10u1&#x2B;rpt2 Copyright (c) 2000-2020 the FFmpeg developers&#xA;  built with gcc 8 (Raspbian 8.3.0-6&#x2B;rpi1)&#xA;  configuration: --prefix=/usr --extra-version=&#x27;1~deb10u1&#x2B;rpt2&#x27; --toolchain=hardened --incdir=/usr/include/arm-linux-gnueabihf --enable-gpl --disable-stripping --enable-avresample --disable-filter=resample --enable-avisynth --enable-gnutls --enable-ladspa --enable-libaom --enable-libass --enable-libbluray --enable-libbs2b --enable-libcaca --enable-libcdio --enable-libcodec2 --enable-libflite --enable-libfontconfig --enable-libfreetype --enable-libfribidi --enable-libgme --enable-libgsm --enable-libjack --enable-libmp3lame --enable-libmysofa --enable-libopenjpeg --enable-libopenmpt --enable-libopus --enable-libpulse --enable-librsvg --enable-librubberband --enable-libshine --enable-libsnappy --enable-libsoxr --enable-libspeex --enable-libssh --enable-libtheora --enable-libtwolame --enable-libvidstab --enable-libvorbis --enable-libvpx --enable-libwavpack --enable-libwebp --enable-libx265 --enable-libxml2 --enable-libxvid --enable-libzmq --enable-libzvbi --enable-lv2 --enable-omx --enable-openal --enable-opengl --enable-sdl2 --enable-omx-rpi --enable-mmal --enable-neon --enable-rpi --enable-vout-drm --enable-v4l2-request --enable-libudev --enable-libdc1394 --enable-libdrm --enable-libiec61883 --enable-chromaprint --enable-frei0r --enable-libx264 --enable-shared --libdir=/usr/lib/arm-linux-gnueabihf --cpu=arm1176jzf-s --arch=arm&#xA;  libavutil      56. 22.100 / 56. 22.100&#xA;  libavcodec     58. 35.100 / 58. 35.100&#xA;  libavformat    58. 20.100 / 58. 20.100&#xA;  libavdevice    58.  5.100 / 58.  5.100&#xA;  libavfilter     7. 40.101 /  7. 40.101&#xA;  libavresample   4.  0.  0 /  4.  0.  0&#xA;  libswscale      5.  3.100 /  5.  3.100&#xA;  libswresample   3.  3.100 /  3.  3.100&#xA;  libpostproc    55.  3.100 / 55.  3.100&#xA;[mjpeg @ 0xdb5240] EOI missing, emulating&#xA;Input #0, video4linux2,v4l2, from &#x27;/dev/video0&#x27;:&#xA;  Duration: N/A, start: 12511.425271, bitrate: N/A&#xA;    Stream #0:0: Video: mjpeg, yuvj422p(pc, bt470bg/unknown/unknown), 3264x2448, 15 fps, 15 tbr, 1000k tbn, 1000k tbc&#xA;[video4linux2,v4l2 @ 0xdb7f10] V4L2 output device supports only a single raw video stream&#xA;Could not write header for output file #0 (incorrect codec parameters ?): Invalid argument&#xA;Stream mapping:&#xA;  Stream #0:0 -> #0:0 (copy)&#xA;    Last message repeated 1 times&#xA;

    &#xA;

    I'm not sure what to troubleshoot next - looking at available memory, there's no problem, so what am I doing wrong ? This copy of the feed is the last piece of the puzzle...

    &#xA;