Recherche avancée

Médias (1)

Mot : - Tags -/3GS

Autres articles (66)

  • Gestion des droits de création et d’édition des objets

    8 février 2011, par

    Par défaut, beaucoup de fonctionnalités sont limitées aux administrateurs mais restent configurables indépendamment pour modifier leur statut minimal d’utilisation notamment : la rédaction de contenus sur le site modifiables dans la gestion des templates de formulaires ; l’ajout de notes aux articles ; l’ajout de légendes et d’annotations sur les images ;

  • Supporting all media types

    13 avril 2011, par

    Unlike most software and media-sharing platforms, MediaSPIP aims to manage as many different media types as possible. The following are just a few examples from an ever-expanding list of supported formats : images : png, gif, jpg, bmp and more audio : MP3, Ogg, Wav and more video : AVI, MP4, OGV, mpg, mov, wmv and more text, code and other data : OpenOffice, Microsoft Office (Word, PowerPoint, Excel), web (html, CSS), LaTeX, Google Earth and (...)

  • Dépôt de média et thèmes par FTP

    31 mai 2013, par

    L’outil MédiaSPIP traite aussi les média transférés par la voie FTP. Si vous préférez déposer par cette voie, récupérez les identifiants d’accès vers votre site MédiaSPIP et utilisez votre client FTP favori.
    Vous trouverez dès le départ les dossiers suivants dans votre espace FTP : config/ : dossier de configuration du site IMG/ : dossier des média déjà traités et en ligne sur le site local/ : répertoire cache du site web themes/ : les thèmes ou les feuilles de style personnalisées tmp/ : dossier de travail (...)

