
Recherche avancée
Médias (1)
-
Revolution of Open-source and film making towards open film making
6 octobre 2011, par
Mis à jour : Juillet 2013
Langue : English
Type : Texte
Autres articles (20)
-
Les tâches Cron régulières de la ferme
1er décembre 2010, parLa gestion de la ferme passe par l’exécution à intervalle régulier de plusieurs tâches répétitives dites Cron.
Le super Cron (gestion_mutu_super_cron)
Cette tâche, planifiée chaque minute, a pour simple effet d’appeler le Cron de l’ensemble des instances de la mutualisation régulièrement. Couplée avec un Cron système sur le site central de la mutualisation, cela permet de simplement générer des visites régulières sur les différents sites et éviter que les tâches des sites peu visités soient trop (...) -
Les formats acceptés
28 janvier 2010, parLes commandes suivantes permettent d’avoir des informations sur les formats et codecs gérés par l’installation local de ffmpeg :
ffmpeg -codecs ffmpeg -formats
Les format videos acceptés en entrée
Cette liste est non exhaustive, elle met en exergue les principaux formats utilisés : h264 : H.264 / AVC / MPEG-4 AVC / MPEG-4 part 10 m4v : raw MPEG-4 video format flv : Flash Video (FLV) / Sorenson Spark / Sorenson H.263 Theora wmv :
Les formats vidéos de sortie possibles
Dans un premier temps on (...) -
Ajouter notes et légendes aux images
7 février 2011, parPour pouvoir ajouter notes et légendes aux images, la première étape est d’installer le plugin "Légendes".
Une fois le plugin activé, vous pouvez le configurer dans l’espace de configuration afin de modifier les droits de création / modification et de suppression des notes. Par défaut seuls les administrateurs du site peuvent ajouter des notes aux images.
Modification lors de l’ajout d’un média
Lors de l’ajout d’un média de type "image" un nouveau bouton apparait au dessus de la prévisualisation (...)
Sur d’autres sites (5343)
-
How to decode in ffmpeg using hardware (avcodec_parameters_to_context problem)
25 juillet 2020, par Guerlando OCsAVCodecContext *ctx= NULL;
 AVCodecParameters *origin_par = NULL;


 result = avcodec_parameters_to_context(ctx, origin_par);
 if (result) {
 av_log(NULL, AV_LOG_ERROR, "Can't copy decoder context\n");
 return result;
 }



where
origin_par
is filled by opening the file and reading some of its things :

result = avformat_open_input(&fmt_ctx, input_filename, NULL, NULL);
 if (result < 0) {
 av_log(NULL, AV_LOG_ERROR, "Can't open file\n");
 return result;
 }

 result = avformat_find_stream_info(fmt_ctx, NULL);
 if (result < 0) {
 av_log(NULL, AV_LOG_ERROR, "Can't get stream info\n");
 return result;
 }

 video_stream = av_find_best_stream(fmt_ctx, AVMEDIA_TYPE_VIDEO, -1, -1, NULL, 0);
 if (video_stream < 0) {
 av_log(NULL, AV_LOG_ERROR, "Can't find video stream in input file\n");
 return -1;
 }

 origin_par = fmt_ctx->streams[video_stream]->codecpar;



However, I don't have a file, I have an h264 stream. How do I make it work then ? I need a way to fill the parameters to the context using
avcodec_parameters_to_context
but without opening a file.

-
sending udp cbr content using ffmpeg makes memory problem
30 décembre 2020, par PrzemoI am struggling with muxing a few UDP inputs (SPTS from file) in one UDP output (MPTS).
When I use following command


ffmpeg -thread_queue_size 2048 -i "udp://233.0.0.1:4005?fifo_size=1000000&buffer_size=10000000" -thread_queue_size 2048 -i "udp://233.0.0.1:4000?fifo_size=1000000&buffer_size=10000000" -thread_queue_size 2048 -i "udp://233.0.0.1:4001?fifo_size=1000000&buffer_size=10000000" -thread_queue_size 2048 -i "udp://233.0.0.1:4002?fifo_size=1000000&buffer_size=10000000" -thread_queue_size 2048 -i "udp://233.0.0.1:4003?fifo_size=1000000&buffer_size=10000000" -thread_queue_size 2048 -i "udp://233.0.0.1:4004?fifo_size=1000000&buffer_size=10000000" -map 0 -map 1 -map 2 -map 3 -map 4 -map 5 -program title=Program0:st=0:st=1 -program title=Program1:st=2:st=3 -program title=Program2:st=4:st=5 -program title=Program3:st=6:st=7 -program title=Program4:st=8:st=9 -program title=Program5:st=10:st=11 -c copy -metadata service_provider=FILE -f mpegts -muxrate 40000000 -flush_packets 0 "udp://239.2.2.2:2222?overrun_nonfatal=1&fifo_size=1000000&buffer_size=10000000&pkt_size=1316&ttl=1"



