Recherche avancée

Médias (91)

Autres articles (73)

  • Personnaliser en ajoutant son logo, sa bannière ou son image de fond

    5 septembre 2013, par

    Certains thèmes prennent en compte trois éléments de personnalisation : l’ajout d’un logo ; l’ajout d’une bannière l’ajout d’une image de fond ;

  • Publier sur MédiaSpip

    13 juin 2013

    Puis-je poster des contenus à partir d’une tablette Ipad ?
    Oui, si votre Médiaspip installé est à la version 0.2 ou supérieure. Contacter au besoin l’administrateur de votre MédiaSpip pour le savoir

  • Installation en mode ferme

    4 février 2011, par

    Le mode ferme permet d’héberger plusieurs sites de type MediaSPIP en n’installant qu’une seule fois son noyau fonctionnel.
    C’est la méthode que nous utilisons sur cette même plateforme.
    L’utilisation en mode ferme nécessite de connaïtre un peu le mécanisme de SPIP contrairement à la version standalone qui ne nécessite pas réellement de connaissances spécifique puisque l’espace privé habituel de SPIP n’est plus utilisé.
    Dans un premier temps, vous devez avoir installé les mêmes fichiers que l’installation (...)

Sur d’autres sites (8897)

  • ffmpeg with "-pattern_type glob" and variable in bash script

    20 juin 2019, par KlausPeter

    I’m trying to let ffmpeg make a video of all pictures in a directory using the -pattern_type glob switch and "/foo/bar/*.jpg". This works well, if I execute the command manually für just one directory. For example :

    ffmpeg -framerate 35 -pattern_type glob -i '/root/webcam_test/2018-07-21/*.jpg' -vf scale=1280:-1 -c -c:v libx264 -pix_fmt yuv420p /root/clips/out01_cut.mp4

    However, if I do it in a bash script and set the path via a variable, according to ffmpegs output, the variable gets substituted correctly, but ffmpeg states that

    ’/root/webcam_test/2018-07-21/*.jpg’ : No such file or directory

    The part of the script looks like this :

    for D in `find /root/webcam_test/ -type d`
    do
       [...]
       cmd="ffmpeg -framerate 35 -pattern_type glob -i '$D/*.jpg' -vf scale=1280:-1 -c -c:v libx264 -pix_fm                                 t yuv420p /root/clips/$d_cut.mp4"
       echo $cmd
    [...]
    done

    Does anyone know how to make ffmpeg do its wildcard interpretation even if the path is constructed by a script and not just try to plainly use the given path ?
    Best regards and thanks in advance

  • ffmpeg demux into audio and video resets PTS

    30 juillet 2018, par Mukund Manikarnike

    Demuxing

    I am demuxing TS segments into audio and video as follows.

    ffmpeg -y -i input.ts -vcodec copy -an output_video.ts
    ffmpeg -y -i input.ts -acodec copy -vn output_audio.aac

    Inspecting Input

    The start_pts and start_time on input.ts are as shown below. I was able to inspect these values using ffprobe -show_streams -print_format json input.ts

    "start_pts": 8306558438,
    "start_time": "92295.093756",

    Inspecting output video

    The output .ts has some default start_pts and start_time values as shown below. These were also obtained using the same ffprobe command as indicated above.

    "start_pts": 126000,
    "start_time": "1.400000",

    Inspecting output audio

    The same ffprobe command on output_audio.aac shows that the output aac has invalid codec_tag and codec_tag_string as shown below. The start_pts and start_time are not present in the output_audio.aac.

    "codec_tag_string": "[0][0][0][0]", (should have been [15][0][0][0])
    "codec_tag": "0x0000", (should have been 0xf000)

    Questions

    1. Wondering if this difference in the start_pts, start_time, codec_tag is expected ?
    2. If it is expected, what can I do to ensure that the all of these parameters get retained on the output ?
    3. If it is not expected, is there some more information I can share to track this down ?

    Note

    There were other outputs that I found inconsistent in the ffprobe command for the output_audio.aac like duration etc.. I shared what I thought are most valuable at this point. If required I can share complete outputs from all of the above executions.

    [EDIT 07/30/2018 - 08:00 MST]
    logs for ffmpeg -y -i input.ts -vcodec copy -an output_video.ts -acodec copy -vn output_audio.aacare as shown below.

    ffmpeg version 4.0.2 Copyright (c) 2000-2018 the FFmpeg developers
     built with Apple LLVM version 9.0.0 (clang-900.0.39.2)
     configuration: --prefix=/usr/local/Cellar/ffmpeg/4.0.2 --enable-shared --enable-pthreads --enable-version3 --enable-hardcoded-tables --enable-avresample --cc=clang --host-cflags= --host-ldflags= --enable-gpl --enable-ffplay --enable-frei0r --enable-libass --enable-libfdk-aac --enable-libfreetype --enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopus --enable-librtmp --enable-libspeex --enable-libtheora --enable-libvorbis --enable-libvpx --enable-libx264 --enable-libxvid --enable-opencl --enable-videotoolbox --disable-lzma --enable-libopenjpeg --disable-decoder=jpeg2000 --extra-cflags=-I/usr/local/Cellar/openjpeg/2.3.0/include/openjpeg-2.3 --enable-nonfree
     libavutil      56. 14.100 / 56. 14.100
     libavcodec     58. 18.100 / 58. 18.100
     libavformat    58. 12.100 / 58. 12.100
     libavdevice    58.  3.100 / 58.  3.100
     libavfilter     7. 16.100 /  7. 16.100
     libavresample   4.  0.  0 /  4.  0.  0
     libswscale      5.  1.100 /  5.  1.100
     libswresample   3.  1.100 /  3.  1.100
     libpostproc    55.  1.100 / 55.  1.100
    [mpegts @ 0x7f88ed803000] start time for stream 0 is not set in estimate_timings_from_pts
    Input #0, mpegts, from 'i7h9456s_media_46185.ts':
     Duration: 00:00:06.05, start: 86216.852667, bitrate: 2898 kb/s
     Program 1
       Stream #0:0[0x102]: Data: timed_id3 (ID3  / 0x20334449)
       Stream #0:1[0x100]: Video: h264 (Constrained Baseline) ([27][0][0][0] / 0x001B), yuv420p(tv, smpte170m, progressive), 640x360 [SAR 1:1 DAR 16:9], 29.97 fps, 29.97 tbr, 90k tbn, 59.94 tbc
       Stream #0:2[0x101]: Audio: aac (LC) ([15][0][0][0] / 0x000F), 44100 Hz, stereo, fltp, 190 kb/s
    Output #0, mpegts, to '../output_video.ts':
     Metadata:
       encoder         : Lavf58.12.100
       Stream #0:0: Video: h264 (Constrained Baseline) ([27][0][0][0] / 0x001B), yuv420p(tv, smpte170m, progressive), 640x360 [SAR 1:1 DAR 16:9], q=2-31, 29.97 fps, 29.97 tbr, 90k tbn, 90k tbc
    Output #1, adts, to '../output_audio.aac':
     Metadata:
       encoder         : Lavf58.12.100
       Stream #1:0: Audio: aac (LC) ([15][0][0][0] / 0x000F), 44100 Hz, stereo, fltp, 190 kb/s
    Stream mapping:
     Stream #0:1 -> #0:0 (copy)
     Stream #0:2 -> #1:0 (copy)
    Press [q] to stop, [?] for help
    frame=  180 fps=0.0 q=-1.0 Lsize=    2088kB time=00:00:06.03 bitrate=2833.8kbits/s speed= 904x    
    video:1918kB audio:142kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 1.349750%
  • Reading file stream from Google Cloud Storage to ffmpeg (using fluent-ffmpeg)

    27 juillet 2018, par ekuusi

    I’m trying to run ffmpeg on a NodeJS backend with fluent-ffmpeg, reading input files from Google Cloud Storage. Everything works fine if I download the file first :

    const file = storage
       .bucket('example_bucket')
       .file('examplefile.mp4');

    file.download({destination: 'test.mp4'}, (err) => {

       let command = ffmpeg()
       .input('test.mp4')
       .duration(10)
       .format('mp4');

       command.save('test_out.mp4');

    });

    res.json([{
       message: 'Command sent!'
    }]);

    But if I try to use a readable stream as the input, it fails :

    const file = storage
       .bucket('example_bucket')
       .file('examplefile.mp4');


    var filestream = file.createReadStream()

    let command = ffmpeg()
       .input(filestream)
       .duration(10)
       .format('mp4');


    command.save('test_out.mp4');
    });

    res.json([{
       message: 'Command sent!'
    }]);

    Here is the full output of ffmpeg when trying to do the conversion. It seems to read the details of the file fine but for some reason it fails, saying "Cannot process video : ffmpeg exited with code 1 : pipe:0 : Invalid data found when processing input"

    Spawned Ffmpeg with command: ffmpeg -i pipe:0 -y -t 10 -f mp4 test_out.mp4
    Stderr output: ffmpeg version 4.0.1 Copyright (c) 2000-2018 the FFmpeg developers
    Stderr output:   built with Apple LLVM version 9.1.0 (clang-902.0.39.2)
    Stderr output:   configuration: --prefix=/opt/local --enable-swscale --enable-avfilter --enable-avresample --enable-libmp3lame --enable-libvorbis --enable-libopus --enable-librsvg --enable-libtheora --enable-libopenjpeg --enable-libmodplug --enable-libvpx --enable-libsoxr --enable-libspeex --enable-libass --enable-libbluray --enable-lzma --enable-gnutls --enable-fontconfig --enable-libfreetype --enable-libfribidi --disable-libjack --disable-libopencore-amrnb --disable-libopencore-amrwb --disable-libxcb --disable-libxcb-shm --disable-libxcb-xfixes --disable-indev=jack --enable-opencl --disable-outdev=xv --enable-audiotoolbox --enable-videotoolbox --enable-sdl2 --mandir=/opt/local/share/man --enable-shared --enable-pthreads --cc=/usr/bin/clang --arch=x86_64 --enable-x86asm --enable-libx265 --enable-gpl --enable-postproc --enable-libx264 --enable-libxvid
    Stderr output:   libavutil      56. 14.100 / 56. 14.100
    Stderr output:   libavcodec     58. 18.100 / 58. 18.100
    Stderr output:   libavformat    58. 12.100 / 58. 12.100
    Stderr output:   libavdevice    58.  3.100 / 58.  3.100
    Stderr output:   libavfilter     7. 16.100 /  7. 16.100
    Stderr output:   libavresample   4.  0.  0 /  4.  0.  0
    Stderr output:   libswscale      5.  1.100 /  5.  1.100
    Stderr output:   libswresample   3.  1.100 /  3.  1.100
    Stderr output:   libpostproc    55.  1.100 / 55.  1.100
    Stderr output: [mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fb6db80a200] stream 2, offset 0x30: partial file
    Stderr output: [mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fb6db80a200] Could not find codec parameters for stream 0 (Video: h264 (avc1 / 0x31637661), none, 1920x1080, 4647 kb/s): unspecified pixel format
    Stderr output: Consider increasing the value for the 'analyzeduration' and 'probesize' options
    Stderr output: Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'pipe:0':
    Stderr output:   Metadata:
    Stderr output:     major_brand     : isom
    Stderr output:     minor_version   : 512
    Stderr output:     compatible_brands: isomiso2avc1mp41
    Stderr output:     encoder         : Lavf58.12.100
    Stderr output:     location-eng    : +60.2121+024.8754/
    Stderr output:     location        : +60.2121+024.8754/
    Stderr output:   Duration: 00:02:23.13, bitrate: N/A
    Stderr output:     Stream #0:0(eng): Video: h264 (avc1 / 0x31637661), none, 1920x1080, 4647 kb/s, SAR 1:1 DAR 16:9, 59.94 fps, 59.94 tbr, 60k tbn, 120k tbc (default)
    Stderr output:     Metadata:
    Stderr output:       handler_name    : VideoHandler
    Stderr output:     Stream #0:1(eng): Audio: aac (mp4a / 0x6134706D), 48000 Hz, stereo, fltp, 128 kb/s (default)
    Stderr output:     Metadata:
    Stderr output:       handler_name    : SoundHandler
    Stderr output:     Stream #0:2(eng): Data: none (tmcd / 0x64636D74)
    Stderr output:     Metadata:
    Stderr output:       handler_name    : TimeCodeHandler
    Stderr output: Stream mapping:
    Input is aac (mp4a / 0x6134706D) audio with h264 (avc1 / 0x31637661) video
    Stderr output:   Stream #0:0 -> #0:0 (h264 (native) -> h264 (libx264))
    Stderr output:   Stream #0:1 -> #0:1 (aac (native) -> aac (native))
    Stderr output: [mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fb6db80a200] stream 0, offset 0x34: partial file
    Stderr output: pipe:0: Invalid data found when processing input
    Stderr output: Cannot determine format of input stream 0:0 after EOF
    Stderr output: Error marking filters as finished
    Stderr output: Conversion failed!
    Stderr output:
    Cannot process video: ffmpeg exited with code 1: pipe:0: Invalid data found when processing input
    Cannot determine format of input stream 0:0 after EOF
    Error marking filters as finished
    Conversion failed!