
Recherche avancée
Médias (1)
-
La conservation du net art au musée. Les stratégies à l’œuvre
26 mai 2011
Mis à jour : Juillet 2013
Langue : français
Type : Texte
Autres articles (35)
-
(Dés)Activation de fonctionnalités (plugins)
18 février 2011, parPour gérer l’ajout et la suppression de fonctionnalités supplémentaires (ou plugins), MediaSPIP utilise à partir de la version 0.2 SVP.
SVP permet l’activation facile de plugins depuis l’espace de configuration de MediaSPIP.
Pour y accéder, il suffit de se rendre dans l’espace de configuration puis de se rendre sur la page "Gestion des plugins".
MediaSPIP est fourni par défaut avec l’ensemble des plugins dits "compatibles", ils ont été testés et intégrés afin de fonctionner parfaitement avec chaque (...) -
Support audio et vidéo HTML5
10 avril 2011MediaSPIP utilise les balises HTML5 video et audio pour la lecture de documents multimedia en profitant des dernières innovations du W3C supportées par les navigateurs modernes.
Pour les navigateurs plus anciens, le lecteur flash Flowplayer est utilisé.
Le lecteur HTML5 utilisé a été spécifiquement créé pour MediaSPIP : il est complètement modifiable graphiquement pour correspondre à un thème choisi.
Ces technologies permettent de distribuer vidéo et son à la fois sur des ordinateurs conventionnels (...) -
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 (7203)
-
Anomalie #4623 : Styles des fieldset dans l’espace privé
18 avril 2021Bon stop (ou pas) !
Il semble que les blocs
fieldset
ne peuvent pas parfaitement se styler seuls. Manifestement c’est assez récent que les navigateurs acceptent undisplay:flex;
dessus par exemple.J’ai fait quelques tests en partant du formulaire de préférences des menus (tiens d’ailleurs ce formulaire a des
div.editer
sansdiv.editer-groupe
parent (à corriger !)
Il contient unfieldset + .editer-groupe.deux_colonnes
(columns : 2)Ce que j’ai testé (sous macOS avec FF, Safari, Chrome & Opéra) : la formule suivante (enlever le .editer-groupe interne et le monter sur le fieldset)
- <span class="CodeRay"><span class="tag">fieldset</span><span class="class">.editer-groupe</span>
- <span class="tag">legend</span>
- <span class="tag">div</span><span class="class">.editer</span>
- <span class="tag">div</span><span class="class">.editer</span>
- ...
- </span>
1) Si on applique un
columns: 2
sur ce fieldset,
- Firefox & Safari : conservent le legend, passent le reste en 2 colonnes
- Chrome & Opéra : ignorent et conservent donc un affichage 1 colonne.2) Si on applique un
display: flex; flex-wrap: wrap
sur ce fieldset
- Tous : le legend est conservé comme tel
- le reste passe effectivement en flex (permettant donc de mettre plusieurs .editer sur la même ligne)Déjà je suis étonné que Flex semble fonctionner, contrairement à ce que dit https://caniuse.com/mdn-html_elements_fieldset pour tous les Gecko. Et Edge aussi est indiqué en non fonctionnel.
Donc du coup… je me dis que le .editer-groupe dans le fieldset à encore du sens stylistique.
Ce qui pour le coup ne nous arrange pas forcément, mais ça évite aussi de casser un truc de plus dans cette structure html en le laissant.Donc du coup, on en reviendrait peut être à "fieldset.editer-section" ou "fieldset.editer-fieldset" ou "fieldset.fieldset" ou "fieldset" (sans rien)…
J’utilise .editer-section ensuite (mais peut importe)A) fieldset.editer-section > div.editer-groupe¶
(le plus proche de l’actuel je pense)
- <span class="CodeRay"> <span class="tag">div</span><span class="class">.editer-groupe</span>
- <span class="tag">div</span><span class="class">.editer</span>
- ...
- <span class="tag">fieldset</span><span class="class">.editer-section</span>
- <span class="tag">legend</span>
- <span class="tag">div</span><span class="class">.editer-groupe</span>
- <span class="tag">div</span><span class="class">.editer</span>
- ...
- </span>
B) fieldset.editer-groupe > div.editer-section¶
L’autre possibilité si ça facilite vraiment le css, c’est d’inverser les classes (avec l’ennui principal de du coup devoir reprendre l’existant)
- <span class="CodeRay"> <span class="tag">div</span><span class="class">.editer-groupe</span>
- <span class="tag">div</span><span class="class">.editer</span>
- ...
- <span class="tag">fieldset</span><span class="class">.editer-groupe</span>
- <span class="tag">legend</span>
- <span class="tag">div</span><span class="class">.editer-fieldset</span>
- <span class="tag">div</span><span class="class">.editer</span>
- ...
- </span>
B) fieldset.editer-groupe.editer-section > div.editer-groupe¶
Ou du doubler d’une autre classe
- <span class="CodeRay"> <span class="tag">div</span><span class="class">.editer-groupe</span>
- <span class="tag">div</span><span class="class">.editer</span>
- ...
- <span class="tag">fieldset</span><span class="class">.editer-groupe</span><span class="class">.editer-section</span>
- <span class="tag">legend</span>
- <span class="tag">div</span><span class="class">.editer-groupe</span>
- <span class="tag">div</span><span class="class">.editer</span>
- ...
- </span>
Mais dans ce cas là je trouve cela redondant (fieldset.editer-section me parait suffisant, si on doit effectivement mettre un classe css dessus)
Le plus ennuyant est peut être de devoir annuler des styles CSS du .editer-groupe dans .editer-section > .editer-groupe ; -
Concatenate chunk containg headers to another chunk in h264
18 novembre 2014, par OrtixxI’m trying to extract thumbnails from a torrent stream by downloading the first couple of chunks to get the headers, another set of chunks from the middle and then concat them to have a single video file.
For this I’m using nodejs but I’m having trouble with the concatenation part. Obviously the headers include the length of the video so if I simply concat another chunk to the end of the headers chunk, it won’t work.
In other words, I have 2 chunks of a video file : The first one contains the headers and some material and the other one is fully composed of a video stream. I want to combine the two to form a single video file
So my question is how can I make this work properly if at all ? -
Buid Exoplayer with ffmpeg extension
22 février 2021, par Bhoomi KalavadiyaI'm making IP streaming android application. In which I'm using exoplayer 2.12.0. Input video is having mpeg-L2 audio layer codec which is not supported by exoplayer https://github.com/google/ExoPlayer/issues/6525. So i'm using ffmpeg extension to render audio.

