AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Multimedia Delphi Audio Resource mit Windows Mediaplayer wiedergeben

Audio Resource mit Windows Mediaplayer wiedergeben

Ein Thema von BlackSnag · begonnen am 21. Feb 2017 · letzter Beitrag vom 3. Mär 2017
Antwort Antwort
Seite 1 von 2  1 2   
TiGü

Registriert seit: 6. Apr 2011
Ort: Berlin
3.075 Beiträge
 
Delphi 10.4 Sydney
 
#1

AW: Audio Resource mit Windows Mediaplayer wiedergeben

  Alt 21. Feb 2017, 08:32
Bringt es was, wenn du _ResourceStream.Position := 0; vor dem Abspielen setzt?
  Mit Zitat antworten Zitat
TiGü

Registriert seit: 6. Apr 2011
Ort: Berlin
3.075 Beiträge
 
Delphi 10.4 Sydney
 
#2

AW: Audio Resource mit Windows Mediaplayer wiedergeben

  Alt 21. Feb 2017, 08:46
Moment mal, an welcher Stelle erfolgt denn die Verknüpfung zwischen den Resourcestream und dem MediaPlayer?
Zeig doch mal bitte deinen richtigen und gesamten Quelltext.
  Mit Zitat antworten Zitat
Benutzerbild von BlackSnag
BlackSnag

Registriert seit: 21. Feb 2017
5 Beiträge
 
Delphi 10.1 Berlin Starter
 
#3

AW: Audio Resource mit Windows Mediaplayer wiedergeben

  Alt 21. Feb 2017, 09:53
Wie oben schon erwähnt komm ich die beiden einfach nicht auf einen gemeinsamen Nenner.

deswegen gibt es auch noch keine Zuweisung.

Und wegen dem Quelltext.
Das ist eigentlich der Ganze Quelltext, ich hab nur die Funktionen zum Lautsterke regeln und zum beenden weckgelassen, weil die mit dem Problem Garnichts zu tun haben können.
Wenn Rechtschreibfehler drin sind tut es mir leid.
  Mit Zitat antworten Zitat
EWeiss
(Gast)

n/a Beiträge
 
#4

AW: Audio Resource mit Windows Mediaplayer wiedergeben

  Alt 21. Feb 2017, 10:09
Du benötigst einen FileStream um die Datei abspielen zu können.
Das bedeutet du musst vorher die Datei aus der Resource extrahieren auf die Platte speichern anschließend
kannst du die Datei zum Mediaplayer Assign(Zuordnen) und abspielen.

Delphi-Quellcode:
var
  fname: string;
  fStream: TFileStream;
...
fname := ExtractFileDir(Paramstr(0))+ Name;
_ResourceStream := TResourceStream.Create(HInstance, Name, RT_RCDATA);
try
  fStream := TFileStream.Create(fname, fmCreate);
  try
    fStream.CopyFrom(_ResourceStream, 0);
  finally
    fStream.Free;
  end;
finally
  _ResourceStream.Free;
end;

MediaPlayer1.Close;
MediaPlayer1.FileName:= fname;
MediaPlayer1.Open;

end;
Davon ab
_wmpMediaPlayer.Url := AudioFileName;

ist falsch.
_wmpMediaPlayer.FileName wäre korrekt.

gruss

Geändert von EWeiss (21. Feb 2017 um 11:29 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von BlackSnag
BlackSnag

Registriert seit: 21. Feb 2017
5 Beiträge
 
Delphi 10.1 Berlin Starter
 
#5

AW: Audio Resource mit Windows Mediaplayer wiedergeben

  Alt 21. Feb 2017, 10:18
Das würde Funktionieren.

Leider soll das Programm auch laufen können wenn du keine Schreibrechte hast.
Spätesten an diesem Punkt hätte man Probleme.

Trotzdem danke für die Idee.
Wenn Rechtschreibfehler drin sind tut es mir leid.
  Mit Zitat antworten Zitat
EWeiss
(Gast)

n/a Beiträge
 
#6

AW: Audio Resource mit Windows Mediaplayer wiedergeben

  Alt 21. Feb 2017, 10:29
Das würde Funktionieren.

Leider soll das Programm auch laufen können wenn du keine Schreibrechte hast.
Spätesten an diesem Punkt hätte man Probleme.

Trotzdem danke für die Idee.
Dann verwende keinen MediaPlayer sondern MMSystem.

Delphi-Quellcode:
uses mmsystem;

procedure TForm1.Button1Click(Sender: TObject);
var
  hFind, hRes: THandle;
  Song: PChar;
begin
  hFind := FindResource(HInstance, 'MainSongNameInDerResource', 'WAVE');
  if hFind <> 0 then
  begin
    hRes := LoadResource(HInstance, hFind);
    if hRes <> 0 then
    begin
      Song := LockResource(hRes);
      if Assigned(Song) then
        SndPlaySound(Song, snd_ASync or snd_Memory);
      UnlockResource(hRes);
    end;
    FreeResource(hFind);
  end;
end;
  Mit Zitat antworten Zitat
TiGü

Registriert seit: 6. Apr 2011
Ort: Berlin
3.075 Beiträge
 
Delphi 10.4 Sydney
 
#7

AW: Audio Resource mit Windows Mediaplayer wiedergeben

  Alt 21. Feb 2017, 12:18
Das würde Funktionieren.

Leider soll das Programm auch laufen können wenn du keine Schreibrechte hast.
Spätesten an diesem Punkt hätte man Probleme.

Trotzdem danke für die Idee.
Speichere das doch einfach ins Temp-Verzeichnis (System.IOUtils.TPath.GetTempPath) und lösche es hinterher.
Es ist völlig legitim, dass portable Programme für derartige Zwecke etwas irgendwohin zwischenspeichern und hinterher wieder aufräumen.
  Mit Zitat antworten Zitat
Benutzerbild von BlackSnag
BlackSnag

Registriert seit: 21. Feb 2017
5 Beiträge
 
Delphi 10.1 Berlin Starter
 
#8

AW: Audio Resource mit Windows Mediaplayer wiedergeben

  Alt 27. Feb 2017, 07:54
Danke für die Hilfe.
Funktioniert jetzt wunderbar.

Grüße

BlackSnag
Wenn Rechtschreibfehler drin sind tut es mir leid.
  Mit Zitat antworten Zitat
t.roller
(Gast)

n/a Beiträge
 
#9

AW: Audio Resource mit Windows Mediaplayer wiedergeben

  Alt 21. Feb 2017, 11:21
Davon ab
_wmpMediaPlayer.Url := AudioFileName; ist falsch.
_wmpMediaPlayer.FileName wäre korrekt.

gruss
TWindowsMediaPlayer aus WMPLib_TLB.pas ist "etwas" anders und hat andere Befehle als der eingebaute TMediaPlayer.
  Mit Zitat antworten Zitat
EWeiss
(Gast)

n/a Beiträge
 
#10

AW: Audio Resource mit Windows Mediaplayer wiedergeben

  Alt 21. Feb 2017, 11:23
Davon ab
_wmpMediaPlayer.Url := AudioFileName; ist falsch.
_wmpMediaPlayer.FileName wäre korrekt.

gruss
TWindowsMediaPlayer aus WMPLib_TLB.pas ist "etwas" anders und hat andere Befehle als der eingebaute TMediaPlayer.
OK.. Ist ja kein Beinbruch.
Destotrotz hat eine Datei auf der Platte nicht's mit ner URL gemein.

gruss
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2   

 
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 23:10 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz