Recherche avancée

Médias (0)

Mot : - Tags -/xml-rpc

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

Autres articles (95)

  • ANNEXE : Les plugins utilisés spécifiquement pour la ferme

    5 mars 2010, par

    Le site central/maître de la ferme a besoin d’utiliser plusieurs plugins supplémentaires vis à vis des canaux pour son bon fonctionnement. le plugin Gestion de la mutualisation ; le plugin inscription3 pour gérer les inscriptions et les demandes de création d’instance de mutualisation dès l’inscription des utilisateurs ; le plugin verifier qui fournit une API de vérification des champs (utilisé par inscription3) ; le plugin champs extras v2 nécessité par inscription3 (...)

  • Problèmes fréquents

    10 mars 2010, par

    PHP et safe_mode activé
    Une des principales sources de problèmes relève de la configuration de PHP et notamment de l’activation du safe_mode
    La solution consiterait à soit désactiver le safe_mode soit placer le script dans un répertoire accessible par apache pour le site

  • Ajouter des informations spécifiques aux utilisateurs et autres modifications de comportement liées aux auteurs

    12 avril 2011, par

    La manière la plus simple d’ajouter des informations aux auteurs est d’installer le plugin Inscription3. Il permet également de modifier certains comportements liés aux utilisateurs (référez-vous à sa documentation pour plus d’informations).
    Il est également possible d’ajouter des champs aux auteurs en installant les plugins champs extras 2 et Interface pour champs extras.

