Recherche avancée

Médias (91)

Autres articles (79)

  • MediaSPIP 0.1 Beta version

    25 avril 2011, par

    MediaSPIP 0.1 beta is the first version of MediaSPIP proclaimed as "usable".
    The zip file provided here only contains the sources of MediaSPIP in its standalone version.
    To get a working installation, you must manually install all-software dependencies on the server.
    If you want to use this archive for an installation in "farm mode", you will also need to proceed to other manual (...)

  • MediaSPIP version 0.1 Beta

    16 avril 2011, par

    MediaSPIP 0.1 beta est la première version de MediaSPIP décrétée comme "utilisable".
    Le fichier zip ici présent contient uniquement les sources de MediaSPIP en version standalone.
    Pour avoir une installation fonctionnelle, il est nécessaire d’installer manuellement l’ensemble des dépendances logicielles sur le serveur.
    Si vous souhaitez utiliser cette archive pour une installation en mode ferme, il vous faudra également procéder à d’autres modifications (...)

  • 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 (11311)

  • ffmpeg concat and preserve metadata streams

    16 décembre 2024, par Andrew

    I'm trying to concat multiple files that are the result of a GoPro Hero6 splitting movies to avoid the FAT 4GB limit. ffmpeg works great for this purpose but I need the telemetry data that is encoded in the metadata streams, and ffmpeg by default doesn't seem to preserve this. Using the ffprobe command you can see that the source videos have :

    



    Stream #0:3(eng): Data: none (gpmd / 0x646D7067), 36 kb/s (default)