Sur d’autres sites (7734)

  • MPEG DASH (MPD) to MP4 in Node.js ?

    28 janvier 2024, par Hello World

    I am trying to convert streams to .mp4 files. I have successfully converted an HLS to MP4 using fluent-ffmpeg package on version 2.1.2. I did so with with the following code :

    


    var ffmpegCommand = ffmpeg();
            ffmpegCommand
            .input(HLS FILE HERE)
            .inputOptions('-protocol_whitelist file,http,https,tcp,tls,crypto,data')
            .on("error", (err, stdout, stderr) => {
                console.log(err)
                let error = new Error(err.message)
                error.code = err.code || 'FILE_CONVERSION_M3U8_TO_MP3/UNKNOWN_ERROR';
                error.status = err.status || 500;

                console.log('An error occurred: ' + err.message, err, stderr);
                reject(error)
            })
            .on("end", () => {
                console.log(temporaryFilePath2)
                resolve(temporaryFilePath2);
            })
            .on('progress', function(progress) {
                console.log('progress: ' + (progress.percent || 0).toFixed(2) + '%。');
                progressGathering.push((progress.percent || 0).toFixed(2))

                if(progressGathering.length == 10 && progressGathering[9] == 0.00){
                    let error = new Error("File is a live stream.")
                    error.code = 'FILE_CONVERSION_M3U8_TO_MP3/LIVESTREAM_SUPPORT'
                    error.status = 501

                    ffmpegCommand.kill()
                    reject(error)
                }
            })
            .inputOptions('-allowed_extensions ALL')
            .outputOptions("-c copy")
            .output(temporaryFilePath2)
            .run();

            setTimeout(() => {
                ffmpegCommand.kill();
                let error = new Error("The file selected was too large or the network was hanging. Conversion timeout.")
                error.code = 'FILE_CONVERSION_M3U8_TO_MP3/TIMEOUT'
                error.status = 599;
                reject(error)
            }, 300000) // 5 minutes


    


    However, when I attempt something similar with a mpd file url in the input, I get several errors that are all the same :

    


    ffmpeg exited with code 1: https://dash.akamaized.net/akamai/bbb_30fps/bbb_30fps.mpd: Invalid data found when processing input

    


    Is this something fluent-ffmpeg can't handle ? If so, I would like to know another package that can accomplish this.

    


  • dash.js : four channels audio streaming

    19 juillet 2016, par Carlos Chacon

    Does dash.js supports 4 channels in the audio stream ?

    I’m using mp4 container : video : h254 and audio : AAC.

    For the case that the AAC audio stream is 2 channels it works fine, both video and audio play correctly. But 4 channels does NOT work.

    I’m using FFMPEG to create the files and WOWZA to setup the DASH streaming.

    For the case that the AAC audio stream is 4 channels I get the following error :

    Video can't be played because the file is corrupt.

    Command line to generate the 2-channels file :

    ffmpeg -i video_in.mp4 -i audio_in_4ch.wav -c:v copy -c:a aac -ac 2 output_2channels.mp4

    Command line to generate the 4-channels file :

    ffmpeg -i video_in.mp4 -i audio_in_4ch.wav -c:v copy -c:a aac -ac 4 output_4channels.mp4

    This is the fmmpeg -i information printed for each file :

    2 Channels output file details :

    Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'output_2channels.mp4':
     Metadata:
       major_brand     : isom
       minor_version   : 512
       compatible_brands: isomiso2avc1mp41
       encoder         : Lavf57.37.101
     Duration: 00:00:17.59, start: 0.000000, bitrate: 901 kb/s
       Stream #0:0(eng): Video: h264 (Constrained Baseline) (avc1 / 0x31637661), yuv420p, 1024x512 [SAR 1:1 DAR 2:1], 894 kb/s, 29.97 fps, 29.97 tbr, 30k tbn, 59.94 tbc (default)
       Metadata:
         handler_name    : VideoHandler
       Stream #0:1(und): Audio: aac (LC) (mp4a / 0x6134706D), 48000 Hz, stereo, fltp, 129 kb/s (default)
       Metadata:
         handler_name    : SoundHandler

    4 Channels output file details :

    Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'output_4channels.mp4':
     Metadata:
       major_brand     : isom
       minor_version   : 512
       compatible_brands: isomiso2avc1mp41
       encoder         : Lavf57.37.101
     Duration: 00:00:17.59, start: 0.000000, bitrate: 1038 kb/s
       Stream #0:0(eng): Video: h264 (Constrained Baseline) (avc1 / 0x31637661), yuv420p, 1024x512 [SAR 1:1 DAR 2:1], 894 kb/s, 29.97 fps, 29.97 tbr, 30k tbn, 59.94 tbc (default)
       Metadata:
         handler_name    : VideoHandler
       Stream #0:1(und): Audio: aac (LC) (mp4a / 0x6134706D), 48000 Hz, 4.0, fltp, 265 kb/s (default)
       Metadata:
         handler_name    : SoundHandler

    4 Channels output file mdp file :

    <?xml version="1.0" encoding="UTF-8"?>
    <mpd xmlns="urn:mpeg:dash:schema:mpd:2011" profiles="urn:mpeg:dash:profile:isoff-live:2011" type="static" publishtime="2016-07-19T05:56:28Z" mediapresentationduration="PT17.585S" minbuffertime="PT1.5S">
    <programinformation>
       
    </programinformation>
    <location>http://192.168.0.103:1935/vod/_definst_/mp4:output_4channels.mp4/manifest_w882219731.mpd</location>
    <period start="PT0.0S">
       <baseurl>http://192.168.0.103:1935/vod/_definst_/mp4:output_4channels.mp4/</baseurl>
       <adaptationset mimetype="video/mp4" width="1024" height="512" par="1024:512" framerate="30000/1001" segmentalignment="true" startwithsap="1" subsegmentalignment="true" subsegmentstartswithsap="1">
           <segmenttemplate presentationtimeoffset="0" timescale="90000" media="chunk_ctvideo_rid$RepresentationID$_cs$Time$_w882219731_mpd.m4s" initialization="chunk_ctvideo_rid$RepresentationID$_cinit_w882219731_mpd.m4s">
               <segmenttimeline>
                   <s t="0" d="1582650"></s>
               </segmenttimeline>
           </segmenttemplate>
           <representation codecs="avc1.42c01e" sar="1:1" bandwidth="894760"></representation>
       </adaptationset>
       <adaptationset mimetype="audio/mp4" lang="eng" segmentalignment="true" startwithsap="1" subsegmentalignment="true" subsegmentstartswithsap="1">
           <audiochannelconfiguration schemeiduri="urn:mpeg:dash:23003:3:audio_channel_configuration:2011" value="2"></audiochannelconfiguration>
           <segmenttemplate presentationtimeoffset="0" timescale="48000" media="chunk_ctaudio_rid$RepresentationID$_cs$Time$_w882219731_mpd.m4s" initialization="chunk_ctaudio_rid$RepresentationID$_cinit_w882219731_mpd.m4s">
               <segmenttimeline>
                   <s t="0" d="844080"></s>
               </segmenttimeline>
           </segmenttemplate>
           <representation codecs="mp4a.40.2" audiosamplingrate="48000" bandwidth="265851">
           </representation>
       </adaptationset>
    </period>
    </mpd>

    HTML Player Code :

    <code class="echappe-js">&lt;script src=&quot;http://cdn.dashjs.org/latest/dash.all.min.js&quot;&gt;&lt;/script&gt;

  • Avoiding ffmpeg audio drift for live dash output

    22 mai 2021, par mdale

    Have people experienced playback drift with ffmpeg based dash segment generation ? For example :

    &#xA;

    ffmpeg -threads 2 -re -fflags &#x2B;genpts -stream_loop -1 -i AVSyncTest.mp4 \&#xA;-af "aresample=async=1:min_hard_comp=0.100000:first_pts=0" \&#xA;-c:v:0 libx264 \&#xA;-pix_fmt:0 yuv420p \&#xA;-preset:0 medium \&#xA;-a53cc:0 1 \&#xA;-nal-hrd:0 cbr \&#xA;-x264opts:0 scenecut=-1:rc_lookahead=0 -b:v:0 5000k -bufsize:0 500k \&#xA;-force_key_frames:0 "expr:gte(t,n_forced*2)" \&#xA;-bf:0 8 \&#xA;-r 30 \&#xA;-c:a:0 aac  -ar 48000 \&#xA;-b:a:1 96k  \&#xA;-f tee -map 0:v \&#xA;-map 0:a "[f=dash:media_seg_name=&#x27;chunk-stream_\$RepresentationID\$-\$Number%05d\$.mp4&#x27;:init_seg_name=&#x27;init-stream_\$RepresentationID\$.mp4&#x27;:seg_duration=2:utc_timing_url=https\\\://time.akamai.com\\?iso:remove_at_exit=0:use_timeline=0:http_user_agent=ffmpeg_encoder.0:streaming=1:index_correction=1:timeout=1:dash_segment_type=mp4:method=PUT:http_persistent=1:adaptation_sets=&#x27;id=0,streams=v\:0 id=1,streams=a&#x27; ]http://localhost:5000/out.mpd "&#xA;

    &#xA;

    After a bit of playback it starts audio starts to drift. Analysis of the moof (with tools like mp4box) shows 1024 sample size with 93 Moofs with Moof->traf->default_sample_duration=1024 at 48000 sample rate giving segment duration of 1.984 seconds with every 3rd segment or so with 92 Moofs with duration of 1.962 … While each segment starts aligned ( if you reset playback you get alignment) it drifts against continuous playback.

    &#xA;

    Other examples like Akamai’s public stream. show 94 Moofs or 2.005 duration with every 3rd segment or so at the 1.984 duration. (what one would want)

    &#xA;

    Akamai’s (presumably ffmepg based) stream is averaging out to the 2s target where the above ffmpeg command is not …

    &#xA;