Recherche avancée

Médias (2)

Mot : - Tags -/media

Autres articles (29)

  • 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

  • Encoding and processing into web-friendly formats

    13 avril 2011, par

    MediaSPIP automatically converts uploaded files to internet-compatible formats.
    Video files are encoded in MP4, Ogv and WebM (supported by HTML5) and MP4 (supported by Flash).
    Audio files are encoded in MP3 and Ogg (supported by HTML5) and MP3 (supported by Flash).
    Where possible, text is analyzed in order to retrieve the data needed for search engine detection, and then exported as a series of image files.
    All uploaded files are stored online in their original format, so you can (...)

  • Les autorisations surchargées par les plugins

    27 avril 2010, par

    Mediaspip core
    autoriser_auteur_modifier() afin que les visiteurs soient capables de modifier leurs informations sur la page d’auteurs

Sur d’autres sites (5591)

  • FFMPEG recode clip1 to match clip2 for concat demux

    21 novembre 2020, par Gert Gottschalk

    I want to concat two video clips using ffmpeg concat. To use concat demuxer both should have same codec settings. clip2 is much shorter so I want to recode it to match clip1. Initially clip2 had tbn not matching and I adjusted that with '-video_track_timescale 50000'. Still the concat video after the cut into clip2 is garbled (audio seems OK)

    


    This is what ffprobe tells for clip1 :

    


    ffprobe version N-80251-g0c7fa15 Copyright (c) 2007-2016 the FFmpeg developers
  built with gcc 4.8 (Ubuntu 4.8.4-2ubuntu1~14.04.3)
  configuration: --prefix=/home/tools/ffmpeg_build --pkg-config-flags=--static --extra-cflags=-I/home/tools/ffmpeg_build/include --extra-ldflags=-L/home/tools/ffmpeg_build/lib --bindir=/home/tools/bin --enable-gpl --enable-libass --enable-libfdk-aac --enable-libfreetype --enable-libmp3lame --enable-libopus --enable-libtheora --enable-libvorbis --enable-libvpx --enable-libx264 --enable-libx265 --enable-nonfree
  libavutil      55. 24.100 / 55. 24.100
  libavcodec     57. 45.100 / 57. 45.100
  libavformat    57. 37.101 / 57. 37.101
  libavdevice    57.  0.101 / 57.  0.101
  libavfilter     6. 46.101 /  6. 46.101
  libswscale      4.  1.100 /  4.  1.100
  libswresample   2.  0.101 /  2.  0.101
  libpostproc    54.  0.100 / 54.  0.100
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'clip1.mp4':
  Metadata:
    major_brand     : isom
    minor_version   : 1
    compatible_brands: isomavc1
    creation_time   : 2020-11-09 01:16:52
  Duration: 01:23:09.33, start: 0.000000, bitrate: 2279 kb/s
    Stream #0:0(und): Video: h264 (Main) (avc1 / 0x31637661), yuv420p, 1280x720 [SAR 1:1 DAR 16:9], 2080 kb/s, 50 fps, 50 tbr, 50k tbn, 100 tbc (default)
    Metadata:
      creation_time   : 2020-11-09 01:16:52
      handler_name    : 11.07_21-45_ard_90_TVOON_DE.mpg.HD_video.h264@GPAC0.5.2-DEV-revVersion: 0.5.2-426-gc5ad4e4+dfsg5-1ubuntu0.1
    Stream #0:1(und): Audio: aac (LC) (mp4a / 0x6134706D), 48000 Hz, stereo, fltp, 196 kb/s (default)
    Metadata:
      creation_time   : 2020-11-09 01:17:45
      handler_name    : 11.07_21-45_ard_90_TVOON_DE.mpg.HD.aac@GPAC0.5.2-DEV-revVersion: 0.5.2-426-gc5ad4e4+dfsg5-1ubuntu0.1


    


    From clip2

    


    ffprobe version N-80251-g0c7fa15 Copyright (c) 2007-2016 the FFmpeg developers
  built with gcc 4.8 (Ubuntu 4.8.4-2ubuntu1~14.04.3)
  configuration: --prefix=/home/tools/ffmpeg_build --pkg-config-flags=--static --extra-cflags=-I/home/tools/ffmpeg_build/include --extra-ldflags=-L/home/tools/ffmpeg_build/lib --bindir=/home/tools/bin --enable-gpl --enable-libass --enable-libfdk-aac --enable-libfreetype --enable-libmp3lame --enable-libopus --enable-libtheora --enable-libvorbis --enable-libvpx --enable-libx264 --enable-libx265 --enable-nonfree
  libavutil      55. 24.100 / 55. 24.100
  libavcodec     57. 45.100 / 57. 45.100
  libavformat    57. 37.101 / 57. 37.101
  libavdevice    57.  0.101 / 57.  0.101
  libavfilter     6. 46.101 /  6. 46.101
  libswscale      4.  1.100 /  4.  1.100
  libswresample   2.  0.101 /  2.  0.101
  libpostproc    54.  0.100 / 54.  0.100
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'clip2.mp4':
  Metadata:
    major_brand     : isom
    minor_version   : 512
    compatible_brands: isomiso2avc1mp41
    encoder         : Lavf57.37.101
    comment         :  
  Duration: 00:18:42.02, start: 0.000000, bitrate: 1693 kb/s
    Stream #0:0(und): Video: h264 (High) (avc1 / 0x31637661), yuv420p, 1280x720 [SAR 1:1 DAR 16:9], 1553 kb/s, 50 fps, 50 tbr, 50k tbn, 100 tbc (default)
    Metadata:
      handler_name    : VideoHandler
    Stream #0:1(und): Audio: aac (LC) (mp4a / 0x6134706D), 48000 Hz, stereo, fltp, 130 kb/s (default)
    Metadata:
      handler_name    : SoundHandler


    


    Then for concat :

    


    /home/tools/bin/ffmpeg -f concat -i list.files  -y clip12.mp4


    


    The only gap is with
