Recherche avancée

Médias (91)

Autres articles (90)

  • Mise à jour de la version 0.1 vers 0.2

    24 juin 2013, par

    Explications des différents changements notables lors du passage de la version 0.1 de MediaSPIP à la version 0.3. Quelles sont les nouveautés
    Au niveau des dépendances logicielles Utilisation des dernières versions de FFMpeg (>= v1.2.1) ; Installation des dépendances pour Smush ; Installation de MediaInfo et FFprobe pour la récupération des métadonnées ; On n’utilise plus ffmpeg2theora ; On n’installe plus flvtool2 au profit de flvtool++ ; On n’installe plus ffmpeg-php qui n’est plus maintenu au (...)

  • Ecrire une actualité

    21 juin 2013, par

    Présentez les changements dans votre MédiaSPIP ou les actualités de vos projets sur votre MédiaSPIP grâce à la rubrique actualités.
    Dans le thème par défaut spipeo de MédiaSPIP, les actualités sont affichées en bas de la page principale sous les éditoriaux.
    Vous pouvez personnaliser le formulaire de création d’une actualité.
    Formulaire de création d’une actualité Dans le cas d’un document de type actualité, les champs proposés par défaut sont : Date de publication ( personnaliser la date de publication ) (...)

  • Gestion générale des documents

    13 mai 2011, par

    MédiaSPIP ne modifie jamais le document original mis en ligne.
    Pour chaque document mis en ligne il effectue deux opérations successives : la création d’une version supplémentaire qui peut être facilement consultée en ligne tout en laissant l’original téléchargeable dans le cas où le document original ne peut être lu dans un navigateur Internet ; la récupération des métadonnées du document original pour illustrer textuellement le fichier ;
    Les tableaux ci-dessous expliquent ce que peut faire MédiaSPIP (...)

Sur d’autres sites (12962)

  • Should I use aevalsrc or anullsrc ? I got flooded with "cur_dts is invalid st:0" or "Delay between the first packet", encoding stalls at frame 127

    28 avril 2022, par jokoon

    Context : this command is generated with a python script, it aims at concatenating different small videos of different format, with a 0.5s pause, considering some video don't have an audio track.

    


    ffmpeg.exe
-report
-i
input0.mp4
-i
input1.mp4
-i
input2.mp4
-i
input3.mp4
-i
input4.mp4
-i
input5.mp4
-i
input6.mp4
-i
input7.mp4
-i
input8.mp4
-f
lavfi
-i
color=c=black:s=480x270:d=0.5:r=24,format=yuv420p
-f
lavfi
-i
anullsrc
-filter_complex_script
filter_complex_script.txt
-map
[final_video]
-map
[final_audio]
-c:a
aac
concatenated-2022-04-27--23-53.mp4


    


    


    [0]fps=24[fps0];
[fps0]scale=480:270:force_original_aspect_ratio=decrease,pad=480:270:-1:-1,setsar=1[rescaled0];
[1]fps=24[fps1];
[fps1]scale=480:270:force_original_aspect_ratio=decrease,pad=480:270:-1:-1,setsar=1[rescaled1];
[2]fps=24[fps2];
[fps2]scale=480:270:force_original_aspect_ratio=decrease,pad=480:270:-1:-1,setsar=1[rescaled2];
[3]fps=24[fps3];
[fps3]scale=480:270:force_original_aspect_ratio=decrease,pad=480:270:-1:-1,setsar=1[rescaled3];
[4]fps=24[fps4];
[fps4]scale=480:270:force_original_aspect_ratio=decrease,pad=480:270:-1:-1,setsar=1[rescaled4];
[5]fps=24[fps5];
[fps5]scale=480:270:force_original_aspect_ratio=decrease,pad=480:270:-1:-1,setsar=1[rescaled5];
[6]fps=24[fps6];
[fps6]scale=480:270:force_original_aspect_ratio=decrease,pad=480:270:-1:-1,setsar=1[rescaled6];
[7]fps=24[fps7];
[fps7]scale=480:270:force_original_aspect_ratio=decrease,pad=480:270:-1:-1,setsar=1[rescaled7];
[8]fps=24[fps8];
[fps8]scale=480:270:force_original_aspect_ratio=decrease,pad=480:270:-1:-1,setsar=1[rescaled8];
[rescaled0][10:a][9:v][10:a][rescaled1][10:a][9:v][10:a][rescaled2][10:a][9:v][10:a][rescaled3][10:a][9:v][10:a][rescaled4][10:a][9:v][10:a][rescaled5][5:a][9:v][10:a][rescaled6][6:a][9:v][10:a][rescaled7][7:a][9:v][10:a][rescaled8][8:a]concat=n=17:v=1:a=1[final_video][final_audio]


    


    I either have thousands of
