Recherche avancée

Médias (2)

Mot : - Tags -/media

Autres articles (105)

  • Support de tous types de médias

    10 avril 2011

    Contrairement à beaucoup de logiciels et autres plate-formes modernes de partage de documents, MediaSPIP a l’ambition de gérer un maximum de formats de documents différents qu’ils soient de type : images (png, gif, jpg, bmp et autres...) ; audio (MP3, Ogg, Wav et autres...) ; vidéo (Avi, MP4, Ogv, mpg, mov, wmv et autres...) ; contenu textuel, code ou autres (open office, microsoft office (tableur, présentation), web (html, css), LaTeX, Google Earth) (...)

  • Diogene : création de masques spécifiques de formulaires d’édition de contenus

    26 octobre 2010, par

    Diogene est un des plugins ? SPIP activé par défaut (extension) lors de l’initialisation de MediaSPIP.
    A quoi sert ce plugin
    Création de masques de formulaires
    Le plugin Diogène permet de créer des masques de formulaires spécifiques par secteur sur les trois objets spécifiques SPIP que sont : les articles ; les rubriques ; les sites
    Il permet ainsi de définir en fonction d’un secteur particulier, un masque de formulaire par objet, ajoutant ou enlevant ainsi des champs afin de rendre le formulaire (...)

  • Librairies et binaires spécifiques au traitement vidéo et sonore

    31 janvier 2010, par

    Les logiciels et librairies suivantes sont utilisées par SPIPmotion d’une manière ou d’une autre.
    Binaires obligatoires FFMpeg : encodeur principal, permet de transcoder presque tous les types de fichiers vidéo et sonores dans les formats lisibles sur Internet. CF ce tutoriel pour son installation ; Oggz-tools : outils d’inspection de fichiers ogg ; Mediainfo : récupération d’informations depuis la plupart des formats vidéos et sonores ;
    Binaires complémentaires et facultatifs flvtool2 : (...)

