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

 Delphi Discussion :

Jouer un son à une certaine position pendant X secondes


Sujet :

Delphi

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

    Informations forums :
    Inscription : Janvier 2006
    Messages : 68
    Points : 56
    Points
    56
    Par défaut Jouer un son à une certaine position pendant X secondes
    Re Bonjour

    J'ai un son qui dur 3mn20 :
    Serait-il possible de jouer seulement une partie de ce son, c'est à dire commencer à jouer le son à partir de la position 1mn07 jusqu'a la position 1mn15, puis de 1mn50 à 1mn 55 et enfin de 2mn10 a 2mn16 par exemple svp ?
    (PS : je débute et ne sait pas trop utiliser les composants)

    Merci pour tout

  2. #2
    Membre émérite Avatar de edam
    Homme Profil pro
    Développeur Delphi/c++/Omnis
    Inscrit en
    Décembre 2003
    Messages
    1 894
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Développeur Delphi/c++/Omnis
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Décembre 2003
    Messages : 1 894
    Points : 2 771
    Points
    2 771
    Par défaut
    voir le site de sub0, peut être que tu trouve ce que tu veux, sinon, attend qu'il passe il surmenet te donner une coup de main
    PAS DE DESTIN, C'EST CE QUE NOUS FAISONS

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

    Informations forums :
    Inscription : Janvier 2006
    Messages : 68
    Points : 56
    Points
    56
    Par défaut
    Oula !!!!!!!
    Super le "Enregistrement - Oscilloscope (sources)" !!!

    Je cherche ça depuis super longtemps : c'est trop cool
    Merci pour le lien : c'est un sacré coup de hasard mais ça tombe super bien.

    Je regarde les autre sources pour apprendre/comprendre la manipulation des wav.
    Merci
    (Et surtout Merci Sub0)


    Edito :
    J'en suis ici :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    unit Unit4;
     
    interface
     
    uses
      Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
      Dialogs, ComCtrls, StdCtrls, MPlayer, Menus, XPMan, ExtCtrls;
     
    type
      TForm4 = class(TForm)
        OpenDialog1: TOpenDialog;
        MediaPlayer1: TMediaPlayer;
        Button1: TButton;
        Label1: TLabel;
        TrackBar1: TTrackBar;
        procedure TrackBar1Change(Sender: TObject);
        procedure FormDestroy(Sender: TObject);
        procedure Button1Click(Sender: TObject);
      private
        { Déclarations privées }
      public
        { Déclarations publiques }
      end;
     
    var
      Form4: TForm4;
     
    implementation
     
    {$R *.dfm}
     
    procedure TForm4.Button1Click(Sender: TObject);
    var p,k,n,i:integer;
    begin
    OpenDialog1.Execute;
    MediaPlayer1.Close;
    label1.Caption:=extractfilename(OpenDialog1.FileName) ;
    MediaPlayer1.FileName:=label1.Caption;
    MediaPlayer1.Open;
    MediaPlayer1.Stop;
    MediaPlayer1.Play;
    end;
     
    procedure TForm4.FormDestroy(Sender: TObject);
    begin
    MediaPlayer1.Close;
    end;
     
    procedure TForm4.TrackBar1Change(Sender: TObject);
    begin
    MediaPlayer1.Position:=TrackBar1.Position;
    end;
     
    end.
    Mais la position ne ce fixe pas à ma Trackbarre...

  4. #4
    Inactif
    Inscrit en
    Février 2007
    Messages
    46
    Détails du profil
    Informations forums :
    Inscription : Février 2007
    Messages : 46
    Points : 46
    Points
    46
    Par défaut Une idée pour mieux l'éxploité.. peut être!?
    Mais la position ne ce fixe pas à ma Trackbarre...
    Essaye plutôt ça..

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    unit Unit4;
     
    interface
     
    uses
      Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
      Dialogs, ComCtrls, StdCtrls, MPlayer, Menus, XPMan, ExtCtrls;
     
    type
      TForm4 = class(TForm)
        OpenDialog1: TOpenDialog;
        MediaPlayer1: TMediaPlayer;
        Button1: TButton;
        Label1: TLabel;
        TrackBar1: TTrackBar;
        procedure TrackBar1Change(Sender: TObject);
        procedure FormDestroy(Sender: TObject);
        procedure Button1Click(Sender: TObject);
      private
        { Déclarations privées }
      public
        { Déclarations publiques }
      end;
     
    var
      Form4: TForm4;
     
    implementation
     
    {$R *.dfm}
     
    procedure TForm4.Button1Click(Sender: TObject);
    var p,k,n,i:integer;
    begin
    MediaPlayer1.Close;
    OpenDialog1.Execute;
    label1.Caption:=extractfilename(OpenDialog1.FileName) ;
    MediaPlayer1.FileName:=label1.Caption;
    MediaPlayer1.Open;
    //-> Ajouter ceci ,
    TrackBar1.Max:=MediaPlayer1.Length;
    TrackBar1.Position:=0;
    //----------------------------------
    MediaPlayer1.Play;
    end;
     
    procedure TForm4.FormDestroy(Sender: TObject);
    begin
    MediaPlayer1.Close;
    end;
     
    procedure TForm4.TrackBar1Change(Sender: TObject);
    begin
    //-> Ajouter ceci ,
    MediaPlayer1.Pause;
    MediaPlayer1.Position:=TrackBar1.Position;
    MediaPlayer1.Play;
    //---------------------------------------
    end;
     
    end.
    Si vous voulez dire par
    Mais la position ne ce fixe pas à ma Trackbarre...
    que la position "TrackBar1" doit reflété la position
    actuelle du fichier actuel entrain d'être lu, ceci implique que vous devez ajouter un instance sur votre forme de l'objet "TTimer" présent sur la pallette "System" et écrire dans l'évennement "OnTimer" ceci:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    TrackBar1.Position:=MediaPlayer1.Position;
    mais à noter que vous pouviez modifier le temps d'exécution de "OnTimer"
    par la propriété "Interval" en milisecondes.

    Attention;
    Vous devez désactivez "OnTimer" de cet objet par la propriété "Enabled" quand vous ouvrirez/fermer un fichier.
    Ex:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
     
    procedure TForm4.Button1Click(Sender: TObject);
    var p,k,n,i:integer;
    begin
    TTimer1.Enabled:=False;
    MediaPlayer1.Close;
    OpenDialog1.Execute;
    label1.Caption:=extractfilename(OpenDialog1.FileName) ;
    MediaPlayer1.FileName:=label1.Caption;
    MediaPlayer1.Open;
    //-> Ajouter ceci ,
    TrackBar1.Max:=MediaPlayer1.Length;
    TrackBar1.Position:=0;
    //----------------------------------
    MediaPlayer1.Play;
    TTimer1.Enabled:=True;
    end;
     
    //et
    procedure TForm4.FormDestroy(Sender: TObject);
    begin
    TTimer1.Enabled:=False;
    MediaPlayer1.Close;
    end;
    a+
    N'oublie pas ,
    au lieu de faire ou
    et efin !! sinon, en reste toujours ..

  5. #5
    Expert confirmé
    Avatar de Sub0
    Homme Profil pro
    Développeur Web
    Inscrit en
    Décembre 2002
    Messages
    3 573
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Décembre 2002
    Messages : 3 573
    Points : 4 219
    Points
    4 219
    Par défaut
    Salut!

    J'ai ceci aussi, peut-être que ça correspond plus à ce que tu recherches...
    De retour parmis vous après 10 ans!!

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

Discussions similaires

  1. Valeur d'un chiffre à une certaine position
    Par leblma dans le forum VB 6 et antérieur
    Réponses: 4
    Dernier message: 19/05/2011, 15h50
  2. Lire un fichier à partir d'une certaine position
    Par GreatDeveloperOnizuka dans le forum C#
    Réponses: 1
    Dernier message: 16/06/2009, 16h48
  3. Réponses: 1
    Dernier message: 03/07/2007, 09h43
  4. démarrer un mp3 à une certaine position ?
    Par gregcat dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 06/11/2006, 14h12
  5. Réponses: 13
    Dernier message: 21/06/2006, 19h36

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