Recherche avancée

Médias (91)

Autres articles (3)

  • Monitoring de fermes de MediaSPIP (et de SPIP tant qu’à faire)

    31 mai 2013, par

    Lorsque l’on gère plusieurs (voir plusieurs dizaines) de MediaSPIP sur la même installation, il peut être très pratique d’obtenir d’un coup d’oeil certaines informations.
    Cet article a pour but de documenter les scripts de monitoring Munin développés avec l’aide d’Infini.
    Ces scripts sont installés automatiquement par le script d’installation automatique si une installation de munin est détectée.
    Description des scripts
    Trois scripts Munin ont été développés :
    1. mediaspip_medias
    Un script de (...)

  • Pas question de marché, de cloud etc...

    10 avril 2011

    Le vocabulaire utilisé sur ce site essaie d’éviter toute référence à la mode qui fleurit allègrement
    sur le web 2.0 et dans les entreprises qui en vivent.
    Vous êtes donc invité à bannir l’utilisation des termes "Brand", "Cloud", "Marché" etc...
    Notre motivation est avant tout de créer un outil simple, accessible à pour tout le monde, favorisant
    le partage de créations sur Internet et permettant aux auteurs de garder une autonomie optimale.
    Aucun "contrat Gold ou Premium" n’est donc prévu, aucun (...)

  • Les thèmes de MediaSpip

    4 juin 2013

    3 thèmes sont proposés à l’origine par MédiaSPIP. L’utilisateur MédiaSPIP peut rajouter des thèmes selon ses besoins.
    Thèmes MediaSPIP
    3 thèmes ont été développés au départ pour MediaSPIP : * SPIPeo : thème par défaut de MédiaSPIP. Il met en avant la présentation du site et les documents média les plus récents ( le type de tri peut être modifié - titre, popularité, date) . * Arscenic : il s’agit du thème utilisé sur le site officiel du projet, constitué notamment d’un bandeau rouge en début de page. La structure (...)

Sur d’autres sites (3036)

  • Concatenate videos with audio and overlay with complex Filtergraph in FFMPEG [closed]

    15 octobre 2024, par Jamie Shepherd

    I am new to FFMPEG and trying to get my head around the concepts and the syntax.

    


    I have 3 video files that I am trying to concatenate into one file, while overlaying an image on the middle video, all while maintaining the audio. Sadly however there is not many assurances on these files so the resolutions could be different, different audio channels etc. The documentation on the "concat" video filter states that :

    


    


    All corresponding streams must have the same parameters in all segments

    


    


    As such I have tried to use a complex filtergraph to scale all videos to the same resolution before using concat however I am getting an Unable to choose an output format error and don't fully understand what it means. The command I have so far is this :

    


    ffmpeg \
  -i intro.mp4 \
  -i main.mp4 \
  -i outro.mp4 \
  -i imageOverlay.png \
  -filter_complex \
  '[0] scale=1920:1800 [scaledIntro];' \
  '[1] scale=1920:1800 [scaledMain];' \
  '[2] scale=1920:1800 [scaledOutro];' \
  '[3] scale=1920:1800 [scaledOverlay];' \
  '[scaledMain][scaledOverlay] scale=1920:1800 [scaledOverlayOutro];' \
  '[scaledIntro:v] [scaledIntro:a] [scaledMain:v] [scaledOverlayOutro:a] [scaledOverlayOutro:v] [scaledOutro:a] concat=n=3:v=1:a=1 [v][a];' \
  -map '[v]' -map '[a]' files/output/output.mp4


    


    The error I get is :

    


    [AVFormatContext @ 0x121f08d40] Unable to choose an output format for '[1] scale=1920:1800 [scaledMain];'; use a standard extension for the filename or specify the format manually.
