Recherche avancée

Médias (3)

Mot : - Tags -/Valkaama

Autres articles (67)

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

  • Configurer la prise en compte des langues

    15 novembre 2010, par

    Accéder à la configuration et ajouter des langues prises en compte
    Afin de configurer la prise en compte de nouvelles langues, il est nécessaire de se rendre dans la partie "Administrer" du site.
    De là, dans le menu de navigation, vous pouvez accéder à une partie "Gestion des langues" permettant d’activer la prise en compte de nouvelles langues.
    Chaque nouvelle langue ajoutée reste désactivable tant qu’aucun objet n’est créé dans cette langue. Dans ce cas, elle devient grisée dans la configuration et (...)

  • XMP PHP

    13 mai 2011, par

    Dixit Wikipedia, XMP signifie :
    Extensible Metadata Platform ou XMP est un format de métadonnées basé sur XML utilisé dans les applications PDF, de photographie et de graphisme. Il a été lancé par Adobe Systems en avril 2001 en étant intégré à la version 5.0 d’Adobe Acrobat.
    Étant basé sur XML, il gère un ensemble de tags dynamiques pour l’utilisation dans le cadre du Web sémantique.
    XMP permet d’enregistrer sous forme d’un document XML des informations relatives à un fichier : titre, auteur, historique (...)

Sur d’autres sites (5634)

  • FFmpeg "no frame !" encoding error

    9 juillet 2015, par oleg.semen

    I’m trying to compress video by scaling it. Here is how
    But I’m getting this error :

    D/FFMpeg﹕ progress[h264 @ 0x42124970] no frame!
    D/FFMpeg﹕ progress[aac @ 0x42122fe0] Input buffer exhausted before END element found

    here is whole log :

    Loading FFmpeg for armv7-neon CPU
    start
    Running publishing updates method
    progressWARNING: linker: /data/data/com.example.ffmpeg/files/ffmpeg has text relocations. This is wasting memory and is a security risk. Please fix.
    progressffmpeg version n2.4.2 Copyright (c) 2000-2014 the FFmpeg developers
    progress  built on Oct  7 2014 15:08:46 with gcc 4.8 (GCC)
    progress  configuration: --target-os=linux --cross-prefix=/home/sb/Source-Code/ffmpeg-android/toolchain-android/bin/arm-linux-androideabi- --arch=arm --cpu=cortex-a8 --enable-runtime-cpudetect --sysroot=/home/sb/Source-Code/ffmpeg-android/toolchain-android/sysroot --enable-pic --enable-libx264 --enable-libass --enable-libfreetype --enable-libfribidi --enable-fontconfig --enable-pthreads --disable-debug --disable-ffserver --enable-version3 --enable-hardcoded-tables --disable-ffplay --disable-ffprobe --enable-gpl --enable-yasm --disable-doc --disable-shared --enable-static --pkg-config=/home/sb/Source-Code/ffmpeg-android/ffmpeg-pkg-config --prefix=/home/sb/Source-Code/ffmpeg-android/build/armeabi-v7a-neon --extra-cflags='-I/home/sb/Source-Code/ffmpeg-android/toolchain-android/include -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=2 -fno-strict-overflow -fstack-protector-all -mfpu=neon' --extra-ldflags='-L/home/sb/Source-Code/ffmpeg-android/toolchain-android/lib -Wl,-z,relro -Wl,-z,now -pie' --extra-libs='-lpng -lexpat -lm' --extra-cxxflags=
    progress  libavutil      54.  7.100 / 54.  7.100
    progress  libavcodec     56.  1.100 / 56.  1.100
    progress  libavformat    56.  4.101 / 56.  4.101
    progress  libavdevice    56.  0.100 / 56.  0.100
    progress  libavfilter     5.  1.100 /  5.  1.100
    progress  libswscale      3.  0.100 /  3.  0.100
    progress  libswresample   1.  1.100 /  1.  1.100
    progress  libpostproc    53.  0.100 / 53.  0.100
    progress[h264 @ 0x42124970] no frame!
    progress[aac @ 0x42122fe0] Input buffer exhausted before END element found
    progressInput #0, mov,mp4,m4a,3gp,3g2,mj2, from '/storage/emulated/0/Movies/Instagram/VID_37551017_035953.mp4':
    progress  Metadata:
    progress    major_brand     : isom
    progress    minor_version   : 0
    progress    compatible_brands: isom3gp4
    progress    creation_time   : 2015-06-19 09:03:19
    progress  Duration: 00:00:03.20, start: 0.000000, bitrate: 2975 kb/s
    progress    Stream #0:0(eng): Video: h264 (Constrained Baseline) (avc1 / 0x31637661), yuv420p, 640x640, 2911 kb/s, 15.22 fps, 14.92 tbr, 90k tbn, 180k tbc (default)
    progress    Metadata:
    progress      creation_time   : 2015-06-19 09:03:19
    progress      handler_name    : VideoHandle
    progress    Stream #0:1(eng): Audio: aac (mp4a / 0x6134706D), 48000 Hz, mono, fltp, 101 kb/s (default)
    progress    Metadata:
    progress      creation_time   : 2015-06-19 09:03:19
    progress      handler_name    : SoundHandle

    Did I miss something in config ?
    Thanks.

  • swscaler@0dd9e620 : deprecated pixel format used, make sure you did set range correctly"

    19 juin 2015, par Tariq

    I am decoding RTSP video stream with FFMpeg.
    At display time (call to cv::imshow(...)), I get the following exception :

    [swscaler @ 0d55e5c0] deprecated pixel format used, make sure you did
    set range correctly

    I am converting the pixel format from "AV_PIX_FMT_YUVJ420P" to "AV_PIX_FMT_YUV420P". Still getting the above exception. Any help is appreciated ;

    int Decodestream()
    {
       av_register_all();
       avdevice_register_all();
       avcodec_register_all();
       avformat_network_init();

       const char  *filenameSrc = "rtsp://192.168.1.67/gnz_media/second";

       AVCodecContext  *pCodecCtx;
       AVFormatContext *pFormatCtx = avformat_alloc_context();

       AVCodec * pCodec;
       AVFrame *pFrame, *pFrameRGB;

       if(avformat_open_input(&pFormatCtx,filenameSrc,NULL,NULL) != 0)
       {return -1;}

       if(av_find_stream_info(pFormatCtx) < 0)  
       {return -1;}

       av_dump_format(pFormatCtx, 0, filenameSrc, 0);

       int videoStream = 1;

       for(int i=0; i < pFormatCtx->nb_streams; i++)
       {
           if(pFormatCtx->streams[i]->codec->coder_type==AVMEDIA_TYPE_VIDEO)
           {
               videoStream = i;
               break;
           }
       }

       if(videoStream == -1) return -1 ;

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

       pCodec =avcodec_find_decoder(pCodecCtx->codec_id);

       if(pCodec==NULL)
       {return -1;} //codec not found

       if(avcodec_open2(pCodecCtx,pCodec,NULL) < 0)
       { return -1;}

       pFrame    = avcodec_alloc_frame();
       pFrameRGB = avcodec_alloc_frame();

       uint8_t *buffer;

       int numBytes;

       AVPixelFormat  pFormat;

       switch (pFormatCtx->streams[videoStream]->codec->pix_fmt)
       {
       case AV_PIX_FMT_YUVJ420P : pFormat = AV_PIX_FMT_YUV420P; break;
       case AV_PIX_FMT_YUVJ422P : pFormat = AV_PIX_FMT_YUV422P; break;
       case AV_PIX_FMT_YUVJ444P : pFormat = AV_PIX_FMT_YUV444P; break;
       case AV_PIX_FMT_YUVJ440P : pFormat = AV_PIX_FMT_YUV440P;
       default:
           pFormat = pFormatCtx->streams[videoStream]->codec->pix_fmt;
           break;
       }

       numBytes = avpicture_get_size(pFormat,pCodecCtx->width,pCodecCtx->height) ;

       buffer = (uint8_t *) av_malloc(numBytes*sizeof(uint8_t));

       avpicture_fill((AVPicture *) pFrameRGB,buffer,pFormat,pCodecCtx->width,pCodecCtx->height);

       int res, frameFinished;

       AVPacket packet;

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

           if(packet.stream_index == videoStream){

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

               if(frameFinished){

                   struct SwsContext * img_convert_ctx;

                   img_convert_ctx = sws_getCachedContext(NULL,pCodecCtx->width, pCodecCtx->height, pCodecCtx->pix_fmt,   pCodecCtx->width, pCodecCtx->height, AV_PIX_FMT_BGR24, SWS_BICUBIC, NULL, NULL,NULL);

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

                   cv::Mat img(pFrame->height,pFrame->width,CV_8UC3,pFrameRGB->data[0]);
                   cv::imshow("display",img);
                   cvWaitKey(10);          
               }
           }

       }
       //Memory clean up code goes here
    }
  • "only position independent executables (PIE) are supported" error in FFMPEG Android Lollipop

    2 juin 2015, par Karthikeyan

    I am using FFMPEG support library to convert bunch of images to video. It works fine on earlier version of the android lollipop. But in the lollipop it generates the following error. ***error: only position independent executables (PIE) are supported.*** I know the PIE Security restrictions has been changed in lollipop, but i don’t know how to fix it.

    From my knowledge it may have two possible solutions,

    either

    we need to relocate the FFMPEG library assets to the SDCard and we have to refer them from our coding, if this is the answer what are all the steps to be followed ?

    or

    Is there any update in the FFMPEG library for android lollipop.

    If both are wrong can you provide me with the proper solution.

    Many thanks...

    Here is my code

      try {
               Log.e(LOGTAG, "started");

               String[] ffmpegCommand = {"/data/data/com.mobvcasting.mjpegffmpeg/ffmpeg", "-r", ""+p.getPreviewFrameRate(), "-b", "1000000", "-vcodec", "mjpeg", "-i",
                       Environment.getExternalStorageDirectory().getPath() + "/req_images/frame_%05d.jpg", Environment.getExternalStorageDirectory().getPath() + "/req_images/video.mov"};

               ffmpegProcess = new ProcessBuilder(ffmpegCommand).redirectErrorStream(true).start();            

               OutputStream ffmpegOutStream = ffmpegProcess.getOutputStream();
               BufferedReader reader = new BufferedReader(new InputStreamReader(ffmpegProcess.getInputStream()));

               String line;

               Log.v(LOGTAG,"***Starting FFMPEG***");
               while ((line = reader.readLine()) != null)
               {
                   Log.v(LOGTAG,"***"+line+"***");
               }
               Log.v(LOGTAG,"***Ending FFMPEG***");


           } catch (IOException e) {
               e.printStackTrace();
           }

           if (ffmpegProcess != null) {
               ffmpegProcess.destroy();        
           }
           Log.e(LOGTAG, "Background done");