Hello, I render Music Videos using Unity and have recently switched to using Unity Recorder. However, the video has what seems to be compression artifacts and the video is low quality.
Is there anyway to get a higher quality render with the “lines” running across the screen? (mostly on the right side)
We are indeed aware their are quality issues and we are currently working at a better way of setting and exposing the codec parameters, so anyone can reach the level of quality one needs.
But as it is related to Unity Core and each OS Video API, it is a slower release timeline.
That said :
did you tried both Movie Recorder MP4 / WebM formats ?
if targeting a camera (and not recording Game View) is an option for you, might be worth trying to use the Legacy MP4 recorder that allows to specify a bitrate (To see legacy recorders : Windows > General > Recorder > Options > Show Legacy Recorders)
Ok thanks for the help, I prefer MP4 but I tried WebM and the quality is great! The only problem now is that the WebM render does not add audio to the final .WebM file. The audio track is added if I use mp4, but is not added if I use WebM. Is there a way I get Unity Render to add audio to the WebM video export?
(audioSettings.preserveAudio is true)
I also have a source .mp3 file so if possible I can just add that to the video render (It’s just a music video so I don’t need to capture any sounds around the scene).
There are no errors or warning, I even turned on Verbose mode. I made a video to show how the MP4 file will export the audio, but the WebM file will not.
The fact there is no sound playing while you are recording is a good sign, meaning the sound is redirected somewhere.
Would you mind sharing the final WebM just in case ?
That solved it! All I had to do was upload to dropbox and it played the audio for me. Obviously I have a codec issue on my local machine
Thanks for the help marief_unity! This is “Music Video Recorder” and will be on the Asset Store as a Unity 2019 Asset that uses Unity Recorder. By copying a URL from soundcloud and clicking 1 button, it will download the mp3, jpg from soundcloud, render with Unity Recorder, and upload to Youtube automatically.
This will be a great tool for Youtube channels like Trap Nation
I do want to raise the issue that the .WebM export still has very noticeable compression artifacts, but it’s better than the MP4 export. However, I would like to get better quality than this:
This is our current solution and takes a lot of disk space + time. Ideally, we could render a video like Adobe Premiere and just have an .MP4 exported.
This is OK as a work-around for now, I hope we can use Unity Recorder to render actual videos (instead of image sequence) soon!
Can you not just expose the bitrate option to us? Alternatively, is there a source file i can edit to increase the bitrate of what is considered “high” quality? I tried looking but couldnt find any numerical values for bitrates that i can edit for current recorders, only found for legacy encoders.
This quality problems makes “Unity Recorder” completely useless. They quality is terrible, even at High, and clearly this can be used only as a prototype. Any video producer cannot use this low quality video render.
Unity, will there be any updates to Recorder or should we just plan to use “360 Pano Render” as our solution (image file render, completed by FFMPEG.exe)
If I put “Rendered with Unity” on my videos, the viewers would be saying “Ehhh we better not render videos with that software!”.
better ? you gonna kidding!
The new unity recorder 2 is still usseless peace of junk. I need to record gameplay uncompressed movies for trailer and preview video to stores of my game. And what? I need to suffer with image sequences without sound? use spikes and shaman tambourine? or what if I want to record in 4k? mp4 will still create shit quality. What a shame, Unity team… this simple stuff in ue working out of the box from 2015, but here what we can see? 2020 soon and Unity still can’t record screen with sound in lossless quality. Facepalm…
As mentioned before, improving the way quality is set-up in Movie Recorder is in our current scope, BUT we want to unlock it with a solution that will allow more flexibility and control than just setting a bitrate.
I tried the ffmpeg recorder, and it has great quality, but the game is unplayable while recording. I’m on a 2018 Macbook Pro, but maybe it takes too much cpu power. Is there some setting to fix this? Yeah I had to record the sound separately it can be ok, but not ideal
I found the video will play properly at high definition/resolution if the render texture is set at the same aspect ratio of the video (it seems not necessary to use the exact pixels frame width and height).
What is the best way to record videos these days? I am recording animations, not real time gameplay.
Usually the quality is fine, but sometimes (e.g. in wind zones with trees) the quality is poor in the recording. For example, here is a screenshot from several seconds into the video. It starts crystal clear, then reduces to this quality.
I have a new 12 core i9, 32 GB memory, RTX 3080 - so I don’t think a faster machine would help. Unity 2021.2.0b5.3166.2, Recorder 3.0.0 (from “Cinematic Studio”)
What is interesting is if I change the media file format to VP8 WebM (instead of H.264 MP4) then when recording it slows down the playback, but the video comes out much higher quality. This is fine for animations (I don’t need real-time performance). I am guessing it is the compression algorithm failing to keep up with MP4 - so it starts good, but gets too far behind so starts degrading quality so it can keep up realtime. With VP8 WebM it seems to slow everything down so it can complete the compression between frames.
If this is the case, could a flag be added to MP4 to “slow down and get it right” for use with computer animation?