Sur d’autres sites (7144)

  • FFPlay : How to manually select video quality during playing the mpd stream ?

    19 août 2023, par Brian_wu

    I used ffplay to play mpd stream and successed,

    


    Here the MPD file :

    


    &lt;?xml version="1.0" encoding="utf-8"?>&#xA;<mpd xmlns="urn:mpeg:dash:schema:mpd:2011" profiles="urn:mpeg:dash:profile:isoff-live:2011" type="static" mediapresentationduration="PT1M8.7S" maxsegmentduration="PT5.0S" minbuffertime="PT12.5S">&#xA;    <programinformation>&#xA;    </programinformation>&#xA;    <servicedescription>&#xA;    </servicedescription>&#xA;    <period start="PT0.0S">&#xA;        <adaptationset contenttype="video" startwithsap="1" segmentalignment="true" bitstreamswitching="true" framerate="24000/1001" maxwidth="1280" maxheight="720" par="16:9">&#xA;        <representation mimetype="video/mp4" codecs="avc1.4d401f" bandwidth="10237" width="480" height="270" sar="1:1">&#xA;            <segmenttemplate timescale="24000" initialization="init-stream$RepresentationID$.m4s" media="chunk-stream$RepresentationID$-$Number%05d$.m4s" startnumber="1">&#xA;                <segmenttimeline>&#xA;                    <s t="0" d="150150" r="9"></s>&#xA;                    <s d="149149"></s>&#xA;                </segmenttimeline>&#xA;            </segmenttemplate>&#xA;        </representation>&#xA;        <representation mimetype="video/mp4" codecs="avc1.4d401f" bandwidth="60882" width="1280" height="720" sar="1:1">&#xA;            <segmenttemplate timescale="24000" initialization="init-stream$RepresentationID$.m4s" media="chunk-stream$RepresentationID$-$Number%05d$.m4s" startnumber="1">&#xA;                <segmenttimeline>&#xA;                    <s t="0" d="150150" r="9"></s>&#xA;                    <s d="149149"></s>&#xA;                </segmenttimeline>&#xA;            </segmenttemplate>&#xA;        </representation>&#xA;    </adaptationset>&#xA;    <adaptationset contenttype="audio" startwithsap="1" segmentalignment="true" bitstreamswitching="true" lang="und">&#xA;        <representation mimetype="audio/mp4" codecs="mp4a.40.2" bandwidth="128000" audiosamplingrate="32000">&#xA;            <audiochannelconfiguration schemeiduri="urn:mpeg:dash:23003:3:audio_channel_configuration:2011" value="2"></audiochannelconfiguration>&#xA;            <segmenttemplate timescale="32000" initialization="init-stream$RepresentationID$.m4s" media="chunk-stream$RepresentationID$-$Number%05d$.m4s" startnumber="1">&#xA;                <segmenttimeline>&#xA;                    <s t="0" d="159744"></s>&#xA;                    <s d="160768" r="11"></s>&#xA;                    <s d="111915"></s>&#xA;                </segmenttimeline>&#xA;            </segmenttemplate>&#xA;        </representation>&#xA;        <representation mimetype="audio/mp4" codecs="mp4a.40.2" bandwidth="128000" audiosamplingrate="44100">&#xA;            <audiochannelconfiguration schemeiduri="urn:mpeg:dash:23003:3:audio_channel_configuration:2011" value="2"></audiochannelconfiguration>&#xA;            <segmenttemplate timescale="44100" initialization="init-stream$RepresentationID$.m4s" media="chunk-stream$RepresentationID$-$Number%05d$.m4s" startnumber="1">&#xA;                <segmenttimeline>&#xA;                    <s t="0" d="220160"></s>&#xA;                    <s d="221184" r="11"></s>&#xA;                    <s d="158713"></s>&#xA;                </segmenttimeline>&#xA;            </segmenttemplate>&#xA;        </representation>&#xA;    </adaptationset>&#xA;</period>&#xA;</mpd>

    &#xA;&#xA;

    this dash stream contains 2 vindeos(480P and 720P), and 2 audios.The videos always starts low quality(480P), I want to change the video resolution to the high quality(720P) during playing process, what should i do ?

    &#xA;

  • FFMPEG conversion failed at random times on live stream to youtube

    3 avril 2022, par good karma

    I am running a bash script using ubuntu server on arm64 that live streams video and audio to youtube, heres the script below

    &#xA;

    FFMPEG is the lateset version available in the ubuntu repo

    &#xA;

    #! /bin/bash&#xA;&#xA;VBR="8000k"&#xA;FPS="24"&#xA;QUAL="superfast"&#xA;&#xA;YOUTUBE_URL="rtmp://a.rtmp.youtube.com/live2"&#xA;KEY="****"&#xA;&#xA;VIDEO_SOURCE="/mnt/disk1/test/****"&#xA;&#xA;AUDIO_SOURCE="****"&#xA;&#xA;ffmpeg \&#xA;    -re -f lavfi -i "movie=filename=$VIDEO_SOURCE:loop=0, setpts=N/(FRAME_RATE*TB)" \&#xA;    -thread_queue_size 512 -i "$AUDIO_SOURCE" \&#xA;    -map 0:v:0 -map 1:a:0 \&#xA;    -map_metadata:g 1:g \&#xA;    -vcodec libx264 -pix_fmt yuv420p -preset $QUAL -r $FPS -g $(($FPS * 2)) -b:v $VBR \&#xA;    -acodec libmp3lame -ar 44100 -threads 4 -qscale:v 3 -b:a 320000 -bufsize 512k \&#xA;    -report -loglevel fatal -nostats  \&#xA;    -f flv "$YOUTUBE_URL/$KEY"&#xA;

    &#xA;

    The stream works fine, however after a seemingly random period of time, I get a conversion failed error

    &#xA;

    first after 64 hours of streaming&#xA;second after 12 hours of streaming&#xA;third after 8 hours of streaming

    &#xA;

    The server itsef is fine cpu and memory usage are extremly low and there are no spikes

    &#xA;

    from what i can guess the error has something to do with libx264 judging by the error logs, although I do not really know. After some guidance on what to do try next. Here is the tail end of the ffmpeg log report

    &#xA;

    [libx264 @ 0xaaab23ad3e30] frame=1351975 QP=16.89 NAL=2 Slice:P Poc:14  I:6461 P:1224 SKIP:475  size=26602 bytes&#xA;av_interleaved_write_frame(): Broken pipe&#xA;No more output streams to write to, finishing.&#xA;[libx264 @ 0xaaab23ad3e30] frame=1351976 QP=17.90 NAL=2 Slice:B Poc:10  I:2395 P:3322 SKIP:2443 size=20127 bytes&#xA;[libx264 @ 0xaaab23ad3e30] frame=1351977 QP=17.89 NAL=0 Slice:B Poc:12  I:1848 P:3235 SKIP:3077 size=17313 bytes&#xA;[libx264 @ 0xaaab23ad3e30] frame=1351978 QP=15.65 NAL=2 Slice:P Poc:22  I:6458 P:1171 SKIP:531  size=26073 bytes&#xA;[libx264 @ 0xaaab23ad3e30] frame=1351979 QP=17.19 NAL=2 Slice:B Poc:18  I:2766 P:3514 SKIP:1880 size=19633 bytes&#xA;[libx264 @ 0xaaab23ad3e30] frame=1351980 QP=18.35 NAL=0 Slice:B Poc:16  I:1233 P:2876 SKIP:4051 size=11769 bytes&#xA;[libx264 @ 0xaaab23ad3e30] frame=1351981 QP=17.28 NAL=0 Slice:B Poc:20  I:822  P:3197 SKIP:4141 size=10699 bytes&#xA;[libx264 @ 0xaaab23ad3e30] frame=1351982 QP=17.08 NAL=2 Slice:P Poc:30  I:6351 P:1443 SKIP:366  size=29120 bytes&#xA;[libx264 @ 0xaaab23ad3e30] frame=1351983 QP=17.29 NAL=2 Slice:B Poc:26  I:2060 P:4211 SKIP:1889 size=18465 bytes&#xA;[libx264 @ 0xaaab23ad3e30] frame=1351984 QP=18.00 NAL=0 Slice:B Poc:24  I:472  P:3225 SKIP:4463 size=8893 bytes&#xA;[libx264 @ 0xaaab23ad3e30] frame=1351985 QP=17.98 NAL=0 Slice:B Poc:28  I:1339 P:3681 SKIP:3140 size=13378 bytes&#xA;[libx264 @ 0xaaab23ad3e30] frame=1351986 QP=15.57 NAL=2 Slice:P Poc:32  I:6270 P:1584 SKIP:306  size=33703 bytes&#xA;av_interleaved_write_frame(): Broken pipe&#xA;[libmp3lame @ 0xaaab23ac06f0] Trying to remove 47 more samples than there are in the queue&#xA;[flv @ 0xaaab23ad2ff0] Failed to update header with correct duration.&#xA;[flv @ 0xaaab23ad2ff0] Failed to update header with correct filesize.&#xA;Error writing trailer of rtmp://a.rtmp.youtube.com/live2/****: Broken pipe&#xA;frame=1351987 fps= 24 q=22.0 Lsize=37296521kB time=15:38:52.22 bitrate=5423.8kbits/s dup=0 drop=56332 speed=   1x    &#xA;video:35035969kB audio:2200479kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 0.161329%&#xA;Input file #0 (movie=filename=/mnt/disk1/test/****.mp4:loop=0, setpts=N/(FRAME_RATE*TB)):&#xA;  Input stream #0:0 (video): 1408319 packets read (4380435417600 bytes); 1408319 frames decoded; &#xA;  Total: 1408319 packets (4380435417600 bytes) demuxed&#xA;Input file #1 (https://****.mp3):&#xA;  Input stream #1:0 (audio): 2156470 packets read (901316441 bytes); 2156470 frames decoded (2484253440 samples); &#xA;  Total: 2156470 packets (901316441 bytes) demuxed&#xA;Output file #0 (rtmp://a.rtmp.youtube.com/live2/****):&#xA;  Output stream #0:0 (video): 1351987 frames encoded; 1351976 packets muxed (35876832486 bytes); &#xA;  Output stream #0:1 (audio): 2156470 frames encoded (2484253440 samples); 2156469 packets muxed (2253290057 bytes); &#xA;  Total: 3508445 packets (38130122543 bytes) muxed&#xA;3564789 frames successfully decoded, 0 decoding errors&#xA;[AVIOContext @ 0xaaab23ac4ef0] Statistics: 0 seeks, 3823215 writeouts&#xA;[rtmp @ 0xaaab23dab6a0] UnPublishing stream...&#xA;[rtmp @ 0xaaab23dab6a0] Deleting stream...&#xA;[libx264 @ 0xaaab23ad3e30] frame I:53166 Avg QP:16.31  size: 39514&#xA;[libx264 @ 0xaaab23ad3e30] frame P:500115 Avg QP:17.79  size: 32831&#xA;[libx264 @ 0xaaab23ad3e30] frame B:798706 Avg QP:19.67  size: 21732&#xA;[libx264 @ 0xaaab23ad3e30] consecutive B-frames: 13.9% 15.2% 20.2% 50.7%&#xA;[libx264 @ 0xaaab23ad3e30] mb I  I16..4: 45.9% 44.7%  9.4%&#xA;[libx264 @ 0xaaab23ad3e30] mb P  I16..4: 40.6% 37.1%  2.2%  P16..4: 16.5%  0.0%  0.0%  0.0%  0.0%    skip: 3.7%&#xA;[libx264 @ 0xaaab23ad3e30] mb B  I16..4: 16.3% 16.2%  0.2%  B16..8: 25.0%  0.0%  0.0%  direct:19.7%  skip:22.5%  L0:48.7% L1:48.4% BI: 2.9%&#xA;[libx264 @ 0xaaab23ad3e30] 8x8 transform intra:47.5% inter:31.9%&#xA;[libx264 @ 0xaaab23ad3e30] coded y,uvDC,uvAC intra: 15.8% 78.7% 25.0% inter: 2.0% 60.3% 1.8%&#xA;[libx264 @ 0xaaab23ad3e30] i16 v,h,dc,p: 50% 20%  9% 21%&#xA;[libx264 @ 0xaaab23ad3e30] i8 v,h,dc,ddl,ddr,vr,hd,vl,hu: 19% 16% 31%  4%  7%  5%  5%  6%  6%&#xA;[libx264 @ 0xaaab23ad3e30] i4 v,h,dc,ddl,ddr,vr,hd,vl,hu: 36% 20% 33%  2%  2%  2%  1%  2%  2%&#xA;[libx264 @ 0xaaab23ad3e30] i8c dc,h,v,p: 29% 18% 18% 35%&#xA;[libx264 @ 0xaaab23ad3e30] Weighted P-Frames: Y:3.0% UV:2.2%&#xA;[libx264 @ 0xaaab23ad3e30] kb/s:5095.01&#xA;[AVIOContext @ 0xaaab22460eb0] Statistics: 42281852862 bytes read, 2731 seeks&#xA;[AVIOContext @ 0xaaab23ac4de0] Statistics: 901390389 bytes read, 0 seeks&#xA;Conversion failed!&#xA;

    &#xA;

  • AWS Lambda tmp disk limit with ffmpeg

    21 avril 2022, par Almaju

    I am using AWS Lambda to render videos using ffmpeg. It is a basic function that downloads external clips, merges those, then uploads the result to S3.

    &#xA;

    This function needs to be able to scale quickly because I need to generate a lot of videos in a short time period.

    &#xA;

    The problem is that I reach the /tmp disk limit of 512MB because the same lambda environment is reused by the different requests. I have increased that memory limit to temporarily solve the problem but it does not feel scalable.

    &#xA;

    I have looked into EFS but the requirement to use a VPC and a NAT to have internet access sounds really heavy for my simple needs.

    &#xA;

    Is there a way to output the result of ffmpeg directly in S3 (thus not needing the temporary folder) ? Or perhaps force to respawn a clean lambda environment if the memory is about to be full ?

    &#xA;