
Recherche avancée
Médias (1)
-
GetID3 - Bloc informations de fichiers
9 avril 2013, par
Mis à jour : Mai 2013
Langue : français
Type : Image
Autres articles (62)
-
Des sites réalisés avec MediaSPIP
2 mai 2011, parCette page présente quelques-uns des sites fonctionnant sous MediaSPIP.
Vous pouvez bien entendu ajouter le votre grâce au formulaire en bas de page. -
Support audio et vidéo HTML5
10 avril 2011MediaSPIP utilise les balises HTML5 video et audio pour la lecture de documents multimedia en profitant des dernières innovations du W3C supportées par les navigateurs modernes.
Pour les navigateurs plus anciens, le lecteur flash Flowplayer est utilisé.
Le lecteur HTML5 utilisé a été spécifiquement créé pour MediaSPIP : il est complètement modifiable graphiquement pour correspondre à un thème choisi.
Ces technologies permettent de distribuer vidéo et son à la fois sur des ordinateurs conventionnels (...) -
HTML5 audio and video support
13 avril 2011, parMediaSPIP 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 (...)
Sur d’autres sites (7870)
-
record long videos from multiple webcams with FFmpeg
4 août 2020, par NagamotoI am using


ffmpeg -f dshow -vcodec mjpeg -t 6000 -rtbufsize 2.14748e+09 -video_size 1920x1080 -framerate 60 -i video=camID-0 -f dshow -vcodec mjpeg -t 6000 -rtbufsize 2.14748e+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


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 :


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



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.
Currently the webcams capture 60fps- which is not a must but I can't set them to anything lower.


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


ffmpeg -f dshow -list_options true -i video="3.0 USB Camera"



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



-
Can't play mp4 video using html5 video tag
7 août 2020, par John DoeI am trying to present an mp4 video (h264) using html5 :


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



analyzing video codec with ffmpeg gives the following :


ffprobe ch01_00000100068000101.mp4 
ffprobe version 2.8.17-0ubuntu0.1 Copyright (c) 2007-2020 the FFmpeg developers
 built with gcc 5.4.0 (Ubuntu 5.4.0-6ubuntu1~16.04.12) 20160609
 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++ --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
 libavutil 54. 31.100 / 54. 31.100
 libavcodec 56. 60.100 / 56. 60.100
 libavformat 56. 40.101 / 56. 40.101
 libavdevice 56. 4.100 / 56. 4.100
 libavfilter 5. 40.101 / 5. 40.101
 libavresample 2. 1. 0 / 2. 1. 0
 libswscale 3. 1.101 / 3. 1.101
 libswresample 1. 2.101 / 1. 2.101
 libpostproc 53. 3.100 / 53. 3.100
Invalid UE golomb code
 Last message repeated 3 times
Input #0, mpeg, from 'ch01_00000100068000101.mp4':
 Duration: 00:09:27.33, start: 35024.106667, bitrate: 507 kb/s
 Stream #0:0[0x1e0]: Video: h264 (Baseline), yuv420p, 1280x720, 10 fps, 10 tbr, 90k tbn, 20 tbc



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


-
Fragmented MP4 not playing in ffplay/QuickTime/Safari, but in VLC
6 août 2020, par Stack64I 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 :


- 

- VideoToolbox : Encoding
SampleBuffer
from the camera (VTCompressionSession
, as described in WWDC 2014 Session 513) - Using
CoreMedia
-Functions (e.g.CMVideoFormatDescriptionGetHEVCParameterSetAtIndex
,CMVideoFormatDescriptionGetDimensions
) to get the encoded streams metadata. I am writing the content ofCMFormatDescriptionGetExtension(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. - I am appending the sample buffer data to the morsel-library, which manages fragmentation and creates the moof and mdat atoms.








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 !


- VideoToolbox : Encoding