AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Kein Ton bei MIDI

Ein Thema von EWeiss · begonnen am 8. Mär 2011 · letzter Beitrag vom 8. Mär 2011
Antwort Antwort
Seite 1 von 2  1 2      
EWeiss
(Gast)

n/a Beiträge
 
#1

Kein Ton bei MIDI

  Alt 8. Mär 2011, 06:22
Woran kann es liegen das ich keinen Ton bei midi erhalte?
Alle Gesendeten messagen sind positiv aber Ton kommt keiner.

Habe direkt mit MMSystem versucht.
Danach mit der Midi Komponente aus dem Forum hier, kein Erfolg.

Meine Soundkarte ist in Ordnung.

Delphi-Quellcode:
  WM_COMMAND:
    begin
      case LoWord(wP) of
        ID_KEY_ARRAY_FIRST..ID_KEY_ARRAY_LAST:
          PutShortMidi($90, byte((wp - 200) + 1), volume);
      end;
Eigentlich sollte jetzt ein durchgehender Ton zu hören sein.
Alle anderen Samples incl. das von FAlter funktionieren hier.

Nicht einmal der einfachste aufruf führt zum erfolg.
Einfaches Sample
Funktioniert auch nicht

gruss

Geändert von EWeiss ( 8. Mär 2011 um 06:42 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von Bummi
Bummi

Registriert seit: 15. Jun 2010
Ort: Augsburg Bayern Süddeutschland
3.470 Beiträge
 
Delphi XE3 Enterprise
 
#2

AW: Kein Ton bei MIDI

  Alt 8. Mär 2011, 06:58
Zitat:
Funktioniert auch nicht
bei mir schon ....
Thomas Wassermann H₂♂
Das Problem steckt meistens zwischen den Ohren
DRY DRY KISS
H₂ (wenn bei meinen Snipplets nichts anderes angegeben ist Lizenz: WTFPL)
  Mit Zitat antworten Zitat
EWeiss
(Gast)

n/a Beiträge
 
#3

AW: Kein Ton bei MIDI

  Alt 8. Mär 2011, 07:08
Zitat:
Funktioniert auch nicht
bei mir schon ....
Ja es funktioniert
Aber nicht mit meinem Window.

Die frage ist also latency, Callback oder was sonst für ein Problem.
Alle Messagen sind True also kein Fehler trotzdem kein Ton. (NUR in meinem Projekt)

Zitat:
Sollte den MIDI-Empfänger nach diesen 300 ms keine MIDI-Information mehr erreichen, geht er davon aus, dass die MIDI-Verbindung unterbrochen, z. B. das Kabel durchgeschnitten wurde und löscht seinen MIDI-Puffer
Auch gültig für mein Window?


gruss

Geändert von EWeiss ( 8. Mär 2011 um 07:15 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
43.114 Beiträge
 
Delphi 12 Athens
 
#4

AW: Kein Ton bei MIDI

  Alt 8. Mär 2011, 07:31
Sicher daß dein ID_KEY_ARRAY_FIRS... überhaupt aufgerufen wird?

Funktioniert das PutShortMidi, wenn es z.B. über einen Button direkt aufgerufen wird?
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests
  Mit Zitat antworten Zitat
EWeiss
(Gast)

n/a Beiträge
 
#5

AW: Kein Ton bei MIDI

  Alt 8. Mär 2011, 07:37
Sicher daß dein ID_KEY_ARRAY_FIRS... überhaupt aufgerufen wird?

Funktioniert das PutShortMidi, wenn es z.B. über einen Button direkt aufgerufen wird?
Zitat:
ID_KEY_ARRAY_FIRS...
Wird Hundertprozentig aufgerufen.
Wie gesagt beim debuggen werden alle Messagen positiv übergeben.

Zitat:
wenn es z.B. über einen Button direkt aufgerufen wird?
Ich rufe es über einen Button auf allerdings nonvcl.

EDIT:
Hab mal nen VCL Button addiert
Kein Ton.

gruss

Geändert von EWeiss ( 8. Mär 2011 um 08:45 Uhr)
  Mit Zitat antworten Zitat
shmia

Registriert seit: 2. Mär 2004
5.508 Beiträge
 
Delphi 5 Professional
 
#6

AW: Kein Ton bei MIDI

  Alt 8. Mär 2011, 11:09
Hast du mit einer Software, die erwiesenermaßen MIDI-Töne ausgeben kann auf deinem Rechner getestet?
Also z.B. mit dem Windows Media Player eine Midi-Datei abspielen.

Dass deine Soundkarte in Ordnung ist, ist ja noch kein BEWEIS, dass auch das Midi-Subsystem wirklich funktioniert.
Ich hoffe du hast das Prinzip verstanden:
Traue niemanden, nicht mal Dir selbst! Bei Problemen gehe zurück auf Los und beweise dass es funktioniert.
Hast du deine MIDI-Funktionen in einer VCL-Anwendung getestet?
Falls nicht: schwerer Fehler!
Mit einer VCL-Anwendung kann man wesentlich einfacher testen als mit einer NonVCL-Anwendung.
Deshalb sollte man Code, der etwas komplizierter ist zuerst in eine VCL-Anwendung packen und testen.
Andreas
  Mit Zitat antworten Zitat
EWeiss
(Gast)

n/a Beiträge
 
#7

AW: Kein Ton bei MIDI

  Alt 8. Mär 2011, 11:28
Hast du mit einer Software, die erwiesenermaßen MIDI-Töne ausgeben kann auf deinem Rechner getestet?
Also z.B. mit dem Windows Media Player eine Midi-Datei abspielen.

Dass deine Soundkarte in Ordnung ist, ist ja noch kein BEWEIS, dass auch das Midi-Subsystem wirklich funktioniert.
Ich hoffe du hast das Prinzip verstanden:
Traue niemanden, nicht mal Dir selbst! Bei Problemen gehe zurück auf Los und beweise dass es funktioniert.
Hast du deine MIDI-Funktionen in einer VCL-Anwendung getestet?
Falls nicht: schwerer Fehler!
Mit einer VCL-Anwendung kann man wesentlich einfacher testen als mit einer NonVCL-Anwendung.
Deshalb sollte man Code, der etwas komplizierter ist zuerst in eine VCL-Anwendung packen und testen.
Gut gemeinte Vorschläge.. Danke
Zitat:
Alle anderen Samples incl. das von FAlter funktionieren hier.
Siehe was ich oben geschrieben habe.
Zitat:
einfacher testen als mit einer NonVCL-Anwendung.
Das ist Ansichtssache.
Ich habe keine Probleme damit

Summa summarum.
Wurde alles bis auf's kleinste genau so, vorher schon geprüft, wie du vorgeschlagen hast.

Und in VCL Anwendungen zu prüfen (Da geht es ja) wenn ich mit NonVCL arbeite macht keinen sinn.
Das muss hier laufen.

Zitat:
Deshalb sollte man Code, der etwas komplizierter ist zuerst in eine VCL-Anwendung packen und testen.
Drei zeilen bzw.. nur eine um einen MIDI Ton ausgeben zulassen ist nicht gerade schwer oder?

gruss

Geändert von EWeiss ( 8. Mär 2011 um 11:30 Uhr)
  Mit Zitat antworten Zitat
shmia

Registriert seit: 2. Mär 2004
5.508 Beiträge
 
Delphi 5 Professional
 
#8

AW: Kein Ton bei MIDI

  Alt 8. Mär 2011, 13:58
Drei zeilen bzw.. nur eine um einen MIDI Ton ausgeben zulassen ist nicht gerade schwer oder?
Es scheint aber nicht zu funktionieren.

Ich versuche Dir nur zu erklären wie man es richtig macht.
1.) sämtlicher Code für die Ansteuerung für MIDI gehört in eine eigene Unit.
2.) In dieser Unit gibt es eine Klasse mit diversen Methoden wie z.B. NoteOn(), NoteOff(),...
Es kann nur eine Klasse sein, denn die API-Funktion MidiOutOpen() liefert ein Handle zurück, dass man für alle weiteren API-Aufrufe aufbewahren muss.
Dafür braucht man eine Klasse; eine globale Variable wäre unprofesionell, da es mehr als ein MIDI-Device geben kann.
3.) diese Unit muss getestet und schrittweise verbessert werden.
Das ist keine Zeitverschwendung sondern absolut notwendig.
4.) zum Testen könnte man eine VCL, NonVCL oder Konsolenanwendung verwenden.
Sinnvoller Weise verwendet man eine VCL-Anwendung.
5.) die Testanwendung wird nicht weggeworfen, sondern zusammen mit der NonVCL-Anwendung für spätere Tests aufbewahrt.
6.) Die MIDI-Out-Klasse stellt eine Abstraktionsschicht um die Windows-API dar.
In der Anwendung finden sich daher keine Konstanten wie z.B. $90(=Note-On).

