Connexion
Vous n'avez pas encore de compte personnel ? Vous devriez en créer un. Une fois enregistré vous aurez certains avantages, comme pouvoir modifier l'aspect du site, ou poster des commentaires signés...
Support
Activité du Site

Pages vues depuis 06/01/2019 : 12 988 829

  • Nb. de membres 366
  • Nb. d'articles 2 843
  • Nb. de forums 24
  • Nb. de sujets 13
  • Nb. de critiques 0

Top 10  Statistiques

Index du forum »»  Création »» SoundBankster

SoundBankster#1496

3Contributeur(s)
demetherTchekoPapiosaur
1 Modérateur(s)
Papiosaur
demether demethericon_post
Salut,

Au détour du dernier compte rendu janvier-février, j'ai découvert ce soft ! Énorme !

Je suis utilisateur de MIXXX version linux, et j'utilise un Kontrol DJ500 (contrôleur midi pro assez ancien). Ce soft m’intéresse au plus au point (euphémisme).

J'ai pas trouvé tellement d'infos sur le site, ni d'email pour contacter Tcheko à ce sujet. Donc j'ai ouvert ce topic.

La question primordiale : Comment les contrôleurs seront gérés ?

Le mien nécessite des drivers, si on veut tout passer par USB, MAIS il a des prises midi DIN, du coup j'utilise l'USB uniquement pour l'alimentation, et les prises MIDI pour controller MIXXX.

Est ce que SoundBankster va comporter un "wizard" (avec pourquoi pas un systeme XML et/ou script comme dans MIXXX) pour "apprendre" des contrôleurs ?

Est ce que le midi "classique" via prises DIN va être pris en compte ?

Avec une carte permettant plusieurs sorties stéréo simultanées (comme une SB live ou une Audigy), est il possible d'avoir les decks sur une sortie, et le casque sur une autre sortie (c'est le setup actuel que j'utilise sous MIXXX) ?

En clair, vais je pouvoir utiliser mon powermac et mon contrôleur actuel pour mes besoins de djing ? 8-)

Merci et bravo :=! Je vais suivre avec grand intérêt :-#

Dimitri
Tcheko Tchekoicon_post
Punaise, c'est long.

Bon. Allons y point par point.

> Au détour du dernier compte rendu janvier-février, j'ai découvert ce soft ! Enorme !

Ha non. Pas énorme. Environ 250KB pour l'exe. Ca doit faire dans les 120KB compressé LZMA... :)

> Je suis utilisateur de MIXXX version linux, et j'utilise un Kontrol
> DJ500 (controller midi pro assez ancien). Ce soft m'interesse au plus au point (euphémisme).

Merci pour l'intérêt porté Ã mon hobby. :)

> J'ai pas trouvé tellement d'infos sur le site, ni d'email pour
> contacter Tcheko à ce sujet. Donc j'ai ouvert ce topic.

C'est pourtant pas compliqué. Il est dans toutes mes projets MorphOS. Et c'est vrai qu'il n'y est pas dans l'archive de SoundBankster...

> La question primordiale : Comment les controlleurs seront gérés ?

La question qui fache direct. Autant crever le sujet immédiatemment donc.

Réponse de normand. Ben, ça dépend. En fait, une bonne partie des controleurs du marché sont à classer dans la catégorie des m**des sans noms ch*é par des nains cons pétants. Afin de protéger plus ou moins un pseudo avantage commercial entre les softs, les fabricants de matériel construisent des équipements avec des protocoles pas forcément standards ou en tout cas, s'assoient largement sur la norme pour faire des trucs qui ne fonctionneront que si tu as le pilote adéquat. Lire : OuinOuin ou PoussifX et parfois, mais c'est parce que tu es à la bonne avec la crémière Nulix.

Deux méthodes de fonctionnement pour ces fameux controleurs : soit Midi soit HID (soit DTC, mais c'est pas la peine d'en parler).

