![]() |
Re: Mein kleiner mp3-Player...
hallo,
viel Lob und Anerkennung haste ja schon bekommen :mrgreen: aber beim durchlesen hat sich ergeben das vieles sehr oft gesagt wurde (CPU und Design). Mir ist aufgefallen das, fast nur, das Design angesprochen wurde :!: weil die anderen "standart" Funktionen einfach erwartet werden. Ich denke das es das ist was dein Programm ausmacht, denn die Player unterscheiden sich ja fast nur noch im Design. Wenn du in diesem Bereich viele (einfache) Möglichkeiten für den User einbaust, wird dem Erfolg des Programms nichts im Wege stehen. Ich selbst hab es noch nicht ausprobier, weil ich keine Sounddateien auf meinem (Arbeits)Rechner finde. :wall: Aber ich werds zu Hause mal ausprobieren. Ich sag mal weiter so ... :zwinker: PS: Ist es Möglich beim öffnen der Songs (Opendialog) die Sounddateien vorzuschreiben die Möglich sind(zB *.mp3, *.wav) :gruebel: mfg freak |
Re: Mein kleiner mp3-Player...
Sieht sehr interessant aus :)
Allerdings belässt es mein Athlon 1800+ beim Aussehen, mehr als den Sound zu hören krieg ich nicht zu sehen. Visuals funktionieren nicht, der PC (CPU und RAM) sind total überlastet. :( Aber alle Achtung, jede Menge Arbeit bestimmt! Jan |
Re: Mein kleiner mp3-Player...
halloo
bin gerade auf dieser seite gelandet... habe den player auch gedownloadet, echt ein cooles design!! aber wie hast du dieses pegel-teil in der mitte gemacht?? |
Re: Mein kleiner mp3-Player...
Zitat:
|
Re: Mein kleiner mp3-Player...
Genial!!! :thumb:
Ich hab auch nen Player mit haufenweise funktionen: Nur das rund, was immer hoch und runter geht fehlt noch (wie es heißt hab ich vergessen :gruebel: ). Wie hast du das hinbekommen??? |
Re: Mein kleiner mp3-Player...
Zitat:
|
Re: Mein kleiner mp3-Player...
Zitat:
Aber das Teil ist echt Hammergeil! Schade nur, dass das Programm selbst ohne abzuspielen 73% (!!!) meiner CPU in anspruch nimmt... Mit Lied isses auch in etwa um den WErt herum. Das musst du noch verbessern, aber ansonsten isses einfahc nur mal geil! Wann gibts eigentlich ne neue Version zum Download? mfg, mh166 |
Re: Mein kleiner mp3-Player...
Zitat:
aber kann man auch mit der bass.dll arbeiten, wenn man zum abspielen von dateien den Tmediaplayer nimmt?? wenn ja: wie kann man so ein colles dings da in der mitte programmieren?? (ein code wäre nicht schlecht, falls du ihn hergeben willst) oder einfach ein ganz normaler Tstatusbar, der den pegel anzeigt?? |
Re: Mein kleiner mp3-Player...
Zitat:
Der Mediaplayer ist imho nicht wirklich der Weisheit letzter Schluss... Zitat:
Na gut....
Delphi-Quellcode:
Packs die nicht standardmäßig bei Delphi dabei sind: Graphics32-Lib; bass.dll + modifizierte Version der Bassplayer.pas vom DP-User Gandalfus (TBassplayer).
//------------------------------------------------------------------------------
//------- The Volume-Bars ------------------------------------------------------ // SECTION BEGIN --------------------------------------------------------------- { How does it work? At first the volumes is "smoothed". This is done by checking whether the new volume is lower or greater than the former one. If it is lower, then not the actual new vlomue is taken, but the former one slightly decreased. If it is greater, the value is just taken "as is". The resulting volume-values are taken to calculate an angle between 0 and (3/4)*pi. (Pi would make a 180°-turn, and i didn't want the bars to clap together at max-volume -> thus i took (3/4)*pi.) The channel-volume is also the base for calculating the colors. Low volume produces green color, and the higher the volume gets, the more the color turns into red. Then when drawing the bars, i use a loop that draws the lines for all volumes that are lower or equal to the actual value, because just drawing the line for the actual value wouldn't result in "bars" but simple two dancing lines... The constant numbers in the drawing-routines are depending on where the bars should appear, and how large the inner and outer ellipse should be. (They are constant here because it is faster.) } procedure DrawVisVolume(var bmp: TBitmap32; const Source: TBassplayer); var lv, rv : Double; m : Double; c : Integer; sinM, cosM: Extended; const step: Double = 0.02; begin lv := Source.LeftPeak; rv := Source.RightPeak; if lv > 128 then lv := 0; if rv > 128 then rv := 0; lv := 0.018407769*lv; // := 0.005859375*lv*pi; // := (lv / 128)*(pi/4)*3; <--- is same rv := 0.018407769*rv; // := 0.005859375*rv*pi; // := (rv / 128)*(pi/4)*3; <--- is same if lv < lVol then lVol := lVol - 0.125 else lVol := lv; if rv < rVol then rVol := rVol - 0.125 else rVol := rv; m := 0; repeat c := trunc(108.2253613*m); // := trunc(340*m / pi); <--- // := trunc((m * 255) / ((3/4)*pi)); <--- is same sincos(m, sinM, cosM); bmp.LineF(200+120*-sinM, 200+150* cosM, 200+180*-sinM, 200+180* cosM, Color32(c,255-c,32)); m := m + step; until m > lVol; m := step; repeat c := trunc(108.2253613*m); // := trunc(340*m / pi); <--- // := trunc((m * 255) / ((3/4)*pi)); <--- is same sincos(m, sinM, cosM); bmp.LineF(200-120*-sinM, 200+150* cosM, 200-180*-sinM, 200+180* cosM, Color32(c,255-c,32)); m := m + step; until m > rVol; end; Die komischen Kommentare im Code sind für mich zur Erinnerung wie die konstanten Werte im eigentlichen Code ursprünglich entstanden sind. Diese Prozedur zeichnet die Volume-Bars auf ein beliebiges TBitmap32 das ausreichend groß ist. Da das ganze allerdings doch schon recht speziell ist, weiss ich nicht, ob dir das so wirklich weiter hilft... Zitat:
Gruss, Fabian \\edit: btw.: Die gesamte Unit für die Visuals ist genau 599 Zeilen, die die dafür sorgt dass alles zur rechten Zeit an rechter Stelle gezeichnet wird macht nochmal ~300. Das sind mal sopntan 900 Zeilen Code nur für das Visual, da ist noch kein Lied mit abgespielt, geschweige denn eine GUI gebaut und gesteuert... |
Re: Mein kleiner mp3-Player...
Hi,
gibt es nicht die möglichkeit eine Komponente von den LMD-Tools zu verwenden, die die Position bis 100 hat? Dann muss man nur in einem edit oder label die Soundlautstärke 0-100 angeben und jede ml-sekunde den Text zur Position zu übertragen?[edit label geht natürlich nicht(siehe var)] |
Alle Zeitangaben in WEZ +1. Es ist jetzt 22:21 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz