
Recherche avancée
Médias (1)
-
Sintel MP4 Surround 5.1 Full
13 mai 2011, par
Mis à jour : Février 2012
Langue : English
Type : Video
Autres articles (78)
-
Amélioration de la version de base
13 septembre 2013Jolie sélection multiple
Le plugin Chosen permet d’améliorer l’ergonomie des champs de sélection multiple. Voir les deux images suivantes pour comparer.
Il suffit pour cela d’activer le plugin Chosen (Configuration générale du site > Gestion des plugins), puis de configurer le plugin (Les squelettes > Chosen) en activant l’utilisation de Chosen dans le site public et en spécifiant les éléments de formulaires à améliorer, par exemple select[multiple] pour les listes à sélection multiple (...) -
Qu’est ce qu’un masque de formulaire
13 juin 2013, parUn masque de formulaire consiste en la personnalisation du formulaire de mise en ligne des médias, rubriques, actualités, éditoriaux et liens vers des sites.
Chaque formulaire de publication d’objet peut donc être personnalisé.
Pour accéder à la personnalisation des champs de formulaires, il est nécessaire d’aller dans l’administration de votre MediaSPIP puis de sélectionner "Configuration des masques de formulaires".
Sélectionnez ensuite le formulaire à modifier en cliquant sur sont type d’objet. (...) -
Le profil des utilisateurs
12 avril 2011, parChaque utilisateur dispose d’une page de profil lui permettant de modifier ses informations personnelle. Dans le menu de haut de page par défaut, un élément de menu est automatiquement créé à l’initialisation de MediaSPIP, visible uniquement si le visiteur est identifié sur le site.
L’utilisateur a accès à la modification de profil depuis sa page auteur, un lien dans la navigation "Modifier votre profil" est (...)
Sur d’autres sites (14126)
-
avformat/assdec : UTF-16 support
2 septembre 2014, par wm4avformat/assdec : UTF-16 support
Use the UTF-16 BOM to detect UTF-16 encoding. Convert the file contents
to UTF-8 on the fly using FFTextReader, which acts as converting wrapper
around AVIOContext. It also can work on a static buffer, needed for
format probing. The FFTextReader wrapper now also takes care of skipping
the UTF-8 BOM.Fix Ticket #3496.
-
ffmpeg stream rejected by youtube because it's too slow
15 septembre 2019, par DeadlyBaconI have an app that sends WebM video to a socket in my server, the socket then executes ffmpeg to transform the video to flv and send it to a youtube rtmp ingester.
Thing is, youtube rejects the stream, saying that the broadcast status is incorrect, no matter what I do.
In my naivette I initially tried to stream 1080p and 720p, that failed, so I went down, assuming that that might help me with the bitrate issue... It did not.
The error that Youtube gives me is in spanish but it basically says that the stream is too slow and I should lower resolution or bitrate(I’m already @ 240p and it’s not working).
Edit : Here’s the error, translated :
Main broadcast :
YouTube is not receiving enough video to guarantee a fluid broadcast. Buffering will occur.Main Broadcast : We are not receiving video data at a fast enough speed. Your audience may experience buffering. Make sure that your connection is fast enough o consider using a lower bitrate.
Here is my call to ffmpeg thus far (language is node.js if that matters.) :
const ffmpeg = child_process.spawn('ffmpeg', [
'-f', 'lavfi', '-i', 'anullsrc',
// '-re', // I was told i shouldnt use this parameter. i dont know, honestly.
// FFmpeg will read input video from STDIN
'-i', '-',
// Because we're using a generated audio source which never ends,
// specify that we'll stop at end of other input. Remove this line if you
// send audio from the browser.
'-shortest',
'-vcodec', 'libx264',
'-acodec', 'aac',
//ffmpeg
//-re -loop 1
//-framerate 2 -i test1.jpg -i https://xxxxxxxxxxx:8443/live.ogg
//-c:a aac
//-s 2560x1440
//-ab 128k -vcodec libx264 -pix_fmt yuv420p -maxrate 2048k -bufsize 2048k
//'-framerate', '30',
'-r', '24',
//'-s', '2560x1440',
'-force_key_frames','expr:gte(t\,n_forced/2)',
'-preset', 'ultrafast',
'-pix_fmt', 'yuv420p',
'-s', '426x240',
'-crf', '23',
'-bf', '2',
'-q:a', '1',
'-ac', '2',
'-ar','48000',
'-use_editlist','0',
'-movflags','+faststart',
// '-ab', '128k',
'-g', '48',
//'-minrate', '1500k',
'-minrate', '1000k',
'-maxrate', '2000k',
'-bufsize', '2000k',/*
'-g', '30',*/
//'-keyint_min', '30',
//'-t', '30',
////
'-deadline', 'realtime',
'-cpu-used','-16',
'-tune', 'zerolatency',
'-threads', '4',
//-g 2 -strict experimental -f flv rtmp://a.rtmp.youtube.com/live2/xxxxxxxxxxxxx
// FLV is the container format used in conjunction with RTMP
'-f', 'flv',
// The output RTMP URL.
// For debugging, you could set this to a filename like 'test.flv', and play
// the resulting file with VLC. Please also read the security considerations
// later on in this tutorial.
rtmpUrl
]);Edit : input is fed via stdin whenever the socket receives data.
In my completely uneducated opinion, the "-deadline realtime" & the "-tune zerolatency" parts seemed to help somewhat but not enough to get me streamin’.
Here is some of the output of ffmpeg :
FFmpeg STDERR: frame= 35 fps=3.1 q=23.0 size= 104kB time=00:00:08.44 bitrate= 100.4kbits/s dup=0 drop=3 speed=0.76x
FFmpeg STDERR: frame= 35 fps=3.0 q=23.0 size= 104kB time=00:00:08.44 bitrate= 100.4kbits/s dup=0 drop=3 speed=0.726x
FFmpeg STDERR: frame= 35 fps=2.9 q=23.0 size= 104kB time=00:00:08.44 bitrate= 100.4kbits/s dup=0 drop=3 speed=0.696x
FFmpeg STDERR: frame= 36 fps=2.8 q=23.0 size= 109kB time=00:00:09.45 bitrate= 94.6kbits/s dup=0 drop=3 speed=0.747x
FFmpeg STDERR: frame= 36 fps=2.7 q=23.0 size= 109kB time=00:00:09.45 bitrate= 94.6kbits/s dup=0 drop=3 speed=0.719x
FFmpeg STDERR: frame= 38 fps=2.8 q=23.0 size= 121kB time=00:00:11.45 bitrate= 86.7kbits/s dup=0 drop=3 speed=0.839xThis is extremely frustrating.
Please, guys, any guidance is good. what is it that I should be maximizing or minimizing ? how do I do that ? I honestly do not care about everything else going to hell (for example the video freezing or being severely pixelated at times) I just care about being able to stream
Thank you in advance for anything that might help me !
UPDATE : I created a new broadcast, with variable bitrate, I broadcasted to it, it was at "status:optimal" for a few seconds then fps and speed went down and the stream went back to "status : incorrect"
-
ffmpeg/libav easy way to set options
13 mars 2023, par PatrickI recently messed around with ffplay code to see how it works and I noticed it uses a very straight forward way to parse and set all the command line options using the library internal cmdutils.h. I personally find the av_opt_set used in other examples of av wrappers quite confusing (Some args are explicitly stored in the struct, some in priv_data ? Im allowed/supposed to modify void*priv_data ? Which objects can I use av_opt_set on ? Which args go in which object and are they declared or in priv_data ? Where is this documented ?).
In ffplay all args are simply stored in an array and distributed to the right codec/muxer/format instance using cmdutil.
Id like to have exactly this functionality for my program (so that i can simply read a json config and don't need to care about it any further). Apparently the necessary OptionDef arrays are already defined in different implementation files.


However my actual question : I noticed the OptionDef array definition in ffplay does not contain all options (only some from cmdutil included via macro). But other options e.g. fflags are not included anywhere (only defined somewhere else) and yet they work. So how does cmdutil set/parse them ?


I hope someone can answer this, since simply adapting cmdutil would be a quite simple solution for me. Id also really appreciate some general guidance regarding my previous questions.


Many Thanks in advance !


I tried looking into the ffmpeg source and expected all OptionDef array definitions to be connected/collected inside a single array such that cmdutil can parse them easily. However this isn't the case and still some cmd options work. Therefore Im confused on how cmtutil is able to parse them