Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
56 changes: 56 additions & 0 deletions Build/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,56 @@
## Manual requirements installation for VlcMedia

Execute any of the given stepts from the root of your project directory.

**Unbutu 18.04**

```
sudo add-apt-repository ppa:videolan/master-daily
sudo apt-get update
sudo apt install vlc
sudo ln -sf /usr/lib/x86_64-linux-gnu/libvlc.so.5 /usr/lib/x86_64-linux-gnu/libvlc.so
sudo ln -sf /usr/lib/x86_64-linux-gnu/libvlccore.so.9 /usr/lib/x86_64-linux-gnu/libvlccore.so
mkdir -p ./Plugins/VlcMedia/ThirdParty/vlc/Linux/
ln -sf /usr/lib/x86_64-linux-gnu/ ./Plugins/VlcMedia/ThirdParty/vlc/Linux/x86_64-unknown-linux-gnu
```

_Ubuntu 18.04 is now done no further steps are required_

**Ubuntu 16.04**

`sudo apt install live-media yasm cvs gperf ragel autoconf automake cmake make pkgconf gcc unzip git subversion apache-ant flex gettext curl libtool libcaca lua52 xcb-util-keysyms qtmir-desktop qtbase5-private-dev`

**Arch**

`sudo pacman -S base-devel git pkg-config autoconf automake live-media yasm cvs gperf ragel cmake pkgconf gcc unzip git subversion ant flex gettext curl libtool libcaca lua52 xcb-util-keysyms`

`export CPATH=/usr/include/liveMedia/:$CPATH`

**General**

```
NUMCORES=$(nproc --all)
installDir=$PWD
installDir+="/Plugins/VlcMedia/ThirdParty/vlc/Linux/x86_64-unknown-linux-gnu/"
git clone git://github.com/google/protobuf.git
cd protobuf
./autogen.sh
./configure
make -j $NUMCORES
sudo make install
sudo ldconfig

git clone git://git.videolan.org/vlc.git
cd vlc
./bootstrap
cd contrib
mkdir native
cd native
../bootstrap
make -j $NUMCORES
cd ../../
./configure --disable-srt --disable-dca --disable-libass --disable-css --disable-upnp --disable-chromaprint --disable-freetype --prefix=$installDir
make -j $NUMCORES
make install
```

2 changes: 1 addition & 1 deletion Source/VlcMedia/Private/Player/VlcMediaAudioSample.h
Original file line number Diff line number Diff line change
Expand Up @@ -118,7 +118,7 @@ class FVlcMediaAudioSample
return SampleRate;
}

virtual FTimespan GetTime() const override
virtual FMediaTimeStamp GetTime() const override
{
return Time;
}
Expand Down
12 changes: 9 additions & 3 deletions Source/VlcMedia/Private/Player/VlcMediaPlayer.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -255,10 +255,16 @@ FString FVlcMediaPlayer::GetInfo() const
}


FName FVlcMediaPlayer::GetPlayerName() const
//FName FVlcMediaPlayer::GetPlayerName() const
//{
// static FName PlayerName(TEXT("VlcMedia"));
// return PlayerName;
//}

FGuid FVlcMediaPlayer::GetPlayerPluginGUID() const
{
static FName PlayerName(TEXT("VlcMedia"));
return PlayerName;
static FGuid PlayerPluginGUID(0x6b44ddaf, 0x35784afc, 0x891e074d, 0xad4db8df);
return PlayerPluginGUID;
}


Expand Down
3 changes: 2 additions & 1 deletion Source/VlcMedia/Private/Player/VlcMediaPlayer.h
Original file line number Diff line number Diff line change
Expand Up @@ -54,7 +54,8 @@ class FVlcMediaPlayer
virtual IMediaCache& GetCache() override;
virtual IMediaControls& GetControls() override;
virtual FString GetInfo() const override;
virtual FName GetPlayerName() const override;
// virtual FName GetPlayerName() const override;
virtual FGuid GetPlayerPluginGUID() const override;
virtual IMediaSamples& GetSamples() override;
virtual FString GetStats() const override;
virtual IMediaTracks& GetTracks() override;
Expand Down
2 changes: 1 addition & 1 deletion Source/VlcMedia/Private/Player/VlcMediaTextureSample.h
Original file line number Diff line number Diff line change
Expand Up @@ -145,7 +145,7 @@ class FVlcMediaTextureSample
}
#endif //WITH_ENGINE

