|
| Hack pour lire les medias locaux | |
| | Auteur | Message |
---|
bretelles Nabz Junior
Age : 48 Localisation : Paris Nabaztag : Agatag et Barnab (serveur local) Nbr de messages : 64 Carottes : 4934
| Sujet: Hack pour lire les medias locaux Lun 26 Déc 2016 - 14:36 | |
| Bonjour à tous, je crée un topic dédié ce sera plus propre. En jouant avec le tts je me suis rendu compte qu'il était assez facile de jouer des médias locaux (hébergés par le serveur) en bidouillant légèrement. Cela va surtout intéresser les éleveurs qui utilisent un serveur local mais qui sait, cela peut permettre aussi à des serveurs officiels de proposer une liste( ou des listes) de médias thématiques. J'ai essayé juste des fichiers mp3 (pour l'instant je trouve que les fichiers en 22.05 Khz sont ceux qui rendent le mieux, j'attends vos avis ) et des fichiers midi (peu sont supportés, ils doivent être au format Standard MIDI format 0 visiblement d'après les specs de la puce ML2870A). Si vous en trouvez d'autres, je prends L'idée est d'avoir un répertoire média à la racine de http-wrapper contenant les fichiers à jouer. Et voici la modification de code, dans le fichier server/lib/ttsmanager.cpp - Code:
-
// Create TTS Song in /broadcast/tts/<name>/<voice>/[md5].mp3 QByteArray TTSManager::CreateNewSound(QString text, QString voice, QString name, bool forceOverwrite) { if (voice == "media") { return ("broadcast/media/" + text).toAscii(); }
TTSInterface * tts = Instance().GetTTSByName(name); return tts->CreateNewSound(text, voice, forceOverwrite); }
QByteArray TTSManager::CreateNewSound(QString text, QString voice, bool forceOverwrite) { if (voice == "media") { return ("broadcast/media/" + text).toAscii(); }
TTSInterface * tts = Instance().GetTTSByName(GlobalSettings::Get("Config/TTS", "acapela").toString()); return tts->CreateNewSound(text, voice, forceOverwrite); }
Et après, on peut facilement jouer le média en indiquant son nom dans la chaîne tts et en précisant media comme voice, exemple pour jouer pirates.mid: - Code:
-
http://terrier.local/ojn/FR/api.jsp?sn=XXXXXXXXXXXX&token=XXXXXXXXXXXXXXXXXXXXXX&tts=pirates.mid&voice=media
Voilà j'attends vos retours. bretelles PS: deux fichiers midi pour tester, je suis preneur si vous en avez qui fonctionnent ! Pirates des Caraïbes : http://cherche-heritier.com/nabaztag/pirates.mid la marche impériale de Star Wars : http://cherche-heritier.com/nabaztag/imperial.mid Edit: correction sur le format supporté, ci-joint, extrait des specs - ml2870a specifications a écrit:
- FREQUENTLY ASKED QUESTIONS
Q1. What kind of musical score formats does the ML2870A support? A1. ML2870A can play Standard MIDI files under given conditions and the Oki original musical score format directly. If Standard MIDI file format 1/0 or Karaoke function need to be supported, Oki provides sample software based on NDA for this purpose. Q2. What is the condition for playing Standard MIDI file directly? A2. (1) Play format 0 only, do not play format 1. (2) Eliminate text and MIDI events not supported by the ML2870A. Q3. Which MIDI events does the ML2870A support? A3. - Note On/Off / Program change / Pitch bend / Channel pressure - Control change [Modulation / Volume / Pan / Expression / Sustain / Reset all controller / All note off] - RPN [Pitch bend sensitivity / Fine tuning / Coarse tuning] Q4. Does the ML2870A support synchronization of LED with ADPCM playback ? A4. Yes. LED and ADPCM functions are included in the musical score and are assigned as percussion to MIDI channel 10. It is necessary to build a software routine for this synchronization.
Edit 2: Sur Windows, un super programme qui permet de convertir les midi format 1 en format 0, ça marche nickel : http://www.gnmidi.com/ Choisissez Freeware -> GN1:0 et convertissez | |
| | | bretelles Nabz Junior
Age : 48 Localisation : Paris Nabaztag : Agatag et Barnab (serveur local) Nbr de messages : 64 Carottes : 4934
| Sujet: Re: Hack pour lire les medias locaux Mar 27 Déc 2016 - 1:15 | |
| Pour info, j'ai bien trouvé cette page pour lire des sons : http://openjabnab.fr/ojn_admin/faq.php?question=comment-jouer-un-son Mais sur mon serveur local, la page ne fonctionnant pas, je ne sais pas s'il est possible d'uploader un fichier midi et je ne sais pas dans quel répertoire c'est envoyé. Le mieux serait alors d'utiliser mes modifs sur le même répertoire non ? | |
| | | Surame Lapin nain
Localisation : Tours Nbr de messages : 24 Carottes : 3934
| Sujet: Re: Hack pour lire les medias locaux Sam 4 Mar 2017 - 9:14 | |
| Merci Bretelles pour cette excellente contribution. Je suis en train de tester ça. Moi aussi j'aime bien l'idée d'avoir un serveur local.
| |
| | | bretelles Nabz Junior
Age : 48 Localisation : Paris Nabaztag : Agatag et Barnab (serveur local) Nbr de messages : 64 Carottes : 4934
| Sujet: Re: Hack pour lire les medias locaux Sam 4 Mar 2017 - 22:11 | |
| De rien Surame, content de voir que ça sert à au moins une autre personne que moi Mais je ne suis pas sûr que beaucoup utilise des serveurs locaux... | |
| | | Contenu sponsorisé
| Sujet: Re: Hack pour lire les medias locaux | |
| |
| | | | Hack pour lire les medias locaux | |
|
Sujets similaires | |
|
| Permission de ce forum: | Vous ne pouvez pas répondre aux sujets dans ce forum
| |
| |
| |