Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Multimedia (https://www.delphipraxis.net/16-multimedia/)
-   -   TMediaplayer und HTTP Livestreams unter IOS (https://www.delphipraxis.net/178341-tmediaplayer-und-http-livestreams-unter-ios.html)

CHackbart 2. Jan 2014 19:07

TMediaplayer und HTTP Livestreams unter IOS
 
Komischerweise hat die FMX TMediaplayer-Klasse ein Problem mit Streams. Neben dem offensichtlichen Problem in
class function TMediaCodecManager.CreateFromFile(const AFileName: string): TMedia; (FMX.Media.Pas) braucht man bei IOS nur:

im Konstruktor constructor TAVMedia.Create(const AFileName: string); folgendes abzuändern:

if FileExists(AFileName) then
URL := TNSUrl.Wrap(TNSUrl.OCClass.fileURLWithPath(NSStr(A bsoluteFileName)))
else
URL := TNSUrl.Wrap(TNSUrl.OCClass.URLWithString(NSStr(Abs oluteFileName)));

FPlayerItem := TAVPlayerItem.Wrap
(TAVPlayerItem.OCClass.playerItemWithURL(URL));


und in procedure TAVMedia.UpdateMediaFromControl; folgende zu ersetzen:

Form := TCommonCustomForm(Control.Root.GetObject);
if FPlayerItem.status=AVPlayerItemStatusReadyToPlay then
P := GetVideoSize
else
P := Control.AbsoluteRect.Size;


Letzteres ist notwendig, da Streams ja noch geladen werden müssen und die Videomaße zu dem Zeitpunkt nicht bekannt sind. Leider gibt es aber noch ein Problem mit dem Wechsel zwischen Landscape und Portrait Modus. Da erfolgt keine Anpassung des Videos an die Anzeige.

Christian


Alle Zeitangaben in WEZ +1. Es ist jetzt 04:55 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz