Skip to content

Instantly share code, notes, and snippets.

@jmrunge
Forked from anonymous/Instalar-malbec-server.tuto
Last active February 5, 2017 18:31
Show Gist options
  • Save jmrunge/9367751 to your computer and use it in GitHub Desktop.
Save jmrunge/9367751 to your computer and use it in GitHub Desktop.
*** Este tuto asume que estamos usando dos placas decklink, una para captura (la primera, o index=0) y otra para salida (la segunda, o index=1)
* Instalar debian stable, formateando con /home separado y con las opciones ssh y file server
* Actualizar apt:
-> su
-> sudo gedit /etc/apt/sources.list
-> agregar contrib y non-free a los repos
-> grabar y salir
-> apt-get update
-> apt-get upgrade
* Instalar sudo y screen:
-> su
-> apt-get install sudo screen
* Instalar fluxbox y vncserver:
-> sudo apt-get install vnc4server xterm fluxbox
-> vncserver (asignar contraseña)
-> vncserver -kill :1
-> hacer que vnc se levante por defecto:
-> sudo nano /etc/rc.local
-> agregar justo antes de exit 0 (malbec es el nombre del usuario que creamos en la insatalacion de debian):
-> su -c "vncserver :1" malbec
-> Ctrl+X, darle yes y listo
* Bajar drivers blackmagic: (chequear version en http://www.blackmagicdesign.com/support/detail?sid=3947&pid=3989&leg=false&os=linux)
-> al 24/02/2010 seria asi:
-> wget http://software.blackmagicdesign.com/DesktopVideo/Blackmagic_Desktop_Video_Linux_10.0.tar.gz
-> tar -zxvf Blackmagic_Desktop_Video_Linux_10.0.tar.gz
-> cd DesktopVideo_10.0/deb/amd64
-> instalar drivers:
-> sudo dpkg -i desktopvideo_10.0a7_amd64.deb (da error)
-> sudo apt-get -f install (esto instala cpp-4.6 dkms gcc-4.6 gcc-4.6-base linux-headers-3.2.0-4-amd64 linux-headers-3.2.0-4-common linux-headers-amd64 linux-kbuild-3.2)
-> instalar gui (para poder cambiarle los seteos a la placa):
-> sudo dpkg -i desktopvideo-gui_10.0a7_amd64.deb
-> sudo apt-get -f install (esto instala libqt4-core libqt4-gui)
* Configurar placa Blackmagic:
-> conectarse por VNC (ip:1)
-> abrir una terminal y ejecutar:
-> BlackmagicControlPanel
-> Para la placa Blackmagic (1-captura) debe quedar seteado de la siguiente forma:
-> output: whatever
-> input: Composite Video (Y in) & RCA audio
-> Use video setup in NTSC: whatever
-> Set default video standard as: whatever
-> Para la placa Blackmagic (2-salida) debe quedar seteado de la siguiente forma:
-> output: HDMI & Composite (Y Out) & S-video
-> input: whatever
-> Use video setup in NTSC: whatever
-> Set default video standard as: PAL
* Instalar MLT: (chequear x cambios en http://www.mltframework.org/bin/view/MLT/BuildScripts -> Melted)
-> al 24/02/2010 seria asi:
-> sudo apt-get install git automake autoconf libtool intltool g++ yasm swig libmp3lame-dev libgavl-dev libsamplerate-dev libxml2-dev ladspa-sdk libjack-dev libsox-dev libsdl-dev libgtk2.0-dev liboil-dev libsoup2.4-dev libqt4-dev libexif-dev libtheora-dev libvdpau-dev libvorbis-dev python-dev
-> mkdir melted
-> cd melted
-> wget http://github.com/mltframework/mlt-scripts/raw/master/build/build-melted.sh
-> chmod +x build-melted.sh
-> ./build-melted.sh
-> Edit etc/start-melted.conf to set the MLT profile to use.
-> Edit etc/melted.conf to include any MVCP commands to initialize the units within melted or set the root directory of assets.
* Actualizar MLT agregando gstshm y posixshm:
-> al 24/02/2014 seria asi:
-> cd melted/src/mlt
-> eliminar files de la instalacion anterior
-> make clean
-> git remote add mbc https://github.com/inaes-tic/mlt.git
-> git pull mbc gstshm
-> git pull mbc posixshm
-> cd ../../
-> nano build-melted-sh
-> editar para que quede asi:
-> ACTION_GET_COMPILE_INSTALL=0
-> ACTION_GET_ONLY=0
-> ACTION_COMPILE_INSTALL=1
-> Ctrl+X y darle yes
-> eliminar viejo build
-> rm -rf 20140227
-> ./build-melted.sh
-> nano 20140227/etc/melted.conf
-> comentarear TODO
-> Ctrl+X y darle yes
* Generar los enlaces simbolicos para poder usar ffmpeg, x264, melt y melted del build que acabamos de hacer (cambiar en el path la parte de la fecha)
-> sudo ln -s /home/malbec/melted/20140227/bin/ffmpeg /usr/local/bin/ffmpeg
-> sudo ln -s /home/malbec/melted/20140227/bin/x264 /usr/local/bin/x264
-> sudo ln -s /home/malbec/melted/20140227/bin/melt /usr/local/bin/melt
-> sudo ln -s /home/malbec/melted/20140227/bin/melted /usr/local/bin/melted
-> sudo ln -s /home/malbec/melted/20140227/bin/ffprobe /usr/local/bin/ffprobe
* Instalar webvfx:
-> git clone https://github.com/ddennedy/webvfx.git
-> cd webvfx
-> export PKG_CONFIG_PATH=/home/malbec/melted/20140227/lib/pkgconfig
-> qmake -r PREFIX=/usr/local
-> sudo make install
* Instalar node.js (chequear por cambios en https://github.com/joyent/node/wiki/Installing-Node.js-via-package-manager):
-> al 24/02/2014 seria asi:
-> sudo apt-get install python g++ make checkinstall
-> src=$(mktemp -d) && cd $src
-> wget -N http://nodejs.org/dist/node-latest.tar.gz
-> tar xzvf node-latest.tar.gz && cd node-v*
-> ./configure
-> sudo checkinstall -y --install=no --pkgversion $(echo $(pwd) | sed -n -re's/.+node-v(.+)$/\1/p') make -j$(($(nproc)+1)) install
-> sudo dpkg -i node_*
* Instalar mbc-caspa
-> al 24/02/2014 seria asi:
-> sudo apt-get install gettext mongodb redis-server pkg-config libavahi-compat-libdnssd-dev
-> git clone http://github.com/inaes-tic/mbc-caspa.git
-> cd mbc-caspa
-> git submodule init
-> git submodule update
-> git submodule foreach git pull origin master
-> npm install
-> make serve
-> Matarlo con Ctrl+C
-> git clone http://github.com/inaes-tic/mbc-mosto.git
-> cd mbc-mosto
-> npm install
-> make install
-> Matarlo con Ctrl+C
* Instalar mbc-mosto
-> al 24/02/2014 seria asi:
-> git clone http://github.com/inaes-tic/mbc-mosto.git
-> cd mbc-mosto
-> npm install
-> make install
* Instalar mbc-etiquette
-> al 24/02/2014 seria asi:
-> sudo apt-get install unzip imagemagick
-> git clone https://github.com/inaes-tic/mbc-etiquette.git
-> cd mbc-etiquette
-> npm install
* Instalar stream-m
-> sudo apt-get install zip
-> git clone https://github.com/inaes-tic/stream-m.git
-> cd stream-m
-> make install
* Instalar patero
-> sudo apt-get install python-gi gir1.2-glib-2.0 python-dev python-pip
-> git clone https://github.com/inaes-tic/mbc-patero.git
-> cd mbc-patero
-> sudo pip install -r requirements.txt
-> cp defaults.json config.json
-> nano config.json
-> Editar las siguientes lineas
-> "incoming_dir": "/home/malbec/mbc-patero/incoming",
-> "output_dir": "/home/malbec/mbc-patero/transcoded",
-> "workspace_dir": "/home/malbec/mbc-patero/workspace"
-> Ctrl+X, darle que si a la pregunta y listo
-> mkdir incoming
-> mkdir transcoded
-> mkdir workspace
* Preparar captura
-> cd mbc-playout/mosto/images
-> touch capture.mlt
-> nano capture.mlt
-> insertar el siguiente texto en el archivo:
<?xml version="1.0" encoding="utf-8"?>
<mlt>
<producer id="0825609c-1fab-4971-980a-6e1d81d84e52" mlt_service="posixshm"/>
<playlist id="254c4173-25b4-4e8f-a513-683845e69cdf">
<entry producer="0825609c-1fab-4971-980a-6e1d81d84e52"/>
</playlist>
<tractor id="92edc0e7-03ef-40ca-9b9d-3c19350959cb">
<multitrack id="a663b000-552d-44f3-94c8-014da0f9724f">
<track producer="254c4173-25b4-4e8f-a513-683845e69cdf"/>
</multitrack>
</tractor>
</mlt>
-> Ctrl+X y S para grabar
* Ejecutar mbc-caspa
-> cd mbc-caspa
-> make serve_noweb
* Configurar mbc-playout
-> Entrar a http://[IP DEL SERVIDOR MALBEC]:3000, configuracion
-> Ir a Mosto/General
-> Cambiar "Blank Clip" a /home/malbec/mbc-mosto/images/capture.mlt
-> Ir a Mosto/Melted
-> Cambiar "Output Driver" a posixshm:output.mlt
-> Ir a Webvfx/Editor
-> Cambiar "server" a http://[IP DEL SERVIDOR MALBEC]:3100/
-> Cambiar "stream url" a http://[IP DEL SERVIDOR MALBEC]:8000/consume/mbc?password=malbec
-> matar mbc-playout con Ctrl+C
* Ejecutar mbc-patero en una terminal de screen
-> screen
-> cd mbc-patero
-> python patero.py
-> Ctrl+A y luego la tecla D
* Ejecutar proceso de captura en una terminal de screen
-> screen
-> melt -producer decklink buffer=25 -consumer posixshm
-> Ctrl+A y luego la tecla D
* Ejecutar stream-m en una terminal de screen
-> screen
-> cd stream-m
-> make
-> Ctrl+A y luego la tecla D
* Ejecutar mbc-caspa en una terminal de screen
-> screen
-> cd mbc-caspa
-> make MBC_SCRAPE=1 serve_noweb
-> Ctrl+A y luego la tecla D
* Ejecutar mbc-mosto en una terminal de screen
-> screen
-> cd mbc-mosto
-> make NODE_CONFIG_DIR=~/mbc-caspa/node_modules/mbc-common/config serve
-> Ctrl+A y luego la tecla D
* Ejecutar mbc-etiquette en una terminal de screen
-> screen
-> cd mbc-etiquette
-> make NODE_CONFIG_DIR=~/mbc-caspa/node_modules/mbc-common/config serve_noweb
-> Ctrl+A y luego la tecla D
* Ejecutar el primer proceso posixshm en una terminal de screen
-> screen
-> export DISPLAY=:1
-> melt -producer posixshm:output.mlt -consumer decklink:1 mlt_profile=dv_pal -filter webvfx:http://localhost:3100/filter
-> Ctrl+A y luego la tecla D
* Ejecutar el segundo proceso posixshm en una terminal de screen
-> screen
-> export DISPLAY=:1
-> melt -producer posixshm:output.mlt -consumer avformat:http://localhost:8000/publish/mbc?password=malbec real_time=1 terminate_on_pause=0 f=webm vcodec=libvpx b=1000k s=720x570 acodec=libvorbis ab=128k g=0 me_method=zero flags2=fast preset=ultrafast tune=zerolatency crf=40 qmin=5 mlt_profile=dv_pal
-> Ctrl+A y luego la tecla D
******* JUST NOTES, DO NOT EXECUTE!!!!! ***********************************************
* Bajar SDK Blackmagic (chequear version en http://www.blackmagicdesign.com/support/sdks):
-> al 24/02/2014 seria asi:
-> wget http://software.blackmagicdesign.com/SDK/Blackmagic_DeckLink_SDK_10.0.zip
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment