Recherche avancée

Médias (91)

Autres articles (43)

  • MediaSPIP : Modification des droits de création d’objets et de publication définitive

    11 novembre 2010, par

    Par défaut, MediaSPIP permet de créer 5 types d’objets.
    Toujours par défaut les droits de création et de publication définitive de ces objets sont réservés aux administrateurs, mais ils sont bien entendu configurables par les webmestres.
    Ces droits sont ainsi bloqués pour plusieurs raisons : parce que le fait d’autoriser à publier doit être la volonté du webmestre pas de l’ensemble de la plateforme et donc ne pas être un choix par défaut ; parce qu’avoir un compte peut servir à autre choses également, (...)

  • Personnaliser les catégories

    21 juin 2013, par

    Formulaire de création d’une catégorie
    Pour ceux qui connaissent bien SPIP, une catégorie peut être assimilée à une rubrique.
    Dans le cas d’un document de type catégorie, les champs proposés par défaut sont : Texte
    On peut modifier ce formulaire dans la partie :
    Administration > Configuration des masques de formulaire.
    Dans le cas d’un document de type média, les champs non affichés par défaut sont : Descriptif rapide
    Par ailleurs, c’est dans cette partie configuration qu’on peut indiquer le (...)

  • HTML5 audio and video support

    13 avril 2011, par

    MediaSPIP uses HTML5 video and audio tags to play multimedia files, taking advantage of the latest W3C innovations supported by modern browsers.
    The MediaSPIP player used has been created specifically for MediaSPIP and can be easily adapted to fit in with a specific theme.
    For older browsers the Flowplayer flash fallback is used.
    MediaSPIP allows for media playback on major mobile platforms with the above (...)

Sur d’autres sites (8427)

  • How to stream video form device to ingestion server using nodejs

    28 juillet 2021, par rocky

    I'm building a live streaming app (one-to-many) and am using AWS IVS as my ingestion server.

    


    Now, I get the video feed from mediaRecorder api transmits the video using socket.io as a buffer. Now the challenge is to parse the real-time buffers to AWS IVS or any other ingestion server.

    


    I figured that the only way to stream the video is by using ffmpeg and that's where am completely stuck.

    


    Here is my code

    


    // ffmpeg config
const { spawn, exec } = require("child_process");

let ffstr = `-re -stream_loop -1 -i ${input} -r 30 -c:v libx264 -pix_fmt yuv420p -profile:v main -preset veryfast -x264opts "nal-hrd=cbr:no-scenecut" -minrate 3000 -maxrate 3000 -g 60 -c:a aac -b:a 160k -ac 2 -ar 44100 -f flv rtmps://${INGEST_ENDPOINT}:443/app/${STREAM_KEY}`;

let ffmpeg = spawn("ffmpeg", ffstr.split(" "));

// Socket.io
socket.on("binarystream", async (mBuffer) => {
      // TODO: Get the buffer
      // TODO: Ingest/convert to mp4
      // TODO: Stream to IVS

      // TODO: FFMpeg is your best bet
      // console.log(mBuffer);

      ffmpeg.stdin.write(mBuffer);
      
  });


    


    PS : Even if you don't have the direct answers I'm available for discussion

    


  • laravel ffmpeg setAdditionalParameters not adding filters when using exportForHLS

    24 juin 2021, par Warren Visser

    I am trying to add additional filters using the setAdditionalParameters method to the bitrate using Laravel Ffmpeg. When I add the additional filters it does not show when used in combination with exportForHLS. It does however work when using the export method.
When using exportForHLS the addFilter method adds a complex filter and not a simple filter. Any idea how to achieve this or is this a bug inside the package.

    


      public function convert(File $file, Movie $movie)
{
    try {
        $additionalParameters = ['-preset:v', 'ultrafast'];

        //  convert video to multiple bitrates
        $higBitrateFormat = (new X264('copy'))
            ->setAudioChannels(2)
            ->setKiloBitrate(3000)
            ->setAdditionalParameters($additionalParameters);

        $mediaOpener = FFMpeg::fromDisk($file->disk)
            ->open($file->path)
            ->exportForHLS()
            ->setSegmentLength(4)
            ->setKeyFrameInterval(48)
            ->addFormat($higBitrateFormat)
            ->toDisk('streamable_videos')
            ->save($file->uuid . '.m3u8');

        $attr = ['converted_at' => Carbon::now()->toDateTimeString()];
        $this->movieRepositoryInterface->update($movie->id, $attr);
        return $mediaOpener;
    } catch (EncodingException $exception) {
        $attr = ['conversion_failed' => 1];
        $this->movieRepositoryInterface->update($movie->id, $attr);
        Log::error('encoding failed.', [$exception->getErrorOutput()]);
        throw new CustomEncodingException($exception->getMessage(), $exception->getCode());
    }
}


    


    Here is the ffmpeg output :

    


    


    -y -threads 12 -i /home/vagrant/code/streaming-api/storage/framework/testing/disks/public/videos/Am1t18C8NnnOlxPCVIx3OiEMzcaXhhEpReDBpBaW.png -map 0 -vcodec libx264 -b:v 3000k -sc_threshold 0 -g 48 -hls_playlist_type vod -hls_time 4 -hls_segment_filename /home/vagrant/code/streaming-api/storage/framework/testing/disks/streamable_videos/9703f521-ec4b-428f-b756-b08946e726b8_0_3000_%05d.ts -master_pl_name temporary_segment_playlist_0.m3u8 -acodec copy -b:a 128k -ac 2 /home/vagrant/code/streaming-api/storage/framework/testing/disks/streamable_videos/9703f521-ec4b-428f-b756-b08946e726b8_0_3000.m3u8

    


    


  • ffmpeg images list (text file) to video with overlay watermark

    27 mai 2021, par haseeb

    I have 250 images / day of 4000*3000 pixels in a text file.

    


    file '/home/user/camdata/nonseqdata.jpg'
file '/home/user/camdata/strangedata.jpg'


    


    i created mp4 video with this command

    


    ffmpeg -y -f concat -safe 0 -i ecam.001_20210525.txt -c:v libx264 -vf "scale=1280:720,fps=25,format=yuv420p" out.mp4


    


    Now i need to add watermark to video.(in same command)
closest example i found on web, trying to modify that and use in my case is like..

    


    ffmpeg -r 25 -f image2 -s 1280x720 -i ecam.001_20210525.txt -i wm.png -filter_complex "[0:v][1:v] overlay=0:0" -vcodec libx264 -crf 25  -pix_fmt yuv420p test_overlay.mp4
OR
ffmpeg -r 25 -f concat -safe 0 -s 1280x720 -i ecam.001_20210525.txt -i wm.png -filter_complex "[0:v]pad=width=mainw:height=mainh:x=0:y=0,[1:v] overlay=0:0" -c:v libx264  test_overlay.mp4


    


    BUT it error out to >> Decoder (codec none) not found for input stream #0:0
Q. how exactly to fix this.? i need output to be 720p or 1080p.?