Recherche avancée

Médias (0)

Mot : - Tags -/xmlrpc

Aucun média correspondant à vos critères n’est disponible sur le site.

Autres articles (97)

  • MediaSPIP 0.1 Beta version

    25 avril 2011, par

    MediaSPIP 0.1 beta is the first version of MediaSPIP proclaimed as "usable".
    The zip file provided here only contains the sources of MediaSPIP in its standalone version.
    To get a working installation, you must manually install all-software dependencies on the server.
    If you want to use this archive for an installation in "farm mode", you will also need to proceed to other manual (...)

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

  • ANNEXE : Les plugins utilisés spécifiquement pour la ferme

    5 mars 2010, par

    Le site central/maître de la ferme a besoin d’utiliser plusieurs plugins supplémentaires vis à vis des canaux pour son bon fonctionnement. le plugin Gestion de la mutualisation ; le plugin inscription3 pour gérer les inscriptions et les demandes de création d’instance de mutualisation dès l’inscription des utilisateurs ; le plugin verifier qui fournit une API de vérification des champs (utilisé par inscription3) ; le plugin champs extras v2 nécessité par inscription3 (...)

Sur d’autres sites (5854)

  • ffmpeg pause and resume live stream encode

    14 janvier 2021, par ayylmao

    I am trying to use ffmpeg to create a live stream from a video file, encoded on the fly, that can be paused and resumed (like what Plex does). Suspending the ffmpeg process pauses the encoding, but resuming it causes ffmpeg to try to catch up to where it would have been in the stream. I assume there is some kind of internal timestamp that ffmpeg is looking at to keep track of timing. I would like ffmpeg to continue encoding from where it left off.

    


    I am using the "-re" switch to read the file at it's native framerate. I have tried hls and dash formats ; as far as I can tell, they both behave the same. Segmenting the entire file beforehand is not an option, I would like to be able to stream using only temporary files created on the fly.

    


    Here are simplified commands I've been using.

    


    HLS :
ffmpeg -y -re -i "input.mkv" -movflags +frag_keyframe+empty_moov+faststart -f hls -hls_time 2 -hls_list_size 10 -hls_delete_threshold 1 -hls_flags split_by_time+delete_segments+second_level_segment_index -strftime playlist.m3u8

    


    DASH :
