Recherche avancée

Médias (91)

Autres articles (33)

  • La sauvegarde automatique de canaux SPIP

    1er avril 2010, par

    Dans le cadre de la mise en place d’une plateforme ouverte, il est important pour les hébergeurs de pouvoir disposer de sauvegardes assez régulières pour parer à tout problème éventuel.
    Pour réaliser cette tâche on se base sur deux plugins SPIP : Saveauto qui permet une sauvegarde régulière de la base de donnée sous la forme d’un dump mysql (utilisable dans phpmyadmin) mes_fichiers_2 qui permet de réaliser une archive au format zip des données importantes du site (les documents, les éléments (...)

  • HTML5 audio and video support

    13 avril 2011, par

    MediaSPIP uses HTML5 video and audio tags to play multimedia files, taking advantage of the latest W3C innovations supported by modern browsers.
    The MediaSPIP player used has been created specifically for MediaSPIP and can be easily adapted to fit in with a specific theme.
    For older browsers the Flowplayer flash fallback is used.
    MediaSPIP allows for media playback on major mobile platforms with the above (...)

  • De l’upload à la vidéo finale [version standalone]

    31 janvier 2010, par

    Le chemin d’un document audio ou vidéo dans SPIPMotion est divisé en trois étapes distinctes.
    Upload et récupération d’informations de la vidéo source
    Dans un premier temps, il est nécessaire de créer un article SPIP et de lui joindre le document vidéo "source".
    Au moment où ce document est joint à l’article, deux actions supplémentaires au comportement normal sont exécutées : La récupération des informations techniques des flux audio et video du fichier ; La génération d’une vignette : extraction d’une (...)

Sur d’autres sites (5442)

  • AVI compression with ffmpeg while maintaining alpha channel, to use in Adobe Premiere

    12 décembre 2020, par Dsrts

    I am a novice when it comes to handling video conversion/encoding in general, but have spent a few days trying to figure out if ffmpeg, or any other method out there, is able to compress an .avi that has rgb+a. I have been able to get a few files that appear to work when played in VLC, but they wont load into Adobe Premiere to verify that alpha was maintained, and I assume it is a codec issue and/or a pixel format issue, but so far I haven't been able to pinpoint it.

    


    Also, I'm not sure if it's advisable to compress an .avi at all with alpha since it could lead to quality issues from compression. Some loss of quality is ok if it means reducing file size.

    


    My goal is to convert an avi file to a smaller video file, that isn't multiple GB in size. Currently I have 8 sec transparent lower thirds file that is about 2GB in size. Simply adjusting bitrate has not done it, as that seems to wipe out the alpha channel and I end up with RGB with a white background. I have tried using a PNG codec, with various different pixel formats. This yielded files that would open in VLC, but not Adobe Premiere. I suspect that this has something to do with the codec, though as to what it is, I have no idea.

    


    Right now, this seems like it may just not be possible. Here are some examples of what I have tried :

    


    ffmpeg -i "input.avi" -map 0 -c:v png -c:a copy "Compressed.avi"

    


    —this just creates a file that opens in vlc, but not premiere

    


    ffmpeg.exe -i "input.avi" -vcodec png -b:v 64k -pix_fmt rgb32 "Compressed.avi"

    


    —this does the same thing as above, I tried every pixel format on this list with no success.

    


    ffmpeg.exe -i "input.avi" -b:v 64k -pix_fmt bgr32 "Compressed.avi"

    


    —this just results in an avi with a white background, kills alpha.

    


    That is the closest I have come. The bitrate value is likely arbitrary, as I have also tried with and without bitrate modification. I don't know if there is a way to get Premiere to recognize the files that did open in VLC with the PNG codec, or if there is something I am missing, OR if this is just entirely impossible. The output doesn't need to be .avi either, so long as it will open in Premiere.

    


    —
Edit : Requested in the comments, output from ffmpeg -i input.avi

    


    ffmpeg version 4.3.1-2020-11-19-essentials_build-www.gyan.dev Copyright (c) 2000-2020 the FFmpeg developers
  built with gcc 10.2.0 (Rev5, Built by MSYS2 project)
  configuration: --enable-gpl --enable-version3 --enable-static --disable-w32threads --disable-autodetect --enable-fontconfig --enable-iconv --enable-gnutls --enable-libxml2 --enable-gmp --enable-lzma --enable-zlib --enable-libsrt --enable-libssh --enable-libzmq --enable-avisynth --enable-sdl2 --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxvid --enable-libaom --enable-libopenjpeg --enable-libvpx --enable-libass --enable-libfreetype --enable-libfribidi --enable-libvidstab --enable-libvmaf --enable-libzimg --enable-amf --enable-cuda-llvm --enable-cuvid --enable-ffnvcodec --enable-nvdec --enable-nvenc --enable-d3d11va --enable-dxva2 --enable-libmfx --enable-libgme --enable-libopenmpt --enable-libopencore-amrwb --enable-libmp3lame --enable-libtheora --enable-libvo-amrwbenc --enable-libgsm --enable-libopencore-amrnb --enable-libopus --enable-libspeex --enable-libvorbis --enable-librubberband
  libavutil      56. 51.100 / 56. 51.100
  libavcodec     58. 91.100 / 58. 91.100
  libavformat    58. 45.100 / 58. 45.100
  libavdevice    58. 10.100 / 58. 10.100
  libavfilter     7. 85.100 /  7. 85.100
  libswscale      5.  7.100 /  5.  7.100
  libswresample   3.  7.100 /  3.  7.100
  libpostproc    55.  7.100 / 55.  7.100
Input #0, avi, from 'input.avi':
  Metadata:
    date            : 2020-12-09T20:27:57.080928
  Duration: 00:00:10.00, start: 0.000000, bitrate: 1990700 kb/s
    Stream #0:0: Video: rawvideo, bgra, 1920x1080, 1997313 kb/s, 30 fps, 30 tbr, 30 tbn, 30 tbc
At least one output file must be specified


    


    — Edit 2 :
Tried this from the comment and it results in a .mov with preserved alpha but it picks up the white pixel values from text drop shadows, resulting in an outer glow effect instead :

    


    ffmpeg -i "input.avi" -map 0 -pix_fmt rgba -c:v png -c:a copy "compressed.mov"

    


    I also tried the following, and I get dropped frames in addition to similar transparency issues in the drop shadow :

    


    ffmpeg -i "input.avi" -map 0 -pix_fmt rgba -c:v qtrle -c:a copy "compressed.mov"

    


  • FFPMEG Adding Watermark Is Producing An Error

    19 janvier 2021, par Glen Elkins

    I have an mp4 video and i'm using FFMPEG on command line in php to add an image to the bottom right corner as watermark :

    


    shell_exec('ffmpeg -y -i ' . $videoPath . ' -i ' . $path . ' -filter_complex "overlay=x=(main_w-' . $logoWidth . ')-10:y=(main_h-' . $logoHeight . ')-10" ' . $videoPath);


    


    It overwrites the original video with the new one. The logo is added to the video but the video ends up being 0 seconds long (originally 1 minute) and i see this error when the command is run :

    


    


    [h264 @ 0x134e540] Invalid NAL unit size (20328 > 14044). [h264 @
0x134e540] Error splitting the input into NAL units. Error while
decoding stream #0:0 : Invalid data found when processing input

    


    


    I have absolutely no idea what this means. Here is the entire output of the command :

    


    ffmpeg version 3.4.8 Copyright (c) 2000-2020 the FFmpeg developers
  built with gcc 4.8.5 (GCC) 20150623 (Red Hat 4.8.5-39)
  configuration: --prefix=/usr --bindir=/usr/bin --datadir=/usr/share/ffmpeg --docdir=/usr/share/doc/ffmpeg --incdir=/usr/include/ffmpeg --libdir=/usr/lib64 --mandir=/usr/share/man --arch=x86_64 --optflags='-O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches -m64 -mtune=generic' --extra-ldflags='-Wl,-z,relro ' --extra-cflags=' ' --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libvo-amrwbenc --enable-version3 --enable-bzlib --disable-crystalhd --enable-fontconfig --enable-gcrypt --enable-gnutls --enable-ladspa --enable-libass --enable-libbluray --enable-libcdio --enable-libdrm --enable-indev=jack --enable-libfreetype --enable-libfribidi --enable-libgsm --enable-libmp3lame --enable-nvenc --enable-openal --enable-opencl --enable-opengl --enable-libopenjpeg --enable-libopus --disable-encoder=libopus --enable-libpulse --enable-librsvg --enable-libsoxr --enable-libspeex --enable-libtheora --enable-libvorbis --enable-libv4l2 --enable-libvidstab --enable-libvpx --enable-libx264 --enable-libx265 --enable-libxvid --enable-libzvbi --enable-avfilter --enable-avresample --enable-libmodplug --enable-postproc --enable-pthreads --disable-static --enable-shared --enable-gpl --disable-debug --disable-stripping --shlibdir=/usr/lib64 --enable-libmfx --enable-runtime-cpudetect
  libavutil      55. 78.100 / 55. 78.100
  libavcodec     57.107.100 / 57.107.100
  libavformat    57. 83.100 / 57. 83.100
  libavdevice    57. 10.100 / 57. 10.100
  libavfilter     6.107.100 /  6.107.100
  libavresample   3.  7.  0 /  3.  7.  0
  libswscale      4.  8.100 /  4.  8.100
  libswresample   2.  9.100 /  2.  9.100
  libpostproc    54.  7.100 / 54.  7.100
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from '/var/www/uploads/61d134cd2e3118b7cc81c5f8883e7bea_1611055207.mp4':
  Metadata:
    major_brand     : mp42
    minor_version   : 0
    compatible_brands: isommp42
    creation_time   : 2020-07-20T07:47:30.000000Z
  Duration: 00:01:04.25, start: 0.000000, bitrate: 743 kb/s
    Stream #0:0(und): Video: h264 (Main) (avc1 / 0x31637661), yuv420p(tv, bt709), 1280x720 [SAR 1:1 DAR 16:9], 612 kb/s, 25 fps, 25 tbr, 12800 tbn, 50 tbc (default)
    Metadata:
      creation_time   : 2020-07-20T07:47:30.000000Z
      handler_name    : ISO Media file produced by Google Inc. Created on: 07/20/2020.
    Stream #0:1(und): Audio: aac (LC) (mp4a / 0x6134706D), 44100 Hz, stereo, fltp, 127 kb/s (default)
    Metadata:
      creation_time   : 2020-07-20T07:47:30.000000Z
      handler_name    : ISO Media file produced by Google Inc. Created on: 07/20/2020.
Input #1, image2, from '/var/www/public/assets/images/new-logo-watermark.jpg':
  Duration: 00:00:00.04, start: 0.000000, bitrate: 3488 kb/s
    Stream #1:0: Video: mjpeg, yuvj444p(pc, bt470bg/unknown/unknown), 300x76, 25 tbr, 25 tbn, 25 tbc
Stream mapping:
  Stream #0:0 (h264) -> overlay:main (graph 0)
  Stream #1:0 (mjpeg) -> overlay:overlay (graph 0)
  overlay (graph 0) -> Stream #0:0 (libx264)
  Stream #0:1 -> #0:1 (aac (native) -> aac (native))
Press [q] to stop, [?] for help
[swscaler @ 0x1583440] deprecated pixel format used, make sure you did set range correctly
[libx264 @ 0xf2d5e0] using SAR=1/1
[libx264 @ 0xf2d5e0] using cpu capabilities: MMX2 SSE2Fast SSSE3 SSE4.2 AVX LZCNT
[libx264 @ 0xf2d5e0] profile High, level 3.1
[libx264 @ 0xf2d5e0] 264 - core 148 r2795 aaa9aa8 - 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=1 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 '/var/www/uploads/61d134cd2e3118b7cc81c5f8883e7bea_1611055207.mp4':
  Metadata:
    major_brand     : mp42
    minor_version   : 0
    compatible_brands: isommp42
    encoder         : Lavf57.83.100
    Stream #0:0: Video: h264 (libx264) (avc1 / 0x31637661), yuv420p(progressive), 1280x720 [SAR 1:1 DAR 16:9], q=-1--1, 25 fps, 12800 tbn, 25 tbc (default)
    Metadata:
      encoder         : Lavc57.107.100 libx264
    Side data:
      cpb: bitrate max/min/avg: 0/0/0 buffer size: 0 vbv_delay: -1
    Stream #0:1(und): Audio: aac (LC) (mp4a / 0x6134706D), 44100 Hz, stereo, fltp, 128 kb/s (default)
    Metadata:
      creation_time   : 2020-07-20T07:47:30.000000Z
      handler_name    : ISO Media file produced by Google Inc. Created on: 07/20/2020.
      encoder         : Lavc57.107.100 aac
[h264 @ 0xe71540] Invalid NAL unit size (20328 > 14044).
[h264 @ 0xe71540] Error splitting the input into NAL units.
Error while decoding stream #0:0: Invalid data found when processing input
frame=   18 fps=0.0 q=28.0 Lsize=      18kB time=00:00:00.60 bitrate= 251.5kbits/s speed=2.43x    
video:16kB audio:0kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 11.239533%
[libx264 @ 0xf2d5e0] frame I:1     Avg QP:10.60  size: 10740
[libx264 @ 0xf2d5e0] frame P:5     Avg QP:19.21  size:   495
[libx264 @ 0xf2d5e0] frame B:12    Avg QP:13.68  size:   242
[libx264 @ 0xf2d5e0] consecutive B-frames: 11.1%  0.0%  0.0% 88.9%
[libx264 @ 0xf2d5e0] mb I  I16..4: 92.7%  1.8%  5.5%
[libx264 @ 0xf2d5e0] mb P  I16..4:  0.5%  2.9%  0.2%  P16..4:  0.3%  0.1%  0.0%  0.0%  0.0%    skip:96.0%
[libx264 @ 0xf2d5e0] mb B  I16..4:  0.0%  0.0%  0.0%  B16..8:  0.4%  0.0%  0.0%  direct: 1.3%  skip:98.4%  L0:88.8% L1:11.2% BI: 0.0%
[libx264 @ 0xf2d5e0] 8x8 transform intra:13.8% inter:41.4%
[libx264 @ 0xf2d5e0] coded y,uvDC,uvAC intra: 4.9% 8.5% 6.0% inter: 0.0% 1.1% 0.4%
[libx264 @ 0xf2d5e0] i16 v,h,dc,p: 95%  3%  3%  0%
[libx264 @ 0xf2d5e0] i8 v,h,dc,ddl,ddr,vr,hd,vl,hu: 26%  2% 69%  0%  1%  1%  0%  1%  0%
[libx264 @ 0xf2d5e0] i4 v,h,dc,ddl,ddr,vr,hd,vl,hu: 41% 17% 20%  5%  4%  4%  4%  2%  3%
[libx264 @ 0xf2d5e0] i8c dc,h,v,p: 88%  3%  9%  0%
[libx264 @ 0xf2d5e0] Weighted P-Frames: Y:0.0% UV:0.0%
[libx264 @ 0xf2d5e0] ref P L0: 91.2%  7.3%  1.5%
[libx264 @ 0xf2d5e0] ref B L0: 95.6%  4.4%
[libx264 @ 0xf2d5e0] kb/s:179.10
[aac @ 0xf2ea80] Qavg: 65536.000


    


  • PHP FFMPEG AUDIO ARTWOARK METADATA

    12 novembre 2020, par Ali Skantmedia

    I am using laravel-ffmpeg Package and I want to put the image on the audio file.
My code is as follows :

    


                $thumbnailUrl = Storage::disk('thumbnail')->path($thumbnailPath);
            $audioUploaded->filters()->addMetadata([
                "title" => $song->title_en,
                "artist" => "firs artist",
                "album" => 'album name',
                "album_artist" => 'second artist',
                "track" => 2,
                "year" => 2020,
                "genre" => 'persian',
                "comment" => 'comment',
                "artwork" => $thumbnailUrl
            ]);


    


    But I make a mistake. How do I insert an image of an URL or file system disk into an audio file ?

    


    In documentation :

    


    $audio->filters()->addMetadata(["artwork" => "/path/to/image/file.jpg"]);