logo

Live Production Software Forums


Welcome Guest! To enable all features please Login or Register.

Notification

Icon
Error

Options
Go to last post Go to first unread
Hazza  
#1 Posted : Tuesday, August 13, 2024 11:16:53 AM(UTC)
Hazza

Rank: Newbie

Groups: Registered
Joined: 8/30/2023(UTC)
Posts: 4
United Kingdom

Hello,

I would like to be able to decode videos using my gpu rather than using my cpu for it. As far as I can tell, there isn't any way to decode a video using gpu. If the concern is that users might misuse the feature and put a bunch of videos on hardware decoding, maybe it could be included as an "advanced" setting or something.

Currently, running a broadcast with multiple videos (3 or 4 .mp4s that are mostly under 100mb in size) pins my R9 5950x at 95% - 100% usage and makes broadcasting (even with hardware encoding) pretty much impossible due to the lag.

^ I had about 85 inputs, with a few virtual inputs based on those videos

My solution was to use my laptop to run multiple SRT feeds containing the videos I'd like to use and then to use hardware decoding to decode the SRT feeds and it worked flawlessely and drastically reduced the load on my cpu, but of course I would not like to run an SRT feed every time I want to use more than a couple videos in my project.

Thanks
jameslex  
#2 Posted : Wednesday, September 4, 2024 1:05:40 AM(UTC)
jameslex

Rank: Advanced Member

Groups: Registered
Joined: 1/7/2022(UTC)
Posts: 33
United States
Location: Texas

Thanks: 5 times
Was thanked: 5 time(s) in 4 post(s)
+1.

With Nvidia increasing GPUs to handle 8 encodes, this makes a lot of sense.
jameslex  
#3 Posted : Wednesday, September 4, 2024 1:08:21 AM(UTC)
jameslex

Rank: Advanced Member

Groups: Registered
Joined: 1/7/2022(UTC)
Posts: 33
United States
Location: Texas

Thanks: 5 times
Was thanked: 5 time(s) in 4 post(s)
Off-topic, but you wouldn't happen to be the Hazza from Rocket League, would you?
Hazza  
#4 Posted : Wednesday, September 4, 2024 7:58:01 PM(UTC)
Hazza

Rank: Newbie

Groups: Registered
Joined: 8/30/2023(UTC)
Posts: 4
United Kingdom

Originally Posted by: jameslex Go to Quoted Post
Off-topic, but you wouldn't happen to be the Hazza from Rocket League, would you?


That is me! Hello :)
nikosman88  
#5 Posted : Thursday, September 5, 2024 6:54:46 AM(UTC)
nikosman88

Rank: Advanced Member

Groups: Registered
Joined: 12/24/2021(UTC)
Posts: 496
Greece
Location: athens

Thanks: 121 times
Was thanked: 70 time(s) in 66 post(s)
+1
I would like to be able to have a tick box like OBS to enable/disable the hw decode of any media source
RichShumaker  
#6 Posted : Sunday, September 22, 2024 6:45:06 AM(UTC)
RichShumaker

Rank: Advanced Member

Groups: Registered
Joined: 4/4/2016(UTC)
Posts: 235
United States
Location: Not Los Angeles CA

Thanks: 86 times
Was thanked: 28 time(s) in 23 post(s)
+1

I have been trying to figure out why videos can be an issue in my production now I think I know.

I use potentially 3-5(I would use more) video simultaneously. So lists becomes difficult as the videos are triggered on demand and not in any order that would work in a list
nikosman88  
#7 Posted : Wednesday, September 25, 2024 10:27:50 AM(UTC)
nikosman88

Rank: Advanced Member

Groups: Registered
Joined: 12/24/2021(UTC)
Posts: 496
Greece
Location: athens

