Flash im Hintergrund wird gedrosselt

jpwfour

NoOb
ID: 303735
L
9 Dezember 2007
423
75
Bei Slots mit Autoplay scheint es manchmal zur Drosselung der Framerate zu kommen, sofern das Tab mit dem Slot im Hintergrund ist, oder ein Popupfenster mit dem Slot minimiert wurde (interessanterweise nicht, wenn das Popupfenster im Hintergrund ist).

Konkret: Bei einem Slot, der im Autoplay normalerweise alle 6 Sekunden ein Spiel macht, macht er im Hintergrund nur alle 60 Sekunden ein Spiel.
Könnte hinkommen, wenn der Slot mit 40fps erstellt wurde (scheint mir zwar etwas hoch, aber könnte ja sein), denn nach: https://help.adobe.com/en_US/as3/mobile/WS4bebcd66a74275c36cfb8137124318eebc6-8000.html gibt es seit Flash 10.1 eine Drosselung auf 4 fps unter bestimmten Umständen.

Bin ja selbst kein Freund von Ressourcenverschwendung, daher ist das erstmal vollkommen i.O., allerdings beschweren sich User, die mehrere Slots im Autoplay in mehreren Tabs laufen lassen, dass da nix mehr vorwärts geht ^^

Das "Signal" für Hintergrund/minimiert wird vmtl. vom Browser gesendet, kann man das iwie konfigurieren? Bisher wurde dieses Verhalten nur in Firefox und Opera berichtet.

Alternativ, was könnte ich den Slotentwicklern sagen, wie sie das umgehen können? Laut der Adobeseite kann man im Flash gar nicht erfahren, wann die Drosselung einsetzt, um dann sich eben darauf einzustellen :(
 
Das "Signal" für Hintergrund/minimiert wird vmtl. vom Browser gesendet, kann man das iwie konfigurieren? Bisher wurde dieses Verhalten nur in Firefox und Opera berichtet.
nein kann man nicht, aber es gab mal einen Patch um das in Flash abzuschalten, slotinferno hatte den glaube ich angeboten.

Alternativ, was könnte ich den Slotentwicklern sagen, wie sie das umgehen können?
Kannst du dann müssen diese aber den ganzen Slot umbauen:
Nicht einen Timer zum Ausführen der Events nutzen und dann die Aktion ausführen sondern bei jedem Timerevent die Zeitdifferenz der Uhr zwischen dem letzten und diesem Event messen und dann alle benötigten Aktionen durchführen. Dann läuft der Slot im Hintergrund weiterhin mit weniger FPS aber die Aktionen werden trotzdem nach der gleichen Zeitdauer ausgeführt, den Trick habe ich beim Maya Mystery für Xslots vor Ewigkeiten genutzt.
Wundert mich, dass da noch keiner auf die Idee gekommen ist ... oder auch nicht :roll:
 
...
Nicht einen Timer zum Ausführen der Events nutzen und dann die Aktion ausführen sondern bei jedem Timerevent die Zeitdifferenz der Uhr zwischen dem letzten und diesem Event messen und dann alle benötigten Aktionen durchführen. Dann läuft der Slot im Hintergrund weiterhin mit weniger FPS aber die Aktionen werden trotzdem nach der gleichen Zeitdauer ausgeführt, den Trick habe ich beim Maya Mystery für Xslots vor Ewigkeiten genutzt.
Wundert mich, dass da noch keiner auf die Idee gekommen ist ... oder auch nicht :roll:

Ah ok das macht Sinn. Mich wunderts schon, dass die Slots überhaupt noch in Flash erstellt werden, wenn Vergleichbares auch schon mit Javascript/HTML5/WebGL etc möglich sein soll ;)

Hm, da eh nicht alle Slots geändert werden können, halt nur noch in Popup Fenstern, das scheint in allen Browsern zu funktionieren, sofern man das Fenster nicht "aktiv" minimiert, kann man andere Fenster in Vordergrund holen und Flash läuft ungedrosselt weiter. Bis das dann in der nächsten Version auch noch "gefixt" wird.

Hätte erwartet, dass es da, gerade im FF, ne config Option zu gibt, aber glaube man traut den Leuten einfach nicht mehr zu, selbst Entscheidungen treffen zu dürfen :biggrin:
 
Eine Lösung

HTML:
<object ....
<param name="wmode" value="opaque" />
<embed wmode="opaque"

Damit scheint es in den meisten Browsern zu funktionieren, allerdings sicher nicht eine ethisch ganz korrekte Variante ...

Aber solange das die wirklich unnötigen und nervigen Elemente wie Werbebanner machen, und die Browserentwickler den Usern soviele Vorschriften machen wollen, und da man davon ausgehen kann, das ein Benutzer bewusst einen Slot startet, denke ich kann man das benutzen ;-)
 
Ich habe mich darüber auch geärgert und zum Autoplay-Hintergrundzocken den Chrome-Browser (ohne jegliche Add-Ons) ausprobiert. Aus reiner Usersicht kann ich das empfehlen, auch wenn das das Problem nicht löst...