Recherche avancée

Médias (91)

Autres articles (70)

  • Websites made ​​with MediaSPIP

    2 mai 2011, par

    This page lists some websites based on MediaSPIP.

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

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

Sur d’autres sites (10748)

  • Révision 20312 : eviter trouver_table() sur une table inconnue et une erreur SQL quand on fait ob...

    16 mars 2013, par cedric -

    Reduire l’importance du log correspondant. Il semble y avoir de quoi optimiser tout cela en utilisant la liste des tables au lieu de passer par trouver_table. On touche a minima ici pour ne rien casser

  • Why can't I compile ffmpeg's shared libraries ? errors with "recompile with -fPIC"

    14 juillet, par Vigrond

    error :

    


    LD  libavcodec/libavcodec.so.61
/usr/bin/ld: /home/user/ffmpeg_build/lib/libopus.a(celt.o): relocation R_X86_64_32 against `.rodata.str1.8' can not be used when making a shared object; recompile with -fPIC
/usr/bin/ld: failed to set dynamic section sizes: bad value
collect2: error: ld returned 1 exit status
make: *** [ffbuild/library.mak:119: libavcodec/libavcodec.so.61] Error 1


    


    so far I've removed --enable-libfdk_aac and --enable-libmp3lame with the same errors, and now it is erroring on libopus

    


    I thought -fPIC could be done with --enable-shared but it seems not the case

    


    version : ffmpeg 7.1.1

    


    command :

    


    PATH="$HOME/bin:$PATH" PKG_CONFIG_PATH="$HOME/ffmpeg_build/lib/pkgconfig" ./configure \
  --prefix="$HOME/ffmpeg_build" \
  --pkg-config-flags="--static" \
  --extra-cflags="-I$HOME/ffmpeg_build/include" \
  --extra-ldflags="-L$HOME/ffmpeg_build/lib" \
  --extra-libs=-lpthread \
  --extra-libs=-lm \
  --bindir="$HOME/bin" \
  --enable-gpl \
  --enable-libfreetype \
  --enable-libharfbuzz \
  --enable-libopus \
  --enable-libvpx \
  --enable-libx264 \
  --enable-libx265 \
  --enable-nonfree \
  --enable-shared \
  --enable-avisynth \
  --enable-pic \
  --enable-version3 \
  --enable-ffplay \
  --enable-ffprobe


    


  • FFmpeg C demo generates "Could not update timestamps for skipped samples" warning

    14 juillet 2024, par aabiji

    When I run my demo code I get these warnings when testing it on a webm video :

    


    [opus @ 0x5ec0fc1b4580] Could not update timestamps for skipped samples.
[opus @ 0x5ec0fc1b4580] Could not update timestamps for discarded samples.


    


    But it's not limited to webm, I also get this warning when running with a mp4 :

    


    [aac @ 0x61326fb83700] Could not update timestamps for skipped samples.


    


    I know I'm getting warnings because ffmpeg must be skipping packets, but I have no idea why. Why are we skipping packets (and if that's not the problem, what is) and how can we fix the problem ?

    


    Here's my code for context :

    


    #include <libavcodec></libavcodec>avcodec.h>&#xA;#include <libavformat></libavformat>avformat.h>&#xA;&#xA;int main()&#xA;{&#xA;    int ret = 0;&#xA;&#xA;    const AVCodec* codec;&#xA;    AVFormatContext* fmt_ctx = avformat_alloc_context();&#xA;&#xA;    const char* file2 = "/home/aabiji/Videos/sync-test.webm";&#xA;    if ((ret = avformat_open_input(&amp;fmt_ctx, file2, NULL, NULL)) &lt; 0) {&#xA;        av_log(NULL, AV_LOG_ERROR, "Couldn&#x27;t open input file\n");&#xA;        return -1;&#xA;    }&#xA;&#xA;    ret = av_find_best_stream(fmt_ctx, AVMEDIA_TYPE_AUDIO, -1, -1, &amp;codec, 0);&#xA;    if (ret &lt; 0) {&#xA;        av_log(NULL, AV_LOG_ERROR, "Couldn&#x27;t find a media stream\n");&#xA;        return -1;&#xA;    }&#xA;&#xA;    int stream_index = ret;&#xA;    AVStream* media = fmt_ctx->streams[stream_index];&#xA;&#xA;    AVCodecContext* codec_context = avcodec_alloc_context3(codec);&#xA;    if (avcodec_parameters_to_context(codec_context, media->codecpar) &lt; 0) {&#xA;        return -1;&#xA;    }&#xA;&#xA;    if ((ret = avcodec_open2(codec_context, codec, NULL)) &lt; 0) {&#xA;        av_log(NULL, AV_LOG_ERROR, "Couldn&#x27;t open media decoder\n");&#xA;        return -1;&#xA;    }&#xA;&#xA;    AVPacket* packet = av_packet_alloc();&#xA;    AVFrame* frame = av_frame_alloc();&#xA;&#xA;    while ((ret = av_read_frame(fmt_ctx, packet)) >= 0) {&#xA;        if (packet->stream_index != stream_index) {&#xA;            continue;&#xA;        }&#xA;&#xA;        ret = avcodec_send_packet(codec_context, packet);&#xA;        if (ret &lt; 0) {&#xA;            break; // Error&#xA;        }&#xA;&#xA;        while (ret >= 0) {&#xA;            ret = avcodec_receive_frame(codec_context, frame);&#xA;            if (ret == AVERROR_EOF || ret == AVERROR(EAGAIN)) {&#xA;                break;&#xA;            } else if (ret &lt; 0) {&#xA;                fprintf(stderr, "Error during decoding\n");&#xA;                break;&#xA;            }&#xA;            av_frame_unref(frame);&#xA;        }&#xA;&#xA;        av_packet_unref(packet);&#xA;    }&#xA;&#xA;    avcodec_flush_buffers(codec_context);&#xA;&#xA;    av_packet_unref(packet);&#xA;    av_frame_free(&amp;frame);&#xA;    av_packet_free(&amp;packet);&#xA;    avcodec_free_context(&amp;codec_context);&#xA;    avformat_close_input(&amp;fmt_ctx);&#xA;    return 0;&#xA;}&#xA;

    &#xA;