Effet de flou sur une video background ou une image

Effet de flou sur une video background ou une image

See the Pen blur background by yuyazz (@yuyazz) on CodePen.

Dans ma page, j’ai une balise vidéo qui retourne en front une vidéo fullscreen, et je voudrais lui appliquer un flou, non pas une opacité mais un flou, pour ensuite faire apparaître du texte par dessus .Ce flou dans l’idéal, je voudrais le faire apparaître au bout d’un certain laps de temps.

Voici le code html:

<div class="video-container">

<video autoplay loop poster="../images/images/background_teasing.jpg.jpg" id="bgvid" >
<!--poster="images/soleil.png-->
<source src="http://localhost/sefrisim/background/keyboard.webmhd.webm" type="video/webm"/>
<source src="http://localhost/sefrisim/background/keyboard.mp4" type="video/mp4"/>
<source src="http://localhost/sefrisim/background/keyboard.oggtheora.ogv" type="video/ogg"/>

Your browser does not support the video tag. I suggest you upgrade your browser.
</video>
<!--[if lte IE 6 ]>
<embed src="http://www.youtube.com/v/_etwz7NkemE&hl=fr" type="application/x-shockwave-flash" wmode="transparent" width="425" height="355"></embed>
<![endif]-->

</div>

Ensuite le code css:

.blurred{
filter: blur(10px);
-webkit-filter: blur(10px);
-moz-filter: blur(10px);
-o-filter: blur(10px);
-ms-filter: blur(10px);
filter:progid:DXImageTransform.Microsoft.Blur(PixelRadius='10');
}

Cette classe, absente de notre code html, on va la faire apparaître grâce à JQuery : en entête de fichier, je place le script suivant:

<script>
$(document).ready(function() {
$(function() {
setTimeout(function() {
$('.video-container').toggleClass('blurred')
}, 2000);
});
});

</script>

on va sélectionner la div englobant notre vidéo, et avec un toggleClass , on va lui ajouter une nouvelle classe blurred qu’on a définit plus haut. Votre vidéo devrait maintenant devenir floue au bout de deux secondes..grâce à notre fonction setTimeOut, qu’on fixe à 2000 millisecondes.