Recherche avancée

Médias (2)

Mot : - Tags -/documentation

Autres articles (55)

  • Mise à jour de la version 0.1 vers 0.2

    24 juin 2013, par

    Explications des différents changements notables lors du passage de la version 0.1 de MediaSPIP à la version 0.3. Quelles sont les nouveautés
    Au niveau des dépendances logicielles Utilisation des dernières versions de FFMpeg (>= v1.2.1) ; Installation des dépendances pour Smush ; Installation de MediaInfo et FFprobe pour la récupération des métadonnées ; On n’utilise plus ffmpeg2theora ; On n’installe plus flvtool2 au profit de flvtool++ ; On n’installe plus ffmpeg-php qui n’est plus maintenu au (...)

  • 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 ;

  • Ecrire une actualité

    21 juin 2013, par

    Présentez les changements dans votre MédiaSPIP ou les actualités de vos projets sur votre MédiaSPIP grâce à la rubrique actualités.
    Dans le thème par défaut spipeo de MédiaSPIP, les actualités sont affichées en bas de la page principale sous les éditoriaux.
    Vous pouvez personnaliser le formulaire de création d’une actualité.
    Formulaire de création d’une actualité Dans le cas d’un document de type actualité, les champs proposés par défaut sont : Date de publication ( personnaliser la date de publication ) (...)

Sur d’autres sites (11121)

  • FFMPEG - Pipe Different HLS Resolutions to S3

    17 juillet 2019, par Mike

    I’m trying to save all my HLS output files directly to S3. As you can see in the code, I’m saving output files for many different sizes and bitrates. My issue is I can’t figure out how to save the files onto S3. I have managed to get this working on an EC2 instance where I save all the files on the same server, but once I try to use aws cli it fails. I can also get this working if it’s just one resolution.

    I’m guessing it has something to do with piping multiple aws cli commands since I can see it tells me Unknown options:, but I don’t see any other way of doing this.

    Also, I’m using the -progress flag so I can show the transcode progress to the user, can I pipe that directly to S3 as-well ?

    Note, the code below has been formatted to make it readable, it obviously doesn’t look like this when ran on the server.

    FFMPEG Command

    ffmpeg
    -hide_banner -y
    -i https://my-bucket.s3.us-west-1.amazonaws.com/in.mp4
    -progress https://mybucket.s3.us-west-1.amazonaws.com/progress.log
    -c:a aac
    -c:v libx264
    -f mp4
    -profile:v high
    -level:v 4.0
    -crf 20
    -sc_threshold 0
    -flags +cgop
    -movflags frag_keyframe+faststart
    -pix_fmt yuv420p
    -preset ultrafast
    -g 100
    -keyint_min 100
    -hls_time 5000
    -hls_playlist_type vod

    -vf scale='trunc(oh*a/2)*2:288'
    -b:v 600k
    -maxrate 642k
    -bufsize 900k
    -b:a 64k
    -hls_segment_filename https://my-bucket.s3.us-west-1.amazonaws.com/288p_600k_%03d.ts
    pipe:1 | aws s3 cp - s3://my-bucket/288p_600k.m3u8

    -vf scale='trunc(oh*a/2)*2:360'
    -b:v 900k
    -maxrate 963k
    -bufsize 1350k
    -b:a 96k
    -hls_segment_filename https://my-bucket.s3.us-west-1.amazonaws.com/360p_900k_%03d.ts
    pipe:1 | aws s3 cp - s3://my-bucket/360p_900k.m3u8

    -vf scale='trunc(oh*a/2)*2:432'
    -b:v 1600k
    -maxrate 1712k
    -bufsize 2400k
    -b:a 128k
    -hls_segment_filename https://my-bucket.s3.us-west-1.amazonaws.com/432p_1600k_%03d.ts
    pipe:1 | aws s3 cp - s3://my-bucket/432p_1600k.m3u8

    -vf scale='trunc(oh*a/2)*2:720'
    -b:v 3200k
    -maxrate 3424k
    -bufsize 4800k
    -b:a 128k
    -hls_segment_filename https://my-bucket.s3.us-west-1.amazonaws.com/720p_3200k_%03d.ts
    pipe:1 | aws s3 cp - s3://my-bucket/720p_3200k.m3u8

    -vf scale='trunc(oh*a/2)*2:1080'
    -b:v 5300k
    -maxrate 5671k
    -bufsize 7950k
    -b:a 192k
    -hls_segment_filename https://my-bucket.s3.us-west-1.amazonaws.com/1080p_5300k_%03d.ts
    pipe:1 | aws s3 cp - s3://my-bucket/1080p_5300k.m3u8

    Error Message

    Exit Code: 1(General error)
    Working directory: /home/backend/public
    Output:
    ================
    Error Output:
    ================
    Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'https://my-bucket.s3.us-west-1.amazonaws.com/in.mp4':
     Metadata:
       major_brand     : isom
       minor_version   : 512
       compatible_brands: isomiso2avc1mp41
       creation_time   : 1970-01-01T00:00:00.000000Z
       encoder         : Lavf53.24.2
    Duration: 00:00:05.31, start: 0.000000, bitrate: 1589 kb/s
     Stream #0:0(und): Video: h264 (Main) (avc1 / 0x31637661), yuv420p, 1280x720 [SAR 1:1 DAR 16:9], 1205 kb/s, 25 fps, 25 tbr, 12800 tbn, 50 tbc (default)
     Metadata:
       creation_time   : 1970-01-01T00:00:00.000000Z
       handler_name    : VideoHandler
     Stream #0:1(und): Audio: aac (LC) (mp4a / 0x6134706D), 48000 Hz, 5.1, fltp, 384 kb/s (default)
     Metadata:
       creation_time   : 1970-01-01T00:00:00.000000Z
       handler_name    : SoundHandler
    Stream mapping:
     Stream #0:0 -> #0:0 (h264 (native) -> h264 (libx264))
     Stream #0:1 -> #0:1 (aac (native) -> aac (native))
    Press [q] to stop, [?] for help
    [libx264 @ 0x55ba09a95300] using SAR=1/1
    [libx264 @ 0x55ba09a95300] using cpu capabilities: MMX2 SSE2Fast LZCNT SSSE3 SSE4.2 AVX
    [libx264 @ 0x55ba09a95300] profile Constrained Baseline, level 4.0
    [libx264 @ 0x55ba09a95300] 264 - core 152 r2854 e9a5903 - H.264/MPEG-4 AVC codec - Copyleft 2003-2017 - http://www.videolan.org/x264.html - options: cabac=0 ref=1 deblock=0:0:0 analyse=0:0 me=dia subme=0 psy=1 psy_rd=1.00:0.00 mixed_ref=0 me_range=16 chroma_me=1 trellis=0 8x8dct=0 cqm=0 deadzone=21,11 fast_pskip=1 chroma_qp_offset=0 threads=3 lookahead_threads=1 sliced_threads=0 nr=0 decimate=1 interlaced=0 bluray_compat=0 constrained_intra=0 bframes=0 weightp=0 keyint=100 keyint_min=51 scenecut=0 intra_refresh=0 rc_lookahead=0 rc=crf mbtree=0 crf=20.0 qcomp=0.60 qpmin=0 qpmax=69 qpstep=4 vbv_maxrate=642 vbv_bufsize=900 crf_max=0.0 nal_hrd=none filler=0 ip_ratio=1.40 aq=0
    Output #0, mp4, to 'pipe:':
     Metadata:
       major_brand     : isom
       minor_version   : 512
       compatible_brands: isomiso2avc1mp41
       encoder         : Lavf57.83.100
       Stream #0:0(und): Video: h264 (libx264) (avc1 / 0x31637661), yuv420p, 512x288 [SAR 1:1 DAR 16:9], q=-1--1, 600 kb/s, 25 fps, 12800 tbn, 25 tbc (default)
       Metadata:
         creation_time   : 1970-01-01T00:00:00.000000Z
         handler_name    : VideoHandler
         encoder         : Lavc57.107.100 libx264
       Side data:
         cpb: bitrate max/min/avg: 642000/0/600000 buffer size: 900000 vbv_delay: -1
       Stream #0:1(und): Audio: aac (LC) (mp4a / 0x6134706D), 48000 Hz, 5.1, fltp, 64 kb/s (default)
       Metadata:
         creation_time   : 1970-01-01T00:00:00.000000Z
         handler_name    : SoundHandler
         encoder         : Lavc57.107.100 aac
    frame=   27 fps=0.0 q=28.0 size=       0kB time=00:00:01.13 bitrate=  
    0.3kbits/s speed=2.21x
    Unknown options: -vf,scale=trunc(oh*a/2)*2:360,-b:v,900k,-maxrate,963k,-bufsize,1350k,-b:a,96k,-hls_segment_filename,https://my-bucket.s3.us-west-1.amazonaws.com/360p_900k_%03d.ts,-

    Unknown options: -vf,scale=trunc(oh*a/2)*2:432,-b:v,1600k,-maxrate,1712k,-bufsize,2400k,-b:a,128k,-hls_segment_filename,https://my-bucket.s3.us-west-1.amazonaws.com/432p_1600k_%03d.ts,-

    Unknown options: -vf,scale=trunc(oh*a/2)*2:720,-b:v,3200k,-maxrate,3424k,-bufsize,4800k,-b:a,128k,-hls_segment_filename,https://my-bucket.s3.us-west-1.amazonaws.com/720p_3200k_%03d.ts,-

    Unknown options: -vf,scale=trunc(oh*a/2)*2:1080,-b:v,5300k,-maxrate,5671k,-bufsize,7950k,-b:a,192k,-hls_segment_filename,https://my-bucket.s3.us-west-1.amazonaws.com/1080p_5300k_%03d.ts,-
    upload failed: - to s3://my-bucket/1080p_5300k.m3u8 seek() takes 2 positional arguments but 3 were given
    av_interleaved_write_frame(): Broken pipe
    Error writing trailer of pipe:: Broken pipe
    frame=  105 fps=104 q=27.0 Lsize=       0kB time=00:00:04.26 bitrate=  
    0.1kbits/s speed=4.24x
    video:405kB audio:36kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: unknown
    [libx264 @ 0x55ba09a95300] frame I:2     Avg QP:27.31  size: 31711
    [libx264 @ 0x55ba09a95300] frame P:103   Avg QP:29.12  size:  3522
    [libx264 @ 0x55ba09a95300] mb I  I16..4: 100.0%  0.0%  0.0%
    [libx264 @ 0x55ba09a95300] mb P  I16..4:  0.8%  0.0%  0.0%  P16..4: 58.1%  
    0.0%  0.0%  0.0%  0.0%    skip:41.2%
    [libx264 @ 0x55ba09a95300] coded y,uvDC,uvAC intra: 71.6% 66.1% 45.5%
    inter: 29.8% 10.3% 1.5%
    [libx264 @ 0x55ba09a95300] i16 v,h,dc,p: 16% 26% 35% 23%
    [libx264 @ 0x55ba09a95300] i8c dc,h,v,p: 47% 22% 20% 11%
    [libx264 @ 0x55ba09a95300] kb/s:811.77
    [aac @ 0x55ba09e26c60] Qavg: 88.610
    Conversion failed!
  • Trim video and extract thumbnail simultaneously

    12 septembre 2019, par Robin

    I am using the following two codes for ffmpeg.

    Trim Video :

    ffmpeg -i input.mp4 -ss 0 -t 100 -c copy -f mp4 output.mp4

    Create Thumbnail :

    ffmpeg -i input.mp4 -ss 1 -vframes 1 -f mjpeg output

    Which works as expected and is super fast, but when I combine the two like so :

    ffmpeg -i input.mp4 -ss 0 -t 100 -c copy -f mp4 output.mp4 -i input.mp4 -ss 1 -vframes 1 -f mjpeg output.jpeg

    ffmpeg runs a re-encoding copy rather than using -c copy. I really would like to execute both of these functions in a single ffmpeg command.

    Below is the output from terminal when it is generating the thumbnail, which is where it appears the re-encoding is happening.

     Metadata:
       major_brand     : isom
       minor_version   : 512
       compatible_brands: isomiso2avc1mp41
       encoder         : Lavf57.83.100
       Stream #1:0(und): Video: mjpeg, yuvj420p(pc), 1280x720 [SAR 1:1 DAR 16:9], q=2-31, 200 kb/s, 25 fps, 25 tbn, 25 tbc (default)
       Metadata:
         creation_time   : 1970-01-01T00:00:00.000000Z
         handler_name    : VideoHandler
         encoder         : Lavc57.107.100 mjpeg
       Side data:
         cpb: bitrate max/min/avg: 0/0/200000 buffer size: 0 vbv_delay: -1
    frame=  324 fps=0.0 q=-1.0 q=6.3 size=    1792kB time=00:00:12.94 bitrate=1133.7kbits/s dup=0 drop=285 speed=2
    frame=  661 fps=660 q=-1.0 q=6.3 size=    4096kB time=00:00:26.43 bitrate=1269.5kbits/s dup=0 drop=622 speed=2
    frame= 1013 fps=674 q=-1.0 q=6.3 size=    6912kB time=00:00:40.51 bitrate=1397.7kbits/s dup=0 drop=974 speed=
    frame= 1356 fps=677 q=-1.0 q=6.3 size=    8704kB time=00:00:54.22 bitrate=1314.9kbits/s dup=0 drop=1317 speed=
    frame= 1694 fps=677 q=-1.0 q=6.3 size=   11264kB time=00:01:07.75 bitrate=1361.9kbits/s dup=0 drop=1655 speed=
    frame= 2031 fps=676 q=-1.0 q=6.3 size=   14080kB time=00:01:21.23 bitrate=1419.8kbits/s dup=0 drop=1992 speed=
    frame= 2360 fps=673 q=-1.0 q=6.3 size=   16384kB time=00:01:34.37 bitrate=1422.1kbits/s dup=0 drop=2321 speed=
    frame= 2511 fps=672 q=-1.0 Lq=6.3 size=   17695kB time=00:01:40.40 bitrate=1443.8kbits/s dup=0 drop=2474 speed=26.9x    
    video:13036kB audio:4684kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: unknown
  • FFMPEG command not working on MP4 files as expected

    21 février 2020, par DavidB

    I am trying to set the output time offset for mp4 file.

    ffmpeg -ss 13.554000 -i input.mp4 -c copy -t 10 -output_ts_offset 13.554000 output.mp4

    This code works for WEBM file as expected but not for MP4.
    In webm it delays start time of video to the specified timestamp and duration is 23.554 but in mp4 it just cuts the video, start time is set to 0 and duration is 10
    Cannot find what is problem.

    ffmpeg -ss 12.960000 -i v.mp4 -c copy -t 10  -output_ts_offset 12.960000 output.mp4
    ffmpeg version git-2019-12-26-b0d0d7e Copyright (c) 2000-2019 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. 37.100 / 56. 37.100
     libavcodec     58. 65.100 / 58. 65.100
     libavformat    58. 35.101 / 58. 35.101
     libavdevice    58.  9.101 / 58.  9.101
     libavfilter     7. 69.101 /  7. 69.101
     libswscale      5.  6.100 /  5.  6.100
     libswresample   3.  6.100 /  3.  6.100
     libpostproc    55.  6.100 / 55.  6.100
    Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'v.mp4':
     Metadata:
       major_brand     : isom
       minor_version   : 512
       compatible_brands: isomiso2avc1mp41
       creation_time   : 1970-01-01T00:00:00.000000Z
       encoder         : Lavf53.24.2
     Duration: 00:00:29.57, start: 0.000000, bitrate: 1421 kb/s
       Stream #0:0(und): Video: h264 (Main) (avc1 / 0x31637661), yuv420p, 1280x720 [SAR 1:1 DAR 16:9], 1032 kb/s, 25 fps, 25 tbr, 12800 tbn, 50 tbc (default)
       Metadata:
         creation_time   : 1970-01-01T00:00:00.000000Z
         handler_name    : VideoHandler
       Stream #0:1(und): Audio: aac (LC) (mp4a / 0x6134706D), 48000 Hz, 5.1, fltp, 383 kb/s (default)
       Metadata:
         creation_time   : 1970-01-01T00:00:00.000000Z
         handler_name    : SoundHandler
    Output #0, mp4, to 'output.mp4':
     Metadata:
       major_brand     : isom
       minor_version   : 512
       compatible_brands: isomiso2avc1mp41
       encoder         : Lavf58.35.101
       Stream #0:0(und): Video: h264 (Main) (avc1 / 0x31637661), yuv420p, 1280x720 [SAR 1:1 DAR 16:9], q=2-31, 1032 kb/s, 25 fps, 25 tbr, 12800 tbn, 12800 tbc (default)
       Metadata:
         creation_time   : 1970-01-01T00:00:00.000000Z
         handler_name    : VideoHandler
       Stream #0:1(und): Audio: aac (LC) (mp4a / 0x6134706D), 48000 Hz, 5.1, fltp, 383 kb/s (default)
       Metadata:
         creation_time   : 1970-01-01T00:00:00.000000Z
         handler_name    : SoundHandler
    Stream mapping:
     Stream #0:0 -> #0:0 (copy)
     Stream #0:1 -> #0:1 (copy)
    Press [q] to stop, [?] for help
    frame=  250 fps=0.0 q=-1.0 Lsize=    1687kB time=00:00:09.99 bitrate=1382.7kbits/s speed=2.21e+03x
    video:1212kB audio:468kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 0.408804%```