Blitz_Bass_Matrix (Feature Request)
Übersicht

![]() |
AbrexxesBetreff: Blitz_Bass_Matrix (Feature Request) |
![]() Antworten mit Zitat ![]() |
---|---|---|
Hi,
ich arbeite zur Zeit an einer Erweiterung für BlitzBassStudio die sich BlitzBassMatrix nennt. BBM besteht nur aus der dll, einer neuen decls und einer Dokumentation. Es kann sowohl alleine als auf mit dem "grossen" Bass verwendet werden (also der gesamten api) Was macht BBMatrix? - Mit einem einzigen "include" Befehl werden alle Blitzbasic Sound Befehle ersetzt und auf Bass umgeleitet. Man kann also jedes Projekt auch später auf BASS umstellen ohne den Code zu verändern. Warum - Bass bietet einige Vorzüge als Fmod 3 (Blitzbasic), zb die XM Abspielroutine die viel exakter ist. - Um neue Befehle einzuführen wie ReverbSound(), also einfache Befehle ohne sich in die Bass Api einzuarbeiten. - Um einige "Limitierungen" von Blitzbasic zu beheben zb kein vernünftiges Speichermanagment - Es geht also darum die "Sound Fähigkeiten" von Blitzbasic "Artgerecht" zu erweitern damit man auch mit einfachen Befehlen in der "ersten Reihe" sitzt wenn dann mal die ersten DX9 Engines auftauchen. ![]() Was will ich von euch Ich möchte von euch wissen welche "Fähigkeiten" und Befehle Ihr euch wünscht da ein umgesetzten der "gesamten" Bass Api imho Blödsinn ist. (Denn dann muss man sich für das meiste intensiver mit Bass beschäftigen und dazu ist ja bereits alles vorhanden.) Also schreibt alles was euch zum Thema Sound im Moment nervt. Danke |
||
![]() |
Silver_Knee |
![]() Antworten mit Zitat ![]() |
---|---|---|
Um ein BB-Musik prog nutzbar zuu machen also ein blitz Winamp zB:
-ID3v1/v2 tags auslesen können(ich weiß kann mann auch ohne BlitzBassModStudioMatrix dingens aber man kann die funktion ja beilegen und sie mit dem Channel verknüpfen) -Länge von stücken (dürfte in den id3 tags stehen oder?) -Aktuelle Position und zwar net mit millisecs und pitch berechnet da sich bei variablem Pich wieder alles ändert und hin und her und rechnerei. ich glaube es ist einfacherzu sagen aha ich spiele byte 123 ab und dass entspricht der position 4:30 min. -Simples positionsspringen alla SetChannelPos channel,1245677;ms oder SetChannelPos channel,0.75;=75% Spektrum und oszilosgraphen auslesen alla: wert_zwischen0und1=GetChannelSpec(channel,postion) wobei position angibt welcher "balken" gefragt ist wert_zwischen0und1=GetChannelOsc(channel,postion) wobei position angibt wo (links=0 rechts=1) gemessen wird. -Kurze Funktionsnamen mit wenigen parametern oder wenn nötig mit tandartparameter,sodass man auch "mal eben schnell" sound einbeuen kann Das sind WÜNSCHE keine Forderungen. ich wäre schon glücklich wenn man die hälfte realisieren könnte ohne diese Langen konstanten und funktionslisten auswendig zu lernen. |
||
![]() |
Abrexxes |
![]() Antworten mit Zitat ![]() |
---|---|---|
Silver_Knee hat Folgendes geschrieben: Um ein BB-Musik prog nutzbar zuu machen also ein blitz Winamp zB:
-ID3v1/v2 tags auslesen können(ich weiß kann mann auch ohne BlitzBassModStudioMatrix dingens aber man kann die funktion ja beilegen und sie mit dem Channel verknüpfen) Geht bereits auch mit BBS und dem plugin TAG (ist dabei). BBM wird aber ohne plugins arbeiten und für Spiele vorgesehen sein. Aber eine kleine Funktion die denn Namen zurückgibt ist machbar *Todo* Zitat: -Länge von stücken (dürfte in den id3 tags stehen oder?) -Aktuelle Position und zwar net mit millisecs und pitch berechnet da sich bei variablem Pich wieder alles ändert und hin und her und rechnerei. ich glaube es ist einfacherzu sagen aha ich spiele byte 123 ab und dass entspricht der position 4:30 min. Soweit alles kein Problem ausser das für Pitch eh wieder ein Plugin und viele Parameter nötig sind, für sowas must du BBS nutzen (Plugin Encoder) Zitat: -Simples positionsspringen No problem Zitat: Spektrum und oszilosgraphen auslesen
Absolut Zitat: wert_zwischen0und1=GetChannelSpec(channel,postion) wobei position angibt welcher "balken" gefragt ist wert_zwischen0und1=GetChannelOsc(channel,postion) wobei position angibt wo (links=0 rechts=1) gemessen wird. Mono Left Right ist kein Problem. Der Wert der Balken errechnet sich immer durch 65535/lenght. Für Spectralanalyse gibts jeweils 512bit range pro frame, was du damit machst ist dir überlassen. Zitat: -Kurze Funktionsnamen mit wenigen parametern oder wenn nötig mit tandartparameter,sodass man auch "mal eben schnell" sound einbeuen kann
Genau darum geht es. Die Blitzbefehle "einfach" zu erweitern, so das man zb mit einem Befehl ECHO erzeugen kann. Zitat: Das sind WÜNSCHE keine Forderungen. ich wäre schon glücklich wenn man die hälfte realisieren könnte ohne diese Langen konstanten und funktionslisten auswendig zu lernen.
Vieles sollte machbar sein, für SOUNDTOOLS ala Player oder auch Tracker und co kommst du an dem grossen Bruder BBS aber nicht vorbei. Würde ich dafür jeden Parameter in eine kleine Function packen hätte ich am Ende den Player/Tracker ja fertig und Ihr müsstet nur noch euren Namen reinschreiben. *g*. Aber (!) wie schon gesagt wird BBM zu BBS kompatibel sein, das heist Ihr könnt zu jedem Zeitpunkt eurer Projekte entscheiden ob BBM reicht oder Ihr zusätzlich noch BBS hinzunehmt und alles machen könnt. cu PS: BlitzBassModStudioMatrix war nicht nett. Matrix ist für Anfänger gedacht und MOD habe ich für EIN EINZIGES Mitglied hier geschreiben der das brauchte. BBS dagegen ist ein AllInOne System das es jedem erlaubt so gut wie alles zu erledigen was im Jahre 2007 machbar ist dank un4seen ohne dabei 100 Dokumente zu suchen und Zeit zu verschwenden. |
||
![]() |
Silver_Knee |
![]() Antworten mit Zitat ![]() |
---|---|---|
Zitat: Der Wert der Balken errechnet sich immer durch 65535/lenght.
Für Spectralanalyse gibts jeweils 512bit range pro frame, was du damit machst ist dir überlassen. genau das ist was den Normaluser umhaut. für das menschliche auge unwillkürlich gewählte zahlen die man irgendwie um und durchrechnen muss. Allenfalls ein *100 muss man dazuschreiben müssen damit man was sieht wie zb bei cos und sin: ein knappes +100 und ich sehe nen kreis. wenn ich aber ein einfaches spektro machen will muss ich mir erst 2^8/lenght rechnen und wie ich lenght errechne will ich garnet erst wissen ^^... so sachen die schrecken ab der otto normal verbraucher will dann so n Code: [AUSKLAPPEN] Include "BBM.bb"
channel=Playmusic("meine.mp3") repeat for count=1 to 10 rect count*10,100,10,GetChannelSpec(channel,count/10.0)*100 next until Keyhit(1) End alle zahlen die vorkommen sind für den Progger übersichtlich und nachvollziehbar.. |
||
![]() |
Abrexxes |
![]() Antworten mit Zitat ![]() |
---|---|---|
Silver_Knee hat Folgendes geschrieben:
Ok, da gebe ich dir Recht, ich lasse mir was einfallen, aber ins Steinzeitalter gehen wir aber auch nicht also : Code: [AUSKLAPPEN] Channelplay (meinemusik) ![]() |
||
![]() |
hecticSieger des IS Talentwettbewerb 2006 |
![]() Antworten mit Zitat ![]() |
---|---|---|
@Silver_Knee, deine Wünsche über den Spektrumanalyser sind eigendlich nicht ganze berechtigt. Du kannst dir zB mein Dreamplayer 2.3 mal anschauen und behaupten dass die Spektrumanzeige gut oder schlecht ist. Das bleibt dir überlassen. Allerdings habe ich, damit es ''gut'' aussieht, bereits drei umrechnungen darin verwendet, die das ganze ''gut'' aussehen lassen, aber nicht der ''Realität'' entsprechen. Abrexxes kann natürlich die Daten die in die Bank eingetragen werden umrechnen. Doch wird es dann seine Interpretationssache sein, wie die Daten letztendlich umgerechnet werden.
Ich will das mal so erklären. Das was die bass.dll da ausgibt, entspricht denn tatsächlichen Werten in ihren linearen Frequenzverlauf, als auch in ihrer Amplitude. Es sollte aber jeden Klar sein, dass ein 50Hz -Ton bei einem Lautsprecher mit 30cm Durchmesser und einem Hub von +/- 10mm eine andere ''Lautsärke'' ist als der gleiche Hub, mit dem gleichem Durchmesser aber einer anderen Frequanz. Das Gehört ist also das Problem, nicht die technischen Daten. Um den Spektrum so nah wie möglich dem menschlichen Empfinden zu nähren, habe ich eben ALLE relevanten Daten und Berechnungen im Dreamplayer 2.3 entsprechend erläutert. Der Code ist gerade in den Stellen wirklich sehr ausfühlich erklärt. Und letztendlich ist dieser Spektrum MEINE Interpretationssache, was jemand anderes bereits anders sehen könnte. ![]() |
||
Download der Draw3D2 V.1.1 für schnelle Echtzeiteffekte über Blitz3D |
![]() |
Abrexxes |
![]() Antworten mit Zitat ![]() |
---|---|---|
Als Ergänzung zu hectic,
ich stelle euch nur Möglichkeiten zur Verfügung die es ermöglichen zb Effekte in Spielen mit Sound zu steuern oder Goodies zu machen. (zb die Sprachausgabe visualisieren). Wenn Ihr korrekte Frequenz Berechnungen anstellen wollt dann benutzt BBS. Es wird zwar im "viel" im Vergleich zu BB geben, aber ALLES kann ich auch nicht vorkauen. Selbst die beste 3D Engine kennt auch keinen MakeQuick(Enterprise) Befehl der gerade mal ein fertiges Raumschiff erzeugt und rendert. Wer also angeben will mit geilster Visualisierung der muss auch weiterhin die (wirklich nicht schwere) BBS bemühen und sich in die Materie einarbeiten. Aber genau deswegen achte ich darauf das Ihr leicht umstellen könnt und euch kein Weg verbaut wird wenn Ihr später "mehr" wollt. cu |
||
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group