MCI Play

Fragen zu Grafik- & Soundproblemen und zur Spieleprogrammierung haben hier ihren Platz.
BSP
Beiträge: 201
Registriert: 01.02.2009 14:04

MCI Play

Beitrag von BSP »

Hallo Allerseits.
Nach langer Zeit habe ich mal wieder ein Problem.

Ich habe mir einen eigenen Video- Player mit den MCI Funktionen gebastelt.
Auf meinem normalen Monitor funktioniert auch alles.
Aber: Wenn ich den Player auf dem 2ten Desktop, der Fernseher, laufen lasse,
hängt die Funktion
mciSendString_("play TempMCI", 0, 0, 0)
sowie
mciSendString_("play TempMCI from " + Str(startpos), #Null, #Null, #Null)
sich manchmal auf. Sie friert einfach ein. Bleibt in ihr stecken. Keinerlei Fehlermeldung. Nichts.
Das aber auch nicht immer. Es scheint regelrecht zufällig zu geschehen.
Mal läuft das Video, mal nicht. Aber auch nicht alle.
Musikvideos oder längere Modelbahnvideos machen die Probleme,
kleinere Videos starten.
Das war aber auch nicht immer so. Ich weiss aber nicht, seit wann.
Hat Windows an der Funktionen geschraubt?
Oder mache ich etwas falsch, wo ich die Funktionen durcheinander bringen könnte?
Habt Ihr eine Idee? Ich verstehe das nicht.
Wie gesagt: Auf dem Hauptmonitor (Desktop 0) funktioniert alles.
Gruß und Dank: Bernd

So rufe ich die Funktionen auf:

Code: Alles auswählen

mciSendString_("close TempMCI", 0, 0, 0)
sType.s = GetMciFileTypes(sFile) ; Hat so bisher funktioniert
a = GetShortPathName_(sFile, sBuffer, Len(sBuffer))
  sFile = Left(sBuffer, a)
  open$ = "open " + Chr(34) + sFile + Chr(34) + " type " + sType + " alias TempMCI"
  fehler = mciSendString_(open$, #Null, #Null, #Null)
  mciSendString_("window TempMCI handle " + Str(GadgetID(#mci_gadget)), 0,0,0)
    ; So,
  ;mciSendString_("play TempMCI from " + Str(startpos), #Null, #Null, #Null)
  ; oder so
  mciSendString_("play TempMCI", 0, 0, 0)
PB 5.31 (x86) & (x64) Win10
Benutzeravatar
HeX0R
Beiträge: 3040
Registriert: 10.09.2004 09:59
Computerausstattung: AMD Ryzen 7 5800X
96Gig Ram
NVIDIA GEFORCE RTX 3060TI/8Gig
Win11 64Bit
G19 Tastatur
2x 24" + 1x27" Monitore
Glorious O Wireless Maus
PB 3.x-PB 6.x
Oculus Quest 2 + 3
Kontaktdaten:

Re: MCI Play

Beitrag von HeX0R »

mciSendString hat auch einen Rückgabewert, da würde ich mal die Fehlersuche beginnen.
Überhaupt sehe ich überhaupt kein Errorhandling in Deinem Codefragment, kannst ja fast froh sein, dass das zuverlässig funktioniert hatte.
BSP
Beiträge: 201
Registriert: 01.02.2009 14:04

Re: MCI Play

Beitrag von BSP »

Hallo HeXOR.
Deine Antwort ist leider wenig hilfreich.

Code: Alles auswählen

Debug "PLay Starten"
fehler = mciSendString_("play TempMCI from " + Str(0), 0, 0, 0)
If fehler : Debug fehler : EndIf
Debug "Play Gestartet"
 
Zur Fehlermeldung kommt es nicht mehr.
Die Funktion play bleibt in sich hängen und kommt nicht wieder raus.
Auch der "Task Manager" zeigt nichts an.
Hängt das Prg in meinen Befehlen meldet der sonst zumindest "Keine Rückmeldung"
Ach ja. In der Funktion "open" habe ich sehr wohl eine Fehlermeldung.
Und ich habe auf ähnliche Weise jeden einzelnen Schrit abgearbeitet.
Keine Meldungen. Nirgendwo. Nichts. Bis "play" läuft alles.
Gruß : Bernd
PB 5.31 (x86) & (x64) Win10
BSP
Beiträge: 201
Registriert: 01.02.2009 14:04

Re: MCI Play

Beitrag von BSP »

So.
Das muss scheinbar mit den Video- Codecs zu tun haben.
Bisher hatte ich K_Lite, auch Shark hatte ich versucht.
Beides hat nichts gebracht.
Nun habe ich Media Player Codec Pack installiert.
Ich hoffe, nichts falsches mit installiert zu haben.
Ich wurde von Netzwelt gewarnt, das dort Adware mit installiert werden könnte.
Auch mein AVR- Programm wollte die Installation abbrechen.
Ich habe es trotzdem gewagt in der Hoffnung, die Adware- Installation übersprungen zu haben.

Ergebniss: Nun läufts.

Tja, und nun? So lassen?
Habt Ihr Tips?

Gruß: Bernd
PB 5.31 (x86) & (x64) Win10
BSP
Beiträge: 201
Registriert: 01.02.2009 14:04

Re: MCI Play

Beitrag von BSP »

Tja, und doch nicht.
Nun stehen in einem anderen Programm die Vorschaubilder auf dem Kopf,
bei MP3 Dateien gibs ne Fehlermeldung, die aber klar ist,
MP3 haben keine Grafik und können also nicht auf ein Hintergrund gerendert werden, aber sie laufen.
Die Fehlermeldung kann ich also getrosst ignorieren.
Und, der Fehler mit der Play Funktion ist trotzdem wieder aufgetaucht. Aber seltener.

Habe nun also wieder auf K-Lite-Codecs zurück gestellt.
Die Vorschaubilder stehen immer noch Kopf, da muss ich also mal sehen, wo sich
"GetShellThumbnail(datei$, #PB_Any, "
die Bilder her holt, um das wieder richtig zu stellen.
Hat aber alles nichts mit meinem Problem zu tun. Die "Play" Funktion zickt immer noch. Manchmal. Im 2ten Desktop.
Nun werde ich also noch mal von vorne beginnen um zu sehen, wo ich window überfordere.
Ich hatte sogar noch mal eine 1,5 Jahre alte Version meines Programms getestet.
Weil ich da wusste, da lief auf jeden Fall noch alles. Hat aber auch nichts gebracht.
Auch die Version zickt heute.
Nun denn. Also auf ein neues.

Hat hier niemannd ein ähnliches Problem?
Es gibt doch so viele, die ebenfalls mit Videos und MCI herum experimentieren.
Hat niemannd sein Prg mal auf einem 2ten Desktop getestet?
Auf meinem Hauptdesktop läuft alles einwandfrei. Darum ist mir das auch lange nicht aufgefallen.

Gru?: Bernd
PB 5.31 (x86) & (x64) Win10
BSP
Beiträge: 201
Registriert: 01.02.2009 14:04

Re: MCI Play

Beitrag von BSP »

So. Das wird nun meine letzte Meldung hier sein.
Ausser dem Tip, ich soll mal die Fehlermeldungen beachten, kam hier ja nichts.
Als ob ich das nicht längst getan hätte. Ich habe 2 wochen an dem Problem geschraubt, bevor ich mich mal wieder hier ans Forum gewant habe.
Aber seis drum.

MP3s haben auch eine Grafik. Aber eben extra. Muss man nur wissen, wie man die richtigen rausfindet und extra aufruft.
Sonst hat man halt nur den Renderfenster- Hintergrund. Stört mich aber nicht und wies geht, wird mir OpenAI sicher sagen.

Dann sind es mp4 und webm Dateien, die das Problem verursachen. Aber auch nicht alle. Und nicht immer. Hä?
Scheint wohl damit zusammen zu hängen, welches Downloadprogramm man genutzt hat.
Wieso auf dem Hauptdesktop alles richtig läuft aber auf dem 2ten Desk nicht, verstehe ich immer noch nicht.
Nun habe ich eben alle mp4 zu mpg (mp2) umgewandelt, und nun läufts. Was solls.

Und wie ich meine Vorschaubilder nach dem ganzen hin und her wieder richtig herum bekomme, wird mir OpenAI vieleicht auch helfen.

Gruß: Bernd
PB 5.31 (x86) & (x64) Win10
Benutzeravatar
HeX0R
Beiträge: 3040
Registriert: 10.09.2004 09:59
Computerausstattung: AMD Ryzen 7 5800X
96Gig Ram
NVIDIA GEFORCE RTX 3060TI/8Gig
Win11 64Bit
G19 Tastatur
2x 24" + 1x27" Monitore
Glorious O Wireless Maus
PB 3.x-PB 6.x
Oculus Quest 2 + 3
Kontaktdaten:

Re: MCI Play

Beitrag von HeX0R »

MP3s beinhalten nicht nur Bilder, sondern auch Album Infos, Interpreten, usw.
Das Ganze ist in sog. ID3Tags untergebracht, hier hatte ich vor Jahren mal was dazu gebastelt.

Um nochmal auf Dein Problem zu sprechen zu kommen und was evtl. erklärt, wieso meine Antwort war, wie sie war:
Hättest Du die Zeit, die Du in Deine ganzen Postings investiert hast, in Deinen Beispielcode investiert, hättest Du schlagartig viel mehr helfende Hände gefunden und vermutlich wäre das Problem sogar behoben worden.
Wenn da aber ein Code steht, der so gar nicht funktionieren kann (was ist z.B. GetMciFileTypes()?) und man erst noch mehr Zeit aufwenden müsste, um den lauffähig zu machen, haben die meisten schon keine Lust mehr und widmen sich dem nächsten Problem.
Alles was Du mit so einem Codefetzen erwarten konntest, war, dass jemand reinspringt und sagt "ach ja, das Problem kenne ich".
Na ja, kannte offensichtlich aber niemand.

Hättest Du einen kleinen Beispielcode gepostet (der den Effekt zeigt), den man so wie er ist nimmt, ihn in die IDE klatscht, F5 drückt und dann mit ihm spielen kann, wäre Dein Problem vermutlich schon Geschichte.

Und nein, Dein Beispielcode hatte keinerlei Fehlerbehandlung (ich denke, das meintest Du mit Fehlermeldung).
Nur weil man den Rückgabewert einer Funktion in eine Variable packt, heißt noch lange nicht, dass man den auch betrachtet.

Bei Deinem "echten" Code kann das ja ganz anders sein, aber alles was Du uns vor den Latz geworfen hattest war dieser Codefetzen.
Und den hatte ich entsprechend kommentiert.
BSP
Beiträge: 201
Registriert: 01.02.2009 14:04

Re: MCI Play

Beitrag von BSP »

Alles was Du mit so einem Codefetzen erwarten konntest, war, dass jemand reinspringt und sagt "ach ja, das Problem kenne ich".
Hallo HeXOR.
Naja. Vieleicht habe ich tatsächlich ähnliches erhofft.
Dann hätte ich fragen können was Diejenigen gemacht haben.
Mit "kleinen Code- Fetzen habe ich selber schon herum gespielt. Und da taucht das Problem nicht auf.
Sogar kleinere mp4s laufen einwandfrei. Es muss an den Codecpacks liegen.
Ich habe jetzt soviel mit dem Codec- wechseln versucht. Inzwischen laufen sogar meine mp2 nicht mehr.

Ich versuche nun mit der Hilfe von openAI auf andere Systeme um zu steigen.
Zunächst probieren wir ffmpeg.
Einen ersten Film haben wir schon zum laufen bekommen.
Nunrätzelt openAI, wie man ein Film auf ein Canvas gerendert bekommt.
Aber openAI scheint da auch aufgeben zu wollen und wir versuchen morgen mal was anderes.
Für heute schwindet nun auch meine Konzentration.

Gruß: Bernd

Ach ja. PS.
GetMciFileTypes ruft eine procedure auf, die die Typen verschiedener Files ermittelt. mp4 ergibt z.B. "MPEGVIDEO"
PB 5.31 (x86) & (x64) Win10
Benutzeravatar
dige
Beiträge: 1235
Registriert: 08.09.2004 08:53

Re: MCI Play

Beitrag von dige »

Es gibt ja einige MCI Alternativen. Neben VLC lib und Direct2D ist mein persönlicher Favorit der MediaPlayer.
Weiss leider nicht mehr, woher ich den Quellcode habe und zum posten ist der zu groß. Aber hier unter dem Link:

https://u.pcloud.link/publink/show?code ... b9V4n1zYlk
"Papa, ich laufe schneller - dann ist es nicht so weit."
BSP
Beiträge: 201
Registriert: 01.02.2009 14:04

Re: MCI Play

Beitrag von BSP »

Hallo dige.
Danke für die Tips. Die VLC.lib hat openAi auch vorgeschlagen. Die ist also als nächstes dran.
K-Lite bringt auch einen Player mit. Der tut seinen Dienst.
Aber: Nun wird was persönliches zwischen dem PC und mir. Jetzt will ich es wissen.
Inzwischen stimmen meine Vorschaubilder wieder. War keine wilde Sache. Nur die Codec- Packs nochmal neu Installieren.
Dafür streicken in zwei anderen Programmen nun die Ballon- Tips. Und die funktionierten bisher seit Jahren.
Aber das kann ja wohl nicht mit den Codecs zu tun haben. Oder?
Hat Window nicht gerade neu geupdatet?
Oh man. Gestern war ich tatsächlich kurz davor, das die Tastatur das fliegen lernt.

Gruß: Bernd

Ach ja. Und die zei Programme mit den Ballon-Tips haben nichts mit Viedeo oder so zu tun.
Ein Kalender und mein Haushaltsbuch.
PB 5.31 (x86) & (x64) Win10
Antworten