Recherche avancée

Médias (0)

Mot : - Tags -/xmlrpc

Aucun média correspondant à vos critères n’est disponible sur le site.

Autres articles (26)

  • Support de tous types de médias

    10 avril 2011

    Contrairement à beaucoup de logiciels et autres plate-formes modernes de partage de documents, MediaSPIP a l’ambition de gérer un maximum de formats de documents différents qu’ils soient de type : images (png, gif, jpg, bmp et autres...) ; audio (MP3, Ogg, Wav et autres...) ; vidéo (Avi, MP4, Ogv, mpg, mov, wmv et autres...) ; contenu textuel, code ou autres (open office, microsoft office (tableur, présentation), web (html, css), LaTeX, Google Earth) (...)

  • Emballe médias : à quoi cela sert ?

    4 février 2011, par

    Ce plugin vise à gérer des sites de mise en ligne de documents de tous types.
    Il crée des "médias", à savoir : un "média" est un article au sens SPIP créé automatiquement lors du téléversement d’un document qu’il soit audio, vidéo, image ou textuel ; un seul document ne peut être lié à un article dit "média" ;

  • 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 (6613)

  • .mov conversion to .mp4 using ffmpeg doesn't convert the entire video

    5 février 2013, par user504879

    I am trying to convert a mov file which I got from saving my powerpoint presentation to a movie file. However only a part of the presentation is converted not the entire one and also running qt-start doesn't make the exported mp4 to stream over rtmp. Is there something which I am missing ?

    I am attaching the output which i get when I am trying to convert the file using ffmpeg

    $ export LD_LIBRARY_PATH=/usr/local/lib; /usr/local/bin/ffmpeg -y -i /data/tmp/vialogues_prez.mov -r 20 -g 40 -acodec libfaac -ar 44100  -ab 96k -vcodec libx264 -s 640x480 -vpre medium /data/videos/vialogues_prez.mp4

    FFmpeg version 0.6.1, Copyright (c) 2000-2010 the FFmpeg developers
     built on Feb 19 2011 19:03:56 with gcc 4.4.5
     configuration: --enable-gpl --enable-version3 --enable-nonfree --enable-postproc --enable-libfaac --enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libtheora --enable-libvorbis --enable-libvpx --enable-libx264 --enable-libxvid --enable-x11grab
     libavutil     50.15. 1 / 50.15. 1
     libavcodec    52.72. 2 / 52.72. 2
     libavformat   52.64. 2 / 52.64. 2
     libavdevice   52. 2. 0 / 52. 2. 0
     libswscale     0.11. 0 /  0.11. 0
     libpostproc   51. 2. 0 / 51. 2. 0
    [mov,mp4,m4a,3gp,3g2,mj2 @ 0x186f460]max_analyze_duration reached

    Seems stream 0 codec frame rate differs from container frame rate: 600.00 (600/1) -> 0.08 (1/12)
    Input #0, mov,mp4,m4a,3gp,3g2,mj2, from '/data/tmp/vialogues_prez.mov':
     Metadata:
       major_brand     : qt  
       minor_version   : 537199360
       compatible_brands: qt  
       comment         : Microsoft PowerPoint Movie
       comment-eng     : Microsoft PowerPoint Movie
     Duration: 00:04:47.00, start: 0.000000, bitrate: 22 kb/s
       Stream #0.0(eng): Video: qtrle, bgra, 640x480, 21 kb/s, 0.01 fps, 0.08 tbr, 600 tbn, 600 tbc
       Stream #0.1(eng): Video: 0x0000, 600 tbr, 600 tbn, 600 tbc
       Stream #0.2(eng): Video: 0x0000, 600 tbr, 600 tbn, 600 tbc
    [libx264 @ 0x1873b50]using cpu capabilities: MMX2 SSE2Fast SSSE3 FastShuffle SSE4.1 Cache64
    [libx264 @ 0x1873b50]profile High, level 3.0
    [libx264 @ 0x1873b50]264 - core 114 - H.264/MPEG-4 AVC codec - Copyleft 2003-2011 - 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=1 sliced_threads=0 nr=0 decimate=1 interlaced=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=abr mbtree=1 bitrate=200 ratetol=20.0 qcomp=0.60 qpmin=10 qpmax=51 qpstep=4 ip_ratio=1.41 aq=1:1.00
    Output #0, mp4, to '/data/videos/vialogues_prez.mp4':
     Metadata:
       encoder         : Lavf52.64.2
       Stream #0.0(eng): Video: libx264, yuv420p, 640x480, q=10-51, 200 kb/s, 20 tbn, 20 tbc
    Stream mapping:
     Stream #0.0 -> #0.0
    Press [q] to stop encoding
    frame=    4 fps=  0 q=32766.0 Lsize=      50kB time=45.05 bitrate=   9.0kbits/s    
    video:49kB audio:0kB global headers:0kB muxing overhead 1.740573%
    [libx264 @ 0x1873b50]frame I:1     Avg QP:32.73  size:  8427
    [libx264 @ 0x1873b50]frame P:3     Avg QP:20.68  size: 13640
    [libx264 @ 0x1873b50]mb I  I16..4: 60.8% 14.6% 24.7%
    [libx264 @ 0x1873b50]mb P  I16..4: 28.7%  7.2% 15.4%  P16..4:  2.0%  1.3%  1.4%  0.0%  0.0%    skip:43.9%
    [libx264 @ 0x1873b50]final ratefactor: -16.67
    [libx264 @ 0x1873b50]8x8 transform intra:14.2% inter:5.0%
    [libx264 @ 0x1873b50]coded y,uvDC,uvAC intra: 25.2% 18.4% 13.0% inter: 5.3% 7.4% 7.2%
    [libx264 @ 0x1873b50]i16 v,h,dc,p: 63% 34%  1%  2%
    [libx264 @ 0x1873b50]i8 v,h,dc,ddl,ddr,vr,hd,vl,hu: 19% 41% 31%  1%  1%  1%  1%  1%  4%
    [libx264 @ 0x1873b50]i4 v,h,dc,ddl,ddr,vr,hd,vl,hu: 29% 33% 19%  2%  3%  3%  4%  3%  4%
    [libx264 @ 0x1873b50]i8c dc,h,v,p: 75% 20%  4%  1%
    [libx264 @ 0x1873b50]Weighted P-Frames: Y:0.0% UV:0.0%
    [libx264 @ 0x1873b50]ref P L0: 57.0% 12.2% 26.2%  4.7%
    [libx264 @ 0x1873b50]kb/s:1.14

    any help is appreciated.

  • C# Process in loop reading error output, causes "No async read operation is in progress on the stream" error

    29 mai 2023, par TSLee

    I am trying to read the format of multiple video files using ffmpeg in an asynchronous operation of Process and facing an error, "No async read operation is in progress on the stream". According to https://social.msdn.microsoft.com/Forums/vstudio/en-US/c961f461-7afb-4a92-b0ae-f78c2003b5de/help-an-asynchronous-read-operation-is-already-in-progress-on-the-standardoutput-stream?forum=csharpgeneral, I think I have to use CancelErrorRead(), as BeginErrorReadLine() can't be launched more than once. I also wonder if I use this function in the wrong place, because the read operation has ended in process1.exited() ? But the operation can't proceed to the second index with this error.

    


    How could I use CancelErrorRead()/CancelOutputRead() properly and where should I place them on the code ? I also did an experiment in that I commented these two CancelRead(), and a different error "async read operation has been started on the stream" will appear.

    


                Process process1 = new Process();
            process1.StartInfo.WindowStyle = ProcessWindowStyle.Hidden;
            process1.StartInfo.CreateNoWindow = true;
            process1.StartInfo.UseShellExecute = false;
            process1.StartInfo.FileName = ".\\ffmpeg.exe";
            process1.StartInfo.WorkingDirectory = ".\\";
            process1.EnableRaisingEvents = true;
            process1.StartInfo.RedirectStandardOutput = true; //if this is true, UseShellExecute must be false. true if output should be written to StandardOutput
            process1.StartInfo.RedirectStandardError = true;
            //indicates that the associated Process has written a line that's terminated with a newline
            process1.ErrorDataReceived += new DataReceivedEventHandler(inputHandler);
            process1.Exited += (ending, p) =>
            {
                flag = true;
                process1.CancelOutputRead();
                process1.CancelErrorRead();//
            };
            foreach (String file in inputList)
            {
                if (flag == true)
                {
                    flag = false;
                    process1.StartInfo.Arguments = "-i " + " \"" + file + "\"";
                    Console.WriteLine(process1.StartInfo.Arguments);
                    process1.Start();
                    process1.BeginOutputReadLine();//
                    process1.BeginErrorReadLine();
                    process1.WaitForExit(); //for asynchronous output
                }


            }
        }
        private void inputHandler(object sender, DataReceivedEventArgs l)
        {
             cba.Append(l.Data + "\n");
             videoInput = l.Data;
             //Console.WriteLine(cba);
             //Process p = sender as Process;
             Console.WriteLine(videoInput);

             this.BeginInvoke(new MethodInvoker(() =>
             {

              if (!String.IsNullOrEmpty(videoInput))
              {
                    if (videoInput.Contains("Stream #0:0"))
                    {
                        String subvideoInput1 = 
                        videoInput.Substring(videoInput.IndexOf("Stream #0:0"));
                        String video_inputType = subvideoInput1;
                        textBox1.Text += video_inputType + System.Environment.NewLine;
                        Console.WriteLine(video_inputType);
                     }
                     if (videoInput.Contains("Stream #0:1"))
                     {
                         String subvideoInput2 = 
                         videoInput.Substring(videoInput.IndexOf("Stream #0:1"));
                         Console.WriteLine(subvideoInput2.IndexOf("\n"));
                         Console.WriteLine(subvideoInput2);
                         String audio_inputType = subvideoInput2;
                         textBox1.AppendText(audio_inputType + System.Environment.NewLine);
                         Console.WriteLine(audio_inputType);
                     }
                     if (videoInput.Contains("Duration:"))
                     {
                         String videoinputDuration = 
                         videoInput.Substring(videoInput.IndexOf("Duration:"));
                         String subvideo_inputDuration = videoinputDuration.Substring(9);
                         String inputvideoDuration = 
                     subvideo_inputDuration.Remove(subvideo_inputDuration.IndexOf("."));
                         Console.WriteLine(inputvideoDuration);
                         double totalseconds = 
                         TimeSpan.Parse(inputvideoDuration).TotalSeconds;
                    
                    

                }
            }

        }));


    }


    


  • ffmpeg throws conversion error, but only if the triggering web request is made from safari ?

    22 novembre 2022, par Kyoshiro Kokujou Obscuritas

    I'm using ffmpeg to do an on-the-fly conversion of audio files to ensure high compatibility. i'm converting them to OGG. and all of this is done by a .NET 6 REST service.
This service is then accessed by a javascript Frontend.
Now the problem. The exact same request runs through without any problems on Windows + Firefox, but it does not on Safari. In Safari it says something about "unknownConversion failed"

    


    it's the same file, it's the same name, and to make sure there are no weird invisible characters i used the Microsoft File API to convert it to a proper file path.

    


    code looks like this

    


    var ffmpeg = new Process();
        var startInfo = new ProcessStartInfo("D:\\Programme\\ffmpeg\\bin\\ffmpeg.exe",
            $"-i \"{path.FullName}\" -c:a libopus -f ogg -")
        {
            RedirectStandardError = true,
            RedirectStandardOutput = true,
            RedirectStandardInput = true,
            UseShellExecute = false,
            CreateNoWindow = true
        };
        ffmpeg.EnableRaisingEvents = true;
        ffmpeg.StartInfo = startInfo;
        ffmpeg.ErrorDataReceived += OnErrorDataReceived;
        ffmpeg.Exited += OnFinished;

        ffmpeg.Start();
        ffmpeg.BeginErrorReadLine();

        return File(new BufferedStream(ffmpeg.StandardOutput.BaseStream), "audio/ogg");


    


    Complete Logs : https://pastebin.com/tTUcsjuT