Recherche avancée

Médias (91)

Autres articles (102)

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

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

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

  • avfilter/vf_libplacebo : add flexible crop exprs

    1er mai 2023, par Niklas Haas
    avfilter/vf_libplacebo : add flexible crop exprs
    

    Motivated by a desire to use vf_libplacebo as a GPU-accelerated
    cropping/padding/zooming filter. This commit adds support for setting
    the `input/target.crop` fields as dynamic expressions.

    Re-use the same generic variables available to other scale and crop type
    filters, and also add some more that we can afford as a result of being
    able to set these properties dynamically.

    It's worth pointing out that `out_t/ot` is currently redundant with
    `in_t/t` since it will always contain the same PTS values, but I plan on
    changing this in the near future.

    I decided to also expose `crop_w/crop_h` and `pos_w/pos_h` as variables
    in the expression parser itself, since this enables the fairly common
    use case of determining dimensions first and then placing the image
    appropriately, such as is done in the default behavior (which centers
    the cropped/placed region by default).

    • [DH] doc/filters.texi
    • [DH] libavfilter/vf_libplacebo.c
  • How to send encoded video (or audio) data from server to client in a way that's decodable by webcodecs API using minimal latency and data overhead

    11 janvier 2023, par Tiger Yang

    My question (read entire post for context) :

    


    Given the unique circumstance of only ever decoding data from a specifically-configured encoder, what is the best way I can send the encoded bitstream along with the bare minimum extra bytes required to properly configure the decoder on the client's end (including only things that change per stream, and omitting things that don't, such as resolution) ? I'm a sucker for zero compromises, and I think I am willing to design my own minimal container format to accomplish this.

    


    Context and problem :

    


    I'm working on a remote desktop implementation that consists of a server that captures and encodes the display and speakers using FFmpeg and forwards it via pipe to a go (language) program which sends it on two unidirectional webtransport streams to my client, which I plan to decode using the webcodecs API. According to MDN, the video decoder needs to be fed via .configure() an object containing the following : https://developer.mozilla.org/en-US/docs/Web/API/VideoDecoder/configure before it's able to decode anything.

    


    same goes for the audio decoder : https://developer.mozilla.org/en-US/docs/Web/API/AudioDecoder/configure

    


    What I've tried so far :

    


    Because this remote desktop will be for my personal use only, it would only ever receive streams from a specific encoder configured in a specific way encoding video at a specific resolution, framerate, color space, etc.. Therefore, I took my video capture FFmpeg command...

    


    videoString := []string{
        "ffmpeg",
        "-init_hw_device", "d3d11va",
        "-filter_complex", "ddagrab=video_size=1920x1080:framerate=60",
        "-vcodec", "hevc_nvenc",
        "-tune", "ll",
        "-preset", "p7",
        "-spatial_aq", "1",
        "-temporal_aq", "1",
        "-forced-idr", "1",
        "-rc", "cbr",
        "-b:v", "500K",
        "-no-scenecut", "1",
        "-g", "216000",
        "-f", "hevc", "-",
    }


    


    ...and instructed it to write to an mp4 file instead of outputting to pipe, and then I had this webcodecs demo https://w3c.github.io/webcodecs/samples/video-decode-display/ demux it using mp4box.js. Knowing that the demo outputs a proper .configure() object, I blindly copied it and had my client configure using that every time. Sadly, it didn't work, and I since noticed that the "description" part of the configure object changes despite the encoder and parameters being the same.

    


    I knew that mp4 files worked via mp4box, but they can't be streamed with low latency over a network, and additionally, ffmpeg's -f parameters specifies the muxer to use, but there are so many different types.

    


    At this point, I think I'm completely out of my depth, so :

    


    Given the unique circumstance of only ever decoding data from a specifically-configured encoder, what is the best way I can send the encoded bitstream along with the bare minimum extra bytes required to properly configure the decoder on the client's end (including only things that change per stream, and omitting things that don't, such as resolution) ? I'm a sucker for zero compromises, and I think I am willing to design my own minimal container format to accomplish this. (copied above)

    


  • How to test ffmpeg for streaming encoding at 1x ? [closed]

    7 mai 2023, par Public Name

    I would like to test ffmpeg for encoding a stream on my VM to see how much CPU % it uses, and how many cores. I don't have streams going, but I plan to use webcams to provide the stream in the future. How should I go about doing this ?

    


    I have test mp4 files I could provide.

    


    Should I :

    


      

    1. Is there a way to tell ffmpeg to only encode at 1x speed (ie only do 30fps per second for encoding) ?
    2. 


    3. Or do I have to create a stream first and have ffmpeg encode the stream ? I found SRS (Simple Realtime Server) https://github.com/ossrs/srs. I was going to start a stream from there and have ffmpeg ingest it. But it seems complicated I was wondering if there was an easier way by doing #1 ? Or is there an easier way to do #2 ?
    4. 


    


    So far I have tried to get ffmpeg running, but have encountered some errors. The SRS is complicated to setup, so I have not tried it yet.