Sur d’autres sites (5780)

  • Building my JAVA parameter array for FFMPEG

    29 janvier 2016, par user3541092

    FFmpeg Version : N-63893-gc69defd Copyright (c) 2000-2014 the FFmpeg developers
    built on Jul 16 2014 05:38:01 with gcc 4.6 (Debian 4.6.3-1)

    Machine : Amazon Linux t2.micro (free tier)

    Sample File : sample_iTunes.mov
    Sample File URL : https://support.apple.com/en-us/HT201549

    I’m trying to replicate the following FFmpeg command, using a string array and then pass this array into the Runtime.getRuntime().exec().

    ffmpeg -i file:/var/local/ffmpegtest/media_input/sample_iTunes.mov -pix_fmt yuv420p -c:v libx264 -vtag mp42 -metadata major_brand="mp42" -b:v 8000k -minrate 8000k -maxrate 10000k -ac 2 -strict experimental -c:a aac -b:a 256k -metadata:s:a:0 handler="Stereo" /var/local/ffmpegtest/media_output/sample_iTunes.mp4 -y

    NOTE : This works when I pass the full command, as a single string into Runtime.getRuntime().exec().

       String _cmd = "ffmpeg -i %s -pix_fmt yuv420p -c:v libx264 -vtag mp42 -metadata major_brand=\"mp42\" "
               + "-b:v 8000k -minrate 8000k -maxrate 10000k -ac 2 -strict experimental -c:a aac -b:a 256k -metadata:s:a:0 handler=\"Stereo\" %s -y";
       String _ffmpegCommand = String.format(_cmd, _inputFile, _outPutFile);
       p = Runtime.getRuntime().exec(_ffmpegCommand);
       BufferedReader _reader = new BufferedReader(new InputStreamReader(p.getErrorStream()));

       String _line = null;

       while((_line = _reader.readLine()) != null) {
           lw.writeLine(_logPath + _logName, _line);
           System.out.println(_line);
       }

    I started out with just a basic parameter list. As I add add each additional parameter, I re-build the JAR file and upload it to my EC2 instance to test for any errors.

    The following string array works :

    try
           {
               String[] _params = {"ffmpeg",
                          "-i",
                          String.format("%s", _inputFile),
                          "-pix_fmt",
                          "yuv420p",
                          "-c:v",
                          "libx264",
                          String.format("%s", _outPutFile),
                          "-y"};

               p = Runtime.getRuntime().exec(_params);

               BufferedReader _reader = new BufferedReader(new InputStreamReader(p.getErrorStream()));

               String _line = null;

               while((_line = _reader.readLine()) != null) {
                   lw.writeLine(_logPath + _logName, _line);
                   System.out.println(_line);
               }
           }
           catch (Exception e) {
               BufferedReader _reader = new BufferedReader(new InputStreamReader(p.getErrorStream()));

               String _line = null;

               while((_line = _reader.readLine()) != null) {
                   lw.writeLine(_logPath + _logName, _line);
                   System.out.println(_line);
               }

           }

    However, when I continue to build the array with additional parameters, I begin to experience problems (lets add -vtag mp42) :

    try
           {
               String[] _params = {"ffmpeg",
                          "-i",
                          String.format("%s", _inputFile),
                          "-pix_fmt",
                          "yuv420p",
                          "-c:v",
                          "libx264",
                          "-vtag", // <---- New
                          "mp42", // <---  New
                          String.format("%s", _outPutFile),
                          "-y"};

               p = Runtime.getRuntime().exec(_params);

               BufferedReader _reader = new BufferedReader(new InputStreamReader(p.getErrorStream()));

               String _line = null;

               while((_line = _reader.readLine()) != null) {
                   lw.writeLine(_logPath + _logName, _line);
                   System.out.println(_line);
               }
           }
           catch (Exception e) {
               BufferedReader _reader = new BufferedReader(new InputStreamReader(p.getErrorStream()));

               String _line = null;

               while((_line = _reader.readLine()) != null) {
                   lw.writeLine(_logPath + _logName, _line);
                   System.out.println(_line);
               }

           }

    Error Message : Could not write header for output file #0 (incorrect codec parameters ?) : Invalid data found when processing input

    Full Log output for errant trail run :

    29 Jan 2016 03:45:09 UTC - Running FFMpeg...
    29 Jan 2016 03:45:09 UTC -  Input file: /var/local/ffmpegtest/media_input/sample_iTunes.mov
    29 Jan 2016 03:45:09 UTC -  Output file: /var/local/ffmpegtest/media_output/sample_iTunes.mp4
    29 Jan 2016 03:45:09 UTC - ffmpeg version N-63893-gc69defd Copyright (c) 2000-2014 the FFmpeg developers
    29 Jan 2016 03:45:09 UTC -   built on Jul 16 2014 05:38:01 with gcc 4.6 (Debian 4.6.3-1)
    29 Jan 2016 03:45:09 UTC -   configuration: --prefix=/root/ffmpeg-static/64bit --extra-cflags='-I/root/ffmpeg-static/64bit/include -static' --extra-ldflags='-L/root/ffmpeg-static/64bit/lib -static' --extra-libs='-lxml2 -lexpat -lfreetype' --enable-static --disable-shared --disable-ffserver --disable-doc --enable-bzlib --enable-zlib --enable-postproc --enable-runtime-cpudetect --enable-libx264 --enable-gpl --enable-libtheora --enable-libvorbis --enable-libmp3lame --enable-gray --enable-libass --enable-libfreetype --enable-libopenjpeg --enable-libspeex --enable-libvo-aacenc --enable-libvo-amrwbenc --enable-version3 --enable-libvpx
    29 Jan 2016 03:45:09 UTC -   libavutil      52. 89.100 / 52. 89.100
    29 Jan 2016 03:45:09 UTC -   libavcodec     55. 66.101 / 55. 66.101
    29 Jan 2016 03:45:09 UTC -   libavformat    55. 43.100 / 55. 43.100
    29 Jan 2016 03:45:09 UTC -   libavdevice    55. 13.101 / 55. 13.101
    29 Jan 2016 03:45:09 UTC -   libavfilter     4.  8.100 /  4.  8.100
    29 Jan 2016 03:45:09 UTC -   libswscale      2.  6.100 /  2.  6.100
    29 Jan 2016 03:45:09 UTC -   libswresample   0. 19.100 /  0. 19.100
    29 Jan 2016 03:45:09 UTC -   libpostproc    52.  3.100 / 52.  3.100
    29 Jan 2016 03:45:09 UTC - Input #0, mov,mp4,m4a,3gp,3g2,mj2, from '/var/local/ffmpegtest/media_input/sample_iTunes.mov':
    29 Jan 2016 03:45:09 UTC -   Metadata:
    29 Jan 2016 03:45:09 UTC -     major_brand     : qt  
    29 Jan 2016 03:45:09 UTC -     minor_version   : 537199360
    29 Jan 2016 03:45:09 UTC -     compatible_brands: qt  
    29 Jan 2016 03:45:09 UTC -     creation_time   : 2005-10-17 22:54:32
    29 Jan 2016 03:45:09 UTC -   Duration: 00:01:25.50, start: 0.000000, bitrate: 307 kb/s
    29 Jan 2016 03:45:09 UTC -     Stream #0:0(eng): Video: mpeg4 (Simple Profile) (mp4v / 0x7634706D), yuv420p, 640x480 [SAR 1:1 DAR 4:3], 261 kb/s, 10 fps, 10 tbr, 3k tbn, 25 tbc (default)
    29 Jan 2016 03:45:09 UTC -     Metadata:
    29 Jan 2016 03:45:09 UTC -       creation_time   : 2005-10-17 22:54:33
    29 Jan 2016 03:45:09 UTC -       handler_name    : Apple Video Media Handler
    29 Jan 2016 03:45:09 UTC -       encoder         : 3ivx D4 4.5.1
    29 Jan 2016 03:45:09 UTC -     Stream #0:1(eng): Audio: aac (mp4a / 0x6134706D), 32000 Hz, mono, fltp, 43 kb/s (default)
    29 Jan 2016 03:45:09 UTC -     Metadata:
    29 Jan 2016 03:45:09 UTC -       creation_time   : 2005-10-17 22:54:34
    29 Jan 2016 03:45:09 UTC -       handler_name    : Apple Sound Media Handler
    29 Jan 2016 03:45:09 UTC - [libx264 @ 0x30c2c00] using SAR=1/1
    29 Jan 2016 03:45:09 UTC - [libx264 @ 0x30c2c00] using cpu capabilities: MMX2 SSE2Fast SSSE3 FastShuffle SSE4.2 AVX AVX2 FMA3 BMI1 BMI2
    29 Jan 2016 03:45:09 UTC - [libx264 @ 0x30c2c00] profile High, level 2.2
    29 Jan 2016 03:45:09 UTC - [libx264 @ 0x30c2c00] 264 - core 129 r2230 1cffe9f - H.264/MPEG-4 AVC codec - Copyleft 2003-2012 - 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 lookahead_threads=1 sliced_threads=0 nr=0 decimate=1 interlaced=0 bluray_compat=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=10 scenecut=40 intra_refresh=0 rc_lookahead=40 rc=crf mbtree=1 crf=23.0 qcomp=0.60 qpmin=0 qpmax=69 qpstep=4 ip_ratio=1.40 aq=1:1.00
    29 Jan 2016 03:45:09 UTC - [mp4 @ 0x30c21a0] Tag mp42/0x3234706d incompatible with output codec id '28' ([33][0][0][0])
    29 Jan 2016 03:45:09 UTC - Output #0, mp4, to '/var/local/ffmpegtest/media_output/sample_iTunes.mp4':
    29 Jan 2016 03:45:09 UTC -   Metadata:
    29 Jan 2016 03:45:09 UTC -     major_brand     : qt  
    29 Jan 2016 03:45:09 UTC -     minor_version   : 537199360
    29 Jan 2016 03:45:09 UTC -     compatible_brands: qt  
    29 Jan 2016 03:45:09 UTC -     Stream #0:0(eng): Video: h264 (libx264) (mp42 / 0x3234706D), yuv420p, 640x480 [SAR 1:1 DAR 4:3], q=-1--1, 10 fps, 90k tbn, 10 tbc (default)
    29 Jan 2016 03:45:09 UTC -     Metadata:
    29 Jan 2016 03:45:09 UTC -       creation_time   : 2005-10-17 22:54:33
    29 Jan 2016 03:45:09 UTC -       handler_name    : Apple Video Media Handler
    29 Jan 2016 03:45:09 UTC -       encoder         : Lavc55.66.101 libx264
    29 Jan 2016 03:45:09 UTC -     Stream #0:1(eng): Audio: aac (libvo_aacenc), 32000 Hz, mono, s16, 128 kb/s (default)
    29 Jan 2016 03:45:09 UTC -     Metadata:
    29 Jan 2016 03:45:09 UTC -       creation_time   : 2005-10-17 22:54:34
    29 Jan 2016 03:45:09 UTC -       handler_name    : Apple Sound Media Handler
    29 Jan 2016 03:45:09 UTC -       encoder         : Lavc55.66.101 libvo_aacenc
    29 Jan 2016 03:45:09 UTC - Stream mapping:
    29 Jan 2016 03:45:09 UTC -   Stream #0:0 -> #0:0 (mpeg4 (native) -> h264 (libx264))
    29 Jan 2016 03:45:09 UTC -   Stream #0:1 -> #0:1 (aac (native) -> aac (libvo_aacenc))
    29 Jan 2016 03:45:09 UTC - Could not write header for output file #0 (incorrect codec parameters ?): Invalid data found when processing input
  • use java-ffmpeg wrapper, or simply use java runtime to execute ffmpeg ?

    12 mars 2017, par user156153

    I’m pretty new to Java, need to write a program that listen to video conversion instructions and convert the video once an new instruction arrives (instructions is stored in Amazon SQS, but it’s irrelevant to my question)

    I’m facing a choice, either use Java RunTime to exec ’ffmpeg’ conversion (like from command line), or I can use a ffmpeg wrapper written inJava http://fmj-sf.net/ffmpeg-java/getting_started.php

    I’d much prefer using Java Runtime to exec ffmpeg directly, and avoid using java-ffmpeg wrapper as I have to learn the library. so my question is are there any benefits using java-ffmpeg wrapper over exec ffmpeg directly using Runtime ? I don’t need ffmpeg to play videos, just convert videos

    Thanks

  • Store converted video in a buffer to transfer to S3

    24 mai 2012, par Chris

    I have a system set up to upload an image, take that temporarily uploaded file, convert it to a resized jpeg, read the buffer of that conversion and send the buffer to amazon S3 for storage as an image. It works wonderfully because no permanent file is stored on the my server, everything is on S3.

    Now I am attempting to add this same functionality but with video. The process goes through, but the resulting files stored on Amazons S3 servers are 1.5kb a piece, instead of multimb videos.

    My code is as follows :

    public function transfer($method, $file, $bucketName, $filename, $contentType){
       switch($method){
           case 'file':
               if($this->s3->putObject($this->s3->inputFile($file, false), $bucketName, $filename, S3::ACL_PUBLIC_READ, array(), $contentType))
                   return true;
               else
                   return false;
               break;
           case 'string':
               if ($this->s3->putObject($file, $bucketName, $filename, S3::ACL_PUBLIC_READ, array(), $contentType))
                   return true;
               else
                   return false;
               break;
           case 'resource':
               if($this->s3->putObject($this->s3->inputResource(fopen($file, 'rb'), filesize($file)), $bucketName, $filename, S3::ACL_PUBLIC_READ, array(), $contentType))
                   return true;
               else
                   return false;
               break;
       }
       return false;
    }  


    /**
    *   AmazonS3Handler - convert()
    */

    public function convert($file, $type)
    {
            $ffmpeg = "/usr/bin/ffmpeg";
       $cmd['webm'] = $ffmpeg. " -i ". $file ." -vcodec libvpx -acodec libvorbis -ac 2 -f webm -g 30 2>&1";
       $cmd['ogv'] = $ffmpeg. " -i ". $file ." -vcodec libtheora -acodec libvorbis -ac 2 2>&1";
       $cmd['mp4'] = $ffmpeg. " -i ". $file ." -vcodec libx264 -acodec libfaac -ac 2 2>&1";
       $cmd['jpg'] = $ffmpeg. " -i ". $file ." -vframes 30";

       ob_start();
       passthru($cmd[$type]);
       $fileContents = ob_get_contents();
       ob_end_clean();
       return $fileContents;
    }

    From my understanding, passthru should return raw output which could be picked up by the output buffer.

    Am I doing something wrong ? Is there a better way to convert a video on my servers but keep the data on S3 ?

    Thanks !

    EDIT : I've boiled it down to the executing of the command. FFMPEG wasn't being located, so I changed the path to "/usr/bin/ffmpeg", no more error 127, now when I run exec() (not passthru) I get error 1

    EDIT2 : Here is the output of running the script :

    Array
    (
    [0] => ffmpeg version 0.7.3-4:0.7.3-0ubuntu0.11.10.1, Copyright (c) 2000-2011 the Libav developers
    [1] =>   built on Jan  4 2012 16:08:51 with gcc 4.6.1
    [2] =>   configuration: --extra-version='4:0.7.3-0ubuntu0.11.10.1' --arch=amd64 --prefix=/usr --enable-vdpau --enable-bzlib --enable-libgsm --enable-libschroedinger --enable-libspeex --enable-libtheora --enable-libvorbis --enable-pthreads --enable-zlib --enable-libvpx --enable-runtime-cpudetect --enable-vaapi --enable-gpl --enable-postproc --enable-swscale --enable-x11grab --enable-libdc1394 --enable-shared --disable-static
    [3] =>   libavutil    51.  7. 0 / 51.  7. 0
    [4] =>   libavcodec   53.  6. 0 / 53.  6. 0
    [5] =>   libavformat  53.  3. 0 / 53.  3. 0
    [6] =>   libavdevice  53.  0. 0 / 53.  0. 0
    [7] =>   libavfilter   2.  4. 0 /  2.  4. 0
    [8] =>   libswscale    2.  0. 0 /  2.  0. 0
    [9] =>   libpostproc  52.  0. 0 / 52.  0. 0
    [10] =>
    [11] => Seems stream 1 codec frame rate differs from container frame rate: 2000.00 (2000/1) -> 30.30 (1000/33)
    [12] => Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'iv.m4v':
    [13] =>   Metadata:
    [14] =>     major_brand     : M4V
    [15] =>     minor_version   : 1
    [16] =>     compatible_brands: M4V M4A mp42isom
    [17] =>     creation_time   : 2012-01-23 04:00:18
    [18] =>     encoder         : Mac OS X v10.7.2 (CMA 889, CM 705.42, x86_64)
    [19] =>   Duration: 00:00:11.70, start: 0.000000, bitrate: 345 kb/s
    [20] =>     Stream #0.0(und): Audio: aac, 44100 Hz, stereo, s16, 125 kb/s
    [21] =>     Metadata:
    [22] =>       creation_time   : 2012-01-23 04:00:18
    [23] =>     Stream #0.1(und): Video: h264 (Main), yuv420p, 640x360 [PAR 1:1 DAR 16:9], 206 kb/s, 30.30 fps, 30.30 tbr, 1k tbn, 2k tbc
    [24] =>     Metadata:
    [25] =>       creation_time   : 2012-01-23 04:00:18
    [26] => iv.webm: Permission denied
    )

    It looks like the permissions aren't set right, however the file has chmod 777 permissions. What other permissions need to get changed ?