Recherche avancée

Médias (1)

Mot : - Tags -/bug

Autres articles (104)

  • MediaSPIP 0.1 Beta version

    25 avril 2011, par

    MediaSPIP 0.1 beta is the first version of MediaSPIP proclaimed as "usable".
    The zip file provided here only contains the sources of MediaSPIP in its standalone version.
    To get a working installation, you must manually install all-software dependencies on the server.
    If you want to use this archive for an installation in "farm mode", you will also need to proceed to other manual (...)

  • MediaSPIP version 0.1 Beta

    16 avril 2011, par

    MediaSPIP 0.1 beta est la première version de MediaSPIP décrétée comme "utilisable".
    Le fichier zip ici présent contient uniquement les sources de MediaSPIP en version standalone.
    Pour avoir une installation fonctionnelle, 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 (...)

  • Amélioration de la version de base

    13 septembre 2013

    Jolie sélection multiple
    Le plugin Chosen permet d’améliorer l’ergonomie des champs de sélection multiple. Voir les deux images suivantes pour comparer.
    Il suffit pour cela d’activer le plugin Chosen (Configuration générale du site > Gestion des plugins), puis de configurer le plugin (Les squelettes > Chosen) en activant l’utilisation de Chosen dans le site public et en spécifiant les éléments de formulaires à améliorer, par exemple select[multiple] pour les listes à sélection multiple (...)

Sur d’autres sites (15436)

  • Why my ffmpeg video encode codes does not work on other computer ?

    10 avril 2022, par Object Unknown

    I'm writing code to encode some cv::Mat images to a MP4 video. The program can run successfully in my computer which I developed it, but when I copied it (and all dlls it needs) to an other computer, it stopped work.

    


    The function which reporting error : (I got it from StackOverflow, and added some changes)

    


    int uns::VideoWriter::Remux()
{
    AVFormatContext* ifmt_ctx = NULL, * ofmt_ctx = NULL;
    int err = 0, ret = 0;
    int64_t ts = 0;
    AVStream* inVideoStream = NULL;
    AVStream* outVideoStream = NULL;
    if ((err = avformat_open_input(&ifmt_ctx, VIDEO_TMP_FILE.c_str(), 0, 0)) < 0)
    {
        if(callback != nullptr) 
            callback("[uns::VideoWriter/Remux] Failed to open input file for remuxing", err);
        ret = -1;
        goto end;
    }
    if ((err = avformat_find_stream_info(ifmt_ctx, 0)) < 0) 
    {
        if(callback != nullptr) 
            callback("[uns::VideoWriter/Remux] Failed to retrieve input stream information", err);
        ret = -2;
        goto end;
    }
    if ((err = avformat_alloc_output_context2(&ofmt_ctx, NULL, NULL, FINAL_FILE_NAME.c_str())))
    {
        if(callback != nullptr) 
            callback("[uns::VideoWriter/Remux] Failed to allocate output context", err);
        ret = -3;
        goto end;
    }
    inVideoStream = ifmt_ctx->streams[0];
    outVideoStream = avformat_new_stream(ofmt_ctx, NULL);
    if (!outVideoStream) 
    {
        if(callback != nullptr) 
            callback("[uns::VideoWriter/Remux] Failed to allocate output video stream", 0);
        ret = -4;
        goto end;
    }
    outVideoStream->time_base = { 1, fps };
    if ((err = avcodec_parameters_copy(outVideoStream->codecpar, inVideoStream->codecpar)) < 0)
    {
        if (callback != nullptr)
            callback("[uns::VideoWriter/Remux] Failed to copy stream information", err);
        return -4;
        goto end;
    }
    outVideoStream->codecpar->codec_tag = 0;
    if (!(ofmt_ctx->oformat->flags & AVFMT_NOFILE)) 
    {
        if ((err = avio_open(&ofmt_ctx->pb, FINAL_FILE_NAME.c_str(), AVIO_FLAG_WRITE)) < 0)
        {
            if(callback != nullptr) 
                callback("[uns::VideoWriter/Remux] Failed to open output file", err);
            ret = -5;
            goto end;
        }
    }
    ofmt_ctx->streams[0]->codecpar->codec_type = AVMEDIA_TYPE_VIDEO;
    ofmt_ctx->streams[0]->time_base.num = 1;
    ofmt_ctx->streams[0]->time_base.den = fps;
    if ((err = avformat_write_header(ofmt_ctx, 0)) < 0) 
    {
        if(callback != nullptr) 
            callback("[uns::VideoWriter/Remux] Failed to write header to output file", err);
        ret = -6;
        goto end;
    }
    AVPacket videoPkt;
    while (true) 
    {
        if ((err = av_read_frame(ifmt_ctx, &videoPkt)) < 0) 
        {
            break;
        }
        videoPkt.stream_index = outVideoStream->index;
        videoPkt.pts = ts;
        videoPkt.dts = ts;
        videoPkt.duration = av_rescale_q(videoPkt.duration, inVideoStream->time_base, outVideoStream->time_base);
        ts += videoPkt.duration;
        videoPkt.pos = -1;
        if ((err = av_interleaved_write_frame(ofmt_ctx, &videoPkt)) < 0) 
        {
            if(callback != nullptr) 
                callback("[uns::VideoWriter/Remux] Failed to mux packet", err);
            av_packet_unref(&videoPkt);
            break;
        }
        av_packet_unref(&videoPkt);
    }
    av_write_trailer(ofmt_ctx);
end:
    if (ifmt_ctx) 
    {
        avformat_close_input(&ifmt_ctx);
    }
    if (ofmt_ctx && !(ofmt_ctx->oformat->flags & AVFMT_NOFILE)) 
    {
        avio_closep(&ofmt_ctx->pb);
    }
    if (ofmt_ctx) 
    {
        avformat_free_context(ofmt_ctx);
    }
    return ret;
}


    


    Notes :

    


    


    callback is a function which prints error messsage and error code.

    
The error I recived is [uns::VideoWriter/Remux] Failed to write header to output file, error code: -22

    


    


    I want to know what is causing this and how to resolve it please.

    


    Other Informations :

    


    


    Developing Env :

    


    


    OS : Windows 11 Professional Workstation build 22593.ni_release
    
IDE : Visual Studio 2022
    
ffmpeg : 4.4.1
    
Installed ffmpeg library :
ffmpeg[avcodec],ffmpeg[avdevice],ffmpeg[avfilter],ffmpeg[avfilter],ffmpeg[avformat],ffmpeg[openh264],ffmpeg[swresample],ffmpeg[swscale]
    
Compile Settings : x64 Release

    


    


    


    


    Running Env which causing error :

    


    


    OS : Windows Server 2019 DataCenter
    
With all dlls VS2022 copied to release folder

    


    


    


  • Cannot find ffmpeg when moving the code to a new computer

    20 septembre 2021, par Omersr

    I have a code that works on my computer but when I moved it to a new one it doesn't find the ffmpeg dependency.
It happens on these lines of code :

    


        var videoshow = require('videoshow')
    var image = [{path: './screenshot.jpg'}]
    var videoOption = { 
      loop: 10,
      fps: 25,
      transition: false,
      transitionDuration: 0, // seconds
      videoBitrate: 1024,
      videoCodec: 'libx264',
      size: '640x?',
      audioBitrate: '128k',
      audioChannels: 2,
      format: 'mp4',
      pixelFormat: 'yuv420p'
    }
    //call the videoshow library
     videoshow(image,videoOption).save(filename+"_"+"movie.mp4").on('start',function(command){
         console.log("conversion started" + command)
    }).on('error',function(err,stdout,stderr){
         console.log("some error occured"+ err)
     }).on('end',function(output){
         console.log("conversion complete "+ output)


    


    It throws an error "Cannot find ffmpeg".
I tried to do npm install or npm install ffmpeg but it didn't help.
I think this happens because I don't know how to make dependencies work on a different computer.
Any help would be appreciated !

    


  • Using FFMPEG to stream from one computer to another on the same network

    23 juin 2021, par Andy B

    My problem

    


    I have a device with cameras, and I can access the video from those cameras via RTP over RTSP.

    


    I have an Ethernet cord going from the device to my computer, and I can see/record the video from the device using FFMPEG or VLC. I just use rtsp://<ip of="of" device="device">/path/of/stuff.extension?camera=<number></number></ip> like the user's manual says.

    &#xA;

    This works great, but ultimately, I want to stream this video to another computer on the same network. I have tried many different things, but nothing seems to work.

    &#xA;

    Theoretically, this FFMPEG command should work, but I'm messing up somewhere and I don't know why or where.

    &#xA;

    ffmpeg -rtsp_transport tcp -i rtsp://<ip of="of" device="device">/path/thing.extension?camera=1 \ &#xA;-f mpegts udp://<ip of="of" computer="computer" i="i" want="want" to="to" send="send" it="it">:<some port="port">&#xA;</some></ip></ip>

    &#xA;

    In VLC on the other computer, I want to be able to just go into VLC and start a network stream that looks like udp://@<ip address="address">:<port></port></ip>

    &#xA;

    What I thought would work, but doesn't

    &#xA;

    If the camera device has IP A.A.A.A, and the computer getting and streaming the video is B.B.B.B, and the computer I want to watch the streamed video on is C.C.C.C then is the following correct ? Because it does not work for me...

    &#xA;

    Computer A :

    &#xA;

    ffmpeg -rtsp_transport tcp -i rtsp://A.A.A.A/path.ext?camera=1 -f mpegts udp://B.B.B.B:10001&#xA;

    &#xA;

    Computer B (in VLC) : udp://@B.B.B.B:10001

    &#xA;