Recherche avancée

Médias (91)

Autres articles (86)

  • Personnaliser en ajoutant son logo, sa bannière ou son image de fond

    5 septembre 2013, par

    Certains thèmes prennent en compte trois éléments de personnalisation : l’ajout d’un logo ; l’ajout d’une bannière l’ajout d’une image de fond ;

  • MediaSPIP v0.2

    21 juin 2013, par

    MediaSPIP 0.2 est la première version de MediaSPIP stable.
    Sa date de sortie officielle est le 21 juin 2013 et est annoncée ici.
    Le fichier zip ici présent contient uniquement les sources de MediaSPIP en version standalone.
    Comme pour la version précédente, il est nécessaire d’installer manuellement l’ensemble des dépendances logicielles sur le serveur.
    Si vous souhaitez utiliser cette archive pour une installation en mode ferme, il vous faudra également procéder à d’autres modifications (...)

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

Sur d’autres sites (10749)

  • capture my webcam and encode to mp4 with ffmpeg, but the x264 works bad

    17 septembre 2015, par zhangxm1991

    here is my version :
    ffmpeg version : 2.3.3
    libx264 version:142.x

    I wat to capture my video and use ffmpeg and x264 to a mp4 file. the solution is 320x240.
    But i found that the video file is so big. Then i found that the P frame and B frame is very big, even nearly equal to the I frame.I do not know why.

    here is my code :

       c->codec_id = codec_id;
       c->bit_rate = 400000;
       c->width    = 320;
       c->height   = 240;
       c->time_base.den = 10;
       c->time_base.num = 1;
       c->pix_fmt       = AV_PIX_FMT_YUV420P;

    Here is my program output :

    [libx264 @ 0xb6200fc0] using cpu capabilities: MMX2 SSE2Fast SSSE3 SSE4.2 AVX

    [libx264 @ 0xb6200fc0] profile High, level 1.3

    [libx264 @ 0xb6200fc0] 264 - core 142 - H.264/MPEG-4 AVC codec - Copyleft 2003-2014 - http://www.videolan.org/x264.html - options: cabac=1 ref=3 deblock=1:0:0 analyse=0x3:0x113 me=hex subme=7 psy=1 psy_rd=1.00:0.00 mixed_ref=1 me_range=16 chroma_me=1 trellis=1 8x8dct=1 cqm=0 deadzone=21,11 fast_pskip=1 chroma_qp_offset=-2 threads=6 lookahead_threads=1 sliced_threads=0 nr=0 decimate=1 interlaced=0 bluray_compat=0 constrained_intra=0 bframes=3 b_pyramid=2 b_adapt=1 b_bias=0 direct=1 weightb=1 open_gop=0 weightp=2 keyint=250 keyint_min=10 scenecut=40 intra_refresh=0 rc_lookahead=40 rc=abr mbtree=1 bitrate=400 ratetol=1.0 qcomp=0.60 qpmin=0 qpmax=69 qpstep=4 ip_ratio=1.40 aq=1:1.00

    Output #0, mp4, to '/home/2014_09_12/0002b6429579/5/2014_09_12_18_39_12_600.mp4':

       Stream #0:0: Video: h264 (libx264), yuv420p, 320x240, q=-1--1, 400 kb/s, 10 tbc

       Stream #0:1: Audio: aac, 8000 Hz, mono, fltp, 32 kb/s

    [mp4 @ 0xb62005e0] Using AVStream.codec.time_base as a timebase hint to the muxer is deprecated. Set AVStream.time_base instead.

    [mp4 @ 0xb62005e0] Using AVStream.codec.time_base as a timebase hint to the muxer is deprecated. Set AVStream.time_base instead.

    [mp4 @ 0xb62005e0] Encoder did not produce proper pts, making some up.

    [libx264 @ 0xb6200fc0] frame I:3     Avg QP: 2.79  size: 72996

    [libx264 @ 0xb6200fc0] frame P:383   Avg QP: 0.14  size: 54075

    [libx264 @ 0xb6200fc0] frame B:216   Avg QP: 1.95  size: 64784

    [libx264 @ 0xb6200fc0] consecutive B-frames: 30.1% 63.2%  6.0%  0.7%

    [libx264 @ 0xb6200fc0] mb I  I16..4: 16.1% 12.7% 71.2%

    [libx264 @ 0xb6200fc0] mb P  I16..4:  3.5%  5.1% 15.9%  P16..4: 20.3% 22.8% 14.0%  0.0%  0.0%    skip:18.3%

    [libx264 @ 0xb6200fc0] mb B  I16..4:  0.4%  2.5%  8.2%  B16..8: 32.6% 19.8% 13.5%  
    direct:22.2%  skip: 0.8%  L0:25.5% L1:12.8% BI:61.6%

    [libx264 @ 0xb6200fc0] final ratefactor: -32.89

    [libx264 @ 0xb6200fc0] 8x8 transform intra:21.0% inter:29.6%

    [libx264 @ 0xb6200fc0] coded y,uvDC,uvAC intra: 100.0% 100.0% 100.0% inter: 83.3% 80.9% 80.9%

    [libx264 @ 0xb6200fc0] i16 v,h,dc,p:  5%  7% 42% 46%

    [libx264 @ 0xb6200fc0] i8 v,h,dc,ddl,ddr,vr,hd,vl,hu: 14% 12% 23%  8%  6%  6%  8%  9% 14%

    [libx264 @ 0xb6200fc0] i4 v,h,dc,ddl,ddr,vr,hd,vl,hu: 12% 11% 19% 10%  8%  8% 10% 10% 12%

    [libx264 @ 0xb6200fc0] i8c dc,h,v,p: 78%  3%  4% 15%

    [libx264 @ 0xb6200fc0] Weighted P-Frames: Y:0.5% UV:0.3%

    [libx264 @ 0xb6200fc0] ref P L0: 43.4% 14.6% 19.0% 22.9%  0.1%

    [libx264 @ 0xb6200fc0] ref B L0: 63.3% 35.7%  1.1%

    [libx264 @ 0xb6200fc0] ref B L1: 97.0%  3.0%

    [libx264 @ 0xb6200fc0] kb/s:4.53

    [aac @ 0xb6201ba0] 2 frames left in the queue on closing
  • capture my webcam and encode to mp4 with ffmpeg, but the x264 works bad

    17 septembre 2015, par zhangxm1991

    here is my version :
    ffmpeg version : 2.3.3
    libx264 version:142.x

    I wat to capture my video and use ffmpeg and x264 to a mp4 file. the solution is 320x240.
    But i found that the video file is so big. Then i found that the P frame and B frame is very big, even nearly equal to the I frame.I do not know why.

    here is my code :

       c->codec_id = codec_id;
       c->bit_rate = 400000;
       c->width    = 320;
       c->height   = 240;
       c->time_base.den = 10;
       c->time_base.num = 1;
       c->pix_fmt       = AV_PIX_FMT_YUV420P;

    Here is my program output :

    [libx264 @ 0xb6200fc0] using cpu capabilities: MMX2 SSE2Fast SSSE3 SSE4.2 AVX

    [libx264 @ 0xb6200fc0] profile High, level 1.3

    [libx264 @ 0xb6200fc0] 264 - core 142 - H.264/MPEG-4 AVC codec - Copyleft 2003-2014 - http://www.videolan.org/x264.html - options: cabac=1 ref=3 deblock=1:0:0 analyse=0x3:0x113 me=hex subme=7 psy=1 psy_rd=1.00:0.00 mixed_ref=1 me_range=16 chroma_me=1 trellis=1 8x8dct=1 cqm=0 deadzone=21,11 fast_pskip=1 chroma_qp_offset=-2 threads=6 lookahead_threads=1 sliced_threads=0 nr=0 decimate=1 interlaced=0 bluray_compat=0 constrained_intra=0 bframes=3 b_pyramid=2 b_adapt=1 b_bias=0 direct=1 weightb=1 open_gop=0 weightp=2 keyint=250 keyint_min=10 scenecut=40 intra_refresh=0 rc_lookahead=40 rc=abr mbtree=1 bitrate=400 ratetol=1.0 qcomp=0.60 qpmin=0 qpmax=69 qpstep=4 ip_ratio=1.40 aq=1:1.00

    Output #0, mp4, to '/home/2014_09_12/0002b6429579/5/2014_09_12_18_39_12_600.mp4':

       Stream #0:0: Video: h264 (libx264), yuv420p, 320x240, q=-1--1, 400 kb/s, 10 tbc

       Stream #0:1: Audio: aac, 8000 Hz, mono, fltp, 32 kb/s

    [mp4 @ 0xb62005e0] Using AVStream.codec.time_base as a timebase hint to the muxer is deprecated. Set AVStream.time_base instead.

    [mp4 @ 0xb62005e0] Using AVStream.codec.time_base as a timebase hint to the muxer is deprecated. Set AVStream.time_base instead.

    [mp4 @ 0xb62005e0] Encoder did not produce proper pts, making some up.

    [libx264 @ 0xb6200fc0] frame I:3     Avg QP: 2.79  size: 72996

    [libx264 @ 0xb6200fc0] frame P:383   Avg QP: 0.14  size: 54075

    [libx264 @ 0xb6200fc0] frame B:216   Avg QP: 1.95  size: 64784

    [libx264 @ 0xb6200fc0] consecutive B-frames: 30.1% 63.2%  6.0%  0.7%

    [libx264 @ 0xb6200fc0] mb I  I16..4: 16.1% 12.7% 71.2%

    [libx264 @ 0xb6200fc0] mb P  I16..4:  3.5%  5.1% 15.9%  P16..4: 20.3% 22.8% 14.0%  0.0%  0.0%    skip:18.3%

    [libx264 @ 0xb6200fc0] mb B  I16..4:  0.4%  2.5%  8.2%  B16..8: 32.6% 19.8% 13.5%  
    direct:22.2%  skip: 0.8%  L0:25.5% L1:12.8% BI:61.6%

    [libx264 @ 0xb6200fc0] final ratefactor: -32.89

    [libx264 @ 0xb6200fc0] 8x8 transform intra:21.0% inter:29.6%

    [libx264 @ 0xb6200fc0] coded y,uvDC,uvAC intra: 100.0% 100.0% 100.0% inter: 83.3% 80.9% 80.9%

    [libx264 @ 0xb6200fc0] i16 v,h,dc,p:  5%  7% 42% 46%

    [libx264 @ 0xb6200fc0] i8 v,h,dc,ddl,ddr,vr,hd,vl,hu: 14% 12% 23%  8%  6%  6%  8%  9% 14%

    [libx264 @ 0xb6200fc0] i4 v,h,dc,ddl,ddr,vr,hd,vl,hu: 12% 11% 19% 10%  8%  8% 10% 10% 12%

    [libx264 @ 0xb6200fc0] i8c dc,h,v,p: 78%  3%  4% 15%

    [libx264 @ 0xb6200fc0] Weighted P-Frames: Y:0.5% UV:0.3%

    [libx264 @ 0xb6200fc0] ref P L0: 43.4% 14.6% 19.0% 22.9%  0.1%

    [libx264 @ 0xb6200fc0] ref B L0: 63.3% 35.7%  1.1%

    [libx264 @ 0xb6200fc0] ref B L1: 97.0%  3.0%

    [libx264 @ 0xb6200fc0] kb/s:4.53

    [aac @ 0xb6201ba0] 2 frames left in the queue on closing
  • Writing a series of images into a video file using libavcodec (ffmpeg)

    19 novembre 2013, par user2978372

    Requirements :

    I have a bunch of images (to be more specific they are 1024x768, 24bpp RGB PNG files) that I want to encode into a video files.

    And I need to use 'libavcodec' library, not 'ffmpeg' tool. (well I know they are basically same in the origin, I am emphasizing because someone may answer to use 'ffmpeg' tool, but that's not a solution what I am looking for)

    I am using h264 encoder.

    Target :
    A high quality video with equal resolution (1024 x 768), YUV420P
    each image has a duration of 1 second.
    24 fps

    Problems :
    i've tried with many different (but same resolution and bits) png images, and all have failed to output a good video.

    For some series of images, only the frames of first second was shown in a good shape, but the remaining frames was distorted and color changed (lighter).

    For some series of images, it seemed the images were zoomed-in and distorted again.

    and etc.

    Question :
    I am a total AV newbie and I need someone to verify my steps for encoding. I am total AV newbie.

    1) av_register_all()

    2) avcodec_register_all()

    3) avcodec_find_encoder()

    4) avcodec_alloc_context3()

    5) sets codec configuraton to context.

    6) avcodec_open2()

    7) opens a output file using fopen_s()

    8)

    for(int second=1; second<=10; ++seconds)
    {

     Read a image from local using Gdiplus

     Create a gdiplus bitmap and draw the image onto this bitmap

     Get the raw byte data using LockBits

     Transfer this RGB raw byte into YUV420 frame using 'swscontext', 'sws_scale'

     for(int f=0; f<24; ++f)
     {
       av_init_packet(&pkt);
       pkt.data = NULL;
       pkt.size = 0;

       pFrame->pts = f;
       ret = avcodec_encode_video2(pContext, &pkt, pFrame, &got_output);

       if(got_output)
       {
           fwrite(pkt.data, 1, pkt.size, outputFile);
           av_free_packet(&pkt);
       }
     }
    }

    /* get the delayed frames */
    for (got_output = 1; got_output; i++) {
       fflush(stdout);

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

       if (got_output) {
           printf("Write frame %3d (size=%5d)\n", i, pkt.size);
           fwrite(pkt.data, 1, pkt.size, f);
           av_free_packet(&pkt);
       }
    }

    close everything required

    I am sure that I misunderstood some steps using ffmpeg api. The above pseudo codes are based on the 'encoding' example of ffmpeg. which part am I doing wrong ? please can someone help me ?

    p.s sorry about broken english. english is not my natvie language. I tried my best =P