IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Affichage des résultats du sondage: Vous programmez encore en Borland Pascal sous DOS ?

Votants
9. Vous ne pouvez pas participer à ce sondage.
  • Oui

    1 11,11%
  • Non

    4 44,44%
  • Ca m'arrive de temps en temps...

    4 44,44%
  • C'est quoi ça le Pascal ?

    0 0%
Turbo Pascal Discussion :

[TP]Portage d'un encodeur MP3 Fortran en pur Pascal...


Sujet :

Turbo Pascal

  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Octobre 2002
    Messages
    17
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2002
    Messages : 17
    Points : 5
    Points
    5
    Par défaut [TP]Portage d'un encodeur MP3 Fortran en pur Pascal...
    Bonjour à tous,

    Je travaille sur le portage d'un encodeur MP3, Uzura (c'est japonais), codé en Fortran-90 en pure Pascal. Uzura est en faite une adaptation - pas très fidèle - de l'encodeur MP3 Shine, codé initialement en C. Par rapport à Shine, Uzura intégre quelques innovations qui m'interessent, notamment au niveau du modèle psychoacoustique utilisé...
    Le Pascal et le Fortran étant très "proches" sur bien des aspects, j'ai trouvé un petit convertisseur DOS permettant de transformer du Fortran-77 en C/C++ ou en (Turbo) Pascal. Celui-ci fonctionne plutôt bien, bien qu'il soit très dur à trouver sur la toile...
    Je recherche actuellement un convertisseur Fortran-90 vers Fortran-77 pour finir ma conversion. Les convertisseurs Fortran-77 vers Fortran-90 sont pourtant légions sur le Net, bien que je n'arrive pas à trouver l'inverse. Si vous aviez une idée (une piste à suivre), ça m'arrangereait bien...à moins que quelqu'un sache ou trouver directement un convertisseur Fortran-90 en Pascal...

    Autre solution : l'encodeur MP3 Lame intégre une librairie codé en NASM (assembleur) qui pourrait faire un peu la même chose qu'avec Uzura, la version Fortran de l'encodeur Shine. (sans le petit plus : le modèle psycho-acoustique "original") Si vous aviez une idée pour intégrer l'appel de cette librairie directement en Pascal, ça serait également pas mal...

    Dernier point : l'ensemble doit pouvoir tourner sous DOS 16 bits, et l'idée principal est surtout de pouvoir utiliser le modèle psycho acoustique "original" (j'insiste) utilisé par le portage fortran de l'encodeur Shine avec d'autres format de compression... disons, plus libre que le MP3. (à vrai dire, je travaille sur mon propre format de compression, ayant les mêmes caractéristiques que le MP3 et utilisant essentiellement des technologies/algorithmes libre de droit, afin d'éviter les problèmes liés au dépôt de brevet -- et pour cela, je ne peux pas utiliser l'Ogg Vorbis pour bien des raisons qui seraient ici trop longues à expliquer)

    Merci d'avance pour vos réponses,
    Christophe Fantoni
    Auteur de "Comment créer vos propres DVD"
    et de "L'Enregistrement numérique sur CD et DVD"
    deux livres édités par Dixit : www.dixit.fr

  2. #2
    Rédacteur/Modérateur
    Avatar de M.Dlb
    Inscrit en
    Avril 2002
    Messages
    2 464
    Détails du profil
    Informations personnelles :
    Âge : 39

    Informations forums :
    Inscription : Avril 2002
    Messages : 2 464
    Points : 4 311
    Points
    4 311
    Par défaut
    Bon ben bonne chance !!
    Je sais qu'on peut inclure du code assembleur venant de Tasm, mais je ne sais rien au sujet de Nasm ( même si ça doit être possible d'intégrer du code Nasm dans TP ). Par contre, il faut passer par les fichiers .obj, ou sinon faire un copier/coller du code directement dans TP...
    a+
    M.Dlb - Modérateur z/OS - Rédacteur et Modérateur Pascal

  3. #3
    Futur Membre du Club
    Profil pro
    Inscrit en
    Octobre 2002
    Messages
    17
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2002
    Messages : 17
    Points : 5
    Points
    5
    Par défaut En effet, pas si simple...
    Bonjour,

    Il est vrai que si la démarche avait été facile, je n'aurais rien posté ici... J'aurais pu me débrouiller seul. J'ai pourtant l'habitude d'inclure du code BASM (Assembleur inline) dans mes propres productions mais l'intégration de code assembleur en NASM... je ne l'ai jamais fait...

    Il ne faut pas oublier qu'il s'agit ici de ma seconde solution et que je préférerais avant tout porter le code Fortran-90 directement en Pascal. Pour ceux que ça interesse, voici l'url du site japonais (c'est en anglais) traitant de l'encodeur UZURA :
    http://members.tripod.co.jp/kitaurawa/index.html

    Sur le site, il y a d'ailleurs quelques infos sur le modèle psycho-acoustique utilisé...

    J'attends de vos nouvelles avec impatience,

    Cordialement,
    Christophe Fantoni
    Auteur de "Comment créer vos propres DVD"
    et de "L'Enregistrement numérique sur CD et DVD"
    deux livres édités par Dixit : www.dixit.fr

  4. #4
    Rédacteur/Modérateur
    Avatar de M.Dlb
    Inscrit en
    Avril 2002
    Messages
    2 464
    Détails du profil
    Informations personnelles :
    Âge : 39

    Informations forums :
    Inscription : Avril 2002
    Messages : 2 464
    Points : 4 311
    Points
    4 311
    Par défaut
    Et pourquoi ne pas directement traduire à la main le fortran ??
    Si tu dis que ça ressemble au pascal, ça doit pas être très compliqué
    a+
    M.Dlb - Modérateur z/OS - Rédacteur et Modérateur Pascal

  5. #5
    Futur Membre du Club
    Profil pro
    Inscrit en
    Octobre 2002
    Messages
    17
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2002
    Messages : 17
    Points : 5
    Points
    5
    Par défaut Explications
    Bonjour,

    A vrai dire, je ne connais pas bien le Fortran-77/90. Ce que j'ai dit dans mon post précédent, c'est ce que j'ai pu lire dans la doc. du convertisseur ou ce que j'ai pu lire au sein même du code. Il y a en effet des similitudes, mais sans plus... d'ou l'aide recherchée...

    Merci d'avance,
    Christophe Fantoni
    Auteur de "Comment créer vos propres DVD"
    et de "L'Enregistrement numérique sur CD et DVD"
    deux livres édités par Dixit : www.dixit.fr

  6. #6
    Rédacteur/Modérateur
    Avatar de M.Dlb
    Inscrit en
    Avril 2002
    Messages
    2 464
    Détails du profil
    Informations personnelles :
    Âge : 39

    Informations forums :
    Inscription : Avril 2002
    Messages : 2 464
    Points : 4 311
    Points
    4 311
    Par défaut
    Voilà en quelques clics de souris, j'ai trouvé un tutoriel chez jussieu :
    http://ibm4.cicrp.jussieu.fr/phynum/cours/fortran/introProg_fortran.html

    Il existe également un pseudo forum sur developpez.com : http://www.developpez.net/forums/viewforum.php?f=17

    Je ne suis pas sûr que ça t'aidera, mais bonne chance !!
    a+
    M.Dlb - Modérateur z/OS - Rédacteur et Modérateur Pascal

  7. #7
    Futur Membre du Club
    Profil pro
    Inscrit en
    Octobre 2002
    Messages
    17
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2002
    Messages : 17
    Points : 5
    Points
    5
    Par défaut Du mieux ?... peut être...
    Re-bonjour,

    A la base, je n'avais pas l'intention d'apprendre le Fortran-90, mais je crois que je devoir passer par là si je veux comprendre comment fonctionne le modèle psychoacoustique (répondant au nom d' "Enoken") qui m'interesse. Le Pascal et le Fortran étant relativement proche, j'espère que ça ira vite... Pour moi, ça sera surement plus facile que de me mettre au C/C++...

    Je vais également me mettre à chercher d'autres tutorials car celui proposé par Jussieu est assez "léger" (ce n'est qu'une introduction au Fortran)
    Pendant que j'y suis, je chercher un compilateur libre de droit permettant de compiler du Fortran-90. Je sais qu'il existe sous Linux, mais je n'ai rien trouvé pour Windows, mis à part des versions commerciales proposé par Microsoft ou Compaq...

    Cordialement,
    Christophe Fantoni
    Auteur de "Comment créer vos propres DVD"
    et de "L'Enregistrement numérique sur CD et DVD"
    deux livres édités par Dixit : www.dixit.fr

  8. #8
    Rédacteur/Modérateur
    Avatar de M.Dlb
    Inscrit en
    Avril 2002
    Messages
    2 464
    Détails du profil
    Informations personnelles :
    Âge : 39

    Informations forums :
    Inscription : Avril 2002
    Messages : 2 464
    Points : 4 311
    Points
    4 311
    Par défaut
    J'en ai trouvé quelques-uns ici : ftp://ftp.swcp.com/pub/walt/F
    Je ne suis pas sûr qu'ils marchent tous...
    a+
    M.Dlb - Modérateur z/OS - Rédacteur et Modérateur Pascal

  9. #9
    Membre expert
    Avatar de Eric Sigoillot
    Inscrit en
    Mars 2002
    Messages
    1 212
    Détails du profil
    Informations personnelles :
    Âge : 39

    Informations forums :
    Inscription : Mars 2002
    Messages : 1 212
    Points : 3 369
    Points
    3 369
    Par défaut
    Que tu n'arrives pas à trouver un convertisseur Fortran-90 vers Fortran-77 ne m'étonne pas des masses.

    Car voilà quelques "lacunes" du Fortran-77 :

    Fortran does not have records, pointers, user-defined types, scalar types, subintervals, but it has COMPLEX and DOUBLE PRECISION

    Fortran 77 does not have WHILE and REPEAT

    A bad CASE in Fortran 77. Fortran 77 is not able to nest functions and subroutines and does not permit recursive calls
    Ca limite sérieusement.

    NASM propose de compiler en 16 bits. Donc, normalement, il ne devrait pas y avoir trop de problèmes. Tout ce qu'il te faut, c'est obtenir un fichier OBJ au format Intel. Et ça, je ne sais pas si NASM le permet. Car il doit effectuer un LINK tout seul, sans rien demander !

    Mais il faut aussi que le code assembleur soit du code Dos 16 bits...

    Mais généralement, il est difficile de trouver un convertisseur correct. Rares sont les langages qui ont la même "philosophie". Alors à défaut du convertisseur Fortran90->Pascal (sui sait), essaie de voir s'il existe un C->Pascal (...).

    Mais la solution la plus sûre reste d'apprendre le langage, même si ce n'est pas forcément un plaisir.

    A+
    Règles du forum
    F.A.Q Pascal

    Pour me joindre (aucune question technique, merci)

  10. #10
    Rédacteur/Modérateur
    Avatar de M.Dlb
    Inscrit en
    Avril 2002
    Messages
    2 464
    Détails du profil
    Informations personnelles :
    Âge : 39

    Informations forums :
    Inscription : Avril 2002
    Messages : 2 464
    Points : 4 311
    Points
    4 311
    Par défaut
    Oula, Fortran 77 a rien du tout, oui !!!!! Pour information, la norme actuelle est le Fortran 95 qui a été adoptée en 1997 ( allez comprendre... )
    a+
    M.Dlb - Modérateur z/OS - Rédacteur et Modérateur Pascal

  11. #11
    Futur Membre du Club
    Profil pro
    Inscrit en
    Octobre 2002
    Messages
    17
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2002
    Messages : 17
    Points : 5
    Points
    5
    Par défaut Pas de chance...
    Bonsoir,

    Et merci à tous pour vos réponses. Avant d'aller plus loin dans mes recherches, j'ai voulu compiler aujourd'hui ces sources pour voir de quoi cet encodeur MP3, codé en Fortan, était capable... et là, problème : en effet, les sources proposées par l'auteur du compresseur MP3 Uzura ne sont pas complètes. Je ne peux donc pas créer l'executable (rien n'est indiqué à ce sujet sur le site de l'auteur). A mon avis, soit l'auteur a oublié de mettre certaines sources dans l'archive, soit les sources sont dispo uniquement pour que les "programmeurs en herbe" puissent avoir une idée de la manière de créer un compresseur MP3 en Fortran.
    J'ai essayé de contacter son auteur pour le prévenir et visiblement son adresse e-mail n'est plus valide. Bref, je me retrouve un peu dans une impasse. La journée avait pourtant bien commencé puisque je m'étais mis à étudier le Fortran-95 dont la syntaxe est très proche du Pascal. Quelques jours, voire quelques semaines, auraient été amplement suffisant pour que je porte moi-même ce compresseur MP3 directement en Pascal...
    Pour l'instant, je cherche donc une solution... sans grand espoir de voir mon idée aboutir. J'ai bien une autre source en C/C++ qui pourrait me permettre d'avancer (un modèle pesychoacoustique similaire), mais le code n'est vraiment pas "propre", pour ne pas dire illisible. (dixit des "spécialistes") Et comme je ne suis pas vraiment un pro du C/C++... A ce rythme là, d'ici quelques mois je serais aussi bon en Pascal, qu'en Fortran, C/C++, Ada, etc... tout ça pour avoir voulu adapté un petit algorithme, d'un langage à un autre...

    Salutations,
    Christophe Fantoni
    Auteur de "Comment créer vos propres DVD"
    et de "L'Enregistrement numérique sur CD et DVD"
    deux livres édités par Dixit : www.dixit.fr

  12. #12
    Rédacteur/Modérateur
    Avatar de M.Dlb
    Inscrit en
    Avril 2002
    Messages
    2 464
    Détails du profil
    Informations personnelles :
    Âge : 39

    Informations forums :
    Inscription : Avril 2002
    Messages : 2 464
    Points : 4 311
    Points
    4 311
    Par défaut
    Mais si le modèle psychoacoustique est inclu dans la source Fortran que tu possède, il suffit juste de la traduire, et pas besoin de tout recompiler...
    a+
    M.Dlb - Modérateur z/OS - Rédacteur et Modérateur Pascal

Discussions similaires

  1. encodeur wave -> mp3
    Par flo314 dans le forum Traitement du signal
    Réponses: 1
    Dernier message: 15/12/2009, 23h19
  2. Options de l'encodeur MP3 Lame
    Par 84mickael dans le forum Audio
    Réponses: 1
    Dernier message: 12/07/2008, 14h56
  3. Encodeur MP3 : réglage de lame_enc.dll
    Par Paradeyes dans le forum VB 6 et antérieur
    Réponses: 2
    Dernier message: 06/05/2008, 13h35
  4. cherche encodeur cd->mp3
    Par 123quatre dans le forum Audio
    Réponses: 10
    Dernier message: 20/07/2007, 16h34
  5. Portage Digital Fortran à Intel Fortran
    Par galak63 dans le forum Fortran
    Réponses: 2
    Dernier message: 28/02/2007, 08h47

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo