Recherche avancée

Médias (3)

Mot : - Tags -/image

Autres articles (42)

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

  • Contribute to translation

    13 avril 2011

    You can help us to improve the language used in the software interface to make MediaSPIP more accessible and user-friendly. You can also translate the interface into any language that allows it to spread to new linguistic communities.
    To do this, we use the translation interface of SPIP where the all the language modules of MediaSPIP are available. Just subscribe to the mailing list and request further informantion on translation.
    MediaSPIP is currently available in French and English (...)

  • Diogene : création de masques spécifiques de formulaires d’édition de contenus

    26 octobre 2010, par

    Diogene est un des plugins ? SPIP activé par défaut (extension) lors de l’initialisation de MediaSPIP.
    A quoi sert ce plugin
    Création de masques de formulaires
    Le plugin Diogène permet de créer des masques de formulaires spécifiques par secteur sur les trois objets spécifiques SPIP que sont : les articles ; les rubriques ; les sites
    Il permet ainsi de définir en fonction d’un secteur particulier, un masque de formulaire par objet, ajoutant ou enlevant ainsi des champs afin de rendre le formulaire (...)

Sur d’autres sites (4332)

  • Piping ffmpeg output into ffplay stdin with boost

    21 décembre 2020, par botiapa

    I'm trying to pipe the output of an ffmpeg process into an ffplay process (Sort of like a playback). My problem is the following : If I copy the output character by character (by character I mean char) it works correctly, other than it consuming a whole lot of cpu power. However when I try to pipe chunks into it (by using a buffer), ffplay for some reason doesn't even recognize the input.

    


    bp::ipstream iso;
bp::ipstream ise;
bp::opstream in;
    
bp::child ffmpeg(bp::search_path("ffmpeg"), bp::args({"-loglevel", "quiet", "-f", "pulse", "-i", "default", "-f", "wav", "-bitexact", "-nostdin", "-"}), bp::std_out > iso, bp::std_err > ise);
bp::child ffplay(bp::search_path("ffplay"), bp::args({"-loglevel", "verbose", "-nodisp", "-f", "wav", "-i", "-"}), bp::std_in < in, bp::std_out > bp::null);


    


    Here are the 2 code snippets for comparison :

    


    Here it is copying char by char

    


    while(ffmpeg.running()) {
    char c;
    c = iso.get();
    in << c;
}


    


    And here it is copying with the help of a buffer

    


    char buffer[1024];
while(ffmpeg.running()) {
    iso.get(buffer, 1024);
    in << buffer;
}


    


    I can provide ffplay output if necessary, however I didn't see any errors or things like that.

    


  • avfilter/af_asubboost : add boost option

    13 mai 2022, par Paul B Mahol
    avfilter/af_asubboost : add boost option
    
    • [DH] doc/filters.texi
    • [DH] libavfilter/af_asubboost.c
  • C++ Boost launching FFMPEG doesnt work, working ok via terminal

    21 juin 2023, par Pit Digger

    I am launching an FFMPEG process from C++ , the command is workign fine from terminal command line, but gives error when laucnhed from code. What could cause this ?

    


    Error

    


    [AVFilterGraph @ 0x3cfadc0] Error parsing filterchain "[0:v]split=3[v1][v2][v3];[v1]copy[v1out];[v2]scale=w=1280:h=720[v2out];[v3]scale=w=640:h=360[v3out]"
    
[AVFilterGraph @ 0x2f9fb00] Error parsing filterchain 
    
[AVFilterGraph @ 0x3cfadc0] Trailing garbage after a filter: split=3[v1][v2][v3];[v1]copy[v1out];[v2]scale=w=1280:h=720[v2out];[v3]scale=w=640:h=360[v3out]


    


    Code

    


    std::vector args;
args.push_back("-i"); args.push_back("input.mp4");
args.push_back("-filter_complex");
args.push_back("\"[0:v]split=3[v1][v2][v3];[v1]copy[v1out];[v2]scale=w=1280:h=720[v2out];[v3]scale=w=640:h=360[v3out]\"");

args.push_back("-map");  args.push_back("[v1out]");
args.push_back("-c:v:0");  args.push_back("libx264");
args.push_back("-x264-params");  args.push_back("\"nal-hrd=cbr:force-cfr=1\"");
args.push_back("-b:v:0");  args.push_back("1M");
args.push_back("-maxrate:v:0");  args.push_back("2M");
args.push_back("-minrate:v:0");  args.push_back("2M");
args.push_back("-bufsize:v:0");  args.push_back("2M");
args.push_back("-preset");  args.push_back("fast");
args.push_back("-g");  args.push_back("48");
args.push_back("-sc_threshold");  args.push_back("0");
args.push_back("-keyint_min");  args.push_back("48");

