'Unreal Engine 4 load Video in UMediaPlayer from link using c++(Low Level)
i am try to load video in media player using link but we can`t play video in low level(C++) but high level(BluePrint) is working fine here is my C++ coding please if you have any idea give me suggestion
UMediaTexture* MyTexture = NewObject<UMediaTexture>(this);
UStreamMediaSource* streamMediaSource = NewObject<UStreamMediaSource>(this);
UMediaPlayer* mediaPlayer = NewObject<UMediaPlayer>(this);
mediaPlayer->StreamUrl("https://docs.unrealengine.com/4.26/Attachments/WorkingWithMedia/MediaFramework/HowTo/StreamMediaSource/Infiltrator%20Demo.mp4");
mediaPlayer->OpenSource(streamMediaSource);
MyTexture->SetMediaPlayer(mediaPlayer);
MyTexture->UpdateResource();
mediaPlayer->Play();
Mesh->SetMaterial(0, UnrealMaterial);
DynamicMaterial = UMaterialInstanceDynamic::Create(UnrealMaterial, this);
if (DynamicMaterial != nullptr)
{
Mesh->SetMaterial(0, DynamicMaterial);
DynamicMaterial->SetScalarParameterValue(TEXT("EmissiveStrength"), 50);
DynamicMaterial->SetTextureParameterValue(TEXT("Param"), MyTexture);
}
and try also other way like:
UMaterialExpressionTextureSample* TextureExpression = NewObject<UMaterialExpressionTextureSample>(UnrealMaterial);
TextureExpression->Texture = MyTexture;
TextureExpression->SamplerType = SAMPLERTYPE_External;
UnrealMaterial->Expressions.Add(TextureExpression);
UnrealMaterial->BaseColor.Expression = TextureExpression;
and create Dynamic Material convert c++ file to Blueprint but video not load and other way we uses create blueprint and set texture sample uses in c++ file like
DynamicMaterial->SetScalarParameterValue(TEXT("EmissiveStrength"), 50);
DynamicMaterial->SetTextureParameterValue(TEXT("Param"), MyTexture);
please help me out
Solution 1:[1]
Here is some error in your code maybe. Try this.
UMediaTexture* MyTexture = NewObject<UMediaTexture>(this);
UStreamMediaSource* streamMediaSource = NewObject<UStreamMediaSource>(this);
UMediaPlayer* mediaPlayer = NewObject<UMediaPlayer>(this);
streamMediaSource->StreamUrl = "https://docs.unrealengine.com/4.26/Attachments/WorkingWithMedia/MediaFramework/HowTo/StreamMediaSource/Infiltrator%20Demo.mp4";
mediaPlayer->OpenSource(streamMediaSource);
MyTexture->SetMediaPlayer(mediaPlayer);
MyTexture->UpdateResource();
mediaPlayer->Play();
Sources
This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.
Source: Stack Overflow
| Solution | Source |
|---|---|
| Solution 1 | user18808878 |
