Recherche avancée

Médias (2)

Mot : - Tags -/media

Autres articles (58)

  • 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.

  • Le profil des utilisateurs

    12 avril 2011, par

    Chaque utilisateur dispose d’une page de profil lui permettant de modifier ses informations personnelle. Dans le menu de haut de page par défaut, un élément de menu est automatiquement créé à l’initialisation de MediaSPIP, visible uniquement si le visiteur est identifié sur le site.
    L’utilisateur a accès à la modification de profil depuis sa page auteur, un lien dans la navigation "Modifier votre profil" est (...)

  • Configurer la prise en compte des langues

    15 novembre 2010, par

    Accéder à la configuration et ajouter des langues prises en compte
    Afin de configurer la prise en compte de nouvelles langues, il est nécessaire de se rendre dans la partie "Administrer" du site.
    De là, dans le menu de navigation, vous pouvez accéder à une partie "Gestion des langues" permettant d’activer la prise en compte de nouvelles langues.
    Chaque nouvelle langue ajoutée reste désactivable tant qu’aucun objet n’est créé dans cette langue. Dans ce cas, elle devient grisée dans la configuration et (...)

Sur d’autres sites (3223)

  • lavfi/movie : flush decoder frames on EOF

    7 juillet 2012, par Steven Robertson

    lavfi/movie : flush decoder frames on EOF

  • android ffmpeg opengl es render movie

    18 janvier 2013, par broschb

    I am trying to render video via the NDK, to add some features that just aren't supported in the sdk. I am using FFmpeg to decode the video and can compile that via the ndk, and used this as a starting point. I have modified that example and instead of using glDrawTexiOES to draw the texture I have setup some vertices and am rendering the texture on top of that (opengl es way of rendering quad).

    Below is what I am doing to render, but creating the glTexImage2D is slow. I want to know if there is any way to speed this up, or give the appearance of speeding this up, such as trying to setup some textures in the background and render pre-setup textures. Or if there is any other way to more quickly draw the video frames to screen in android ? Currently I can only get about 12fps.

    glClear(GL_COLOR_BUFFER_BIT);
    glEnableClientState(GL_VERTEX_ARRAY);
    glEnableClientState(GL_TEXTURE_COORD_ARRAY);
    glBindTexture(GL_TEXTURE_2D, textureConverted);

    //this is slow
    glTexImage2D(GL_TEXTURE_2D, /* target */
    0, /* level */
    GL_RGBA, /* internal format */
    textureWidth, /* width */
    textureHeight, /* height */
    0, /* border */
    GL_RGBA, /* format */
    GL_UNSIGNED_BYTE,/* type */
    pFrameConverted->data[0]);

    glEnableClientState(GL_TEXTURE_COORD_ARRAY);
    glTexCoordPointer(2, GL_FLOAT, 0, texCoords);
    glVertexPointer(3, GL_FLOAT, 0, vertices);
    glDrawElements(GL_TRIANGLES, 6, GL_UNSIGNED_BYTE, indices);
    glDisableClientState(GL_VERTEX_ARRAY);
    glDisableClientState(GL_TEXTURE_COORD_ARRAY);

    EDIT
    I changed my code to initialize a gltextImage2D only once, and modify it with glSubTexImage2D, it didn't make much of an improvement to the framerate.

    I then modified the code to modify a native Bitmap object on the NDK. With this approach I have a background thread that runs that process the next frames and populates the bitmap object on the native side. I think this has potential, but I need to get the speed increased of converting the AVFrame object from FFmpeg into a native bitmap. Below is currently what I am using to convert, a brute force approach. Is there any way to increase the speed of this or optimize this conversion ?

    static void fill_bitmap(AndroidBitmapInfo*  info, void *pixels, AVFrame *pFrame)
    {
    uint8_t *frameLine;

    int  yy;
    for (yy = 0; yy < info->height; yy++) {
       uint8_t*  line = (uint8_t*)pixels;
       frameLine = (uint8_t *)pFrame->data[0] + (yy * pFrame->linesize[0]);

       int xx;
       for (xx = 0; xx < info->width; xx++) {
           int out_offset = xx * 4;
           int in_offset = xx * 3;

           line[out_offset] = frameLine[in_offset];
           line[out_offset+1] = frameLine[in_offset+1];
           line[out_offset+2] = frameLine[in_offset+2];
           line[out_offset+3] = 0;
       }
       pixels = (char*)pixels + info->stride;
    }
    }
  • lavfi/movie : extend a doxygen comment.

    16 août 2012, par Nicolas George

    lavfi/movie : extend a doxygen comment.