Pour le MIDI : pas encore supporté dans SoundBankster. J'ai fait quelques essais pas très concluant avec la camd.library. A moins que j'ai une illumination matinale un de ces jours pour arriver à faire fonctionner le MIDI avec la camd.library, c'est pas prévu pour la 1.1. C'est balôt, les controlleurs intéressants et corrects respectent généralement le protocole midi sans détour. Bien que. Certains controleurs retournent une classe spécifique vendeur (255) au lieu de retourner une classe MIDI. Résultat, il faut forcer le binding dans Poséidon. C'est comment dire. Naze. Cela rejoint le résumé précédent sur la qualité générale des controleurs du marché...

Donc, en résumé pour le MIDI, c'est mort pour l'instant.

Pour les HID : un petit rayon de soleil mais c'est quand même la tempête. Entre les controleurs qui respectent la norme HID 1.1 de MicroMou mais qui dans la qualité de la réalisation technique (sur le plan de la logique) font une belle approximation de ce qui ne faut pas faire et ceux qui font exprés de faire n'importe quoi pour que ce soit inutilisable sans un pilote BabelFish (lire simple traducteur), le choix est compliqué.

J'ai la chance d'avoir un controleur relativement basique mais qui a l'avantage de fonctionner convenablement avec Poseidon. Le mapping nécessite quelque contortion dans Poseidon mais cela fonctionne finalement pas trop mal (controleur à classer dans la série de je fais n'importe quoi avec la norme mais ca fonctionne).

Donc, en résumé pour les controlleurs HID, c'est parfaitement possible, c'est fonctionnel dans SoundBankster. Mais. Il y a toujours un mais... Mais il faut juste trouver un controleur qui :
- fonctionne en USB avec une interface HID (certain controleur n'offre que le MIDI)...
- ne fasse pas n'importe quoi avec la norme HID 1.1 de MS (qui soit dit en passant était sensé nous éviter ce genre de soucis... ben c'est raté.)

> Est ce que Soundbankster va comporter un "wizard"
> (avec pourquoi pas un systeme XML et/ou script comme dans MIXXX)
> pour "apprendre" des controlleurs ?

Dans SoundBankster, le mapping se fait par capture d'évènement. Tu cliques sur un bouton, tu tripotes ton controleur, tu assignes à la fonction que tu veux et zou. J'ai du mettre 3 minutes pour faire mon mapping... Le tout est sauvegardé dans un fichier texte à plat éditable à la main sans soucis. Concernant le XML, ben. Non. Le XML, c'est bien pour les usines à gaz.

> Est ce que le midi "classique" via prises DIN va etre pris en compte ?

Si le matériel est supporté par le système d'exploitation oui. Sinon non. Cependant, je rappelle que le support MIDI est inexistant actuellement. (Oui, c'est balot).

> Avec une carte permettant plusieurs sorties stéréo simultanées
> (comme une SB live ou une audigy), est il possible d'avoir les decks
> sur une sortie, et le casque sur une autre sortie (c'est le setup actuel
> que j'utilise sous MIXXX) ?

C'est déjà supporté. Cependant, il faut un système équipé de deux cartes sons... Donc pas de portable... Il faudrait le support de l'isochronous USB pour avoir le support des cartes sons USB...

> En clair, vais je pouvoir utiliser mon powermac et mon controlleur actuel
> pour mes besoins de djing ?

Tu peux déjÃ. Il me faut juste le md5sum de ta clé MorphOS dans DEVS: afin que ton système soit autorisé.
demether demethericon_post
Merci pour ta réponse complete :=!


"""Tu peux déjÃ. Il me faut juste le md5sum de ta clé MorphOS dans DEVS: afin que ton système soit autorisé. """

Je n'ai pas encore de clef ;-)








"""Dans SoundBankster, le mapping se fait par capture d'évènement. Tu cliques sur un bouton, tu tripotes ton controleur, tu assignes à la fonction que tu veux et zou. J'ai du mettre 3 minutes pour faire mon mapping... Le tout est sauvegardé dans un fichier texte à plat éditable à la main sans soucis. Concernant le XML, ben. Non. Le XML, c'est bien pour les usines à gaz. """

C'est ce que j'appelle un "wizard" ;)
Dans MIXXX, aprés avoir utilisé le "wizard", ça génére un XML, qui peut également appeller des fichiers !!!!!!!javascript!!!!!!! pour gérer certaines fonctions avancées (potards sans fin, certains types de jogwheels). Ca reste relativement simple et bien pensé, en fait.








