Recherche avancée

Médias (1)

Mot : - Tags -/iphone

Autres articles (70)

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

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

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

  • avutil/hwcontext_videotoolbox : Set CVBuffer CGColorSpace

    20 mai 2024, par Marvin Scholz
    avutil/hwcontext_videotoolbox : Set CVBuffer CGColorSpace
    

    In addition to the other properties, try to obtain the right
    CGColorSpace and set it as well, else it could lead to a CVBuffer
    tagged as BT.2020 but with a CGColorSpace indicating BT.709.

    Therefore it is essential for consistency to set a colorspace
    according to the other values, or if none can be obtained (for example
    because the other values are all unspecified) unset it as well.

    Fix #10884

    Signed-off-by : Zhao Zhili <zhilizhao@tencent.com>

    • [DH] libavutil/hwcontext_videotoolbox.c
  • Concat filter : Error initializing output stream

    18 juin 2020, par Ittai Barkai

    This is a follow-up question to : Flutter (Dart) : Merge two videos and view the new output in the device’s gallery (photos)

    &#xA;&#xA;

    In essence, I am trying to record two videos, merge them and then view the new video in the gallery. I am currently having some issues with the flutter_ffmpeg package.

    &#xA;&#xA;

    I uploaded the my Flutter project onto GitHub here :

    &#xA;&#xA;

    https://github.com/IttaiBarkai/Flutter-Video-Merger

    &#xA;&#xA;

    Below is a snippet of my code used to execute ffmpeg :

    &#xA;&#xA;

    void _videoMerger() async {&#xA;&#xA;    final appDir = await syspaths.getApplicationDocumentsDirectory();&#xA;    String rawDocumentPath = appDir.path;&#xA;    final outputPath = &#x27;$rawDocumentPath/output.mp4&#x27;;&#xA;&#xA;    final FlutterFFmpeg _flutterFFmpeg = new FlutterFFmpeg();&#xA;&#xA;        String commandToExecute = &#x27;-y -i ${_storedVideoOne.path} -i ${_storedVideoTwo.path} -filter_complex \&#x27;[0:0][1:0]concat=n=2:v=1:a=0[out]\&#x27; -map \&#x27;[out]\&#x27; $outputPath&#x27;;&#xA;        _flutterFFmpeg.execute(commandToExecute).then((rc) => print("FFmpeg process exited with rc $rc"));&#xA;&#xA;  }&#xA;

    &#xA;&#xA;

    and this is the output displayed on my debug console when ffmpeg gets executed :

    &#xA;&#xA;

    D/flutter-ffmpeg(29135): Running FFmpeg with arguments: [-y, -i, /storage/emulated/0/Android/data/com.example.video_merger_two/files/Pictures/1e8947f4-c9c2-4020-b78d-c40fb77ce0d16301015681843175998.mp4, -i, /storage/emulated/0/Android/data/com.example.video_merger_two/files/Pictures/3555b190-a9a6-450d-b6a7-7d1b8fc89ad38627500242651150494.mp4, -filter_complex, [0:0][1:0]concat=n=2:v=1:a=0[out], -map, [out], /data/user/0/com.example.video_merger_two/app_flutter/output.mp4].&#xA;    I/mobile-ffmpeg(29135): Loading mobile-ffmpeg.&#xA;    I/mobile-ffmpeg(29135): Loaded mobile-ffmpeg-https-x86-4.3.1-20200125.&#xA;    D/mobile-ffmpeg(29135): Callback thread started.&#xA;    I/mobile-ffmpeg(29135): ffmpeg version git-2020-01-25-fd11dd500&#xA;    I/mobile-ffmpeg(29135):  Copyright (c) 2000-2020 the FFmpeg developers&#xA;    I/mobile-ffmpeg(29135):&#xA;    I/mobile-ffmpeg(29135):   built with Android (5220042 based on r346389c) clang version 8.0.7 (https://android.googlesource.com/toolchain/clang b55f2d4ebfd35bf643d27dbca1bb228957008617) (https://android.googlesource.com/toolchain/llvm 3c393fe7a7e13b0fba4ac75a01aa683d7a5b11cd) (based on LLVM 8.0.7svn)&#xA;    I/mobile-ffmpeg(29135):   configuration: --cross-prefix=i686-linux-android- --sysroot=/files/android-sdk/ndk-bundle/toolchains/llvm/prebuilt/linux-x86_64/sysroot --prefix=/home/taner/Projects/mobile-ffmpeg/prebuilt/android-x86/ffmpeg --pkg-config=/usr/bin/pkg-config --enable-version3 --arch=i686 --cpu=i686 --cc=i686-linux-android24-clang --cxx=i686-linux-android24-clang&#x2B;&#x2B; --target-os=android --disable-neon --disable-asm --disable-inline-asm --enable-cross-compile --enable-pic --enable-jni --enable-optimizations --enable-swscale --enable-shared --disable-v4l2-m2m --disable-outdev=v4l2 --disable-outdev=fbdev --disable-indev=v4l2 --disable-indev=fbdev --enable-small --disable-openssl --disable-xmm-clobber-test --disable-debug --enable-lto --disable-neon-clobber-test --disable-programs --disable-postproc --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-static --disable-sndio --disable-schannel --disable-securetransport --disable-xlib --disable-cuda --disable-cuvid --disable-nvenc --di&#xA;    I/mobile-ffmpeg(29135):   libavutil      56. 38.100 / 56. 38.100&#xA;    I/mobile-ffmpeg(29135):   libavcodec     58. 65.102 / 58. 65.102&#xA;    I/mobile-ffmpeg(29135):   libavformat    58. 35.101 / 58. 35.101&#xA;    I/mobile-ffmpeg(29135):   libavdevice    58.  9.103 / 58.  9.103&#xA;    I/mobile-ffmpeg(29135):   libavfilter     7. 70.101 /  7. 70.101&#xA;    I/mobile-ffmpeg(29135):   libswscale      5.  6.100 /  5.  6.100&#xA;    I/mobile-ffmpeg(29135):   libswresample   3.  6.100 /  3.  6.100&#xA;    I/mobile-ffmpeg(29135): Input #0, mov,mp4,m4a,3gp,3g2,mj2, from &#x27;/storage/emulated/0/Android/data/com.example.video_merger_two/files/Pictures/1e8947f4-c9c2-4020-b78d-c40fb77ce0d16301015681843175998.mp4&#x27;:&#xA;    I/mobile-ffmpeg(29135):   Metadata:&#xA;    I/mobile-ffmpeg(29135):     major_brand     :&#xA;    I/mobile-ffmpeg(29135): mp42&#xA;    I/mobile-ffmpeg(29135):&#xA;    I/mobile-ffmpeg(29135):     minor_version   :&#xA;    I/mobile-ffmpeg(29135): 0&#xA;    I/mobile-ffmpeg(29135):&#xA;    I/mobile-ffmpeg(29135):     compatible_brands:&#xA;    I/mobile-ffmpeg(29135): isommp42&#xA;    I/mobile-ffmpeg(29135):&#xA;    I/mobile-ffmpeg(29135):     creation_time   :&#xA;    I/mobile-ffmpeg(29135): 2020-06-17T18:26:00.000000Z&#xA;    I/mobile-ffmpeg(29135):&#xA;    I/mobile-ffmpeg(29135):     com.android.version:&#xA;    I/mobile-ffmpeg(29135): 10&#xA;    I/mobile-ffmpeg(29135):&#xA;    I/mobile-ffmpeg(29135):   Duration:&#xA;    I/mobile-ffmpeg(29135): 27:34:19.38&#xA;    I/mobile-ffmpeg(29135): , start:&#xA;    I/mobile-ffmpeg(29135): 0.000000&#xA;    I/mobile-ffmpeg(29135): , bitrate:&#xA;    I/mobile-ffmpeg(29135): 0 kb/s&#xA;    I/mobile-ffmpeg(29135):&#xA;    I/mobile-ffmpeg(29135):     Stream #0:0&#xA;    I/mobile-ffmpeg(29135): (eng)&#xA;    I/mobile-ffmpeg(29135): : Video: h264 (avc1 / 0x31637661), yuv420p(tv, GBR), 1280x720, 3554 kb/s&#xA;    I/mobile-ffmpeg(29135): , SAR 1:1 DAR 16:9&#xA;    I/mobile-ffmpeg(29135): ,&#xA;    I/mobile-ffmpeg(29135): 29.01 fps,&#xA;    I/mobile-ffmpeg(29135): 29 tbr,&#xA;    I/mobile-ffmpeg(29135): 90k tbn,&#xA;    I/mobile-ffmpeg(29135): 180k tbc    &#xA;    I/mobile-ffmpeg(29135):  (default)&#xA;    I/mobile-ffmpeg(29135):&#xA;    I/mobile-ffmpeg(29135):     Metadata:&#xA;    I/mobile-ffmpeg(29135):       rotate          :&#xA;    I/mobile-ffmpeg(29135): 90&#xA;    I/mobile-ffmpeg(29135):&#xA;    I/mobile-ffmpeg(29135):       creation_time   :&#xA;    I/mobile-ffmpeg(29135): 2020-06-17T18:26:00.000000Z&#xA;    I/mobile-ffmpeg(29135):&#xA;    I/mobile-ffmpeg(29135):       handler_name    :&#xA;    I/mobile-ffmpeg(29135): VideoHandle&#xA;    I/mobile-ffmpeg(29135):&#xA;    I/mobile-ffmpeg(29135):     Side data:&#xA;    I/mobile-ffmpeg(29135):&#xA;    I/mobile-ffmpeg(29135): displaymatrix: rotation of -90.00 degrees&#xA;    I/mobile-ffmpeg(29135):&#xA;    I/mobile-ffmpeg(29135):     Stream #0:1&#xA;    I/mobile-ffmpeg(29135): (eng)&#xA;    I/mobile-ffmpeg(29135): : Audio: amr_nb (samr / 0x726D6173), 8000 Hz, mono, flt, 12 kb/s&#xA;    I/mobile-ffmpeg(29135):  (default)&#xA;    I/mobile-ffmpeg(29135):&#xA;    I/mobile-ffmpeg(29135):     Metadata:&#xA;    I/mobile-ffmpeg(29135):       creation_time   :&#xA;    I/mobile-ffmpeg(29135): 2020-06-17T18:26:00.000000Z&#xA;    I/mobile-ffmpeg(29135):&#xA;    I/mobile-ffmpeg(29135):       handler_name    :&#xA;    I/mobile-ffmpeg(29135): SoundHandle&#xA;    I/mobile-ffmpeg(29135):&#xA;    I/mobile-ffmpeg(29135): Input #1, mov,mp4,m4a,3gp,3g2,mj2, from &#x27;/storage/emulated/0/Android/data/com.example.video_merger_two/files/Pictures/3555b190-a9a6-450d-b6a7-7d1b8fc89ad38627500242651150494.mp4&#x27;:&#xA;    I/mobile-ffmpeg(29135):   Metadata:&#xA;    I/mobile-ffmpeg(29135):     major_brand     :&#xA;    I/mobile-ffmpeg(29135): mp42&#xA;    I/mobile-ffmpeg(29135):&#xA;    I/mobile-ffmpeg(29135):     minor_version   :&#xA;    I/mobile-ffmpeg(29135): 0&#xA;    I/mobile-ffmpeg(29135):&#xA;    I/mobile-ffmpeg(29135):     compatible_brands:&#xA;    I/mobile-ffmpeg(29135): isommp42&#xA;    I/mobile-ffmpeg(29135):&#xA;    I/mobile-ffmpeg(29135):     creation_time   :&#xA;    I/mobile-ffmpeg(29135): 2020-06-17T18:26:09.000000Z&#xA;    I/mobile-ffmpeg(29135):&#xA;    I/mobile-ffmpeg(29135):     com.android.version:&#xA;    I/mobile-ffmpeg(29135): 10&#xA;    I/mobile-ffmpeg(29135):&#xA;    I/mobile-ffmpeg(29135):   Duration:&#xA;    I/mobile-ffmpeg(29135): 27:34:19.62&#xA;    I/mobile-ffmpeg(29135): , start:&#xA;    I/mobile-ffmpeg(29135): 0.000000&#xA;    I/mobile-ffmpeg(29135): , bitrate:&#xA;    I/mobile-ffmpeg(29135): 0 kb/s&#xA;    I/mobile-ffmpeg(29135):&#xA;    I/mobile-ffmpeg(29135):     Stream #1:0&#xA;    I/mobile-ffmpeg(29135): (eng)&#xA;    I/mobile-ffmpeg(29135): : Video: h264 (avc1 / 0x31637661), yuv420p(tv, GBR), 1280x720, 3765 kb/s&#xA;    I/mobile-ffmpeg(29135): , SAR 1:1 DAR 16:9&#xA;    I/mobile-ffmpeg(29135): ,&#xA;    I/mobile-ffmpeg(29135): 28.80 fps,&#xA;    I/mobile-ffmpeg(29135): 29.08 tbr,&#xA;    I/mobile-ffmpeg(29135): 90k tbn,&#xA;    I/mobile-ffmpeg(29135): 180k tbc&#xA;    I/mobile-ffmpeg(29135):  (default)&#xA;    I/mobile-ffmpeg(29135):&#xA;    I/mobile-ffmpeg(29135):     Metadata:&#xA;    I/mobile-ffmpeg(29135):       rotate          :&#xA;    I/mobile-ffmpeg(29135): 90&#xA;    I/mobile-ffmpeg(29135):&#xA;    I/mobile-ffmpeg(29135):       creation_time   :&#xA;    I/mobile-ffmpeg(29135): 2020-06-17T18:26:09.000000Z&#xA;    I/mobile-ffmpeg(29135):&#xA;    I/mobile-ffmpeg(29135):       handler_name    :&#xA;    I/mobile-ffmpeg(29135): VideoHandle&#xA;    I/mobile-ffmpeg(29135):&#xA;    I/mobile-ffmpeg(29135):     Side data:&#xA;    I/mobile-ffmpeg(29135):&#xA;    I/mobile-ffmpeg(29135): displaymatrix: rotation of -90.00 degrees&#xA;    I/mobile-ffmpeg(29135):&#xA;    I/mobile-ffmpeg(29135):     Stream #1:1&#xA;    I/mobile-ffmpeg(29135): (eng)&#xA;    I/mobile-ffmpeg(29135): : Audio: amr_nb (samr / 0x726D6173), 8000 Hz, mono, flt, 12 kb/s&#xA;    I/mobile-ffmpeg(29135):  (default)&#xA;    I/mobile-ffmpeg(29135):&#xA;    I/mobile-ffmpeg(29135):     Metadata:&#xA;    I/mobile-ffmpeg(29135):       creation_time   :&#xA;    I/mobile-ffmpeg(29135): 2020-06-17T18:26:09.000000Z&#xA;    I/mobile-ffmpeg(29135):&#xA;    I/mobile-ffmpeg(29135):       handler_name    :&#xA;    I/mobile-ffmpeg(29135): SoundHandle&#xA;    I/mobile-ffmpeg(29135):&#xA;    I/mobile-ffmpeg(29135): Stream mapping:&#xA;    I/mobile-ffmpeg(29135):   Stream #0:0 (h264) -> concat:in0:v0&#xA;    I/mobile-ffmpeg(29135):&#xA;    I/mobile-ffmpeg(29135):   Stream #1:0 (h264) -> concat:in1:v0&#xA;    I/mobile-ffmpeg(29135):&#xA;    I/mobile-ffmpeg(29135):   concat&#xA;    I/mobile-ffmpeg(29135):  -> Stream #0:0 (mpeg4)&#xA;    I/mobile-ffmpeg(29135): Press [q] to stop, [?] for help&#xA;    W/mobile-ffmpeg(29135): [graph 0 input from stream 0:0 @ 0xed087710] sws_param option is deprecated and ignored&#xA;    W/mobile-ffmpeg(29135): [graph 0 input from stream 1:0 @ 0xed086830] sws_param option is deprecated and ignored&#xA;    W/mobile-ffmpeg(29135): [mp4 @ 0xeccd8790] Frame rate very high for a muxer not efficiently supporting it.&#xA;    W/mobile-ffmpeg(29135): Please consider specifying a lower framerate, a different muxer or -vsync 2&#xA;    E/mobile-ffmpeg(29135): [mpeg4 @ 0xe68049d0] timebase 1/1000000 not supported by MPEG 4 standard, the maximum admitted value for the timebase denominator is 65535&#xA;    E/mobile-ffmpeg(29135): Error initializing output stream 0:0 -- Error while opening encoder for output stream #0:0 - maybe incorrect parameters such as bit_rate, rate, width or height&#xA;    I/mobile-ffmpeg(29135): Conversion failed!&#xA;    D/flutter-ffmpeg(29135): FFmpeg exited with rc: 1&#xA;    I/flutter (29135): FFmpeg process exited with rc 1&#xA;

    &#xA;

  • How to get the output resolution after successful encode ?

    11 janvier 2021, par Daniel Birowsky Popeski

    I'm using fluent-ffmpeg and I'm already able to get the output resolution in the 'on end' event :

    &#xA;

    createFfmpegCommand()&#xA;  .input(fs.createReadStream(readPath))&#xA;  .noAudio()&#xA;  .fps(30)&#xA;  .format(&#x27;mp4&#x27;)&#xA;  .videoCodec(&#x27;libx264&#x27;)&#xA;  .videoFilter([&#xA;   {filter: &#x27;scale&#x27;, options: &#x27;1920:1920:force_original_aspect_ratio=decrease&#x27;},&#xA;   {filter: &#x27;setpts&#x27;, options: &#x27;1.5*PTS&#x27;},&#xA;  ])&#xA;  .outputOption(&#x27;-crf 30&#x27;)&#xA;  .outputOption(&#x27;-movflags frag_keyframe&#x27;)&#xA;  .outputOption(&#x27;-movflags &#x2B;faststart&#x27;)&#xA;  .output(mp4WriteStream)&#xA;  .on(&#x27;start&#x27;, () => console.log(&#x27;processing started&#x27;))&#xA;  .on(&#x27;error&#x27;, err => console.error(&#x27;err&#x27;, err))&#xA;  .on(&#x27;end&#x27;, (_,res) => console.log(&#x27;processing success&#x27;,res))&#xA;  .run();&#xA;

    &#xA;

    However, i'd like it to be machine-readable (json or xml). Instead, it looks like this :

    &#xA;

     ffmpeg version 4.3.1 Copyright (c) 2000-2020 the FFmpeg developers&#xA;  built with Apple clang version 12.0.0 (clang-1200.0.32.28)&#xA;  configuration: --prefix=/usr/local/Cellar/ffmpeg/4.3.1_8 --enable-shared --enable-pthreads --enable-version3 --enable-avresample --cc=clang --host-cflags= --host-ldflags= --enable-ffplay --enable-gnutls --enable-gpl --enable-libaom --enable-libbluray --enable-libdav1d --enable-libmp3lame --enable-libopus --enable-librav1e --enable-librubberband --enable-libsnappy --enable-libsrt --enable-libtesseract --enable-libtheora --enable-libvidstab --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-librtmp --enable-libspeex --enable-libsoxr --enable-videotoolbox --enable-libzmq --enable-libzimg --disable-libjack --disable-indev=jack&#xA;  libavutil      56. 51.100 / 56. 51.100&#xA;  libavcodec     58. 91.100 / 58. 91.100&#xA;  libavformat    58. 45.100 / 58. 45.100&#xA;  libavdevice    58. 10.100 / 58. 10.100&#xA;  libavfilter     7. 85.100 /  7. 85.100&#xA;  libavresample   4.  0.  0 /  4.  0.  0&#xA;  libswscale      5.  7.100 /  5.  7.100&#xA;  libswresample   3.  7.100 /  3.  7.100&#xA;  libpostproc    55.  7.100 / 55.  7.100&#xA;Input #0, mov,mp4,m4a,3gp,3g2,mj2, from &#x27;pipe:0&#x27;:&#xA;  Metadata:&#xA;    major_brand     : mp42&#xA;    minor_version   : 0&#xA;    compatible_brands: mp42mp41&#xA;    creation_time   : 2020-05-28T09:51:18.000000Z&#xA;  Duration: 00:00:02.23, start: 0.000000, bitrate: N/A&#xA;    Stream #0:0(eng): Video: h264 (Main) (avc1 / 0x31637661), yuv420p(tv, bt709), 1920x1080, 9108 kb/s, 30 fps, 30 tbr, 30k tbn, 60 tbc (default)&#xA;    Metadata:&#xA;      creation_time   : 2020-05-28T09:51:18.000000Z&#xA;      handler_name    : ?Mainconcept Video Media Handler&#xA;      encoder         : AVC Coding&#xA;Stream mapping:&#xA;  Stream #0:0 -> #0:0 (h264 (native) -> h264 (libx264))&#xA;[libx264 @ 0x7f92d9808e00] using cpu capabilities: MMX2 SSE2Fast SSSE3 SSE4.2 AVX FMA3 BMI2 AVX2&#xA;[libx264 @ 0x7f92d9808e00] profile High, level 4.0, 4:2:0, 8-bit&#xA;[libx264 @ 0x7f92d9808e00] 264 - core 161 r3027 4121277 - H.264/MPEG-4 AVC codec - Copyleft 2003-2020 - 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=12 lookahead_threads=2 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=30.0 qcomp=0.60 qpmin=0 qpmax=69 qpstep=4 ip_ratio=1.40 aq=1:1.00&#xA;Output #0, mp4, to &#x27;pipe:1&#x27;:&#xA;  Metadata:&#xA;    major_brand     : mp42&#xA;    minor_version   : 0&#xA;    compatible_brands: mp42mp41&#xA;    encoder         : Lavf58.45.100&#xA;    Stream #0:0(eng): Video: h264 (libx264) (avc1 / 0x31637661), yuv420p, 1920x1080, q=-1--1, 30 fps, 15360 tbn, 30 tbc (default)&#xA;    Metadata:&#xA;      creation_time   : 2020-05-28T09:51:18.000000Z&#xA;      handler_name    : ?Mainconcept Video Media Handler&#xA;      encoder         : Lavc58.91.100 libx264&#xA;    Side data:&#xA;      cpb: bitrate max/min/avg: 0/0/0 buffer size: 0 vbv_delay: N/A&#xA;frame=   64 fps=0.0 q=36.0 size=       0kB time=00:00:00.16 bitrate=   1.7kbits/s dup=21 drop=0 speed=0.316x    &#xA;frame=  100 fps=0.0 q=-1.0 Lsize=     108kB time=00:00:03.23 bitrate= 274.7kbits/s dup=33 drop=0 speed=3.25x    &#xA;video:106kB audio:0kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 1.906519%&#xA;[libx264 @ 0x7f92d9808e00] frame I:1     Avg QP:25.71  size:  8782&#xA;[libx264 @ 0x7f92d9808e00] frame P:25    Avg QP:30.10  size:  2308&#xA;[libx264 @ 0x7f92d9808e00] frame B:74    Avg QP:27.92  size:   564&#xA;[libx264 @ 0x7f92d9808e00] consecutive B-frames:  1.0%  0.0%  3.0% 96.0%&#xA;[libx264 @ 0x7f92d9808e00] mb I  I16..4: 19.4% 77.2%  3.3%&#xA;[libx264 @ 0x7f92d9808e00] mb P  I16..4:  0.3%  0.8%  0.1%  P16..4:  4.6%  1.3%  0.4%  0.0%  0.0%    skip:92.5%&#xA;[libx264 @ 0x7f92d9808e00] mb B  I16..4:  0.0%  0.0%  0.0%  B16..8:  4.0%  0.2%  0.0%  direct: 0.0%  skip:95.7%  L0:44.2% L1:54.8% BI: 1.0%&#xA;[libx264 @ 0x7f92d9808e00] 8x8 transform intra:75.0% inter:78.3%&#xA;[libx264 @ 0x7f92d9808e00] coded y,uvDC,uvAC intra: 8.8% 8.8% 2.4% inter: 0.3% 0.2% 0.0%&#xA;[libx264 @ 0x7f92d9808e00] i16 v,h,dc,p: 77%  7% 10%  6%&#xA;[libx264 @ 0x7f92d9808e00] i8 v,h,dc,ddl,ddr,vr,hd,vl,hu: 48%  3% 42%  1%  1%  1%  1%  1%  1%&#xA;[libx264 @ 0x7f92d9808e00] i4 v,h,dc,ddl,ddr,vr,hd,vl,hu: 28% 16% 26%  7%  4%  4%  3%  5%  6%&#xA;[libx264 @ 0x7f92d9808e00] i8c dc,h,v,p: 89%  5%  5%  1%&#xA;[libx264 @ 0x7f92d9808e00] Weighted P-Frames: Y:0.0% UV:0.0%&#xA;[libx264 @ 0x7f92d9808e00] ref P L0: 66.9% 11.1% 16.7%  5.3%&#xA;[libx264 @ 0x7f92d9808e00] ref B L0: 87.5%  9.9%  2.6%&#xA;[libx264 @ 0x7f92d9808e00] ref B L1: 96.4%  3.6%&#xA;[libx264 @ 0x7f92d9808e00] kb/s:259.80&#xA;

    &#xA;

    Which doesn't let me be comfortable that my regex to extract the output resolution is always going to work.

    &#xA;

    Also, I don't wanna make another call/fileread just to get the resolution. Mainly because my files are stored in S3, where ffprobe doesn't work.

    &#xA;