virtual FTimespan GetTime() const override
virtual FMediaTimeStamp GetTime() const override
{
return Time;
}
Expand Down
6 changes: 3 additions & 3 deletions Source/VlcMedia/Private/Shared/VlcMediaUtils.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -31,13 +31,13 @@ namespace VlcMedia
case ELibvlcEventType::MediaPlayerEncounteredError: return TEXT("Player Encountered Error");
case ELibvlcEventType::MediaPlayerTimeChanged: return FString::Printf(TEXT("Player Time Changed: %s"), *FTimespan::FromMilliseconds(Event->Descriptor.MediaPlayerTimeChanged.NewTime).ToString());
case ELibvlcEventType::MediaPlayerPositionChanged: return FString::Printf(TEXT("Position Changed: %f"), Event->Descriptor.MediaPlayerPositionChanged.NewPosition);
case ELibvlcEventType::MediaPlayerSeekableChanged: return FString::Printf(TEXT("Player Seekable Changed: %s"), Event->Descriptor.MediaPlayerSeekableChanged.new_seekable ? *GTrue.ToString() : *GFalse.ToString());
case ELibvlcEventType::MediaPlayerPausableChanged: return FString::Printf(TEXT("Player Pausable Changed: %s"), Event->Descriptor.MediaPlayerPausableChanged.NewPausable ? *GTrue.ToString() : *GFalse.ToString());
case ELibvlcEventType::MediaPlayerSeekableChanged: return FString::Printf(TEXT("Player Seekable Changed: %s"), Event->Descriptor.MediaPlayerSeekableChanged.new_seekable ? *FCoreTexts::Get().True.ToString() : *FCoreTexts::Get().False.ToString());
case ELibvlcEventType::MediaPlayerPausableChanged: return FString::Printf(TEXT("Player Pausable Changed: %s"), Event->Descriptor.MediaPlayerPausableChanged.NewPausable ? *FCoreTexts::Get().True.ToString() : *FCoreTexts::Get().False.ToString());
case ELibvlcEventType::MediaPlayerTitleChanged: return FString::Printf(TEXT("Player Title Changed: %s"), Event->Descriptor.MediaPlayerTitleChanged.NewTitle);
case ELibvlcEventType::MediaPlayerSnapshotTaken: return TEXT("Player Snapshot Taken");
case ELibvlcEventType::MediaPlayerLengthChanged: return FString::Printf(TEXT("Player Length Changed: %i"), Event->Descriptor.MediaPlayerLengthChanged.NewLength);
case ELibvlcEventType::MediaPlayerVout: return FString::Printf(TEXT("Player Vout: %i"), Event->Descriptor.MediaPlayerVout.NewCount);
case ELibvlcEventType::MediaPlayerScrambledChanged: return FString::Printf(TEXT("Player Scambled Changed: %s"), Event->Descriptor.MediaPlayerScrambledChanged.NewScrambled ? *GTrue.ToString() : *GFalse.ToString());
case ELibvlcEventType::MediaPlayerScrambledChanged: return FString::Printf(TEXT("Player Scambled Changed: %s"), Event->Descriptor.MediaPlayerScrambledChanged.NewScrambled ? *FCoreTexts::Get().True.ToString() : *FCoreTexts::Get().False.ToString());
case ELibvlcEventType::MediaPlayerESAdded: return TEXT("Player ES Added");
case ELibvlcEventType::MediaPlayerESDeleted: return TEXT("Player ES Deleted");
case ELibvlcEventType::MediaPlayerESSelected: return TEXT("Player ES Selected");
Expand Down
2 changes: 1 addition & 1 deletion Source/VlcMedia/Private/VlcMediaModule.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -202,7 +202,7 @@ class FVlcMediaModule
// forward message to log
ANSICHAR Message[1024];

FCStringAnsi::GetVarArgs(Message, ARRAY_COUNT(Message), ARRAY_COUNT(Message) - 1, Format, Args);
FCStringAnsi::GetVarArgs(Message, UE_ARRAY_COUNT(Message), Format, Args);

switch (Level)
{
Expand Down
6 changes: 6 additions & 0 deletions Source/VlcMediaFactory/Private/VlcMediaFactoryModule.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -108,6 +108,12 @@ class FVlcMediaFactoryModule
return PlayerName;
}

virtual FGuid GetPlayerPluginGUID() const override
{
static FGuid PlayerPluginGUID(0x6b44ddaf, 0x35784afc, 0x891e074d, 0xad4db8df);
return PlayerPluginGUID;
}

virtual const TArray<FString>& GetSupportedPlatforms() const override
{
return SupportedPlatforms;
Expand Down
2 changes: 1 addition & 1 deletion VlcMedia.uplugin
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@
"CreatedBy" : "Epic Games Inc",
"CreatedByURL" : "http://epicgames.com",
"DocsURL" : "https://github.com/ue4plugins/VlcMedia",
"EngineVersion" : "4.20.0",
"EngineVersion" : "4.26.0",
"Description" : "Implements a media player using the Video LAN Codec (libvlc).",
"Category" : "Media Players",
"EnabledByDefault" : true,
Expand Down