"""Pour le MIDI : pas encore supporté dans SoundBankster. J'ai fait quelques essais pas très concluant avec la camd.library. A moins que j'ai une illumination matinale un de ces jours pour arriver à faire fonctionner le MIDI avec la camd.library, c'est pas prévu pour la 1.1. """
""""> Est ce que le midi "classique" via prises DIN va etre pris en compte ? Si le matériel est supporté par le système d'exploitation oui. Sinon non. Cependant, je rappelle que le support MIDI est inexistant actuellement. (Oui, c'est balot). """

Tu parles de possibilités de support MIDI uniquement via USB, c'est ça ? DOnc via DIN, impossible, la faute à Morphos ? Donc impossible pour moi avec le KDJ500, je pense. Par contre j'ai un autre controlleur qui est midi via USB, lui (enfin il me semble).






"""C'est déjà supporté. Cependant, il faut un système équipé de deux cartes sons... Donc pas de portable... Il faudrait le support de l'isochronous USB pour avoir le support des cartes sons USB... """"


Pourquoi 2 cartes son ? Une soundblaster live ou une audigy (bien que je ne sois pas sur que cette derniere soit supportée par Morphos) ont au moins 2 sorties stereo simultanées sans aucun soucis (sous windows ou linux). Donc j'ai pour habitude de me servir d'une sortie pour les decks (sortie "master" pour le public... imaginaire) et l'autre pour la pré-écoute casque (sélectionnable, 1 deck, deux decks, voir un mix réglable entre le deck et le master). Une seule carte m'est donc nécessaire.


Derniere question (nouvelle celle ci), quid de la latence ? C'est un point important dans les applis audio live. Sous linux, audigy 24 et noyau faible latence, j'ai de relativement bons résultats selon les softs (renoise et mixxx), genre 5ms, mais plutot réglé Ã environ 10ms pour etre tranquille (aucun clic ou "pop").


Merci et bon courage :=!


Papiosaur Papiosauricon_post
Pour ceux qui ne connaisse pas encore le lien, le voici :

http://tcheko.binaryriot.org/soundbankster/

et le mail de Tcheko est tcheko [at] no-log [dot] org :-D
Tcheko Tchekoicon_post

> Merci pour ta réponse complete :=!

De rien. =)

> Je n'ai pas encore de clef ;-)

Met la photo de ta belle mère dans DEVS:morphos.key et envoie moi son md5sum. Ca fonctionnera quand même...

> C'est ce que j'appelle un "wizard" ;)
> Dans MIXXX, aprés avoir utilisé le "wizard", ça génére un XML,
> qui peut également appeller des fichiers !!!!!!!!javascript!!!!!!!! pour gérer
> certaines fonctions avancées (potards sans fin, certains types de jogwheels).
> Ca reste relativement simple et bien pensé, en fait.

Et bé. XML et !javascript!. Rien que ça.... J'avais déjà des palpitations, lÃ, c'est l'arrêt cardiaque.

Dans le cas de SoundBankster, le mapping peut déclencher soit :

- une commande câblée en interne
- un script AmigaDOS externe qui peut faire de l'ARexx, du Lua... et interagir avec tout le système. Que ce soit des commandes ARexx vers SoundBankster ou d'autres choses, écrire dans un fichier, lancer un programme, envoyer des datas sur un port // ou série... ou parler avec DigiBooster 3 pour lancer des samples... Bref. No limits. :)

Il est même possible de scripter au chargement d'un morceau sur un deck...

> Tu parles de possibilités de support MIDI uniquement via USB, c'est ça ?

Non.

>DOnc via DIN, impossible, la faute à Morphos ?

C'est un soucis de pilote. Rien à voir avec le format de la prise...

>Donc impossible pour moi avec le KDJ500, je pense.
>Par contre j'ai un autre controlleur qui est midi via USB, lui (enfin il me semble).

J'en sais rien pour ton controleur. De toute façon, le midi n'est pas supporté pour l'instant...

