Recherche avancée

Médias (2)

Mot : - Tags -/plugins

Autres articles (7)

  • Déploiements possibles

    31 janvier 2010, par

    Deux types de déploiements sont envisageable dépendant de deux aspects : La méthode d’installation envisagée (en standalone ou en ferme) ; Le nombre d’encodages journaliers et la fréquentation envisagés ;
    L’encodage de vidéos est un processus lourd consommant énormément de ressources système (CPU et RAM), il est nécessaire de prendre tout cela en considération. Ce système n’est donc possible que sur un ou plusieurs serveurs dédiés.
    Version mono serveur
    La version mono serveur consiste à n’utiliser qu’une (...)

  • Configuration spécifique pour PHP5

    4 février 2011, par

    PHP5 est obligatoire, vous pouvez l’installer en suivant ce tutoriel spécifique.
    Il est recommandé dans un premier temps de désactiver le safe_mode, cependant, s’il est correctement configuré et que les binaires nécessaires sont accessibles, MediaSPIP devrait fonctionner correctement avec le safe_mode activé.
    Modules spécifiques
    Il est nécessaire d’installer certains modules PHP spécifiques, via le gestionnaire de paquet de votre distribution ou manuellement : php5-mysql pour la connectivité avec la (...)

  • Submit bugs and patches

    13 avril 2011

    Unfortunately a software is never perfect.
    If you think you have found a bug, report it using our ticket system. Please to help us to fix it by providing the following information : the browser you are using, including the exact version as precise an explanation as possible of the problem if possible, the steps taken resulting in the problem a link to the site / page in question
    If you think you have solved the bug, fill in a ticket and attach to it a corrective patch.
    You may also (...)

Sur d’autres sites (2039)

  • Why does ffmpeg output have to be encoded entirely before it can be played ?

    17 septembre 2019, par Eves

    I have an MVC C# application (sort of) that calls an api to get a FileStreamResult from an mp4. At the moment the mp4 is your standard h.264 encoded file and we just create a FileStream of the mp4 file and return a new FileStreamResult of that FileStream. Works fine. The mp4 is immediately available in the html video control. However, I’m looking into whether or not we can work with h.265 encoded files. So I am using ffmpeg to translate the file. Obviously there would be a delay due to the use of libx264 to change the h.265 file to h.264. But the real problem I have is that page just sits there until the entire mp4 is transcoded to h.264 before any part is viewable.

    API class variable :

    private Process _videoConcatenationProcess;

    API code :

    if (_videoConcatenationProcess != null && !_videoConcatenationProcess.HasExited)
    {
       _videoConcatenationProcess.Kill();
       _videoConcatenationProcess.Dispose();
    }
    _videoConcatenationProcess = new Process();
    _videoConcatenationProcess.StartInfo.UseShellExecute = false;
    _videoConcatenationProcess.StartInfo.RedirectStandardOutput = true;
    _videoConcatenationProcess.StartInfo.RedirectStandardError = true;
    _videoConcatenationProcess.StartInfo.CreateNoWindow = true;
    _videoConcatenationProcess.EnableRaisingEvents = true;
    _videoConcatenationProcess.StartInfo.FileName = @"C:\ffmpeg.exe";
    _videoConcatenationProcess.OutputDataReceived += (o, k) => System.Diagnostics.Debug.WriteLine(k.Data ?? "NULL", "ffplay");
    _videoConcatenationProcess.ErrorDataReceived += (o, k) => System.Diagnostics.Debug.WriteLine(k.Data ?? "NULL", "ffplay");
    _videoConcatenationProcess.Exited += (o, k) => System.Diagnostics.Debug.WriteLine("Exited", "ffplay");
    _videoConcatenationProcess.StartInfo.Arguments = $" -i \"{videoPath}\" -c:v libx264 -preset ultrafast -maxrate 3000k -bufsize 12000k -pix_fmt yuv420p -g 50 -vf scale=iw/2:-2 -c:a copy -movflags +faststart+frag_keyframe -f mp4 -";
    _videoConcatenationProcess.Start();
    _videoConcatenationProcess.BeginErrorReadLine();
    return new FileStreamResult(_videoConcatenationProcess.StandardOutput.BaseStream, mimeType);

    Simple html in the cshtml for the video :

    <video controls="controls" preload="metadata" controlslist="nodownload">
     <source src="@Html.Raw( Model.VideoUrl )" type="@Model.MimeType">
     Your browser does not support HTML5 video.
    </source></video>

    I’ve been tweaking the ffmpeg parameters for speed/quality and I am not done with that. However, the real problem is that the page starts up and the video control just sits there with the spinning thing until the entire mp4 file is encoding with h.264. I am using "-movflags +faststart+frag_keyframe" and the video control has preload="metadata" so shouldn’t that have allowed the video to be available at least in part early on ?

    So what I am I missing that the video control cannot show the video until it is fully encoded ?

    Here is the console output showing that the metadata is generated before the video has been converted :

    ffplay: Output #0, mp4, to 'pipe:':
    ffplay:   Metadata:
    ffplay:     major_brand     : isom
    ffplay:     minor_version   : 512
    ffplay:     compatible_brands: isomiso2mp41
    ffplay:     encoder         : Lavf58.20.100
    ffplay:     Stream #0:0(und): Video: h264 (libx264) (avc1 / 0x31637661), yuv420p, 960x540, q=-1--1, 30 fps, 15360 tbn, 30 tbc (default)
    ffplay:     Metadata:
    ffplay:       handler_name    : VideoHandler
    ffplay:       encoder         : Lavc58.35.100 libx264
    ffplay:     Side data:
    ffplay:       cpb: bitrate max/min/avg: 1000000/0/0 buffer size: 2000000 vbv_delay: -1
    ffplay:     Stream #0:1(und): Audio: aac (LC) (mp4a / 0x6134706D), 44100 Hz, stereo, fltp, 95 kb/s (default)
    ffplay:     Metadata:
    ffplay:       handler_name    : SoundHandler
    ffplay: frame=    8 fps=0.0 q=24.0 size=       0kB time=00:00:00.39 bitrate=   0.7kbits/s speed=0.565x    
    ffplay: frame=   24 fps= 19 q=36.0 size=       0kB time=00:00:00.95 bitrate=   0.3kbits/s speed=0.766x    
    ...
  • libavfilter : Add dehaze-filter option in existing derain.

    22 août 2019, par Xuewei Meng
    libavfilter : Add dehaze-filter option in existing derain.
    

    Add the support of dehaze filter in existing derain filter source
    code. As the processing procedure in FFmpeg is the same for current
    derain and dehaze, we reuse the derain filter source code. The
    model training and generation scripts are in repo
    https://github.com/XueweiMeng/derain_filter.git

    Reviewed-by : Steven Liu <lq@onvideo.cn>
    Signed-off-by : Xuewei Meng <xwmeng96@gmail.com>

    • [DH] doc/filters.texi
    • [DH] libavfilter/vf_derain.c
  • libavfilter : Update derain filter doc.

    27 juillet 2019, par Xuewei Meng
    libavfilter : Update derain filter doc.
    

    Add the usage of tensorflow model in derain filter. Training scripts
    as well as scripts for tf/native model generation are provided in the
    repository at https://github.com/XueweiMeng/derain_filter.git.

    Reviewed-by : Steven Liu <lq@onvideo.cn>
    Signed-off-by : Xuewei Meng <xwmeng96@gmail.com>

    • [DH] doc/filters.texi