[mp4 @ 000002132cefe100] Delay between the first packet and last packet in the muxing queue is 10007800 > 10000000: forcing output

    


    when I use

    


    -f lavfi -i anullsrc
so I tried using -f lavfi -i aevalsrc=0:n=1

    


    instead, I have have thousands of

    


    cur_dts is invalid st:0 (0) [init:1 i_done:0 finish:0] (this is harmless if it occurs once at the start per stream)

    


    The encoding "stalls" at frame 127, it keeps doing things, but the frame counter doesn't increment.

    


    Here are the inputs :

    


    I skipped the yuvj420p input as it generated warnings (looks like it's not a big problem)

    


    enter image description here

    


    Here is a log (I trimmed it a bit) : (I think it's a bit large for stackoverflow)

    


    https://bpa.st/HB7A

    


  • Grabbing a single image from a MS VS .NET 6.0 C# WPF process always returns the same image

    12 mai 2023, par Wolfgang Kurz

    I am trying to develop a MS VS .NET 6.0 C# WPF application to digitize my Super 8 cine films. To grab the frames of the film I want to use FFMPEG because Accord.NET6.0 DirectShow does not work under MS VS 2022 .
I use
FFmpeg 64-bit static Windows build from www.gyan.dev
Version : 2022-09-29-git-8089fe072e-full_build-www.gyan.dev

    


    FFMPEG is invoked from a Process in ma application whicch sets the process FFMPEG start parameters. The webcam parameter is "USB Webcam" ( digital Celestron handheld microscope connected via USB - is DirectShow compatible )
The video resolution parameter "camRes" is "1280x960"

    


    public void UpdateImage(string aString)
    {
        string startPath = "C:" + MainWindow.bSl + "ffmpeg" + MainWindow.bSl + "bin" + MainWindow.bSl + "ffmpeg.exe ";

        MainWindow.aResult = "";
        System.Drawing.Bitmap result;
        ProcessStartInfo psi;
        psi = new ProcessStartInfo();
        psi.FileName = startPath;
        string targPath;
        psi.Arguments = "-f dshow -video_size" + MainWindow.dQuote + webCam + MainWindow.dQuote +
             " -framerate 10  -i video=" + MainWindow.dQuote + camRes + MainWindow.dQuote +
            " -frames:v 1 test%3d.bmp -update 1";
        string errors = "";
        string results = "";
        psi.CreateNoWindow = false;
        psi.RedirectStandardOutput = true;
        psi.RedirectStandardError = true;
        psi.WindowStyle = ProcessWindowStyle.Normal;
        psi.WorkingDirectory = "C:" + MainWindow.bSl + "ffmpeg" + MainWindow.bSl + "bin" + MainWindow.bSl;

        using (Process theProcess = new Process())
        {
            theProcess.StartInfo = psi;
            theProcess.Start();

            theProcess.WaitForExit();
            while (theProcess.HasExited == false)
            {
                Thread.Sleep(50);
            }
            Thread.Sleep(50);

            try
            {
                if (File.Exists(pathCI) == true)
                {
                    DefineImage.ffmpegRes = new Bitmap(pathCI);
                    MainWindow.actMWInstance.UpdateMessage(DateTime.Now +
                        "- Old image disposed, new image grabbed");
                    File.Delete(pathCI);
                }
            }
            catch (System.Exception ex)
            {
                MainWindow.actMWInstance.UpdateMessage(DateTime.Now + "Image grabbing failed");
            }
            theProcess.Close();
            theProcess.Dispose();
        }

        if (aString.Length == 0)
        {
            File.Delete(pathCI);
            MainWindow.actMWInstance.DoMove("200", "0", true);
        }
        if (ffmpegRes != null)
        {
            BitmapSource aBMPSrc = BitmapConversion.ToWpfBitmap(ffmpegRes);
            IMGFrame.Source = aBMPSrc;
        }
        Show();
    }


    


    The attached screenshot shows the expected GUI content.
https://www.wkurz.com/wkurz/images/FFMPEGTEST.jpg

    


    My problem now is, when I try to refresh the image in the DefineDialog window, I always get the same image although the film has been moved by one frame.

    


    Is the first image cached by FFMPEG and always used again with the provided parameters.

    


    How to force FFMPEG to replace the image with a new one.

    



    


    -----------------------------------------------------------------------+this is additional information to the question.
I have managed to grab the film frame but still get always the same image during a session :*

    


    GUI of the WPF C# program

    


    It is obvious that the cine film frame has been successfully grabbbed.
The next step should be to work at the image ( correct brightness contrast, gama and colors) and then store the evaluated correction values that have later to be applied to the frames during a batch process, which automatically transports the film, grabs the frames and corrects the colors and then stores the frames as consecutively numbered images which than can be used to generate a video with FFMPEG :

    


    Now the problem I cannot overcome :

    


    In the definition dialog there are 2 buttons ( Refresh and New Image). The intension is to reread / regrab a frame, if the current frame is not optimal to evaluate the correction values.

    


    Whenever I click one of the buttons FFMPEG seems to grab an image, but FFMPEG provides always the same (identcial to the first already available image) to the caller ( a .NET C# Process in my proggram).

    


    The output stream is a single jpg image ( test%04d.jpg ) in a specified target library . Here follows the generated output which seem to be OK according to my knowledge.

    


    I want to ask all interested persons to look over this provided information - may be someone has an idea, what causes the fact, that FFMPEG 6.0 van Neumann always delivers the first image grabbed. in a session.
It seems that there is something cached and reused over and over again.

    


    DefImg 147: UpdateImage started ( Lines starting with DefImg or DefineImage are test output statements provided by the C# program)


    


    DefineImage 155 11.05.2023 17:53:20 C :\ffmpeg\bin\ffmpeg.exe -y -nostdin -f dshow -an -video_size 1280x960 -framerate 10 -i video="USB Microscope" -filter:v "smartblur=luma_radius=0.9:luma_strength=0.7:luma_threshold=0" -frames:v 1 C :\FilmProjList\TEST\TEST%%04d.jpg -update 1
DefineImage 180 ffmpeg version 6.0-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 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
Trailing option(s) found in the command : may be ignored.
Input #0, dshow, from 'video=USB Microscope' :
Duration : N/A, start : 5368.514437, bitrate : N/A
Stream #0:0 : Video : rawvideo (YUY2 / 0x32595559), yuyv422(tv, bt470bg/bt709/unknown), 1280x960, 10 fps, 10 tbr, 10000k tbn
Stream mapping :
Stream #0:0 -> #0:0 (rawvideo (native) -> mjpeg (native))
[swscaler @ 000001442fdcebc0] deprecated pixel format used, make sure you did set range correctly ( that I do not understand )
Last message repeated 3 times
[mjpeg @ 00000144278b0d80] removing common factors from framerate
Output #0, image2, to 'C :\FilmProjList\TEST\TEST%04d.jpg' :
Metadata :
encoder : Lavf60.3.100
Stream #0:0 : Video : mjpeg, yuvj422p(pc, bt470bg/bt709/unknown, progressive), 1280x960, q=2-31, 200 kb/s, 10 fps, 10 tbn
Metadata :
encoder : Lavc60.3.100 mjpeg
Side data :
cpb : bitrate max/min/avg : 0/0/200000 buffer size : 0 vbv_delay : N/A
frame= 0 fps=0.0 q=3.6 size= 0kB time=00:00:00.00 bitrate=N/A speed=N/A
    
frame= 1 fps=0.0 q=3.6 Lsize=N/A time=00:00:00.00 bitrate=N/A speed= 0x
    
video:45kB audio:0kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead : unknown

    


    DefineImage 248 11.05.2023 17:53:23 ( test output from, the C# program)
Das Programm "[11724] Cine2Video.exe" wurde mit Code 0 (0x0) beendet.

    


    


    


    Mit freundlichen Grüßen / Best regards
Ute & Wolfgang Kurz
Domaine : https://uwkurz.de ; Homepage : https://www.uwkurz.de/home
Location : 9° 11' 27,75" East, 48° 43' 32,80" North
E-Mail : wolfgang@uwkurz.de , ute@uwkurz.de
Gesendet über Glasfaser von HOMENET.de

    


    


  • ffmpeg conversion executable file output ".MOD : no files in such directory"

    11 octobre 2023, par Zezaps

    I installed ffmpeg using Homebrew in macOS 12.2. I have a folder of MOD files from an old camera that I need to convert to MOV or MP4 to edit them, I have a .bat file in my Windows machine that I can run on a folder that has MOD files to batch convert them to MP4 or MOV that I can easily tweak but I'm kinda clueless with how to do this on my new (and first) Mac, I came across this script that I managed to use once through the terminal but tried putting it in a executable file so I can easily run it and copy it in every folder that I need to for new projects. When I created the exec file I'm not sure if I did it correctly though.

    


    for i in *.MOD;
  do name=`echo "$i" | cut -d'.' -f1`
  echo "$name"
  ffmpeg -i "$i" "${name}.MOV"
done


    


    This script is inside an exec file that I edited using TextEdit, it works sometimes if I go to the directory through the terminal and run it but if I run it double clicking it I get a ".MOD : Not such file or directory" even though I placed the exec on a folder that has multiple .MOD files.

    


    Here is the full terminal output

    


    Last login: Sat Apr 23 20:00:38 on ttys001
/Users/anwar/Movies/FILMS/ANWAR/BLUE/old/batmodmp4 ; exit;
anwar@MacBook-Pro-de-Anwar ~ % /Users/anwar/Movies/FILMS/ANWAR/BLUE/old/batmodmp4 ; exit;
*
ffmpeg version 5.0 Copyright (c) 2000-2022 the FFmpeg developers
  built with Apple clang version 13.0.0 (clang-1300.0.29.30)
  configuration: --prefix=/opt/homebrew/Cellar/ffmpeg/5.0 --enable-shared --enable-pthreads --enable-version3 --cc=clang --host-cflags= --host-ldflags= --enable-ffplay --enable-gnutls --enable-gpl --enable-libaom --enable-libbluray --enable-libdav1d --enable-libmp3lame --enable-libopus --enable-librav1e --enable-librist --enable-librubberband --enable-libsnappy --enable-libsrt --enable-libtesseract --enable-libtheora --enable-libvidstab --enable-libvmaf --enable-libvorbis --enable-libvpx --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxml2 --enable-libxvid --enable-lzma --enable-libfontconfig --enable-libfreetype --enable-frei0r --enable-libass --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenjpeg --enable-libspeex --enable-libsoxr --enable-libzmq --enable-libzimg --disable-libjack --disable-indev=jack --enable-videotoolbox --enable-neon
  libavutil      57. 17.100 / 57. 17.100
  libavcodec     59. 18.100 / 59. 18.100
  libavformat    59. 16.100 / 59. 16.100
  libavdevice    59.  4.100 / 59.  4.100
  libavfilter     8. 24.100 /  8. 24.100
  libswscale      6.  4.100 /  6.  4.100
  libswresample   4.  3.100 /  4.  3.100
  libpostproc    56.  3.100 / 56.  3.100
*.MOD: No such file or directory

Saving session...
...copying shared history...
...saving history...truncating history files...
...completed.