Recherche avancée

Médias (2)

Mot : - Tags -/media

Autres articles (70)

  • Personnaliser en ajoutant son logo, sa bannière ou son image de fond

    5 septembre 2013, par

    Certains thèmes prennent en compte trois éléments de personnalisation : l’ajout d’un logo ; l’ajout d’une bannière l’ajout d’une image de fond ;

  • Ecrire une actualité

    21 juin 2013, par

    Présentez les changements dans votre MédiaSPIP ou les actualités de vos projets sur votre MédiaSPIP grâce à la rubrique actualités.
    Dans le thème par défaut spipeo de MédiaSPIP, les actualités sont affichées en bas de la page principale sous les éditoriaux.
    Vous pouvez personnaliser le formulaire de création d’une actualité.
    Formulaire de création d’une actualité Dans le cas d’un document de type actualité, les champs proposés par défaut sont : Date de publication ( personnaliser la date de publication ) (...)

  • D’autres logiciels intéressants

    12 avril 2011, par

    On ne revendique pas d’être les seuls à faire ce que l’on fait ... et on ne revendique surtout pas d’être les meilleurs non plus ... Ce que l’on fait, on essaie juste de le faire bien, et de mieux en mieux...
    La liste suivante correspond à des logiciels qui tendent peu ou prou à faire comme MediaSPIP ou que MediaSPIP tente peu ou prou à faire pareil, peu importe ...
    On ne les connais pas, on ne les a pas essayé, mais vous pouvez peut être y jeter un coup d’oeil.
    Videopress
    Site Internet : (...)

Sur d’autres sites (13888)

  • ffmpeg/ffprobe input as buffer stream, get an error always

    13 décembre 2023, par hhk

    


    Code to reproduce

    


    I attached the test.gif file on https://github.com/fluent-ffmpeg/node-fluent-ffmpeg/assets/122068264/e1f3aa31-5386-4dab-a409-9a224e0610fe

    


    
const ffprobeInstaller = require('@ffprobe-installer/ffprobe');
const ffmpeg = require('fluent-ffmpeg');
const { Readable } = require('stream');
const fs = require('fs');


(async () => {

    const buffer = fs.readFileSync('test.gif');
    let readableStream = new Readable();
    readableStream._read = () => { };
    readableStream.push(buffer);
    readableStream.push(null);

    // console.log(ffprobe.path, ffprobe.version);
    ffmpeg.setFfprobePath(ffprobeInstaller.path);
    let metadata = await get_video_meta_data(readableStream);

    async function get_video_meta_data(stream) {
        return new Promise((resolve, reject) => {
            new ffmpeg()
                .input(stream)
                .ffprobe((err, data) => {
                    // console.log(err);
                });
            resolve();
        });
    }
})();





    


    (note : if the problem only happens with some inputs, include a link to such an input file)

    


    Expected results

    


    data should include duration but empty.

    


    Observed results

    


    data is empty and err happens.
Here is error data :

    


    
  libavutil      58.  1.100 / 58.  1.100
  libavcodec     60.  2.100 / 60.  2.100
  libavformat    60.  2.100 / 60.  2.100
  libavdevice    60.  0.100 / 60.  0.100
  libavfilter     9.  1.100 /  9.  1.100
  libswscale      7.  0.100 /  7.  0.100
  libswresample   4.  9.100 /  4.  9.100
  libpostproc    57.  0.100 / 57.  0.100
pipe:0: Input/output error


    


    I only need the metadta for the input gif file. specifically, duration field.

    


  • PHP HTML5 compatible MP4 video using FFMPEG

    9 août 2013, par Annie

    Hi I am using FFMPEG to convert the uploaded video with PHP.

    echo "conversion exercise started...<br /><br />";

    /* looping through all files in the directory */
    if ($handle = opendir(&#39;assets/uploaded_videos&#39;)) {
       while (false !== ($entry = readdir($handle))) {

           /* filtering the desired extensions */
           if ($entry != "." &amp;&amp; $entry != ".." &amp;&amp; in_array(substr($entry, strrpos($entry, &#39;.&#39;)), array(".wmv", ".mpg", ".mpeg", ".flv", ".ogg", ".mp4")))
           {
               $filename = substr($entry, 0, strrpos($entry, &#39;.&#39;));

               //$command = "ffmpeg -i assets/uploaded_videos/$entry -vcodec libx264 assetss/videos/$filename.mp4";

               $command = "ffmpeg -i assets/uploaded_videos/$entry -vcodec mpeg4 -acodec libfaac files/videos/$filename.mp4";

               echo $command."<br />";

               shell_exec($command."> /dev/null 2>/dev/null &amp;");
           }
       }
       closedir($handle);
    }

    I have embedded the player in view file like this :

    <video width="350" poster="&lt;?php echo $first_video[&#39;thumb_path&#39;];?>" controls="controls">
       <source src="&lt;?php echo $first_video[&#39;video_path&#39;]; ?>"></source>
       <span></span>
    </video>

    Now, when I run in IE10, the player gives me invalid source error. I am having this issue with both libx264 and mpeg4 MP4 codecs.

    Any ideas whats going wrong ?

    Update

    Following Ian's direction, I finally get it working. I have used baseline-level3 profile with libx264. You can provide extra parameters but I guess profile is the key ! I experimented couple of profiles and observed that all HTML5 videos on vimeo and youtube use this baseline L3 profile.

    Anyone struggling with MP4 can consider the following command for conversion :

    /* following command converted all my uploaded *.wmv files to mp4 */
    $command = "ffmpeg -i files/uploaded_videos/$entry -vcodec libx264 -profile:v baseline -level 3 files/videos/$filename.mp4";
  • lavu/hwcontext_vulkan : support mapping VUYX, P012, and XV36

    20 août 2022, par Philip Langdale
    lavu/hwcontext_vulkan : support mapping VUYX, P012, and XV36
    

    If we want to be able to map between VAAPI and Vulkan (to do Vulkan
    filtering), we need to have matching formats on each side.

    The mappings here are not exact. In the same way that P010 is still
    mapped to full 16 bit formats, P012 has to be mapped that way as well.

    Similarly, VUYX has to be mapped to an alpha-equipped format, and XV36
    has to be mapped to a fully 16bit alpha-equipped format.

    While Vulkan seems to fundamentally lack formats with an undefined,
    but physically present, alpha channel, it has have 10X6 and 12X4
    formats that you could imagine using for P010, P012 and XV36, but these
    formats don't support the STORAGE usage flag. Today, hwcontext_vulkan
    requires all formats to be storable because it wants to be able to use
    them to create writable images. Until that changes, which might happen,
    we have to restrict the set of formats we use.

    Finally, when mapping a Vulkan image back to vaapi, I observed that
    the VK_FORMAT_R16G16B16A16_UNORM format we have to use for XV36 going
    to Vulkan is mapped to Y416 when going to vaapi (which makes sense as
    it's the exact matching format) so I had to add an entry for it even
    though we don't use it directly.

    • [DH] libavutil/hwcontext_vulkan.c
    • [DH] libavutil/version.h