Recherche avancée

Médias (91)

Autres articles (70)

  • Installation en mode ferme

    4 février 2011, par

    Le mode ferme permet d’héberger plusieurs sites de type MediaSPIP en n’installant qu’une seule fois son noyau fonctionnel.
    C’est la méthode que nous utilisons sur cette même plateforme.
    L’utilisation en mode ferme nécessite de connaïtre un peu le mécanisme de SPIP contrairement à la version standalone qui ne nécessite pas réellement de connaissances spécifique puisque l’espace privé habituel de SPIP n’est plus utilisé.
    Dans un premier temps, vous devez avoir installé les mêmes fichiers que l’installation (...)

  • Publier sur MédiaSpip

    13 juin 2013

    Puis-je poster des contenus à partir d’une tablette Ipad ?
    Oui, si votre Médiaspip installé est à la version 0.2 ou supérieure. Contacter au besoin l’administrateur de votre MédiaSpip pour le savoir

  • ANNEXE : Les plugins utilisés spécifiquement pour la ferme

    5 mars 2010, par

    Le site central/maître de la ferme a besoin d’utiliser plusieurs plugins supplémentaires vis à vis des canaux pour son bon fonctionnement. le plugin Gestion de la mutualisation ; le plugin inscription3 pour gérer les inscriptions et les demandes de création d’instance de mutualisation dès l’inscription des utilisateurs ; le plugin verifier qui fournit une API de vérification des champs (utilisé par inscription3) ; le plugin champs extras v2 nécessité par inscription3 (...)

Sur d’autres sites (10206)

  • Revision b67bd637e0 : Merge changes I7e96d619,I9a7631d5 * changes : normalize int64_t high value to

    25 février 2014, par Yaowu Xu

    Changed Paths :
     Modify /vp9/encoder/vp9_encodeframe.c


     Modify /vp9/encoder/vp9_rdopt.c



    Merge changes I7e96d619,I9a7631d5

    * changes :
    normalize int64_t high value to INT64_MAX
    resolve issue with arm code failing unit test

  • ffmpeg - how can I get a specific channel using channel masks (e.g. : get only surround left channel)

    26 novembre 2013, par awfulcode

    I'm trying to build a mixer that allows users to toggle specific channels on and off. I know that different codecs encode those channels in different orders (it's not as simple as getting channel #3 as the center channel every time), so the challenge is to properly identify the channel position in surround audio tracks.

    ffmpeg does list the in the beginning of libavutil/channel_layout.h :

    #define AV_CH_FRONT_LEFT             0x00000001
    #define AV_CH_FRONT_RIGHT            0x00000002
    #define AV_CH_FRONT_CENTER           0x00000004
    #define AV_CH_LOW_FREQUENCY          0x00000008
    #define AV_CH_BACK_LEFT              0x00000010
    #define AV_CH_BACK_RIGHT             0x00000020
    #define AV_CH_FRONT_LEFT_OF_CENTER   0x00000040
    #define AV_CH_FRONT_RIGHT_OF_CENTER  0x00000080
    #define AV_CH_BACK_CENTER            0x00000100
    #define AV_CH_SIDE_LEFT              0x00000200
    #define AV_CH_SIDE_RIGHT             0x00000400
    #define AV_CH_TOP_CENTER             0x00000800
    #define AV_CH_TOP_FRONT_LEFT         0x00001000
    #define AV_CH_TOP_FRONT_CENTER       0x00002000
    #define AV_CH_TOP_FRONT_RIGHT        0x00004000
    #define AV_CH_TOP_BACK_LEFT          0x00008000
    #define AV_CH_TOP_BACK_CENTER        0x00010000
    #define AV_CH_TOP_BACK_RIGHT         0x00020000
    #define AV_CH_STEREO_LEFT            0x20000000  ///< Stereo downmix.
    #define AV_CH_STEREO_RIGHT           0x40000000  ///< See AV_CH_STEREO_LEFT.
    #define AV_CH_WIDE_LEFT              0x0000000080000000ULL
    #define AV_CH_WIDE_RIGHT             0x0000000100000000ULL
    #define AV_CH_SURROUND_DIRECT_LEFT   0x0000000200000000ULL
    #define AV_CH_SURROUND_DIRECT_RIGHT  0x0000000400000000ULL
    #define AV_CH_LOW_FREQUENCY_2        0x0000000800000000ULL

    But looking over the header files and whatever little documentation about ffmpeg I couldn't find anything that tells me how to assign a specific channel position (or mask, as it's described in the header file) to a specific bus in a mixer audio unit.

    Do you know how to do that ? Please let me know if you want to look at the code I'm using right now.

    And as always, thank you so much.

  • Parsing FFMpeg AVPackets into h264 nal units

    9 février 2014, par BKC

    I am using FFMpeg To decode live video and stream it using Live555.i am able to decode video and getting the output AVPackets.
    1. Convert the BGR Image to YUV422P format using FFMpeg's SWScale

    // initilize a BGR To RGB converter using FFMpeg
    ctx = sws_getContext(codecContext->width, codecContext->height, AV_PIX_FMT_BGR24, codecContext->width, codecContext->height, AV_PIX_FMT_YUV422P, SWS_BICUBIC, 0, 0, 0);
    tempFrame = av_frame_alloc();
    int num_bytes = avpicture_get_size(PIX_FMT_BGR24, codecContext->width, codecContext->height);
    uint8_t* frame2_buffer = (uint8_t*)av_malloc(num_bytes*sizeof(uint8_t));
    avpicture_fill((AVPicture*)tempFrame, frame2_buffer, PIX_FMT_BGR24, codecContext->width, codecContext->height);

    // inside the loop of where frames are being encoded where rawFrame is a BGR image
    tempFrame->data[0] = reinterpret_cast(rawFrame->_data);
    sws_scale(ctx, tempFrame->data, tempFrame->linesize, 0, frame->height, frame->data, frame->linesize);

    For decoding each Frame

    ret = avcodec_encode_video2(codecContext, &packet, frame, &got_output);
    if(ret < 0)
    {
       fprintf(stderr, "Error in encoding frame\n");
       exit(1);
    }

    if(got_output)
    {
       //printf("Received frame! pushing to queue\n");
       OutputFrame *outFrame = new OutputFrame();
       outFrame->_data = packet.buf->data;
       outFrame->_bufferSize = packet.buf->size;
       outputQueue.push_back(outFrame);
    }

    Till here it works fine. i am able to write these frames to file and play it using VLC. after this i have to pass the output frame to Live555.i think AVPackets i am getting here doesn't need to be a single H264 Nal unit which is required by Live555.

    How to break a AVPacket into Nal units which can be passed to Live555 ?