Jukebox en Java

Posté par  (site web personnel) . Modéré par Nÿco.
Étiquettes :
0
3
avr.
2004
Java
Jajuk (Just Another Jukebox | Java Jukebox) est un jukebox MP3 ( bientot Ogg Vorbis ) en Java pouvant résoudre vos problèmes de gestion de collections.

Quelques fonctionnalités :
Interface eclipse-like ( perspectives et vues ), navigation physique ou logique, gestion des couvertures, statistiques sur la collection, vision déconnectée des supports (on peut "voir" tous ses CDs par exemple),

De plus JaJuk "apprend" vos morceaux préférés et propose une fonction best-of.

Au niveau des performances, Jajuk démarre en 10s pour une collection de 140 Go.

NdM : C'est un logiciel libre sous licence GPL, mais fonctionnant sur une JVM non-libre. La version 0.1.3 vient de sortir et plusieurs langues sont à venir : allemand, espagnol et catalan.

Si vous êtes intéressé, allez voir : http://jajuk.sourceforge.net

Nous cherchons également des développeurs Java/Swing expérimentés ( voir la
roadmap sur le site), des traducteurs et des documentalistes.

Merci de reporter les bugs si vous l'utilisez.

Aller plus loin

  • # Re: Jukebox en Java

    Posté par  . Évalué à 6.

    Est-ce que cela tourne sur une machine virtuelle libre, ou ce logiciel est-il dépendant du J2SE propriétaire (Blackdown, Sun ...) ? Aparamment le site ne conseille que le J2SE Sun.
    Je ne vous cacherais pas que c'est toujours ce qui me gène avec les projets libres en Java.
    • [^] # Re: Jukebox en Java

      Posté par  (site web personnel) . Évalué à 2.

      Tiens, d'ailleurs je voulais connaitre quel était la différence entre la JVM de sun, de balckdown ou d'ibm. J'ai cherché un peu mais je trouve pas vraiment de réponse.
      Si quelqu'un a une info ou un lien qui donne des explication, ca serait très gentil.
      • [^] # Re: Jukebox en Java

        Posté par  . Évalué à 1.

        la diffrerence, c'est que les personnes qui compilent les JVM sont pas les mêmes...
        pour avoir le droit de créer sa propre JVM, il faut demander la permission a SUN de le faire et il faut la valider à chaque modification.
        la validation d'une JVM sert uniquement à certifié (^_^) que la JVM produit du code qui exécute la même chose que ce que les spécifications de Java disent...donc une JVM certifiée pour Java 1.3, de chez Sun, IBM, Blackdown ou toto, exécutera de la même façon du code Java...
        pour l'histoire, si SUN a attaqué M$, c'est justement parce que la JVM de M$ etait plus permissive (ie que ca respectait les spécifs de Java comme IE gère les spécif de XHTML+CSS 2.1) que le standard ne l'autorisait...
    • [^] # Re: Jukebox en Java

      Posté par  (site web personnel) . Évalué à 2.

      Je n'ai testé que sous la JVM 1.4.2 de Sun. En ce qui concerne une JVM libre ( kaffee par exemple ), à ma connaissance aucune ne supporte le Java 1.4. Quand à blackdown, c'est une adaptation Gnu/Linux de la JVM de sun qui n'est pas libre. J'espere que Sun se decidera bientôt à passer sa JVM en GPL pour profiter des avantages du libre...
  • # Re: Jukebox en Java

    Posté par  . Évalué à 2.

    j'ai decouvers ce programme lors de la version 0.1 et je conseille c'est vraiment tres bien fait et tres pratique:) on peu ecouter les mp3 avec et le dev a plein de projet pour la suite de Jajuk ce qui donne a esperer le meilleur :)
  • # Re: Jukebox en Java

    Posté par  (site web personnel) . Évalué à 4.

    Salut à tous,
    j'en profite pour vous faire connaitre un projet du même style auquel j'ai contribué. Ca s'appelle Jinzora ( http://www.jinzora.org(...) ), c'est un script PHP qui permet de gerer votre collection de mp3, de les streamer avec apache, de faire un jukebox pilotable à distanec (ou non), il sait aussi streamer des flux vidéos et aussi downsampler avec un serveur shoutcast. La version 1.0 doit sortir d'ici quelques semaines.

    C'est très enthousiaste, on travaille avec nos petites connaisances de chacun. Je vous encourage à l'utiliser, et pourquoi pas l'améliorer.
  • # Re: Jukebox en Java

    Posté par  . Évalué à 3.

    À vu de screenshots et de la liste des features, ça à l'air vraiment bien. Et puis y'a des trucs qui font cruellement défaut dans Rhythmbox, notament le support des disques démontés (dans RB, il efface comme un grand la partie de la base qui vient du disque absent, ce qui est assez exaspérant quand on est comme moi avec un petit giga sur le disque dur de la machine et les soixantes autres sur un disque externe...). Bon par contre c'est clair que la limitation au format mp3 elle fait mal, enfin vivement le ogg quoi.

    Et sinon, la question à laquelle tu devais t'attendre, mais le décodage du mp3 il est codé tout en pur java ou bien il utilise du code natif ? J'demande hein, c'est pas un troll, moi j'y crois que le java ça râme pas forcement.
    • [^] # Re: Jukebox en Java

      Posté par  (site web personnel) . Évalué à 0.

      Voir les dépendances, le player s'appelle Javalayer et il est 100% pur Java et ne consomme pas plus de CPU ou de mémoire que du natif ( http://www.javazoom.net/javalayer/javalayer.html(...) ). Ce sera pareil pour le Ogg avec l'API VorbisSPI du même groupe.
      En fait, j'utilise quand même du natif dans Jajuk pour le Systray via l'API Systray4j.
      • [^] # Re: Jukebox en Java

        Posté par  . Évalué à 2.

        >ne consomme pas plus de CPU ou de mémoire que du natif
        Ca reste à prouver, d'aprés le fichier README.txt
        - How much memory/CPU JavaLayer needs to run ?
        Here are our benchmark notes :
        - Heap use range : 1380KB to 1900KB - 370 classes loaded.
        - Footprint : ~8MB under WinNT4/Win2K + J2SE 1.3 (Hotspot).
        ~10MB under WinNT4/Win2K + J2SE 1.4.1 (Hotspot).
        - CPU usage : ~12% under PIII 800Mhz/WinNT4+J2SE 1.3 (Hotspot).
        ~8% under PIII 1Ghz/Win2K+J2SE 1.3.1 (Hotspot).
        ~12% under PIII 1Ghz/Win2K+J2SE 1.4.1 (Hotspot).

        Chez moi, c'est plutot ~50% du CPU et ~19Mo de ram pour JavaLayer
        et ~4% de CPU et ~3-4Mo de ram pour mpg123 ou plutôt mpg321
        sur mon PII 350MHz
    • [^] # Re: Jukebox en Java

      Posté par  . Évalué à 2.

      oui, c'est graphiquement très beau (particulièrement le thème liquid) ! Belle démonstration d'utilisation de Swing !

      plus que le support du Ogg Vorbis et je l'adopte !
      • [^] # Re: Jukebox en Java

        Posté par  . Évalué à 0.

        Belle démonstration d'utilisation de Swing !

        public class JajukTable extends JTable {

        /** Table sorter*/
        TableSorter ts;

        /**
        * Constructor
        * @param model : model to use
        * @param bSortable : is this table sortable
        * */
        public JajukTable(TableModel model,boolean bSortable) {
        super(new TableSorter(model));
        if ( bSortable ){
        ts = (TableSorter)getModel();
        ts.addMouseListenerToHeaderInTable(this);
        }
        }

        /**
        * Constructor
        * @param model : model to use
        */
        public JajukTable(TableModel model) {
        this(model,true);
        }


        /**
        * add tooltips to each cell
        */
        public Component prepareRenderer(TableCellRenderer renderer,
        int rowIndex, int vColIndex) {
        Component c = super.prepareRenderer(renderer, rowIndex, vColIndex);
        if (c instanceof JComponent) {
        JComponent jc = (JComponent)c;
        Object o = getValueAt(rowIndex, vColIndex);
        String s =""; //$NON-NLS-1$
        if ( !(o instanceof String) ){
        if ( o instanceof Long){
        s = o.toString();
        }
        }
        else{
        s = (String)o;
        }
        jc.setToolTipText(s);
        }
        return c;
        }

        /**
        * @return Returns the sorting model.
        */
        public TableSorter getSortingModel() {
        return ts;
        }

        }

        c'est pas précisément ce que j'aurais dit !
        http://java.sun.com/j2se/1.4.2/docs/api/javax/swing/JComponent.html(...))
        • [^] # Re: Jukebox en Java

          Posté par  (site web personnel) . Évalué à 1.

          Effectivement, je ne suis pas un grand gourou de Swing. Merci d'expliciter ton commentaire pour que je fasse les modifs nécessaires.
          • [^] # Re: Jukebox en Java

            Posté par  . Évalué à 1.

            il faut réécrire
            public String getToolTipText(MouseEvent e)

            comme dans la fin de :
            http://java.sun.com/docs/books/tutorial/uiswing/components/table.ht(...)
            les tooltips sont majoritairement non utilisés, il est donc plus fin de les calculer à la demande.


            De même il est inutile et dangereux de sousclasser les composants swing, il sont bien souvent non prévus pour et la plupart du temps ce n'est pas nécessaire (comme par hasard, le cas au-dessus est un contre-exemple).

            http://cvs.sourceforge.net/viewcvs.py/jajuk/jajuk/src/org/jajuk/ui/(...)
            là je vois un empilage inutile de JPanel alors que GridBagLayout est fait pour ça.
            (c'est ce genre de choses qui rend swing lent)

            http://cvs.sourceforge.net/viewcvs.py/jajuk/jajuk/src/org/jajuk/ui/(...)
            là, je vois des tailles en Pixels.

            Je m'arrête là car actuellement, je suis en train de regarder un autre projet (lucane pour ceux qui connaissent), si ça t'intéresse, je regarderais le tiens après.

            Mais une chose est sûre : swing est long a maîtriser, il ne faut pas hésiter a aller voir le code de Sun pour bien comprendre l'architecture et le code qu'on trouve sur le net est en général fait par des débutants qui font souvent les mêmes erreurs.
  • # Re: Jukebox en Java

    Posté par  . Évalué à 2.

    Très sympa et en + codé en SWING !
    Le seul truc qui m'empêche de l'utiliser c'est le contrôle du volume. Il n'a jamais le même comportement sur mon PC. Des fois il est très sensible et le son sature , des fois quand j'arrive au max le son est de bonne qualité et juste + fort. Par contre je n'ai pas de "sautes" de son comme le GUI JlGui de Javalayer qui arrivent, je pense, quand le GC se met en oeuvre.

    Bravo en tout cas, très pro le projet ( site Maven + docs pour les devs)
  • # Re: Jukebox en Java

    Posté par  . Évalué à 1.

    Bon, je vais sans doute me faire frapper et traiter d'hérétique puant vendu aux sirènes méphitiques d'un capitalisme sans scrupules, mais pour faire du Swing *relativement* propre et surtout avec beaucoup de facilité, il y a un outil EXCELLENT :

    http://www.borland.com/jbuilder/foundation/index.html(...)

    Oui c'est gratuit...

    Ce qui m'a faire fondre de plaisir, c'est la capacité de dessiner les interfaces swing à la souris et de voir le code se générer au fur et à mesure... C'est très bien fait. Une boite de dialogue "chargée" ne me prend pas plus d'une heure à être réalisée. En outre, les tutoriaux sont vraiment faciles à lire et intéressants.
    • [^] # Re: Jukebox en Java

      Posté par  . Évalué à 1.

      tu vas effectivement te faire détruire : c'est l'outil qui a la plus mauvaise réputation en java. Celui qui a la meilleur est IDEA, je l'ai pas testé longtemps, vu le prix, je veux pas devenir accro ; mais le peu que j'ai vu m'a séduit.

Suivre le flux des commentaires

Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.