Schau Dir mal die Unit JclMidi aus der Jedi Code Library an. So muss das aussehen!
Wobei du für deine Zwecke die MIDI-Klasse etwas einfacher halten kannst.
Andreas
  Mit Zitat antworten Zitat
EWeiss
(Gast)

n/a Beiträge
 
#9

AW: Kein Ton bei MIDI

  Alt 8. Mär 2011, 14:23
Zitat:
Ich versuche Dir nur zu erklären wie man es richtig macht.
Deine Erklärungen gehen voll am thema vorbei.
Sorry.

Das sind alles mir bekannte Dinge die mußt du mir nicht erklären.
Hier geht es um etwas anderes.
Aber trotzdem Danke.

Das Event Play wird einfach nicht ausgelößt.
Obwohl alle funktionen gegengeprüft und einen True part zurückliefern.

Es hat nichts mit MIDI in dem sinne zu tun sondern mit meinem Window
Es läßt die Messagen nicht durch.
Meine vermutung ist das es an meinen Interfacen innerhalb der DLL liegt
in der meine Funktionen für das erstellen meines Skin Windows enthalten sind.

Es dauert wohl zu lange bis alles abgearbeitet ist und das deshalb die 300ms überschritten werden
und das Handle vom MidiOut nicht mehr existiert.

Das ist meine einzige erklärung für das Problem.
In einem anderen Project (auch mit meinem Window Skin aber ohne DLL) funktioniert das abspielen.

gruss
  Mit Zitat antworten Zitat
Benutzerbild von vergessen
vergessen

Registriert seit: 29. Jun 2010
85 Beiträge
 
Delphi 5 Professional
 
#10

AW: Kein Ton bei MIDI

  Alt 8. Mär 2011, 17:38
Hast Du Dein Programm mal ohne/außerhalb der IDE getestet?

Bei mir klemmt manchmal Drag&Drop, wenn die IDE noch läuft

MfG
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


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 04:01 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