Recherche avancée

Médias (1)

Mot : - Tags -/portrait

Autres articles (35)

  • Des sites réalisés avec MediaSPIP

    2 mai 2011, par

    Cette page présente quelques-uns des sites fonctionnant sous MediaSPIP.
    Vous pouvez bien entendu ajouter le votre grâce au formulaire en bas de page.

  • De l’upload à la vidéo finale [version standalone]

    31 janvier 2010, par

    Le chemin d’un document audio ou vidéo dans SPIPMotion est divisé en trois étapes distinctes.
    Upload et récupération d’informations de la vidéo source
    Dans un premier temps, il est nécessaire de créer un article SPIP et de lui joindre le document vidéo "source".
    Au moment où ce document est joint à l’article, deux actions supplémentaires au comportement normal sont exécutées : La récupération des informations techniques des flux audio et video du fichier ; La génération d’une vignette : extraction d’une (...)

  • Librairies et binaires spécifiques au traitement vidéo et sonore

    31 janvier 2010, par

    Les logiciels et librairies suivantes sont utilisées par SPIPmotion d’une manière ou d’une autre.
    Binaires obligatoires FFMpeg : encodeur principal, permet de transcoder presque tous les types de fichiers vidéo et sonores dans les formats lisibles sur Internet. CF ce tutoriel pour son installation ; Oggz-tools : outils d’inspection de fichiers ogg ; Mediainfo : récupération d’informations depuis la plupart des formats vidéos et sonores ;
    Binaires complémentaires et facultatifs flvtool2 : (...)

Sur d’autres sites (5143)

  • FFMPEG profile-level-id size is invalid

    18 février 2020, par Mulham Aryan

    I’m trying to record a RTSP streaming from JVC KY-PZ 100.
    So for that i’m using ffmpeg with some parameters like segmentation, hls, ts, m3u8 etc ...
    i’m always getting an error The profile-level-id field size is invalid (41) and Error parsing AU headers

    This is the output of FFPROBE to debug the RTSP

    ffprobe -loglevel verbose  -i rtsp://jvc:0000@192.168.0.124:554/stream

    ffprobe version 4.2.2 Copyright (c) 2007-2019 the FFmpeg developers
     built with Apple LLVM version 10.0.0 (clang-1000.11.45.5)
     configuration: --prefix=/usr/local/Cellar/ffmpeg/4.2.2 --enable-shared --enable-pthreads --enable-version3 --enable-avresample --cc=clang --host-cflags='-I/Library/Java/JavaVirtualMachines/adoptopenjdk-13.0.1.jdk/Contents/Home/include -I/Library/Java/JavaVirtualMachines/adoptopenjdk-13.0.1.jdk/Contents/Home/include/darwin' --host-ldflags= --enable-ffplay --enable-gnutls --enable-gpl --enable-libaom --enable-libbluray --enable-libmp3lame --enable-libopus --enable-librubberband --enable-libsnappy --enable-libtesseract --enable-libtheora --enable-libvidstab --enable-libvorbis --enable-libvpx --enable-libx264 --enable-libx265 --enable-libxvid --enable-lzma --enable-libfontconfig --enable-libfreetype --enable-frei0r --enable-libass --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenjpeg --enable-librtmp --enable-libspeex --enable-libsoxr --enable-videotoolbox --disable-libjack --disable-indev=jack
     libavutil      56. 31.100 / 56. 31.100
     libavcodec     58. 54.100 / 58. 54.100
     libavformat    58. 29.100 / 58. 29.100
     libavdevice    58.  8.100 / 58.  8.100
     libavfilter     7. 57.100 /  7. 57.100
     libavresample   4.  0.  0 /  4.  0.  0
     libswscale      5.  5.100 /  5.  5.100
     libswresample   3.  5.100 /  3.  5.100
     libpostproc    55.  5.100 / 55.  5.100
    [tcp @ 0x7fa99ee001c0] Starting connection attempt to 192.168.0.124 port 554
    [tcp @ 0x7fa99ee001c0] Successfully connected to 192.168.0.124 port 554
    [rtsp @ 0x7fa99f807200] SDP:
    v=0
    o=- 1581949225269357 1 IN IP4 192.168.0.124
    s=KY-PZ100
    i=KY-PZ100
    t=0 0
    a=tool:LIVE555 Streaming Media v2013.10.03
    a=type:broadcast
    a=control:*
    a=range:npt=0-
    a=x-qt-text-nam:KY-PZ100
    a=x-qt-text-inf:KY-PZ100
    m=audio 0 RTP/AVP 96
    c=IN IP4 0.0.0.0
    b=AS:96
    a=rtpmap:96 mpeg4-generic/48000/2
    a=fmtp:96 streamtype=5;profile-level-id=41;mode=AAC-hbr;sizelength=13;indexlength=3;indexdeltalength=3;config=1190
    a=control:track1
    m=video 0 RTP/AVP 97
    c=IN IP4 0.0.0.0
    b=AS:1500
    a=rtpmap:97 H264/90000
    a=fmtp:97 packetization-mode=1;profile-level-id=4D401E;sprop-parameter-sets=Z01AHqtgUBf8uAqQEBAUAAAPpAADqYOlABksDcoUQDuLFIs=,aM48gA==
    a=control:track2

    [rtsp @ 0x7fa99f807200] The profile-level-id field size is invalid (41)
    [rtsp @ 0x7fa99f807200] setting jitter buffer size to 500
       Last message repeated 1 times
    [rtsp @ 0x7fa99f807200] Error parsing AU headers
       Last message repeated 4 times
    [h264 @ 0x7fa9a0806600] Reinit context to 640x368, pix_fmt: yuv420p
    [rtsp @ 0x7fa99f807200] Error parsing AU headers
       Last message repeated 235 times
    [rtsp @ 0x7fa99f807200] max_analyze_duration 5000000 reached at 5005000 microseconds st:1
    Input #0, rtsp, from 'rtsp://jvc:0000@192.168.0.124:554/stream':
     Metadata:
       title           : KY-PZ100
       comment         : KY-PZ100
     Duration: N/A, start: 0.066733, bitrate: N/A
       Stream #0:0: Audio: aac, 48000 Hz, stereo, fltp
       Stream #0:1: Video: h264 (Main), 1 reference frame, yuv420p(tv, bt709, progressive, left), 640x360 (640x368) [SAR 1:1 DAR 16:9], 29.97 fps, 29.97 tbr, 90k tbn, 59.94 tbc
  • How to create a virtual webcamera device with ability to stream a video file in linux

    27 février 2020, par Vlad

    I need to create a script, that will stream a video file to virtual webcam, and make a virtual webcam accessible not only with ffplay /dev/videoX etc. but also with different applications like Cheese(default Ubuntu webcam app), Chrome, Discord and others.
    I tried solutions that use v4l2loopback and ffmpeg, but this doesn’t work in Chrome/Discord/Cheese/...
    Now I have several webcams :

    1. /dev/video0 - Native laptop camera
    2. /dev/video1 - A camera created with DroidCamX to use phones camera
      as laptop camera
    3. /dev/video2 - v4l2loopback camera

    When I try to stream a video file to /dev/video2 with ffmpeg, this message is showing up :

    user@hostname:~/Videos$ sudo ffmpeg -re -i "video.mp4" -map 0:0 -f v4l2 /dev/video2
    ffmpeg version 3.4.6-0ubuntu0.18.04.1 Copyright (c) 2000-2019 the FFmpeg developers
     built with gcc 7 (Ubuntu 7.3.0-16ubuntu3)
     configuration: --prefix=/usr --extra-version=0ubuntu0.18.04.1 --toolchain=hardened --libdir=/usr/lib/x86_64-linux-gnu --incdir=/usr/include/x86_64-linux-gnu --enable-gpl --disable-stripping --enable-avresample --enable-avisynth --enable-gnutls --enable-ladspa --enable-libass --enable-libbluray --enable-libbs2b --enable-libcaca --enable-libcdio --enable-libflite --enable-libfontconfig --enable-libfreetype --enable-libfribidi --enable-libgme --enable-libgsm --enable-libmp3lame --enable-libmysofa --enable-libopenjpeg --enable-libopenmpt --enable-libopus --enable-libpulse --enable-librubberband --enable-librsvg --enable-libshine --enable-libsnappy --enable-libsoxr --enable-libspeex --enable-libssh --enable-libtheora --enable-libtwolame --enable-libvorbis --enable-libvpx --enable-libwavpack --enable-libwebp --enable-libx265 --enable-libxml2 --enable-libxvid --enable-libzmq --enable-libzvbi --enable-omx --enable-openal --enable-opengl --enable-sdl2 --enable-libdc1394 --enable-libdrm --enable-libiec61883 --enable-chromaprint --enable-frei0r --enable-libopencv --enable-libx264 --enable-shared
     libavutil      55. 78.100 / 55. 78.100
     libavcodec     57.107.100 / 57.107.100
     libavformat    57. 83.100 / 57. 83.100
     libavdevice    57. 10.100 / 57. 10.100
     libavfilter     6.107.100 /  6.107.100
     libavresample   3.  7.  0 /  3.  7.  0
     libswscale      4.  8.100 /  4.  8.100
     libswresample   2.  9.100 /  2.  9.100
     libpostproc    54.  7.100 / 54.  7.100
    Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'video.mp4':
     Metadata:
       major_brand     : isom
       minor_version   : 512
       compatible_brands: isomiso2avc1mp41
       encoder         : Lavf57.83.100
     Duration: 02:09:13.10, start: 0.000000, bitrate: 279 kb/s
       Stream #0:0(und): Video: h264 (High) (avc1 / 0x31637661), yuv420p(tv, bt709), 798x598 [SAR 1:1 DAR 399:299], 146 kb/s, 24 fps, 24 tbr, 12288 tbn, 48 tbc (default)
       Metadata:
         handler_name    : VideoHandler
       Stream #0:1(und): Audio: mp3 (mp4a / 0x6134706D), 48000 Hz, stereo, s16p, 128 kb/s (default)
       Metadata:
         handler_name    : SoundHandler
    Stream mapping:
     Stream #0:0 -> #0:0 (h264 (native) -> rawvideo (native))
    Press [q] to stop, [?] for help
    [v4l2 @ 0x5609f238c280] ioctl(VIDIOC_G_FMT): Invalid argument
    Could not write header for output file #0 (incorrect codec parameters ?): Invalid argument
    Error initializing output  stream 0:0
    Conversion failed!

    But when I run that command with /dev/video0, a stream starts and shows with ffplay /dev/video0. But applications, except Mozilla Firefox cannot detect /dev/video0 stream.
    So how can I create a virtual camera device properly in order to stream a video file to it and use as a camera in various applications ?

    I have Linux Ubuntu 18.04.4 LTS, kernel version : 5.3.0-40-generic, architecture : x86-64.
    Any help appreciated !

  • Invalid data found when processing file with ffmpeg API

    18 septembre 2019, par Timmy K

    I have an m4a file containing two AAC-encoded audio streams. I want to decode it on Android with the ffmpeg library. However, avformat_open_input() fails with "Invalid data found when processing input".

    This file was created (i.e. the audio data encoded) with the same library.

    I’ve double-checked the accuracy of the file path I provide to the call.

    The file doesn’t appear to be corrupt. It plays with QuickTime player, and ffprobe reports the output below.

    I’ve looked at the source in ffmpeg’s utils.c but it’s not clear at which of several points (including nested calls) this invalidity of the data in the file is being decided.

    FFPROBE OUTPUT
    built with gcc 7.2.0 (crosstool-NG fa8859cb)
    configuration: --prefix=/home/ubuntu/miniconda3 --disable-doc --enable-
    shared --extra-cflags='-fPIC -I/home/ubuntu/miniconda3/include' --extra-
    cxxflags='=-fPIC' --extra-libs='-L/home/ubuntu/miniconda3/lib -lz' --enable-
    pic --disable-static --disable-gpl --disable-nonfree --disable-openssl --
    enable-libvpx --cc=/opt/conda/conda-
    bld/ffmpeg_1530807717919/_build_env/bin/x86_64-conda_cos6-linux-gnu-cc --cxx=/opt/conda/conda-bld/ffmpeg_1530807717919/_build_env/bin/x86_64-conda_cos6-linux-gnu-c++ --enable-libopus
       libavutil            55. 78.100 / 55. 78.100
       libavcodec         57.107.100 / 57.107.100
       libavformat        57. 83.100 / 57. 83.100
       libavdevice        57. 10.100 / 57. 10.100
       libavfilter         6.107.100 /    6.107.100
       libswscale            4.    8.100 /    4.    8.100
       libswresample     2.    9.100 /    2.    9.100
    Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'recording-2019-09-03-110626.m4a':
       Metadata:
           major_brand         : isom
           minor_version     : 512
           compatible_brands: isomiso2mp41
           encoder                 : Lavf58.27.103
       Duration: 00:00:05.04, start: 0.000000, bitrate: 637 kb/s
           Stream #0:0(und): Audio: aac (LC) (mp4a / 0x6134706D), 44100 Hz, stereo, fltp, 314 kb/s (default)
           Metadata:
               handler_name        : SoundHandler
           Stream #0:1(und): Audio: aac (LC) (mp4a / 0x6134706D), 44100 Hz, stereo, fltp, 315 kb/s (default)
           Metadata:
               handler_name        : SoundHandler

    The call that fails with "invalid data found" is :

    if ( (ret = avformat_open_input( &inputFormatContext, filePath, 0, 0)) < 0 )
     {
       __android_log_print(ANDROID_LOG_DEBUG, "MyTag", "Could not open input file '%s' error %s ", filePath, av_err2str(ret) );
         return false;
     }

    I would expect this to "just work" since I encoded and muxed the two audio tracks with the same build of the ffmpeg libraries.

    When I built the libraries, I configured the build with :

    —enable-decoder=aac,pcm_s16le —enable-encoder=aac,pcm_s16le —enable-demuxer=mp4,wav —enable-muxer=mp4,wav —enable-protocol=file,http

    When I iterate through the codecs using av_codec_iterate() and look for supported sample rates I see :

    Found codec aac
    supported sample rate 96000
    supported sample rate 88200
    supported sample rate 64000
    supported sample rate 48000
    supported sample rate 44100
    supported sample rate 32000
    supported sample rate 24000
    supported sample rate 22050
    supported sample rate 16000
    supported sample rate 12000
    supported sample rate 11025
    supported sample rate 8000
    supported sample rate 7350
    Found codec pcm_s16le
    Found codec aac
    Found codec pcm_s16le

    Each codec appears twice, which I thought was maybe the encoder and decoder. But I note that only one has any supported sample rates. My test files’ sample rate is 44100.

    Any thoughts on what other things I can check for ? I wondered whether I should create and pass an AVInputFormat object explicitly to the call, based upon what I know about the contents of the file. But I don’t know how to construct one.