Recherche avancée

Médias (91)

Autres articles (111)

  • Script d’installation automatique de MediaSPIP

    25 avril 2011, par

    Afin de palier aux difficultés d’installation dues principalement aux dépendances logicielles coté serveur, un script d’installation "tout en un" en bash a été créé afin de faciliter cette étape sur un serveur doté d’une distribution Linux compatible.
    Vous devez bénéficier d’un accès SSH à votre serveur et d’un compte "root" afin de l’utiliser, ce qui permettra d’installer les dépendances. Contactez votre hébergeur si vous ne disposez pas de cela.
    La documentation de l’utilisation du script d’installation (...)

  • Les notifications de la ferme

    1er décembre 2010, par

    Afin d’assurer une gestion correcte de la ferme, il est nécessaire de notifier plusieurs choses lors d’actions spécifiques à la fois à l’utilisateur mais également à l’ensemble des administrateurs de la ferme.
    Les notifications de changement de statut
    Lors d’un changement de statut d’une instance, l’ensemble des administrateurs de la ferme doivent être notifiés de cette modification ainsi que l’utilisateur administrateur de l’instance.
    À la demande d’un canal
    Passage au statut "publie"
    Passage au (...)

  • De près ou de loin...

    29 avril 2011, par

    Ils ne le savent pas forcément mais sont indispensables
    MediaSPIP est un logiciel open-source, il se base sur d’autres logiciels, et d’autres logiciels lui sont également nécessaires pour fonctionner ... Les personnes ici listées ne savent pas forcément qu’elles ont un rôle important dans le développement, elles ont apporté leur connaissances dans le cadre de la création d’une partie de ces éléments nécessaires ou ont écrit des articles permettant de comprendre certaines choses... il semble indispensable (...)

Sur d’autres sites (6448)

  • Continously running a PHP script waiting for videos to trancode

    12 mai 2017, par Ian

    I’m making a transcoding server which uses FFMPEG to convert videos to flv. After user uploads a video it’s queued for processing in amazon Simple Queue Service. System is linux ubuntu.

    Instead of running CRON each 1min I wonder if it would be possible to continously run several PHP scripts (dowload queued files, process downloaded etc). Each of them would have its own queue which would be read every 10s or so looking for new tasks.

    My question is :

    How to detect if the script is already running ? I’d run CRON each 1min and if one of the programs would not be running I’d load it again. How stuff like that is done on linux ? PID files ?

    thanks for help,
    ian

  • Why does fluent-ffmpeg only work when it throws the error Output stream closed

    29 mars 2024, par volume one

    I am using fluent-ffmpeg to process a video file (and then upload that to Amazon S3). The code is very straightforward but it only works if :

    


      

    • pipe option {end: true} is set in .output()
    • 


    • which has a side-effect that causes the following console log output
    • 


    


    


    Processing : 19.261847354642416% done Processing :
32.365144874807335% done Processing : 48.80978326261429% done Processing : 78.35771917058617%
Processing : 91.49377493455148% done Processing :
99.91264359125745% done An error occurred : Output stream closed

    


    


    Despite that error, it seems the file is generated correctly and it gets uploaded to Amazon S3 fine.

    


    This is the fluent-ffmpeg code :

    


    import {PassThrough} from 'node:stream';
import FFMpeg from 'fluent-ffmpeg';

let PassThroughStream = new PassThrough();

             FFMpeg('/testvideo.mp4')
                    .videoCodec('libx264')
                    .audioCodec('libmp3lame')
                    .size(`640x480`)
                    // Stream output requires manually specifying output formats
                    .format('mp4')
                    .outputOptions('-movflags dash')
                    .on('progress', function (progress) {
                        console.log('Processing: ' + progress.percent + '% done');
                    })
                    .on('error', function (err) {
                        console.log('An error occurred: ' + err.message);
                    })
                    .on('end', function () {
                        console.log('FFMpeg Processing finished!');
                    })
                    .output(PassThroughStream, {end: true})
                    .run();

   // Now upload to S3
    try {
          await s3Upload({
              AWSS3Client: 'mys3client',
              Bucket: 'publicbucket,
              ACL: "public-read",
              ContentType: 'video/mp4',
              Key: 'whoever/whatever.mp4',
              Body: PassThroughStream
           });
    } catch (error) {
                    console.log(`s3Upload error`, error)
                }


    


    If I set the pipe output() option to {end: false} then there is no error from fluent-ffmpeg and I get "Processing: 100% done FFMpeg Processing finished!" as the final console log.

    


    BUT the problem is that the s3Upload() does not do anything. There are no errors. Just no activity.

    


    I feel very uncomfortable letting fluent-ffmpeg end in an error even if the code itself does the job intended. It will also cause testing to fail. What could be the issue ?

    


    The command line code is : ffmpeg -i https:/xxxbucket.s3.amazonaws.com/14555/file-example.mp4 -acodec libmp3lame -vcodec libx264 -filter:v scale=w=trunc(oh*a/2)*2:h=480 -f mp4 -movflags dash pipe:1

    


  • stream usb webcam via http using vlc without transcoding using mjpeg signal from webcam

    10 novembre 2020, par Peter Nußreiner

    I wanna stream my (Microsoft live) USB webcam using vlc from a raspberry.
While it works perfectely fine with transcoding my raspberry does not have enough power.

    


    So I checked the output formats of my webcam using :

    


    ffmpeg -f v4l2 -list_formats all -i /dev/video0


    


    wich gives me the following output :

    


    [video4linux2,v4l2 @ 0x559d5aee36c0] Raw       :     yuyv422 :           YUYV 4:2:2 : 640x480 1280x720 960x544 800x448 640x360 424x240 352x288 320x240 800x600 176x144 160x120 1280x800
[video4linux2,v4l2 @ 0x559d5aee36c0] Compressed:       mjpeg :          Motion-JPEG : 640x480 1280x720 960x544 800x448 640x360 800x600 416x240 352x288 176x144 320x240 160x120
/dev/video0: Immediate exit requested


    


    when running my streaming command :

    


    cvlc v4l2:///dev/video0:chroma=h264:width=1280:height=720 --sout '#standard{access=http,mux=ts,dst=192.168.178.27:8080,name=stream,mime=video/ts}' -vvv


    


    I get the following error :

    


    mux_ts mux warning: rejecting stream with unsupported codec YUY2
main mux error: cannot add this stream
main decoder error: cannot create packetizer output (YUY2)


    


    along with many other lines of information.
As far as I can interpret the error, vlc wants to use the YUY2 RAW signal of my webcam.
Is there any way I can force vlc to use the mjpg output of my camera ?

    


    I've already tried to use 'chroma=mjpg' without success.
Transcoding is not an alternative as my raspi has by far not enough power.

    


    I've also read about using ffmpeg for streaming, maybe someone has an alternative solution since I'm very new to the whole topic of websites and stuff

    


    It will (or should) be used as a live webcam for a windsurfing spot.
Therefore I need a fluent video with at least 10fps to judge the situation. A delay of a minute or so is no problem.
The basic idea was to stream the video to a webserver and embed the image in a website. I've got good internet connection at the spot.

    


    But for now I want to try it locally on my pc.