Recherche avancée

Médias (91)

Autres articles (52)

  • 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

  • Initialisation de MediaSPIP (préconfiguration)

    20 février 2010, par

    Lors de l’installation de MediaSPIP, celui-ci est préconfiguré pour les usages les plus fréquents.
    Cette préconfiguration est réalisée par un plugin activé par défaut et non désactivable appelé MediaSPIP Init.
    Ce plugin sert à préconfigurer de manière correcte chaque instance de MediaSPIP. Il doit donc être placé dans le dossier plugins-dist/ du site ou de la ferme pour être installé par défaut avant de pouvoir utiliser le site.
    Dans un premier temps il active ou désactive des options de SPIP qui ne le (...)

  • La sauvegarde automatique de canaux SPIP

    1er avril 2010, par

    Dans le cadre de la mise en place d’une plateforme ouverte, il est important pour les hébergeurs de pouvoir disposer de sauvegardes assez régulières pour parer à tout problème éventuel.
    Pour réaliser cette tâche on se base sur deux plugins SPIP : Saveauto qui permet une sauvegarde régulière de la base de donnée sous la forme d’un dump mysql (utilisable dans phpmyadmin) mes_fichiers_2 qui permet de réaliser une archive au format zip des données importantes du site (les documents, les éléments (...)

Sur d’autres sites (8040)

  • When I append a silent audio (mp3) to an existing list of audio it garbles the final audio ?

    6 février 2020, par Marie

    After several hours I have narrowed down the issue with the garbled audio to be the 2-seconds silence audio mp3 I am appending (I think I had produced it once with Wavelab)

    However, I tried using ffmpeg according to a post to produce a similar 2 seconds audio but it too will corrupt/garble/chop voice in the final concatenation of audio files.

    ffmpeg -f lavfi -i anullsrc=r=44100:cl=mono -t 2 -q:a 9 -acodec libmp3lame SILENCE_2sec.MP3

    I typically will have several audio files to concatenate together but for simplicity I have able to narrow it to a couple of files simplifying to the following script. A simple Windows batch file you should be able to use and reproduce the issue at your end.

    rem
    rem  
    SET EXE="S:\_BINS\FFmpeg 4.2.1 20200112\bin\ffmpeg.exe"

    SET ROOTPATH=.\

    SET IN_FILE="%ROOTPATH%MyList.txt"

    ECHO file '%ROOTPATH%HELLO.mp3' > MyList.txt
    ECHO file 'SILENCE_2sec.MP3' >> MyList.txt

    SET OPTIONS= -f concat -safe 0 -i  %IN_FILE%  -c copy -y

    SET OUT_FILE="%ROOTPATH%CONCATENATED_AUDIO_2.MP3"

    SET INFO_FILE="INFO.TXT"

    %EXE% %OPTIONS%  %OUT_FILE% 1> %INFO_FILE% 2>&1

    ECHO ======================== >> %INFO_FILE%
    ECHO IN_FILE=%IN_FILE%  >> %INFO_FILE%
    ECHO EXE=%EXE%  >> %INFO_FILE%
    ECHO OPTIONS=%OPTIONS%  >> %INFO_FILE%
    ECHO ======================== >> %INFO_FILE%

    Here is the console info output from the ffmpeg, let me know if you need other output include ones from ffprobe

    ffmpeg version git-2020-01-10-3d894db Copyright (c) 2000-2020 the FFmpeg developers
     built with gcc 9.2.1 (GCC) 20191125
     configuration: --enable-gpl --enable-version3 --enable-sdl2 --enable-fontconfig --enable-gnutls --enable-iconv --enable-libass --enable-libdav1d --enable-libbluray --enable-libfreetype --enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenjpeg --enable-libopus --enable-libshine --enable-libsnappy --enable-libsoxr --enable-libtheora --enable-libtwolame --enable-libvpx --enable-libwavpack --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxml2 --enable-libzimg --enable-lzma --enable-zlib --enable-gmp --enable-libvidstab --enable-libvorbis --enable-libvo-amrwbenc --enable-libmysofa --enable-libspeex --enable-libxvid --enable-libaom --enable-libmfx --enable-ffnvcodec --enable-cuvid --enable-d3d11va --enable-nvenc --enable-nvdec --enable-dxva2 --enable-avisynth --enable-libopenmpt --enable-amf
     libavutil      56. 38.100 / 56. 38.100
     libavcodec     58. 65.103 / 58. 65.103
     libavformat    58. 35.101 / 58. 35.101
     libavdevice    58.  9.103 / 58.  9.103
     libavfilter     7. 70.101 /  7. 70.101
     libswscale      5.  6.100 /  5.  6.100
     libswresample   3.  6.100 /  3.  6.100
     libpostproc    55.  6.100 / 55.  6.100
    [mp3 @ 000000000036af80] Estimating duration from bitrate, this may be inaccurate
    Input #0, concat, from '.\MyList.txt':
     Duration: N/A, start: 0.000000, bitrate: 32 kb/s
       Stream #0:0: Audio: mp3, 24000 Hz, mono, fltp, 32 kb/s
    Output #0, mp3, to '.\CONCATENATED_AUDIO_2.MP3':
     Metadata:
       TSSE            : Lavf58.35.101
       Stream #0:0: Audio: mp3, 24000 Hz, mono, fltp, 32 kb/s
    Stream mapping:
     Stream #0:0 -> #0:0 (copy)
    Press [q] to stop, [?] for help
    [mp3 @ 0000000000372d00] Application provided invalid, non monotonically increasing dts to muxer in stream 0: 17280 >= 17255
    size=      11kB time=00:00:02.73 bitrate=  33.2kbits/s speed=2.73e+03x    
    video:0kB audio:11kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 2.137446%
    ========================
    IN_FILE=".\MyList.txt"  
    EXE="S:\_BINS\FFmpeg 4.2.1 20200112\bin\ffmpeg.exe"  
    OPTIONS= -f concat -safe 0 -i  ".\MyList.txt"  -c copy -y  
    ========================  

    I believe I am running FFmpeg 4.2.1, recently installed (20200112)

    You may produce the HELLO.mp3 by saving the following link

    https://translate.google.com.vn/translate_tts?en=UTF-8&q=Hello+&tl=en&client=tw-ob

    FYI, I am still a novice of ffmpeg and using it more like a black box with the help I received in this very super forum.
    Please be as explicit as you can with command line options on how I can fix this issue.
    Thank you.

    Additional Hints Debugging :

    If I append more files after the silence audio it seems that the silence audio impacts (garbles, chops) the previous audio.
    You may try the following for the list of audio files input.

    ECHO file '%ROOTPATH%HELLO.mp3' > MyList.txt
    ECHO file 'SILENCE_2sec.MP3' >> MyList.txt
    ECHO file '%ROOTPATH%HELLO.mp3' >> MyList.txt
    ECHO file '%ROOTPATH%HELLO.mp3' >> MyList.txt

    I typically add one or more silence file to derive a post silence effect after the actual audio. That’s my current logic. However if you have an alternative to appending a silence in the process of concatenating several audio files or appending x-seconds silence to an existing audio file. I can use that method as well from my coding.

    Thank you.

  • Force GStreamer for IOS to use ffmpeg library outside of the framework

    24 avril 2014, par Michelle Cannon

    Gstreamer 1.0 for IOS is delivered in a static framework, the source to build the framework is around 1.2g , this framework is huge and tries to provide for any decoding server scenario you may have. Trouble is it tries to do to much and IMHO not enough thought was put into the IOS port.

    Here’s the problem we have an application that uses the GSTreamer avdec_h264 plugin for displaying an RTP over UDP stream . This works rather well. recently we were required to do some special recording functions so we introduced an api that had its own version of ffmpeg. Gstreamer has Libav compiled into the framework. When we place our api into the application with the gst_IOS_RESTICTED_PLUGINS disabled the code runs fine when we introduce the GStreamer.framework into the application code similar to that shown below fails with a protocol not found error.

    The problem is that the internal version of libav seems to disable all the protocols that ffmpeg supplies. because GSTreamer uses its own custom AVIO callback based on ffmpeg pipe protocol.

    According to Gstreamer support that has been somewhat helpful

    ) Add a new recipe with the libav version you want to use and disable the build of the internal libav in gst-libav-1.0 with :
    configure_options = ’—with-system-libav’

    You might need to comment out this part to prevent libav being packaged in the framewiork or make sure that your libav recipe creates these files in the correct place to include them in the framework :

    42 for f in [’libavcodec’, ’libavformat’, ’libavutil’, ’libswscale’] :
    43 for ext in [’.a’, ’.la’] :
    44 path = os.path.join(’lib’, f + ext)
    45 self.files_plugins_codecs_restricted_devel.append(path)

    2) Update libav submodule gst-libav to use the correct version you need.

    https://bugs.freedesktop.org/show_bug.cgi?id=77399

    The first method didn’t work , the recipe kept getting overwritten even after applying a patch for a bug fix that was made as result of this bug report.

    And I have no idea how to do the second method. Which is what I’d like some help with.

    Has anyone with GStreamer 1.0 for iOS

    1) Built the get-libav plugin against an external to to the framework set of ffmpeg static libs (.a)

    2) built the internal libav to allow for RTP , UDP and TCP protocols, or written a custom AVIO callback using the FFPipe protocol.

    3) just managed to somehow get the below code working with GStreamer.

    I don’t ask many questions, I’ve kind of implemented all kinds of encoders/decoders using ffmpeg , lib555 and a few hardware decoders. But this GStreamer issue is causing me more sleepless nights than I’ve had in a long time.

    AVFormatContext * avctx;
    avctx = avformat_alloc_context();

    av_register_all();
    avformat_network_init();
    avcodec_register_all();
    avdevice_register_all();



    // Set the RTSP Options
    AVDictionary *opts = 0;

    av_dict_set(&opts, "rtsp_transport", "udp", 0);


    int err = 0;
    err = avformat_open_input(&avctx, "rtsp://184.72.239.149/vod/mp4:BigBuckBunny_115k.mov", NULL, &opts);
    av_dict_free(&opts);
    if (err) {
       NSLog(@"Error: Could not open stream: %d", err);
       char errbuf[400];
       av_strerror(err,errbuf,400);
       NSLog(@"%s failed with error %s","avformat_open_input",errbuf);



    }
    else {
       NSLog(@"Opened stream");
    }

    err = avformat_find_stream_info(avctx, NULL);
    if( err < 0)
    {
       char errbuf[400];
       av_strerror(err,errbuf,400);
       NSLog(@"%s failed with error %s","avformat_find_stream_info",errbuf);
       return ;
    }else {
        NSLog(@"found stream info");
    }

    }

  • ffmpeg library - why does the Bitrate parameter change on encoding, and how do I force to preserve it ?

    22 avril 2021, par QRrabbit

    Hello forum and all the members of the community !

    


    I have this question on ffmpeg library, why does the bitrate parameter not retained after encoding, even though I explicitly specify the desired rate.

    


    Input file ffprobe :

    


      Duration: 00:00:10.01, start: 0.000000, bitrate: 534719 kb/s
    Stream #0:0(eng): Video: qtrle (rle  / 0x20656C72), argb(progressive), 1920x1080, 533881 kb/s, SAR 1:1 DAR 16:9, 29.97 fps, 29.97 tbr, 30k tbn, 30k tbc (default)
    Metadata:
      creation_time   : 2021-04-13T16:35:16.000000Z
      handler_name    : Apple Video Media Handler
      encoder         : Animation
      timecode        : 00:00:00;00


    


    Here's the command I run :

    


    ffmpeg -i input.mov -map 0:a? -map 0:s? -pix_fmt argb -b:v 533881667 -maxrate 533881667 -minrate 533881667 -r 29.97 -top 1 -color_range 1 -colorspace 1 -color_primaries 1 -color_trc bt709 -map_metadata 0 -c:a copy -timecode 00:00:00.00 -c:v qtrle -c:s copy output.mov


    


    Output file ffprobe :

    


      Metadata:
    major_brand     : qt  
    minor_version   : 512
    compatible_brands: qt  
    creation_time   : 2021-04-13T16:35:16.000000Z
  Duration: 00:00:10.01, start: 0.000000, bitrate: 100126 kb/s
    Stream #0:0: Video: qtrle (rle  / 0x20656C72), argb(progressive), 1920x1080, 100133 kb/s, SAR 1:1 DAR 16:9, 29.97 fps, 29.97 tbr, 11988 tbn, 11988 tbc (default)
    Metadata:
      creation_time   : 2021-04-13T16:35:16.000000Z
      handler_name    : VideoHandler
      encoder         : Lavf58.58.100
      timecode        : 00:00:00;00


    


    As it is visible from the ffprobe from above, I go from :

    


    The Input's file bitrate : 534719 kb/s
to Output bitrate : 100126 kb/s