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

Langage PHP Discussion :

Format WAV/PCM,long 4 octets et masques PHP


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    8
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 8
    Par défaut Format WAV/PCM,long 4 octets et masques PHP
    Bonjour,

    Je suis sur la conception d'une image robot version vocal, pour cela j'ai desider que dans un premier temps le faire sur un format simple: le wav/pcm en 8 bits mono.

    Je doit creer d'abord l'entete du fichier, je doit introduire des long (non signé ?) de 4 octets.

    J'ai donc desider d'utiliser les masques et les traveaux sur les bits.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    <?php
    ...
    $a = 166;
    $a <<= 4;
    fwrite($a ...);
    ...
    ?>
    Le probleme est que cela ne me donne pas "166" sur : (ceci est la version en langage C pour la lecture du fichier)

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    unsigned long int taille; fread(&taille,1,4,fichier);
    printf("Taille: %lu\n",taille);
    j'ai beau essaye : $a = 166 | 4; $a <<= 4; c'est pas du tout sa.

    Il nya aucun probleme sur la taille, je recupert bien un long, mais ce n'est pas du TOUT 166, mais plus des betises du genre: 825635122.


    Esque quelqu'un saurais comment faire pour stoquer 166 sur un long 4 octets dans le but de l'introduire dans un fichier grace a fwrite() ?


    merci d'avance.

  2. #2
    Expert confirmé Avatar de Mr N.
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    5 418
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 5 418
    Par défaut
    L'ordre des bits dépendant de la machine. Si tu veux du big endian : 'N', et little endian : 'V'

    Hope This Helps

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    8
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 8
    Par défaut
    Merci beaucoup, j'ai fait-y commancer a m'aracher les cheveux poil/poil (sa fait moin mal a ce qu'ont dit).

  4. #4
    Expert confirmé Avatar de Mr N.
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    5 418
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 5 418
    Par défaut
    Citation Envoyé par juki
    (sa fait moin mal a ce qu'ont dit).
    Ce ne sont que des rumeurs...

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Supprimer octet 0x01 avec PHP
    Par pmejob dans le forum Langage
    Réponses: 5
    Dernier message: 05/11/2013, 16h21
  2. audio avec format wav.(taille trés grande)
    Par mvc_dev dans le forum Silverlight
    Réponses: 0
    Dernier message: 05/04/2011, 15h38
  3. Convertir format MP3 au format WAV
    Par sivaller dans le forum Débuter
    Réponses: 4
    Dernier message: 13/02/2009, 07h17
  4. formater un nombre en javascript comme number_format en php
    Par calitom dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 16/01/2007, 16h24
  5. Comment convertir du TTS en format WAV ?
    Par PierreT dans le forum API, COM et SDKs
    Réponses: 4
    Dernier message: 12/06/2005, 22h28

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