Metadata:
  creation_time   : 2018-07-15T16:16:26.000000Z
  handler_name    : GoPro MET


    



    I know from research that this is the stream I need (although I'd like to be able to copy all streams). However when using ffmpeg -f concat the output is :

    



    [concat @ 0x7febb9800000] Could not find codec parameters for stream 2 (Unknown: none): unknown codec
Consider increasing the value for the 'analyzeduration' and 'probesize' options
[concat @ 0x7febb9800000] Could not find codec parameters for stream 3 (Unknown: none): unknown codec
Consider increasing the value for the 'analyzeduration' and 'probesize' options
[concat @ 0x7febb9800000] Could not find codec parameters for stream 4 (Unknown: none): unknown codec
Consider increasing the value for the 'analyzeduration' and 'probesize' options
Input #0, concat, from 'tmp.txt':
  Duration: N/A, start: 0.000000, bitrate: 66194 kb/s
    Stream #0:0(eng): Video: h264 (High) (avc1 / 0x31637661), yuvj420p(pc, bt709), 2704x1520 [SAR 1:1 DAR 169:95], 66005 kb/s, 59.94 fps, 59.94 tbr, 60k tbn, 119.88 tbc
    Metadata:
      creation_time   : 2018-07-15T16:08:22.000000Z
      handler_name    : GoPro AVC
      encoder         : GoPro AVC encoder
      timecode        : 16:23:48:21
    Stream #0:1(eng): Audio: aac (LC) (mp4a / 0x6134706D), 48000 Hz, stereo, fltp, 189 kb/s
    Metadata:
      creation_time   : 2018-07-15T16:08:22.000000Z
      handler_name    : GoPro AAC
      timecode        : 16:23:48:21
    Stream #0:2: Unknown: none
    Stream #0:3: Unknown: none
    Stream #0:4: Unknown: none
Output #0, mp4, to 'GH0089.MP4':
  Metadata:
    encoder         : Lavf58.12.100
    Stream #0:0(eng): Video: h264 (High) (avc1 / 0x31637661), yuvj420p(pc, bt709), 2704x1520 [SAR 1:1 DAR 169:95], q=2-31, 66005 kb/s, 0.02 fps, 59.94 tbr, 60k tbn, 60k tbc
    Metadata:
      creation_time   : 2018-07-15T16:08:22.000000Z
      handler_name    : GoPro AVC
      encoder         : GoPro AVC encoder
      timecode        : 16:23:48:21
    Stream #0:1(eng): Audio: aac (LC) (mp4a / 0x6134706D), 48000 Hz, stereo, fltp, 189 kb/s
    Metadata:
      creation_time   : 2018-07-15T16:08:22.000000Z
      handler_name    : GoPro AAC
      timecode        : 16:23:48:21
Stream mapping:
  Stream #0:0 -> #0:0 (copy)
  Stream #0:1 -> #0:1 (copy)
Press [q] to stop, [?] for help


    



    The warnings Could not find codec parameters are especially interesting and Stream mapping shows that only the video and audio streams are mapped. I've played around with map_metadata to no avail. I may not have the format right but it seems more likely that the issue is related to the warning as the codecs are not recognized and I would expect all streams to be mapped by default.

    



    I would expect or hope for an answer that ignore the warnings and map the unrecognized streams without attempting to understand them.

    



    Any help is appreciated.

    


  • How to write mp4 metadata with ffmpeg without affecting the video data

    13 juillet 2018, par Daniel Quinn

    I’m trying to write metadata to a video file in one step, and capture the "raw data" (no metadata) portion of a video file in another step. The trouble is, with MP4 files, adding metadata to the file appears to alter the raw video data as well, while MKV files act as expected. Here’s an example with two files : test.mkv and test.mp4 :

    MKV

    ffmpeg -i test.mkv -loglevel error -metadata 'arbitrary=string' -codec copy test-new-metadata.mkv

    ffmpeg -i test.mkv              -loglevel error -map 0:v:0 -c copy -f data - -map 0:a:0 -c copy -f data - | md5sum
    631becf821dca89b150120d25393491a  -

    ffmpeg -i test-new-metadata.mkv -loglevel error -map 0:v:0 -c copy -f data - -map 0:a:0 -c copy -f data - | md5sum
    631becf821dca89b150120d25393491a  -

    MP4

    ffmpeg -i test.mp4 -loglevel error -metadata 'arbitrary=string' -codec copy test-new-metadata.mp4

    ffmpeg -i test.mp4              -loglevel error -map 0:v:0 -c copy -f data - -map 0:a:0 -c copy -f data - | md5sum
    b9b28e4ac500be961bd07290a34cf93f  -

    ffmpeg -i test-new-metadata.mp4 -loglevel error -map 0:v:0 -c copy -f data - -map 0:a:0 -c copy -f data - | md5sum
    d13e7177fae9b341994bc1ee8f3812bc  -

    ...and now webm, just to see if I’m losing my mind :

    Webm

    ffmpeg -i test.webm -loglevel error -metadata 'arbitrary=string' -codec copy test-new-metadata.webm

    ffmpeg -i test.webm              -loglevel error -map 0:v:0 -c copy -f data - -map 0:a:0 -c copy -f data - | md5sum
    a62e053d3dbf627db4d77c5165152a81  -

    ffmpeg -i test-new-metadata.webm -loglevel error -map 0:v:0 -c copy -f data - -map 0:a:0 -c copy -f data - | md5sum
    a62e053d3dbf627db4d77c5165152a81  -

    So I’m left wondering if my understanding of how to capture the raw video is misinformed, or if MP4 is "special" in some way. Note that I’m not interested in using ffmpeg’s own hashing functions as I want to run the raw data through an external process. The use of md5sum here is just to test if the output is identical.

    Update : As requested, I’m including the output of the metadata writing step for MP4 files :

    $ ffmpeg -i test.mp4 -metadata 'arbitrary=string' -codec copy test-new-metadata.mp4
    ffmpeg version 4.0.1 Copyright (c) 2000-2018 the FFmpeg developers
     built with gcc 8.1.1 (GCC) 20180531
     configuration: --prefix=/usr --disable-debug --disable-static --disable-stripping --enable-avresample --enable-fontconfig --enable-gmp --enable-gnutls --enable-gpl --enable-ladspa --enable-libaom --enable-libass --enable-libbluray --enable-libdrm --enable-libfreetype --enable-libfribidi --enable-libgsm --enable-libiec61883 --enable-libmodplug --enable-libmp3lame --enable-libopencore_amrnb --enable-libopencore_amrwb --enable-libopenjpeg --enable-libopus --enable-libpulse --enable-libsoxr --enable-libspeex --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-nvenc --enable-omx --enable-shared --enable-version3
     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
    Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'test.mp4':
     Metadata:
       major_brand     : mp42
       minor_version   : 0
       compatible_brands: mp42isomavc1
       creation_time   : 2010-03-20T21:29:11.000000Z
       encoder         : HandBrake 0.9.4 2009112300
     Duration: 00:00:05.57, start: 0.000000, bitrate: 551 kb/s
       Stream #0:0(und): Video: h264 (Constrained Baseline) (avc1 / 0x31637661), yuv420p(tv, bt709), 560x320, 465 kb/s, 30 fps, 30 tbr, 90k tbn, 60 tbc (default)
       Metadata:
         creation_time   : 2010-03-20T21:29:11.000000Z
         encoder         : JVT/AVC Coding
       Stream #0:1(eng): Audio: aac (LC) (mp4a / 0x6134706D), 48000 Hz, mono, fltp, 83 kb/s (default)
       Metadata:
         creation_time   : 2010-03-20T21:29:11.000000Z
    Output #0, mp4, to 'test-new-metadata.mp4':
     Metadata:
       major_brand     : mp42
       minor_version   : 0
       compatible_brands: mp42isomavc1
       arbitrary       : string
       encoder         : Lavf58.12.100
       Stream #0:0(und): Video: h264 (Constrained Baseline) (avc1 / 0x31637661), yuv420p(tv, bt709), 560x320, q=2-31, 465 kb/s, 30 fps, 30 tbr, 90k tbn, 90k tbc (default)
       Metadata:
         creation_time   : 2010-03-20T21:29:11.000000Z
         encoder         : JVT/AVC Coding
       Stream #0:1(eng): Audio: aac (LC) (mp4a / 0x6134706D), 48000 Hz, mono, fltp, 83 kb/s (default)
       Metadata:
         creation_time   : 2010-03-20T21:29:11.000000Z
    Stream mapping:
     Stream #0:0 -> #0:0 (copy)
     Stream #0:1 -> #0:1 (copy)
    Press [q] to stop, [?] for help
    frame=  166 fps=0.0 q=-1.0 Lsize=     377kB time=00:00:05.54 bitrate= 556.7kbits/s speed=4.07e+03x    
    video:315kB audio:56kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 1.609490%

    Update 2 : Here’s a link to the misbehaving mp4 file (375k).

  • FFMPEG creating static video ?

    10 juillet 2018, par Kjell

    I’m using ffmpeg 4.0.1 on the latest version of MacOS. I’ve got webcam capture down, as well as creating a video from a series of images. But for some reason, when I try to do screen capture, the outputted video is a bunch of colorful static with the correct audio.

    Here is the command I use :

     ffmpeg -f avfoundation -i '1:0' -y -r 30 -pix_fmt yuv420p test.mp4

    And here are my devices :

    [AVFoundation input device @ 0x7f9924404b00] AVFoundation video devices:
    [AVFoundation input device @ 0x7f9924404b00] [0] FaceTime HD Camera
    [AVFoundation input device @ 0x7f9924404b00] [1] Capture screen 0
    [AVFoundation input device @ 0x7f9924404b00] AVFoundation audio devices:
    [AVFoundation input device @ 0x7f9924404b00] [0] Built-in Microphone

    And here is some of my config :

    built with Apple LLVM version 9.1.0 (clang-902.0.39.2)
    configuration: --prefix=/usr/local/Cellar/ffmpeg/4.0.1 --enable-shared --enable-pthreads --enable-version3 --enable-hardcoded-tables --enable-avresample --cc=clang --host-cflags= --host-ldflags= --enable-gpl --enable-libmp3lame --enable-libx264 --enable-libxvid --enable-opencl --enable-videotoolbox --disable-lzma
    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

    Anyone have an ideas on how to fix this ?

    Update with Terminal Log

    I reran the terminal command, let it run for 30s, and then canceled the operation.

    [12:41:40 Developer@Kjells-MacBook-Air ~/desktop]$ ffmpeg -f

    avfoundation -r 30 -i "1:0" -pix_fmt yuv420p output.mov
    ffmpeg version 4.0.1 Copyright (c) 2000-2018 the FFmpeg developers
     built with Apple LLVM version 9.1.0 (clang-902.0.39.2)
     configuration: --prefix=/usr/local/Cellar/ffmpeg/4.0.1 --enable-shared --enable-pthreads --enable-version3 --enable-hardcoded-tables --enable-avresample --cc=clang --host-cflags= --host-ldflags= --enable-gpl --enable-libmp3lame --enable-libx264 --enable-libxvid --enable-opencl --enable-videotoolbox --disable-lzma
     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
    [avfoundation @ 0x7fc9a4808e00] Selected pixel format (yuv420p) is not supported by the input device.
    [avfoundation @ 0x7fc9a4808e00] Supported pixel formats:
    [avfoundation @ 0x7fc9a4808e00]   uyvy422
    [avfoundation @ 0x7fc9a4808e00]   yuyv422
    [avfoundation @ 0x7fc9a4808e00]   nv12
    [avfoundation @ 0x7fc9a4808e00]   0rgb
    [avfoundation @ 0x7fc9a4808e00]   bgr0
    [avfoundation @ 0x7fc9a4808e00] Overriding selected pixel format to use uyvy422 instead.
    Input #0, avfoundation, from '1:0':
     Duration: N/A, start: 116959.473833, bitrate: N/A
       Stream #0:0: Video: rawvideo (UYVY / 0x59565955), uyvy422, 1366x768, 30 tbr, 1000k tbn, 1000k tbc
       Stream #0:1: Audio: pcm_f32le, 44100 Hz, stereo, flt, 2822 kb/s
    Stream mapping:
     Stream #0:0 -> #0:0 (rawvideo (native) -> h264 (libx264))
     Stream #0:1 -> #0:1 (pcm_f32le (native) -> aac (native))
    Press [q] to stop, [?] for help
    [libx264 @ 0x7fc9a48e4a00] using cpu capabilities: MMX2 SSE2Fast SSSE3 SSE4.2 AVX FMA3 BMI2 AVX2
    [libx264 @ 0x7fc9a48e4a00] profile High, level 3.2
    [libx264 @ 0x7fc9a48e4a00] 264 - core 152 r2854 e9a5903 - H.264/MPEG-4 AVC codec - Copyleft 2003-2017 - http://www.videolan.org/x264.html - options: cabac=1 ref=3 deblock=1:0:0 analyse=0x3:0x113 me=hex subme=7 psy=1 psy_rd=1.00:0.00 mixed_ref=1 me_range=16 chroma_me=1 trellis=1 8x8dct=1 cqm=0 deadzone=21,11 fast_pskip=1 chroma_qp_offset=-2 threads=6 lookahead_threads=1 sliced_threads=0 nr=0 decimate=1 interlaced=0 bluray_compat=0 constrained_intra=0 bframes=3 b_pyramid=2 b_adapt=1 b_bias=0 direct=1 weightb=1 open_gop=0 weightp=2 keyint=250 keyint_min=25 scenecut=40 intra_refresh=0 rc_lookahead=40 rc=crf mbtree=1 crf=23.0 qcomp=0.60 qpmin=0 qpmax=69 qpstep=4 ip_ratio=1.40 aq=1:1.00
    Output #0, mov, to 'output.mov':
     Metadata:
       encoder         : Lavf58.12.100
       Stream #0:0: Video: h264 (libx264) (avc1 / 0x31637661), yuv420p(progressive), 1366x768, q=-1--1, 30 fps, 15360 tbn, 30 tbc
       Metadata:
         encoder         : Lavc58.18.100 libx264
       Side data:
         cpb: bitrate max/min/avg: 0/0/0 buffer size: 0 vbv_delay: -1
       Stream #0:1: Audio: aac (LC) (mp4a / 0x6134706D), 44100 Hz, stereo, fltp, 128 kb/s
       Metadata:
         encoder         : Lavc58.18.100 aac
    frame=  892 fps= 30 q=-1.0 Lsize=    1907kB time=00:00:29.74 bitrate= 525.1kbits/s speed=0.991x    
    video:1409kB audio:465kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 1.754444%
    [libx264 @ 0x7fc9a48e4a00] frame I:4     Avg QP:18.77  size:288641
    [libx264 @ 0x7fc9a48e4a00] frame P:225   Avg QP:24.73  size:   790
    [libx264 @ 0x7fc9a48e4a00] frame B:663   Avg QP:33.63  size:   166
    [libx264 @ 0x7fc9a48e4a00] consecutive B-frames:  0.8%  0.2%  0.3% 98.7%
    [libx264 @ 0x7fc9a48e4a00] mb I  I16..4: 19.3% 10.7% 70.0%
    [libx264 @ 0x7fc9a48e4a00] mb P  I16..4:  0.6%  0.0%  0.1%  P16..4:  0.4%  0.0%  0.0%  0.0%  0.0%    skip:98.7%
    [libx264 @ 0x7fc9a48e4a00] mb B  I16..4:  0.0%  0.3%  0.0%  B16..8:  1.0%  0.0%  0.0%  direct: 0.0%  skip:98.7%  L0:58.1% L1:41.7% BI: 0.2%
    [libx264 @ 0x7fc9a48e4a00] 8x8 transform intra:30.2% inter:6.9%
    [libx264 @ 0x7fc9a48e4a00] coded y,uvDC,uvAC intra: 33.5% 34.9% 33.2% inter: 0.0% 0.0% 0.0%
    [libx264 @ 0x7fc9a48e4a00] i16 v,h,dc,p: 10% 89%  1%  0%
    [libx264 @ 0x7fc9a48e4a00] i8 v,h,dc,ddl,ddr,vr,hd,vl,hu: 12%  7% 81%  0%  0%  0%  0%  0%  0%
    [libx264 @ 0x7fc9a48e4a00] i4 v,h,dc,ddl,ddr,vr,hd,vl,hu: 12% 47% 13%  2%  3%  1% 12%  1%  9%
    [libx264 @ 0x7fc9a48e4a00] i8c dc,h,v,p: 65% 29%  5%  1%
    [libx264 @ 0x7fc9a48e4a00] Weighted P-Frames: Y:0.0% UV:0.0%
    [libx264 @ 0x7fc9a48e4a00] ref P L0: 74.7%  2.8% 20.6%  1.9%
    [libx264 @ 0x7fc9a48e4a00] ref B L0: 56.2% 43.2%  0.7%
    [libx264 @ 0x7fc9a48e4a00] ref B L1: 97.7%  2.3%
    [libx264 @ 0x7fc9a48e4a00] kb/s:388.06
    [aac @ 0x7fc9a5217400] Qavg: 252.357
    Exiting normally, received signal 2.

    To note : I added -pix_fmt yuv420 because without it, none of my ffmpeg output seems to be able to run via Quicktime Player. Since this is the only player I use currently, I want my output to run on this player. I noticed there is a log about switching to uyvy422, but I think this is a bug because when I manually add uyvy422, the output cannot be opened at all.