Record matinee movie from inside a packaged game

Has anyone found a way of recording a matinee video from in game? Without access to the matinee panel in the editor.
I have done a good amount of research and turned up nothing.

1 Like

Good question,
well I guess easiest way would be to use one of screen recording SWs and record the gameplay at a high frame rate.
You can also take screenshots using F9 or console commands:

Maybe would be possible to try adding this screenshot Console Command to Tick function,
so it would make a screenshot every tick, but as far as I know Console Commands can take several ticks to execute so we’d have to find related screenshot function in the source code and use that.
But it’s still much easier to use some screen recording software :D.

1 Like

Thanks for the quick reply, Jurif!

The problem is I am not using it for a promotional piece or anything like that, Its part of the functionality I need for a project I am currently working on.

I was hoping there would just be a function I could call with C++ like Matinee.MovieStart or better yet something through blueprint.

If anyone has any further information on this, I would be very appreciative.

have you tried startmoviecapture, you use it from the console( press tab on your keyboard) then type it in, to stop recording type stopmoviecapture. doesn’t record any sound as far as I know.

Hey L04D3D!

I just tried startmoviecapture. It works great in the editor. But doesn’t work from a packaged game. It accepts the command but then when I tell it to stop recording and go check for the video there is nothing there.

I’ve never tried it from standalone game but are you sure it didn’t save it? did you check all the folders? usually it would be in a folder like saved, and it would show up in a folder called movies or screencaptures. then again you might be right and maybe it doesn’t work in standalone game.

I will try again when I get a chance (Most likely tomorrow) and I will post up the results here!

Here is what I found.

My setup :
Engine v4.6

I have a level blueprint with several ‘Execute Console Command’ nodes to set several options when I play the game. The last of which will trigger the ‘STARTMOVIECAPTURE’ just after a matinee actor is played.

My Results :

  1. When I launch the game with the ‘Launch’ button to open it into a new window no video file gets saved. And the game doesn’t crash.

  2. When I launch the game in the editor with the play button it records a 1.14gig video. But when I open it to watch it. It has a 0:00 length. Additionally when I hit ESC to get back into editor mode the engine crashes.

I hope this helps shed some light onto the issue.

I am having the same question too. Have anyone come up with any answer or solution? I am thinking about taking a bunch of screenshot, then write a small c++ dll to make a movie from all of those .bmp files.

I have considered that as well. I was digging around in the source a while back and I think I found the function that was being called to record a video. That may be able to be used as well. But I got moved onto another project for now.

Please keep me updated on anything you find and I will do the same.

New problem, it seem like i can’t load bitmap created by command Shot or F9, if i create a bitmap with paint then load it with LoadImage function, it work fine, but too bad i can’t say the same about the bitmap made by unreal. But i did find out that there are some source code that can convert .bmp files into .avi video floating around the net and free to download and use.
Also, it maybe not relate but when i try to use ACDSee Photo manager 2009 to view bitmap files made by unreal, i can only see a dark screen, while using Window photo viewer there isn’t any problem. If i use a bitmap made by paint or some source other than unreal, both those program can display the bitmap just fine.
More new, if i open Unreal bitmap in paint, then save as .bmp, i can read it just fine, from code or using ACDSee Photo manager. Now how should i use this piece of knowledge?

Hello mates, i got good new and bad new. The good new is by following this instruction how to link static and this instruction how to capture screen using DirectX libraries, i have managed to capture and create a huge avi video file. And by huge, i mean it. And that is the bad new. I haven’t figure out how to use video codec from inside unreal, so the result video file is big and some how the frame are mess up.

Awesome find! I will give this a shot. The large video file sizes are an issue we are having as well. I will let you know if we make any progress on it. What do you mean when you say the frames are messed up?

The frame are in correct order, but when play in some media player(such as Windown Media player), it play each frame pretty slow, and only play at the correct speed if you move the timer several time. At the moment, i suspect that is the result of not using any video codec. I am gonna dig into the video codec and hoping for the best. Looking forward to anything you can find and thank you in advance.

Alright, using Libav codec and compressor and combine with the above knowledge, i have managed to compress my 5 minutes long video to a 140MB .mpg files.

I am Interested in this too, can you provide a deeper explanation or even a small tutorial ? Since this seems quite complex.