
Recherche avancée
Autres articles (69)
-
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 (...) -
Configurer la prise en compte des langues
15 novembre 2010, parAccéder à la configuration et ajouter des langues prises en compte
Afin de configurer la prise en compte de nouvelles langues, il est nécessaire de se rendre dans la partie "Administrer" du site.
De là, dans le menu de navigation, vous pouvez accéder à une partie "Gestion des langues" permettant d’activer la prise en compte de nouvelles langues.
Chaque nouvelle langue ajoutée reste désactivable tant qu’aucun objet n’est créé dans cette langue. Dans ce cas, elle devient grisée dans la configuration et (...) -
Sélection de projets utilisant MediaSPIP
29 avril 2011, parLes exemples cités ci-dessous sont des éléments représentatifs d’usages spécifiques de MediaSPIP pour certains projets.
Vous pensez avoir un site "remarquable" réalisé avec MediaSPIP ? Faites le nous savoir ici.
Ferme MediaSPIP @ Infini
L’Association Infini développe des activités d’accueil, de point d’accès internet, de formation, de conduite de projets innovants dans le domaine des Technologies de l’Information et de la Communication, et l’hébergement de sites. Elle joue en la matière un rôle unique (...)
Sur d’autres sites (6481)
-
Is it possible to re-translate RTMP stream without losing speed ? [closed]
3 août 2024, par LunavodI've been working on a stream proxy - the idea is that instead of streaming directly to Twitch, OBS streams to a local RTMP server running on the same machine. The server decodes flv from the rtmp stream into rawvideo using ffmpeg, modifies pixels, and encodes back into flv, streaming the result to twitch. Again, using ffmpeg.


However, I was not able to make this setup work reliably - I always run into buffering issues on Twitch. Even if ffmpeg shows a stable bitrate and 60fps, twitch slowly loses buffer size, then pauses to buffer, and then slowly loses buffer again... This results in endlessly growing delays and frequent pauses.


I simplified this setup, removing the rawvideo part together with frame modification. A simplified setup accepts the rtmp stream, and dumps it into FFmpeg, which sends it to Twitch with minimal overhead (I hope).
But even with this setup, Twitch still increases latency, although considerably slower.


The connection between rtmp server and ffmpeg is done with TCP sockets.
I tried using stdin, but it works even worse.
I also tried using windows named pipes but ran into a bottleneck - writing rawvideo from ffmpeg and reading it from script worked fine, as well as writing from a script and reading from ffmpeg. However, running both simultaneously in two different pipes slowed down.


Initially, all of this was written in python, but I also tried using go, hoping that rtmp server realisation in python was the problem.


Am I missing something fundamental here ? Is this idea possible at all ?


-
"Error : more samples than frame size" while encoding audio to opus codec using FFMPEG
28 avril 2023, par lokit khemkaI am converting audio from codec
AAC
toOpus
using libavcodec library of FFMPEG. The input codec details are as follows :Audio: aac (LC) (mp4a / 0x6134706D), 48000 Hz, 6 channels, fltp, 391 kb/s (default)


The codec options that I have used for the output encoding are as follows :


int OUTPUT_CHANNELS = 2;
 int OUTPUT_BIT_RATE = 32000;
int sample_rate = 48000;
 encoder_sc->audio_avcc->channels = OUTPUT_CHANNELS;
 encoder_sc->audio_avcc->channel_layout = av_get_default_channel_layout(OUTPUT_CHANNELS);
 encoder_sc->audio_avcc->sample_rate = sample_rate;
 encoder_sc->audio_avcc->sample_fmt = encoder_sc->audio_avc->sample_fmts[0];
 encoder_sc->audio_avcc->bit_rate = OUTPUT_BIT_RATE;
 encoder_sc->audio_avcc->time_base = (AVRational){1, sample_rate};



I am using the code in the file as it is, with minimal changes : https://github.com/leandromoreira/ffmpeg-libav-tutorial/blob/master/3_transcoding.c for reference. Look for the function
prepare_audio_encoder
in the file.

When the run the program, I keep getting the error : " more samples than frame size". I don't know much about Audio Processing, so I cannot debug this error. Any help is greatly appreciated.


-
Rendering video by ffmpeg.wasm in browser occured an error
15 septembre 2022, par James BorWhen a local video renderer uses the ffmpeg.wasm library in the Chrome browser, very often an error with the SBOX_FATAL_MEMORY_EXCEEDED code occurs during the rendering process. The standard command set is used. The code below is half fake because it is very long, but describes an approximate action algorithm. Computer performance and RAM capacity do not affect the video, files used - minimal size. Has anyone experienced this and how can we solve it ?
Error screen


const videoGenerate = async (project) => {
 const ffmpeg = createFFmpeg({
 corePath: 'ffmpeg/ffmpeg-core.js',
 workerPath: 'ffmpeg/ffmpeg-core.worker.js'
 });
 await loadFfmpeg(ffmpeg);
 project.projectName = "Default";
 project.fileType = "video/mp4";

 const resultVideo = {
 title: `${project.projectName}ConcatenatedVideo.mp4`,
 };
 // *For fetchFile method and ffmpeg.FS('writeFile', title, file);
 await uploadObjects(project.projectName, ffmpeg);
 // *
 const command = ['-i', project.video, resultVideo.title];
 await ffmpeg.run(...command);
 await ffmpeg.FS("unlink", resultVideo.title);
 resultVideo["blob"] = ffmpeg.FS('readFile', title);
 return resultVideo.blob;
};



These dependencies are used : "@ffmpeg/core" : " 0.8.5", "@ffmpeg/ffmpeg" : " 0.9.7". Upgrading the library to the latest version does not work either.