Recherche avancée

Médias (39)

Mot : - Tags -/audio

Autres articles (63)

  • Multilang : améliorer l’interface pour les blocs multilingues

    18 février 2011, par

    Multilang est un plugin supplémentaire qui n’est pas activé par défaut lors de l’initialisation de MediaSPIP.
    Après son activation, une préconfiguration est mise en place automatiquement par MediaSPIP init permettant à la nouvelle fonctionnalité d’être automatiquement opérationnelle. Il n’est donc pas obligatoire de passer par une étape de configuration pour cela.

  • 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) (...)

  • 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 (...)

Sur d’autres sites (7371)

  • ffmpeg says : "option framerate not found"

    16 juillet 2013, par Jason

    Good afternoon.

    I've been trying to use ffmpeg to split a .mpeg into a sequence of .jpeg images. Please note that this is the inverse problem of the one specified here, but the problem I'm facing is not the same as the problem the author of that thread is facing.

    Specifically, I have tried all the following mpeg codecs available in my ffmpeg installation :

    DEV D  ffv1            FFmpeg video codec #1
    DEVSD  ffvhuff         Huffyuv FFmpeg variant
    DEVSDT mpeg1video      MPEG-1 video
    D V DT mpeg1video_vdpau MPEG-1 video (VDPAU acceleration)
    D V D  mpeg2_crystalhd MPEG-2 Video (CrystalHD acceleration)
    DEVSDT mpeg2video      MPEG-2 video
    DEVSDT mpeg4           MPEG-4 part 2
    D V D  mpeg4_crystalhd MPEG-4 Part 2 (CrystalHD acceleration)
    D V DT mpeg4_vdpau     MPEG-4 part 2 (VDPAU)
    D VSDT mpegvideo       MPEG-1 video
    D V DT mpegvideo_vdpau MPEG-1/2 video (VDPAU acceleration)
    D VSDT mpegvideo_xvmc  MPEG-1/2 video XvMC (X-Video Motion Compensation)
    DEVSD  msmpeg4         MPEG-4 part 2 Microsoft variant version 3
    D V D  msmpeg4_crystalhd MPEG-4 Part 2 Microsoft variant version 3 (CrystalHD acceleration)
    D VSD  msmpeg4v1       MPEG-4 part 2 Microsoft variant version 1
    DEVSD  msmpeg4v2       MPEG-4 part 2 Microsoft variant version 2

    I've tried supplying ffmpeg with all different codecs to try to split an input .mpeg video file with 2548 frames into 2548 .jpegs, by using the -vcodec option :

    ffmpeg -r 2548 -i frames.mpeg frames_%06d.jpg -vcodec $codec

    where $codec is any codec among the ones listed above, e.g. ffv1, mpeg4, etc. However, all my efforts result in the following error :

    [NULL @ 0x1948f20] Value 4707126720094797824.000000 for parameter 'probesize' out of range
    [NULL @ 0x1948f20] Value 4707126720094797824.000000 for parameter 'analyzeduration' out of range
    [NULL @ 0x1948f20] Value 4697254411347427328.000000 for parameter 'indexmem' out of range
    [NULL @ 0x1948f20] Value 4703785510416416768.000000 for parameter 'rtbufsize' out of range
    [NULL @ 0x1948f20] Value -4616189618054758400.000000 for parameter 'fpsprobesize' out of range
    [NULL @ 0x1948f20] Value 4607182418800017408.000000 for parameter 'f_err_detect' out of     range
    [NULL @ 0x1948f20] Value 4607182418800017408.000000 for parameter 'err_detect' out of range
    Option framerate not found.  

    Which is weird, because I've actually specified the frame rate parameter through the -r switch. I googled a bit and it appears that this error was mentioned approximately a year and a half ago on the ffmpeg bug tracker but that information makes little sense to me because it's relevant to the devs. Curiously, if I interchange the position of the parameters and put -r after -i or even after -vcodec, the error message changes to :

    [NULL @ 0x24abf20] Value 4707126720094797824.000000 for parameter 'probesize' out of range
    [NULL @ 0x24abf20] Value 4707126720094797824.000000 for parameter 'analyzeduration' out of range
    [NULL @ 0x24abf20] Value 4697254411347427328.000000 for parameter 'indexmem' out of range
    [NULL @ 0x24abf20] Value 4703785510416416768.000000 for parameter 'rtbufsize' out of range
    [NULL @ 0x24abf20] Value -4616189618054758400.000000 for parameter 'fpsprobesize' out of  range
    [NULL @ 0x24abf20] Value 4607182418800017408.000000 for parameter 'f_err_detect' out of  range
    [NULL @ 0x24abf20] Value 4607182418800017408.000000 for parameter 'err_detect' out of range
    [NULL @ 0x24b23c0] Value 4686111960511545344.000000 for parameter 'b' out of range
    [NULL @ 0x24b23c0] Value 4683532506232782848.000000 for parameter 'ab' out of range
    [NULL @ 0x24b23c0] Value 4705844345939427328.000000 for parameter 'bt' out of range
    [NULL @ 0x24b23c0] Value 4617315517961601024.000000 for parameter 'me_method' out of range
    [NULL @ 0x24b23c0] Value 4622945017495814144.000000 for parameter 'g' out of range
    [NULL @ 0x24b23c0] Value 4611686018427387904.000000 for parameter 'qmin' out of range
    [NULL @ 0x24b23c0] Value 4629418941960159232.000000 for parameter 'qmax' out of range
    [NULL @ 0x24b23c0] Value 4613937818241073152.000000 for parameter 'qdiff' out of range
    [NULL @ 0x24b23c0] Value -4616189618054758400.000000 for parameter 'wpredp' out of range
    [NULL @ 0x24b23c0] Value 4607182418800017408.000000 for parameter 'bug' out of range
    [NULL @ 0x24b23c0] Value 4607182418800017408.000000 for parameter 'er' out of range
    [NULL @ 0x24b23c0] Value 4607182418800017408.000000 for parameter 'err_detect' out of range
    [NULL @ 0x24b23c0] Value 4613937818241073152.000000 for parameter 'ec' out of range
    [NULL @ 0x24b23c0] Value 4620693217682128896.000000 for parameter 'ildctcmp' out of range
    [NULL @ 0x24b23c0] Value 4620693217682128896.000000 for parameter 'subq' out of range
    [NULL @ 0x24b23c0] Value 4696837138094751744.000000 for parameter 'ibias' out of range
    [NULL @ 0x24b23c0] Value 4696837138094751744.000000 for parameter 'pbias' out of range
    [NULL @ 0x24b23c0] Value 4642507528377204736.000000 for parameter 'lmin' out of range
    [NULL @ 0x24b23c0] Value 4660262442142531584.000000 for parameter 'lmax' out of range
    [NULL @ 0x24b23c0] Value 4696130710463840256.000000 for parameter 'flags2' out of range
    [NULL @ 0x24b23c0] Value 4607182418800017408.000000 for parameter 'threads' out of range
    [NULL @ 0x24b23c0] Value 4620693217682128896.000000 for parameter 'nssew' out of range
    [NULL @ 0x24b23c0] Value -4586705114244317184.000000 for parameter 'profile' out of range
    [NULL @ 0x24b23c0] Value -4586705114244317184.000000 for parameter 'level' out of range
    [NULL @ 0x24b23c0] Value 4623507967449235456.000000 for parameter 'skipcmp' out of range
    [NULL @ 0x24b23c0] Value 4642507528377204736.000000 for parameter 'mblmin' out of range
    [NULL @ 0x24b23c0] Value 4660262442142531584.000000 for parameter 'mblmax' out of range
    [NULL @ 0x24b23c0] Value 4643211215818981376.000000 for parameter 'mepc' out of range
    [NULL @ 0x24b23c0] Value 4607182418800017408.000000 for parameter 'bidir_refine' out of range
    [NULL @ 0x24b23c0] Value -4616189618054758400.000000 for parameter 'cqp' out of range
    [NULL @ 0x24b23c0] Value 4627730092099895296.000000 for parameter 'keyint_min' out of range
    [NULL @ 0x24b23c0] Value 4607182418800017408.000000 for parameter 'refs' out of range
    [NULL @ 0x24b23c0] Value -4616189618054758400.000000 for parameter 'directpred' out of range
    [NULL @ 0x24b23c0] Value 4618441417868443648.000000 for parameter 'sc_factor' out of range
    [NULL @ 0x24b23c0] Value 4643211215818981376.000000 for parameter 'mv0_threshold' out of range
    [NULL @ 0x24b23c0] Value 4630826316843712512.000000 for parameter 'b_sensitivity' out of range
    [NULL @ 0x24b23c0] Value -4616189618054758400.000000 for parameter 'compression_level' out of range
    [NULL @ 0x24b23c0] Value -4616189618054758400.000000 for parameter 'min_prediction_order' out of range
    [NULL @ 0x24b23c0] Value -4616189618054758400.000000 for parameter 'max_prediction_order' out of range
    [NULL @ 0x24b23c0] Value -4616189618054758400.000000 for parameter 'prediction_order_method' out of range
    [NULL @ 0x24b23c0] Value -4616189618054758400.000000 for parameter 'min_partition_order' out of range
    [NULL @ 0x24b23c0] Value -4616189618054758400.000000 for parameter 'max_partition_order' out of range
    [NULL @ 0x24b23c0] Value 4607182418800017408.000000 for parameter 'ticks_per_frame' out of range
    [NULL @ 0x24b23c0] Value 4611686018427387904.000000 for parameter 'color_primaries' out of range
    [NULL @ 0x24b23c0] Value 4611686018427387904.000000 for parameter 'color_trc' out of range
    [NULL @ 0x24b23c0] Value 4611686018427387904.000000 for parameter 'colorspace' out of range
    [NULL @ 0x24b23c0] Value -4616189618054758400.000000 for parameter 'aq_mode' out of range
    [NULL @ 0x24b23c0] Value -4616189618054758400.000000 for parameter 'rc_lookahead' out of range
    [NULL @ 0x24b23c0] Value -4616189618054758400.000000 for parameter 'lpc_type' out of range
    [NULL @ 0x24b23c0] Value -4616189618054758400.000000 for parameter 'lpc_passes' out of range
    [NULL @ 0x24b23c0] Value 4613937818241073152.000000 for parameter 'thread_type' out of range
    [NULL @ 0x24b23c0] Value -4616189618054758400.000000 for parameter 'request_sample_fmt' out of range
    frames.mpeg: could not find codec parameters

    I'm at a loss as to what to do with this problem, and am looking for some assistance.

    Kind regards,

    Jason

  • Escape character "|" error (Linux command)

    22 mars 2013, par user1812668

    I'm trying to run a Linux command in Java.

    This is the command :

    "ffmpeg -i rtmp ://192.168.1.112/garage/stream26g -f mpegts -acodec libmp3lame -ar 48000 -ab 64000 -s 480x320 -r 30 -vcodec libx264 -b 544k -flags +loop -cmp +chroma -partitions +parti4x4+partp8x8+partb8x8 -subq 5 -trellis 2 -refs 0 -coder 0 -me_range 16 -keyint_min 25 -sc_threshold 40 -i_qfactor 0.71 -bt 200k -maxrate 544k -bufsize 544k -rc_eq 'blurCplx^(1-qComp)' -qcomp 0.6 -qmin 10 -qmax 30 -qdiff 4 -level 30 -aspect 480:320 -g 30 -async 2 - | vod - 10 stream/stream26g/sample stream/stream26g/stream.m3u8 http://www.tshizerbia.com//video/ 5" ;

    But it gives me an error :

    Unable to find a suitable output format for |

    And I don't know what is the problem

    I used this to run the command

    Process p = Runtime.getRuntime().exec(command);

    If I put \\| in the string the message error is :

    Unable to find a suitable output format for |

    How can I escape this character ? Any ideas ?

  • Live streaming : node-media-server + Dash.js configured for real-time low latency

    7 juillet 2021, par Maoration

    We're working on an app that enables live monitoring of your back yard.
