AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Projekte Joysound: Sounds abspielen per Joypad
Thema durchsuchen
Ansicht
Themen-Optionen

Joysound: Sounds abspielen per Joypad

Ein Thema von PhilmacFLy · begonnen am 2. Dez 2008 · letzter Beitrag vom 4. Dez 2008
Antwort Antwort
Benutzerbild von PhilmacFLy
PhilmacFLy
Registriert seit: 20. Jan 2008
Beschreibung:
Ein Programm welches Sounddatein per Knopfdruck (bis zu 12 Buttons) bzw. Achsenbewegung (bis zu 4 Achsen) abspielt, und wenn man loslässt wieder stopt abzuspielen. Desweiteren Lassen sich Sound Templates im Ordner Sound erstellen. Auch kann man für die einzelen Buttons bzw. Achsen eine Beschreibung speichern. Welche dann als ini Datei in den Template ordner mit abgelegt werden. Der Soudn wird automatisch am ende wiederholt (Auto Loop)
Was ist zu beachten?
Ihr solltet aufjedenfall ein Gamepad besitzen. Des weiteren solltet ihr vor start des Programms einen Ordner im Sounds Ordner erstellen da ihr sonst eine Zugriffsverletzung bekommt.
Außerdem hab ich das Programm nur auf XP getestet.
Soundbelegung
Button bzw Achse --> mp3 file
X > 900 --> 1.mp3
Y > 900 --> 2.mp3
X < -900 --> 3.mp3
Y < -900 --> 4.mp3
Z > 900 --> 5.mp3
R > 900 --> 6.mp3
Z < -900 --> 7.mp3
R < -900 --> 8.mp3
Button 0 --> 9.mp3
...
Button 11 --> 20.mp3
Hinweis
Für alle Leute die sich den Code anschaun bitte lüncht mich nicht für die vielen timer. Mir ist erst zum Schluss eingefallen das ich das auch anders hätte lösen können.
Miniaturansicht angehängter Grafiken
joysound_436.png  
Angehängte Dateien
Dateityp: rar joysound_541.rar (289,1 KB, 7x aufgerufen)
Dateityp: rar joysound___code_138.rar (792,3 KB, 12x aufgerufen)
"Programmiern ist wie küssen:
Mann kan darüber reden, mann kann es beschreiben,
aber man weiss erst, was es bedeutet,
wenn man es getan hat"
 
Benutzerbild von turboPASCAL
turboPASCAL

 
Delphi 6 Personal
 
#2
  Alt 2. Dez 2008, 17:20
Nun gut,

1.)
Bitte Arbeite an deiner Formatierung des Quelltextes. Zur Zeit ist er , sagen wir mal, schlecht lesbar.

2.)
Delphi-Quellcode:
procedure TForm1.FormCreate(Sender: TObject);
begin
  pfad := (ExtractFilePath(ParamStr(0)) + '\Sounds\');

  if sysutils.DirectoryExists(pfad) then
  begin
    ListeDir(pfad, Listbox1.Items);
    if Listbox1.ItemIndex > -1 then
      Listbox1.Selected[0] := true;
  end;
//...
Sollte man unbedingt so machen. Denn was passiert denn wenn das verzeichnis leer oder nicht vorhanden ist ?

3.)
38 Timer ? Muss das denn sein ? Einer reicht völlig aus denke ich.
Matti
  Mit Zitat antworten Zitat
Benutzerbild von PhilmacFLy
PhilmacFLy

 
FreePascal / Lazarus
 
#3
  Alt 2. Dez 2008, 17:23
Zitat von turboPASCAL:
Nun gut,

1.)
Bitte Arbeite an deiner Formatierung des Quelltextes. Zur Zeit ist er , sagen wir mal, schlecht lesbar.

2.)
Delphi-Quellcode:
procedure TForm1.FormCreate(Sender: TObject);
begin
  pfad := (ExtractFilePath(ParamStr(0)) + '\Sounds\');

  if sysutils.DirectoryExists(pfad) then
  begin
    ListeDir(pfad, Listbox1.Items);
    if Listbox1.ItemIndex > -1 then
      Listbox1.Selected[0] := true;
  end;
//...
Sollte man unbedingt so machen. Denn was passiert denn wenn das verzeichnis leer oder nicht vorhanden ist ?

3.)
38 Timer ? Muss das denn sein ? Einer reicht völlig aus denke ich.
ich glaube 2tens und 3tens hab ich außreichend oben beanwortet zu 1. hat man mir schon oft gesagt und bis jetzt gnadenlos versagt. außerdem sind es 42 timer
Philipp N.
  Mit Zitat antworten Zitat
Benutzerbild von Mikescher
Mikescher

 
Delphi 2009 Professional
 
#4
  Alt 2. Dez 2008, 18:29
