Recherche avancée

Médias (91)

Autres articles (5)

  • Les autorisations surchargées par les plugins

    27 avril 2010, par

    Mediaspip core
    autoriser_auteur_modifier() afin que les visiteurs soient capables de modifier leurs informations sur la page d’auteurs

  • Gestion de la ferme

    2 mars 2010, par

    La ferme est gérée dans son ensemble par des "super admins".
    Certains réglages peuvent être fais afin de réguler les besoins des différents canaux.
    Dans un premier temps il utilise le plugin "Gestion de mutualisation"

  • Les tâches Cron régulières de la ferme

    1er décembre 2010, par

    La gestion de la ferme passe par l’exécution à intervalle régulier de plusieurs tâches répétitives dites Cron.
    Le super Cron (gestion_mutu_super_cron)
    Cette tâche, planifiée chaque minute, a pour simple effet d’appeler le Cron de l’ensemble des instances de la mutualisation régulièrement. Couplée avec un Cron système sur le site central de la mutualisation, cela permet de simplement générer des visites régulières sur les différents sites et éviter que les tâches des sites peu visités soient trop (...)

Sur d’autres sites (2046)

  • Evolution #4552 : Appliquer tout le temps la classe demandée à lien_ou_expose

    17 septembre 2020, par RastaPopoulos ♥

    +1 pour pouvoir spécifier la classe d’exposition aussi, encore plus, parce que "on" ok par défaut, mais c’est super chiant d’imposer des classes quand on a un système cohérent déjà en place

  • I have a problem with node js rtsp streaming server

    11 décembre 2022, par sangeun jo

    I made rtsp cctv streaming server with nodjs.

    


    But it is not stable.

    


    Some cctvs works well but others are not.

    


    First I thought rtsp url has its own problem, but it may not.
Because the url worked well in vlc player.

    


    I don't know what I'm missing.

    


    below is my whole code related cctv streaming.

    


    

    

    var express = require('express');
var router = express.Router();
var kill  = require('tree-kill');
var fs = require('fs');
var path = require('path');

var ffmpeg = require('fluent-ffmpeg');
var ffmpegInstaller = require('@ffmpeg-installer/ffmpeg');
ffmpeg.setFfmpegPath(ffmpegInstaller.path)

var streams = {};

//start cctv
router.post('/', (req, res) => {

  var cname = req.body.cname;
  var url = req.body.url;

  //if there is same cctv name
  if(streams[cname] != null) {
    res.status(409).send("duplicate name");
    return;
  };

  //create dir as given cctv name;
  mkdir(cname);

  stream = ffmpeg(url).addOptions([
    '-hls_time 5', 
    '-hls_list_size 10',
    '-hls_flags delete_segments',
    '-f hls' 
  ]).output('./public/video/' + cname + '/'  + cname + '.m3u8'); //save path

  console.log("Start cctv streaming");
  stream.on('error', function(err, stdout, stderr) {
    console.log("cctv has been stoped");
    console.log(err);
  });

  stream.run(); 

  streams[cname] = stream;
  res.status(201).send("OK");
});

//bring cctv pid by cctv name
router.get('/:cname', (req, res) => {
  var cname = req.params.cname;

  if(streams[cname] == null) {
    res.status(404).send("not found such a cctv");
    return;
  };

  var pid = streams[cname].ffmpegProc.pid;
  res.send({"pid": pid});
});


//stop cctv by pid 
router.delete('/:cname', async (req, res) => {
  var cname = req.params.cname;
  
  //no cctv
  if(streams[cname] == null) {
    res.status(404).send("not found such a cctv");
    return;
  };


  //del dir
  var filePath = './public/video/' +  cname;
  fs.rmdir(filePath, { recursive: true }, (err) => {
    if (err) {
      console.log(err)
    } else {
      console.log('dir is deleted.');
    }
  });

  //var pid = streams[cname].ffmpegProc.pid;
  streams[cname].kill();
  res.status(204).send("OK");
});

const mkdir = (name) => {
  var root = './public/video/';
  if(!fs.existsSync(root + name)){
    fs.mkdirSync(root + name);
  }
}

    


    


    



    And this is ts file save folder.
cctv1 dosen't work well but cctv2 works well.
(cctv1 started first but created less ts file than cctv2.)
enter image description here

    


  • Struggling to make ffmpeg function properly on Azure's app service [closed]

    26 novembre 2023, par rickkorsten

    I've developed a backend using Node.js and Express, with certain functionalities relying on ffmpeg. While everything runs smoothly locally, I've encountered challenges after deploying the backend to Azure as an app service. I've attempted several solutions, such as installing ffmpeg via the SSH command line and adding a deploy.cmd file, but none have proven effective. Has anyone successfully integrated ffmpeg with an Azure app service and could offer guidance ?