Recherche avancée

Médias (0)

Mot : - Tags -/interaction

Aucun média correspondant à vos critères n’est disponible sur le site.

Autres articles (112)

  • Personnaliser en ajoutant son logo, sa bannière ou son image de fond

    5 septembre 2013, par

    Certains thèmes prennent en compte trois éléments de personnalisation : l’ajout d’un logo ; l’ajout d’une bannière l’ajout d’une image de fond ;

  • Script d’installation automatique de MediaSPIP

    25 avril 2011, par

    Afin de palier aux difficultés d’installation dues principalement aux dépendances logicielles coté serveur, un script d’installation "tout en un" en bash a été créé afin de faciliter cette étape sur un serveur doté d’une distribution Linux compatible.
    Vous devez bénéficier d’un accès SSH à votre serveur et d’un compte "root" afin de l’utiliser, ce qui permettra d’installer les dépendances. Contactez votre hébergeur si vous ne disposez pas de cela.
    La documentation de l’utilisation du script d’installation (...)

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

Sur d’autres sites (11255)

  • java.lang.UnsatisfiedLinkError : dlopen failed : cannot locate symbol "av_bsf_next" referenced by "/lib/arm/libffmpeg.so"

    21 octobre 2019, par Sushrita

    I have a third party library which has ffmpeg as dependency and i am getting this error while executing a thread.

    Process: com.joe.epmediademo, PID: 11906
       java.lang.UnsatisfiedLinkError: dlopen failed: cannot locate symbol "av_bsf_next" referenced by "/data/app/com.joe.epmediademo-U-buiUc64rYJquAlCAhK5A==/lib/arm/libffmpeg.so"...
           at java.lang.Runtime.loadLibrary0(Runtime.java:1016)
           at java.lang.System.loadLibrary(System.java:1657)
           at Jni.FFmpegCmd.<clinit>(FFmpegCmd.java:24)
           at Jni.FFmpegCmd.exec(FFmpegCmd.java:73)
           at VideoHandle.EpEditor.execCmd(EpEditor.java:571)
           at VideoHandle.EpEditor.exec(EpEditor.java:135)
           at com.joe.epmediademo.Activity.EditActivity.execVideo(EditActivity.java:182)
           at com.joe.epmediademo.Activity.EditActivity.onClick(EditActivity.java:106)
           at android.view.View.performClick(View.java:6297)
           at android.view.View$PerformClick.run(View.java:24797)
           at android.os.Handler.handleCallback(Handler.java:790)
           at android.os.Handler.dispatchMessage(Handler.java:99)
           at android.os.Looper.loop(Looper.java:164)
           at android.app.ActivityThread.main(ActivityThread.java:6626)
           at java.lang.reflect.Method.invoke(Native Method)
           at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:438)
           at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:811)
    </clinit>
  • Why do I catch the "AccessViolationException" exception in av_hwframe_transfer_data () when I run it as a windows service ?

    5 décembre 2024, par vakym

    I write Windows service witch decodig video stream from camera.&#xA;I write it on c# with FFMPEG.Autogen wrapper.

    &#xA;&#xA;

    My problem is "AccessViolationException" when i run it as service. &#xA;If i run application as Console Application i have no exceptions.

    &#xA;&#xA;

    In Stacktrace i see this :

    &#xA;&#xA;

    в FFmpeg.AutoGen.ffmpeg&#x2B;&lt;>c.&lt;.cctor>b__5_572(FFmpeg.AutoGen.AVFrame*, FFmpeg.AutoGen.AVFrame*, Int32)&#xA;в FFmpeg.AutoGen.ffmpeg.av_hwframe_transfer_data(FFmpeg.AutoGen.AVFrame*, FFmpeg.AutoGen.AVFrame*,Int32)&#xA;в VideoProviderService.VideoSources.RTSPVideoSource.TryDecodeNextFrame(Boolean ByRef)&#xA;

    &#xA;&#xA;

    Code of TryDecodeNextFrame method :

    &#xA;&#xA;

    public IntPtr TryDecodeNextFrame(out bool state)&#xA;{&#xA;    try&#xA;    {&#xA;        ffmpeg.av_frame_unref(pFrame);&#xA;        ffmpeg.av_frame_unref(cpuFrame);&#xA;        int error;&#xA;        do&#xA;        {&#xA;            try&#xA;            {&#xA;                do&#xA;                {&#xA;                    timeout = DateTime.Now.AddSeconds(2);&#xA;                    error = ffmpeg.av_read_frame(_pFormatContext, pPacket);&#xA;                    if (error == ffmpeg.AVERROR_EOF)&#xA;                    {&#xA;                        state = false;&#xA;                        return IntPtr.Zero;&#xA;                    }&#xA;                    error.ThrowExceptionIfError();&#xA;                } while (pPacket->stream_index != _streamIndex);&#xA;                ffmpeg.avcodec_send_packet(pCodecContext, pPacket).ThrowExceptionIfError();&#xA;            }&#xA;            finally&#xA;            {&#xA;                ffmpeg.av_packet_unref(pPacket);&#xA;            }&#xA;            error = ffmpeg.avcodec_receive_frame(pCodecContext, pFrame);&#xA;        } while (error == ffmpeg.AVERROR(ffmpeg.EAGAIN));&#xA;        error.ThrowExceptionIfError();&#xA;        ffmpeg.av_hwframe_transfer_data(cpuFrame, pFrame, 0).ThrowExceptionIfError();&#xA;        ptrToFrame = (IntPtr)vfc.Convert(*cpuFrame).data[0];  &#xA;    }&#xA;    catch&#xA;    {&#xA;        state = false;&#xA;        return IntPtr.Zero;&#xA;    }&#xA;    state = true;&#xA;    return ptrToFrame;&#xA;}&#xA;

    &#xA;&#xA;

    What i tried to do :

    &#xA;&#xA;

      &#xA;
    1. I checked arguments of av_hwframe_transfer_data.
    2. &#xA;

    3. I changed the user for the service.
    4. &#xA;

    5. I tried compile as x86 or x64 configuration.
    6. &#xA;

    &#xA;&#xA;

    I have no idea how to solve this.&#xA;Does anyone have any thoughts ?

    &#xA;

  • libavcodec : how to encode raw video (YUV420P) frame to the valid bitmap for saving to the ".bmp" file ?

    26 octobre 2020, par Joe Dudinski

    I'm trying to save random video frames into the '.bmp' files by encoding raw video (YUV420P) into AV_CODEC_ID_BMP format using libavcodec, but result is broken image, contains 3 RGB channels :

    &#xA;

    Resulting bmp&#xA;image

    &#xA;

    Blue channel :&#xA;image

    &#xA;

    Green channel :&#xA;image

    &#xA;

    Red channel :&#xA;image

    &#xA;

    Original YUV image :&#xA;image

    &#xA;

    My code to get current yuv frame and encode it is into BMP :

    &#xA;

    int __create_bmp(AVPacket *pkt, AVCodecContext *video_dec_ctx, int video_stream_idx) {&#xA;    int err = 0;&#xA;    int got_frame = 0;&#xA;    static int vfnum = 0; //current v.frame num&#xA;&#xA;    if (pkt->stream_index == video_stream_idx) {&#xA;&#xA;        fprintf(stderr, "AVCodecContext codec: (name: %s), ID %d\n",&#xA;                video_dec_ctx->codec->name, video_dec_ctx->codec_id);&#xA;&#xA;        /* decode video frame */&#xA;        AVFrame *frame = av_frame_alloc();&#xA;&#xA;        // !!! &#x27;avcodec_decode_video2&#x27; IS DEPRECATED !!!&#xA;        err = avcodec_decode_video2(video_dec_ctx, frame, got_frame, pkt);&#xA;        if (err &lt; 0) {&#xA;            fprintf(stderr, "Error decoding video frame (%s)\n", av_err2str(err));&#xA;            return err;&#xA;        }&#xA;        if(got_frame == 0) return 1;&#xA;&#xA;        // !!! this dbg func save mjpeg YUV420P into &#x27;.jpg&#x27; file FINE !!!&#xA;        __encode_image_frame(frame);&#xA;&#xA;        AVCodec *bmpc = avcodec_find_encoder(AV_CODEC_ID_BMP);&#xA;        if(bmpc == NULL){&#xA;            fprintf(stderr, "&#x27;AV_CODEC_ID_BMP&#x27; encoder NOT FOUND!.\n");&#xA;            exit(-1);&#xA;        }&#xA;        AVCodecContext *__bmpcc = avcodec_alloc_context3(bmpc);&#xA;        __bmpcc->width = frame->width;&#xA;        __bmpcc->height = frame->height;&#xA;        __bmpcc->pix_fmt = AV_PIX_FMT_BGR24;&#xA;        __bmpcc->time_base = (AVRational){1,1};&#xA;&#xA;        err = avcodec_open2(__bmpcc, bmpc, NULL);&#xA;        if(err == 0){&#xA;            fprintf(stderr, "avcodec_open2 success.\n");&#xA;        }else{&#xA;            fprintf(stderr, "avcodec_open2 ERROR!\n");&#xA;        }&#xA;&#xA;        err = avcodec_send_frame(__bmpcc, frame);&#xA;        if(err == 0){&#xA;            fprintf(stderr, "avcodec_send_frame success.\n");&#xA;        }&#xA;        else{&#xA;            fprintf(stderr, "avcodec_send_frame ERROR! (code: %d)\n",err);&#xA;        }&#xA;&#xA;        AVPacket *bmp_pkt = av_packet_alloc();&#xA;        err = avcodec_receive_packet(__bmpcc, bmp_pkt);&#xA;        if(err == 0){&#xA;            fprintf(stderr, "avcodec_receive_packet success.\n");&#xA;        }&#xA;        else{&#xA;            fprintf(stderr, "avcodec_receive_packet ERROR! (code: %d)\n",err);&#xA;        }&#xA;        av_frame_unref(frame);&#xA;&#xA;        /* write to bitmap file */&#xA;        char outimg[2048] = {0};&#xA;        snprintf(outimg, 2048,"out-%06d.bmp", vfnum);&#xA;        FILE *outf = fopen(outimg, "wb");&#xA;        vfnum&#x2B;&#x2B;;&#xA;        if (!outf) {&#xA;            fprintf(stderr, "Could not open destination file %s\n", outimg);&#xA;        }else{&#xA;            fwrite(bmp_pkt->data, 1, bmp_pkt->size , outf);&#xA;            fclose(outf);&#xA;        }&#xA;        av_packet_unref(bmp_pkt);&#xA;        return 0;&#xA;    }&#xA;    return 1;&#xA;}&#xA;

    &#xA;

    Does anyone know how to do this correctly ?

    &#xA;