Recherche avancée

Médias (91)

Autres articles (66)

  • Participer à sa traduction

    10 avril 2011

    Vous pouvez nous aider à améliorer les locutions utilisées dans le logiciel ou à traduire celui-ci dans n’importe qu’elle nouvelle langue permettant sa diffusion à de nouvelles communautés linguistiques.
    Pour ce faire, on utilise l’interface de traduction de SPIP où l’ensemble des modules de langue de MediaSPIP sont à disposition. ll vous suffit de vous inscrire sur la liste de discussion des traducteurs pour demander plus d’informations.
    Actuellement MediaSPIP n’est disponible qu’en français et (...)

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

  • Les formats acceptés

    28 janvier 2010, par

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

Sur d’autres sites (11185)

  • Add logo or watermark to Converted video using ffmpeg and PHP

    27 mars 2022, par Medicare Advisors

    We are converting videos to MP4 using FFMPEG.

    


    We did a lot of research, however we cannot figure out how to add the company logo as a logo or a water mark to the converted video

    


    PHP code

    


    &lt;?php &#xA;$uploads_dir = &#x27;original/&#x27;;&#xA;$file_name = basename($_FILES[&#x27;file&#x27;][&#x27;name&#x27;]);&#xA;$output_name = explode(&#x27;.&#x27;, $file_name)[0];&#xA;$uploaded_file = $uploads_dir . $file_name;&#xA;$convert_status = [&#x27;mp4&#x27; => 0, &#x27;webm&#x27; => 0];&#xA;&#xA;if(isset($_POST[&#x27;submit&#x27;])) {&#xA;  if(move_uploaded_file($_FILES[&#x27;file&#x27;][&#x27;tmp_name&#x27;], $uploaded_file)) {&#xA;    // Make sure to get the correct path to ffmpeg&#xA;    // Run $ where ffmpeg to get the path&#xA;    $ffmpeg = &#x27;/bin/ffmpeg&#x27;;&#xA;    &#xA;    // MP4&#xA;    $video_mp4 = $output_name . &#x27;.mp4&#x27;;&#xA;    exec($ffmpeg . &#x27; -i "&#x27; . $uploaded_file . &#x27;" -vcodec h264 -acodec libfdk_aac "./converted/&#x27; . $video_mp4 . &#x27;" -y 1>convert.txt 2>&amp;1&#x27;, $output, $convert_status[&#x27;mp4&#x27;]);&#xA;&#xA;    // Debug&#xA;    // echo &#x27;<pre>&#x27; . print_r($output, 1) . &#x27; </pre>&#x27;;&#xA;&#xA;   &#xA;&#xA;    // Debug&#xA;    // echo &#x27;<pre>&#x27; . print_r($output, 1) . &#x27; </pre>&#x27;;&#xA;  }&#xA;}&#xA;?>&#xA;

    &#xA;

    The logo we want to add is on : https://propeview.com/wp-content/uploads/2021/08/logo-whiteb.png

    &#xA;

  • hls.js starting a beginning with ANDROID mobile (chrome, webview also) and not live *** but works very nice in deskto, ios .. hls.js 1.0.0 2021-04-01

    27 avril 2021, par Jintor

    I'm streaming a .m3u8 with the latest hls.js 1.0.0 (not rc) but version of 2021-04-01...

    &#xA;

    example : the stream began at 5pm, and now it's 5:15 pm...

    &#xA;

    the stream start at live point in almost all browsers

    &#xA;

    The pattern I see here : ALL browsers in android (tested in Android 10) won't start at live point, only at 0...

    &#xA;

    I did all the tests

    &#xA;

    • Safari desktop => stream live at 5:15

    &#xA;

    • Safari mobile => stream live at 5:15

    &#xA;

    • WebView (Android) => ••• ISSUE : the player starts the stream at 0 (5pm)

    &#xA;

    • WKWebView (apple IOS iphone,ipad) => stream live at 5:15

    &#xA;

    • Chrome Desktop (mac/win) => stream live at 5:15

    &#xA;

    • Chrome MOBILE (Android) => ••• ISSUE : the player starts the stream at 0 (5pm)

    &#xA;

    • Chrome MOBILE (iPhone) => stream live at 5:15

    &#xA;

    • Microsoft EDGE Desktop => stream live at 5:15

    &#xA;

    • Microsoft EDGE mobile (android) => ••• ISSUE : the player starts the stream at 0 (5pm)

    &#xA;

    • Firefox Desktop (mac/win) => stream live at 5:15

    &#xA;

    • Opera Desktop (mac/win) => stream live at 5:15

    &#xA;

    • Opera Mini (iPhone) => stream live at 5:15

    &#xA;

    • Opera Mini (android) => ••• ISSUE : the player starts the stream at 0 (5pm)

    &#xA;

    • Brave Desktop (mac/win) => stream live at 5:15

    &#xA;

    • Brave Mobile (iPhone) => stream live at 5:15

    &#xA;

    • Brave Mobile (android) => ••• ISSUE : the player starts the stream at 0 (5pm)

    &#xA;

    This code

    &#xA;

    <code class="echappe-js">&lt;script src=&quot;https://cdn.jsdelivr.net/npm/hls.js@latest&quot;&gt;&lt;/script&gt;&#xA;    

    &#xA; &lt;script&gt;&amp;#xA;      var video = document.getElementById(&quot;video&quot;);&amp;#xA;      var videoSrc = &quot;https://www.example1.com/streaming/index.m3u8&quot;;&amp;#xA;      if (video.canPlayType(&quot;application/vnd.apple.mpegurl&quot;)) {&amp;#xA;        video.src = videoSrc;&amp;#xA;      } else if (Hls.isSupported()) {&amp;#xA;         var config = {&amp;#xA;            autoStartLoad: true,&amp;#xA;            startPosition: -1,&amp;#xA;            debug: false,&amp;#xA;            capLevelOnFPSDrop: false,&amp;#xA;            capLevelToPlayerSize: false,&amp;#xA;            defaultAudioCodec: undefined,&amp;#xA;            initialLiveManifestSize: 1,&amp;#xA;            maxBufferLength: 30,&amp;#xA;            maxMaxBufferLength: 500,&amp;#xA;            backBufferLength: Infinity,&amp;#xA;            maxBufferSize: 60 * 1000 * 1000,&amp;#xA;            maxBufferHole: 0.5,&amp;#xA;            highBufferWatchdogPeriod: 2,&amp;#xA;            nudgeOffset: 0.1,&amp;#xA;            nudgeMaxRetry: 3,&amp;#xA;            maxFragLookUpTolerance: 0.25,&amp;#xA;            liveSyncDurationCount: 3,&amp;#xA;            liveMaxLatencyDurationCount: Infinity,&amp;#xA;            liveDurationInfinity: false,&amp;#xA;            enableWorker: true,&amp;#xA;            enableSoftwareAES: true,&amp;#xA;            manifestLoadingTimeOut: 10000,&amp;#xA;            manifestLoadingMaxRetry: 1,&amp;#xA;            manifestLoadingRetryDelay: 1000,&amp;#xA;            manifestLoadingMaxRetryTimeout: 64000,&amp;#xA;            startLevel: undefined,&amp;#xA;            levelLoadingTimeOut: 10000,&amp;#xA;            levelLoadingMaxRetry: 4,&amp;#xA;            levelLoadingRetryDelay: 1000,&amp;#xA;            levelLoadingMaxRetryTimeout: 64000,&amp;#xA;            fragLoadingTimeOut: 20000,&amp;#xA;            fragLoadingMaxRetry: 6,&amp;#xA;            fragLoadingRetryDelay: 1000,&amp;#xA;            fragLoadingMaxRetryTimeout: 64000,&amp;#xA;            startFragPrefetch: false,&amp;#xA;            testBandwidth: true,&amp;#xA;            progressive: false,&amp;#xA;            lowLatencyMode: true,&amp;#xA;            fpsDroppedMonitoringPeriod: 5000,&amp;#xA;            fpsDroppedMonitoringThreshold: 0.2,&amp;#xA;            appendErrorMaxRetry: 3,&amp;#xA;            enableWebVTT: true,&amp;#xA;            enableIMSC1: true,&amp;#xA;            enableCEA708Captions: true,&amp;#xA;            stretchShortVideoTrack: false,&amp;#xA;            maxAudioFramesDrift: 1,&amp;#xA;            forceKeyFrameOnDiscontinuity: true,&amp;#xA;            abrEwmaFastLive: 3.0,&amp;#xA;            abrEwmaSlowLive: 9.0,&amp;#xA;            abrEwmaFastVoD: 3.0,&amp;#xA;            abrEwmaSlowVoD: 9.0,&amp;#xA;            abrEwmaDefaultEstimate: 500000,&amp;#xA;            abrBandWidthFactor: 0.95,&amp;#xA;            abrBandWidthUpFactor: 0.7,&amp;#xA;            abrMaxWithRealBitrate: false,&amp;#xA;            maxStarvationDelay: 4,&amp;#xA;            maxLoadingDelay: 4,&amp;#xA;            minAutoBitrate: 0,&amp;#xA;            emeEnabled: false&amp;#xA;        };&amp;#xA;        var hls = new Hls(config);&amp;#xA;        hls.loadSource(videoSrc);&amp;#xA;        hls.attachMedia(video);&amp;#xA;      }   &amp;#xA;      video.addEventListener(&quot;loadedmetadata&quot;, function(){ video.muted = true; video.play(); }, false);&amp;#xA;    &lt;/script&gt;&#xA;

    &#xA;

    // here I added video.muted = true ; video.play() ; to auto start, if I try to autoplay unmuted, many browsers refuse this command...

    &#xA;

    // playsinline="true" is NEEDED for safari

    &#xA;

    ••••••• THE FFMPEG COMMAND (working : it allows me to have 3 to 4 seconds delay ••••••

    &#xA;

    ffmpeg -re -i input.x -c:a aac -c:v libx264 &#xA;-movflags &#x2B;dash -preset ultrafast &#xA;-crf 28 -refs 4 -qmin 4 -pix_fmt yuv420p &#xA;-tune zerolatency -c:a aac -ac 2 -profile:v main &#xA;-flags -global_header -bufsize 969k &#xA;-hls_time 1 -hls_list_size 0 -g 30 &#xA;-start_number 0 -streaming 1 -hls_playlist 1 &#xA;-lhls 1 -hls_playlist_type event -f hls path_to_index.m3u8&#xA;

    &#xA;

    •••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••

    &#xA;

    How can this be fixed ?

    &#xA;

    How can I make play at live point on load in android MOBILE ?

    &#xA;

  • Google AppEngine flex as a transcoder [closed]

    6 septembre 2021, par jACK

    Situation :

    &#xA;

      &#xA;
    • A Nodejs/Express application running on appengine flex.
    • &#xA;

    • Using FFmpeg to cut videos, and merge different types of videos. 1080p 30fps videos, merged video duration usually around 8 hours.
    • &#xA;

    • Need for a massive amout of processing power for those edits.
    • &#xA;

    • The express server needs to be reachable 24/7 & flex is incredibly expensive if run on a 24/7 basis.
    • &#xA;

    &#xA;

    Goal :

    &#xA;

      &#xA;
    • To have a cost efficient ffmpeg transcoder on a private enviroment =>
    • &#xA;

    • Flex instance as a maximum spec, but as its idle reduce the price significantly.
    • &#xA;

    &#xA;

    Or is this a situation where a redesign is imminent ? eg. Compute Engine

    &#xA;

    Tried approach

    &#xA;

      &#xA;
    • B8 Standard instance => Since the payload is pretty big, its causing the B8 instance to crash.
    • &#xA;

    &#xA;

    Thanks.

    &#xA;