Arborescence des pages

Contexte

Depuis la version 2.8 de Pod, une solution permettant aux usagers de retrouver directement dans Pod un enregistreur écran + micro avait été mis en place. Grâce à cette solution, les usagers de Pod peuvent réaliser en autonomie des capsules vidéos, qui pouvaient alors être envoyées automatiquement dans Pod.

Ce système n'étant pas optimal, il a été remplacé dans la version 2.9 de Pod par l'Opencast Studio.

Présentation du fonctionnement d'Opencast Studio

Ce système d'Opencast studio est bien plus performant que l'ancien enregistreur, et permet aux usagers de Pod, en totale autonomie, d'enregistrer la caméra, le micro et l'écran de l'utilisateur.

Ainsi, en plus de pouvoir enregistrer tout cela localement, l'usager peut publier automatiquement l'ensemble sur la plateforme Pod avec différentes possibilités de rendu. (Voir présentation faite lors de la journée Esup).

  • L'icône d'Enregistreur apparaît dans le menu de profil des usagers connectés à Pod

  • L'utilisateur peut choisir les sources qu'il souhaite enregistrer

  • L'utilisateur peut paramétrer ses sources audio et vidéo (en terme de choix de matériel, de qualité)

  • L'usager peut également décider d'enregistrer l'audio ou non


  • Un bouton rouge permet l'enregistrement.

  • Une fois l'enregistrement réalisé, il peut également couper le début et/ou la fin de celui-ci.

  • A la fin de son enregistrement, et après les coupes - si besoin - , l'utilisateur peut choisir d'enregistrer en local ou d'envoyer directement sur Pod.
    En cas d'enregistrement de 2 flux vidéos, Pod les concatènera en une seule vidéo, selon l'option PIP choisie. La vidéo finale se retrouvera, comme d'habitude, dans le menu Mes vidéos.



Installation

Pour rajouter le studio d'Opencast dans votre instance de Esup-Pod, voici les étapes à suivre :

  • Récupérer les sources Opencast Studio via la commande suivante : 

    git clone https://github.com/elan-ev/opencast-studio/
  • Créer l'Opencast Studio avec la bonne configuration pour Pod via les commandes suivantes :

    Installation d'Opencast Studio v 1.0 pour les versions d’Esup-Pod <= 3.4.1

    cd opencast-studio/
    # cf la liste des tags: https://github.com/elan-ev/opencast-studio/tags
    git checkout tags/2023-09-14
    export PUBLIC_URL=/studio
    npm install
    npm run build

    Installation d'Opencast Studio v 2.0 pour les versions d’Esup-Pod >= 3.5.0

    cd opencast-studio/
    export PUBLIC_PATH=/studio
    npm install
    npm run build:release
  • Un répertoire build est alors généré. Renommez ce répertoire build en studio, puis copier le dans le répertoire pod/custom/static/opencast/


mkdir -p pod/custom/static/opencast/studio
cp -r build/* pod/custom/static/opencast/studio
  • Finalement, n'oubliez pas de collecter vos fichiers statiques pour la mise en production via la commande :

    (django_pod) [userpod@video][/data/www/userpod/django_projects/podv2] python manage.py collectstatic

La génération d'Opencast Studio peut très bien se réaliser sur un autre serveur. Pod n'a besoin que du répertoire build, renommé en studio, et positionné dans le sous-répertoire pod/custom/static/opencast

Il est indispensable que le serveur soit configuré en HTTPS (et non en HTTP) pour que l'Opencast Studio puisse fonctionner.

Configuration et pré-requis

Configuration

Dans votre custom/settings-local.py, les paramètres suivants concernent l'utilisation d'Opencast Studio:

PropriétéDescriptionValeur par défaut
USE_OPENCAST_STUDIO Activer l'enregistreur Opencast StudioFalse

OPENCAST_FILES_DIR

Répertoire de travail pour les fichiers générés par Opencast Studio (sera accessible dans le media)"opencast-files"

ENCODE_STUDIO

Fonction appelée pour lancer l'encodage des vidéos intermédiaires du studio

"start_encode_studio"

OPENCAST_DEFAULT_PRESENTER

Paramètre permettant de savoir le comportement par défaut lors de l'enregistrement de la caméra et de l'écran (modifiable par l'utilisateur)

Valeurs possibles :

  • mid : Même taille pour l'écran et la caméra
  • piph : Pip - caméra à l'intérieur de la vidéo de l'écran en haut à droite
  • pipb : Pip - caméra à l'intérieur de la vidéo de l'écran en bas à droite
"mid"


Le paramètre de l'ancien système d'enregistrement, USE_VIDEO_RECORD, n'est plus utilisé et peut alors être supprimé de sa configuration.

Pré-requis

Il est aussi nécessaire de créer, via l'interface d'administration, un nouvel Enregistreur de type Studio :

Il est indispensable que cet enregistreur est comme type d'enregistrement Studio; concernant le répertoire des publications, mettre opencast-files, ou du moins, la valeur configurée dans le paramètre OPENCAST_FILES_DIR.

Vous pouvez faire cette création en ligne de commande si vous le souhaitez :

(django_pod) [userpod@video][/data/www/userpod/django_projects/podv2] echo "from pod.recorder.models import Recorder; from pod.video.models import Type; type=Type.objects.get(pk=1); rec=Recorder.objects.create(name='Studio', address_ip='127.0.0.1', recording_type='studio', type=type)" | python manage.py shell


Exploitation

Les fichiers d'Opencast Studio sont générés dans le répertoire /media/opencast-files/ et tout est loggué dans l'interface d'administration de Pod.

En effet, il est possible de retrouver les enregistrements réalisés par les usagers via le module Recorder / Enregistrement pour l'enregistreur de type Studio défini :


  • Aucune étiquette