Recherche avancée

Médias (2)

Mot : - Tags -/plugins

Autres articles (66)

  • Creating farms of unique websites

    13 avril 2011, par

    MediaSPIP platforms can be installed as a farm, with a single "core" hosted on a dedicated server and used by multiple websites.
    This allows (among other things) : implementation costs to be shared between several different projects / individuals rapid deployment of multiple unique sites creation of groups of like-minded sites, making it possible to browse media in a more controlled and selective environment than the major "open" (...)

  • Submit enhancements and plugins

    13 avril 2011

    If you have developed a new extension to add one or more useful features to MediaSPIP, let us know and its integration into the core MedisSPIP functionality will be considered.
    You can use the development discussion list to request for help with creating a plugin. As MediaSPIP is based on SPIP - or you can use the SPIP discussion list SPIP-Zone.

  • Sélection de projets utilisant MediaSPIP

    29 avril 2011, par

    Les exemples cités ci-dessous sont des éléments représentatifs d’usages spécifiques de MediaSPIP pour certains projets.
    Vous pensez avoir un site "remarquable" réalisé avec MediaSPIP ? Faites le nous savoir ici.
    Ferme MediaSPIP @ Infini
    L’Association Infini développe des activités d’accueil, de point d’accès internet, de formation, de conduite de projets innovants dans le domaine des Technologies de l’Information et de la Communication, et l’hébergement de sites. Elle joue en la matière un rôle unique (...)