Thanks: 121 times
Was thanked: 70 time(s) in 66 post(s)
I realised that if we do this in reverse -->remove *.mp4 that is there by default in new vmix versions https://www.vmix.com/kno...for-mp4-videos-to-ffmpeg mp4 videos use windows decoder (im using win10 22h2) and also we need vmix video renderer from VMR9 to EVR and leads videos to be decode by GPU!!! A GTX generation GPU can do decode easy 8 1080 videos! Of course there are limits (for example if we do a lot of SRT hw decodes,maybe the GPU doesn't have any other space to do also and mp4 video decodes) but..YESSS CPU is not stressed anymore when playing videos.
I dont know overall stabillity or compatibillity or other side effect (1st day of use today) but this is game changer if work ok! I would like to test and see if this EVR mode has any weird effect as my search leads that back in 201x and windows 7 this option was helpful in some situations https://forums.vmix.com/...56-Video-Playback-Issues
Vmix team many thanks for this!!
Edit
The negative effects that i found until now.
1. mp4 horizontal videos un-fortunatelly doesnt have correct aspect ratio in 1920*1080 vmix preset. This was present until vmix24 and from vmix25 and up every video has correct aspect ratio. But when we change this setting to enable the hw decoding,we loose this function
2. i download a mp4 video from f/b with the mediahuman download tool and in vmix plays only audio. Mp4 videos downloaded same way from youtube,play ok
Can i live with these issues,until vmix team do a more officially support? Yes because my cpu for my workflow is more precious
mavik  
#8 Posted : Friday, September 27, 2024 10:40:42 PM(UTC)
mavik

Rank: Advanced Member

Groups: Registered
Joined: 4/23/2017(UTC)
Posts: 1,210
Man
Location: Germany

Thanks: 3 times
Was thanked: 168 time(s) in 150 post(s)
With the new GPU firmware you can increase the GPU mem.

This could help.
Another approach is to re-render in I-frame only. This is the most neutral to the CPU.
Have you tried NDI with instead a SRT. Might be another alternative.
Also this could help.
https://www.vmix.com/kno...n-nvidia-optimus-laptops
nikosman88  
#9 Posted : Saturday, September 28, 2024 1:04:29 AM(UTC)
nikosman88

Rank: Advanced Member

Groups: Registered
Joined: 12/24/2021(UTC)
Posts: 496
Greece
Location: athens

Thanks: 121 times
Was thanked: 70 time(s) in 66 post(s)
Originally Posted by: mavik Go to Quoted Post
With the new GPU firmware you can increase the GPU mem.

This could help.
Another approach is to re-render in I-frame only. This is the most neutral to the CPU.
Have you tried NDI with instead a SRT. Might be another alternative.
Also this could help.
https://www.vmix.com/kno...n-nvidia-optimus-laptops

Hello. There is some situations where NDI is not helpful. For example im running virtualsets from https://3dvirtualset.com/vMix-1.html when a virtualset has 3 or more "Screens" in which we can put videos to play in a loop this loads the cpu and personally i have problem with this as my i7 10th gen doesnt be able to handle them while im trying to multicorder pgm and my 2 cameras at 1080 50p.
To NDI them from another pc doesnt solve the problem because NDI also uses cpu for processing and gpu decode sits to 0%. Also creates for me another problem because if i use my 1gbit network for 3-4 NDI streams is at least 50% load in the LAN and then if need while production to transfer files from montage pc to vmix pc or even play via network NDI starts to lag. 4-5 SRT streams behave better in my LAN and i can also transfer files same time.
I changed my GPU from GTX 1070ti to quadro p4000 that also doesnt support resizeable bar but i see an overall better performance in vmix. But even if i had the budget for a 4080/4090 this will also not usefull while decoding videos inside vmix as it will not be used
So the workraround i found is the best temporary solution for me now. Also i discovered something else interesting. I see that vmix when we do an input video or list,checks on the fly,which is the way the video must be played. So if
1.we have video renderer EVR mode
2. In vmix settings-->decoders-->ffmpeg is not exist *.mp4 extension if we insert a video this video will use windows (and gpu) for decode it. This also fixes this bug for me https://forums.vmix.com/...-vmix24-vs-next-versions so i can have mixed videos 16/9 resolutions in my 1080p list without problems
BUT.. if i need to insert a standalone 9/16 video during live show (this is most of the times my workflow) before i insert the video into vmix i go to vmix settings-->decoders-->ffmpeg and add there *.mp4,press ok and then add the 9/16 video,this specific 9/16 video will be played with the correct aspect ratio (and if need a "special" ffmpeg mp4 codec like the ones i see from f/b) using the ffmpeg and cpu for decode
While the previous list or video (that was inserted into vmix without the *.mp4 extension in ffmpeg) continue to play via GPU.
If there is a better one pc solution please share. I hope vmix team to take the infos,make their professional way tests and provide us the best possible solution
Users browsing this topic
Guest (2)
Similar Topics
Hardware video decoding on GPU (Feature Requests)
by RadekOlszakPl 10/2/2020 11:30:01 PM(UTC)
Forum Jump  
You cannot post new topics in this forum.
You cannot reply to topics in this forum.
You cannot delete your posts in this forum.
You cannot edit your posts in this forum.
You cannot create polls in this forum.
You cannot vote in polls in this forum.