I have followed https://github.com/google/ExoPlayer/tree/release-v2/extensions/ffmpeg steps to build ffmpeg extension with android-ndk-r21d-linux-x86_64 and FFmpeg-release-4.3.

Added code in the application

TrackSelector trackSelectors = new DefaultTrackSelector(new AdaptiveTrackSelection.Factory()); RenderersFactory renderersFactory=new DefaultRenderersFactory(this,EXTENSION_RENDERER_MODE_ON,DEFAULT_ALLOWED_VIDEO_JOINING_TIME_MS); player = ExoPlayerFactory.newSimpleInstance(this, renderersFactory,trackSelectors);



Still audio is not coming and the log is as below

2020-12-01 05:05:10.803 9161-9161/demo.demoapps.com.exoplayer2udpdemo D/EventLogger : videoEnabled [eventTime=1.39, mediaPos=0.00, window=0, period=0]

2020-12-01 05:05:10.808 9161-9161/demo.demoapps.com.exoplayer2udpdemo D/EventLogger : tracks [eventTime=1.39, mediaPos=0.00, window=0, period=0, []]

2020-12-01 05:05:10.808 9161-9161/demo.demoapps.com.exoplayer2udpdemo I/MainActivity : onTracksChanged

2020-12-01 05:05:10.809 9161-9161/demo.demoapps.com.exoplayer2udpdemo I/MainActivity : 2

2020-12-01 05:05:10.809 9161-9161/demo.demoapps.com.exoplayer2udpdemo I/MainActivity : Format(2204/5204, null, null, video/mpeg2, null, -1, null, [720, 576, -1.0], [-1, -1])

2020-12-01 05:05:10.809 9161-9161/demo.demoapps.com.exoplayer2udpdemo I/MainActivity : Format(2204/6204, null, null, audio/mpeg-L2, null, -1, null, [-1, -1, -1.0], [2, 48000])

