Recherche avancée

Médias (3)

Mot : - Tags -/spip

Autres articles (103)

  • MediaSPIP 0.1 Beta version

    25 avril 2011, par

    MediaSPIP 0.1 beta is the first version of MediaSPIP proclaimed as "usable".
    The zip file provided here only contains the sources of MediaSPIP in its standalone version.
    To get a working installation, you must manually install all-software dependencies on the server.
    If you want to use this archive for an installation in "farm mode", you will also need to proceed to other manual (...)

  • Multilang : améliorer l’interface pour les blocs multilingues

    18 février 2011, par

    Multilang est un plugin supplémentaire qui n’est pas activé par défaut lors de l’initialisation de MediaSPIP.
    Après son activation, une préconfiguration est mise en place automatiquement par MediaSPIP init permettant à la nouvelle fonctionnalité d’être automatiquement opérationnelle. Il n’est donc pas obligatoire de passer par une étape de configuration pour cela.

  • Organiser par catégorie

    17 mai 2013, par

    Dans MédiaSPIP, une rubrique a 2 noms : catégorie et rubrique.
    Les différents documents stockés dans MédiaSPIP peuvent être rangés dans différentes catégories. On peut créer une catégorie en cliquant sur "publier une catégorie" dans le menu publier en haut à droite ( après authentification ). Une catégorie peut être rangée dans une autre catégorie aussi ce qui fait qu’on peut construire une arborescence de catégories.
    Lors de la publication prochaine d’un document, la nouvelle catégorie créée sera proposée (...)

Sur d’autres sites (12775)

  • Decoding with FFMPEG on Visual Studio 2010

    20 décembre 2018, par user2439801

    I just started using FFMPEG with C++ and try to code an audio decoder then write the decoded audio into a file.

    However i’m not sure about which data to write to the output file. As far as i know from looking at the sample codes it seems to be the AVFrame -> data[0].
    But when i try to print it on the consoles, i get some random numbers that are different each time i run the program. And when i try to write this AVFrame->data[0] into a file i keep getting an error.

    So my question is how can I write the decoded audio after I call the function av_codec_decode_audio4 ?

    Below I attached my code and I pass the argument "C :\02.mp3" which is a path for a valid mp3 file on my PC.

    Thank you for your help.

    // TestFFMPEG.cpp : Audio Decoder
    //

    #include "stdafx.h"

    #include <iostream>
    #include <fstream>
    #include <sstream>

    extern "C" {
       #include
       #include
       #include

    }

    using namespace std;


    int main(int argc, char* argv[])
    {
    int audioStream = -1;

    AVCodec         *aCodec;
    AVPacket        avPkt;
    AVFrame         *decode_frame = avcodec_alloc_frame();

    AVCodecContext  *aCodecCtxt;
    AVFormatContext *pFormatCtxt = NULL;

    if(argc != 2) {     // Checking  whether there is enough argument
       return -1;
    }

    av_register_all();  //Initialize CODEC
    avformat_network_init();
    av_init_packet (&amp;avPkt);


    if (avformat_open_input (&amp;pFormatCtxt, argv[1],NULL,NULL)!= 0 ){ //Opening File
        return -2;
    }

    if(avformat_find_stream_info (pFormatCtxt,NULL) &lt; 0){ //Get Streams Info
        return -3;
    }

    AVStream *stream = NULL;
    //av_read_play (pFormatCtxt); //open streams


    for (int i = 0;  i &lt; pFormatCtxt->nb_streams ; i++) { //Find Audio Stream
        if (pFormatCtxt->streams[i]->codec->codec_type == AVMEDIA_TYPE_AUDIO){
            audioStream =i;
        }
    }

    aCodecCtxt = pFormatCtxt ->streams [audioStream]->codec; // opening decoder  
    aCodec = avcodec_find_decoder( pFormatCtxt->streams [audioStream] ->codec->codec_id);

    if (!aCodec) {
        return -8;
    }

    if (avcodec_open2(aCodecCtxt,aCodec,NULL)!=0) {
        return -9;
    }

    int cnt = 0;

    while(av_read_frame(pFormatCtxt,&amp;avPkt) >= 0 ){

       if (avPkt.stream_index == audioStream){
           int check = 0;
           int result = avcodec_decode_audio4 (aCodecCtxt,decode_frame,&amp;check, &amp;avPkt);
           cout &lt;&lt; "Decoded : "&lt;&lt; (int) decode_frame->data[0] &lt;&lt;", "&lt;&lt; "Check : " &lt;&lt; check &lt;&lt; ", Format :" &lt;&lt; decode_frame->format &lt;&lt;" " &lt;&lt; decode_frame->linesize[0]&lt;&lt; " "&lt;<cnt return="return" acodec="acodec">id;  
    }
    </cnt></sstream></fstream></iostream>
  • YUV8_420P - AVFrame conversion hazard (only Y plan)

    4 mai 2017, par Flow

    I’m working on a FFMPEG application. The goal is to convert a picture (YUV input format) to an AVFrame to be able to process it (by applying a specific filter) and then realize the invert conversion to redirect it to the output.

    Although some filters as drawgrid or noise are perfectly working, filters which apply some "space transformation" (as a "crop" or a "hflip") seem to affect only over the Y component. The colors of the output pictures aren’t filtered which leads to an unsatisfying result.

    I’m asking myself why I have such a result but I didn’t reach to find the problem origin.

    Here is the part of cod which convert the YUV picture to an AVFrame :

    unsigned int i = 0;
    int number_common_channels = MIN(IMAGEFORMAT_COMPONENTS, AV_NUM_DATA_POINTERS);

    // Transfer the image informations (width, height, pitch and data)
    if ((av_im->width = yuv_im->width[0]) &lt;= 0)
    {
       cu_printf(ERROR, "Width of destination picture null or negative");
       return -1;
    }
    if((av_im->height = yuv_im->height[0]) &lt;= 0)
    {
       cu_printf(ERROR, "Height of destination picture null or negative");
       return -1;
    }
    for (i=0; i &lt; number_common_channels; i++)
    {
       av_im->linesize[i] = yuv_im->pitch[i];
       av_im->data[i] = yuv_im->data[i];
    }

    If necessary, I can transmit you other parts of the cod where the problem could be. Thanks for your cooperation.

    Flow.

    EDIT 1 : After some researches, it would be possible the problem came from my function which initializes the filter graph. Actually, I used the FFMPEG example given on their website to make it and I deleted the options to the pixel format list because I thought it was useless. It’s possible this function and more precisely the av_opt_set_int_list could be the key, but I don’t reach to find a good example using it. Also, another function, av_opt_set_pixel_fmt was created in the last FFMPEG versions and this could be well to try using it, but I don’t know how to do. So please if someone has a good example with that, I’ll took it with hapiness.

    EDIT 2 : The problem came from the way I copied my data back after the filter was applied. Closed.

  • ffmpeg - where to save the video I plan to cut to frames

    28 décembre 2017, par Kyle

    I have ffmpeg up and running on my computer.

    Now I am trying to cut a video into individual frames. The video is titled IMG_2299.MOV.

    I am using the following command :

    ffmpeg -i img_2299.mov $filename%12d.jpeg

    Two questions :
    1) where do I need the actual video saved for this to work ? In the same folder as the ff* executable files (/usr/loca/bin) ?
    2) And where will the images created be saved ?

    I can run the command above — but I don’t see any results.

    Thank you for any help you can offer.