Recherche avancée

Médias (1)

Mot : - Tags -/publishing

Autres articles (111)

  • Ajouter des informations spécifiques aux utilisateurs et autres modifications de comportement liées aux auteurs

    12 avril 2011, par

    La manière la plus simple d’ajouter des informations aux auteurs est d’installer le plugin Inscription3. Il permet également de modifier certains comportements liés aux utilisateurs (référez-vous à sa documentation pour plus d’informations).
    Il est également possible d’ajouter des champs aux auteurs en installant les plugins champs extras 2 et Interface pour champs extras.

  • 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" ;

  • Encoding and processing into web-friendly formats

    13 avril 2011, par

    MediaSPIP automatically converts uploaded files to internet-compatible formats.
    Video files are encoded in MP4, Ogv and WebM (supported by HTML5) and MP4 (supported by Flash).
    Audio files are encoded in MP3 and Ogg (supported by HTML5) and MP3 (supported by Flash).
    Where possible, text is analyzed in order to retrieve the data needed for search engine detection, and then exported as a series of image files.
    All uploaded files are stored online in their original format, so you can (...)

Sur d’autres sites (13761)

  • embed video stream with custom meta data

    15 mai 2022, par Sergey Kolesnik

    I have an optical system that provides a UDP video stream.

    


    From device specification FAQ :

    


    


    Both single metadata (KLV) stream and compressed video (H.264) with metadata (KLV) are available on Ethernet link. Compressed video and metadata are coupled in the same stream compliant with STANAG 4609 standard. Each encoded video stream is encapsulated with the associated metadata within an MPEG-TS single program stream over Ethernet UDP/IP/ The video and metadata are synchronized through the use of timestamps.

    


    


    Also there are other devices that provide data about the state of an aircraft (velocity, coords, etc). This data should be displayed on a client GUI display alongside with video. Of course it has to be synchronized with the current video frame.

    


    One of the approaches I though of is to embed this data into the video stream. But I am not sure if it is possible or should I use another (than UDP) protocol for this purpose.

    


    Is it possible/reasonable to use such approach ? Is ffmpeg library suitable in this case ?
If not, what are the other ways to synchronize data with a video frame.
Latency is crucial. Although bandwidth is limited to 2-5 Mbps.

    



    


    It seems to be possible using ffmpeg : AVPacket can be provided with additional data using function av_packet_add_side_data which takes a preallocated buffer, size and a type AVPacketSideDataType.
However, I am not sure for now, which enum value of AVPacketSideDataType can be used for custom user-provided binary data.

    


    Something similar that might be used for my needs :

    


    How do I encode KLV packets to an H.264 video using libav*

    


  • How to use prebuilt FFmpeg in Android Studio

    26 mai 2016, par vxh.viet

    I’m sure this is a very basic question but since this is the my first time messing around with the NDK, a lot of thing is still very unclear to me.

    Use case :

    • I’m trying to develop a video scrubbing feature so fast and accurate frame seeking is crucial. I’ve tried most of the available players out there but the performance is still not up to my demand. That’s why I’m going down the FFmpeg route.

    • Basically, what I’m looking for is FFmpeg input seeking. I’ve tried WrtingMinds’ ffmpeg-android-java. However it is a file based implementation which means the out.jpg need to be written to external memory and read back which has a big hit on performance (roughly 1000 milliseconds for 1 seek).

    • That’s why I’m trying to built my own FFmpeg player to do the input seeking in JNI and push back the byte[] to be displayed in Java.

    Question : After a lot of struggling with the NDK, I’ve managed to set it up and successfully calling the JNI method from my Java code. The structure is as below :

    MyApp
     -app
     -MyFFmpegPlayer
       -build
       -libs
       -src
         -main
           -java
             -com.example.myffmpegplayer
               +HelloJNI.java
           -jni
             +MyFFmpegPlayer.c

    After some fail attempt to build FFmpeg on Windows, I’ve decided to use WritingMinds prebuilt FFmpeg. However, after extraction they just come up as plain ffmpeg files (not .so file) so I don’t really know how to use these.

    It would be a great gratitude, if someone can just chime in and give me a good starting point for my next step.

    Thank you so much for your time.

  • I need to implement video compression for files that exceed 5 MB in size

    27 septembre 2024, par KAVYA P

    I need to implement video compression for files that exceed 5 MB in size. I have tried several packages for this purpose, but they either do not work as expected or have significant security vulnerabilities. It's crucial for me to find a reliable and secure solution for compressing videos that meet this file size requirement. If you have any recommendations for libraries or tools that effectively handle video compression without compromising security, please let me know.

    


     const handleFileChange = async (&#xA;    event: React.ChangeEvent<htmlinputelement>&#xA;  ) => {&#xA;    const file = event.target.files?.[0];&#xA;    if (file) {&#xA;      const isImage = file.type.startsWith(&#x27;image/&#x27;);&#xA;      const MAX_FILE_SIZE = isImage ? 2 * 1024 * 1024 : 5 * 1024 * 1024; // 2 MB for images, 5 MB for videos&#xA;&#xA;      if (file.size > MAX_FILE_SIZE) {&#xA;        if (isImage) {&#xA;          alert(&#x27;Image file size exceeds 2 MB. Compressing the file...&#x27;);&#xA;          try {&#xA;            const compressedFile = await imageCompression(file, {&#xA;              maxSizeMB: 2,&#xA;              maxWidthOrHeight: 1920,&#xA;              useWebWorker: true,&#xA;            });&#xA;            onSelectFile({&#xA;              ...event,&#xA;              target: {&#xA;                ...event.target,&#xA;                files: [compressedFile] as unknown as FileList,&#xA;              },&#xA;            });&#xA;          } catch (error) {&#xA;            console.error(&#x27;Error compressing the image:&#x27;, error);&#xA;          }&#xA;        } else {&#xA;          alert(&#x27;Video file size exceeds 5 MB. Please choose a smaller video.&#x27;);&#xA;        }&#xA;      } else {&#xA;        onSelectFile(event); // Proceed with the file selection&#xA;      }&#xA;    }&#xA;  };&#xA;</htmlinputelement>

    &#xA;