Each client has a camera connected to the internet, streaming to our public node.js server.

    



    I'm trying to use node-media-server to publish an MPEG-DASH (or HLS) stream to be available for our app clients, on different networks, bandwidths and resolutions around the world.

    



    Our goal is to get as close as possible to live "real-time" so you can monitor what happens in your backyard instantly.

    



    The technical flow already accomplished is :

    



      

    1. ffmpeg process on our server processes the incoming camera stream (separate child process for each camera) and publishes the stream via RTSP on the local machine for node-media-server to use as an 'input' (we are also saving segmented files, generating thumbnails, etc.). the ffmpeg command responsible for that is :

      



      -c:v libx264 -preset ultrafast -tune zerolatency -b:v 900k -f flv rtmp://127.0.0.1:1935/live/office

    2. 


    3. node-media-server is running with what I found as the default configuration for 'live-streaming'

      



      private NMS_CONFIG = {
server: {
  secret: 'thisisnotmyrealsecret',
},
rtmp_server: {
  rtmp: {
    port: 1935,
    chunk_size: 60000,
    gop_cache: false,
    ping: 60,
    ping_timeout: 30,
  },
  http: {
    port: 8888,
    mediaroot: './server/media',
    allow_origin: '*',
  },
  trans: {
    ffmpeg: '/usr/bin/ffmpeg',
    tasks: [
      {
        app: 'live',
        hls: true,
        hlsFlags: '[hls_time=2:hls_list_size=3:hls_flags=delete_segments]',
        dash: true,
        dashFlags: '[f=dash:window_size=3:extra_window_size=5]',
      },
    ],
  },
},


      



      } ;

    4. 


    5. As I understand it, out of the box NMS (node-media-server) publishes the input stream it gets in multiple output formats : flv, mpeg-dash, hls.
with all sorts of online players for these formats I'm able to access and the stream using the url on localhost. with mpeg-dash and hls I'm getting anything between 10-15 seconds of delay, and more.

    6. 


    




    



    My goal now is to implement a local client-side mpeg-dash player, using dash.js and configure it to be as close as possible to live.

    



    my code for that is :

    



    

    

    &#xD;&#xA;&#xD;&#xA;    &#xD;&#xA;        &#xD;&#xA;        &#xD;&#xA;    &#xD;&#xA;    &#xD;&#xA;        <div>&#xD;&#xA;            <video autoplay="" controls=""></video>&#xD;&#xA;        </div>&#xD;&#xA;        <code class="echappe-js">&lt;script src=&quot;https://cdnjs.cloudflare.com/ajax/libs/dashjs/3.0.2/dash.all.min.js&quot;&gt;&lt;/script&gt;&#xD;&#xA;&#xD;&#xA;        &lt;script&gt;&amp;#xD;&amp;#xA;            (function(){&amp;#xD;&amp;#xA;                // var url = &quot;https://dash.akamaized.net/envivio/EnvivioDash3/manifest.mpd&quot;;&amp;#xD;&amp;#xA;                var url = &quot;http://localhost:8888/live/office/index.mpd&quot;;&amp;#xD;&amp;#xA;                var player = dashjs.MediaPlayer().create();&amp;#xD;&amp;#xA;                &amp;#xD;&amp;#xA;                &amp;#xD;&amp;#xA;&amp;#xD;&amp;#xA;                // config&amp;#xD;&amp;#xA;                targetLatency = 2.0;        // Lowering this value will lower latency but may decrease the player&amp;#x27;s ability to build a stable buffer.&amp;#xD;&amp;#xA;                minDrift = 0.05;            // Minimum latency deviation allowed before activating catch-up mechanism.&amp;#xD;&amp;#xA;                catchupPlaybackRate = 0.5;  // Maximum catch-up rate, as a percentage, for low latency live streams.&amp;#xD;&amp;#xA;                stableBuffer = 2;           // The time that the internal buffer target will be set to post startup/seeks (NOT top quality).&amp;#xD;&amp;#xA;                bufferAtTopQuality = 2;     // The time that the internal buffer target will be set to once playing the top quality.&amp;#xD;&amp;#xA;&amp;#xD;&amp;#xA;&amp;#xD;&amp;#xA;                player.updateSettings({&amp;#xD;&amp;#xA;                    &amp;#x27;streaming&amp;#x27;: {&amp;#xD;&amp;#xA;                        &amp;#x27;liveDelay&amp;#x27;: 2,&amp;#xD;&amp;#xA;                        &amp;#x27;liveCatchUpMinDrift&amp;#x27;: 0.05,&amp;#xD;&amp;#xA;                        &amp;#x27;liveCatchUpPlaybackRate&amp;#x27;: 0.5,&amp;#xD;&amp;#xA;                        &amp;#x27;stableBufferTime&amp;#x27;: 2,&amp;#xD;&amp;#xA;                        &amp;#x27;bufferTimeAtTopQuality&amp;#x27;: 2,&amp;#xD;&amp;#xA;                        &amp;#x27;bufferTimeAtTopQualityLongForm&amp;#x27;: 2,&amp;#xD;&amp;#xA;                        &amp;#x27;bufferToKeep&amp;#x27;: 2,&amp;#xD;&amp;#xA;                        &amp;#x27;bufferAheadToKeep&amp;#x27;: 2,&amp;#xD;&amp;#xA;                        &amp;#x27;lowLatencyEnabled&amp;#x27;: true,&amp;#xD;&amp;#xA;                        &amp;#x27;fastSwitchEnabled&amp;#x27;: true,&amp;#xD;&amp;#xA;                        &amp;#x27;abr&amp;#x27;: {&amp;#xD;&amp;#xA;                            &amp;#x27;limitBitrateByPortal&amp;#x27;: true&amp;#xD;&amp;#xA;                        },&amp;#xD;&amp;#xA;                    }&amp;#xD;&amp;#xA;                });&amp;#xD;&amp;#xA;&amp;#xD;&amp;#xA;                console.log(player.getSettings());&amp;#xD;&amp;#xA;&amp;#xD;&amp;#xA;                setInterval(() =&gt; {&amp;#xD;&amp;#xA;                  console.log(&amp;#x27;Live latency= &amp;#x27;, player.getCurrentLiveLatency());&amp;#xD;&amp;#xA;                  console.log(&amp;#x27;Buffer length= &amp;#x27;, player.getBufferLength(&amp;#x27;video&amp;#x27;));&amp;#xD;&amp;#xA;                }, 3000);&amp;#xD;&amp;#xA;&amp;#xD;&amp;#xA;                player.initialize(document.querySelector(&quot;#videoPlayer&quot;), url, true);&amp;#xD;&amp;#xA;&amp;#xD;&amp;#xA;            })();&amp;#xD;&amp;#xA;&amp;#xD;&amp;#xA;        &lt;/script&gt;&#xD;&#xA;    &#xD;&#xA;

    &#xD;&#xA;

    &#xD;&#xA;

    &#xD;&#xA;&#xA;&#xA;

    with the online test video (https://dash.akamaized.net/envivio/EnvivioDash3/manifest.mpd) I see that the live latency value is close to 2 secs (but I have no way to actually confirm it. it's a video file streamed. in my office I have a camera so I can actually compare latency between real-life and the stream I get).&#xA;however when working locally with my NMS, it seems this value does not want to go below 20-25 seconds.

    &#xA;&#xA;

    Am I doing something wrong ? any configuration on the player (client-side html) I'm forgetting ?&#xA;or is there a missing configuration I should add on the server side (NMS) ?

    &#xA;