clip1 : 2080 kb/s
clip2 : 1553 kb/s

    


    Is that significant ?

    


    If yes, how to recode clip2 to match and result in concat clip12 being clean ?

    


    EDIT (Per feedback from llogan) :

    


    Probing input clips with latest ffprobe.

    


    Clip1 :

    


    ffprobe version N-54874-ga1553b0cfb-static https://johnvansickle.com/ffmpeg/  Copyright (c) 2007-2020 the FFmpeg developers
  built with gcc 8 (Debian 8.3.0-6)
  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
  libavutil      56. 60.100 / 56. 60.100
  libavcodec     58.112.101 / 58.112.101
  libavformat    58. 64.100 / 58. 64.100
  libavdevice    58. 11.102 / 58. 11.102
  libavfilter     7. 88.102 /  7. 88.102
  libswscale      5.  8.100 /  5.  8.100
  libswresample   3.  8.100 /  3.  8.100
  libpostproc    55.  8.100 / 55.  8.100
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'clip1.mp4':
  Metadata:
    major_brand     : isom
    minor_version   : 1
    compatible_brands: isomavc1
    creation_time   : 2020-11-09T01:16:52.000000Z
  Duration: 01:23:09.33, start: 0.000000, bitrate: 2279 kb/s
    Stream #0:0(und): Video: h264 (Main) (avc1 / 0x31637661), yuv420p, 1280x720 [SAR 1:1 DAR 16:9], 2080 kb/s, 50 fps, 50 tbr, 50k tbn, 100 tbc (default)
    Metadata:
      creation_time   : 2020-11-09T01:16:52.000000Z
      handler_name    : 11.07_21-45_ard_90_TVOON_DE.mpg.HD_video.h264@GPAC0.5.2-DEV-revVersion: 0.5.2-426-gc5ad4e4+dfsg5-1ubuntu0.1
    Stream #0:1(und): Audio: aac (LC) (mp4a / 0x6134706D), 48000 Hz, stereo, fltp, 196 kb/s (default)
    Metadata:
      creation_time   : 2020-11-09T01:17:45.000000Z
      handler_name    : 11.07_21-45_ard_90_TVOON_DE.mpg.HD.aac@GPAC0.5.2-DEV-revVersion: 0.5.2-426-gc5ad4e4+dfsg5-1ubuntu0.1


    


    Command & log to change clip2 :

    


    /usr/share/ffmpeg.4.3.1//ffmpeg-git-20201104-amd64-static/ffmpeg -i clip2.avi -ss 00:12:55  -t 00:05:48 -c:v libx264 -profile:v main -video_track_timescale 50k -c:a copy -y clip2.mp4 2> ffmpeg_clip2.log
ffmpeg version N-54874-ga1553b0cfb-static https://johnvansickle.com/ffmpeg/  Copyright (c) 2000-2020 the FFmpeg developers
  built with gcc 8 (Debian 8.3.0-6)
  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
  libavutil      56. 60.100 / 56. 60.100
  libavcodec     58.112.101 / 58.112.101
  libavformat    58. 64.100 / 58. 64.100
  libavdevice    58. 11.102 / 58. 11.102
  libavfilter     7. 88.102 /  7. 88.102
  libswscale      5.  8.100 /  5.  8.100
  libswresample   3.  8.100 /  3.  8.100
  libpostproc    55.  8.100 / 55.  8.100
Input #0, avi, from 'clip2.avi':
  Metadata:
    comment         :  
    encoder         : Lavf58.42.100
    encoded_by      : www.onlinetvrecorder.com
  Duration: 00:35:48.90, start: 0.000000, bitrate: 2243 kb/s
    Stream #0:0: Video: h264 (Main) (H264 / 0x34363248), yuv420p(progressive), 1280x720 [SAR 1:1 DAR 16:9], 2034 kb/s, 50 fps, 50 tbr, 50 tbn, 100 tbc
    Stream #0:1: Audio: mp3 (U[0][0][0] / 0x0055), 48000 Hz, stereo, fltp, 192 kb/s
Stream mapping:
  Stream #0:0 -> #0:0 (h264 (native) -> h264 (libx264))
  Stream #0:1 -> #0:1 (copy)
