Recherche avancée

Médias (91)

Autres articles (73)

  • Demande de création d’un canal

    12 mars 2010, par

    En fonction de la configuration de la plateforme, l’utilisateur peu avoir à sa disposition deux méthodes différentes de demande de création de canal. La première est au moment de son inscription, la seconde, après son inscription en remplissant un formulaire de demande.
    Les deux manières demandent les mêmes choses fonctionnent à peu près de la même manière, le futur utilisateur doit remplir une série de champ de formulaire permettant tout d’abord aux administrateurs d’avoir des informations quant à (...)

  • Keeping control of your media in your hands

    13 avril 2011, par

    The vocabulary used on this site and around MediaSPIP in general, aims to avoid reference to Web 2.0 and the companies that profit from media-sharing.
    While using MediaSPIP, you are invited to avoid using words like "Brand", "Cloud" and "Market".
    MediaSPIP is designed to facilitate the sharing of creative media online, while allowing authors to retain complete control of their work.
    MediaSPIP aims to be accessible to as many people as possible and development is based on expanding the (...)

  • Amélioration de la version de base

    13 septembre 2013

    Jolie sélection multiple
    Le plugin Chosen permet d’améliorer l’ergonomie des champs de sélection multiple. Voir les deux images suivantes pour comparer.
    Il suffit pour cela d’activer le plugin Chosen (Configuration générale du site > Gestion des plugins), puis de configurer le plugin (Les squelettes > Chosen) en activant l’utilisation de Chosen dans le site public et en spécifiant les éléments de formulaires à améliorer, par exemple select[multiple] pour les listes à sélection multiple (...)

Sur d’autres sites (6830)

  • Why ffmpeg concat results wrong fps ? How to avoid it ?

    29 avril 2024, par Jinglong

    I have several mp4 video files and want to concat there video streams into a new mp4 file. The command I used shows below :

    


    ffmpeg -f concat -safe 0 -i concat.txt -an -c:v copy -y out.mp4


    


    The fps of result does not meet expectations.

    


    For example, there are two input wrote in concat.txt :

    


    file temp_result_0.mp4
file temp_result_1.mp4


    


    




    


    


    


    


    


    


    


    



    


    


    


    


    


    


    


    


    


    


    


    


    


    


    


    


    


    


    


    


    


    file duration number of frames fps tbr
    temp_result_0.mp4 60.0 1200 20 20
    temp_result_0.mp4 0.1 2 20 20
    out.mp4 60.1 1202 19.97 20

    


    The out.mp4 has correct duration, nb_frames but wrong avg_frame_rate (expecting 20 but get 6010/301).

    


    ng01@MacBook-Pro-3 Downloads % ffprobe -select_streams v:0 -show_entries stream=r_frame_rate,avg_frame_rate,nb_frames,duration out.mp4
ffprobe version 7.0 Copyright (c) 2007-2024 the FFmpeg developers
  built with Apple clang version 15.0.0 (clang-1500.3.9.4)
  configuration: --prefix=/opt/homebrew/Cellar/ffmpeg/7.0 --enable-shared --enable-pthreads --enable-version3 --cc=clang --host-cflags= --host-ldflags='-Wl,-ld_classic' --enable-ffplay --enable-gnutls --enable-gpl --enable-libaom --enable-libaribb24 --enable-libbluray --enable-libdav1d --enable-libharfbuzz --enable-libjxl --enable-libmp3lame --enable-libopus --enable-librav1e --enable-librist --enable-librubberband --enable-libsnappy --enable-libsrt --enable-libssh --enable-libsvtav1 --enable-libtesseract --enable-libtheora --enable-libvidstab --enable-libvmaf --enable-libvorbis --enable-libvpx --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxml2 --enable-libxvid --enable-lzma --enable-libfontconfig --enable-libfreetype --enable-frei0r --enable-libass --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenjpeg --enable-libopenvino --enable-libspeex --enable-libsoxr --enable-libzmq --enable-libzimg --disable-libjack --disable-indev=jack --enable-videotoolbox --enable-audiotoolbox --enable-neon
  libavutil      59.  8.100 / 59.  8.100
  libavcodec     61.  3.100 / 61.  3.100
  libavformat    61.  1.100 / 61.  1.100
  libavdevice    61.  1.100 / 61.  1.100
  libavfilter    10.  1.100 / 10.  1.100
  libswscale      8.  1.100 /  8.  1.100
  libswresample   5.  1.100 /  5.  1.100
  libpostproc    58.  1.100 / 58.  1.100
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'out.mp4':
  Metadata:
    major_brand     : isom
    minor_version   : 512
    compatible_brands: isomiso2avc1mp41
    encoder         : Lavf60.14.100
  Duration: 00:01:00.10, start: 0.000000, bitrate: 1645 kb/s
  Stream #0:0[0x1](und): Video: h264 (High) (avc1 / 0x31637661), yuv420p(progressive), 1080x1920 [SAR 1:1 DAR 9:16], 1643 kb/s, 19.97 fps, 20 tbr, 10240 tbn (default)
      Metadata:
        handler_name    : VideoHandler
        vendor_id       : [0][0][0][0]
