www.mikrocontroller.net

Forum: PC-Programmierung Phänomen: Software schneller, wenn Media-Player läuft!


Autor: hebel23 (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo allerseits,

ich hab hier gerade ein eigenartiges Phänomen.
Ich bin dabei eine MFC-Software (VC++7) zu schreiben, die in 
verschiedene MDI-Fenster relativ viele Zeichen und Grafiken ausgibt.

Nun habe ich zufällig entdeckt, dass die Software (die Routinen, die für 
die Anzeige zuständig sind) ca. um Faktor 6-8 schneller wird, wenn der 
Mediaplayer oder Quicktime im Hintergrund gestartet wird. Andere 
Software, die nicht unmittelbar mit Videoausgabe zu tun haben, wie 
IExplorer, Word etc. haben keinen Einfluss.

Mir scheint, als würden Mediaplayer und Co. eine Art "Highspeed" Modus 
in den Anzeigefunktionen (Grafikkartenhardware?) starten.

Hat jemand schon mal ähnliches festgestellt und wie kann man diese 
Funktionen in eigener Software benutzen?

Vielen Dank schonmal
Andreas

Autor: Jolli (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich glaube eher, daß der Mediaplayer, das Spionagetool Nummer 1 der 
Firma Microsoft, beim Aufruf der wiederzugebenden Datei der DRMs checkt 
und alle anderen Redmonter Spionagedienste abschaltet. In Summe wird 
dann de PC weniger gebremst!

Autor: Helmut (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Sehr unwahrscheinlich. Tritt dieses Phänomen auch auf, wenn du Winamp 
laufen lässt?

MfG, der Helmut

Autor: *.* (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Benutzt Du Timerfunktionen bzw Multithreading mit sleep o.ä.?
Mediaplayer schaltet wahrscheinlich die Timerauflösung von 10 auf 1 ms 
hoch.

Autor: Rufus Τ. Firefly (rufus) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Abhilfe: Machs selber, dazu lässt sich die Win32-API-Funktion 
timeBeginPeriod verwenden.

Einziges Argument: Gewünschte Timerauflösung in msec.
#include <mmsystem.h>

...

timeBeginPeriod(1);

Autor: Jens B. (sio2)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Selbiges Phänomen lässt sich beobachten mei Solitär. Wenn man fertig 
ist, und die Karten alleine "wegfliegen" maus bewegen, und es geht 
schneller ;)

Autor: hebel23 (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ja genau, ich benutze mehrere Threads und bremse den Anzeigethread mit 
"sleep" aus. Ist nicht besonders elegant - ich weiß - aber das Ganze ist 
noch in der Konzept-Phase. Das Runterschalten der Timerperiode auf 1ms 
klingt erst mal logisch. Ich werde das morgen gleich mal ausprobieren.

Vielen Dank für Eure schnelle Hilfe!

Grüße Andreas

Autor: Johnny (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Vielleicht klinge ich jetzt wie Deine Schwiegermutter, die alles besser 
weiss. Aber ein Sleep sollte man generell meiden wie die Pest.
Normalerweise arbeitet man mit Events, also Ereignissen und dann sollten 
solche Probleme gar nicht erst auftauchen.

Für Deinen Fall, wenn Du das GUI nur ab und zu mal neu aufbauen willst, 
würde ich eher einen Timer aufsetzen, dessen Event dann die gewünschten 
Funktionen/Methoden aufruft.

Autor: hebel23 (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Johnny,

da gebe ich Dir Recht. Wie gesagt, ich bin gerade am Konzeptionieren. 
Das wird dann alles noch bereinigt und optimiert, wenn das Grundgerüst 
steht.

Im Übrigen war die Funktion "timeBeginPeriod(1)" genau die, die den oben 
beschriebenen Effekt behoben hat. Also vielen Dank nochmal!


Gruß Andreas

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.