I can play (with VLC) the MPTS content many hours with no problems.


When I add a bitrate parameter to make UDP output stream as CBR


"udp://239.2.2.2:2222?overrun_nonfatal=1&fifo_size=1000000&buffer_size=10000000&pkt_size=1316&ttl=1&bitrate=40000000"



instead of


"udp://239.2.2.2:2222?overrun_nonfatal=1&fifo_size=1000000&buffer_size=10000000&pkt_size=1316&ttl=1"



a hear many audio cuts, and from VLC I see then :




main warning : timing screwed (drift : -89659 us) : stopping resampling

main warning : playback too early (-89367) : down-sampling

main warning : playback way too early (-126525) : playing silence

main debug : inserting 6073 zeroes

main warning : playback too early (-47858) : down-sampling

main warning : timing screwed (drift : -97495 us) : stopping resampling

main warning : playback too early (-96807) : down-sampling

main warning : playback way too early (-134672) : playing silence

main debug : inserting 6464 zeroes



and after some random time (several minutes) ffmpeg stops working due to following error :




av_interleaved_write_frame() : Cannot allocate memory




How to make it work with CBR UDP bitrate ?

I tired changing parameters of buffer_size and fifo_size but with no success.

I've increased OS UDP buffers to improve performance but same memory problem is visible

-
FFMPEG Webvtt m3u8 download into single vtt file, ignore the "X-TIMESTAMP-MAP=MPEGTS=" (timestamp sync problem)
5 janvier 2021, par Panda XiaI want to download the subtitle of a video, it has separated m3u8 file for subtitle :


webvtt source in m3u8 format : https://sdn-global-streaming-cache.3qsdn.com/9378/files/19/05/1199332/Dqt6jZBkvX2nLyY4CGhxmpK89PbQRFV7-drm-aes.ism/Dqt6jZBkvX2nLyY4CGhxmpK89PbQRFV7-drm-aes-textstream_deu=1000.m3u8


looks like :


#EXTM3U
#EXT-X-VERSION:4
## Created with Unified Streaming Platform(version=1.9.5)
#EXT-X-PLAYLIST-TYPE:VOD
#EXT-X-MEDIA-SEQUENCE:1
#EXT-X-INDEPENDENT-SEGMENTS
#EXT-X-TARGETDURATION:989
#USP-X-TIMESTAMP-MAP:MPEGTS=900000,LOCAL=1970-01-01T00:00:00Z
#EXTINF:24.72, no desc
Dqt6jZBkvX2nLyY4CGhxmpK89PbQRFV7-drm-aes-textstream_deu=1000-1.webvtt
#EXTINF:2.56, no desc
Dqt6jZBkvX2nLyY4CGhxmpK89PbQRFV7-drm-aes-textstream_deu=1000-13.webvtt
#EXTINF:50.88, no desc
Dqt6jZBkvX2nLyY4CGhxmpK89PbQRFV7-drm-aes-textstream_deu=1000-14.webvtt
#EXTINF:3.079, no desc
Dqt6jZBkvX2nLyY4CGhxmpK89PbQRFV7-drm-aes-textstream_deu=1000-40.webvtt
#EXTINF:60.401, no desc
....



Then use the command to download the multiple webvtts into one vtt file "EN.vtt" :


ffmpeg -i "https://sdn-global-streaming-cache.3qsdn.com/9378/files/19/05/1199332/Dqt6jZBkvX2nLyY4CGhxmpK89PbQRFV7-drm-aes.ism/Dqt6jZBkvX2nLyY4CGhxmpK89PbQRFV7-drm-aes-textstream_deu=1000.m3u8" "DE.vtt"



In output "DE.vtt" the X-TIMESTAMP-MAP=MPEGTS:xxxxxx,LOCAL:00:00:00.000 from each webvtt file (webvtt in m3u8) are ignored.


so that the time Synchronisation is broken, the start time of each Segment always begins from 00:00:00, looks like :


WEBVTT

00:00.000 --> 00:02.560
So viel Macht.

00:00.000 --> 00:03.079
Was er sagte.

00:00.000 --> 00:04.680
oder
die Schönheit

00:00.000 --> 00:01.440
Er sagte immer:

00:00.000 --> 00:03.840
Auf seinen Klang 

00:00.000 --> 00:07.519
Seine Paranoia.



Could ffmpeg support the relative time stamp to convert into absolute time stamp ?
Or use other method to download perfect webvvt file ?