Recherche avancée

Médias (0)

Mot : - Tags -/content

Aucun média correspondant à vos critères n’est disponible sur le site.

Autres articles (89)

  • Amélioration de la version de base

    13 septembre 2013

    Jolie sélection multiple
    Le plugin Chosen permet d’améliorer l’ergonomie des champs de sélection multiple. Voir les deux images suivantes pour comparer.
    Il suffit pour cela d’activer le plugin Chosen (Configuration générale du site > Gestion des plugins), puis de configurer le plugin (Les squelettes > Chosen) en activant l’utilisation de Chosen dans le site public et en spécifiant les éléments de formulaires à améliorer, par exemple select[multiple] pour les listes à sélection multiple (...)

  • Soumettre bugs et patchs

    10 avril 2011

    Un logiciel n’est malheureusement jamais parfait...
    Si vous pensez avoir mis la main sur un bug, reportez le dans notre système de tickets en prenant bien soin de nous remonter certaines informations pertinentes : le type de navigateur et sa version exacte avec lequel vous avez l’anomalie ; une explication la plus précise possible du problème rencontré ; si possibles les étapes pour reproduire le problème ; un lien vers le site / la page en question ;
    Si vous pensez avoir résolu vous même le bug (...)

  • Configuration spécifique pour PHP5

    4 février 2011, par

    PHP5 est obligatoire, vous pouvez l’installer en suivant ce tutoriel spécifique.
    Il est recommandé dans un premier temps de désactiver le safe_mode, cependant, s’il est correctement configuré et que les binaires nécessaires sont accessibles, MediaSPIP devrait fonctionner correctement avec le safe_mode activé.
    Modules spécifiques
    Il est nécessaire d’installer certains modules PHP spécifiques, via le gestionnaire de paquet de votre distribution ou manuellement : php5-mysql pour la connectivité avec la (...)

