Recherche avancée

Médias (1)

Mot : - Tags -/ticket

Autres articles (58)

  • La file d’attente de SPIPmotion

    28 novembre 2010, par

    Une file d’attente stockée dans la base de donnée
    Lors de son installation, SPIPmotion crée une nouvelle table dans la base de donnée intitulée spip_spipmotion_attentes.
    Cette nouvelle table est constituée des champs suivants : id_spipmotion_attente, l’identifiant numérique unique de la tâche à traiter ; id_document, l’identifiant numérique du document original à encoder ; id_objet l’identifiant unique de l’objet auquel le document encodé devra être attaché automatiquement ; objet, le type d’objet auquel (...)

  • MediaSPIP v0.2

    21 juin 2013, par

    MediaSPIP 0.2 est la première version de MediaSPIP stable.
    Sa date de sortie officielle est le 21 juin 2013 et est annoncée ici.
    Le fichier zip ici présent contient uniquement les sources de MediaSPIP en version standalone.
    Comme pour la version précédente, 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 (...)

  • Emballe médias : à quoi cela sert ?

    4 février 2011, par

    Ce plugin vise à gérer des sites de mise en ligne de documents de tous types.
    Il crée des "médias", à savoir : un "média" est un article au sens SPIP créé automatiquement lors du téléversement d’un document qu’il soit audio, vidéo, image ou textuel ; un seul document ne peut être lié à un article dit "média" ;

Sur d’autres sites (6649)

  • Detect if an interlaced video frame is the Top or Bottom field ?

    21 décembre 2024, par Danny

    I'm decoding video PES packets (packetized elementary stream) containing H.264/AVC and H.265/HEVC using libavcodec like this :

    


    while (remainingESBytes > 0)
{
    int bytesUsed = av_parser_parse2(
            mpParser, mpDecContext,
            &mpEncPacket->data, &mpEncPacket->size,
            pIn, remainingESBytes,
            AV_NOPTS_VALUE, AV_NOPTS_VALUE, 0);

    // send encoded packet for decoding
    int ret = avcodec_send_packet(mpDecContext, mpEncPacket);
    if (ret < 0)
    {
        // failed
        continue;
    }

    while (ret >= 0)
    {
        ret = avcodec_receive_frame(mpDecContext, mpDecFrame);
        /// Do stuff with frame ///
    }

    remainingESBytes = getMoreBytes()
}


    


    Sometimes the input video is interlaced, in which case it seems avcodec_receive_frame is returning individual fields and not a merged frame of the top and bottom fields together.

    


    I couldn't find any way for avcodec_receive_frame to emit a full, non-interlaced frame.

    


    I can merge a top and bottom field together but I haven't found any way to identify if a given AVFrame is top or bottom.

    


    How can I do that ?

    


    EDIT I

    


    Looking at the log output from the decoder, it appears the decoder knows if the field is top or bottom (carried by SEI ?) but still can't figure out how to access that information via the libavcodec API...

    


    [hevc @ 0x1afcfc0] ENTER DECODE NAL TYPE 39. sei.ni_custom.type = -1
[hevc @ 0x1afcfc0] Set sei.ni_custom.type to -1.
[hevc @ 0x1afcfc0] ff_hevc_decode_nal_sei - s->ni_custom.type = -1
[hevc @ 0x1afcfc0] Decoding SEI [NAL Type 39]. ni_custom.type=-1
[hevc @ 0x1afcfc0] TOP Field
[hevc @ 0x1afcfc0] EXIT DECODE NAL TYPE 39. sei.ni_custom.type = -1


    


  • FFMpeg Speed up transparent webm C#/Cmd

    17 avril 2023, par Alphapixel 182004

    I am trying to speed up a webm video file while maintaining the transparency but every attempt I've made has removed the transparency.

    


    How do I speed up a transparent webm using FFMpeg without losing the transparency ?

    


    Note : I am doing this all in c# but would prefer to use commands instead of wrapper libraries.

    


    this is the general command I have tried :

    


    command = $"-i \"{input}\" -filter_complex \"[0:v]setpts = (1/{speed}) * PTS[v]; [0:a]atempo = {speed}[a]\" -map \"[v]\" -map \"[a]\" -c:v libvpx-vp9 -b:v 1M -y \"{output}";
That command did not maintain transparency though.

    


    A little info about the input video :

    


      

    • The input is transparent

      


    • 


    • the input is basically a mess of individual transparent webm's joined together that were made with either :

      


        

      • Poster with audio :
      • 


      


    • 


    


    $"-threads 4 -loop 1 -i \"{image}\" -i \"{audio}\" -c:v libvpx-vp9 -pix_fmt yuva420p -crf 10 -b:v 0 -c:a libopus -b:a 192k -shortest -movflags +faststart -y \"{output}\"";

    


      

    • Padding the clip :
    • 


    


    $"-i \"{input}\" -filter_complex \"[0:v]split=2[v1][v2];[v1]tpad=start_duration={startPadMs / 1000}:start_mode=clone:stop_duration={endPadMs / 1000}:stop_mode=clone[v1_edited];[v1_edited][v2]overlay=eof_action=pass[v];[0:a]adelay={startPadMs}|{startPadMs}[a]\" -map \"[v]\" -map \"[a]\" \"{output}\""

    


      

    • Joining videos :
    • 


    


    var temp = Path.Combine(Path.GetTempPath(), "concat.txt"); File.WriteAllText(temp, string.Join('\n', clips.Select(e => $"file '{e}'"))); var command = $"-f concat -safe 0 -i "{temp}" -c copy -y "{output}"";\

    


  • lavu : add an API function to return the FFmpeg version string

    30 juin 2015, par wm4
    lavu : add an API function to return the FFmpeg version string
    

    This returns something like "N-73264-gb54ac84". This is much more useful
    than the individual library versions, of which there are too much and
    which are very hard to map back to releases or git commits.

    Signed-off-by : Michael Niedermayer <michaelni@gmx.at>

    • [DH] doc/APIchanges
    • [DH] libavutil/avutil.h
    • [DH] libavutil/utils.c