Recherche avancée

Médias (29)

Mot : - Tags -/Musique

Autres articles (61)

  • Les autorisations surchargées par les plugins

    27 avril 2010, par

    Mediaspip core
    autoriser_auteur_modifier() afin que les visiteurs soient capables de modifier leurs informations sur la page d’auteurs

  • 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" (...)

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

  • ffmpeg transcoding process stops after 15min

    18 mai 2017, par p3tter

    im starting 2 ffmpeg transcoding processes on a raspberry pi (raspbian) when booting. After around 15 min, both processes stops. I have tried with delay etc. in startup script, also start it with both root and normal user privileges. Same result every time. (tried with rc.local and a own startup script in /init.d/)

    my ffmpeg parameters are :

    ffmpeg -d -re -i http://lyd.nrk.no/nrk_radio_mp3_mp3_m -ac 1 -acodec g722 -f rtp -ab 64k -ar 16k rtp://10.5.98.150:61122 > /dev/null 2>&1 < /dev/null  &
    sleep 15
    ffmpeg -d -re -i http://lyd.nrk.no/nrk_radio_mp3_mp3_h -ac 1 -acodec g722 -f rtp -ab 64k -ar 16k rtp://10.5.98.150:61124 > /dev/null 2>&1 < /dev/null &

    If i start it manually after boot the ffmpeg processes works, and wont stop. Its only when i try to start it during boot it stops. (I have also tried with crontab, same result)

    anyone have some ideas ?

    Thanks,

  • 'C' program to pipeout audio file to FFMPEG and generate Video file

    9 mai 2017, par soflow

    I am attempting to write a short ’C’ program which reads in an Audio file using FFMPEG, processes that file using a ’C’ program, and then outputs a file via FFMEPG, which combines the new, modified audio together with a Video representation using the FFMPEG showwaves filter.

    At present the program attempts to do the following :-

    i) Read in an audio file, using pipein thorugh FFMPEG
    ii) Process the audio file using a portion of the ’C’ program
    iii) Pipeout the modified audio to FFMPEG, and generate a file using the ’showwaves’ filter in FFMEPG to create an MP4 file with audio and video.

    The following code run form the ommand line in FFMPEG generates the Audio/Video MP4 I want to create :-

    ffmpeg -y -f s16le -ar 44100 -ac 1 -i 12345678.wav  -i 12345678.wav  -filter_complex  "[0:a]showwaves=s=1280x720:mode=line:rate=25,format=yuv420p[v]" -map "[v]" -map 1:a:0 -codec:v libx264 -crf 21 -bf 2 -flags +cgop -pix_fmt yuv420p -codec:a aac -strict -2 -b:a 384k -r:a 48000 -movflags faststart  12345678.mp4

    "

    This code generates a processed audio file, and outputs it to a .wav file as required :-

    #include
    #include
    #include

    void main()
    {
    // Launch two instances of FFmpeg, one to read the original WAV
    // file and another to write the modified WAV file. In each case,
    // data passes between this program and FFmpeg through a pipe.
    FILE *pipein;
    FILE *pipeout;
    pipein  = popen("ffmpeg -i 12345678.wav -f s16le -ac 1 -", "r");
    pipeout = popen("ffmpeg -y -f s16le -ar 44100 -ac 1 -i - out.wav", "w");

    // Read, modify and write one sample at a time
    int16_t sample;
    int count, n=0;
    while(1)
    {
       count = fread(&sample, 2, 1, pipein); // read one 2-byte sample
       if (count != 1) break;
       ++n;
       sample = sample * sin(n * 5.0 * 2*M_PI / 44100.0);
       fwrite(&sample, 2, 1, pipeout);
    }

    // Close input and output pipes
    pclose(pipein);    
    pclose(pipeout);
    }

    (This code borrowed from ted Burke’s excellent post here)

    I have made an attempt as shown below, but this is not working :-

    #include
    #include
    #include

    void main()
    {
    // Launch two instances of FFmpeg, one to read the original WAV
    // file and another to write the modified WAV file. In each case,
    // data passes between this program and FFmpeg through a pipe.
    FILE *pipein;
    FILE *pipeout;
    pipein  = popen("ffmpeg -i 12345678.wav -f s16le -ac 1 -", "r");
    pipeout = popen("ffmpeg -y -f s16le -ar 44100 -ac 1 -i 12345678.wav  -i
    12345678.wav  -filter_complex  "
    [0:a]showwaves=s=1280x720:mode=line:rate=25,format=yuv420p[v]" -map "[v]"
    -map 1:a:0 -codec:v libx264 -crf 21 -bf 2 -flags +cgop -pix_fmt yuv420p -
    codec:a aac -strict -2 -b:a 384k -r:a 48000 -movflags faststart  
    12345678.mp4
    ", "w");


    // Read, modify and write one sample at a time
    int16_t sample;
    int count, n=0;
    while(1)
    {
       count = fread(&sample, 2, 1, pipein); // read one 2-byte sample
       if (count != 1) break;
       ++n;
       sample = sample * sin(n * 5.0 * 2*M_PI / 44100.0);
       fwrite(&sample, 2, 1, pipeout);
    }

    // Close input and output pipes
    pclose(pipein);    
    pclose(pipeout);
    }    

    Ideally someone can suggest an improved version of the pipeout command above - alternately another process to achieve this would be interesting

    * EDIT *

    Thanks to @Mulvya, the revised pipeout line is now :-

    pipeout = popen("ffmpeg -y -f s16le -ar 44100 -ac 1 -i -  -filter_complex  "[0:a]showwaves=s=1280x720:mode=line:rate=25,format=yuv420p[v]" -map "[v]" -map 1:a:0 -codec:v libx264 -crf 21 -bf 2 -flags +cgop -pix_fmt yuv420p -codec:a aac -strict -2 -b:a 384k -r:a 48000 -movflags faststart  12345678.mp4

    ", "w") ;

    On compiling with gcc I get the following error messages :-

    avtovid2.c: In function \u2018main\u2019:

    wavtovid2.c:13:83: error: expected \u2018]\u2019 before \u2018:\u2019
    token
    pipeout = popen("ffmpeg -y -f s16le -ar 44100 -ac 1 -i -  -
    filter_complex  "
    [0:a]showwaves=s=1280x720:mode=line:rate=25,format=yuv420p[v]" -map "[v]"
    -map 1:a:0 -codec:v libx264 -crf 21 -bf 2 -flags +cgop -pix_fmt yuv420p -
    codec:a aac -strict -2 -b:a 384k -r:a 48000 -movflags faststart  
    12345678.mp4

    ^
    wavtovid2.c:13:86: error: expected \u2018)\u2019 before
    \u2018showwaves\u2019
    pipeout = popen("ffmpeg -y -f s16le -ar 44100 -ac 1 -i -  -
    filter_complex  "
    [0:a]showwaves=s=1280x720:mode=line:rate=25,format=yuv420p[v]" -map "[v]"
    -map 1:a:0 -codec:v libx264 -crf 21 -bf 2 -flags +cgop -pix_fmt yuv420p -
    codec:a aac -strict -2 -b:a 384k -r:a 48000 -movflags faststart  
    12345678.mp4

    ^
    wavtovid2.c:13:98: error: invalid suffix "x720" on integer constant
    pipeout = popen("ffmpeg -y -f s16le -ar 44100 -ac 1 -i -  -
    filter_complex  "
    [0:a]showwaves=s=1280x720:mode=line:rate=25,format=yuv420p[v]" -map "[v]"
    -map 1:a:0 -codec:v libx264 -crf 21 -bf 2 -flags +cgop -pix_fmt yuv420p -
    codec:a aac -strict -2 -b:a 384k -r:a 48000 -movflags faststart  
    12345678.mp4

    ^
    wavtovid2.c:13:153: warning: missing terminating " character
    pipeout = popen("ffmpeg -y -f s16le -ar 44100 -ac 1 -i -  -
    filter_complex  "
    [0:a]showwaves=s=1280x720:mode=line:rate=25,format=yuv420p[v]" -map "[v]"
    -map 1:a:0 -codec:v libx264 -crf 21 -bf 2 -flags +cgop -pix_fmt yuv420p -
    codec:a aac -strict -2 -b:a 384k -r:a 48000 -movflags faststart  
    12345678.mp4

    ^
    wavtovid2.c:13:86: error: missing terminating " character
    pipeout = popen("ffmpeg -y -f s16le -ar 44100 -ac 1 -i -  -
    filter_complex  "
    [0:a]showwaves=s=1280x720:mode=line:rate=25,format=yuv420p[v]" -map "[v]"
    -map 1:a:0 -codec:v libx264 -crf 21 -bf 2 -flags +cgop -pix_fmt yuv420p -
    codec:a aac -strict -2 -b:a 384k -r:a 48000 -movflags faststart  
    12345678.mp4

    ^
    wavtovid2.c:14:6: warning: missing terminating " character
    ", "w");
     ^
    wavtovid2.c:14:1: error: missing terminating " character
    ", "w");
    ^
    wavtovid2.c:13:21: warning: passing argument 1 of \u2018popen\u2019 makes
    pointer from integer without a cast
    pipeout = popen("ffmpeg -y -f s16le -ar 44100 -ac 1 -i -  -
    filter_complex  "
    [0:a]showwaves=s=1280x720:mode=line:rate=25,format=yuv420p[v]" -map "[v]"
    -map 1:a:0 -codec:v libx264 -crf 21 -bf 2 -flags +cgop -pix_fmt yuv420p -
    codec:a aac -strict -2 -b:a 384k -r:a 48000 -movflags faststart  
    12345678.mp4
                    ^
    In file included from wavtovid2.c:1:0:
    /usr/include/stdio.h:872:14: note: expected \u2018const char *\u2019 but
    argument is of type \u2018char\u2019
    extern FILE *popen (const char *__command, const char *__modes) __wur;
             ^
    wavtovid2.c:13:15: error: too few arguments to function \u2018popen\u2019
    pipeout = popen("ffmpeg -y -f s16le -ar 44100 -ac 1 -i -  -
    filter_complex  "
    [0:a]showwaves=s=1280x720:mode=line:rate=25,format=yuv420p[v]" -map "[v]"
    -map 1:a:0 -codec:v libx264 -crf 21 -bf 2 -flags +cgop -pix_fmt yuv420p -
    codec:a aac -strict -2 -b:a 384k -r:a 48000 -movflags faststart  
    12345678.mp4
              ^
    In file included from wavtovid2.c:1:0:
    /usr/include/stdio.h:872:14: note: declared here
    extern FILE *popen (const char *__command, const char *__modes) __wur;
             ^
    wavtovid2.c:32:1: error: expected \u2018;\u2019 before \u2018}\u2019
    token
    }
  • Scripting bash with Ruby and Variables to run FFMPEG command

    20 mai 2017, par Jeremy

    I’m trying to create a simply ruby script to run an ffmpeg command through bash to convert an audio file from one format to another.

    the command is ffmpeg -i (in file) -acodec libmp3lame -ab 64k -ar 48000 -ac 1 AAA_S00E00_Podcast.mp3

    I have a ruby script with the right permissions and that I can call (tested it with a system ls call before moving onto the ffmpeg attempt)

    #!/bin/ruby

    def mkmp3( one = "", two = "" )
       system "ffmpeg -i #{one} -acodec libmp3lame -ab 64k -ar 48000 -ac 1 #{two}.mp3"
    end

    mkmp3

    but when I call it from bash trying to convert a file called session.flac to smoochie.mp3 I get back :

    mkmp3.rb ('session.flac', 'smoochie')
    bash: syntax error near unexpected token `'session.flac','