Recherche avancée

Médias (1)

Mot : - Tags -/bug

Autres articles (9)

  • Supporting all media types

    13 avril 2011, par

    Unlike most software and media-sharing platforms, MediaSPIP aims to manage as many different media types as possible. The following are just a few examples from an ever-expanding list of supported formats : images : png, gif, jpg, bmp and more audio : MP3, Ogg, Wav and more video : AVI, MP4, OGV, mpg, mov, wmv and more text, code and other data : OpenOffice, Microsoft Office (Word, PowerPoint, Excel), web (html, CSS), LaTeX, Google Earth and (...)

  • Les formats acceptés

    28 janvier 2010, par

    Les commandes suivantes permettent d’avoir des informations sur les formats et codecs gérés par l’installation local de ffmpeg :
    ffmpeg -codecs ffmpeg -formats
    Les format videos acceptés en entrée
    Cette liste est non exhaustive, elle met en exergue les principaux formats utilisés : h264 : H.264 / AVC / MPEG-4 AVC / MPEG-4 part 10 m4v : raw MPEG-4 video format flv : Flash Video (FLV) / Sorenson Spark / Sorenson H.263 Theora wmv :
    Les formats vidéos de sortie possibles
    Dans un premier temps on (...)

  • Les vidéos

    21 avril 2011, par

    Comme les documents de type "audio", Mediaspip affiche dans la mesure du possible les vidéos grâce à la balise html5 .
    Un des inconvénients de cette balise est qu’elle n’est pas reconnue correctement par certains navigateurs (Internet Explorer pour ne pas le nommer) et que chaque navigateur ne gère en natif que certains formats de vidéos.
    Son avantage principal quant à lui est de bénéficier de la prise en charge native de vidéos dans les navigateur et donc de se passer de l’utilisation de Flash et (...)

Sur d’autres sites (3199)

  • What are the correct conversion steps to generate a video from PDF with ffmpeg and mp4box

    25 juin 2020, par Michael Rall

    I need to convert a PDF-Document to a DASH-compatible stream. Every page of the PDF should be displayed for one second. Quality should be rather good, so that text and line graphics can still be read clearly. Additionally I want to be able to seek every page, so keyframes(?) should be (exactly) every second.

    


    Im using poppler-tools to extract the pdf-pages as png's -> works

    


    Im using ffmpeg to convert the single images to an x264 encoded mp4 video -> works (but maybe problematic)

    


    string.Format("-r 1 -i \"{0}.page_%d.png\" -r 24 -vcodec libx264 -pix_fmt yuv420p {0}.output.mp4", basePath)


    


    Im using MP4Box to convert that video to dash -> works (but needs improvement)

    


    string.Format("-dash 1000 -frag 1000 -rap -segment-name {1}_dash_$RepresentationID$_$Number$ -url-template {0}.output.mp4 -out \"{0}.{2}\"", basePath, tempDataId, STREAM_MANIFEST_FILE_POSTFIX)


    


    Now I have 2 Problems/Questions

    


      

    1. Are the settings for framerate, quality, outputformat correct for the goals I want to achieve
    2. 


    3. When displaying the resulting DASH-Stream in the Demo-Player from https://github.com/Dash-Industry-Forum/dash.js/wiki it plays the stream, but as soon as I try to seek the player starts loading forever. Setting the position to start and let it play again works. The network tab in my browser-debugger shows that the player tries to load the segments and gets them successfully.
    4. 


    


    I guess its a problem with keyframes, fragments or similar. Can somebody correct my conversion steps ?

    


    kind regards

    


  • How to add arbitrary or custom metadata in MP4 ?

    13 avril 2021, par 大大大大萝卜凉

    The MP4 muxer in ffmpeg only allows certain metadata by default. I would like to add :

    


    com.android.model: Mi 10 Pro
xyz: +22.9835+113.3621/
com.android.version: 1
com.android.manufacturer: Xiaomi


    


    How can I add this with ffmpeg ?

    


  • How would I assign multiple MMAP's from single file descriptor ?

    9 juin 2011, par Alex Stevens

    So, for my final year project, I'm using Video4Linux2 to pull YUV420 images from a camera, parse them through to x264 (which uses these images natively), and then send the encoded stream via Live555 to an RTP/RTCP compliant video player on a client over a wireless network. All of this I'm trying to do in real-time, so there'll be a control algorithm, but that's not the scope of this question. All of this - except Live555 - is being written in C. Currently, I'm near the end of encoding the video, but want to improve performance.

    To say the least, I've hit a snag... I'm trying to avoid User Space Pointers for V4L2 and use mmap(). I'm encoding video, but since it's YUV420, I've been malloc'ing new memory to hold the Y', U and V planes in three different variables for x264 to read upon. I would like to keep these variables as pointers to an mmap'ed piece of memory.

    However, the V4L2 device has one single file descriptor for the buffered stream, and I need to split the stream into three mmap'ed variables adhering to the YUV420 standard, like so...

    buffers[n_buffers].y_plane = mmap(NULL, (2 * width * height) / 3,
                                       PROT_READ | PROT_WRITE, MAP_SHARED,
                                       fd, buf.m.offset);
    buffers[n_buffers].u_plane = mmap(NULL, width * height / 6,
                                       PROT_READ | PROT_WRITE, MAP_SHARED,
                                       fd, buf.m.offset +
                                       ((2 * width * height) / 3 + 1) /
                                       sysconf(_SC_PAGE_SIZE));
    buffers[n_buffers].v_plane = mmap(NULL, width * height / 6,
                                       PROT_READ | PROT_WRITE, MAP_SHARED,
                                       fd, buf.m.offset +
                                       ((2 * width * height) / 3 +
                                       width * height / 6 + 1) /
                                       sysconf(_SC_PAGE_SIZE));

    Where "width" and "height" is the resolution of the video (eg. 640x480).

    From what I understand... MMAP seeks through a file, kind of like this (pseudoish-code) :

    fd = v4l2_open(...);
    lseek(fd, buf.m.offset + (2 * width * height) / 3);
    read(fd, buffers[n_buffers].u_plane, width * height / 6);

    My code is located in a Launchpad Repo here (for more background) :
    http://bazaar.launchpad.net/ alex-stevens/+junk/spyPanda/files (Revision 11)

    And the YUV420 format can be seen clearly from this Wiki illustration : http://en.wikipedia.org/wiki/File:Yuv420.svg (I essentially want to split up the Y, U, and V bytes into each mmap'ed memory)

    Anyone care to explain a way to mmap three variables to memory from the one file descriptor, or why I went wrong ? Or even hint at a better idea to parse the YUV420 buffer to x264 ? :P

    Cheers ! ^^