
Recherche avancée
Autres articles (49)
-
Emballe médias : à quoi cela sert ?
4 février 2011, parCe plugin vise à gérer des sites de mise en ligne de documents de tous types.
Il crée des "médias", à savoir : un "média" est un article au sens SPIP créé automatiquement lors du téléversement d’un document qu’il soit audio, vidéo, image ou textuel ; un seul document ne peut être lié à un article dit "média" ; -
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 (...) -
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 (...)
Sur d’autres sites (9229)
-
How to use ffmpeg to stream a playlist of clips that are in very different formats ? [closed]
21 septembre 2024, par gulagkulakI'm trying to use ffmpeg to stream a playlist of video files that are all in very different formats, sizes, and aspect ratios.


The problem is that often when the video changes I get a spinning wheel of death on the target streaming sites and some kinda error in the ffmpeg output.


Sometimes it's
[flv @ 0x7f5c10686200] Failed to update header with correct duration.


Or
[flv @ 0x7f5c10686200] Failed to update header with correct filesize.


Or a whole bunch of
[aost#0:1/aac @ 0x8947680] Non-monotonic DTS; previous: 82536459, current: 78988751; changing to 82536460. This may result in incorrect timestamps in the output file.


Or it starts dropping every single frame. I think it happens when it changes from a progressive to deinterlaced file or vice-versa.


How do I make ffmpeg more resilient so it can handle every kind of file thrown at it and output a continuous stream at 1920x1080 and 30fps h264 to a streaming server ?


This is the command I'm using :


ffmpeg -stream_loop -1 -re -f concat -i playlist.txt -threads 4 -c:v libx264 -preset ultrafast \
-b:v 2000k -maxrate 2000k -g 30 -c:a aac -b:a 128k -strict -2 -fflags +genpts+discardcorrupt \
-async 1 -map 0 -r 30 -s 1920x1080 -bufsize 6000k -flags +cgop -fflags +igndts \
-f tee -rtsp_transport tcp -max_delay 1000 \
"[f=flv:onfail=ignore]rtmp://xxxxxxxxxxxxxxx.com/live/xxxxxxxxxxxxxxx|[f=flv:onfail=ignore]rtmp://xxxxxxxxxxxxxxx.com/live/xxxxxxxxxxxxxxx"



And it's not working. ffmpeg just fails in a variety of ways. I've spent two days trying to figure this out.


Even used handbrake to try and pre-encode the video files to the same exact format, but even then ffmpeg fails in similar ways, just less often.


After re-encoding with handbrake I tried to concat the videos together with ffmpeg and ended up with a large video where the sound breaks for some parts of it and it stops being seekable in VLC after a certain timecode.


I think I'm missing some important ffmpeg flag or option.


-
NodeJS piping with ffmpeg
8 février 2014, par GnapI wanted to do a HTTP live stream on a screen cast with using ffmpeg, nodejs and html5 . I wanted it to be as real time as possible. However, I find that my video received by the client was behind by 1 2 seconds (On Chrome/Chromium). I am using vp8/webm as my codec.
I have eliminated the following factors as such :
1) Network : I have tried serving and receiving the video file locally by stating the video source to be 127.0.0.1:PORT or localhost:PORT
2) ffmpeg encoding speed:I have tried outputting the file locally, it the "delay" seems to be negligible.
3) Chrome internal buffer. The buffer was accounted to be 0.07s 0.08s.On the nodeJS side, I have a child process that runs the ffmpeg command, and did a ffmpeg.stdout.pipe(res) ; <— ffmpeg is child_process.spawn(...)
So it seems that the ffmpeg.std.pipe(res) of nodejs seems to be the one delaying the video stream. Am I correct in assuming so ? Is there anyway that I may reduce the delay ?
-
avutil/aes : Don't use out-of-bounds index
21 octobre 2022, par Andreas Rheinhardtavutil/aes : Don't use out-of-bounds index
Up until now, av_aes_init() uses a->round_key[0].u8 + t
as dst of memcpy where it is intended for t to greater
than 16 (u8 is an uint8_t[16]) ; given that round_key itself
is an array, it is actually intended for the dst to be
in a latter round_key member. To do this properly,
just cast a->round_key to unsigned char*.This fixes the srtp, aes, aes_ctr, mov-3elist-encrypted,
mov-frag-encrypted and mov-tenc-only-encrypted
FATE-tests with (Clang-)UBSan.Signed-off-by : Andreas Rheinhardt <andreas.rheinhardt@outlook.com>