-
Forum: Multimedia
Delphi
by Blamaster,
19. Jul 2009
So,
nach einigem geteste möchte ich nun noch eine Zusatzfunktion verbauen.
Momentan Scanne ich ja die Pixel wie folgt:
for y := 0 to Screenshot.Height - 1 do
begin
for x := 0 to Screenshot.Width - 1 do
-
Forum: Multimedia
Delphi
by Blamaster,
5. Jul 2009
Hi,
ich bin jetzt auch nochmal etwas weitergekommen :)
Im Angehängten Programm gibt es 2 Optionen einmal Scan1 und Scan2. Scan 1 beinhaltet das ganze am Anfang angetestete Prinzip.
Scan 2 funktioniert nach dem Prinzip welches ich eine Seite zuvor angedacht habe.
Währe super wenn mal jemand das programm bei sich austesten könnte. Meiner meinung nach liefer die Scan 2 Methode schon...
-
Forum: Multimedia
Delphi
by Blamaster,
4. Jul 2009
Hm schade habe es gerade mal mit anderen Videos versucht. Manche lassen sich garnicht laden. (programm hängt sich auf)
Bei anderen die angezeigt werden bleiben die Farbfelder weiß.
Einen unterschied zwischen fertiger und selbstcompilierter exe konnte ich nicht feststellen.
Kannst du das programm evtl. auf einen Art Screenshot Methode umbauen, dann ist dabei das Abspielmedium ja egal.
...
-
Forum: Multimedia
Delphi
by Blamaster,
4. Jul 2009
Hi,
nein ich nutze WinXP.
Muss außerhalb der kompo noch etwas anderes installiert werden ?
mfg Yannic
-
Forum: Multimedia
Delphi
by Blamaster,
4. Jul 2009
Hi,
auch das bringt nichts. Die TForm1.SampleGrabber1Buffer wird ja nichtmal aufgerufen.
mfg Yannic
-
Forum: Multimedia
Delphi
by Blamaster,
4. Jul 2009
Hi,
ich habe gerade mal über die exe gestartet und ein Video geladen. Das Video wird auch abgespielt allerdings bleiben die Ränder die ganze Zeit weiß, woran kann das liegen ?
mfg Yannic
-
Forum: Multimedia
Delphi
by Blamaster,
3. Jul 2009
Hi,
hört sich ja schonmal super an :shock:
An Hue bzw. den HSV Farbraum hatte ich auch schon gedacht komme da aber irgendwie nicht richtig hinter die Berechnungsmethode.
Meine Gedanken die ich mir gemacht hatte, bevor du das mit dem HSV Farbraum geschrieben hattest war folgender. (Bei der RGB Methode)
1.) Farbe von Pixel ermitteln.
2.) Farbe von Pixel auf schwarz/weiß/grau...
-
Forum: Multimedia
Delphi
by Blamaster,
3. Jul 2009
@ Reinhard Kern
von der Seite habe ich das noch garnicht betrachtet.
Allerdings möchte ich mich erstmal nicht um die Ausbesserung davon kümmern sondern das Programm überhaupt zum "schnellen" laufen bekommen.
mfg Yannic
-
Forum: Multimedia
Delphi
by Blamaster,
2. Jul 2009
Ich habe jetzt nochmal ein kleines Programm geschrieben, welches das Problem verdeutlicht und den Code für das ambilight enthält.
Ich kann da definitiv zwischen der gr32 Methode und der normalen keine Verbesserung feststellen.
mfg Yannic
-
Forum: Multimedia
Delphi
by Blamaster,
2. Jul 2009
Hi,
ich habe nun nochmal einen Direktvergleich gemacht.
1.) Einmal das ganze mit tbitmap, tcolor und Bitmap.Canvas.Pixels;
2.) Dann das ganze mit tbitmap32, tcolor32 und Bitmap.Pixel;
Der rest ist identisch bei einer Timer Zeit von 250ms habe ich bei Variante 1 eine Cpu Last von 11%, bei Variante 2 eine Cpu Last von 55% wie kann da sein ?
mfg Yannic
-
Forum: Multimedia
Delphi
by Blamaster,
2. Jul 2009
Hi,
den code für den Screenshot habe ich nicht selber entworfen sonder nfertig übernommen. Ob das nun eine gute oder schlechte Lösung ist kann ich mit meiner Kenntnis momentan nicht sagen.
Die Hardware für das Ambilight steht schon. Das Programm übergibt die RGB Werte über die Rs232 Schnitstelle an einen Microcontroller, dieser setzt dann die Farben.
mfg Yannic
-
Forum: Multimedia
Delphi
by Blamaster,
2. Jul 2009
Hi,
das hier ist die Screenshot Funktion:
function FormularScreenShot(Bmp: TBitmap32; h: hWnd): Boolean;
var
Rec: TRect;
iWidth, iHeight: Integer;
begin
-
Forum: Multimedia
Delphi
by Blamaster,
2. Jul 2009
Hi,
der Code funktioniert jetzt soweit. Allerdings ist das ganze wie vermutet etwas langsam gerade bei großen scan bereichen.
Deswegen hatte ich mal weitergesucht und bin recht oft auf eine G32 oder Graphic 32 unit gestoßen, die wohl funktionen beinhalten soll mit denen das ganze sehr schnell und einfach geht.
Kennt jemand die Unit bzw. weiß mit welcher Funktion es schnell gehen soll ?...
-
Forum: Multimedia
Delphi
by Blamaster,
2. Jul 2009
Hi,
dann habe ich mich etwas unklar ausgedrückt :(
Es muss natürlich nicht eine exakte Farbe sein, es reicht natürlich ein Näherungswert ich meine damit eher das z.B. Orange nicht als Rot gewertet werden soll, oder Lila als Blau :)
mfg Yannic
-
Forum: Multimedia
Delphi
by Blamaster,
2. Jul 2009
Hi,
ich habe gerade mal testweise etwas zusammengeschustert.
procedure TForm1.Button3Click(Sender: TObject);
var
Color: TColor;
x, y, i, high_r, high_g, high_b, end_r, end_g, end_b: integer;
ColorArray: array of cardinal;
-
Forum: Multimedia
Delphi
by Blamaster,
2. Jul 2009
Hi,
Danke schonmal für die Hilfe.
Ich glaube die Methode von Aphton iost zu resourcen fressend. Ein "scan" sollte ca. alle 25ms erfolgen können.
@ Medium
das sieht ganz interessant aus. Allerdings habe ich da gerade ein Verständnisproblem.
-
Forum: Multimedia
Delphi
by Blamaster,
1. Jul 2009
Hi,
ich habe beriets rausgefunden wie man die Farbe eines bestimmten Pixel auf dem Bildschirm ermitteln kann.
Ich bin gerade dabei ein Art Ambilight zu programmieren, welches mir die überweigende Farbe in einem bestimmten Bereich des Bildschirms ausgeben soll.
Meine Fragen dazu ist nun wie kann man am besten eine Berechnung der überweigenden Farbe realisieren ?
Um es nochmal ein...