Recherche avancée

Médias (91)

Autres articles (32)

  • 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

  • HTML5 audio and video support

    13 avril 2011, par

    MediaSPIP uses HTML5 video and audio tags to play multimedia files, taking advantage of the latest W3C innovations supported by modern browsers.
    The MediaSPIP player used has been created specifically for MediaSPIP and can be easily adapted to fit in with a specific theme.
    For older browsers the Flowplayer flash fallback is used.
    MediaSPIP allows for media playback on major mobile platforms with the above (...)

  • Support audio et vidéo HTML5

    10 avril 2011

    MediaSPIP utilise les balises HTML5 video et audio pour la lecture de documents multimedia en profitant des dernières innovations du W3C supportées par les navigateurs modernes.
    Pour les navigateurs plus anciens, le lecteur flash Flowplayer est utilisé.
    Le lecteur HTML5 utilisé a été spécifiquement créé pour MediaSPIP : il est complètement modifiable graphiquement pour correspondre à un thème choisi.
    Ces technologies permettent de distribuer vidéo et son à la fois sur des ordinateurs conventionnels (...)

Sur d’autres sites (4642)

  • How to save AVPacket if I have input information from online camera

    31 mars 2020, par Orest

    I am new to libav.
I have a online video camera and want save video from archive to the video file with libav

    



    Camera provides such data

    



    uint32_t frameType, // I frame or P frame

void *frame, //pointer to the frame

size_t frameSize, //size of the frame in bytes

uint64_t timeStamp, //time stamp in time_t units

uint32_t width, //frame width

uint32_t height, //frame heigh

uint32_t genTime, //I do not now what is this. allways 0

const char *encodingType //H264 or H265


    



    I tried this

    



    void writeHeader(){
mOutputFilePath = outputFilePath;
    int ret = 0;
    avformat_alloc_output_context2(&output_format_context, nullptr, nullptr, outputFilePath.c_str());

AVStream *out_stream;
        out_stream = avformat_new_stream(output_format_context, nullptr);

        out_stream->discard = AVDISCARD_DEFAULT;//не змінювати
        out_stream->codecpar->level = 42;//не змінювати
        out_stream->codecpar->profile = FF_PROFILE_H264_HIGH;//не змінювати
        out_stream->codecpar->codec_type = AVMEDIA_TYPE_VIDEO;

        if(codecID == "H264") out_stream->codecpar->codec_id = AV_CODEC_ID_H264;
        else if(codecID == "H265") out_stream->codecpar->codec_id = AV_CODEC_ID_H265;

        out_stream->codecpar->format = AV_PIX_FMT_YUV420P;
        out_stream->codecpar->height = heightFrame;
        out_stream->codecpar->width = widthFrame;
        //        out_stream->codecpar->bit_rate = 2478235;
        //        out_stream->codecpar->bits_per_coded_sample = 24;
        //        out_stream->codecpar->bits_per_raw_sample = 8;
        out_stream->codecpar->sample_aspect_ratio.num = 0;
        out_stream->codecpar->sample_aspect_ratio.den = 1;
        out_stream->codecpar->color_primaries = AVCOL_PRI_UNSPECIFIED;//не змінювати

avio_open(&output_format_context->pb, mOutputFilePath.c_str(), AVIO_FLAG_WRITE);
avformat_write_header(output_format_context, &opt);
}

void writePacket(){
 AVPacket inputPacket;
        av_init_packet(&inputPacket);
        inputPacket.buf = NULL;
        inputPacket.pts = (int)timeStamp;
        inputPacket.dts = inputPacket.pts; 
        inputPacket.data = (unsigned char*)frame;
        inputPacket.size = (int)frameSize;

        if (frameType == KP2P_FRAME_TYPE_IFRAME)
        {
            inputPacket.flags = AV_PKT_FLAG_KEY;
        }
        inputPacket.duration = 0;
        inputPacket.pos = -1;
av_interleaved_write_frame(output_format_context, &inputPacket);
    av_packet_unref(&inputPacket);
}

void closeFile()
{
av_write_trailer(output_format_context);
    if (output_format_context && !(output_format_context->oformat->flags & AVFMT_NOFILE))
        avio_closep(&output_format_context->pb);
    avformat_free_context(output_format_context);
}


    



    in output file I have black vindow and time is not correct (input 30 seconds in out 2 seconds)
What am I doing wrong ?

    


  • avutil/mips : Use MMI_{L, S}QC1 macro in {SAVE, RECOVER}_REG

    23 juillet 2021, par Jiaxun Yang
    avutil/mips : Use MMI_L, SQC1 macro in SAVE, RECOVER_REG
    

    SAVE,RECOVER_REG will be available for Loongson2 again,
    also comment about the magic.

    Signed-off-by : Jiaxun Yang <jiaxun.yang@flygoat.com>
    Reviewed-by : Shiyou Yin <yinshiyou-hf@loongson.cn>
    Signed-off-by : Michael Niedermayer <michael@niedermayer.cc>

    • [DH] libavutil/mips/mmiutils.h
  • ffmpeg save mp3 file from available wss stream

    11 juillet 2021, par phoenixAZ

    In a hello world node.js app I am succeeding in getting a feed from twilio conference and sending to the google speech to text. Concurrently I want to control recording to mp3 of the available audio stream (programmatically call start and stop). The was is subscribed to audio stream but I don't know how to attach ffmpeg to the local stream. I have tried :

    &#xA;

                // ffmpeg(&#x27;rtsp://host:port/path/to/stream&#x27;)&#xA;            //experimenting telling it to use the local stream&#xA;            //&#xA;            //ffmpeg(wss.addListener)  //invlaid input error&#xA;            //ffmpeg(wss.stream) //thsi hits the console error below&#xA;            ffmpeg(wss.stream)&#xA;            .noVideo()&#xA;            .audioChannels(1)&#xA;            .audioBitrate(128)&#xA;            .duration(&#x27;1:00&#x27;)&#xA;            .on(&#x27;end&#x27;, function () { console.log(&#x27;saved mp3&#x27;); })&#xA;            .on(&#x27;error&#x27;, function (err) { console.log(&#x27;error mp3&#x27;); })&#xA;            .save(&#x27;/path/to/output.mp3&#x27;);&#xA;

    &#xA;

    Any suggestions are welcomed. I am in a node.js project

    &#xA;