[STREAM]
r_frame_rate=20/1
avg_frame_rate=6010/301
duration=60.100000
nb_frames=1202
[/STREAM]


    


    I tried use lower version 4.1.3 of ffmpeg, the result has wrong fps and wrong duration. expectation duration is 60.10 but get 60.20

    


  • Need help accessing the key when trying to decrypt .ts files via ffmpeg

    4 juillet 2024, par Diz

    I have downloaded all the individual .ts files and the corresponding m3u8 file from a VOD and I now want to merge them together into a single watchable file.
The problem is, that the .ts files are encrypted and don't understand how to access the key.

    


    Here's the beginning of the m3u8 file :

    


    #EXTM3U
#EXT-X-VERSION:3
#EXT-X-TARGETDURATION:4
#EXT-X-PLAYLIST-TYPE:EVENT
#EXT-X-MEDIA-SEQUENCE:6484
#EXT-X-KEY:METHOD=AES-128,URI="irvine://aes",KEYFORMATVERSIONS="1",IV=0x1E9ABA2B3C916D47D592D9B1E7674F4B
#EXT-X-PROGRAM-DATE-TIME:2024-05-25T07:24:59.682Z
#EXTINF:4.004,
index_1_6484.ts
#EXT-X-PROGRAM-DATE-TIME:2024-05-25T07:25:03.686Z
#EXTINF:4.004,
index_1_6485.ts
#EXT-X-PROGRAM-DATE-TIME:2024-05-25T07:25:07.690Z
#EXTINF:4.004,
index_1_6486.ts
#EXT-X-PROGRAM-DATE-TIME:2024-05-25T07:25:11.694Z
#EXTINF:4.004,
index_1_6487.ts
...



    


    As far as I understood I only have the initialization vector and I need to access the URI to get the actual key.

    


    I have tried to decrypt the playlist with the following command :

    


    ffmpeg -i index_1.m3u8 -c copy output.ts


    


    But I would always get the following errors :

    


    Unable to open key file irvine://aes
Error when loading first segment 'index_1_6484.ts'
Error opening input: Invalid data found when processing input
Error opening input file index_1.m3u8.
Error opening input files: Invalid data found when processing input


    


    I have also tried just decrypting a single .ts file to start with, with similar results.

    


    ffmpeg -decryption_key 1E9ABA2B3C916D47D592D9B1E7674F4B -i index_1_6484.ts -codec copy index_1_6484_out.ts


    


  • FFMPEG in Node.js : Conversion Failed

    11 juillet 2024, par cuneyttyler

    I have a small node.js web app. I use like this in a get request :

    


    app.get('/api/voice/:gender/:voice/:pitch', function(req, res){
        if(req.params.pitch == "1" || req.params.pitch == "1.0") {
            const file = "./voices/" + req.params.gender.toLowerCase() + "/" + req.params.voice + ".mp3"
            res.download(file);
            return
        }

        const inputFile = "./voices/" + req.params.gender.toLowerCase() + "/" + req.params.voice + ".mp3"
        const output_file = "./Audio/Temp/" + req.params.voice + ".mp3"
        ffmpeg()
                .input(inputFile)
                .audioCodec('pcm_s16le') // Set the audio codec to PCM with 16-bit depth
                .audioFrequency(44100) // Set the sample rate
                .on('error', function(err) {
                    console.error('Error while converting:', err);
                })
                .on('end', function() {
                    // res.download(output_file)
                })
                .save(output_file);

    });


    


    It gives Conversion Failed error :

    


    [2024-07-11T18:11:22.880Z] Error while converting: Error: ffmpeg exited with code 1: Conversion failed!&#xA;&#xA;    at ChildProcess.<anonymous> (d:\Dev\Anima\Client\node_modules\fluent-ffmpeg\lib\processor.js:180:22)&#xA;    at ChildProcess.emit (d:\Dev\Anima\Client\lib\events.js:519:28)&#xA;    at ChildProcess._handle.onexit (d:\Dev\Anima\Client\lib\internal\child_process.js:294:12)&#xA;    at Process.callbackTrampoline (node:internal/async_hooks:130:17) {stack: &#x27;Error: ffmpeg exited with code 1: Conversion …Trampoline (node:internal/async_hooks:130:17)&#x27;, message: &#x27;ffmpeg exited with code 1: Conversion failed!&#xA;&#x27;}&#xA;</anonymous>

    &#xA;

    When I use same code in a node.js desktop(.exe) app, it successfully runs. When I use it in an express.js app, it fails. Error message is not clear. What is the issue ?

    &#xA;