Beiträge von UEZ
-
-
Hallo zusammen,
es wieder Zeit für die nächste Fußball Tipprunde aka WM Kicktipp.
Wer Lust oder Laune hat kann sich hier einfach und kostenlos registrieren und mittippen: Autoit-WM18
Was gibt's zu gewinnen? Da der Aufwand für Tippeinsätze zu hoch ist, nur Ruhm und Ehre.

Wann beginnt die WM (Deadline)? 14.06.2018 um 17:00 Uhr.
Ich hoffe auf zahlreiche Teilnehmer.

Happy Tipping.
Edit:
Sieger autoiter - herzlichen Glückwunsch.
-
Ich möchte dass das Fenster nicht erscheint und immer "Microsoft Video 1" ausgewählt wird.
Wobei ich glaube es hat sich erledigt
https://www.autoitscript.com/forum/topic/18…comment=1312799
Oder gibt es einen Nachteil, wenn man dieses Beispiel verwendet?
Dies sollte ja auf allen Rechner funktionieren oder?
Einen Nachteil sehe ich nicht. Wenn der Encoder installiert ist, ist alles gut, ansonsten dürfte das Bild wohl eher dunkel bleiben.
-
Wie meinst du das? Die gelisteten Codecs sind die installierten Codecs. Z.B. um XViD zu nutzen, müsstest du zuerst den XViD Codec installieren.
-
Ein weiterer Hinweis: du kannst die "PrintWindow" Funktion aus der User32.dll nehmen, um verdeckte Fenster zu kopieren.
-
Sollte jetzt gefixt sein.
Danke.
-
@Musashi : der Source Code ist nicht Open Source und somit kann die Weiterentwicklung nur von Jon vorangetrieben werden, entweder er selbst oder durch weitere Personen. Momentan gibt es keine weiteren Personen bzw. Jon hat wohl nicht die Zeit dafür. Es soll auch kein Open Source Weiterentwicklung geben, so dass die Gemeinde weiterentwickeln könnte.
Mit Valik und trancexx gab es Hoffnung, aber seit sie nicht mehr im Dev Team sind, passiert auch nichts mehr, außer Bug Fixes.
-
Ich benutze 3.3.14.5 und die Beta 3.3.15.1.
I.d.R. gehe ich gleich auf die aktuelle Version, es sei denn, sie ist völlig verbuggt. Momentan alles ok.
Leider ist die Kernentwicklung stehen geblieben und nur Fehler werden behoben (und neue kommen hinzu) und die UDFs werden aktualisiert, sonst passiert leider nicht viel.
Ich persönlich würde eine Weiterentwicklung begrüßen, aber wer soll's entwickeln?
-
Hier eine der vielen Möglichkeiten:
AutoIt
Alles anzeigen#include <GDIPlus.au3> #include <GUIConstantsEx.au3> #include <WindowsConstants.au3> Example() Func Example() AutoItSetOption("GUIOnEventMode", 1) _GDIPlus_Startup() ;initialize GDI+ Global $hBmp = _GDIPlus_BitmapCreateFromMemory(_Test_Image()) Local Const $iWidth = _GDIPlus_ImageGetWidth($hBmp) , $iHeight = _GDIPlus_ImageGetHeight($hBmp) , $iBgColor = 0x303030 ;$iBGColor format RRGGBB Global $hGUI = GUICreate("GDI+ pixelate example", $iWidth, $iHeight) ;create a test GUI GUISetBkColor($iBgColor, $hGUI) ;set GUI background color GUISetState() ;create buffered graphics frame set for smoother gfx object movements Global Const $hBitmap = _WinAPI_CreateDIB($iWidth, $iHeight) Global Const $hDC = _WinAPI_GetDC($hGUI) Global Const $hDC_backbuffer = _WinAPI_CreateCompatibleDC($hDC) Global Const $DC_obj = _WinAPI_SelectObject($hDC_backbuffer, $hBitmap) Global Const $hGfxCtxt = _GDIPlus_GraphicsCreateFromHDC($hDC_backbuffer) GUISetOnEvent($GUI_EVENT_CLOSE, "_Exit") Local $hBitmap_new, $iFactor = 92 HotKeySet("{ESC}", "_Exit") Do $hBitmap_new = _GDIPlus_PixelateBitmap($hBmp, 32, 450, 250, 550, 450) _GDIPlus_GraphicsDrawImageRect($hGfxCtxt, $hBitmap_new, 0, 0, $iWidth, $iHeight) _GDIPlus_BitmapDispose($hBitmap_new) _WinAPI_BitBlt($hDC, 0, 0, $iWidth, $iHeight, $hDC_backbuffer, 0, 0, $SRCCOPY) Until Not Sleep(100) EndFunc ;==>Example Func _Exit() ;cleanup GDI+ resources _GDIPlus_GraphicsDispose($hGfxCtxt) _WinAPI_SelectObject($hDC, $DC_obj) _WinAPI_DeleteObject($hBitmap) _WinAPI_ReleaseDC($hGUI, $hDC) _GDIPlus_BitmapDispose($hBmp) _GDIPlus_Shutdown() GUIDelete($hGUI) Exit EndFunc ;==>_Exit Func _GDIPlus_PixelateBitmap($hBitmap, $iPixelate = 9, $iX = 0, $iY = 0, $iW = 0, $iH = 0, $bSmooth = 1) Local $iWidth = _GDIPlus_ImageGetWidth($hBitmap), $iHeight = _GDIPlus_ImageGetHeight($hBitmap) Local $iNewW = Round($iWidth / $iPixelate, 0) Local $iNewH = Round($iHeight / $iPixelate, 0) Local $hBitmap_scaled = _GDIPlus_BitmapCreateFromScan0($iNewW, $iNewH) Local $hCtxt = _GDIPlus_ImageGetGraphicsContext($hBitmap_scaled) Local $iInterpolation = 5 If $bSmooth Then $iInterpolation = $GDIP_INTERPOLATIONMODE_BILINEAR _GDIPlus_GraphicsSetInterpolationMode($hCtxt, $iInterpolation) _GDIPlus_GraphicsDrawImageRect($hCtxt, $hBitmap, 0, 0, $iNewW, $iNewH) _GDIPlus_GraphicsDispose($hCtxt) Local $hBitmap_pixelated = _GDIPlus_BitmapCreateFromScan0($iWidth, $iHeight) $hCtxt = _GDIPlus_ImageGetGraphicsContext($hBitmap_pixelated) Local $hRegion = _GDIPlus_RegionCreateFromRect(0, 0, $iWidth, $iHeight), $bRegion = False _GDIPlus_RegionCombineRect($hRegion, $iX, $iY, $iW, $iH, 1) If $iW > 0 And $iH > 0 Then _GDIPlus_GraphicsSetClipRegion($hCtxt, $hRegion) $bRegion = True EndIf _GDIPlus_RegionDispose($hRegion) _GDIPlus_GraphicsSetInterpolationMode($hCtxt, $GDIP_INTERPOLATIONMODE_NearestNeighbor) _GDIPlus_GraphicsDrawImageRectRect($hCtxt, $hBitmap_scaled, 0, 0, $iNewW, $iNewH, -$iPixelate, -$iPixelate, $iWidth + 2 * $iPixelate, $iHeight + 2 * $iPixelate) _GDIPlus_GraphicsDispose($hCtxt) _GDIPlus_BitmapDispose($hBitmap_scaled) If $bRegion Then Local $hBitmap_pixelated_region = _GDIPlus_ImageClone($hBitmap) $hCtxt = _GDIPlus_ImageGetGraphicsContext($hBitmap_pixelated_region) _GDIPlus_GraphicsDrawImageRectRect($hCtxt, $hBitmap_pixelated, $iX, $iY, $iW, $iH, $iX, $iY, $iW, $iH) _GDIPlus_GraphicsDispose($hCtxt) _GDIPlus_ImageDispose($hBitmap_pixelated) Return $hBitmap_pixelated_region EndIf Return $hBitmap_pixelated EndfuncDas binäre Bild ist nicht inkludiert!
-
Probiere es mal damit:
AutoIt
Alles anzeigen#include <GDIPlus.au3> #include <GUIConstantsEx.au3> Example() Func Example() _GDIPlus_Startup() ;initialize GDI+ Local Const $iWidth = 600, $iHeight = 100, $iBgColor = 0x303030 ;$iBgColor format RRGGBB Local $hGUI = GUICreate("GDI+ Example (" & @ScriptName & ")", $iWidth, $iHeight) ;create a test GUI GUISetBkColor($iBgColor, $hGUI) ;set GUI background color GUISetState(@SW_SHOW) Local $hGraphics = _GDIPlus_GraphicsCreateFromHWND($hGUI) ;create a graphics object from a window handle _GDIPlus_GraphicsSetSmoothingMode($hGraphics, $GDIP_SMOOTHINGMODE_HIGHQUALITY) ;sets the graphics object rendering quality (antialiasing) Local $hBrush = _GDIPlus_LineBrushCreate($iWidth / 2, 0, $iWidth / 2, $iHeight / 2, 0xFF0000FF, 0xFFFFFFFF, 3) ;create linear gradient brush _GDIPlus_GraphicsFillRect($hGraphics, 0, 0, $iWidth, $iHeight, $hBrush) Do Until GUIGetMsg() = $GUI_EVENT_CLOSE ;cleanup GDI+ resources _GDIPlus_BrushDispose($hBrush) _GDIPlus_GraphicsDispose($hGraphics) _GDIPlus_Shutdown() GUIDelete($hGUI) EndFunc ;==>Example -
Kleines Update: v1.15 wird jetzt als Widget angezeigt.
-
Ich habe bis jetzt keinen echten Geschwindigkeitsvorteil mit den nativen AutoIt Funktionen messen können. Ansonsten sehe ich auch keinen Nachteil x64 Programme zu erstellen.
x32 läuft auch auf x64 BS, aber eben nicht umgekehrt.
Bugs entstehen nicht, weil x64, sondern weil man nicht richtig getestet hat.