[out#0 @ 0x121f08c80] Error initializing the muxer for [1] scale=1920:1800 [scaledMain];: Invalid argument
Error opening output file [1] scale=1920:1800 [scaledMain];.
Error opening output files: Invalid argument


    


    Would love to understand what is going on here.

    


    Have I made a syntax mistake ? Am I missing something conceptually here ?

    


    Many thanks for your time

    


  • FFmpeg live rtmp capture to segments and encoding to mp4 is causing time glitches in the output

    19 août 2020, par ezwrighter

    I am having issues with capturing live video and converting the latest x minutes to a useable mp4 on demand.

    


    Currently i am capturing the latest 15m of a live rtmp stream and recording it with visual timestamp on it and saving it to segment files like this :

    


    ffmpeg -i rtmps://domain/myawesomestream.stream -map 0 -vf drawtext=x=10:y=10:shadowcolor=white:shadowx=1:shadowy=1:text='%{localtime\:%m/%d/%Y %H\\\:%M\\\:%S MST}' -vcodec libx264 -crf 21 -acodec copy -an -start_at_zero -f segment -segment_time 15 -segment_wrap 61 -segment_list_type ffconcat -segment_list_size 60 -segment_list bufferTime.ffcat -segment_format mpegts /dvr/captureTime-%03d.ts

    


    This works and allows me to always have the latest 15m of video captured with usable segments that I can then roll into mp4 files on demand like this without any re-encoding :

    


    /usr/bin/ffmpeg -safe 0 -f concat -i /dvr/bufferTime.ffcat -c copy -f mp4 /var/www/chat/dvr/ugb/fifteenminutesofvideo.mp4

    


    This does a great job of giving me the last 15 minutes of video from the live stream at any given moment. However, I would like to be able to get the last X minutes of video from the current segments instead of having to get the whole 15m minutes, without more encoding. I can sort of do it with two passes like this :

    


    /usr/bin/ffmpeg -safe 0 -f concat -i /dvr/bufferTime.ffcat -c copy -f mp4 -y /dvr/tmp/mywhole15minutes.mp4
/usr/bin/ffmpeg -sseof -120 -i /dvr/tmp/myshole15minutes.mp4 -c copy -f mp4 -y /dvr/my120secondsofvideo.mp4

    


    This gives me the last 120 seconds of video, but the front of the video has timestamp or keyframe issues at the front of it. It shows the visual timestamp between 5-12 seconds behind and then pauses or jumps the empty frames (Depending on the player) and then starts to play normally. I would love to fix the front of this video and have played with genpts and other flags to no avail :-( Any hints that might push me in the right direction ? Thanks ffmpeg pros out there ! I don't have a great place to publicly host the bad encoded video file, but would be happy to PM a link.

    


  • Working with FFMPEG / Splicer and C#

    8 novembre 2016, par fauvent

    I have been trying to develop a C# app for a long time now which is intended to run on a server. It takes info from a data base and makes a video with it. I have been using libraries for that porpuse (Aforge). But now it looks like I HAVE to use FFMPEG to combine 5 mp4 in one. My question would be :

    1. Do I have to "execute" the exe file from the download to make it work ? Or I can simply use the dll like the other libraries (like Aforge) ?

    2. FFMPEG looks very complicated to me. I have been trying to use Splicer insted. There is a very nice and clean example that I would love to use. But I can’t get Splicer to work. I am using VS 13. How exaclty I get Splicer working ? Adding the dlls to the "debug folder" then just adding the reference ? If so which dlls ?

    This is my code so far. It does not show any errors but it does not do anything (I added the reference and the splicer.dll to my project)

    using System;
    using System.Collections.Generic;
    using System.ComponentModel;
    using System.Data;
    using System.Drawing;
    using System.Linq;
    using System.Text;
    using System.Threading.Tasks;
    using System.Windows.Forms;
    using Splicer;
    using Splicer.Renderer;
    using Splicer.Timeline;

    namespace MergeVideos
    {
       public partial class Form1 : Form
       {
           public Form1()
           {
               InitializeComponent();
           }

           private void Form1_Load(object sender, EventArgs e)
           {

               string firstVideoFilePath = @"C:\file1.avi";
               string secondVideoFilePath = @"C:\file2.avi";
               string outputVideoPath = @"C:\output.avi";

               using (ITimeline timeline = new DefaultTimeline())
               {
                   IGroup group = timeline.AddVideoGroup(32, 720, 576);

                   var firstVideoClip = group.AddTrack().AddVideo(firstVideoFilePath);
                   var secondVideoClip = group.AddTrack().AddVideo(secondVideoFilePath, firstVideoClip.Duration);

                   using (AviFileRenderer renderer = new AviFileRenderer(timeline, outputVideoPath))
                   {
                       renderer.Render();
                   }
               }

           }
       }
    }

    Thanks in advance !