Recherche avancée

Médias (3)

Mot : - Tags -/pdf

Autres articles (57)

  • Personnaliser en ajoutant son logo, sa bannière ou son image de fond

    5 septembre 2013, par

    Certains thèmes prennent en compte trois éléments de personnalisation : l’ajout d’un logo ; l’ajout d’une bannière l’ajout d’une image de fond ;

  • MediaSPIP v0.2

    21 juin 2013, par

    MediaSPIP 0.2 est la première version de MediaSPIP stable.
    Sa date de sortie officielle est le 21 juin 2013 et est annoncée ici.
    Le fichier zip ici présent contient uniquement les sources de MediaSPIP en version standalone.
    Comme pour la version précédente, il est nécessaire d’installer manuellement l’ensemble des dépendances logicielles sur le serveur.
    Si vous souhaitez utiliser cette archive pour une installation en mode ferme, il vous faudra également procéder à d’autres modifications (...)

  • Mise à disposition des fichiers

    14 avril 2011, par

    Par défaut, lors de son initialisation, MediaSPIP ne permet pas aux visiteurs de télécharger les fichiers qu’ils soient originaux ou le résultat de leur transformation ou encodage. Il permet uniquement de les visualiser.
    Cependant, il est possible et facile d’autoriser les visiteurs à avoir accès à ces documents et ce sous différentes formes.
    Tout cela se passe dans la page de configuration du squelette. Il vous faut aller dans l’espace d’administration du canal, et choisir dans la navigation (...)

Sur d’autres sites (10879)

  • FFmpeg segment desktop capture and send over http

    18 décembre 2014, par static

    I’m trying to capture the desktop video and segment it in order to send it over http to my node.js server, where I want to encode it to multiple bit-rates in order to serve it to clients for live streaming.
    The video has to be received in segments in order to create the manifest for live streaming, because i’m trying to use DASH, and to play the video on the client side using dash.js.

    The problem is that i can’t seem to be able to segment the video properly when i’m sending it to the server.

    This is the ffmpeg command that i’ve tried :

    ffmpeg -rtbufsize 1500M -f dshow -r 10 -i video="UScreenCapture"
    -vcodec libvpx -crf 10 -quality good -cpu-used 3 -b:v 1000k -qmin 10 -qmax 42  -
    threads 2 -vf scale=-1:480 -bufsize 1500 -flags -global_header -map 0 -f stream_
    segment -segment_time 2 -segment_format webm -  http://localhost:3000/stream/22

    I’ve managed to send it over http without segmenting the video, but on the server side i need to receive segments that have a duration of 2 seconds so that i can create the manifest.

    Also processing the video on the server side is also going to be done using ffmpeg(fluent ffmpeg module).
    I’m open to any suggestions.

  • Slow start time in FFmpeg conversion - Seeking advice on optimization and identifying unnecessary flags [closed]

    30 novembre 2023, par Mohamed Dhouib

    I'm currently facing an issue with the startup time of FFmpeg conversion from RTSP stream to DASH stream in my application.
The conversion process takes longer to initiate than expected (sometimes even 15 seconds), impacting overall performance.
I've provided the relevant FFmpeg used options flags below :

    


        "-g 48",
    "-map 0:v:0",
    "-pix_fmt yuv420p",
    "-f dash",
    "-window_size 5",
    "-use_template 1",
    "-g 48",
    "-sc_threshold 0",
    "-vf scale=1920:1080",
    "-c:a aac",
    "-ar 48000",
    "-ac 2",
    "-strict experimental",
    "-max_muxing_queue_size 1024",
    "-c:v libx264",
    "-use_timeline 0"
    `-preset medium`,
    `-b:v 500k`,
    `-s 1280x720`,
    `-r 30`


    


    I'm looking for guidance on optimizing the FFmpeg configuration by adding new flags or identifying any unnecessary flags that might contribute to the slow start time.
The goal is to reduce the time it takes for FFmpeg to start the conversion process.
I appreciate any insights or recommendations on how to improve the startup time of FFmpeg conversion in my application.

    


    Relevant Dependencies :

    


    "@ffmpeg-installer/ffmpeg" : "^1.1.0",
"fluent-ffmpeg" : "^2.1.2",

    


    I am expecting the first stream chunk to be created in the first 3 seconds or so but it takes a lot more than that ( about 10 seconds )

    


  • Waiting between FFMPEG scripts when creating .hdr/.chk and .mpd files on NGINX server using RTMP module

    17 avril 2020, par Mathew Knight

    Wonder if anyone might be able to suggest a solution to and issue i'm having.

    



    I'm running some FFMPEG scripts inside a RTMP server block on an NGINX server running on Ubuntu 18.04.

    



    Basically i'm ingesting the RTMP stream to the server then using FFMPEG to Demux into separate audio and video header and chunk files, then in separate scripts i'm creating two separate manifests for both the audio and video.

    



    The player i have (a development ambisonic, 360 video player) is having problems reading the stream correctly and i believe this is due to the FFMPEG process for the manifests not waiting 2 seconds before running.

    



    Is there a way to program a wait in between the scripts to facilitate this ?

    



    furthermore, is there a way to make the manifest scripts only run once then quit ?

    



    heres my current NGINX .conf

    



    user root;
#user www-data;
worker_processes 1;
pid /run/nginx.pid;
include /etc/nginx/modules-enabled/*.conf;
events {
    worker_connections 768;
    # multi_accept on;
}
http {
    ##
    # Basic Settings
    ##
    sendfile on;
    tcp_nopush on;
    tcp_nodelay on;
    keepalive_timeout 65;
    types_hash_max_size 2048;
    # server_tokens off;
    # server_names_hash_bucket_size 64;
    # server_name_in_redirect off;
    include /etc/nginx/mime.types;
    default_type application/octet-stream;
    ##
    # SSL Settings
    ##
    #ssl_protocols TLSv1 TLSv1.1 TLSv1.2; # Dropping SSLv3, ref: POODLE
    #ssl_prefer_server_ciphers on;
    ##
    # Logging Settings
    ##
    access_log /var/log/nginx/access.log;
    error_log /var/log/nginx/error.log;
    ##
    # Gzip Settings
    ##
    ##
    # Virtual Host Configs
    ##
    include /etc/nginx/conf.d/*.conf;
    include /etc/nginx/sites-enabled/*;
}
rtmp {
        server {
            listen 1935;
            chunk_size 4096;

            application live {
            live on;
            record off;
            interleave off;
            wait_key on;
            meta on;
            wait_video off;
            idle_streams off;
            sync 300ms;
            session_relay on;
            #allow publish 127.0.0.1;
            #allow publish 192.168.2.0/24;
            allow publish all;
            #deny publish all;
            allow play all;    
        #RX stream to FFMPEG, demux audio and video, write .hdr files, start chunking DASH segments .chk
         exec_push sudo ffmpeg -y -re -i 'rtmp://localhost:1935/live/stream' -map 0:1 -pix_fmt yuv420p -maxrate 750k -bufsize 3000k -c:v libvpx-vp9 -s 1920x1080 -keyint_min 60 -g 60 -speed 6 -tile-columns 4 -frame-parallel 1 -threads 8 -static-thresh 0 -max-intra-rate 300 -deadline realtime -lag-in-frames 0 -error-resilient 1 -b:v 6000k -f webm_chunk -header "/var/www/html/dash/video_360.hdr" -chunk_start_index 1 "/var/www/html/dash/video_360_%d.chk" -map 0:2 -c:a libopus -mapping_family 255 -b:a 1024k -vn -f webm_chunk -audio_chunk_duration 2000 -header "/var/www/html/dash/audio_171.hdr" -chunk_start_index 1 "/var/www/html/dash/audio_171_%d.chk" 2>>/var/log/nginx/ffmpegChunk.log;

        #Create video manifest
        exec_push sudo ffmpeg -probesize 500M -analyzeduration 100M -f webm_dash_manifest -live 1 -i "/var/www/html/dash/video_360.hdr" -map 0 -c copy -f webm_dash_manifest -live 1 -adaptation_sets "id=0,streams=0" -chunk_start_index 1 -chunk_duration_ms 2000 -minimum_update_period 7200 "/var/www/html/dash/video.mpd" 2>>/var/log/nginx/ffmpegManifestVideo.log;
        #Create audio manifest
        exec_push sudo ffmpeg -probesize 500M -analyzeduration 100M -f webm_dash_manifest -live 1 -i "/var/www/html/dash/audio_171.hdr" -map 0 -c libopus -mapping_family 255 -f webm_dash_manifest -live 1 -adaptation_sets "id=1,streams=0" -chunk_start_index 1 -chunk_duration_ms 2000 -minimum_update_period 7200 "/var/www/html/dash/audio_16ch.mpd" 2>>/var/log/nginx/ffmpegManifestAudio.log;

        ##
        # Record the incoming stream
        ##
        # Record audio and video together
        record all;
        record_path /home/mathewknight/Desktop/StreamRecord/Master;
        record_notify on;
        # Record audio seperately
        recorder audio {
            record audio;
            record_path /home/mathewknight/Desktop/StreamRecord/Audio;
            record_suffix -%d-%b-%y-%T.audio.flv;
            record_notify on;
            }
        # Record video seperately
        recorder video{
            record video;
            record_path /home/mathewknight/Desktop/StreamRecord/Video;
            record_suffix -%d-%b-%y-%T.video.flv;
            record_notify on;
            }

            }


        }

}