Recherche avancée

Médias (0)

Mot : - Tags -/diogene

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

Autres articles (48)

  • Formulaire personnalisable

    21 juin 2013, par

    Cette page présente les champs disponibles dans le formulaire de publication d’un média et il indique les différents champs qu’on peut ajouter. Formulaire de création d’un Media
    Dans le cas d’un document de type média, les champs proposés par défaut sont : Texte Activer/Désactiver le forum ( on peut désactiver l’invite au commentaire pour chaque article ) Licence Ajout/suppression d’auteurs Tags
    On peut modifier ce formulaire dans la partie :
    Administration > Configuration des masques de formulaire. (...)

  • Amélioration de la version de base

    13 septembre 2013

    Jolie sélection multiple
    Le plugin Chosen permet d’améliorer l’ergonomie des champs de sélection multiple. Voir les deux images suivantes pour comparer.
    Il suffit pour cela d’activer le plugin Chosen (Configuration générale du site > Gestion des plugins), puis de configurer le plugin (Les squelettes > Chosen) en activant l’utilisation de Chosen dans le site public et en spécifiant les éléments de formulaires à améliorer, par exemple select[multiple] pour les listes à sélection multiple (...)

  • Qu’est ce qu’un masque de formulaire

    13 juin 2013, par

    Un masque de formulaire consiste en la personnalisation du formulaire de mise en ligne des médias, rubriques, actualités, éditoriaux et liens vers des sites.
    Chaque formulaire de publication d’objet peut donc être personnalisé.
    Pour accéder à la personnalisation des champs de formulaires, il est nécessaire d’aller dans l’administration de votre MediaSPIP puis de sélectionner "Configuration des masques de formulaires".
    Sélectionnez ensuite le formulaire à modifier en cliquant sur sont type d’objet. (...)

Sur d’autres sites (10295)

  • How to process remote audio/video stream on WebRTC server in real-time ? [closed]

    7 septembre 2020, par Kartik Rokde

    I'm new to audio/video streaming. I'm using AntMedia Pro for audio/video conferencing. There will be 5-8 hosts who will be speaking and the expected audience size would be 15-20k (need to mention this as it won't be a P2P conferencing, but an MCU architecture).

    


    I want to give a feature where a user can request for "convert voice to female / robot / whatever", which would let the user hear the manipulated voice in the conference.

    


    From what I know is that I want to do a real-time processing on the server to be able to do this. I want to intercept the stream on the server, and do some processing (change the voice) on each of the tracks, and stream it back to the requestor.

    


    The first challenge I'm facing is how to get the stream and/or the individual tracks on the server ?

    


    I did some research on how to process remote WebRTC streams, real-time on the server. I came across some keywords like RTMP ingestion, ffmpeg.

    


    Here are a few questions I went through, but didn't find answers that I'm looking for :

    


      

    1. Receive webRTC video stream using python opencv in real-time
    2. 


    3. Extract frames as images from an RTMP stream in real-time
    4. 


    5. android stream real time video to streaming server
    6. 


    


    I need help in receiving real-time stream on the server (any technology - preferable Python, Golang) and streaming it back.

    


  • Using ffmpeg to watermark a folder of videos

    25 août 2018, par user5947524

    I am using the code below to watermark individual videos one-by-one in a folder :

    ffprobe -v quiet -show_entries stream=width,height -of default=noprint_wrappers=1 dave.mp4
    ffmpeg -i logo.png -y -v quiet -vf scale=width*0.15:-1 scaled.png
    ffmpeg -i dave.mp4 -i scaled.png -filter_complex "overlay=10:main_h-overlay_h-10" dave2.mp4

    The first line gets the width and the height of a video, second line scales the watermark for that video, third line creates a new video watermarked.

    How can I make run for a full folder of 1000 videos ?

    I tried the code below but it corrupted the videos :

    for %%a in ("C:\Users\Work\Desktop\test2\*.mp4") do (
    ffprobe -v quiet -show_entries stream=width,height -of default=noprint_wrappers=1 "%%a"
    ffmpeg -i logo.png -y -v quiet -vf scale=width*0.15:-1 scaled.png
    ffmpeg -i "%%a" -i scaled.png -filter_complex "overlay=10:main_h-overlay_h-10" "C:\Users\Work\Desktop\test2\%%~na.mp4"
    )

    The error I get is :

    [mov,mp4,m4a,3gp,3g2,mj2 @ 0000014545aaaa00] stream 0, offset 0x18039: partial file
    [aac @ 0000014545b708c0] Input buffer exhausted before END element found
    Error while decoding stream #0:1: Invalid data found when processing input
    C:\Users\Work\Desktop\test2\dave.mp4: Invalid data found when processing input
  • Auto delete .ts and .m3u8 files once client receives all .ts files

    11 mars 2019, par Abhishek Mehandiratta

    So I created an express server that gets an mp3 file (which is stored locally right now, but will be taken from mongo db later) and uses ffmpeg to make .m3u8 and .ts files. The files are successfully sent to the client and there are no errors while playing it on the client. I used hls.js to play these files in Chrome. But the server still has those files stored locally. Is there any way the server can know when to delete these files that it stored locally ? There are a lot of files generated by ffmpeg so I can’t just let them stay there forever.

    I used the ffmpeg part of code from hls-server github repo.

    my server file

    index.js

    // just used to run ffmpeg for conversion
    var command = ffmpeg('inp.mp3')
     .on('start', function (commandLine) {
       console.log('command', commandLine);
     }).addOptions([
       '-c:a aac',
       '-b:a 64k',
       '-vn',
       '-hls_list_size 0',
       '-segment_time 10',
     ]).output('files\\output.m3u8');

    var express = require('express');
    var app = express();
    // express middleware to serve individual .ts and .m3u8 files when requested
    app.use(express.static('./files/'));

    app.get('/', function (req, res) {
     command.on('end', function () {
       console.log('done');
       res.write(`
       <code class="echappe-js">&lt;script src=&quot;https://cdn.jsdelivr.net/hls.js/latest/hls.min.js&quot;&gt;&lt;/script&gt;
    &lt;script&gt;<br />
         function onLevelLoaded (event, data) {<br />
           var level_duration = data.details.totalduration;<br />
           console.log(level_duration, data);<br />
         }<br />
         if(Hls.isSupported()) {<br />
           var audio = new Audio();<br />
           var hls = new Hls();<br />
           // requesting files from here<br />
           hls.loadSource('http://localhost:8000/output.m3u8');<br />
           hls.attachMedia(audio);<br />
           hls.on(Hls.Events.LEVEL_LOADED, onLevelLoaded);<br />
           hls.on(Hls.Events.FRAG_BUFFERED, (e, d) =&gt; {<br />
             console.log(e, d);<br />
           });<br />
         }<br />
       &lt;/script&gt;

    `) ;
    res.end() ;
    }).run() ;
    }) ;

    app.listen(8000) ;