diff --git a/ghostream/default_settings.py b/ghostream/default_settings.py index ec7d854..22cc735 100644 --- a/ghostream/default_settings.py +++ b/ghostream/default_settings.py @@ -1,9 +1,11 @@ +import os + # Default configuration # LDAP -LDAP_URI = "ldap://127.0.0.1:389" -LDAP_USER_DN = "cn=users,dc=example,dc=com" +LDAP_URI = os.environ.get('LDAP_URI') or "ldap://127.0.0.1:389" +LDAP_USER_DN = os.environ.get('LDAP_USER_DN') or "cn=users,dc=example,dc=com" # Web page -SITE_NAME = "Ghostream" -FAVICON = "/favicon.ico" +SITE_NAME = os.environ.get('SITE_NAME') or "Ghostream" +FAVICON = os.environ.get('FAVICON') or "/favicon.ico" diff --git a/ghostream/static/obs_sortie.png b/ghostream/static/obs_sortie.png new file mode 100644 index 0000000..ddd905f Binary files /dev/null and b/ghostream/static/obs_sortie.png differ diff --git a/ghostream/static/obs_stream.png b/ghostream/static/obs_stream.png new file mode 100644 index 0000000..ac1be7e Binary files /dev/null and b/ghostream/static/obs_stream.png differ diff --git a/ghostream/static/style.css b/ghostream/static/style.css index de33c57..a168d31 100644 --- a/ghostream/static/style.css +++ b/ghostream/static/style.css @@ -1,17 +1,97 @@ body, html { height: 100%; + margin: 0; } body { background-color: #3b4b5b; + font-family: "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif; + font-size: 1rem; + font-weight: 400; + line-height: 1.5; + color: #bbb; + text-align: justify; user-select: none; } -.text-select { +p { + margin-top: 0; + margin-bottom: 1rem; +} + +code { + font-size: 87.5%; + word-break: break-word; user-select: text; } -.my-row { +svg { + overflow: hidden; + vertical-align: middle; +} + +a { + text-decoration: underline; + text-decoration-style: dotted; + color: inherit; +} + +img { + max-width: 100%; +} + +h1, h2, h3, h4 { + color: #ddd; +} + +.container { + height: 100%; + width: 100%; display: flex; + flex-wrap: wrap; height: 100%; } + +.col-video { + padding: 1rem; + flex-basis: 0; + flex-grow: 1; + position: relative; + width: 100%; + text-align: right; +} + +.col-chat { + position: relative; + width: 100%; + height: 100%; + box-shadow: 0 1rem 3rem rgba(0,0,0,0.175); +} + +.col-chat iframe { + position: absolute; + top: 0; + bottom: 0; + left: 0; + width: 100%; + height: 100%; + border: 0; +} + +/* Hide chat toggler on small screen */ +#chatToggle { + margin-left: 0.5rem; + display: none; +} + +/* On large screen, put chat on left */ +@media(min-width:1000px){ + .col-chat { + width: 33.33333%; + flex: 0 0 33.33333%; + } + + #chatToggle { + display: inline; + } +} diff --git a/ghostream/templates/base.html b/ghostream/templates/base.html index 49a7f70..efa1858 100644 --- a/ghostream/templates/base.html +++ b/ghostream/templates/base.html @@ -3,7 +3,6 @@
+ {{ config.SITE_NAME }} est un service maintenu par le + Crans permettant de diffuser + un contenu vidéo. Il a pour but d'être utilisé pour diffuser + des séminaires ou évènements. +
+ +Pour diffuser un contenu vous devez être adhérent Crans.
+ ++ Open Broadcaster Software + est une solution libre et open source de diffusion vidéo. + Pour diffuser sur cette plateforme, allez dans les paramètres + « Stream (flux) » : +
+rtmps://{{ request.remote_addr }}:1935/app
,
+ IDENTIFIANT?pass=MOT_DE_PASSE
+ avec IDENTIFIANT
et MOT_DE_PASSE
+ vos identifiants.
+
+ Pour éviter les saccades, changez vos paramètres d'encodage dans
+ « Sortie » avec un profil baseline
et un
+ règlage fin zerolatency
.
+
+ Votre stream sera alors disponible sur
+ https://{{ request.remote_addr }}/IDENTIFIANT
.
+
+
+ ffmpeg -re -i mavideo.webm -vcodec libx264 -vprofile baseline
+ -acodec aac -strict -2 -f flv
+ rtmps://{{ request.remote_addr }}:1935/app/IDENTIFIANT?pass=MOT_DE_PASSE
+
+
+ Le service de diffusion vidéo du Crans est un service d'hébergement + au sens de l'article 6, I, 2e de la loi 2004-575 du 21 juin 2004. + Conformément aux dispositions de l'article 6, II du même, + l'association Crans conserve les données de nature à permettre + l'identification des auteurs du contenu diffusé. + Ce service est hébergé par l'association Crans, au + 61 Avenue du Président Wilson, 94235 Cachan Cedex, France. +
+
+ En cas de réclamation sur le contenu diffusé de type
+ https://{{ request.remote_addr }}/identifiant
,
+ l'auteur peut être contacté par courrier à l'adresse
+ identifiant@crans.org
.
+ La loi vous autorise à contacter directement l'hébergeur à
+ l'adresse suivante :
+
Association Crans - ENS Paris-Saclay+ Vous pouvez également envoyer directement vos réclamations par + courrier électronique à l'adresse
Notification de Contenus Illicites
61, Avenue du Président Wilson
94235 Cachan Cedex
France
bureau[at]crans.org
.
+
+
+
+ rtmps://{{ request.remote_addr }}:1935/app/{{ path }}
+ »
+