Ich habe heute die MPV-Player URUWorks und 3nity-media ausprobiert und bei Beispielprogramm Heaptrc eingeschaltet. Wenn man die Programme startet und ohne etwas spielen beendet, dann zeigt Heaptrc kein Speicherleck, sobald man ein Musik spielt es richtig stoppt, dann das Programm beendet, dann wird Speicherleck angezeigt. Beide verwenden unterschiedliche DLLs. Die Pascal-Units verwenden auch bei beiden beim beenden "Unload_dll",
Anschließend habe ich TMplayer heruntergeladen und das beispiel mit dem MPlayer.exe von Smplayer verwendent, das zeigte kein Speicherleck.
Ich habe auch Sombys Mediaplayer(ffmepg) angeschaut, dieser Player zeigte auch Speicherleck sobald man etwas spielte.
Kann es sein, dass ein Bibliothek, oder mehrere, von Ffmpeg- und Mpv-Projekt Speicherleck hat? Mpv soll ffmpeg-code verwenden. Oder zeigt Heaptrc in diesem Fall falsche Werte?
[gelöst]Heaptrc zeigt nicht frei gegebener Speicher bei mpv, ist es normal?
-
Soner
- Beiträge: 818
- Registriert: Do 27. Sep 2012, 00:07
- OS, Lazarus, FPC: Win10Pro-64Bit, Immer letzte Lazarus Release mit SVN-Fixes
- CPU-Target: x86_64-win64
- Wohnort: Hamburg
[gelöst]Heaptrc zeigt nicht frei gegebener Speicher bei mpv, ist es normal?
Zuletzt geändert von Soner am So 4. Okt 2026, 16:46, insgesamt 1-mal geändert.
- af0815
- Lazarusforum e. V.
- Beiträge: 7454
- Registriert: So 7. Jan 2007, 10:20
- OS, Lazarus, FPC: FPC fixes Lazarus fixes per fpcupdeluxe (win,linux,raspi)
- CPU-Target: 32Bit (64Bit)
- Wohnort: Burgenland
- Kontaktdaten:
Re: Heaptrc zeigt nicht frei gegebener Speicher bei mpv, ist es normal?
Ich habe es bei meinem Versuchen mit den Bibliotheken von LibGit gesehen. Du forderst Speicher aus Pascal über die Bibliothek an, wenn der nicht wieder exakt über die Bibliothek freigegeben wird, so wird dieser der Bibliothek zugerechnet, obwohl du im Pascalprogramm etwas nicht richtig gemacht hast. Weil die Speicherverwaltung nur in der Bibliothek getan wird. Du bekommst aus der Bibliothek ja nur Pointer. Damit wird an der Schnittstelle die Typenprüfung ausgehebelt, weil du kannst falsche Typen auf den Pointer casten.Soner hat geschrieben: So 4. Okt 2026, 11:02 Kann es sein, dass ein Bibliothek, oder mehrere, von Ffmpeg- und Mpv-Projekt Speicherleck hat? Mpv soll ffmpeg-code verwenden. Oder zeigt Heaptrc in diesem Fall falsche Werte?
Blöd kann man ruhig sein, nur zu Helfen muss man sich wissen (oder nachsehen in LazInfos/LazSnippets).
-
Soner
- Beiträge: 818
- Registriert: Do 27. Sep 2012, 00:07
- OS, Lazarus, FPC: Win10Pro-64Bit, Immer letzte Lazarus Release mit SVN-Fixes
- CPU-Target: x86_64-win64
- Wohnort: Hamburg
Re: Heaptrc zeigt nicht frei gegebener Speicher bei mpv, ist es normal?
@af0815
In diesem Fall werden die Dateien von MPV oder FFMPEG selber geladen.
Ich habe selber nötigste Header zusammen gebastelt um MPV-Simple-Beispiel zuverwenden. Heaptrc zeigt keinen Speicherleck also enthalten alle oben erwähnten Player Fehler.
Ich lade mein Beispielprogramm hoch. URUWorks-Demo enthält MPV-Dll, ihr könnt es nehmen um zu testen. Im Programm muss folgende Zeile angepasst werden:
StackArgs[1]:='c:\mymusik.mp3';
In diesem Fall werden die Dateien von MPV oder FFMPEG selber geladen.
Ich habe selber nötigste Header zusammen gebastelt um MPV-Simple-Beispiel zuverwenden. Heaptrc zeigt keinen Speicherleck also enthalten alle oben erwähnten Player Fehler.
Ich lade mein Beispielprogramm hoch. URUWorks-Demo enthält MPV-Dll, ihr könnt es nehmen um zu testen. Im Programm muss folgende Zeile angepasst werden:
StackArgs[1]:='c:\mymusik.mp3';
- Dateianhänge
-
mpvsimple-pub.zip- (3.47 KiB) 1-mal heruntergeladen