args.push_back("-map");  args.push_back("[v2out]");
args.push_back("-c:v:1");  args.push_back("libx264");
args.push_back("-x264-params");  args.push_back("\"nal-hrd=cbr:force-cfr=1\"");
args.push_back("-b:v:1");  args.push_back("1M");
args.push_back("-maxrate:v:1");  args.push_back("1M");
args.push_back("-minrate:v:1");  args.push_back("1M");
args.push_back("-bufsize:v:1");  args.push_back("1M");
args.push_back("-preset");  args.push_back("fast");
args.push_back("-g");  args.push_back("48");
args.push_back("-sc_threshold");  args.push_back("0");
args.push_back("-keyint_min");  args.push_back("48");

args.push_back("-map");  args.push_back("[v3out]");
args.push_back("-c:v:2");  args.push_back("libx264");
args.push_back("-x264-params");  args.push_back("\"nal-hrd=cbr:force-cfr=1\"");
args.push_back("-b:v:2");  args.push_back("500K");
args.push_back("-maxrate:v:2");  args.push_back("500K");
args.push_back("-minrate:v:2");  args.push_back("500K");
args.push_back("-bufsize:v:2");  args.push_back("500K");
args.push_back("-preset");  args.push_back("fast");
args.push_back("-g");  args.push_back("48");
args.push_back("-sc_threshold");  args.push_back("0");
args.push_back("-keyint_min");  args.push_back("48");

args.push_back("-map");  args.push_back("a:0");
args.push_back("-c:a:0");  args.push_back("aac");
args.push_back("-b:a:0");  args.push_back("96k");
args.push_back("-ac");  args.push_back("2");
args.push_back("-map");  args.push_back("a:0");
args.push_back("-c:a:1");  args.push_back("aac");
args.push_back("-b:a:1");  args.push_back("96k");
args.push_back("-ac");  args.push_back("2");
args.push_back("-map");  args.push_back("a:0");
args.push_back("-c:a:2");  args.push_back("aac");
args.push_back("-b:a:2");  args.push_back("48k");
args.push_back("-ac");  args.push_back("2");

args.push_back("-avoid_negative_ts");  args.push_back("1");
args.push_back("-f");  args.push_back("hls");
args.push_back("-hls_time");  args.push_back("6");
args.push_back("-hls_list_size");  args.push_back("15");
args.push_back("-hls_flags");  args.push_back("independent_segments");
args.push_back("-hls_segment_type");  args.push_back("mpegts");
args.push_back("-hls_segment_filename");  args.push_back("/output/stream_%v_data%02d.ts");
args.push_back("-master_pl_name");  args.push_back("index.m3u8");
args.push_back("-var_stream_map");  args.push_back("\"v:0,a:0 v:1,a:1 v:2,a:2\"");
args.push_back("/output/stream_%v.m3u8");


m_childProcess = std::make_unique(
            bp::exe = ffmpegPath,
            bp::args = args);


    


    Command that above code builds (indented for visibility) :

    


     ffmpeg -i input.mp4 -c copy -filter_complex "[0:v]split=3[v1][v2][v3];[v1]copy[v1out];[v2]scale=w=1280:h=720[v2out];[v3]scale=w=640:h=360[v3out]" 
-map [v1out] -c:v:0 libx264 -x264-params "nal-hrd=cbr:force-cfr=1" -b:v:0 1M -maxrate:v:0 2M -minrate:v:0 2M -bufsize:v:0 2M -preset fast -g 48 -sc_threshold 0 -keyint_min 48 
-map [v2out] -c:v:1 libx264 -x264-params "nal-hrd=cbr:force-cfr=1" -b:v:1 1M -maxrate:v:1 1M -minrate:v:1 1M -bufsize:v:1 1M -preset fast -g 48 -sc_threshold 0 -keyint_min 48  
-map [v3out] -c:v:2 libx264 -x264-params "nal-hrd=cbr:force-cfr=1" -b:v:2 500K -maxrate:v:2 500K -minrate:v:2 500K -bufsize:v:2 500K -preset fast -g 48 -sc_threshold 0 -keyint_min 48 -map a:0 -c:a:0 aac -b:a:0 96k -ac 2 
-map a:0 -c:a:1 aac -b:a:1 96k -ac 2 -map a:0 -c:a:2 aac -b:a:2 48k -ac 2 
-avoid_negative_ts 1 -f hls -hls_time 6 -hls_list_size 15 -hls_flags independent_segments -hls_segment_type mpegts -hls_segment_filename /output/stream_%v_data%02d.ts -master_pl_name index.m3u8 -var_stream_map "v:0,a:0 v:1,a:1 v:2,a:2" /output/stream_%v.m3u8