web-dev-qa-db-fra.com

Comment lire une vidéo locale dans mon cahier IPython?

J'ai un fichier vidéo local (un .avi, mais peut être converti) que je voudrais montrer à un client (c'est-à-dire qu'il est privé et ne peut pas être publié sur le Web), mais je ne vois pas comment pour le jouer dans le cahier IPython. 

Après un peu de recherche sur Google, il semble que la balise vidéo HTML5 soit peut-être la solution, mais je ne connais pas le langage HTML et ne parviens pas à le lire.

Des idées sur la façon dont je peux intégrer cela?

19
Chris

Vous devez lire la vidéo en mémoire et la coder en base64, car IPython Notebook n’est pas un serveur de fichiers statique:

import io
import base64
from IPython.display import HTML

video = io.open('test.mp4', 'r+b').read()
encoded = base64.b64encode(video)
HTML(data='''<video alt="test" controls>
                <source src="data:video/mp4;base64,{0}" type="video/mp4" />
             </video>'''.format(encoded.decode('ascii')))
19
Viktor Kerkez

Jouez comme une vidéo HTML5:] 

from IPython.display import HTML

HTML("""
<video width="320" height="240" controls>
  <source src="path/to/your.mp4" type="video/mp4">
</video>
""")

METTRE &AGRAVE; JOUR

De plus, utilisez une cellule magique:

%%HTML
<video width="320" height="240" controls>
  <source src="path/to/your.mp4" type="video/mp4">
</video>

et la même chose s'applique aussi pour l'audio

%%HTML
<audio controls>
  <source src="AUDIO-FILE.mp3">
</audio>

 enter image description here

26
Aziz Alto

Utilisez une cellule de démarques:

<video controls src="path/to/video.mp4" />

Citation: Jupyter Notebook »Docs» Exemples »Markdown Cells

12
Kent Horvath

from IPython.display import HTML

# Youtube
HTML('<iframe width="560" height="315" src="https://www.youtube.com/embed/S_f2qV2_U00?rel=0&amp;controls=0&amp;showinfo=0" frameborder="0" allowfullscreen></iframe>')

1
Victor John

Regardez ce lien, vous trouverez plus https://Gist.github.com/christopherlovell/e3e70880c0b0ad666e7b5fe311320a62

depuis IPython.display import HTML

from IPython.display import HTML

HTML('<iframe width="560" height="315" src="https://www.youtube.com/embed/S_f2qV2_U00?rel=0&amp;controls=0&amp;showinfo=0" frameborder="0" allowfullscreen></iframe>')

0
user5949499

Un moyen plus simple:

from IPython.display import Video
Video("OUT.mp4")
0
Ziyad Moraished