Recherche avancée

Médias (91)

Autres articles (88)

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

  • 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

  • Support de tous types de médias

    10 avril 2011

    Contrairement à beaucoup de logiciels et autres plate-formes modernes de partage de documents, MediaSPIP a l’ambition de gérer un maximum de formats de documents différents qu’ils soient de type : images (png, gif, jpg, bmp et autres...) ; audio (MP3, Ogg, Wav et autres...) ; vidéo (Avi, MP4, Ogv, mpg, mov, wmv et autres...) ; contenu textuel, code ou autres (open office, microsoft office (tableur, présentation), web (html, css), LaTeX, Google Earth) (...)

Sur d’autres sites (7568)

  • Fragmented MP4 not playing in ffplay/QuickTime/Safari, but in VLC

    6 août 2020, par Stack64

    I encoded a fMP4-Video (HEVC) in Swift using VideoToolbox and CoreMedia. The resulting fragmented MP4 is only playing in VLC.

    


    The library I am using to write the fMP4 is an HEVC-adapted version of this GitHub-Project : https://github.com/krad/morsel

    


    Process of encoding and writing :

    


      

    1. VideoToolbox : Encoding SampleBuffer from the camera (VTCompressionSession, as described in WWDC 2014 Session 513)
    2. 


    3. Using CoreMedia-Functions (e.g. CMVideoFormatDescriptionGetHEVCParameterSetAtIndex, CMVideoFormatDescriptionGetDimensions) to get the encoded streams metadata. I am writing the content of CMFormatDescriptionGetExtension(description, extensionKey: "SampleDescriptionExtensionAtoms" as CFString)["hvcC"] directly to the hvcC box. This box is obviously written correctly, when I alter one bit of the box of the mp4, QuickTime throws an error.
    4. 


    5. I am appending the sample buffer data to the morsel-library, which manages fragmentation and creates the moof and mdat atoms.
    6. 


    


    The result file is playable in VLC, when I just let the playback "run" without doing anything. When I scroll the time in VLC, VLC crashes and the playback stops.

    


    It is also sort of "playable" in Safari and QuickTime (no error message shown, the playback window opens and the correct length of the file is shown, I can even change to playback time / play/pause, but there is no video shown. The window remains empty. And that is the problem I have. I need to get an fMP4 running in Safari and QuickTime.

    


    The file is not playing at all in ffplay (same problem when converting with ffmpeg). The line where the playback time is shown remains nan M-V:    nan fd=   0 aq=    0KB vq=    0KB sq=    0B f=0/0 , there are no error messages. The playback just does not start.
When playing the file with ffplay, this is the output :

    


    ffplay version 4.3 Copyright (c) 2003-2020 the FFmpeg developers
  built with Apple clang version 11.0.3 (clang-1103.0.32.62)
  configuration: --prefix=/usr/local/Cellar/ffmpeg/4.3_2 --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-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 --disable-libjack --disable-indev=jack
  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
  libavresample   4.  0.  0 /  4.  0.  0
  libswscale      5.  7.100 /  5.  7.100
  libswresample   3.  7.100 /  3.  7.100
  libpostproc    55.  7.100 / 55.  7.100
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'test.mp4':
  Metadata:
    major_brand     : mp42
    minor_version   : 1
    compatible_brands: mp41mp42isomhlsf
    creation_time   : 2020-08-03T20:41:08.000000Z
  Duration: N/A, bitrate: N/A
    Stream #0:0(und): Video: hevc (Main) (hvc1 / 0x31637668), yuv420p(tv), 1920x1080, SAR 1:1 DAR 16:9, 1000000000.00 tbr, 1000000000.00 tbn, 1000000000.00 tbc (default)
    Metadata:
      creation_time   : 2020-08-03T20:41:08.000000Z
      handler_name    : video
    nan M-V:    nan fd=   0 aq=    0KB vq=    0KB sq=    0B f=0/0 


    


    My file has this structure :

    


    ftyp
moov
    mvhd
    trak
        tkhd
        mdia
            mdhd
            hdlr
            minf
                vmhd
                dinf
                    dref
                stbl
                    stsd
                    stts
                    stsc
                    stsz
                    stco
    mvex
        trex
moof-(1)
mdat
moof-(2)
mdat 
...


    


    The result file I want to create should be like the fMP4 served within this HLS playlist : (Example : https://developer.apple.com/streaming/examples/advanced-stream-hevc.html, Playlist : https://devstreaming-cdn.apple.com/videos/streaming/examples/bipbop_adv_example_hevc/master.m3u8)
This file has the following structure :

    


    ftyp
moov
    mvhd
    trak
        tkhd
        mdia
            mdhd
            hdlr
            minf
                vmhd
                dinf
                    dref
                stbl
                    stsd
                    stts
                    stsc
                    stsz
                    stco
    trak (same structure as above)
    mvex
        trex
moof-(1)
mdat
moof-(2)
mdat 
...


    


    This file from Apple plays perfectly in ffmpeg and QuickTime/Safari. Except for the second trak atom, it has the same structure.

    


    The "good" file is : https://devstreaming-cdn.apple.com/videos/streaming/examples/bipbop_adv_example_hevc/v14/main.mp4 (It is intended for use in a HLS Playlist I've downloaded it with curl)

    


    The "bad" file is : https://www.transfernow.net/ddl/fmp4_bad (link should work, tested it just now :) ). The video shows a slowly rotating sheet of paper.

    


    Any suggestions what the problem with my file is ?
Thanks in advance !

    


  • Can't play mp4 video using html5 video tag

    7 août 2020, par John Doe

    I am trying to present an mp4 video (h264) using html5 :

    


    <video width="320" controls="controls">&#xA;            <source src="/home/nabil/FWork/hikvision/ch01_00000100068000101.mp4" type="video/mp4">&#xA;</source></video>&#xA;

    &#xA;

    analyzing video codec with ffmpeg gives the following :

    &#xA;

    ffprobe ch01_00000100068000101.mp4 &#xA;ffprobe version 2.8.17-0ubuntu0.1 Copyright (c) 2007-2020 the FFmpeg developers&#xA;  built with gcc 5.4.0 (Ubuntu 5.4.0-6ubuntu1~16.04.12) 20160609&#xA;  configuration: --prefix=/usr --extra-version=0ubuntu0.1 --build-suffix=-ffmpeg --toolchain=hardened --libdir=/usr/lib/x86_64-linux-gnu --incdir=/usr/include/x86_64-linux-gnu --cc=cc --cxx=g&#x2B;&#x2B; --enable-gpl --enable-shared --disable-stripping --disable-decoder=libopenjpeg --disable-decoder=libschroedinger --enable-avresample --enable-avisynth --enable-gnutls --enable-ladspa --enable-libass --enable-libbluray --enable-libbs2b --enable-libcaca --enable-libcdio --enable-libflite --enable-libfontconfig --enable-libfreetype --enable-libfribidi --enable-libgme --enable-libgsm --enable-libmodplug --enable-libmp3lame --enable-libopenjpeg --enable-libopus --enable-libpulse --enable-librtmp --enable-libschroedinger --enable-libshine --enable-libsnappy --enable-libsoxr --enable-libspeex --enable-libssh --enable-libtheora --enable-libtwolame --enable-libvorbis --enable-libvpx --enable-libwavpack --enable-libwebp --enable-libx265 --enable-libxvid --enable-libzvbi --enable-openal --enable-opengl --enable-x11grab --enable-libdc1394 --enable-libiec61883 --enable-libzmq --enable-frei0r --enable-libx264 --enable-libopencv&#xA;  libavutil      54. 31.100 / 54. 31.100&#xA;  libavcodec     56. 60.100 / 56. 60.100&#xA;  libavformat    56. 40.101 / 56. 40.101&#xA;  libavdevice    56.  4.100 / 56.  4.100&#xA;  libavfilter     5. 40.101 /  5. 40.101&#xA;  libavresample   2.  1.  0 /  2.  1.  0&#xA;  libswscale      3.  1.101 /  3.  1.101&#xA;  libswresample   1.  2.101 /  1.  2.101&#xA;  libpostproc    53.  3.100 / 53.  3.100&#xA;Invalid UE golomb code&#xA;    Last message repeated 3 times&#xA;Input #0, mpeg, from &#x27;ch01_00000100068000101.mp4&#x27;:&#xA;  Duration: 00:09:27.33, start: 35024.106667, bitrate: 507 kb/s&#xA;    Stream #0:0[0x1e0]: Video: h264 (Baseline), yuv420p, 1280x720, 10 fps, 10 tbr, 90k tbn, 20 tbc&#xA;

    &#xA;

    a possible relevant detail is that playing the video using ubuntu's default video reader (ffmpeg in the background) doesn't show any video controls

    &#xA;

  • record long videos from multiple webcams with FFmpeg

    4 août 2020, par Nagamoto

    I am using

    &#xA;

    ffmpeg -f dshow -vcodec mjpeg -t 6000 -rtbufsize 2.14748e&#x2B;09  -video_size 1920x1080 -framerate 60 -i video=camID-0 -f dshow -vcodec mjpeg -t 6000 -rtbufsize 2.14748e&#x2B;09  -video_size 1920x1080 -framerate 60 -i video=camID-1 -map 0  -c:v libx264 -preset ultrafast -y -r 30 fileName_0.mp4 -map 1  -c:v libx264 -preset ultrafast -y -r 30 fileName_1.mp4

    &#xA;

    to record video from two webcams. Since the output will be compressed further down the line I am mostly concerned with quality and not losing frames. But after about 2min the real-time buffer is full :

    &#xA;

    [dshow @ 00000221716edf80] real-time buffer [@device_pnp_\\?\usb#vid_15aa&amp;pid_1555&amp;mi_00#6&amp;b8e4142&amp;0&amp;0000#{65e8773d-8f56-11d0-a3b9-00a0c9223196}\global] [video input] too full or near too full (75% of size: 2147480000 [rtbufsize parameter])! frame dropped!&#xA;

    &#xA;

    On the other hand capturing uncompressed video results in huge filesizes (1.3 TB for an hour) but encoding with the settings above the computer can't keep up.&#xA;Currently the webcams capture 60fps- which is not a must but I can't set them to anything lower.

    &#xA;

    How can I record long video (max 1.5h) with good quality while keeping file-sizes manageable ?

    &#xA;

    ffmpeg -f dshow -list_options true -i video="3.0 USB Camera"&#xA;&#xA;&#xA;&#xA;ffmpeg version 4.3 Copyright (c) 2000-2020 the FFmpeg developers&#xA;  built with gcc 9.3.1 (GCC) 20200621&#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 --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. 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;  libswscale      5.  7.100 /  5.  7.100&#xA;  libswresample   3.  7.100 /  3.  7.100&#xA;  libpostproc    55.  7.100 / 55.  7.100&#xA;[dshow @ 000001f32953c380] DirectShow video device options (from video devices)&#xA;[dshow @ 000001f32953c380]  Pin "Capture" (alternative pin name "0")&#xA;[dshow @ 000001f32953c380]   vcodec=mjpeg  min s=1920x1080 fps=60.0002 max s=1920x1080 fps=60.0002&#xA;[dshow @ 000001f32953c380]   vcodec=mjpeg  min s=1920x1080 fps=60.0002 max s=1920x1080 fps=60.0002&#xA;[dshow @ 000001f32953c380]   vcodec=mjpeg  min s=1280x720 fps=60.0002 max s=1280x720 fps=60.0002&#xA;[dshow @ 000001f32953c380]   vcodec=mjpeg  min s=1280x720 fps=60.0002 max s=1280x720 fps=60.0002&#xA;[dshow @ 000001f32953c380]   vcodec=mjpeg  min s=640x480 fps=60.0002 max s=640x480 fps=60.0002&#xA;[dshow @ 000001f32953c380]   vcodec=mjpeg  min s=640x480 fps=60.0002 max s=640x480 fps=60.0002&#xA;[dshow @ 000001f32953c380]   pixel_format=yuyv422  min s=1920x1080 fps=60.0002 max s=1920x1080 fps=60.0002&#xA;[dshow @ 000001f32953c380]   pixel_format=yuyv422  min s=1920x1080 fps=60.0002 max s=1920x1080 fps=60.0002&#xA;[dshow @ 000001f32953c380]   pixel_format=yuyv422  min s=1280x720 fps=60.0002 max s=1280x720 fps=60.0002&#xA;[dshow @ 000001f32953c380]   pixel_format=yuyv422  min s=1280x720 fps=60.0002 max s=1280x720 fps=60.0002&#xA;[dshow @ 000001f32953c380]   pixel_format=yuyv422  min s=640x480 fps=60.0002 max s=640x480 fps=60.0002&#xA;[dshow @ 000001f32953c380]   pixel_format=yuyv422  min s=640x480 fps=60.0002 max s=640x480 fps=60.0002&#xA;video=3.0 USB Camera: Immediate exit requested&#xA;

    &#xA;