Recherche avancée

Médias (91)

Autres articles (55)

  • Other interesting software

    13 avril 2011, par

    We don’t claim to be the only ones doing what we do ... and especially not to assert claims to be the best either ... What we do, we just try to do it well and getting better ...
    The following list represents softwares that tend to be more or less as MediaSPIP or that MediaSPIP tries more or less to do the same, whatever ...
    We don’t know them, we didn’t try them, but you can take a peek.
    Videopress
    Website : http://videopress.com/
    License : GNU/GPL v2
    Source code : (...)

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

  • 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

Sur d’autres sites (9175)

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

    


  • Convert *.mov file to *.mp4 with media source support

    4 février 2017, par Yerzhan Torgayev

    My goal is to play converted *.mp4 file with HTML5 Media Source Extension (MSE).
    I made a small video with iMovie on my Mac and exported this video to *.mov file. Using ffmpeg I’ve converted *.mov file to fragmented *.mp4 file.
    I used code from Mozilla Media Source tutorial to make simple html5 video player.

    https://developer.mozilla.org/en-US/docs/Web/API/Media_Source_Extensions_API/Transcoding_assets_for_MSE

    But I couldn’t get my video played with this tutorial. Other *.mp4 videos play just fine. But I have troubles with converted *.mov videos.

    I’ve checked codec support for my video.
    On this page I’ve got my codec info :

    http://nickdesaulniers.github.io/mp4info/

    track #0 codec string: mp4v
    track #1 codec string: mp4a.40.2
    track #2 codec string: tmcd
    MediaSource.isTypeSupported('video/mp4; codecs="mp4v, mp4a.40.2, tmcd"'); // => false

    I found that tmcd codec is not supported by MSE :

    https://cconcolato.github.io/media-mime-support/

    I couldn’t find the way to get my video work with MSE. Can anyone help me with this issue ?

  • Anomalie #3386 : Spip derrière Varnish : port non-standard dans l’URL ?

    15 février 2015, par Mathieu MD

    Bien vu. La doc de `mod_rpaf` précise en effet qu’il réécrit « REMOTE_ADDR, HTTPS, and HTTP_PORT to the values provided by an upstream proxy ».

    Ça n’a pas l’air d’être le cas du module Realip de Nginx (que j’utilise), ni de mod_remoteip, qui remplace mod_rpaf depuis Apache 2.4.
    http://wiki.nginx.org/HttpRealipModule
    https://httpd.apache.org/docs/2.4/mod/mod_remoteip.html

    On pourrait forcer, dans la conf Varnish, un entête `X-Forwarded-Port` qui serait parsé directement par Spip. Quelque chose comme ça :

    • Varnish :

    Soit :

    sub vcl_recv 
        set req.http.X-Forwarded-Port = server.port ;
    
    

    Soit :

    sub vcl_recv 
        if (req.http.X-Forwarded-Proto == "https" ) 
            set req.http.X-Forwarded-Port = "443" ;
         else 
            set req.http.X-Forwarded-Port = "80" ;
        
    
    
    • Spip, dans `ecrire/inc/utils.php` :
      if (isset($_SERVER[’SERVER_PORT’])
        AND $port=$_SERVER[’SERVER_PORT’]
        AND strpos($host," :")==false)
        # X-Forwarded-Port doit être ajouté par le proxy inverse (Varnish, etc.)
        if (isset($_SERVER[’HTTP_X_FORWARDED_PORT’])
          AND $xport=$_SERVER[’HTTP_X_FORWARDED_PORT’])
          if ($http=="http" AND $xport !=80) $host.=" :$xport" ;
          if ($http=="https" AND $xport !=443) $host.=" :$xport" ;
         else 
          if ($http=="http" AND $port !=80) $host.=" :$port" ;
          if ($http=="https" AND $port !=443) $host.=" :$port" ;