Press [q] to stop, [?] for help
frame=    0 fps=0.0 q=0.0 size=       0kB time=-577014:32:22.77 bitrate=  -0.0kbits/s speed=N/A  
...
frame=    0 fps=0.0 q=0.0 size=       0kB time=-577014:32:22.77 bitrate=  -0.0kbits/s speed=N/A
[libx264 @ 0x71fb740] using SAR=1/1
[libx264 @ 0x71fb740] using cpu capabilities: MMX2 SSE2Fast SSSE3 SSE4.2 AVX FMA3
[libx264 @ 0x71fb740] profile Main, level 3.2, 4:2:0, 8-bit
[libx264 @ 0x71fb740] 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=0x1:0x111 me=hex subme=7 psy=1 psy_rd=1.00:0.00 mixed_ref=1 me_range=16 chroma_me=1 trellis=1 8x8dct=0 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, mp4, to 'clip2.mp4':
  Metadata:
    comment         :  
    encoded_by      : www.onlinetvrecorder.com
    encoder         : Lavf58.64.100
    Stream #0:0: Video: h264 (libx264) (avc1 / 0x31637661), yuv420p(progressive), 1280x720 [SAR 1:1 DAR 16:9], q=-1--1, 50 fps, 50k tbn, 50 tbc
    Metadata:
      encoder         : Lavc58.112.101 libx264
    Side data:
      cpb: bitrate max/min/avg: 0/0/0 buffer size: 0 vbv_delay: N/A
    Stream #0:1: Audio: mp3 (mp4a / 0x6134706D), 48000 Hz, stereo, fltp, 192 kb/s
