Différences entre les versions de « Orange pi music »

De mydil
Aller à la navigation Aller à la recherche
 
(20 versions intermédiaires par le même utilisateur non affichées)
Ligne 8 : Ligne 8 :
 
||
 
||
 
*[[User:Tala | Tala]]
 
*[[User:Tala | Tala]]
 +
*[[User:iTechCydia |iTechCydia]]
 
*[[User:Serahf |Serahf]]
 
*[[User:Serahf |Serahf]]
 
||
 
||
Ligne 17 : Ligne 18 :
 
|}
 
|}
  
=Installation=
+
= Documentation =
La version utilisé par le Orange Pi est une ''Ubuntu 16.04.4 LTS (Xenial Xerus)'' compilée pour un processeur ARM. Une version x86 est disponible [http://releases.ubuntu.com/16.04/ubuntu-16.04.4-server-amd64.iso ici]
+
* [[installation_orange_pi_music | Installation]];
 
+
* [[Roadmap_orange_pi_music | Roadmap]];
Il faudra faire attention lors du portage entre architectures, l'utilisation de PHP devant quand même grandement limiter les effets d'adhérence.
+
* Le projet est accessible sur le dépôt SVN [https://valhalla.tala-informatique.fr/svnroot/project/MusicSender/ ici]
 
+
* Documentation relative à [[music_sender_api |l'API]]
=Repository=
 
Le projet est accessible sur le dépôt SVN [https://valhalla.tala-informatique.fr/svnroot/project/MusicSender/ ici]
 
 
 
=Configuration de la VM=
 
==Paramétrer le mot de passe ''root''==
 
<pre>
 
#sudo passwd
 
</pre>
 
==Autoriser le login root sur SSH==
 
Dans le fichier ''/etc/ssh/sshd_config'' mettre l'option suivante à ''yes'':
 
<pre>
 
PermitRootLogin yes
 
</pre>
 
Et redémarrer ssh :
 
<pre>
 
systemctl restart ssh
 
</pre>
 
Puis se reconnecter en ''root'' sur la VM
 
 
 
==Ajouter des alias==
 
Dans le fichier ''/root/.bashrc, ajouter à la fin :
 
<pre>
 
alias vi="vim.tiny"
 
alias ll="ls -l"
 
</pre>
 
Puis recharger le fichier :
 
<pre>
 
. /root/.bashrc
 
</pre>
 
==Configuration de l'interface réseaux==
 
Dans le fichier ''/etc/network/interfaces''
 
<pre>
 
# The primary network interface
 
auto ens33
 
iface ens33 inet static
 
address 192.168.100.180
 
netmask 255.255.255.0
 
gateway 192.168.100.2
 
dns-nameservers 8.8.8.8
 
</pre>
 
==Mettre à jour l'heure==
 
Plusieurs commandes ne marcheront pas si le système est déphasé (tout ce qui implique l'utilisation de certificats)
 
<pre>
 
# apt -y install ntp
 
# timedatectl set-ntp on
 
</pre>
 
Dans le fichier ''/etc/ntp.conf'' remplacer :
 
<pre>
 
pool 0.ubuntu.pool.ntp.org iburst
 
pool 1.ubuntu.pool.ntp.org iburst
 
pool 2.ubuntu.pool.ntp.org iburst
 
pool 3.ubuntu.pool.ntp.org iburst
 
</pre>
 
par :
 
<pre>
 
server 0.ubuntu.pool.ntp.org iburst
 
server 1.ubuntu.pool.ntp.org iburst
 
server 2.ubuntu.pool.ntp.org iburst
 
server 3.ubuntu.pool.ntp.org iburst
 
</pre>
 
Redémarrer le service ntp :
 
<pre>
 
# systemctl restart ntp
 
</pre>
 
 
 
=Installation des services=
 
==Apache / Php / MariaDB==
 
===Installation===
 
<pre>
 
#apt -y install apache2 mariadb-server mariadb-client php7.0-cli libapache2-mod-php php7.0-mysql
 
</pre>
 
 
 
===Apache2===
 
Activation de mod_rewrite et démarrage:
 
<pre>
 
#a2enmod rewrite
 
#systemctl start apache2
 
</pre>
 
 
 
===MariaDB===
 
====Installation====
 
<pre>
 
#systemctl start mysql
 
#mysql_secure_installation
 
</pre>
 
==== Autoriser root sur localhost ET 127.0.0.1 ====
 
<pre>
 
# sudo mysql -u root -ppassword
 
> use mysql; update user set plugin='' where User='root'; flush privileges; exit;
 
</pre>
 
 
 
====Importation====
 
Si le mdp est ''password'' et que le fichier contenant le schéma est ''database.sql'':
 
<pre>
 
# mysql -u root -ppassword < database.sql
 
</pre>
 
===PHP===
 
Dans le fichier ''/etc/php/7.0/apache2/php.ini'' :
 
<pre>
 
date.timezone = Europe/Paris
 
</pre>
 
 
 
== Installations spécifiques ==
 
===EyeD3 pour les TAGs ID3===
 
<pre>
 
#apt -y install eyed3
 
</pre>
 
On peut tester :
 
<pre>
 
# eyeD3 /opt/mp3/music.mp3
 
</pre>
 
=== mpg123 pour lire en CLI ===
 
<pre>
 
#apt -y install mpg123
 
</pre>
 
On va utiliser mpg123 en mode ''fifo'' pour qu'il lise les ordres depuis un fichier texte. Pour démarrer le programme serveur:
 
<pre>
 
#mpg123 -R --fifo /opt/fifo
 
</pre>
 
Depuis un autre terminal on peut le ''piloter'':
 
*lecture : ''echo "load /opt/mp3/music.mp3" > /opt/fifo'';
 
*pause : ''echo "pause" > /opt/fifo'';
 
*volume (en %, ici 10%) : ''echo "volume 10" > /opt/fifo'';
 
=== ffmpeg ===
 
ffmpeg est utilisé pour récupérer des informations sur les vidéos.
 
<pre>
 
#apt -y install ffmpeg
 
</pre>
 
<pre>
 
#apt -y install ffmpeg
 
</pre>
 
Exemple avec un lien Youtube :
 
<pre>
 
ffmpeg -hide_banner -i "https://r8---sn-4gxx-25gy.googlevideo.com/videoplayback?sparams=clen%2Cdur%2Cei%2Cgir%2Cid%2Cinitcwndbps%2Cip%2Cipbits%2Citag%2Clmt%2Cmime%2Cmm%2Cmn%2Cms%2Cmv%2Cnh%2Cpl%2Crequiressl%2Csource%2Cexpire&nh=EAE%2C&key=yt6&pl=20&initcwndbps=488750&ipbits=0&source=youtube&fvip=4&itag=36&requiressl=yes&ei=RRDwWvmkNIT0WOOHj6AP&signature=76488F1D9697DD0D5F941B16E57FE1C70F2E313F.CAE9FB0074E536BD02B390C06B866AD93C03E7BE&mm=31%2C26&fexp=23724337&c=WEB&mn=sn-4gxx-25gy%2Csn-h5q7dnld&mime=video%2F3gpp&gir=yes&dur=2914.104&id=o-AMgZAlg8TdkZJUlKhlxeao1XWafRqqqvf9x62zj5UpBV&mv=m&mt=1525682152&ms=au%2Conr&clen=61367124&ip=82.64.7.65&expire=1525703845&lmt=1519325202020444"
 
 
 
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'https://r8---sn-4gxx-25gy.googlevideo.com/videoplayback?sparams=clen%2Cdur%2Cei%2Cgir%2Cid%2Cinitcwndbps%2Cip%2Cipbits%2Citag%2Clmt%2Cmime%2Cmm%2Cmn%2Cms%2Cmv%2Cnh%2Cpl%2Crequiressl%2Csource%2Cexpire&nh=EAE%2C&key=yt6&pl=20&initcwndbps=488750&ipbits=0&source=youtube&fvip=4&itag=36&requiressl=yes&ei=RRDwWvmkNIT0WOOHj6AP&signature=76488F1D9697DD0D5F941B16E57FE1C70F2E313F.CAE9FB0074E536BD02B390C06B866AD93C03E7BE&mm=31%2C26&fexp=23724337&c=WEB&mn=sn-4gxx-25gy%2Csn-h5q7dnld&mime=video%2F3gpp&gir=yes&dur=2914.104&id=o-AMgZAlg8TdkZJUlKhlxeao1XWafRqqqvf9x62zj5UpBV&mv=m&mt=1525682152&ms=au%2Conr&clen=61367124&ip=82.64.7.65&expire=1525703845&lmt=1519325202020444':
 
  Metadata:
 
    major_brand    : mp42
 
    minor_version  : 0
 
    compatible_brands: isommp42
 
    creation_time  : 2018-02-22 18:46:24
 
  Duration: 00:48:34.10, start: 0.000000, bitrate: 168 kb/s
 
    Stream #0:0(und): Video: mpeg4 (Simple Profile) (mp4v / 0x7634706D), yuv420p, 320x180 [SAR 1:1 DAR 16:9], 131 kb/s, 29.97 fps, 29.97 tbr, 30k tbn, 30k tbc (default)
 
    Metadata:
 
      creation_time  : 2018-02-22 18:46:24
 
      handler_name    : IsoMedia File Produced by Google, 5-11-2011
 
    Stream #0:1(eng): Audio: aac (LC) (mp4a / 0x6134706D), 22050 Hz, mono, fltp, 31 kb/s (default)
 
    Metadata:
 
      creation_time  : 2018-02-22 18:46:28
 
      handler_name    : IsoMedia File Produced by Google, 5-11-2011
 
 
 
</pre>
 

Version actuelle datée du 15 décembre 2018 à 19:56

Projet

Objectif Les acteurs Compétences Matériel

Faire une plateforme de partage musical dans un premier temps et pourquoi pas, multimédia par la suite.

  • Php Cli
  • Shell
  • Web (Front + API)
  • Orange PI au final, sinon une VM sous Ubuntu.

Documentation