-
alpines : yep, liegt an _GDIPlus_EffectCreate().
-
Anscheinend läuft das Skript als x64 nur mit der AutoIt Version v3.3.14.3! Muss mal prüfen, woran das liegt.
Für einen Laien leider schwer zu verstehen
Ok, wenn du was nicht verstehst, dann einfach hier posten, und ich werde versuchen es zu erklären.
Allerdings läuft die Uhr schon beim Minutenbeginn um eine Sekunde zu schnell.
Mein Verständnis ist, dass die Sekunden um genau 60/58.5 schneller laufen, so dass die Uhr quasi zur vollen Zeit um eine 1.5 Sekunde vorne liegt und in diesen 1.5 Sekunden die Minute umspringt.
Ich habe das Skript jetzt aktualisiert.
-
Hier eine Implementierung der Schweizer Bahnhofsuhr gestaltet von Hans Hilfiker. Das ungewöhnlich an dieser Uhr ist, dass sie schneller läuft und zur vollen Minute eine 1,5 Sekunde wartet und dann erst der Minuten Zeiger weiter zieht (siehe Wikipedia).

Danke an Eukalyptus für Funktion _CreateBrushedAluminum.

Windows7+ wird benötigt und x64 läuft nur mit AutoIt Version 3.3.14.3, da sonst _GDIPlus_EffectCreate() abstürzt.
-
Ich vermute, dass die Unterschiede in der Größe der Bilder entstehen:
Code
Alles anzeigen1364.21582682873 x 1023.16187012155 682.107913414366 x 511.580935060774 2755.03740268449 x 2066.27805201337 1377.51870134225 x 1033.13902600669 688.759350671124 x 516.569513003343 2781.90259228807 x 2086.42694421605 1390.95129614404 x 1043.21347210803 695.475648072018 x 521.606736054013 2809.02975235046 x 2106.77231426285 1404.51487617523 x 1053.38615713142 702.257438087616 x 526.693078565712 2836.42143742358 x 2127.31607806768 1418.21071871179 x 1063.65803903384 709.105359355894 x 531.829019516921 2864.08022696951 x 2148.06017022714 1432.04011348476 x 1074.03008511357 716.020056742378 x 537.015042556784 2892.00872560348 x 2169.00654420261 1446.00436280174 x 1084.5032721013 723.002181400869 x 542.251636050652 2920.20956333905 x 2190.15717250429 1460.10478166952 x 1095.07858625214 730.052390834762 x 547.539293126071 2948.68539583585 x 2211.51404687689 1474.34269791793 x 1105.75702343845 737.171348958964 x 552.878511719223 2977.43890464965 x 2233.07917848724 1488.71945232483 x 1116.53958924362 744.359726162413 x 558.26979462181 3006.47279748484 x 2254.85459811363 1503.23639874242 x 1127.42729905681 751.61819937121 x 563.713649528407 3035.78980844945 x 2276.84235633709 1517.89490422473 x 1138.42117816855 758.947452112364 x 569.210589084273 3065.39269831263 x 2299.04452373447 1532.69634915632 x 1149.52226186724 766.348174578158 x 574.761130933618 3095.28425476458 x 2321.46319107344 1547.64212738229 x 1160.73159553672 773.821063691146 x 580.36579776836 3125.46729267913 x 2344.10046950935 1562.73364633956 x 1172.05023475467 781.366823169782 x 586.025117377337 3155.94465437875 x 2366.95849078406 1577.97232718938 x 1183.47924539203 788.986163594688 x 591.739622696016 3186.71920990227 x 2390.0394074267 1593.35960495113 x 1195.01970371335 796.679802475567 x 597.509851856675 1608.89692863755 x 1206.67269647816 804.448464318775 x 603.336348239081 402.224232159388 x 301.668174119541 1624.58576139109 x 1218.43932104332 812.292880695544 x 609.219660521658 406.146440347772 x 304.609830260829Btw, ich habe den Code aktualisiert. Nun kann man per Maus in beide Richtungen "fliegen".
-
Genial!


