Recherche avancée

Médias (91)

Autres articles (19)

  • Qualité du média après traitement

    21 juin 2013, par

    Le bon réglage du logiciel qui traite les média est important pour un équilibre entre les partis ( bande passante de l’hébergeur, qualité du média pour le rédacteur et le visiteur, accessibilité pour le visiteur ). Comment régler la qualité de son média ?
    Plus la qualité du média est importante, plus la bande passante sera utilisée. Le visiteur avec une connexion internet à petit débit devra attendre plus longtemps. Inversement plus, la qualité du média est pauvre et donc le média devient dégradé voire (...)

  • Websites made ​​with MediaSPIP

    2 mai 2011, par

    This page lists some websites based on MediaSPIP.

  • Creating farms of unique websites

    13 avril 2011, par

    MediaSPIP platforms can be installed as a farm, with a single "core" hosted on a dedicated server and used by multiple websites.
    This allows (among other things) : implementation costs to be shared between several different projects / individuals rapid deployment of multiple unique sites creation of groups of like-minded sites, making it possible to browse media in a more controlled and selective environment than the major "open" (...)

Sur d’autres sites (6844)

  • How to get estimate time in FFmpeg using php ?

    4 février 2019, par Pooja Jadav

    I’m using FFmpeg for in my project to overlay a video using php.

    I have been included a queue for command execute. So, sometimes many requests in queue, and take a long time to execute.

    That’s why, I have to show the progress bar for user identifies, how many time will take for creates it video. For this scenario, I have to take estimate time.

    Maybe it’s possible to calculate it by other params that are shown in the output such as fps, bitrate or speed.

    Any ideas ?

    //DownloadJob.php;

    public function __construct($video,$transparent_img,$output_file)
     {
       $this->video=$video;
       $this->transparent_img = $transparent_img;
       $this->output_file = $output_file;
       $create_at = date('Y-m-d H:i:s');
       $this->status =0;
       $this->download_id = base64_encode($video);

       DB::beginTransaction();
       DB::insert('INSERT INTO jobs_download(download_id,image,video,status,output_video,create_time)
                   VALUES(?,?,?,?,?,?)',[$this->download_id,$this->video,$this->transparent_img,$this->status,$this->output_file,$create_at]);
       DB::commit();
    }

    public function handle()
    {
       $video=$this->video;
       $transparent_img=$this->transparent_img;
       $output_file=$this->output_file;
       $ready=1;
       $failed=2;

       $input_video = $video;
       $transparent_img = $transparent_img;

       try{
           $ffmpeg = "C:\\ffmpeg\\bin\\ffmpeg";
           $cmd = $ffmpeg . " -i " . $input_video . " -i " . $transparent_img . " -filter_complex 'overlay' " . $output_file;
           //Log::info($cmd);
           exec($cmd, $output);

           if(file_exists($output_file)){

               DB::beginTransaction();
               DB::update('UPDATE jobs_download SET status=? WHERE download_id =?',[$ready,$this->download_id]);
               $this->status = 1;
               DB::commit();

               if(file_exists($input_video)){
                   unlink($input_video);
               }

               if(file_exists($transparent_img)){
                   unlink($transparent_img);
               }

           }else{
               Log::error('DownloadJob.php failed()',['download_id'=>$this->download_id]);
               DB::beginTransaction();
               DB::update('UPDATE jobs_download SET status=? WHERE download_id =? ',[$failed,$this->download_id]);
               $this->status = 3;
               DB::commit();
           }
       }catch (\Exception $e){
           Log::error('DownloadJob.php failed()',['download_id'=>$this->download_id]);
           DB::beginTransaction();
           DB::update('UPDATE jobs_download SET status=? WHERE download_id =? ',[$failed,$this->download_id]);
           $this->status = 3;
           DB::commit();
       }
    }

    public function failed()
    {
       $failed = 2;
       Log::error('DownloadJob.php failed()',['download_id'=>$this->download_id]);
       DB::beginTransaction();
       DB::update('UPDATE jobs_download SET status=? WHERE download_id =? ',[$failed,$this->download_id]);
       $this->status = 3;
       DB::commit();
    }

    public function getResponse()
    {
       return ['download_id' => $this->download_id,'eta_time_sec' => $eta_time_sec];
    }

    //FFmpegController.php

    public function generateVideo(Request $request_body)
    {
           //Overlay file
           $transparent_img=Input::file('transparent_img');
           //Main file
           $video=Input::file('video');
           $output_file = $video_name;
           //Send in queue for ffmpeg overlay
           $job = new DownloadJob($video_name,$image,$output_file);
           $data = $this->dispatch($job);

           $dl_url = $job->getResponse();//Get response download_id and estimate time in second
          print_r($dl_url);

    }

    Output

    I want to this answer in my output result.

      [
       'download_id':'NWM1ODAwNDU3NzkxOV92aWRlb19maWxlXzE1NDkyNzExMDkubXA0',
       'eta_time_sec':5
      ]

    How can I get estimation time in seconds from fps, bitrate or speed but I have no clue..

  • ffmpeg cut a video starting at n frames before a specific time ?

    1er septembre 2018, par hl037_

    I would like to cut a video (with ffmpeg) starting at n frames before a specific time, say 100 frames exactly before 00:08:05.042, is it possible ?

    (even if I don’t need it, is there a possibility to also specify a frame offset for the end ?)

  • ffmpeg concat takes too much time

    7 juillet 2021, par DavidB

    Trying to concatenate large mp4 files. Before 48000 if it takes about 500ms to be done, then after 48000 time increases dramatically to 10000ms. What I am missing ?

    


    ffmpeg -f concat -safe 0 -i cn.txt -c copy concated.mp4

$cn_txt = 
"ffconcat version 1.0
file t.mp4
outpoint 48000
file ad.mp4";
  // outputs in 500ms

$cn_txt = 
"ffconcat version 1.0
file t.mp4
outpoint 49000
file ad.mp4";
  // outputs in 10000ms