
Recherche avancée
Autres articles (55)
-
Other interesting software
13 avril 2011, parWe 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, parCertains 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, parMediaspip 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 YangMy 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 TorgayevMy 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.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"'); // => falseI 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 MDBien 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.htmlOn 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" ;