Sur d’autres sites (8342)

  • ffmpeg fails to copy correct duration

    2 février 2016, par guneykayim

    I want to trim a video with the following command :

    ffmpeg.exe -i in.mp4 -ss 76 -t 10 -c copy -an out.mp4

    which exactly means, copy 10 seconds after 76 seconds, and don’t copy audio. However out.mp4 is 5 seconds length.

    This is ffmpeg console output :

    ffmpeg.exe -i in.mp4 -ss 76 -t 10 -c copy -an out.mp4
    ffmpeg version N-78197-g5893e87 Copyright (c) 2000-2016 the FFmpeg developers
     built with gcc 5.2.0 (GCC)
     configuration: --enable-gpl --enable-version3 --disable-w32threads --enable-avisynth --enable-bzli
    b --enable-fontconfig --enable-frei0r --enable-gnutls --enable-iconv --enable-libass --enable-libblu
    ray --enable-libbs2b --enable-libcaca --enable-libdcadec --enable-libfreetype --enable-libgme --enab
    le-libgsm --enable-libilbc --enable-libmodplug --enable-libmp3lame --enable-libopencore-amrnb --enab
    le-libopencore-amrwb --enable-libopenjpeg --enable-libopus --enable-librtmp --enable-libschroedinger
    --enable-libsoxr --enable-libspeex --enable-libtheora --enable-libtwolame --enable-libvidstab --ena
    ble-libvo-aacenc --enable-libvo-amrwbenc --enable-libvorbis --enable-libvpx --enable-libwavpack --en
    able-libwebp --enable-libx264 --enable-libx265 --enable-libxavs --enable-libxvid --enable-libzimg --
    enable-lzma --enable-decklink --enable-zlib
     libavutil      55. 16.101 / 55. 16.101
     libavcodec     57. 22.102 / 57. 22.102
     libavformat    57. 23.101 / 57. 23.101
     libavdevice    57.  0.101 / 57.  0.101
     libavfilter     6. 27.100 /  6. 27.100
     libswscale      4.  0.100 /  4.  0.100
     libswresample   2.  0.101 /  2.  0.101
     libpostproc    54.  0.100 / 54.  0.100
    Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'in.mp4':
     Metadata:
       major_brand     : isom
       minor_version   : 512
       compatible_brands: isomiso2avc1mp41
       encoder         : Lavf54.63.104
     Duration: 00:02:28.54, start: 0.000000, bitrate: 2018 kb/s
       Stream #0:0(und): Video: h264 (High) (avc1 / 0x31637661), yuv420p, 1920x1056 [SAR 1:1 DAR 20:11]
    , 1887 kb/s, 23.98 fps, 23.98 tbr, 90k tbn, 47.95 tbc (default)
       Metadata:
         handler_name    : VideoHandler
       Stream #0:1(und): Audio: aac (LC) (mp4a / 0x6134706D), 44100 Hz, stereo, fltp, 125 kb/s (default
    )
       Metadata:
         handler_name    : SoundHandler
    Output #0, mp4, to 'out.mp4':
     Metadata:
       major_brand     : isom
       minor_version   : 512
       compatible_brands: isomiso2avc1mp41
       encoder         : Lavf57.23.101
       Stream #0:0(und): Video: h264 ([33][0][0][0] / 0x0021), yuv420p, 1920x1056 [SAR 1:1 DAR 20:11],
    q=2-31, 1887 kb/s, 23.98 fps, 23.98 tbr, 90k tbn, 90k tbc (default)
       Metadata:
         handler_name    : VideoHandler
    Stream mapping:
     Stream #0:0 -> #0:0 (copy)
    Press [q] to stop, [?] for help
    frame=  143 fps=0.0 q=-1.0 Lsize=    1502kB time=00:00:09.96 bitrate=1235.5kbits/s speed= 524x
    video:1499kB audio:0kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 0.194616%

    When I analyze this console output I see this inconsistency. It says output time is 9.96 seconds. On the other hand it says frame is 143, so from the latter information I can calculate duration by frame/fps which is 143/23.98=5.96.

    Another strange behaviour with this copy command is when I change the start time to something else output video length is varying between 5-10 seconds depending on the start time.

    What might be the problem causing these unexpected behaviours ?

  • ffmpeg sws_scale YUV420p to RGBA not giving correct scaling result (c++)

    2 février 2016, par Taimoor Alam

    I am trying to scale a decoded YUV420p frame(1018x700) via sws_scale to RGBA, I am saving data to a raw video file and then playing the raw video using ffplay to see the result.

    Here is my code :

    sws_ctx = sws_getContext(video_dec_ctx->width, video_dec_ctx->height,AV_PIX_FMT_YUV420P, video_dec_ctx->width, video_dec_ctx->height, AV_PIX_FMT_BGR32, SWS_LANCZOS | SWS_ACCURATE_RND, 0, 0, 0);
    ret = avcodec_decode_video2(video_dec_ctx, yuvframe, got_frame, &pkt);
       if (ret < 0) {
           std::cout<<"Error in decoding"</the source and destination heights and widths are the same
           int sourceX = video_dec_ctx->width;
           int sourceY = video_dec_ctx->height;
           int destX = video_dec_ctx->width;
           int destY = video_dec_ctx->height;

           //declare destination frame
           AVFrame avFrameRGB;
           avFrameRGB.linesize[0] = destX * 4;
           avFrameRGB.data[0] = (uint8_t*)malloc(avFrameRGB.linesize[0] * destY);

           //scale the frame to avFrameRGB
           sws_scale(sws_ctx, yuvframe->data, yuvframe->linesize, 0, yuvframe->height, avFrameRGB.data, avFrameRGB.linesize);

           //write to file
           fwrite(avFrameRGB.data[0], 1, video_dst_bufsize, video_dst_file);
    }

    Here is the result without scaling (i.e. in YUV420p Format)
    Here is the result without scaling (i.e. in YUV420p Format)

    Here is the after scaling while playing using ffplay (i.e. in RGBA format)
    enter image description here

    I run the ffplay using the following command (’video’ is the raw video file)

    ffplay -f rawvideo -pix_fmt bgr32 -video_size 1018x700 video

    What should I fix to make the correct scaling happen to RGB32 ?

  • How can I really pick up the correct format when storing incoming stream ?

    3 février 2016, par Nyaruko

    I want to re-mux a incoming h264 stream. But how could I pick the correct AVOutputFormat for the AVFormatContext ?

    Currently I used :

    AVOutputFormat* fmt = av_guess_format(NULL, "xxx.avi", NULL);

    // Open the context
    //---------------------------------------------------------------------
    outFormatCtx = ffmpeg::avformat_alloc_context();

    //Set the output format
    //----------------------------------------------------------------------
    outFormatCtx->oformat = fmt;

    And everything works fine.
    However, if I change the first line to :
    av_guess_format("h264",NULL, NULL) ;
    the recorded stream cannot be played because of bad header/tailer.

    Is there a more smart way of picking the correct AVOutputFormat to be used ?