Recherche avancée

Médias (3)

Mot : - Tags -/pdf

Autres articles (42)

  • Les tâches Cron régulières de la ferme

    1er décembre 2010, par

    La gestion de la ferme passe par l’exécution à intervalle régulier de plusieurs tâches répétitives dites Cron.
    Le super Cron (gestion_mutu_super_cron)
    Cette tâche, planifiée chaque minute, a pour simple effet d’appeler le Cron de l’ensemble des instances de la mutualisation régulièrement. Couplée avec un Cron système sur le site central de la mutualisation, cela permet de simplement générer des visites régulières sur les différents sites et éviter que les tâches des sites peu visités soient trop (...)

  • Organiser par catégorie

    17 mai 2013, par

    Dans MédiaSPIP, une rubrique a 2 noms : catégorie et rubrique.
    Les différents documents stockés dans MédiaSPIP peuvent être rangés dans différentes catégories. On peut créer une catégorie en cliquant sur "publier une catégorie" dans le menu publier en haut à droite ( après authentification ). Une catégorie peut être rangée dans une autre catégorie aussi ce qui fait qu’on peut construire une arborescence de catégories.
    Lors de la publication prochaine d’un document, la nouvelle catégorie créée sera proposée (...)

  • Les thèmes de MediaSpip

    4 juin 2013

    3 thèmes sont proposés à l’origine par MédiaSPIP. L’utilisateur MédiaSPIP peut rajouter des thèmes selon ses besoins.
    Thèmes MediaSPIP
    3 thèmes ont été développés au départ pour MediaSPIP : * SPIPeo : thème par défaut de MédiaSPIP. Il met en avant la présentation du site et les documents média les plus récents ( le type de tri peut être modifié - titre, popularité, date) . * Arscenic : il s’agit du thème utilisé sur le site officiel du projet, constitué notamment d’un bandeau rouge en début de page. La structure (...)