> Pourquoi 2 cartes son ? Une soundblaster live ou une audigy
> (bien que je ne sois pas sur que cette derniere soit supportée par Morphos)
> ont au moins 2 sorties stereo simultanées sans aucun soucis (sous windows
> ou linux). Donc j'ai pour habitude de me servir d'une sortie pour les decks
>(sortie "master" pour le public... imaginaire) et l'autre pour la pré-écoute c
> casque (sélectionnable, 1 deck, deux decks, voir un mix réglable entre
> le deck et le master). Une seule carte m'est donc nécessaire.

Certes. Tu m'expliqueras comment brancher une carte son PCI sur un Powerbook. Concernant les cartes sons avec deux sorties audio, ce n'est pas la majorité des cartes... Et de toute façon, il faut DEUX sorties. Que ce soit sur une carte son qui propose une paire de sorties audio ou un carte son + la sortie native par défaut de la machine... Ce qui à l'arrivée revient à avoir dans tous les cas au moins deux cartes sons dans la machine (la native + une sortie supplémentaire... qui peut avoir deux sorties... ou 4 ou +...).

> Derniere question (nouvelle celle ci), quid de la latence ?
> C'est un point important dans les applis audio live.
> Sous linux, audigy 24 et noyau faible latence, j'ai de relativement
> bons résultats selon les softs (renoise et mixxx), genre 5ms,
> mais plutot réglé Ã environ 10ms pour etre tranquille (aucun clic ou "pop").

Pfff. Bon. La latence. Faut arrêter de se tripoter la nouille en se disant que plus court, c'est mieux... 5ms, c'est définitivement naze et apporte strictement rien de plus que 10ms... qui est encore bien en dessous de notre perception temporelle du son...

La sensation de temps réel en audio débute aux alentours des 50ms pour les oreilles ordinaires. Il est donc inutile d'utiliser des tampons audio aussi court... Cela bouffe du CPU a gogo et génère au final plus de soucis qu'autre chose. Celui qui prétend entendre la différence en 5ms et 10ms de buffer est un affabulateur de première classe...

Dans le cas qui nous intéresse, c'est 20ms pour SoundBankster.

20ms = 50 tranches de temps dans une seconde ou 50 changements de caractéristique du son : equalizer, volume, balance etc... C'est déjà très luxueux sur le plan psychoacoustique.

Cependant , ça peut couiner (un peu) si on lance des trucs qui bloquent le multitâche trop longtemps. Dans un cas d'usage ordinaire (c'est à dire, je ne fais que du djing), la probabilité d'avoir un clic/pop est quasi nulle (jamais arrivé jusqu'à présent).

J'ai prêter une attention particulière sur le traitement des clic/pop audio. Les priorités des tâches sont définies pour que cela n'arrive pas même dans la pire des situations : CPU à 100%, GPU à 100% et IO disque à gogo. J'ai testé le redimensionnement sauvage de la fenêtre de SoundBankster (genre la souris va et vient à travers l'écran...) avec un chargement MP3 en parallèle + une compilation GCC + deux pistes jouées.

Zéro défaut.

L'affichage n'était pas spécialement fluide (le traitement infligé est quand même bien méchant et inhabituel) mais le son n'a pas eu de soucis...

Ha. Et ce fameux buffer de 20ms est immuable et non réglable (puisque ça sert à rien sauf au gars du service marketing).


demether demethericon_post
MErci !


Pour le MIDI, tu me dis utiliser un controlleur, puis tu dis que le midi ne fonctionne pas lorsque je parle de midi via DIN (et donc par la carte son, cas le plus probable pour brancher du DIN sur un ordi), d'ou mon incompréhension. Je me dis alors que le midi via USB fonctionne, mais pas par DIN. :-# Maintenant je comprends que le MIDI ne marche pas du tout, donc je suppose que ton controlleur marche comme un clavier PC ou un joystick...Enfin j'en sais rien, et ça ne me concerne pas, n'ayant "que" des controlleurs midi (via DIN ou USB), non fonctionnels en l'état si j'ai fini par comprendre. :-P


Pour le mapping de controlleur, là encore je capte pas trop en quoi Arexxx et Lua est mieux que !!!!!javascript!!!!!, mais bon, je ne suis pas développeur. Certains controlleurs auront probablement des fonctionnalités impossibles à mapper à la volée (certains jogwheels, potards sans fin cliquables, fonctions secondaires). Et là il faudra bien scripter à la main qque chose, nan ?