Sur d’autres sites (6156)

  • rtpdec : Don’t pass non-const pointers to fmtp attribute parsing functions

    24 février 2015, par Martin Storsjö
    rtpdec : Don’t pass non-const pointers to fmtp attribute parsing functions
    

    This makes it clear that the individual parsing functions can’t
    touch the parsed out value.

    Signed-off-by : Martin Storsjö <martin@martin.st>

    • [DH] libavformat/rtpdec.c
    • [DH] libavformat/rtpdec.h
    • [DH] libavformat/rtpdec_amr.c
    • [DH] libavformat/rtpdec_dv.c
    • [DH] libavformat/rtpdec_h264.c
    • [DH] libavformat/rtpdec_hevc.c
    • [DH] libavformat/rtpdec_ilbc.c
    • [DH] libavformat/rtpdec_latm.c
    • [DH] libavformat/rtpdec_mpeg4.c
    • [DH] libavformat/rtpdec_xiph.c
  • Encoding raw YUV420P to h264 with AVCodec on iOS

    4 janvier 2013, par Wade

    I am trying to encode a single YUV420P image gathered from a CMSampleBuffer to an AVPacket so that I can send h264 video over the network with RTMP.

    The posted code example seems to work as avcodec_encode_video2 returns 0 (Success) however got_output is also 0 (AVPacket is empty).

    Does anyone have any experience with encoding video on iOS devices that might know what I am doing wrong ?

    - (void) captureOutput:(AVCaptureOutput *)captureOutput
    didOutputSampleBuffer:(CMSampleBufferRef)sampleBuffer
           fromConnection:(AVCaptureConnection *)connection {

     // sampleBuffer now contains an individual frame of raw video frames
     CVPixelBufferRef pixelBuffer = CMSampleBufferGetImageBuffer(sampleBuffer);

     CVPixelBufferLockBaseAddress(pixelBuffer, 0);

     // access the data
     int width = CVPixelBufferGetWidth(pixelBuffer);
     int height = CVPixelBufferGetHeight(pixelBuffer);
     int bytesPerRow = CVPixelBufferGetBytesPerRowOfPlane(pixelBuffer, 0);
     unsigned char *rawPixelBase = (unsigned char *)CVPixelBufferGetBaseAddressOfPlane(pixelBuffer, 0);


     // Convert the raw pixel base to h.264 format
     AVCodec *codec = 0;
     AVCodecContext *context = 0;
     AVFrame *frame = 0;
     AVPacket packet;

     //avcodec_init();
     avcodec_register_all();
     codec = avcodec_find_encoder(AV_CODEC_ID_H264);

     if (codec == 0) {
       NSLog(@"Codec not found!!");
       return;
     }

     context = avcodec_alloc_context3(codec);

     if (!context) {
       NSLog(@"Context no bueno.");
       return;
     }

     // Bit rate
     context->bit_rate = 400000; // HARD CODE
     context->bit_rate_tolerance = 10;
     // Resolution
     context->width = width;
     context->height = height;
     // Frames Per Second
     context->time_base = (AVRational) {1,25};
     context->gop_size = 1;
     //context->max_b_frames = 1;
     context->pix_fmt = PIX_FMT_YUV420P;

     // Open the codec
     if (avcodec_open2(context, codec, 0) &lt; 0) {
       NSLog(@"Unable to open codec");
       return;
     }


     // Create the frame
     frame = avcodec_alloc_frame();
     if (!frame) {
       NSLog(@"Unable to alloc frame");
       return;
     }
     frame->format = context->pix_fmt;
     frame->width = context->width;
     frame->height = context->height;


     avpicture_fill((AVPicture *) frame, rawPixelBase, context->pix_fmt, frame->width, frame->height);

     int got_output = 0;
     av_init_packet(&amp;packet);
     avcodec_encode_video2(context, &amp;packet, frame, &amp;got_output)

     // Unlock the pixel data
     CVPixelBufferUnlockBaseAddress(pixelBuffer, 0);
     // Send the data over the network
     [self uploadData:[NSData dataWithBytes:packet.data length:packet.size] toRTMP:self.rtmp_OutVideoStream];
    }

    Note : It is known that this code has memory leaks because I am not freeing the memory that is dynamically allocated.

    UPDATE

    I updated my code to use @pogorskiy method. I only try to upload the frame if got output returns 1 and clear the buffer once I am done encoding video frames.

  • Extract all audio from a mov file into a aac file [closed]

    5 février 2024, par Sushrut Kaul

    I have a video which contains several streams as shown below :

    &#xA;

    Stream #0:0[0x1](eng): Video: prores (XQ) (ap4x / 0x78347061), yuv444p12le(bt709/smpte432/smpte2084, progressive), 3840x2160, 1222881 kb/s, SAR 1:1 DAR 16:9, 23.98 fps, 23.98 tbr, 24k tbn (default)&#xA;    Metadata:&#xA;      creation_time   : 2022-08-26T22:20:26.000000Z&#xA;      handler_name    : Apple Video Media Handler&#xA;      vendor_id       : appl&#xA;      encoder         : Apple ProRes 4444 XQ&#xA;      timecode        : 00:59:59:00&#xA;    Side data:&#xA;      Content Light Level Metadata, MaxCLL=726, MaxFALL=93&#xA;  Stream #0:1[0x2](eng): Audio: pcm_s24le (in24 / 0x34326E69), 48000 Hz, 1 channels (FL), s32 (24 bit), 1152 kb/s (default)&#xA;    Metadata:&#xA;      creation_time   : 2022-08-26T22:20:26.000000Z&#xA;      handler_name    : Apple Sound Media Handler&#xA;      vendor_id       : [0][0][0][0]&#xA;  Stream #0:2[0x3](eng): Audio: pcm_s24le (in24 / 0x34326E69), 48000 Hz, 1 channels (FR), s32 (24 bit), 1152 kb/s (default)&#xA;    Metadata:&#xA;      creation_time   : 2022-08-26T22:20:26.000000Z&#xA;      handler_name    : Apple Sound Media Handler&#xA;      vendor_id       : [0][0][0][0]&#xA;  Stream #0:3[0x4](eng): Audio: pcm_s24le (in24 / 0x34326E69), 48000 Hz, mono, s32 (24 bit), 1152 kb/s (default)&#xA;    Metadata:&#xA;      creation_time   : 2022-08-26T22:20:26.000000Z&#xA;      handler_name    : Apple Sound Media Handler&#xA;      vendor_id       : [0][0][0][0]&#xA;  Stream #0:4[0x5](eng): Audio: pcm_s24le (in24 / 0x34326E69), 48000 Hz, 1 channels (LFE), s32 (24 bit), 1152 kb/s (default)&#xA;    Metadata:&#xA;      creation_time   : 2022-08-26T22:20:26.000000Z&#xA;      handler_name    : Apple Sound Media Handler&#xA;      vendor_id       : [0][0][0][0]&#xA;  Stream #0:5[0x6](eng): Audio: pcm_s24le (in24 / 0x34326E69), 48000 Hz, 1 channels (BL), s32 (24 bit), 1152 kb/s (default)&#xA;    Metadata:&#xA;      creation_time   : 2022-08-26T22:20:26.000000Z&#xA;      handler_name    : Apple Sound Media Handler&#xA;      vendor_id       : [0][0][0][0]&#xA;  Stream #0:6[0x7](eng): Audio: pcm_s24le (in24 / 0x34326E69), 48000 Hz, 1 channels (BR), s32 (24 bit), 1152 kb/s (default)&#xA;    Metadata:&#xA;      creation_time   : 2022-08-26T22:20:26.000000Z&#xA;      handler_name    : Apple Sound Media Handler&#xA;      vendor_id       : [0][0][0][0]&#xA;  Stream #0:7[0x8](eng): Audio: pcm_s24le (in24 / 0x34326E69), 48000 Hz, 1 channels (DL), s32 (24 bit), 1152 kb/s (default)&#xA;    Metadata:&#xA;      creation_time   : 2022-08-26T22:20:26.000000Z&#xA;      handler_name    : Apple Sound Media Handler&#xA;      vendor_id       : [0][0][0][0]&#xA;  Stream #0:8[0x9](eng): Audio: pcm_s24le (in24 / 0x34326E69), 48000 Hz, 1 channels (DR), s32 (24 bit), 1152 kb/s (default)&#xA;    Metadata:&#xA;      creation_time   : 2022-08-26T22:20:26.000000Z&#xA;      handler_name    : Apple Sound Media Handler&#xA;      vendor_id       : [0][0][0][0]&#xA;

    &#xA;

    As you can see, these audio streams are single channel as each stream is mapping to a unique channel.

    &#xA;

    I want to combine these audio streams into a aac file such that the output has the channel information retained.

    &#xA;

    I use the following command to do this :

    &#xA;

    ffmpeg -i -filter _complex "[0:a:0][0:a:1][0:a:2][0:a:3][0:a:4][0:a:5][0:a:6][0:a:7]join=inputs=8:channel_layout=7.1[aout]" -map "[aout]" -c:a aac output_audio_join.aac

    &#xA;

    The individual audio streams were having a duration of duration=103.728625 seconds.

    &#xA;

    The output however is 862.207660 seconds. Why ?

    &#xA;