Recherche avancée

Médias (17)

Mot : - Tags -/wired

Autres articles (77)

  • List of compatible distributions

    26 avril 2011, par

    The table below is the list of Linux distributions compatible with the automated installation script of MediaSPIP. Distribution nameVersion nameVersion number Debian Squeeze 6.x.x Debian Weezy 7.x.x Debian Jessie 8.x.x Ubuntu The Precise Pangolin 12.04 LTS Ubuntu The Trusty Tahr 14.04
    If you want to help us improve this list, you can provide us access to a machine whose distribution is not mentioned above or send the necessary fixes to add (...)

  • Ajouter des informations spécifiques aux utilisateurs et autres modifications de comportement liées aux auteurs

    12 avril 2011, par

    La manière la plus simple d’ajouter des informations aux auteurs est d’installer le plugin Inscription3. Il permet également de modifier certains comportements liés aux utilisateurs (référez-vous à sa documentation pour plus d’informations).
    Il est également possible d’ajouter des champs aux auteurs en installant les plugins champs extras 2 et Interface pour champs extras.

  • Les autorisations surchargées par les plugins

    27 avril 2010, par

    Mediaspip core
    autoriser_auteur_modifier() afin que les visiteurs soient capables de modifier leurs informations sur la page d’auteurs

Sur d’autres sites (12067)

  • Streaming client over TCP and RTSP through Wi-Fi or LAN in Android

    6 janvier 2015, par Gowtham

    I am struggling to develop streaming client for DVR camera’s, I tried with VLC Media player through RTSP protocol I got the solution (used Wi-Fi standard model like, Netgear etc.,), but the same code is not supporting for other Wi-Fi Modem’s, now am working with FFMPEG framework to implement the streaming client in android using JNI API. Not getting any proper idea to implement JNI api

    Network Camera working with IP Cam Viewer App

    code below,

    /*****************************************************/
    /* functional call */
    /*****************************************************/

    jboolean Java_FFmpeg_allocateBuffer( JNIEnv* env, jobject thiz )
    {

       // Allocate an AVFrame structure
       pFrameRGB=avcodec_alloc_frame();
       if(pFrameRGB==NULL)
           return 0;
    sprintf(debugMsg, "%d %d", screenWidth, screenHeight);
    INFO(debugMsg);
       // Determine required buffer size and allocate buffer
       numBytes=avpicture_get_size(dstFmt, screenWidth, screenHeight);
    /*
       numBytes=avpicture_get_size(dstFmt, pCodecCtx->width,
                     pCodecCtx->height);
    */
       buffer=(uint8_t *)av_malloc(numBytes * sizeof(uint8_t));

       // Assign appropriate parts of buffer to image planes in pFrameRGB
       // Note that pFrameRGB is an AVFrame, but AVFrame is a superset
       // of AVPicture
       avpicture_fill((AVPicture *)pFrameRGB, buffer, dstFmt, screenWidth, screenHeight);

       return 1;
    }


    /* for each decoded frame */
    jbyteArray Java_FFmpeg_getNextDecodedFrame( JNIEnv* env, jobject thiz )
    {


    av_free_packet(&packet);

    while(av_read_frame(pFormatCtx, &packet)>=0) {

       if(packet.stream_index==videoStream) {

           avcodec_decode_video2(pCodecCtx, pFrame, &frameFinished, &packet);

           if(frameFinished) {    

           img_convert_ctx = sws_getContext(pCodecCtx->width, pCodecCtx->height, pCodecCtx->pix_fmt, screenWidth, screenHeight, dstFmt, SWS_BICUBIC, NULL, NULL, NULL);

    /*
    img_convert_ctx = sws_getContext(pCodecCtx->width, pCodecCtx->height, pCodecCtx->pix_fmt, pCodecCtx->width, pCodecCtx->height, dstFmt, SWS_BICUBIC, NULL, NULL, NULL);
    */

           sws_scale(img_convert_ctx, (const uint8_t* const*)pFrame->data, pFrame->linesize,
        0, pCodecCtx->height, pFrameRGB->data, pFrameRGB->linesize);

    ++frameCount;

           /* uint8_t == unsigned 8 bits == jboolean */
           jbyteArray nativePixels = (*env)->NewByteArray(env, numBytes);
           (*env)->SetByteArrayRegion(env, nativePixels, 0, numBytes, buffer);
           return nativePixels;
           }

       }

       av_free_packet(&packet);
    }

    return NULL;
    }

    /*****************************************************/
    /* / functional call */
    /*****************************************************/


    jstring
    Java_FFmpeg_play( JNIEnv* env, jobject thiz, jstring jfilePath )
    {
       INFO("--- Play");
    char* filePath = (char *)(*env)->GetStringUTFChars(env, jfilePath, NULL);
    RE(filePath);

    /*****************************************************/

     AVFormatContext *pFormatCtx;
     int             i, videoStream;
     AVCodecContext  *pCodecCtx;
     AVCodec         *pCodec;
     AVFrame         *pFrame;
     AVPacket        packet;
     int             frameFinished;
     float           aspect_ratio;
     struct SwsContext *img_convert_ctx;

    INFO(filePath);

    /* FFmpeg */

     av_register_all();

     if(av_open_input_file(&pFormatCtx, filePath, NULL, 0, NULL)!=0)
       RE("failed av_open_input_file ");

     if(av_find_stream_info(pFormatCtx)<0)
           RE("failed av_find_stream_info");

     videoStream=-1;
     for(i=0; inb_streams; i++)
       if(pFormatCtx->streams[i]->codec->codec_type==AVMEDIA_TYPE_VIDEO) {
         videoStream=i;
         break;
       }
     if(videoStream==-1)
           RE("failed videostream == -1");

     pCodecCtx=pFormatCtx->streams[videoStream]->codec;

     pCodec=avcodec_find_decoder(pCodecCtx->codec_id);
     if(pCodec==NULL) {
       RE("Unsupported codec!");
     }

     if(avcodec_open(pCodecCtx, pCodec)<0)
       RE("failed codec_open");

     pFrame=avcodec_alloc_frame();

    /* /FFmpeg */

    INFO("codec name:");
    INFO(pCodec->name);
    INFO("Getting into stream decode:");

    /* video stream */

     i=0;
     while(av_read_frame(pFormatCtx, &packet)>=0) {

       if(packet.stream_index==videoStream) {
         avcodec_decode_video2(pCodecCtx, pFrame, &frameFinished, &packet);
         if(frameFinished) {
    ++i;
    INFO("frame finished");

       AVPicture pict;
    /*
       img_convert_ctx = sws_getContext(pCodecCtx->width, pCodecCtx->height,
    pCodecCtx->pix_fmt, pCodecCtx->width, pCodecCtx->height,
    PIX_FMT_YUV420P, SWS_BICUBIC, NULL, NULL, NULL);

       sws_scale(img_convert_ctx, (const uint8_t* const*)pFrame->data, pFrame->linesize,
    0, pCodecCtx->height, pict.data, pict.linesize);
    */
         }
       }
       av_free_packet(&packet);
     }

    /* /video stream */

     av_free(pFrame);

     avcodec_close(pCodecCtx);

     av_close_input_file(pFormatCtx);

     RE("end of main");
    }

    I can’t able to get the frames from Network camera

    And give some idea to implement the live stream client for DVR camera in Android

  • Compiling x264 on a Mac : "No working C compiler found" and "arm-linux-androideabi-gcc : command not found"

    29 novembre 2014, par Xavi Gil

    I am trying to compile the x264 library for Android, following this post.

    I have cloned the x264 project git clone git://git.videolan.org/x264.git and tried to compile with the following configuration :

    NDK=~/development/android-ndk-r10c    
    TOOLCHAIN=$NDK/toolchains/arm-linux-androideabi-4.6/prebuilt/linux-x86_64
    PLATFORM=$NDK/platforms/android-21/arch-arm

    ./configure \
    --cross-prefix=$TOOLCHAIN/bin/arm-linux-androideabi- \
    --sysroot=$PLATFORM \
    --host=arm-linux \
    --enable-pic \
    --enable-static \
    --disable-cli

    The problem is that I get a No working C compiler found. error.

    The conftest.log output :

    $ cat conftest.log
    ./configure: line 153: arm-linux-androideabi-gcc: command not found

    But the arm-linux-androideabi-gcc is the toolchain’s bin folder !!

    Looking at this other question it looks like for some reason, even though the file exists, since it is a 64bit Mac, it won’t execute the arm-linux-androideabi-gcc file and will return this weird error and log.


    I am in a Mac OS X 10.10 and I have installed the XCode Command Line Tools :

    $ xcode-select -p
    /Applications/Xcode.app/Contents/Developer

    GCC version :

    $ gcc --version
    Configured with: --prefix=/Applications/Xcode.app/Contents/Developer/usr --with-gxx-include-dir=/usr/include/c++/4.2.1
    Apple LLVM version 6.0 (clang-600.0.54) (based on LLVM 3.5svn)
    Target: x86_64-apple-darwin14.0.0
    Thread model: posix

    Can anyone tell me how to fix this please ?

  • ffmpeg status & quality / cuda (CPU/GPU)

    18 avril 2015, par cocco

    ffmpeg am i doing it right ?

    So much time has passed since i use ffmpeg to convert clips on my home web server, now that mp4 (h264 & aac) is the current overall standard (works on every console, smartphone, smartTV, pc) i decided to convert my old clips from various digital cameras to to this new container/codecs.

    1. less space & the same quality.
    2. compatibility
    3. support for tags (subler for mac)

    after some research i opted for ffmpeg because of various reasons

    1. commandline (i made my simple web interface with default settings wich i execute with php’s exec)
    2. the quality/size amount

    I read that many expensive video conversion softwares are not able to handle low bitrate videos properly. I also tested some of them and personally i could not find the proper export settings or i was not impressed by the results... some had fixed default export setings, most had a lower video quality at the same filesize. ffmpeg allows me to set the -crf (18-24 usually) and -preset (veryslow, fast..) witch allows me to reduce the filesize drastically mantaining the same
    visible quality.

    Said that i’m using the preset at veryslow.(there is also placebo but the final video file is only 1% smaller in size).

    And here is the command i use

    ffmpeg
    -y //overwrite the file if it exists

    -i INPUTFILE // replace with the input file

    -metadata title=THETITLE // set a nice title, visible on modern devices
    -metadata date=THEDATE // set a nice title, visible on modern devices

    -c:v libx264 // use the h264 codec
    -crf 21 // try different numbers between 18-26
    -preset veryslow // placebo,slow,fast,ultrafast==big file
    -tune film // tune it a little
    -pix_fmt yuv420p // preferred on most modern devices
    -profile:v main // preferred on most modern devices
    -level 3.1 // preferred on most modern devices
    -refs 4 // preferred on most modern devices

    -c:a libfdk_aac // use aac
    -metadata:s:a language=eng // set a language, visible on modern devices
    -b:a 128k // audio bitrate 128k is like mp3 192k
    -ar 48000 // 44100 ... whatever
    -ac 2 // audiochannels
    -movflags +faststart //move the metadata in the front of the video so it loads faster

    OUTPUTFILE

    some camcorder clips with m2ts already have the avc/h264 compatible codec so i just copy the stream.
    some have the ac3/dolby sorround audio. I convert the audio but keep the ac3 as second audio track mapping the ffmpeg streams.this allows me to watch the mp4 on browsers and mobile devices but i’m able to keep the surround sound to playback on some tv’s, advanced media players or devices like apple tv.

    not that i’m not happy with the speed (using quad core’s) but i recently read again about cuda opencl and there is also the simple fact that i’m not using other converters than ffmpeg since alot of time.

    Is ffmpeg (with the setting i use) a good converter to keep the same video quality than the source reducing the space occupied by and average of 30-40% ?

    Is GPU conversion really that bad (cuda .. testing a gtx970) ?
    it would be nice to add some more speed to the conversions by using both the gpu and the cpu..but for my understanding they cannot work together ??? and using only gpu is a drastical quality loss...cpu si more precise, gpu is faster in calculation are too imprecise from what i read.. so expensive softwares use cuda only for preview purpose... right ?

    Is ffmpeg or another software compatible with CPU+GPU encoding ?
    i really don’t remember where, but i read that the ffmpeg is not a good videoconverter.

    i’m really happy with the size/quality, i gained an average of 30% in space with no visible quality loss. With some extra parameters i can adjust some really old analog videos that are deinterlaced in a really bad way.

    maybe i could gain more size/quality with another software ???

    note : i like ffmpeg.it’s free and it has commandline so i can create my own interface with php html & js and use it on various machines without the need to install it in every device i use. i uplad the idevice clips directly to the ffmpeg server.

    btw. : explain the downvotes...

    EDIT :

    @talonmies ...cuda tag removed :

    http://www.nvidia.com/object/cuda_home_new.html

    CUDA® is a parallel computing platform and programming model invented
    by NVIDIA. It enables dramatic increases in computing performance by
    harnessing the power of the graphics processing unit (GPU). With
    millions of CUDA-enabled GPUs sold to date, software developers,
    scientists and researchers are finding broad-ranging uses for GPU
    computing with CUDA. Here are a few examples : - See more at :
    http://www.nvidia.com/object/cuda_home_new.html#sthash.dEYaqae7.dpuf

    isn’t cuda the programming model that a theoretical ffmpeg library should support to handle GPU encoding on nvidia cards like the gtx 970 ?? like the badaboom software http://www.geforce.com/games-applications/pc-applications/badaboom-media-converter.