Pour la carte son, je n'ai jamais parlé de powerbook :-D : dans mon cas, dans mon poste linux, j'ai une carte son, Ã multiples sorties (comme la plupart des cartes pour faire du home studio, et également la plupart des cartes multimedia, même relativement anciennes, comme une SB live, Ã cause des fonctionnalités home theater). Ensuite effectivement, j'ai également un chip son intégré Ã la carte mère (comme souvent), mais désactivé.

AU final je sais toujours pas si ton soft permet d'avoir la pré-écoute casque sur une des sorties de ma carte son (sur le powermac, une SB live avec 2 sorties stéréo), et le master sur l'autre ? Ou dans le pire des cas, la pré-écoute sur la sortie son du mac, et le master sur la SB live (ou inversement) ?



Concernant la latence, il me semble avoir lu que ça concerne aussi la réactivité du soft (changer les reglages égaliseur, crossfader, etc...) également. Souvent c'est les DJs orienté scratch qui sont particulierement attentifs à ce reglage. Moi j'avoue que comme je peux régler relativement bas, je regle bas sans trop me poser de questions.




A+
Tcheko Tchekoicon_post

Pour le MIDI, tu me dis utiliser un controlleur, puis tu dis que le midi ne fonctionne pas lorsque je parle de midi via DIN (et donc par la carte son, cas le plus probable pour brancher du DIN sur un ordi), d'ou mon incompréhension. Je me dis alors que le midi via USB fonctionne, mais pas par DIN. Maintenant je comprends que le MIDI ne marche pas du tout, donc je suppose que ton controlleur marche comme un clavier PC ou un joystick...Enfin j'en sais rien, et ça ne me concerne pas, n'ayant "que" des controlleurs midi (via DIN ou USB), non fonctionnels en l'état si j'ai fini par comprendre.


Pas de support MIDI pour l'instant. J'ai creusé un peu la question avec l'USB (avec la class simplemidi de Poseidon) sans grand succès malheureusement.

Nous n'avons pas encore de camd.library native sur MorphOS pour interfacer proprement tout type de matériel compatible MIDI.

Soit dit en passant, le MIDI est un protocole série qui pourrait fonctionner par le port série d'un Pegasos ou par un port USB ou part une carte son qui disposerait d'un tel port...

Mais cela serait possible uniquement si :
- un pilote existe selon le type de support : USB, port série traditionnel, port midi sur carte son
- une méthode d'accès universelle pour traiter les messages MIDI (la fameuse bibliothèque CAMD).

Pour l'instant, c'est plutot la friche sur MorphOS concernant le support du midi. En tout cas, c'est une partie pas spécialement testée... (malheureusement).


Pour le mapping de controlleur, là encore je capte pas trop en quoi Arexxx et Lua est mieux que !!!!!!javascript!!!!!!, mais bon, je ne suis pas développeur. Certains controlleurs auront probablement des fonctionnalités impossibles à mapper à la volée (certains jogwheels, potards sans fin cliquables, fonctions secondaires). Et là il faudra bien scripter à la main qque chose, nan ?


Pourquoi Arexx ou Lua c'est mieux ? Ben la première raison immédiate, c'est que :
- c'est natif pour ARexx
- c'est également natif pour Lua

Les deux permettent des actions complètement intégrées dans le système et utilisent très peu de ressource comparativement à !javascript!... Un interpreteur JS embarqué dans SoundBankster, c'est 3 ou 4 Mo de plus... pour un exe de moins de 250Ko. Cherchez l'erreur...

Concernant les controleurs 'compliqués', si ceux ci respectent la norme HID 1.1 de MS, il n'y a aucune raison de se compliquer la vie (normalement). Si le controleur fait nawak (j'en ai vu un qui présentait des boutons simples sous forme de joystick analogique par exemple... en fait, qui présentait tous les boutons sous forme de joystick analogique...), alors là effectivement, du scripting peut être nécessaire...

Ce genre de controleur qui fait n'importe quoi avec la norme HID sont bien évidement à éviter comme la peste...



AU final je sais toujours pas si ton soft permet d'avoir la pré-écoute casque sur une des sorties de ma carte son (sur le powermac, une SB live avec 2 sorties stéréo), et le master sur l'autre ? Ou dans le pire des cas, la pré-écoute sur la sortie son du mac, et le master sur la SB live (ou inversement) ?


Il peut faire la pré écoute sur deux sorties distinctes si AHI est bien configuré...


Concernant la latence, il me semble avoir lu que ça concerne aussi la réactivité du soft (changer les reglages égaliseur, crossfader, etc...) également. Souvent c'est les DJs orienté scratch qui sont particulierement attentifs à ce reglage. Moi j'avoue que comme je peux régler relativement bas, je regle bas sans trop me poser de questions.


Si seulement un scratcheur pouvait faire 50 fois par seconde l'allé retour sur son crossfader... (Pour rappel 50 fois, c'est 20ms de buffer...)

Le petit détail qu'il ne faut pas oublier, c'est plutôt la latence entre je touche le controleur et cela a un effet sur le logiciel. Si le système colle 50ms de latence entre le controleur et le logiciel... avoir un buffer de 5ms n'arrangera rien au problème car il s'écoulera 10 buffers de 5 ms avant que le changement du controleur soit pris en compte dans le logiciel. (Haha la bonne blague).

Encore une fois, le marketing frappe au mauvais endroit.

Le vrai test serait de mesurer le temps entre le moment où j'appuie sur un bouton du controleur et le moment où l'événement est traité par l'application... Cependant, je n'ai aucune idée du temps de traitement nécessaire sur MorphOS. Il faudra que je mesure la chose un de ces jours... car c'est une bonne question !
demether demethericon_post
OK, merci de prendre le temps de répondre en détail une fois de plus ;)

Concernant mon controlleur, par USB il a besoin d'un driver, dispo sous mac et windows. N'existant pas sous linux, je passe simplement par les prises DIN, et là il envoie du message midi "orthodoxe" (si j'en crois la commande -mididebug de Mixxx). Malgré tout, les exotiques jogwheels et potards sans fin cliquables ont du etre scriptés pour fonctionner correctement.

Tiens pour te montrer, voilà mon controller (tout en ferraille, ça pese qques kilos...). L'usb sert juste à alimenter le truc et ses loupiottes, dans ma configuration :

 photo P4180402_zpsca50d8a4.jpg

J'en ai un autre (genre drum machine MPD avec une section mix type studio DAW), lui aussi avec prises USB et DIN, mais lui passe tout ses messages MIDI impecc tout en USB (toujours en vérifiant avec la commande faite pour dans MIXXX).

Si un jour ça devient possible sur ton soft, je testerai volontiers ;) ça sera surement interessant vu que j'aurai les deux cas de (midi via usb et midi via din>carte son) de connections.


Tcheko Tchekoicon_post
Citation : demether 

OK, merci de prendre le temps de répondre en détail une fois de plus ;)

Concernant mon controlleur, par USB il a besoin d'un driver, dispo sous mac et windows. N'existant pas sous linux, je passe simplement par les prises DIN, et là il envoie du message midi "orthodoxe" (si j'en crois la commande -mididebug de Mixxx). Malgré tout, les exotiques jogwheels et potards sans fin cliquables ont du etre scriptés pour fonctionner correctement.

Tiens pour te montrer, voilà mon controller (tout en ferraille, ça pese qques kilos...). L'usb sert juste à alimenter le truc et ses loupiottes, dans ma configuration :

 photo P4180402_zpsca50d8a4.jpg

J'en ai un autre (genre drum machine MPD avec une section mix type studio DAW), lui aussi avec prises USB et DIN, mais lui passe tout ses messages MIDI impecc tout en USB (toujours en vérifiant avec la commande faite pour dans MIXXX).

Si un jour ça devient possible sur ton soft, je testerai volontiers ;) ça sera surement interessant vu que j'aurai les deux cas de (midi via usb et midi via din>carte son) de connections.


Le support du midi... c'est pas encore la fête sur MorphOS... Donc, je promets rien. Mes tests initiaux ne sont pas très encourageant...
demether demethericon_post
Pas de soucis, en tout cas je garderai le projet à l'oeil, et si ya besoin de beta testeurs avec controlleurs midi, je pourrai filer un coup de main ;)