Zu deinem Programm:

Zuerst habe ich es gestartet ca 100 Fehlermeldungen

Dann habe ich irgendwann bemerkt dass man in den Ordner Sounds 9 Sounddateien stecken muss -> hab ich dann auch

Dann wieder AV's ohne Ende -> habe gemerkt dass ich in Sounds einen weiteren Ordner machen muss in dem dann die Sounds liegen müssen

Dann ging mir langsam die Lust aus trotzdem startete ich das Programm => Super lief

Dann steckte ich den Joystick ein => nichts passierte

Programm wieder aus -> Joystick rausziehen -> Joystick reinstecken -> Programm an -> Access Violation

Mach ich irgendwas falsch

Tipps:

Bessere Fehlerbehandlung (Try...except ?) und Beispiel-Sounds damit man mit der Ordnerstruktur wie man die anlegen muss nicht so durcheinander kommt und man es besser mal kurz testen kann

Sonst aber witzige Idee den Joystick zum Klavier zu machen find ich echt witzig die Idee

MfG Mikescher

PS: 42 Timer ist aber echt ziemlich viel die kann man doch bestimmt auf 41 reduzieren

PPS: Die Sounds könntest du auch mit PlaySound wiedergeben (ohne TMediaPlayer)
Mike
  Mit Zitat antworten Zitat
Benutzerbild von PhilmacFLy
PhilmacFLy

 
FreePascal / Lazarus
 
#5
  Alt 3. Dez 2008, 18:53
Erst mal sry das ich erst jetzt weider schreibe hab heut ewig schule gehabt und danach gleich Handball training

Zitat von Mikescher:
Programm wieder aus -> Joystick rausziehen -> Joystick reinstecken -> Programm an -> Access Violation
Also ich habs immer so gemacht Joypad ran Programm an, dann is es gegangen. KAnn es sein das dein Joypad nur 2 Achsen hat? Daran könnte es liegen weil dieses Problem muss ich gerade noch "umprogrammieren"

Zitat von Mikescher:
PPS: Die Sounds könntest du auch mit PlaySound wiedergeben (ohne TMediaPlayer)
Aber damit kann man keine mp3s wieder geben oder?

Zitat von Mikescher:
Beispiel-Sounds damit man mit der Ordnerstruktur wie man die anlegen muss nicht so durcheinander kommt und man es besser mal kurz testen kann
Dazu werd ich morgen vllt übermorgen noch ein kleines Video tutorial erstellen.
Philipp N.
  Mit Zitat antworten Zitat
Alt 3. Dez 2008, 21:01     Erstellt von EWeiss
Dieser Beitrag wurde von fkerber gelöscht. - Grund: Inhalt von Autor entfernt
Benutzerbild von PhilmacFLy
PhilmacFLy

 
FreePascal / Lazarus
 
#6
  Alt 3. Dez 2008, 21:05
Zitat von EWeiss:
Wäre besser du organisierst oder erstellst die Orner im Quelltext
gruss Emil
Das hat noch weniger Sinn da der Benutzer das Sound Template ja sleber erstellen soll und nicht irgendwelche Vorgaben benutzen soll
Philipp N.
  Mit Zitat antworten Zitat
Alt 3. Dez 2008, 21:07     Erstellt von EWeiss
Dieser Beitrag wurde von fkerber gelöscht. - Grund: Inhalt von Autor entfernt
Benutzerbild von Mikescher
Mikescher

 
Delphi 2009 Professional
 
#7
  Alt 4. Dez 2008, 14:26
Zitat von PhilmacFLy:
Also ich habs immer so gemacht Joypad ran Programm an, dann is es gegangen. KAnn es sein das dein Joypad nur 2 Achsen hat? Daran könnte es liegen weil dieses Problem muss ich gerade noch "umprogrammieren"
Stimmt es ist auch ein Joystick, vielleicht liegt da das Problem ... Schade

Zitat von PhilmacFLy:
Aber damit kann man keine mp3s wieder geben oder?
Ok, stimmt da haste recht

Zitat von PhilmacFLy:
Dazu werd ich morgen vllt übermorgen noch ein kleines Video tutorial erstellen.
Ja, aber ich fände es pers. besser wenn du (auch) einfach ein paar Bsp-Dateien reinlegst (muss ja nichts großes sein vllt. nur ein kleiner Beep) das wäre dann imho besser zu verstehen wie die Ordnerstruktur auszusehen hat

PS.: hab grad mal so ein Beispiel-Sound in den Anhang gelegt den kannste wenn de willst grad übernehmen grad 9-mal ind die Ordner rein
Angehängte Dateien
Dateityp: zip beep_mono_und_stereo_113.zip (18,9 KB, 4x aufgerufen)
Mike
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 05:09 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz