Recherche avancée

Médias (91)

Autres articles (69)

  • Contribute to a better visual interface

    13 avril 2011

    MediaSPIP is based on a system of themes and templates. Templates define the placement of information on the page, and can be adapted to a wide range of uses. Themes define the overall graphic appearance of the site.
    Anyone can submit a new graphic theme or template and make it available to the MediaSPIP community.

  • Récupération d’informations sur le site maître à l’installation d’une instance

    26 novembre 2010, par

    Utilité
    Sur le site principal, une instance de mutualisation est définie par plusieurs choses : Les données dans la table spip_mutus ; Son logo ; Son auteur principal (id_admin dans la table spip_mutus correspondant à un id_auteur de la table spip_auteurs)qui sera le seul à pouvoir créer définitivement l’instance de mutualisation ;
    Il peut donc être tout à fait judicieux de vouloir récupérer certaines de ces informations afin de compléter l’installation d’une instance pour, par exemple : récupérer le (...)

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

  • Streaming without Content-Length in response

    21 décembre 2023, par kain

    I'm using Node.js, Express (and connect), and fluent-ffmpeg.

    



    We want to stream audio files that are stored on Amazon S3 through http.

    



    We have all working, except that we would like to add a feature, the on-the-fly conversion of the stream through ffmpeg.

    



    This is working well, the problem is that some browsers checks in advance before actually getting the file.

    



    Incoming requests containing the Range header, for which we reply with a 206 with all the info from S3, have a fundamental problem : we need to know in advance the content-length of the file.

    



    We don't know that since it is going through ffmpeg.

    



    One solution might be to write out the resulting content-length directly on S3 when storing the file (in a special header), but this means we have to go through the pain of having queues to encode after upload just to know the size for future requests.
It also means that if we change compressor or preset we have to go through all this over again, so it is not a viable solution.

    



    We also noticed big differencies in the way Chrome and Safari request the audio tag src, but this may be discussion for another topic.

    



    Fact is that without a proper content-length header in response everything seems to break or browsers goes in an infinite loop or restart the stream at pleasure.

    



    Ideas ?

    


  • ffmpeg extract multiple frames from single input causing SIGSEGV in node.js child_process on lambda env

    11 octobre 2023, par Andrew Still

    I'm trying to dynamically extract multiple different frames from single video input. So the command I'm calling looking like this

    


    ffmpeg -loglevel debug -hide_banner -t 13.269541 -y -ss 0 -i "input-s3-url" -ss 13.269541 -i "same-input-s3-url" -map 0:v -vframes 1 /tmp/ca4cd7a3159743938c5362c171ea2cae.0.png -map 1:v -vframes 1 /tmp/ca4cd7a3159743938c5362c171ea2cae.13.269541.png


    


    It works and everything is good, until I deploy it to lambda. Even though I'm using 10gb of RAM it still failing with error. Locally it works like a charm but not on lambda. I'm not sure what the problem here but i'm regularly (not always) getting SIGSEGV

    


    at ChildProcess.exithandler (node:child_process:402:12)
at ChildProcess.emit (node:events:513:28) 
at ChildProcess.emit (node:domain:489:12)
at maybeClose (node:internal/child_process: 1100:16)
at Process.ChildProcess._handle.onexit (node:internal/child_process:304:5) 
{
code: null, 
killed: false, 
signal: 'SIGSEGV'
cmd: '/opt/bin/ffmpeg -loglevel error -hide_banner -t 131.805393 -y -ss 0 -i "https: //


    


    Double-checked memory usage and it's doesn't look like a reason, but I'm not sure how correct this number

    


    Memory size : 10240 MB Max Memory used : 140 MB

    


    I'm think maybe it's because it's making requests for each input, at least that's what I saw in debug mode, but still have no idea what's the problem here, would appreciate any suggestions/optimizations/help. Thanks

    


    ffmpeg added on lambda using this layer - https://serverlessrepo.aws.amazon.com/applications/us-east-1/145266761615/ffmpeg-lambda-layer

    


  • ffmpeg extract multiple frames from single input

    10 octobre 2023, par Andrew Still

    I'm trying to dynamically extract multiple different frames from single video input. So the command I'm calling looking like this

    


    ffmpeg -loglevel debug -hide_banner -t 13.269541 -y -ss 0 -i "input-s3-url" -ss 13.269541 -i "same-input-s3-url" -map 0:v -vframes 1 /tmp/ca4cd7a3159743938c5362c171ea2cae.0.png -map 1:v -vframes 1 /tmp/ca4cd7a3159743938c5362c171ea2cae.13.269541.png


    


    It works and everything is good, until I deploy it to lambda. Even though I'm using 10gb of RAM it still failing with error. Locally it works like a charm but not on lambda. I'm not sure what the problem here but i'm regularly (not always) getting SIGSEGV

    


    enter image description here

    


    Double-checked memory usage and it's doesn't look like a reason, but I'm not sure how correct this number

    


    enter image description here

    


    I'm think maybe it's because it's making requests for each input, at least that's what I saw in debug mode, but still have no idea what's the problem here, would appreciate any suggestions/optimizations/help. Thanks

    


    ffmpeg added on lambda using this layer - https://serverlessrepo.aws.amazon.com/applications/us-east-1/145266761615/ffmpeg-lambda-layer