frame=   15 fps=0.4 q=0.0 size=       0kB time=00:00:00.31 bitrate=   1.2kbits/s speed=0.00806x    
...
frame=17400 fps= 73 q=-1.0 Lsize=   62382kB time=00:05:47.97 bitrate=1468.6kbits/s speed=1.47x    
video:53846kB audio:8156kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 0.611439%
[libx264 @ 0x71fb740] frame I:157   Avg QP:18.21  size: 42082
[libx264 @ 0x71fb740] frame P:5607  Avg QP:22.21  size:  6677
[libx264 @ 0x71fb740] frame B:11636 Avg QP:23.93  size:   953
[libx264 @ 0x71fb740] consecutive B-frames:  8.3%  6.0%  5.0% 80.8%
[libx264 @ 0x71fb740] mb I  I16..4: 47.5%  0.0% 52.5%
[libx264 @ 0x71fb740] mb P  I16..4:  5.7%  0.0%  1.1%  P16..4: 35.4%  6.2%  3.0%  0.0%  0.0%    skip:48.4%
[libx264 @ 0x71fb740] mb B  I16..4:  0.2%  0.0%  0.0%  B16..8: 21.0%  0.4%  0.0%  direct: 0.5%  skip:77.9%  L0:45.1% L1:53.8% BI: 1.2%
[libx264 @ 0x71fb740] coded y,uvDC,uvAC intra: 24.6% 38.3% 6.0% inter: 2.8% 4.7% 0.0%
[libx264 @ 0x71fb740] i16 v,h,dc,p: 43% 24% 15% 18%
[libx264 @ 0x71fb740] i4 v,h,dc,ddl,ddr,vr,hd,vl,hu: 26% 20% 19%  6%  7%  6%  6%  6%  4%
[libx264 @ 0x71fb740] i8c dc,h,v,p: 57% 20% 20%  4%
[libx264 @ 0x71fb740] Weighted P-Frames: Y:0.5% UV:0.4%
[libx264 @ 0x71fb740] ref P L0: 70.3% 12.1% 14.0%  3.6%  0.0%
[libx264 @ 0x71fb740] ref B L0: 92.9%  5.9%  1.2%
[libx264 @ 0x71fb740] ref B L1: 97.5%  2.5%
[libx264 @ 0x71fb740] kb/s:1267.54


    


    I'm observing mismatch in what I assume is the audio channel.

    


    Clip1 :

    


    /usr/share/ffmpeg.4.3.1//ffmpeg-git-20201104-amd64-static/ffprobe  clip1.mp4
    Stream #0:0(und): Video: h264 (Main) (avc1 / 0x31637661), yuv420p, 1280x720 [SAR 1:1 DAR 16:9], 2080 kb/s, 50 fps, 50 tbr, 50k tbn, 100 tbc (default)
    Stream #0:1(und): Audio: aac (LC) (mp4a / 0x6134706D), 48000 Hz, stereo, fltp, 196 kb/s (default)


    


    Clip2 :

    


    /usr/share/ffmpeg.4.3.1//ffmpeg-git-20201104-amd64-static/ffprobe  clip2.mp4 
    Stream #0:0(und): Video: h264 (Main) (avc1 / 0x31637661), yuv420p, 1280x720 [SAR 1:1 DAR 16:9], 1267 kb/s, 50 fps, 50 tbr, 50k tbn, 100 tbc (default)
    Stream #0:1(und): Audio: mp3 (mp4a / 0x6134706D), 48000 Hz, stereo, fltp, 192 kb/s (default)


    


    Probably need to match audio channel. I noticed that the concat too a long time. I was expecting the concat to just do copying and not re-rendering.

    


  • FFMPEG-PHP Error "Sample rate index in program config element does not match the sample rate index configured by the container."

    21 novembre 2020, par Jonathan

    Am using FFMPEG installed on a Windows server. I have a PHP webpage that uploads and trims videos using FFMPEG, when I upload MP4's with AAC audio, especially videos over 100mb, I get the following errors in the log output below.

    


    I was wondering if anyone could point me in the right direction to getting this resolved.

    


    Log output of the error below :

    


    <pre>object(FFMpeg\Exception\RuntimeException)#35 (7) {&#xA;  ["message":protected]=>&#xA;  string(15) "Encoding failed"&#xA;  ["string":"Exception":private]=>&#xA;  string(0) ""&#xA;  ["code":protected]=>&#xA;  int(0)&#xA;  ["file":protected]=>&#xA;  string(108) "C:\inetpub\wwwroot\dev\ffmpeg-lib\ffmpeg-php\vendor\php-ffmpeg\php-ffmpeg\src\FFMpeg\Media\AbstractVideo.php"&#xA;  ["line":protected]=>&#xA;  int(106)&#xA;  ["trace":"Exception":private]=>&#xA;  array(1) {&#xA;    [0]=>&#xA;    array(5) {&#xA;      ["file"]=>&#xA;      string(45) "C:\inetpub\wwwroot\dev\ffmpeg-lib\process.php"&#xA;      ["line"]=>&#xA;      int(35)&#xA;      ["function"]=>&#xA;      string(4) "save"&#xA;      ["class"]=>&#xA;      string(26) "FFMpeg\Media\AbstractVideo"&#xA;      ["type"]=>&#xA;      string(2) "->"&#xA;    }&#xA;  }&#xA;  ["previous":"Exception":private]=>&#xA;  object(Alchemy\BinaryDriver\Exception\ExecutionFailureException)#43 (9) {&#xA;    ["command":protected]=>&#xA;    string(393) "C:\ffmpeg\bin\ffmpeg.exe -y -ss 00:00:17.00 -i "temp/temp_20201110-100656_1080p-220mb.mp4" -t 00:00:52.00 -threads 12 -vcodec libx264 -acodec aac -b:v 1000k -refs 6 -coder 1 -sc_threshold 40 -flags &#x2B;loop -me_range 16 -subq 7 -i_qfactor 0.71 -qcomp 0.6 -qdiff 4 -trellis 1 -b:a 128k -pass 1 -passlogfile "W:/TempIIS\ffmpeg-passes5fabd8bdf3612uvd6b/pass-5fabd8bdf378b" "temp/20201111-122741.mp4""&#xA;    ["errorOutput":protected]=>&#xA;    string(830102) "ffmpeg version git-2020-08-31-4a11a6f Copyright (c) 2000-2020 the FFmpeg developers&#xA;  built with gcc 10.2.1 (GCC) 20200805&#xA;  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-libsrt --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-libvmaf --enable-libvorbis --enable-libvo-amrwbenc --enable-libmysofa --enable-libspeex --enable-libxvid --enable-libaom --enable-libgsm --enable-librav1e --enable-libsvtav1 --disable-w32threads --enable-libmfx --enable-ffnvcodec --enable-cuda-llvm --enable-cuvid --enable-d3d11va --enable-nvenc --enable-nvdec --enable-dxva2 --enable-avisynth --enable-libopenmpt --enable-amf&#xA;  libavutil      56. 58.100 / 56. 58.100&#xA;  libavcodec     58.101.101 / 58.101.101&#xA;  libavformat    58. 51.101 / 58. 51.101&#xA;  libavdevice    58. 11.101 / 58. 11.101&#xA;  libavfilter     7. 87.100 /  7. 87.100&#xA;  libswscale      5.  8.100 /  5.  8.100&#xA;  libswresample   3.  8.100 /  3.  8.100&#xA;  libpostproc    55.  8.100 / 55.  8.100&#xA;Input #0, mov,mp4,m4a,3gp,3g2,mj2, from &#x27;temp/temp_20201110-100656_1080p-220mb.mp4&#x27;:&#xA;  Metadata:&#xA;    major_brand     : mp42&#xA;    minor_version   : 19529854&#xA;    compatible_brands: mp42isom&#xA;    creation_time   : 2016-04-11T06:32:53.000000Z&#xA;  Duration: 00:02:25.98, start: 0.000000, bitrate: 13772 kb/s&#xA;    Stream #0:0(eng): Audio: aac (LC) (mp4a / 0x6134706D), 48000 Hz, stereo, fltp, 128 kb/s (default)&#xA;    Metadata:&#xA;      creation_time   : 2016-04-11T06:32:53.000000Z&#xA;      handler_name    : Sound Media Handler&#xA;    Stream #0:1(eng): Video: h264 (High) (avc1 / 0x31637661), yuv420p, 1920x1080 [SAR 1:1 DAR 16:9], 13639 kb/s, 29.97 fps, 29.97 tbr, 30k tbn, 59.94 tbc (default)&#xA;    Metadata:&#xA;      creation_time   : 2016-04-11T06:32:53.000000Z&#xA;      handler_name    : Video Media Handler&#xA;      encoder         : AVC Coding&#xA;Stream mapping:&#xA;  Stream #0:1 -> #0:0 (h264 (native) -> h264 (libx264))&#xA;  Stream #0:0 -> #0:1 (aac (native) -> aac (native))&#xA;Press [q] to stop, [?] for help&#xA;[aac @ 000001fc5a9ce8c0] Sample rate index in program config element does not match the sample rate index configured by the container.&#xA;[h264 @ 000001fc5a3dac80] Invalid NAL unit size (-360624822 > 108076).&#xA;[h264 @ 000001fc5a3dac80] Error splitting the input into NAL units.&#xA;[aac @ 000001fc5a9ce8c0] Inconsistent channel configuration.&#xA;[aac @ 000001fc5a9ce8c0] get_buffer() failed&#xA;Error while decoding stream #0:0: Invalid argument&#xA;[aac @ 000001fc5a9ce8c0] Sample rate index in program config element does not match the sample rate index configured by the container.&#xA;[aac @ 000001fc5a9ce8c0] Inconsistent channel configuration.&#xA;[aac @ 000001fc5a9ce8c0] get_buffer() failed&#xA;Error while decoding stream #0:0: Invalid argument&#xA;[aac @ 000001fc5a9ce8c0] channel element 2.15 is not allocated&#xA;Error while decoding stream #0:0: Invalid data found when processing input&#xA;[aac @ 000001fc5a9ce8c0] Sample rate index in program config element does not match the sample rate index configured by the container.&#xA;[aac @ 000001fc5a9ce8c0] Inconsistent channel configuration.&#xA;[aac @ 000001fc5a9ce8c0] get_buffer() failed&#xA;Error while decoding stream #0:0: Invalid argument&#xA;[h264 @ 000001fc5a3be480] Invalid NAL unit size (1926587749 > 39711).&#xA;[h264 @ 000001fc5a3be480] Error splitting the input into NAL units.&#xA;[h264 @ 000001fc5a3e4540] Invalid NAL unit size (-1483385910 > 21666).&#xA;[h264 @ 000001fc5a3e4540] Error splitting the input into NAL units.&#xA;[h264 @ 000001fc5ad06500] Invalid NAL unit size (1060193647 > 41388).&#xA;[h264 @ 000001fc5ad06500] Error splitting the input into NAL units.&#xA;Error while decoding stream #0:1: Invalid data found when processing input&#xA;[h264 @ 000001fc5ad22e80] Invalid NAL unit size (1499431567 > 26513).&#xA;[h264 @ 000001fc5ad22e80] Error splitting the input into NAL units.&#xA;Error while decoding stream #0:1: Invalid data found when processing input&#xA;[h264 @ 000001fc5a3dac80] Invalid NAL unit size (-23485766 > 46738).&#xA;[h264 @ 000001fc5a3dac80] Error splitting the input into NAL units.&#xA;Error while decoding stream #0:1: Invalid data found when processing input&#xA;[h264 @ 000001fc5a3be480] Invalid NAL unit size (2023411154 > 21613).&#xA;[h264 @ 000001fc5a3be480] Error splitting the input into NAL units.&#xA;Error while decoding stream #0:1: Invalid data found when processing input&#xA;[h264 @ 000001fc5a3e4540] Invalid NAL unit size (519125029 > 48521).&#xA;[h264 @ 000001fc5a3e4540] Error splitting the input into NAL units.&#xA;Error while decoding stream #0:1: Invalid data found when processing input&#xA;[h264 @ 000001fc5ad06500] Invalid NAL unit size (-2099015076 > 25631).&#xA;[h264 @ 000001fc5ad06500] Error splitting the input into NAL units.&#xA;Error while decoding stream #0:1: Invalid data found when processing input&#xA;[h264 @ 000001fc5ad22e80] Invalid NAL unit size (-1081182476 > 46590).&#xA;[h264 @ 000001fc5ad22e80] Error splitting the input into NAL units.&#xA;Error while decoding stream #0:1: Invalid data found when processing input&#xA;[aac @ 000001fc5a9ce8c0] channel element 2.0 is not allocated&#xA;Error while decoding stream #0:0: Invalid data found when processing input&#xA;[aac @ 000001fc5a9ce8c0] Multiple frames in a packet.&#xA;[aac @ 000001fc5a9ce8c0] Sample rate index in program config element does not match the sample rate index configured by the container.&#xA;[h264 @ 000001fc5a3dac80] Invalid NAL unit size (-2080403149 > 27914).&#xA;[h264 @ 000001fc5a3dac80] Error splitting the input into NAL units.&#xA;[aac @ 000001fc5a9ce8c0] Inconsistent channel configuration.&#xA;[aac @ 000001fc5a9ce8c0] get_buffer() failed&#xA;Error while decoding stream #0:0: Invalid argument&#xA;[aac @ 000001fc5a9ce8c0] Sample rate index in program config element does not match the sample rate index configured by the container.&#xA;[aac @ 000001fc5a9ce8c0] Inconsistent channel configuration.&#xA;[aac @ 000001fc5a9ce8c0] get_buffer() failed&#xA;Error while decoding stream #0:0: Invalid argument&#xA;[aac @ 000001fc5a9ce8c0] channel element 3.9 is not allocated&#xA;Error while decoding stream #0:0: Invalid data found when processing input&#xA;[aac @ 000001fc5a9ce8c0] Reserved bit set.&#xA;[aac @ 000001fc5a9ce8c0] Prediction is not allowed in AAC-LC.&#xA;Error while decoding stream #0:0: Invalid data found when processing input&#xA;[aac @ 000001fc5a9ce8c0] channel element 2.6 is not allocated&#xA;Error while decoding stream #0:0: Invalid data found when processing input&#xA;[aac @ 000001fc5a9ce8c0] Number of scalefactor bands in group (52) exceeds limit (49).&#xA;Error while decoding stream #0:0: Invalid data found when processing input&#xA;[aac @ 000001fc5a9ce8c0] channel element 3.10 is not allocated&#xA;Error while decoding stream #0:0: Invalid data found when processing input&#xA;[aac @ 000001fc5a9ce8c0] channel element 2.13 is not allocated&#xA;Error while decoding stream #0:0: Invalid data found when processing input&#xA;[aac @ 000001fc5a9ce8c0] channel element 3.8 is not allocated&#xA;Error while decoding stream #0:0: Invalid data found when processing input&#xA;[aac @ 000001fc5a9ce8c0] Reserved bit set.&#xA;[aac @ 000001fc5a9ce8c0] Prediction is not allowed in AAC-LC.&#xA;Error while decoding stream #0:0: Invalid data found when processing input&#xA;[aac @ 000001fc5a9ce8c0] channel element 3.9 is not allocated&#xA;Error while decoding stream #0:0: Invalid data found when processing input&#xA;[aac @ 000001fc5a9ce8c0] Number of bands (50) exceeds limit (49).&#xA;Error while decoding stream #0:0: Invalid data found when processing input&#xA;[aac @ 000001fc5a9ce8c0] Sample rate index in program config element does not match the sample rate index configured by the container.&#xA;[aac @ 000001fc5a9ce8c0] Inconsistent channel configuration.&#xA;[aac @ 000001fc5a9ce8c0] get_buffer() failed&#xA;Error while decoding stream #0:0: Invalid argument&#xA;[aac @ 000001fc5a9ce8c0] Reserved bit set.&#xA;[aac @ 000001fc5a9ce8c0] Number of bands (17) exceeds limit (13).&#xA;Error while decoding stream #0:0: Invalid data found when processing input&#xA;[aac @ 000001fc5a9ce8c0] Sample rate index in program config element does not match the sample rate index configured by the container.&#xA;[aac @ 000001fc5a9ce8c0] Inconsistent channel configuration.&#xA;[aac @ 000001fc5a9ce8c0] get_buffer() failed&#xA;Error while decoding stream #0:0: Invalid argument&#xA;Error while decoding stream #0:1: Invalid data found when processing input&#xA;[h264 @ 000001fc5a3be480] Invalid NAL unit size (-296706614 > 48346).&#xA;[h264 @ 000001fc5a3be480] Error splitting the input into NAL units.&#xA;Error while decoding stream #0:1: Invalid data found when processing input&#xA;[h264 @ 000001fc5a3e4540] Invalid NAL unit size (-1419758286 > 23497).&#xA;[h264 @ 000001fc5a3e4540] Error splitting the input into NAL units.&#xA;Error while decoding stream #0:1: Invalid data found when processing input&#xA;[h264 @ 000001fc5ad06500] Invalid NAL unit size (86578229 > 53255).&#xA;[h264 @ 000001fc5ad06500] Error splitting the input into NAL units.&#xA;</pre>

    &#xA;

  • FFMPEG - Multi Track, Multi Channel file to discrete mono files

    26 novembre 2020, par vade

    I have files which are multi track, and multi channel (ie, track 1 may be 5.1, track 2 may be stereo, track 3 may be stereo etc)

    &#xA;

    I am looking to output every channel from every track into its own 'unrolled' discrete mono file.

    &#xA;

    example media :

    &#xA;

    ffprobe version 4.3.1-0york0~18.04 Copyright (c) 2007-2020 the FFmpeg developers&#xA;  built with gcc 7 (Ubuntu 7.5.0-3ubuntu1~18.04)&#xA;  configuration: --prefix=/usr --extra-version=&#x27;0york0~18.04&#x27; --toolchain=hardened --libdir=/usr/lib/x86_64-linux-gnu --incdir=/usr/include/x86_64-linux-gnu --arch=amd64 --enable-gpl --disable-stripping --enable-avresample --disable-filter=resample --enable-gnutls --enable-ladspa --enable-libaom --enable-libass --enable-libbluray --enable-libbs2b --enable-libcaca --enable-libcdio --enable-libcodec2 --enable-libflite --enable-libfontconfig --enable-libfreetype --enable-libfribidi --enable-libgme --enable-libgsm --enable-libjack --enable-libmp3lame --enable-libmysofa --enable-libopenjpeg --enable-libopenmpt --enable-libopus --enable-libpulse --enable-librabbitmq --enable-librsvg --enable-librubberband --enable-libshine --enable-libsnappy --enable-libsoxr --enable-libspeex --enable-libsrt --enable-libssh --enable-libtheora --enable-libtwolame --enable-libvidstab --enable-libvorbis --enable-libvpx --enable-libwavpack --enable-libwebp --enable-libx265 --enable-libxml2 --enable-libxvid --enable-libzmq --enable-libzvbi --enable-lv2 --enable-omx --enable-openal --enable-opencl --enable-opengl --enable-sdl2 --enable-libzimg --enable-pocketsphinx --enable-libdc1394 --enable-libdrm --enable-libiec61883 --enable-chromaprint --enable-frei0r --enable-libx264 --enable-shared&#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;[mxf @ 0x55d3e7fc2680] wrapping of stream 0 is unknown&#xA;[jpeg2000 @ 0x55d3e805ce00] End mismatch 1&#xA;    Last message repeated 1 times&#xA;Input #0, mxf, from &#x27;redacted.mxf&#x27;:&#xA;  Metadata:&#xA;    operational_pattern_ul: 060e2b34.04010101.0d010201.01010900&#xA;    modification_date: 2019-10-03T09:58:16.368000Z&#xA;    uid             : f6267ae2-680e-4357-9b1d-c77c045d3cd7&#xA;    generation_uid  : e7e6f5a1-6f15-4df5-aea8-a41f3ef535d6&#xA;    company_name    : redacted&#xA;    product_name    : redacted&#xA;    product_version : 11.6.1.5.301404&#xA;    product_uid     : 84ae5ffc-4710-11dd-a6fe-0010c629ec73&#xA;    application_platform: 4KICR1&#xA;    material_package_umid: 0x060A2B340101010501010D2013000000BE3608F3135E48AD99E4340643E47F22&#xA;    timecode        : 00:59:20:00&#xA;  Duration: 00:26:16.07, start: 0.000000, bitrate: 139194 kb/s&#xA;    Stream #0:0: Video: jpeg2000, yuv422p10le(progressive), 1920x1080, SAR 1:1 DAR 16:9, 23.98 tbr, 23.98 tbn, 23.98 tbc&#xA;    Metadata:&#xA;      file_package_umid: 0x060A2B340101010501010D201300000091A43E578B86490698045924FA9EECC5&#xA;      track_name      : Picture&#xA;    Stream #0:1: Audio: pcm_s24le, 48000 Hz, 6 channels, s32 (24 bit), 6912 kb/s&#xA;    Metadata:&#xA;      file_package_umid: 0x060A2B340101010501010D201300000091A43E578B86490698045924FA9EECC5&#xA;      track_name      : Sound&#xA;    Stream #0:2: Audio: pcm_s24le, 48000 Hz, 2 channels, s32 (24 bit), 2304 kb/s&#xA;    Metadata:&#xA;      file_package_umid: 0x060A2B340101010501010D201300000091A43E578B86490698045924FA9EECC5&#xA;      track_name      : Sound&#xA;    Stream #0:3: Audio: pcm_s24le, 48000 Hz, 2 channels, s32 (24 bit), 2304 kb/s&#xA;    Metadata:&#xA;      file_package_umid: 0x060A2B340101010501010D201300000091A43E578B86490698045924FA9EECC5&#xA;      track_name      : Sound&#xA;    Stream #0:4: Audio: pcm_s24le, 48000 Hz, 2 channels, s32 (24 bit), 2304 kb/s&#xA;    Metadata:&#xA;      file_package_umid: 0x060A2B340101010501010D201300000091A43E578B86490698045924FA9EECC5&#xA;      track_name      : Sound&#xA;    Stream #0:5: Data: none&#xA;    Metadata:&#xA;      file_package_umid: 0x060A2B340101010501010D201300000091A43E578B86490698045924FA9EECC5&#xA;      track_name      : Auxiliary Data&#xA;      data_type       : vbi_vanc_smpte_436M&#xA;Unsupported codec with id 0 for input stream 5&#xA;

    &#xA;

    These files are vendor qualified masters, and the track / channel combinations vary between vendors, so some might be stereo, 5.1, 7.1 order, some might be all discrete mono already, some might be discrete stereo, 5.1, and mono tracks. Its all a mix. So im looking for some general strategy that gracefully handles all channels from all tracks.

    &#xA;

    Now I have seen various strategies documented to handle discretizing audio via ffmpeg docs, but none of them seem to show how to target different channels from different tracks. Im sure its a pebkac error, but I'd love some guidance.

    &#xA;

    I have tried both a map_channel approach as well as a -filtercomplex channelsplit approach.

    &#xA;

    ffmpeg -i redacted.mxf -ss 60 \&#xA;-map_channel 0.1.0 -t 10 track_1_0.wav \&#xA;-map_channel 0.1.1 -t 10 track_1_1.wav \&#xA;-map_channel 0.1.2 -t 10 track_1_2.wav \&#xA;-map_channel 0.1.3 -t 10 track_1_3.wav \&#xA;-map_channel 0.1.4 -t 10 track_1_4.wav \&#xA;-map_channel 0.1.5 -t 10 track_1_5.wav \&#xA;-map_channel 0.2.0 -t 10 track_2_0.wav \&#xA;-map_channel 0.2.1 -t 10 track_2_1.wav \&#xA;-map_channel 0.3.0 -t 10 track_3_0.wav \&#xA;-map_channel 0.3.1 -t 10 track_3_1.wav \&#xA;-map_channel 0.4.0 -t 10 track_4_0.wav \&#xA;-map_channel 0.4.1 -t 10 track_4_1.wav &#xA;

    &#xA;

    However, the output files are not all mono, some are marked as 5.1. I dont believe they are inheriting a sane / correct channel layout (mono) - but the output files that are marked 5.1 are nonsensical, as they are all sourced from stereo tracks. ie track_2_0.wav track_2_1.wav, track_3_0.wav, track_3_1.wav, track_4_0.wav, track_4_1.wav. Which seems odd. Track 1_0 from the above command outputs a sane media info :

    &#xA;

    File size                                : 938 KiB&#xA;Duration                                 : 10s 0ms&#xA;Overall bit rate mode                    : Constant&#xA;Overall bit rate                         : 768 Kbps&#xA;Writing application                      : Lavf58.45.100&#xA;&#xA;Audio&#xA;Format                                   : PCM&#xA;Format settings                          : Little / Signed&#xA;Codec ID                                 : 1&#xA;Duration                                 : 10s 0ms&#xA;Bit rate mode                            : Constant&#xA;Bit rate                                 : 768 Kbps&#xA;Channel(s)                               : 1 channel&#xA;Sampling rate                            : 48.0 KHz&#xA;Bit depth                                : 16 bits&#xA;Stream size                              : 938 KiB (100%)&#xA;&#xA;

    &#xA;

    However the second and 3rd track have the wrong channel layout and an unexpected codec id :

    &#xA;

    Format                                   : Wave&#xA;File size                                : 5.49 MiB&#xA;Duration                                 : 10s 0ms&#xA;Overall bit rate mode                    : Constant&#xA;Overall bit rate                         : 4 608 Kbps&#xA;Writing application                      : Lavf58.45.100&#xA;&#xA;Audio&#xA;Format                                   : PCM&#xA;Format settings                          : Little / Signed&#xA;Codec ID                                 : 00000001-0000-0010-8000-00AA00389B71&#xA;Duration                                 : 10s 0ms&#xA;Bit rate mode                            : Constant&#xA;Bit rate                                 : 4 608 Kbps&#xA;Channel(s)                               : 6 channels&#xA;Channel layout                           : L R C LFE Lb Rb&#xA;Sampling rate                            : 48.0 KHz&#xA;Bit depth                                : 16 bits&#xA;Stream size                              : 5.49 MiB (100%)&#xA;&#xA;

    &#xA;

    Additionally re : map_channel, there are some docs that cast doubt that its the right approach :

    &#xA;

    &#xA;

    Note that currently each output stream can only contain channels from a single input stream ; you can’t for example use "-map_channel" to pick multiple input audio channels contained in different streams (from the same or different files) and merge them into a single output stream. It is therefore not currently possible, for example, to turn two separate mono streams into a single stereo stream. However splitting a stereo stream into two single channel mono streams is possible.

    &#xA;

    &#xA;

    Using filter complex, the docs/bug tracker have an example of discretizing 5.1 and marking mono. I can target the tracks I want, and get a valid filter chain as seen in debug log reporting, however I only get audio for the 1st track :

    &#xA;

    ffmpeg -y -v 40 -i redacted.mxf -ss 60 \&#xA;    -disposition:a default \&#xA;    -filter_complex \&#xA;    "[0:a:0]channelsplit=channel_layout=5.1[c1][c2][c3][c4][c5][c6],\&#xA;    [c1]aformat=channel_layouts=mono[c1],\&#xA;    [c2]aformat=channel_layouts=mono[c2],\&#xA;    [c3]aformat=channel_layouts=mono[c3],\&#xA;    [c4]aformat=channel_layouts=mono[c4],\&#xA;    [c5]aformat=channel_layouts=mono[c5],\&#xA;    [c6]aformat=channel_layouts=mono[c6],\&#xA;    [0:a:1]channelsplit=channel_layout=stereo[c7][c8],\&#xA;    [c7]aformat=channel_layouts=mono[c7],\&#xA;    [c8]aformat=channel_layouts=mono[c8],\&#xA;    [0:a:2]channelsplit=channel_layout=stereo[c9][c10],\&#xA;    [c9]aformat=channel_layouts=mono[c9],\&#xA;    [c10]aformat=channel_layouts=mono[c10],\&#xA;    [0:a:3]channelsplit=channel_layout=stereo[c11][c12],\&#xA;    [c11]aformat=channel_layouts=mono[c11],\&#xA;    [c12]aformat=channel_layouts=mono[c12]"\&#xA;     -map  "[c1]" -t 10 1.wav\&#xA;     -map  "[c2]" -t 10 2.wav\&#xA;     -map  "[c3]" -t 10 3.wav\&#xA;     -map  "[c4]" -t 10 4.wav\&#xA;     -map  "[c5]" -t 10 5.wav\&#xA;     -map  "[c6]" -t 10 6.wav\&#xA;     -map  "[c7]" -t 10 7.wav\&#xA;     -map  "[c8]" -t 10 8.wav\&#xA;     -map  "[c9]" -t 10 9.wav\&#xA;     -map  "[c10]" -t 10 10.wav\&#xA;     -map  "[c11]" -t 10 11.wav\&#xA;     -map  "[c12]" -t 10 12.wav&#xA;

    &#xA;

    TL/DR ;

    &#xA;

    In short, how does one export every channel of every track as a discrete mono audio track (regardless of the channel layouts ?)

    &#xA;

    Thank you !

    &#xA;