Recherche avancée

Médias (1)

Mot : - Tags -/biomaping

Autres articles (25)

  • Modifier la date de publication

    21 juin 2013, par

    Comment changer la date de publication d’un média ?
    Il faut au préalable rajouter un champ "Date de publication" dans le masque de formulaire adéquat :
    Administrer > Configuration des masques de formulaires > Sélectionner "Un média"
    Dans la rubrique "Champs à ajouter, cocher "Date de publication "
    Cliquer en bas de la page sur Enregistrer

  • Emballe médias : à quoi cela sert ?

    4 février 2011, par

    Ce plugin vise à gérer des sites de mise en ligne de documents de tous types.
    Il crée des "médias", à savoir : un "média" est un article au sens SPIP créé automatiquement lors du téléversement d’un document qu’il soit audio, vidéo, image ou textuel ; un seul document ne peut être lié à un article dit "média" ;

  • Formulaire personnalisable

    21 juin 2013, par

    Cette page présente les champs disponibles dans le formulaire de publication d’un média et il indique les différents champs qu’on peut ajouter. Formulaire de création d’un Media
    Dans le cas d’un document de type média, les champs proposés par défaut sont : Texte Activer/Désactiver le forum ( on peut désactiver l’invite au commentaire pour chaque article ) Licence Ajout/suppression d’auteurs Tags
    On peut modifier ce formulaire dans la partie :
    Administration > Configuration des masques de formulaire. (...)

Sur d’autres sites (4881)

  • ffmpeg capture output from child window

    3 janvier 2013, par glitchyme

    using xwininfo -all I'm able to see the stats of any window, along with its child windows

    xwininfo: Window id: 0x3c000ba "Electro - The Slag & Prototype Raptor - Crescendo - YouTube - Mozilla Firefox"

     Root window id: 0xa8 (the root window) (has no name)
     Parent window id: 0xc001b8 (has no name)
        2 children:
        0x3c00175 (has no name): ()  1388x876+0+0  +52+24
           5 children:
           0x3d210ab (has no name): ()  854x510+225+197  +277+221
              1 child:
              0x3d210ac (has no name): ()  854x510+0+0  +277+221
                 1 child:
                 0x40404de "plugin-container": ("plugin-container" "Plugin-container")  854x510+0+0  +277+221
                    2 children:
                    0x40404e1 (has no name): ()  854x510+0+0  +277+221
                    0x40404df (has no name): ()  1x1+-1+-1  +276+220
           0x3ddbcf2 (has no name): ()  640x390+225+162  +277+186
              1 child:
              0x3ddbcf3 (has no name): ()  640x390+0+0  +277+186
                 1 child:
                 0x403d545 "plugin-container": ("plugin-container" "Plugin-container")  640x390+0+0  +277+186
                    2 children:
                    0x403d548 (has no name): ()  640x390+0+0  +277+186
                    0x403d546 (has no name): ()  1x1+-1+-1  +276+185
           0x3dac7f9 (has no name): ()  640x390+225+162  +277+186
              1 child:
              0x3dac7fa (has no name): ()  640x390+0+0  +277+186
                 1 child:
                 0x4039d8b "plugin-container": ("plugin-container" "Plugin-container")  640x390+0+0  +277+186
                    2 children:
                    0x4039d8e (has no name): ()  640x390+0+0  +277+186
                    0x4039d8c (has no name): ()  1x1+-1+-1  +276+185
           0x3c3f939 (has no name): ()  640x390+225+197  +277+221
              1 child:
              0x3c3f93a (has no name): ()  640x390+0+0  +277+221
                 1 child:
                 0x4011918 "plugin-container": ("plugin-container" "Plugin-container")  640x390+0+0  +277+221
                    2 children:
                    0x401191b (has no name): ()  640x390+0+0  +277+221
                    0x4011919 (has no name): ()  1x1+-1+-1  +276+220
           0x3c0d1dc (has no name): ()  1x1+0+97  +52+121
              1 child:
              0x3c0d1dd (has no name): ()  1x1+0+0  +52+121
                 1 child:
                 0x4002c1e "plugin-container": ("plugin-container" "Plugin-container")  1x1+0+0  +52+121
                    2 children:
                    0x4002c40 (has no name): ()  1x1+0+0  +52+121
                    0x4002c1f (has no name): ()  1x1+-1+-1  +51+120
        0x3c000bb (has no name): ()  1x1+-1+-1  +51+23

     Absolute upper-left X:  52
     Absolute upper-left Y:  24
     Relative upper-left X:  0
     Relative upper-left Y:  0
     Width: 1388
     Height: 876
     Depth: 24
     Visual: 0x23
     Visual Class: TrueColor
     Border width: 0
     Class: InputOutput
     Colormap: 0x20 (installed)
     Bit Gravity State: NorthWestGravity
     Window Gravity State: NorthWestGravity
     Backing Store State: NotUseful
     Save Under State: no
     Map State: IsViewable
     Override Redirect State: no
     Corners:  +52+24  -0+24  -0-0  ç0
     -geometry 1388x876-0-0

     Bit gravity: NorthWestGravity
     Window gravity: NorthWestGravity
     Backing-store hint: NotUseful
     Backing-planes to be preserved: 0xffffffff
     Backing pixel: 0
     Save-unders: No

     Someone wants these events:
         KeyPress
         KeyRelease
         ButtonPress
         ButtonRelease
         EnterWindow
         LeaveWindow
         PointerMotion
         Exposure
         VisibilityChange
         StructureNotify
         FocusChange
         PropertyChange
     Do not propagate these events:
     Override redirection?: No

     Window manager hints:
         Client accepts input or input focus: Yes
         Initial state is Normal State
         Displayed on desktop 0
         Window type:
             Normal
         Window state:
             Maximized Vert
             Maximized Horz
         Process id: 4087 on host jb
         Frame extents: 0, 0, 0, 0

     Normal window size hints:
         Program supplied minimum size: 18 by 97
         Program supplied maximum size: 1073741824 by 1073741824
         Program supplied window gravity: NorthWestGravity
     No zoom window size hints defined

     No window shape defined
     No border shape defined

    However, if I try capturing from the screen given the size and offset of the child window, then I risk losing data when another window floats ontop of it, I switch to another tab while recording, I resize the child window, or move the child window. Instead, I'd like to use ffmpeg to capture from specifically that child window.

    Ideas ? Tips ? Maybe some other hacks to accomplish this ? Thanks :)

  • OpenCV 4.5.2 takes a long time (>100ms) to retrieve a single frame from a webcam, C++ on Windows 10

    9 juin 2021, par Mustard Tiger

    I've been having a tough time getting my webcam working quickly with opencv. Frames take a very long time to read, (a recorded average of 124ms across 500 frames) I've tried on three different computers (running Windows 10) with a logitech C922 webcam. The most recent machine I tested on has a Ryzen 9 3950X, with 32gbs of ram ; no lack of power.

    


    Here is the code :

    


    cv::VideoCapture cap = cv::VideoCapture(m_cameraNum);&#xA;&#xA;// Check if camera opened successfully&#xA;if (!cap.isOpened())&#xA;{&#xA;    m_logger->critical("Error opening video stream or file\n\r");&#xA;    return -1;&#xA;}&#xA;&#xA;bool result = true;&#xA;result &amp;= cap.set(cv::CAP_PROP_FRAME_WIDTH, 1280);&#xA;result &amp;= cap.set(cv::CAP_PROP_FRAME_HEIGHT, 720);&#xA;&#xA;bool ready = false;&#xA;std::vector<string> timeLog;&#xA;timeLog.reserve(50000);&#xA;int i = 0;&#xA;&#xA;while (i &lt; 500)&#xA;{&#xA;    auto start = std::chrono::system_clock::now();&#xA;    &#xA;    cv::Mat img;&#xA;    ready = cap.read(img);&#xA;&#xA;    // If the frame is empty, break immediately&#xA;    if (!ready)&#xA;    {&#xA;        timeLog.push_back("continue");&#xA;        continue;&#xA;    }&#xA;&#xA;    i&#x2B;&#x2B;;&#xA;    auto end = std::chrono::system_clock::now();&#xA;    timeLog.push_back(std::to_string(std::chrono::duration_cast(end - start).count()));&#xA;}&#xA;&#xA;for (auto&amp; entry : timeLog)&#xA;    m_logger->info(entry);&#xA;&#xA;cap.release();&#xA;return 0;&#xA;</string>

    &#xA;

    Notice that I write the elapsed time to a log file at the end of execution. The average time is 124ms for debug and release, and not one instance of "continue" after half a dozen runs.

    &#xA;

    It doesn't matter if I use USB 2 or USB 3 ports (the camera is USB2) or if I run a debug build or a release build, the log file will show anywhere from 110ms to 130ms of time for each frame. The camera works fine in other app, OBS can get a smooth 1080@30fps or 720@60fps.

    &#xA;

    Stepping through the debugger and doing a lot of Googling, I've learned the following about my system :

    &#xA;

      &#xA;
    • The backend chosen by default is DSHOW. GStreamer and FFMPEG are also available.
    • &#xA;

    • DSHOW uses FFMPEG somehow (it needs the FFMPEG dll) but I cannot use FFMPEG directly through opencv. Attempting to use cv::VideoCapture(m_cameraNum, cv::CAP_FFMPEG) always fails. It seems like Opencv's interface to FFMPEG is only capable of opening video files.
    • &#xA;

    • Microsoft really screwed up camera devices in Windows a few years back, not sure if this is related to my problem.
    • &#xA;

    &#xA;

    Here's a short list of the fixes I have tried, most taken from older SO posts :

    &#xA;

      &#xA;
    • result &= cap.set(cv::CAP_PROP_FRAME_COUNT, 30) ; // Returns false, does nothing
    • &#xA;

    • result &= cap.set(cv::CAP_PROP_CONVERT_RGB, 0) ; // Returns true, does nothing
    • &#xA;

    • result &= cap.set(cv::CAP_PROP_MODE, cv::VideoWriter::fourcc('M', 'J', 'P', 'G')) ; // Returns false, does nothing
    • &#xA;

    • Set registry key from http://alax.info/blog/1693 that should disable the new Windows camera server.
    • &#xA;

    • Updated from 4.5.0 to 4.5.2, no change.
    • &#xA;

    • Asked device manager to find a newer driver, no newer driver found.
    • &#xA;

    &#xA;

    I'm out of ideas. Any help ?

    &#xA;

  • VP8 for Real-time Video Applications

    15 février 2011, par noreply@blogger.com (John Luther)

    With the growing interest in videoconferencing on the web platform, it’s a good time to explore the features of VP8 that make it an exceptionally good codec for real-time applications like videoconferencing.

    VP8 Design History & Features

    Real-time applications were a primary use case when VP8 was designed. The VP8 encoder has features specifically engineered to overcome the challenges inherent in compressing and transmitting real-time video data.

    • Processor-adaptive encoding. 16 encoder complexity levels automatically (or manually) adjust encoder features such as motion search strategy, quantizer optimizations, and loop filtering strength.
    • Encoder can be configured to use a target percentage of the host CPU.
      Ability to measure the time taken to encode each frame and adjust encoder complexity dynamically to keep the encoding time per frame constant
    • Robust error recovery (packet retransmission, forward error correction, recovery frame/new keyframe requests)
    • Temporal scalability (i.e., a single video bitstream that can degrade as needed depending on a participant’s available bandwidth)
    • Highly efficient decoding performance on low-power devices. Conventional video technology has grown to a state of complexity where dedicated hardware chips are needed to make it work well. With VP8, software-based solutions have proven to meet customer needs without requiring specialized hardware.

    For a more information about real-time video features in VP8, see the slide presentation by WebM Project engineer Paul Wilkins (PDF file).

    Commercially Available Products

    Millions of people around the world have been using VP7/8 for video chat for years. VP8 is deployed in some of today’s most popular consumer videoconferencing applications, including Skype (group video calling), Sightspeed, ooVoo and Logitech Vid. All of these vendors are active WebM project supporters. VP8’s predecessor, VP7, has been used in Skype video calling since 2005 and is supported in the new Skype app for iPhone. Other real-time VP8 implementations are coming soon, including ooVoo, and VP8 will play a leading role in Google’s plans for real-time applications on the web platform.

    Real-time applications will be extremely important as the web platform matures. The WebM community has made significant improvements in VP8 for real-time use cases since our launch and will continue to do so in the future.

    John Luther is Product Manager of the WebM Project.