Recherche avancée

Médias (0)

Mot : - Tags -/auteurs

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

Autres articles (67)

  • Création définitive du canal

    12 mars 2010, par

    Lorsque votre demande est validée, vous pouvez alors procéder à la création proprement dite du canal. Chaque canal est un site à part entière placé sous votre responsabilité. Les administrateurs de la plateforme n’y ont aucun accès.
    A la validation, vous recevez un email vous invitant donc à créer votre canal.
    Pour ce faire il vous suffit de vous rendre à son adresse, dans notre exemple "http://votre_sous_domaine.mediaspip.net".
    A ce moment là un mot de passe vous est demandé, il vous suffit d’y (...)

  • HTML5 audio and video support

    13 avril 2011, par

    MediaSPIP uses HTML5 video and audio tags to play multimedia files, taking advantage of the latest W3C innovations supported by modern browsers.
    The MediaSPIP player used has been created specifically for MediaSPIP and can be easily adapted to fit in with a specific theme.
    For older browsers the Flowplayer flash fallback is used.
    MediaSPIP allows for media playback on major mobile platforms with the above (...)

  • De l’upload à la vidéo finale [version standalone]

    31 janvier 2010, par

    Le chemin d’un document audio ou vidéo dans SPIPMotion est divisé en trois étapes distinctes.
    Upload et récupération d’informations de la vidéo source
    Dans un premier temps, il est nécessaire de créer un article SPIP et de lui joindre le document vidéo "source".
    Au moment où ce document est joint à l’article, deux actions supplémentaires au comportement normal sont exécutées : La récupération des informations techniques des flux audio et video du fichier ; La génération d’une vignette : extraction d’une (...)

Sur d’autres sites (9730)

  • ffmpeg use gpu to encode mpeg4 to ts/m3u8 [closed]

    14 novembre 2024, par danielRICADO

    using ffmpeg I want to trim and transcode a mpeg4 from ts / m3u8

    


    std::string ffmpeg_command = "ffmpeg -hwaccel drm -i " + output_dir + input_file +
                         " -ss 00:00:00.00 -t 31 -c:v " + codec + " -b:v " + std::to_string(bitrate) +
                         " -vf scale=" + std::to_string(width) + "x" + std::to_string(height) +
                         " -hls_time " + std::to_string(30) + " -hls_list_size 0 -hls_segment_filename " +
                         ts_file_pattern + " -f hls " + m3u8_file;


    


    I wanted to choose between codecs based on the system, if gpu is avaiable I'd like to opt to use it, right now I just check if the codec is available

    


    bool is_h264_v4l2m2m_available() {
    std::string result = exec_command("ffmpeg -encoders 2>&1");
    return result.find("h264_v4l2m2m") != std::string::npos;
}


    


    if it is a I wanted to move that process over to the gpu, not just use libx264. Here is the error log. Studying hard on the solution but wold super apperciate any expert advice.

    


    other considerations are - runs in a docker container on a pi5, pibian on the host apline on in the container, container runs in privledged mode

    


    2024-11-14 15:18:41 [INFO]: assigned codec: h264_v4l2m2m
2024-11-14 15:18:41 ffmpeg version 6.1.1 Copyright (c) 2000-2023 the FFmpeg developers
2024-11-14 15:18:41   built with gcc 13.2.1 (Alpine 13.2.1_git20240309) 20240309
2024-11-14 15:18:41   configuration: --prefix=/usr --disable-librtmp --disable-lzma --disable-static --disable-stripping --enable-avfilter --enable-gpl --enable-ladspa --enable-libaom --enable-libass --enable-libbluray --enable-libdav1d --enable-libdrm --enable-libfontconfig --enable-libfreetype --enable-libfribidi --enable-libharfbuzz --enable-libmp3lame --enable-libopenmpt --enable-libopus --enable-libplacebo --enable-libpulse --enable-librav1e --enable-librist --enable-libsoxr --enable-libsrt --enable-libssh --enable-libtheora --enable-libv4l2 --enable-libvidstab --enable-libvorbis --enable-libvpx --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxcb --enable-libxml2 --enable-libxvid --enable-libzimg --enable-libzmq --enable-lto=auto --enable-lv2 --enable-openssl --enable-pic --enable-postproc --enable-pthreads --enable-shared --enable-vaapi --enable-vdpau --enable-version3 --enable-vulkan --optflags=-O3 --enable-libjxl --enable-libsvtav1 --enable-libvpl
2024-11-14 15:18:41   libavutil      58. 29.100 / 58. 29.100
2024-11-14 15:18:41   libavcodec     60. 31.102 / 60. 31.102
2024-11-14 15:18:41   libavformat    60. 16.100 / 60. 16.100
2024-11-14 15:18:41   libavdevice    60.  3.100 / 60.  3.100
2024-11-14 15:18:41   libavfilter     9. 12.100 /  9. 12.100
2024-11-14 15:18:41   libswscale      7.  5.100 /  7.  5.100
2024-11-14 15:18:41   libswresample   4. 12.100 /  4. 12.100
2024-11-14 15:18:41   libpostproc    57.  3.100 / 57.  3.100
2024-11-14 15:18:42 Input #0, mov,mp4,m4a,3gp,3g2,mj2, from '/app/client-data/camera-output/7ea3cbef-4da0-11ed-bdcc-baf70a43c072/1731550687270.mp4':
2024-11-14 15:18:42   Metadata:
2024-11-14 15:18:42     major_brand     : isom
2024-11-14 15:18:42     minor_version   : 512
2024-11-14 15:18:42     compatible_brands: isomiso2avc1mp41
2024-11-14 15:18:42     encoder         : Lavf60.16.100
2024-11-14 15:18:42   Duration: 00:00:31.33, start: 0.000000, bitrate: 678 kb/s
2024-11-14 15:18:42   Stream #0:0[0x1](und): Video: h264 (High) (avc1 / 0x31637661), yuv420p(progressive), 1024x1024, 677 kb/s, 15 fps, 15 tbr, 15360 tbn (default)
2024-11-14 15:18:42     Metadata:
2024-11-14 15:18:42       handler_name    : VideoHandler
2024-11-14 15:18:42       vendor_id       : [0][0][0][0]
2024-11-14 15:18:42 [AVFormatContext @ 0x7f9254dcb4c0] Unable to choose an output format for '678000'; use a standard extension for the filename or specify the format manually.
2024-11-14 15:18:42 [out#0 @ 0x7f9254d70700] Error initializing the muxer for 678000: Invalid argument
2024-11-14 15:18:42 Error opening output file 678000.
2024-11-14 15:18:42 Error opening output files: Invalid argument
2024-11-14 15:18:42 [ERROR]: Failed to generate .ts file for: 1731550687270.mp4


    


  • Scrolling Effect of an Image using FFmpeg [closed]

    5 juin, par neeebzz

    I want to create an mp4 video of 40 seconds where an image just floats from top to bottom and vice versa.

    


    I am using the following ffmpeg command :

    


    ffmpeg 
    -loop 1 
    -t 40 
    -i ./input.jpg 
    -filter_complex [0]scale=800:-1[s0];[s0]crop=h=450:w=800:x=0:y=(ih-450)*(3*pow(t/40.241\,2) - 2*pow(t/40\,3))[s1];[s1]scale=800:400[s2] 
    -map [s2] 
    -pix_fmt yuv420p 
    -preset medium 
    -r 30 
    -vcodec libx264 
    ./output.mp4 -y


    


    The animation is working as expected however the motion is very jerky. How can I smooth it out ?

    


    Ffmpeg version :

    


    ffmpeg version 5.1.6-0+deb12u1 Copyright (c) 2000-2024 the FFmpeg developers


    


  • How can use ffmpeg in AWS Lambda to clip hls trasnsimision to .mp4

    15 novembre 2024, par Bruno Munné

    The ffmpeg input is through the public url of the bucket, I want to save the output in a tmp.mp4 file and I want to upload this file to the bucket. Locally the ffmpeg command works perfectly, lasting no more than 3 seconds and the output file weighs less than 1MB

    


    export const handler = async (event) => {
    try {
        const { m3u8, offset, duration, signedURL } = event;

        const clipKey = `clip_output.mp4`;
        const clipFilePath = path.join('/tmp', clipKey);

        execSync(`/opt/ffmpeglib/ffmpeg -i ${process.env.URL_CLOUDFLARE}/${m3u8} -ss ${offset} -t ${duration} -c copy -f mp4 ${clipFilePath}`)

        const fileContent = fs.readFileSync(clipFilePath);
        const resSign = await fetch(signedURL, {
            method: "PUT",
            headers: {
                "Content-Type": "application/octet-stream",
            },
            body: fileContent,
        });

        if (!resSign.ok) throw new Error(`Failed to upload file to S3: ${resSign.statusText}`);

        fs.unlinkSync(clipFilePath);

        return {
            statusCode: 200,
            body: JSON.stringify({
                message: 'Clip procesado y subido correctamente',
                clipKey: path.basename(clipFilePath)
            }),
        };
    } catch (error) {
        console.error("Error al procesar el clip:", error);
        return {
            statusCode: 500,
            body: JSON.stringify({ error: error.message }),
        };
    }
};


    


    The error it shows me is the following

    


     at genericNodeError (node:internal/errors:984:15)&#xA;    at wrappedFn (node:internal/errors:538:14)&#xA;    at checkExecSyncError (node:child_process:891:11)&#xA;    at execSync (node:child_process:963:15)&#xA;    at Runtime.handler (file:///var/task/index.js:16:3)&#xA;    at Runtime.handleOnceNonStreaming (file:///var/runtime/index.mjs:1173:29) {&#xA;  status: null,&#xA;  signal: &#x27;SIGSEGV&#x27;,&#xA;  output: [&#xA;    null,&#xA;    <buffer>,&#xA;    <buffer 66="66" 6d="6d" 70="70" 65="65" 67="67" 20="20" 76="76" 72="72" 73="73" 69="69" 6f="6f" 6e="6e" 4e="4e" 2d="2d" 37="37" 31="31" 30="30" 36="36" 34="34" 64="64" 35="35" 33="33" 63="63" 74="74" 61="61" 68="68" 3a="3a" 2f="2f" 1194="1194" more="more" bytes="bytes">&#xA;  ],&#xA;  pid: 13,&#xA;  stdout: <buffer>,&#xA;  stderr: <buffer 66="66" 6d="6d" 70="70" 65="65" 67="67" 20="20" 76="76" 72="72" 73="73" 69="69" 6f="6f" 6e="6e" 4e="4e" 2d="2d" 37="37" 31="31" 30="30" 36="36" 34="34" 64="64" 35="35" 33="33" 63="63" 74="74" 61="61" 68="68" 3a="3a" 2f="2f" 1194="1194" more="more" bytes="bytes">&#xA;}&#xA;ffmpeg version N-71064-gd5e603ddc0-static https://johnvansickle.com/ffmpeg/  Copyright (c) 2000-2024 the FFmpeg developers&#xA;built with gcc 8 (Debian 8.3.0-6)&#xA;configuration: --enable-gpl --enable-version3 --enable-static --disable-debug --disable-ffplay --disable-indev=sndio --disable-outdev=sndio --cc=gcc --enable-fontconfig --enable-frei0r --enable-gnutls --enable-gmp --enable-libgme --enable-gray --enable-libaom --enable-libfribidi --enable-libass --enable-libvmaf --enable-libfreetype --enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenjpeg --enable-librubberband --enable-libsoxr --enable-libspeex --enable-libsrt --enable-libvorbis --enable-libopus --enable-libtheora --enable-libvidstab --enable-libvo-amrwbenc --enable-libvpx --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxml2 --enable-libdav1d --enable-libxvid --enable-libzvbi --enable-libzimg&#xA;libavutil      59. 27.100 / 59. 27.100&#xA;libavcodec     61.  9.100 / 61.  9.100&#xA;libavformat    61.  4.100 / 61.  4.100&#xA;libavdevice    61.  2.100 / 61.  2.100&#xA;libavfilter    10.  2.102 / 10.  2.102&#xA;libswscale      8.  2.100 /  8.  2.100&#xA;libswresample   5.  2.100 /  5.  2.100&#xA;libpostproc    58.  2.100 / 58.  2.100&#xA;END RequestId: 2fc8c51e-66c6-4c74-aa9c-fa10c11207a0&#xA;REPORT RequestId: 2fc8c51e-66c6-4c74-aa9c-fa10c11207a0  Duration: 164.82 ms Billed Duration: 165 ms Memory Size: 2048 MB    Max Memory Used: 88 MB  Init Duration: 185.19 ms&#xA;</buffer></buffer></buffer></buffer>

    &#xA;

    Help to resolve it please

    &#xA;