Sur d’autres sites (5720)

  • arm-linux-androideabi/bin/ld : error : cannot find -lpolarssl while compiling rtmp library for Android (host os -Debian)

    24 octobre 2014, par trololo

    I’m trying to build rtmp library for ffmpeg for my Android app.
    In order to compile ffmpeg I have to compile rtmp-library.
    For librtmp.a I need to compile polarssl. I got polarssl library (libpolarssl, -lpolarssl)
    script for polarssl :

    #!/bin/bash
    ANDROID_NDK=/home/sla/work/android-ndk-r10b86/android-ndk-r10b/
    TOOLCHAIN=/home/sla/ffmpeg_build/polarssl/
    $ANDROID_NDK/build/tools/make-standalone-toolchain.sh --toolchain=arm-linux-androideabi-4.8 \
     --system=linux-x86 --platform=android-3 --install-dir=$TOOLCHAIN
    cd /home/sla/ffmpeg_sources/polarssl-1.2.11

    export CROSS_COMPILE=arm-linux-androideabi
    export CC="${CROSS_COMPILE}-gcc"
    export CXX="${CROSS_COMPILE}-g++"

    export PATH=$TOOLCHAIN/bin:$PATH
    #export CC="arm-linux-androideabi-gcc"
    #export CXX="arm-linux-androideabi-g++"
    export LD=arm-linux-androideabi-ld
    export STRIP=arm-linux-androideabi-strip

    export CFLAGS="-std=c99 -O3 -Wall -mthumb -pipe -fpic -fasm \
     -march=armv7-a -mfpu=neon -mfloat-abi=hard -mvectorize-with-neon-quad \
     -finline-limit=300 -ffast-math -fmodulo-sched -fmodulo-sched-allow-regmoves \
     -mhard-float -D_NDK_MATH_NO_SOFTFP=1 -fdiagnostics-color=always \
     -Wno-psabi -Wa,--noexecstack \
     -D__ARM_ARCH_5__ -D__ARM_ARCH_5E__ -D__ARM_ARCH_5T__ -D__ARM_ARCH_5TE__ \
     -DANDROID -DNDEBUG"

    export LDFLAGS="-lm_hard -lz -Wl,--no-undefined -Wl,-z,noexecstack -Wl,--fix-cortex-a8 -Wl,--no-warn-mismatch"
    #cd /home/sla/ffmpeg_sources
    #autoreconf -fiv
    #./configure --host=arm-linux-androideabi --prefix="`pwd`/build/"
    #--disable-shared
    #rm -r build
    make lib -j7 SYS=android CC="$CC" APP=
    make install DESTDIR=/home/sla/ffmpeg_sources/polarssl

    It works fine and creates correspond lirary but when I try to compile rtmplib (rtmpdump) using script

    #!/bin/bash
    ANDROID_NDK=/home/sla/work/android-ndk-r10b86/android-ndk-r10b/
    TOOLCHAIN=/home/sla/ffmpeg_build/rtmp/
    $ANDROID_NDK/build/tools/make-standalone-toolchain.sh --toolchain=arm-linux-androideabi-4.8 \
     --system=linux-x86 --platform=android-3 --install-dir=$TOOLCHAIN
    cd /home/sla/ffmpeg_sources/rtmpdump

    export CROSS_COMPILE=arm-linux-androideabi
    #export CC=${CROSS_COMPILE}-gcc
    #export CXX=${CROSS_COMPILE}-g++

    export PATH=$TOOLCHAIN/bin:$PATH
    export CC="arm-linux-androideabi-gcc"
    export CXX="arm-linux-androideabi-g++"
    export LD=arm-linux-androideabi-ld
    export STRIP=arm-linux-androideabi-strip

    export CFLAGS="-std=c99 -O3 -Wall -mthumb -pipe -fpic -fasm \
     -march=armv7-a -mfpu=neon -mfloat-abi=hard -mvectorize-with-neon-quad \
     -finline-limit=300 -ffast-math -fmodulo-sched -fmodulo-sched-allow-regmoves \
     -mhard-float -D_NDK_MATH_NO_SOFTFP=1 -fdiagnostics-color=always \
     -Wno-psabi -Wa,--noexecstack \
     -D__ARM_ARCH_5__ -D__ARM_ARCH_5E__ -D__ARM_ARCH_5T__ -D__ARM_ARCH_5TE__ \
     -DANDROID -DNDEBUG"

    export LDFLAGS="-lm_hard -lz -Wl,--no-undefined -Wl,-z,noexecstack -Wl,--fix-cortex-a8 -Wl,--no-warn-mismatch"
    #cd /home/sla/ffmpeg_sources
    #autoreconf -fiv
    #./configure --host=arm-linux-androideabi --prefix="`pwd`/build/"
    #--disable-shared
    rm -r build
    make -j7 SYS=android CROSS_COMPILE=arm-linux-androideabi- INC="-I/home/sla/ffmpeg_sources/polarssl-1.2.11/include/ -L/home/sla/ffmpeg_sources/polarssl-1.2.11/library/" CRYPTO=POLARSSL SHARED=
    make install
    make distclean

    I recieve such error :

    /home/sla/ffmpeg_build/rtmp/bin/../lib/gcc/arm-linux-androideabi/4.8/../../../../arm-linux-androideabi/bin/ld: error: cannot find -lpolarssl

    More :

    Copying prebuilt binaries...
    Copying sysroot headers and libraries...
    Copying c++ runtime headers and libraries...
    Copying files to: /home/sla/ffmpeg_build/rtmp/
    Cleaning up...
    Done.
    rm: cannot remove `build': No such file or directory
    make[1]: Entering directory `/home/sla/ffmpeg_sources/rtmpdump/librtmp'
    make[1]: Nothing to be done for `all'.
    make[1]: Leaving directory `/home/sla/ffmpeg_sources/rtmpdump/librtmp'
    arm-linux-androideabi-gcc -Wall  -o rtmpdump rtmpdump.o -Llibrtmp -lrtmp -lpolarssl -lz  
    arm-linux-androideabi-gcc -Wall  -o rtmpgw rtmpgw.o thread.o  -Llibrtmp -lrtmp -lpolarssl -lz  
    arm-linux-androideabi-gcc -Wall  -o rtmpsrv rtmpsrv.o thread.o  -Llibrtmp -lrtmp -lpolarssl -lz  
    arm-linux-androideabi-gcc -Wall  -o rtmpsuck rtmpsuck.o thread.o  -Llibrtmp -lrtmp -lpolarssl -lz  
    /home/sla/ffmpeg_build/rtmp/bin/../lib/gcc/arm-linux-androideabi/4.8/../../../../arm-linux-androideabi/bin/ld: error: cannot find -lpolarssl
    librtmp/librtmp.a(rtmp.o):rtmp.c:function isValidPublicKey: error: undefined reference to 'mpi_init'
    librtmp/librtmp.a(rtmp.o):rtmp.c:function isValidPublicKey: error: undefined reference to 'mpi_lset'
    librtmp/librtmp.a(rtmp.o):rtmp.c:function isValidPublicKey: error: undefined reference to 'mpi_cmp_mpi'
    librtmp/librtmp.a(rtmp.o):/rtmp.c:function homeisValidPublicKey/:sla /errorffmpeg_build:/ rtmpundefined/ binreference/ .to. /'libmpi_copy/'gcc
    /librtmparm/-librtmp.alinux(-rtmp.oandroideabi)/:4.8rtmp.c/:.function. /isValidPublicKey.:. /error.:. /undefined. .reference/ armto- linux'-mpi_sub_intandroideabi'/
    binlibrtmp//ldlibrtmp.a:( rtmp.oerror):: rtmp.ccannot: functionfind  isValidPublicKey-:lpolarssl
    errorlibrtmp:/ librtmp.aundefined( rtmp.oreference) :tortmp.c :'functionmpi_cmp_mpi 'isValidPublicKey
    :librtmp /errorlibrtmp.a:( rtmp.oundefined) :referencertmp.c :tofunction  'isValidPublicKeympi_init:'
    errorlibrtmp:/ librtmp.aundefined( rtmp.oreference) :tortmp.c :'functionmpi_exp_mod 'isValidPublicKey
    :librtmp /errorlibrtmp.a:( rtmp.oundefined) :referencertmp.c :tofunction  'isValidPublicKeympi_lset:'
    errorlibrtmp:/ librtmp.aundefined( rtmp.oreference) :tortmp.c :'functionmpi_cmp_int 'isValidPublicKey
    :librtmp /errorlibrtmp.a:( rtmp.oundefined) :referencertmp.c :tofunction  'isValidPublicKeympi_cmp_mpi:'
    errorlibrtmp:/ librtmp.aundefined( rtmp.oreference) :tortmp.c :'functionmpi_free 'isValidPublicKey
    :librtmp /errorlibrtmp.a:( rtmp.oundefined) :referencertmp.c :tofunction  'DHGenerateKeympi_copy:'
    errorlibrtmp:/ librtmp.aundefined( rtmp.oreference) :tortmp.c :'functionmpi_copy 'isValidPublicKey
    :librtmp /errorlibrtmp.a:( rtmp.oundefined) :referencertmp.c :tofunction  'DHGenerateKeympi_sub_int:'
    errorlibrtmp:/ librtmp.aundefined( rtmp.oreference) :tortmp.c :'functionmpi_copy 'isValidPublicKey
    :librtmp /errorlibrtmp.a:( rtmp.oundefined) :referencertmp.c :tofunction  'DHGenerateKeympi_cmp_mpi:'

    ETC..... A LOT OF ERRORS

    Hot to fix this error ?

  • Error compiling x264 on Mac OS X

    28 mars 2014, par progdo

    I’m trying to compile and install the x264 H.264/AVC encoder.
    I’ve got gcc installed. But I get the ’No working C compiler found’ error when I run :

    ./configure --enable-shared --enable-static

    What can I do ?

    The config log said :

    /bin/gcc conftest.c  -Wall -I. -I$(SRCPATH) -falign-loops=16 -mdynamic-no-pic -o conftest
    clang: error: unknown argument: '-falign-loops=16' [-Wunused-command-line-argument-hard-error-in-future]
    clang: note: this will be a hard error (cannot be downgraded to a warning) in the future
  • Treating a video stream as playback with pausing

    21 janvier 2020, par kealist

    I am working on an application that streams multiple h264 video streams to a video wall. I am using libav/ffmpeg libs to stream multiple video files at once from inside the application. The application will control playback speed, seeking, pausing, resuming, stopping, and the video wall will only be receiving udp streams.

    I want to implement streaming such that if the videos are paused, the same frame is sent continually so that it looks as if it is a video window in a paused state.

    How can i insert copies of the same h264 frame into the stream so that it does not mess up sending of later frames ?

    My code is almost an exact port of transcoding.c from ffmpeg.exe. Planning on retaining a copy of the last frame/packet, and when paused to send this. Is this likely to function properly, or should I approach this a different way.

    while (true)
    {
       if (paused) {
           // USE LAST PACKET
       }
       else
       {
           if ((ret = ffmpeg.av_read_frame(ifmt_ctx, &packet)) < 0)
               break;
       }
       stream_index = packet.stream_index;

       type = ifmt_ctx->streams[packet.stream_index]->codec->codec_type;
       Console.WriteLine("Demuxer gave frame of stream_index " + stream_index);
       if (filter_ctx[stream_index].filter_graph != null)
       {
           Console.WriteLine("Going to reencode&filter the frame\n");
           frame = ffmpeg.av_frame_alloc();
           if (frame == null)
           {
               ret = ffmpeg.AVERROR(ffmpeg.ENOMEM);
               break;
           }

           packet.dts = ffmpeg.av_rescale_q_rnd(packet.dts,
                   ifmt_ctx->streams[stream_index]->time_base,
                   ifmt_ctx->streams[stream_index]->codec->time_base,
                   AVRounding.AV_ROUND_NEAR_INF | AVRounding.AV_ROUND_PASS_MINMAX);
           packet.pts = ffmpeg.av_rescale_q_rnd(packet.pts,
                   ifmt_ctx->streams[stream_index]->time_base,
                   ifmt_ctx->streams[stream_index]->codec->time_base,
                   AVRounding.AV_ROUND_NEAR_INF | AVRounding.AV_ROUND_PASS_MINMAX);



           if (type == AVMediaType.AVMEDIA_TYPE_VIDEO)
           {

               ret = ffmpeg.avcodec_decode_video2(stream_ctx[packet.stream_index].dec_ctx, frame,
                   &got_frame, &packet);

           }
           else
           {
               ret = ffmpeg.avcodec_decode_audio4(stream_ctx[packet.stream_index].dec_ctx, frame,
                   &got_frame, &packet);
           }
           if (ret < 0)
           {
               ffmpeg.av_frame_free(&frame);
               Console.WriteLine("Decoding failed\n");
               break;
           }
           if (got_frame != 0)
           {
               frame->pts = ffmpeg.av_frame_get_best_effort_timestamp(frame);
               ret = filter_encode_write_frame(frame, (uint)stream_index);
               // SAVE LAST FRAME/PACKET HERE
               ffmpeg.av_frame_free(&frame);
               if (ret < 0)
                   goto end;
           }
           else
           {
               ffmpeg.av_frame_free(&frame);
           }
       }
       else
       {
           /* remux this frame without reencoding */
           packet.dts = ffmpeg.av_rescale_q_rnd(packet.dts,
                   ifmt_ctx->streams[stream_index]->time_base,
                   ofmt_ctx->streams[stream_index]->time_base,
                   AVRounding.AV_ROUND_NEAR_INF | AVRounding.AV_ROUND_PASS_MINMAX);
           packet.pts = ffmpeg.av_rescale_q_rnd(packet.pts,
                   ifmt_ctx->streams[stream_index]->time_base,
                   ofmt_ctx->streams[stream_index]->time_base,
                   AVRounding.AV_ROUND_NEAR_INF | AVRounding.AV_ROUND_PASS_MINMAX);
           ret = ffmpeg.av_interleaved_write_frame(ofmt_ctx, &packet);
           if (ret < 0)
               goto end;
       }
       ffmpeg.av_free_packet(&packet);
    }