Recherche avancée

Médias (91)

Autres articles (77)

  • Gestion des droits de création et d’édition des objets

    8 février 2011, par

    Par défaut, beaucoup de fonctionnalités sont limitées aux administrateurs mais restent configurables indépendamment pour modifier leur statut minimal d’utilisation notamment : la rédaction de contenus sur le site modifiables dans la gestion des templates de formulaires ; l’ajout de notes aux articles ; l’ajout de légendes et d’annotations sur les images ;

  • Activation de l’inscription des visiteurs

    12 avril 2011, par

    Il est également possible d’activer l’inscription des visiteurs ce qui permettra à tout un chacun d’ouvrir soit même un compte sur le canal en question dans le cadre de projets ouverts par exemple.
    Pour ce faire, il suffit d’aller dans l’espace de configuration du site en choisissant le sous menus "Gestion des utilisateurs". Le premier formulaire visible correspond à cette fonctionnalité.
    Par défaut, MediaSPIP a créé lors de son initialisation un élément de menu dans le menu du haut de la page menant (...)

  • Des sites réalisés avec MediaSPIP

    2 mai 2011, par

    Cette page présente quelques-uns des sites fonctionnant sous MediaSPIP.
    Vous pouvez bien entendu ajouter le votre grâce au formulaire en bas de page.

Sur d’autres sites (9090)

  • Improve ffmpeg scene detection in particular scenario

    17 septembre 2021, par Nobody-Knows-I-am-a-Dog

    I have 50 hours of video where a speaker is in the lower right corner of the video and the by far larger part of the video consists of slides in the center. The speaker moves a bit, the slides transition into the video. I need to detect the time codes of the slide transitions. +- 1 second precision is fine. I am playing around with select filters in ffmpeg such as ffmpeg -i lecture.mp4  -filter:v "select='gt(scene,0.1)',showinfo"   -f null - but I have remaining problems where some help or hint would be highly appreciated.

    


    Problem 1 : Speaker movement occasionally triggers false positives. If there is some possibility to restrict frame comparison to a certain (spatial, cropped) area of the scene then I could focus on the slide area and this would greatly help.

    


    Problem 2 : Speed of slide transition is slow so I occasionally miss a transition since the change from frame(n) to frame(n+1) is too small. It would be great if I could compare, for example, frame(n) to frame(n+10) for threshold detection. ffmpeg scene detection : check only every nth frame ? does not help here, because it only checks every n-th frame but still compares a frame with its immediate neighbor.

    


    Of course, both problems can be solved by producing a cropped version with reduced framerate. However, I am looking for a solution where I can do this in a single pass with some complex filter expression ... and this is exactly the place where my own experience with ffmpeg fails me and where I would appreciate some help.

    


    Problem 3 : Occasionally a single slide transition triggers several times in a row throughout the transition. I have no idea how to solve this in ffmpeg.

    


  • Black screen when recording specific screen / window using ffmpeg [closed]

    16 mai, par Mark Brin

    Issue :
I'm trying to capture the specific window using ffmpeg & i've tried these below command for that :

    


    ffmpeg -f gdigrab -framerate 30 -i title="Window Title" -b:v 3M -pix_fmt yuv420p output_FILENAME.webm


    


    And also try changing output format to .mp4

    


    ffmpeg -f gdigrab -framerate 30 -i title="Window Title" -b:v 3M -pix_fmt yuv420p output_FILENAME.mp4


    


    but the output video just shows the black screen with cursor.

    


    What i've tried :

    


    


    Get-Process |
  Where-Object { $_.MainWindowTitle -ne "" } |
  Select-Object -Unique MainWindowTitle


    


    System I'm using :

    


    Windows 11

    


  • Getting ffmpeg to capture the full screen of xfvb-run screen running puppeteer script, and send it over rtmp

    30 janvier, par james

    My problem

    


    I can't get ffmpeg or xvfb-run to stream the full screen to ffplay/videolan, it only captures a part of the screen.

    


    Update 2

    


    I answered the question myself in a follow up answer, hopefully it can be useful for someone else with the same problem.

    


    Update 1

    


    So the problem is definitely with xvfb-run, since the two following commands, still give a webm file, that only show parts of the screen

    


    ffmpeg -f x11grab -i :99 -g 50 -b:v 4000k -maxrate 4000k -bufsize 8000k -f webm -s 384x216 "blank.webm"

    


    xvfb-run -n 99 -a --server-args="-screen 0 1024x8000x24 -ac -nolisten tcp -dpi 96 +extension RANDR" "node index.js"

    


    What I've tried

    


      

    • I've tried changing ffmpeg command and xvfb-run, for example adding "-vf format=yuv420p" or "-filter:v "crop=iw-400:ih-40,scale=960:720" to ffmpeg command
    • 


    • I've tried to show other applications under xvfb-run instead of puppeteer (chrome..)
    • 


    • Recording screen with ffmpeg and saving it to a file, to see if there's a problem with the rtmp stream
    • 


    


    But still no luck. That's why I'm reaching out to the stackoverflow community.

    


    xvfb-run command

    


    xvfb-run -n 99 -a --server-args="-screen 0 1024x8000x24 -ac -nolisten tcp -dpi 96 +extension RANDR" "node index.js"

    


    ffmpeg command to capture xvfb-run virtual screen

    


    ffmpeg -f x11grab -i :99 -f pulse -i default -c:v libx264 -c:a aac  -g 50 -b:v 4000k -maxrate 4000k -bufsize 8000k -f flv -listen 1 rtmp://localhost:4444/stream

    


    And finally to show the rtmp stream

    


    ffplay -fflags -nobuffer -flags low_delay -probesize 32 -flags low_delay -analyzeduration 0 -i rtmp://localhost:4444/stream

    


    The puppeteer script (index.js) which xfvb-runs

    


    

import puppeteer from 'puppeteer';
let initPuppeteer = async () => {
  const launchArgs = [
    //'--window-size=1280,1024',
    '--disable-web-security',
    '--disable-features=IsolateOrigins',
    '--disable-site-isolation-trials',
    '--app',
    '--kiosk',
  ]
  await puppeteer.launch({headless: false, ignoreDefaultArgs: ["--enable-automation"], args: launchArgs});
  const page = await this.browser.newPage();
  const device = puppeteer.devices['Nexus 10'];
  await page.emulate(device);
  await page.goto("https://google.com");
}
initPuppeteer()