Die neuen Versionen sind unglaublich schnell (auf meinem Rechner mit 2560x1440 px Auflösung, bei beiden ca. 120 fps).
Und Deine Arkadia-Version gefällt mir besser als die JS-Version, weil sie nicht diesen Farbfilter darüberlegt.

Du brauchst also nicht in die Hände spucken und eine schnelle ASM Version coden.

Sehr schön, aber das Angucken macht einen auf Dauer irgendwie wahnsinnig.

Hmm, sollte noch einen Hinweis posten, dass das anschauen auf Dauer wahnsinnig machen kann, und ich dafür nicht haftbar gemacht werden kann.

-
Ok, ich habe die Trippel Bilder Technik implementiert -> siehe Post #1.
-
Wer Lust hat den JS Code zu analysieren, um zu sehen, warum in JS die Animation jeweils beim nächsten Bild nicht so aussieht, wie es oben aussieht, kann hier reinschauen:
https://codepen.io/Dunced/pen/ygNVeM
Habe ich per Zufall entdeckt.
Ich versuche gerade den Code zu verstehen...

Edit: Krass, die zeichnen 3 Bilder parallel, sodass nicht beim Wechsel zum nächsten Bild dies sichtbar wird. Clever
Demnächst kommt das Update! -
Alpha Blend kann man auch mit GDI+ hinbekommen.
Ich muss mal den JS Code genauer anschauen, wie dort die Implementierung ist.
xSunLighTx3 du kannst die Zeile
auskommentieren, dann wird's schneller.