
Recherche avancée
Médias (1)
-
Bug de détection d’ogg
22 mars 2013, par
Mis à jour : Avril 2013
Langue : français
Type : Video
Autres articles (36)
-
Gestion générale des documents
13 mai 2011, parMédiaSPIP ne modifie jamais le document original mis en ligne.
Pour chaque document mis en ligne il effectue deux opérations successives : la création d’une version supplémentaire qui peut être facilement consultée en ligne tout en laissant l’original téléchargeable dans le cas où le document original ne peut être lu dans un navigateur Internet ; la récupération des métadonnées du document original pour illustrer textuellement le fichier ;
Les tableaux ci-dessous expliquent ce que peut faire MédiaSPIP (...) -
Des sites réalisés avec MediaSPIP
2 mai 2011, parCette page présente quelques-uns des sites fonctionnant sous MediaSPIP.
Vous pouvez bien entendu ajouter le votre grâce au formulaire en bas de page. -
HTML5 audio and video support
13 avril 2011, parMediaSPIP 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 (...)
Sur d’autres sites (5737)
-
avcodec : add avcodec_get_supported_config()
3 avril 2024, par Niklas Haasavcodec : add avcodec_get_supported_config()
This replaces the myriad of existing lists in AVCodec by a unified API
call, allowing us to (ultimately) trim down the sizeof(AVCodec) quite
substantially, while also making this more trivially extensible.In addition to the already covered lists, add two new entries for color
space and color range, mirroring the newly added negotiable fields in
libavfilter.Once the deprecation period passes for the existing public fields, the
rough plan is to move the commonly used fields (such as
pix_fmt/sample_fmt) into FFCodec, possibly as a union of audio and video
configuration types, and then implement the rarely used fields with
custom callbacks. -
MAINTAINERS : update myself for dvdvideo, rcwtdec, rcwtenc
26 septembre 2024, par Marth64MAINTAINERS : update myself for dvdvideo, rcwtdec, rcwtenc
I plan to look after and test them for the forseeable future.
I am not a committer but do care for these muxers/demuxers.Signed-off-by : Marth64 <marth64@proxyid.net>
Signed-off-by : Michael Niedermayer <michael@niedermayer.cc> -
Streaming playlist with browser overlay [closed]
28 juin 2024, par TchouneDo you have any idea how I can stream a video playlist on twitch (with ffmpeg or another lib) and overlay a web page (with sub twitch alerts for example).


I also need to be aware that my system needs to be multi-user. A user can stream on 1 to n different twitch channels. (multi instance).


For my production, I plan to use linux server without GUI. I've been looking for a solution for 4 months, but I've run out of ideas.


I've already tried xvfb to create a virtual desktop and display a chorimum browser, but it's not effective for production.
I've tried the whole pupeertee thing but it's not usable either.


And my backend server is under nodejs with adonisjs.
I'm currently using ffmpeg to broadcast a video playlist with m3u8 :


startStream(): number {
let parameters = [
 '-nostdin',
 '-re',
 '-f',
 'concat',
 '-safe',
 '0',
 '-vsync',
 'cfr',
 '-i',
 `concat:${app.publicPath(this.timelinePath)}`,
]

let filterComplex = ''

if (this.logo) {
 parameters.push('-i', app.publicPath(this.logo))
 filterComplex += '[1:v]scale=200:-1[logo];[0:v][logo]overlay=W-w-5:5[main];'
} else {
 filterComplex += '[0:v]'
}

if (this.overlay) {
 parameters.push('-i', app.publicPath(this.overlay))
 filterComplex += '[2:v]scale=-1:ih[overlay];[main][overlay]overlay=0:H-h[main];'
}

filterComplex += `[main]drawtext=fontfile=/usr/share/fonts/truetype/dejavu/DejaVuSans.ttf:textfile=${app.publicPath(this.guestFile)}:reload=1:x=(w-text_w)/2:y=h-text_h-10:fontsize=18:fontcolor=white[main]; [main]drawtext=fontfile=/usr/share/fonts/truetype/dejavu/DejaVuSans.ttf:text='%{localtime\\:%X}':x=10:y=h-text_h-10:fontsize=16:fontcolor=white`

parameters.push(
 '-filter_complex',
 filterComplex,
 '-copyts',
 '-pix_fmt',
 'yuv420p',
 '-s',
 '1920x1080',
 '-c:v',
 'libx264',
 '-profile:v',
 'high',
 '-preset',
 'veryfast',
 '-b:v',
 '6000k',
 '-maxrate',
 '7000k',
 '-minrate',
 '5000k',
 '-bufsize',
 '9000k',
 '-g',
 '120',
 '-r',
 '60',
 '-c:a',
 'aac',
 '-f',
 'flv',
 `${this.baseUrl}/${encryption.decrypt(this.streamKey)}`
)

this.instance = spawn('ffmpeg', parameters, {
 detached: true,
 stdio: ['ignore', 'pipe', 'pipe'],
})



I've thought of using Webrtc, but it doesn't seem to meet my needs.


I know that Gstreamer has wpeWebKit or wpesrc to do this, but there's no nodejs wrapper and above all it doesn't take playlist input (m3u8 or txt) into account...


If anyone has any new ideas, I'd be very grateful.