2020-12-01 05:05:10.813 9161-9161/demo.demoapps.com.exoplayer2udpdemo D/EventLogger : downstreamFormat [eventTime=1.40, mediaPos=0.00, window=0, period=0, id=2204/5204, mimeType=video/mpeg2, res=720x576]

2020-12-01 05:05:10.827 9161-9219/demo.demoapps.com.exoplayer2udpdemo I/OMXClient : IOmx service obtained

2020-12-01 05:05:10.926 9161-9218/demo.demoapps.com.exoplayer2udpdemo D/SurfaceUtils : connecting to surface 0x6f5abb1010, reason connectToSurface

2020-12-01 05:05:10.928 9161-9218/demo.demoapps.com.exoplayer2udpdemo I/MediaCodec : [OMX.qcom.video.decoder.mpeg2] setting surface generation to 9380865

2020-12-01 05:05:10.928 9161-9218/demo.demoapps.com.exoplayer2udpdemo D/SurfaceUtils : disconnecting from surface 0x6f5abb1010, reason connectToSurface(reconnect)

2020-12-01 05:05:10.929 9161-9218/demo.demoapps.com.exoplayer2udpdemo D/SurfaceUtils : connecting to surface 0x6f5abb1010, reason connectToSurface(reconnect)

2020-12-01 05:05:10.941 9161-9219/demo.demoapps.com.exoplayer2udpdemo I/ExtendedACodec : setupVideoDecoder()

2020-12-01 05:05:10.950 9161-9219/demo.demoapps.com.exoplayer2udpdemo I/ExtendedACodec : Decoder will be in frame by frame mode

2020-12-01 05:05:10.995 9161-9219/demo.demoapps.com.exoplayer2udpdemo D/SurfaceUtils : set up nativeWindow 0x6f5abb1010 for 720x576, color 0x7fa30c06, rotation 0, usage 0x20002900

2020-12-01 05:05:11.014 9161-9161/demo.demoapps.com.exoplayer2udpdemo D/EventLogger : videoDecoderInitialized [eventTime=1.60, mediaPos=0.00, window=0, period=0, OMX.qcom.video.decoder.mpeg2]

2020-12-01 05:05:11.015 9161-9161/demo.demoapps.com.exoplayer2udpdemo D/EventLogger : videoInputFormat [eventTime=1.60, mediaPos=0.00, window=0, period=0, id=2204/5204, mimeType=video/mpeg2, res=720x576]

2020-12-01 05:05:11.060 9161-9219/demo.demoapps.com.exoplayer2udpdemo D/SurfaceUtils : set up nativeWindow 0x6f5abb1010 for 720x576, color 0x7fa30c06, rotation 0, usage 0x20002900

2020-12-01 05:05:11.101 9161-9161/demo.demoapps.com.exoplayer2udpdemo D/EventLogger : videoSize [eventTime=1.69, mediaPos=0.00, window=0, period=0, 720, 576]

2020-12-01 05:05:11.153 9161-9161/demo.demoapps.com.exoplayer2udpdemo D/EventLogger : surfaceSize [eventTime=1.74, mediaPos=0.00, window=0, period=0, 786, 590]

2020-12-01 05:05:11.180 9161-9161/demo.demoapps.com.exoplayer2udpdemo D/EventLogger : renderedFirstFrame [eventTime=1.76, mediaPos=0.00, window=0, period=0, Surface(name=null)/@0x1c4f9a6]

2020-12-01 05:05:12.517 9161-9161/demo.demoapps.com.exoplayer2udpdemo I/MainActivity : onPlayerStateChanged : playWhenReady = true playbackState = 3

2020-12-01 05:05:12.517 9161-9161/demo.demoapps.com.exoplayer2udpdemo I/MainActivity : ExoPlayer ready ! pos :

2020-12-01 05:05:12.518 9161-9161/demo.demoapps.com.exoplayer2udpdemo D/EventLogger : state [eventTime=3.10, mediaPos=0.00, window=0, period=0, READY]

2020-12-01 05:05:12.523 9161-9161/demo.demoapps.com.exoplayer2udpdemo D/EventLogger : isPlaying [eventTime=3.11, mediaPos=0.00, window=0, period=0, true]


Here, With or without ffmpeg extension, I'm not getting audioEnabled log in Eventlogger.
Also after using ffmpeg audio render, I'm not getting it is being used or not.
Or am I missing some configuration of ffmpeg extension to Exoplayer ?