ffmpeg -re -i input.mkv" -f dash -seg_duration 2 -window_size 5 -extra_window_size 0 -remove_at_exit 1 playlist.m3u8

    


  • can I h265 video stream using rtmp ? in nginx

    16 juillet 2019, par Hakan Murat Aksüt

    exec_push /usr/bin/ffmpeg -re -i rtmp://localhost:1935/$app/$name -ar 44100 -vcodec libx264 -g 25 -f flv rtmp://localhost/live/$name_hi

    I can broadcast h264 video on my nginxg server. but it doesn’t work when I want to make h265 instead of h264. I found out that this is because rtmp does not support h265. Is there a way to do this using rtmp if possible ?
    if not, what else can be used to stream h265 video in nginx instead of rtmp.

    rtmp {
       server {
               listen 1935;
               chunk_size 4096;

               application src {
                   live on;
                   exec_push /usr/bin/ffmpeg -re -i rtmp://localhost:1935/$app/$name -ar 44100 -vcodec libx264 -g 25 -f flv rtmp://localhost/live/$name_hi;
               }

               application live {
                       live on;
                       hls on;
                       hls_path /usr/share/nginx/hls; #file path for save
                       hls_fragment 1;
                       hls_playlist_length 10;
                       hls_cleanup on;
                       dash on;
                       dash_path /usr/share/nginx/dash; #Sets MPEG-DASH playlist and fragment directory. If the directory does not exists it will be created.
                       dash_fragment 1; #Sets MPEG-DASH fragment length. Defaults to 5 seconds.
                       dash_playlist_length 10; #Sets MPEG-DASH playlist length. Defaults to 30 seconds.

                       dash_cleanup on; `
                      }
    }
  • How to stream and play video automatically using PHP FFmpeg Video Streaming libray

    21 août 2020, par kikabi francis

    Am currently new to ffmpeg video streaming and working on a project to stream mp4 videos using ffmpeg libray https://github.com/aminyazdanpanah/PHP-FFmpeg-video-streaming and Video player https://videojs.com/ using DASH.
Am currently starting the streaming to mpd using commandline, with streaming.php.
I want to start streaming automatically when dash.html with video playing.
and i want to switch between different video qualities on the player, currently it play the same quality set in streaming.php
Here is my code

    


         &#xA;    &#xA;    &#xA;    &#xA;    &#xA;    &#xA;    &#xA;    &#xA;    &#xA;    <video height="480" data-setup="&#x27;{&quot;liveui&quot;:" class="video-js vjs-default-skin" controls="controls"></video>&#xA;        <code class="echappe-js">&lt;script src='http://stackoverflow.com/feeds/tag/app/js/plugins/node/video.js/dist/video.js'&gt;&lt;/script&gt;&#xA;        &lt;script src='http://stackoverflow.com/feeds/tag/app/js/plugins/switcher/videojs-resolution-switcher.js'&gt;&lt;/script&gt;&#xA;        &#xA;        &lt;script src='http://stackoverflow.com/feeds/tag/app/js/plugins/node/dashjs/dist/dash.all.min.js'&gt;&lt;/script&gt;&#xA;        &#xA;        &#xA;        &lt;script src='http://stackoverflow.com/feeds/tag/app/js/plugins/node/videojs-contrib-dash/dist /videojs-dash.js'&gt;&lt;/script&gt;&#xA;         &#xA;        &lt;script&gt;&amp;#xA;&amp;#xA;        var player = videojs(&amp;#x27;example-video&amp;#x27;);&amp;#xA;&amp;#xA;        player.ready(function() {&amp;#xA;            player.updateSrc([&amp;#xA;            {&amp;#xA;              src: &amp;#x27;http://localhost/MovieWeb/media/stream/dash-stream.mpd&amp;#x27;,&amp;#xA;              type: &amp;#x27;application/dash&amp;#x2B;xml&amp;#x27;,&amp;#xA;              label: &amp;#x27;144p&amp;#x27;,&amp;#xA;              res: 144&amp;#xA;            },&amp;#xA;            {&amp;#xA;              src: &amp;#x27;http://localhost/MovieWeb/media/stream/dash-stream.mpd&amp;#x27;,&amp;#xA;              type: &amp;#x27;application/dash&amp;#x2B;xml&amp;#x27;,&amp;#xA;              label: &amp;#x27;240p&amp;#x27;,&amp;#xA;              res: 240&amp;#xA;            },&amp;#xA;            {&amp;#xA;              src: &amp;#x27;http://localhost/MovieWeb/media/stream/dash-stream.mpd&amp;#x27;,&amp;#xA;              type: &amp;#x27;application/dash&amp;#x2B;xml&amp;#x27;,&amp;#xA;              label: &amp;#x27;360p&amp;#x27;,&amp;#xA;              res: 360&amp;#xA;            },&amp;#xA;            {&amp;#xA;              src: &amp;#x27;http://localhost/MovieWeb/media/stream/dash-stream.mpd&amp;#x27;,&amp;#xA;              type: &amp;#x27;application/dash&amp;#x2B;xml&amp;#x27;,&amp;#xA;              label: &amp;#x27;480p&amp;#x27;,&amp;#xA;              res: 480&amp;#xA;            },&amp;#xA;            {&amp;#xA;              src: &amp;#x27;http://localhost/MovieWeb/media/stream/dash-stream.mpd&amp;#x27;,&amp;#xA;              type: &amp;#x27;application/dash&amp;#x2B;xml&amp;#x27;,&amp;#xA;              label: &amp;#x27;720p&amp;#x27;,&amp;#xA;              res: 720&amp;#xA;            },&amp;#xA;            {&amp;#xA;              src: &amp;#x27;http://localhost/MovieWeb/media/stream/dash-stream.mpd&amp;#x27;,&amp;#xA;              type: &amp;#x27;application/dash&amp;#x2B;xml&amp;#x27;,&amp;#xA;              label: &amp;#x27;1080p&amp;#x27;,&amp;#xA;              res: 1080&amp;#xA;            }&amp;#xA;          ])&amp;#xA;         &amp;#xA;          player.play();&amp;#xA;        });&amp;#xA;        player.videoJsResolutionSwitcher();&amp;#xA;        &lt;/script&gt; &#xA;    &#xA;    &#xA;&#xA;&#xA;//video.php&#xA;< ?php&#xA;require ('api/libs/ffmpeg_video_stream/vendor/autoload.php') ;&#xA;use Streaming\Representation ;&#xA;$r_144p  = (new Representation)->setKiloBitrate(95)->setResize(256, 144) ;&#xA;$r_240p  = (new Representation)->setKiloBitrate(150)->setResize(426, 240) ;&#xA;$r_360p  = (new Representation)->setKiloBitrate(276)->setResize(640, 360) ;&#xA;$r_480p  = (new Representation)->setKiloBitrate(750)->setResize(854, 480) ;&#xA;$r_720p  = (new Representation)->setKiloBitrate(2048)->setResize(1280, 720) ;&#xA;$r_1080p = (new Representation)->setKiloBitrate(4096)->setResize(1920, 1080) ;&#xA;$config = [&#xA;      'ffmpeg.binaries'  => 'C :/ffmpeg/bin/ffmpeg.exe',&#xA;      'ffprobe.binaries' => 'C :/ffmpeg/bin/ffprobe.exe',&#xA;      'timeout'          => 3600, // The timeout for the underlying process&#xA;      'ffmpeg.threads'   => 12,   // The number of threads that FFmpeg should use&#xA;  ] ;&#xA;$ffmpeg = Streaming\FFMpeg::create($config) ;&#xA;$video = $ffmpeg->open('media/videos/dir686840/1080p_video.mp4') ;&#xA;$video->dash()&#xA;      ->setAdaption('id=0,streams=v id=1,streams=a')&#xA;      ->x264()&#xA;      ->addRepresentations([$r_360p])&#xA;      ->save('media/stream/dash-stream.mpd') ;&#xA; ?>&#xA;

    &#xA;

    Thank you very much !!

    &#xA;