Sony Vegas Eating Up To 100% CPU
Hey everyone, I'm fairly new to Sony Vegas and video editing in general. I took the Google crash course on video editing and I'm getting very mixed results due to not having a firm grasp of all the concepts.
16GB DDR-3 2133 RAM
GTX970 Graphics Card
2 Solid State 250GB Drives.
My son and I are big gamers and we just started using OBS to record our gaming experience, using Vegas Pro 12 to edit videos and put them on YouTube.
I have tried MANY settings for OBS output, varying bitrates, frame rates and screen resolutions outputting in an MP4 format so I don't need to convert the FLV files OBS outputs into something that Sony Vegas can accept.
However, the issue seems to be that any time I add a video (especially a video of about 20 minutes or more) to Sony Vegas, the preview lags. I have set the preview all the way down to Draft -> Quarter and it still lags. Even worse, if I pause the preview to make an edit, hit S to split the video, etc, Sony Vegas takes up a variable amount of my CPU from 80-100%.
There are times where the preview doesn't work at all and the audio plays but no video.
I have tried disabling/enabling GPU Acceleration.
I have tried disabling/enabling Multi Core threading/rendering/playback
I have tried changing Dynamic RAM anywhere from 0 to 10GB (10240MB)
I have my preview settings on Draft -> Quarter (lowest possible)
I have changed the priority settings in task manager for Vegas to both High and Real Time in an attempt to give it more resources to no avail.
When I go into my task manager, I can see my CPU usage is crazy high, but the thing I find odd is that my RAM usage sits around 3-400MB. I was always under the impression for video editing and rendering I needed more RAM, I honestly thought that would be my bottle neck but it's not.
On an aside, which may or may not help remedy the situation...
1.) If there are certain settings for OBS to output/encode with that Vegas likes more and will make things smoother I'm up for suggestions. Still looking to Upload to YouTube between 720P and 1080P if possible.
2.) If there is a certain file format such as MP4, AVI, MPEG-2, etc. that would be better to edit with through Vegas I'd be more than happy to convert to that file type as well.
Thanks in advance for anyone willing to help or make suggestions!
Have you tried matching your project settings to your media settings?
For example, dropping 60p media into a 29.976 project will use a lot of CPU cycles trying to conform the frame rates. Likewise recording at a resolution that's different from your project resolution will require extra processing to resize. I would make sure that your project and media match.
Thank you for the reply :-)
Unfortunately I have done so with no result. Or I should say, at least no noticeable result.
This issue is quite frustrating to say the least.
If you have any other ideas I'd love to hear them :-)
Can you output Motion-JPEG (MJPEG) format in an AVI file? That might playback smoother.
If you mean output from OBS, no. Sadly it's limited to MP4 and FLV file types. That being said, I could just use a video converter and change that? Or would that do something to file integrity/encoding that would make it worse perhaps?
It sounds to me that your problem is that OBS is doing variable frame rate recording, which Vegas and most other editors do not like. I use Mirilli's Action and when recording to MP4, the frame rates of files loaded into Vegas will vary. For recording to avi, there has not been a problem. When you import your file into Vegas, what are its properties? A screen shot would be helpful. Even better, if you could upload a short sample clip to something like Dropbox, others could take a look at the file. This seems to be a common problem, especially with game recording software and video recorded on cell phones.
Another option would be to take your MP4 file and re-render in Handbrake, making sure that your output has a constant frame rate. In fact, I've done this with the Mirilli Action MP4 files and it does work. Vegas then sees it at the proper frame rate and all is well. Since you have an Intel processor, you can use quick sync in Handbrake and the render will be very quick. The only downside is a generational loss and the time spent to re-render. Something else to consider.
Yea, the bottom line is that the video needs to have a fixed frame rate (if the problem is a variable frame rate) and if you have to transcode it to get that then so be it. Unless you can make the video compliant for editing to start out you will need to re-render it.
Thanks everyone for the replies and the ideas.
So, my question is this:
OBS has the ability to set Frame Rate at whatever I want. So, lets say I set it to 30. However, the Bit Rate is variable up to say 1000kb/s. Is that effectively saying that the Frame Rate is also variable? Would increasing/decreasing the Bit Rate make my rendering slower/faster?
The other side of the coin is that MANY YouTube people use OBS. They swear by it and the bulk of them use some version of Sony Vegas. I, being new, obviously used their suggestions and settings and have the results I do now.
So, as per the suggestion, re-rendering my MP4 into what format? MP4 again or MPEG2 or AVI?
Thanks again for all the suggestions, I feel like I'm learning a lot! :-)
[Travis Rhoda] " So, lets say I set it to 30."You really want to set it to 29.976 which is the NTSC frame rate for video.
[Travis Rhoda] "However, the Bit Rate is variable up to say 1000kb/s. Is that effectively saying that the Frame Rate is also variable? Would increasing/decreasing the Bit Rate make my rendering slower/faster?"No. The frame rate controls how many frames per second. The bit rate controls how many bits will be used for each frame. If you want to maintain quality, you need to keep the relationship between these the same. For example 50Mbps at 30fps is the same quality as 100Mbps at 60fps. i.e., if you double the frame rate, you should double the bit rate to maintain the same quality.
[Travis Rhoda] "The other side of the coin is that MANY YouTube people use OBS. They swear by it and the bulk of them use some version of Sony Vegas. I, being new, obviously used their suggestions and settings and have the results I do now."Well... unless they are keeping some secrets from you, you are not using the same settings because it works for them and doesn't work for you. I would go back and ask them exactly what their workflow is. Maybe they are transcoding to a different format before editing and not telling you?
[Travis Rhoda] "So, as per the suggestion, re-rendering my MP4 into what format? MP4 again or MPEG2 or AVI?"You can try MP4 again and see if it works but it's harder for Vegas Pro to edit MP4 than MPEG2 or M-JPEG AVI.
When you say "upload a short sample clip", do you mean to split my 30 minute video into a short 1 minute video, render it as MP4/MPEG2/AVI and upload it so you guys can view it? Or make a NEW short video and do the same?
Or make a NEW short video and do the same?
Yes. Just make a new short video a couple of minutes long in the same way you've recorded in the past.
I can't speak for Wayne, but I'm guessing that recording a new 1 minute clip and uploading it would be the most useful. This way we can see what's coming out of OBS.
Hi, I use OBS and looking at some of the posts.
I haven't imported massive files into Sony Vegas yet, but I haven't had any playback issues using Vegas for camera video, or the OBS files I have tested on. I typically convert the .flv files to .mp4 as it is recommended to record .flv by OBS - it's more stable. As a side note, I livestream and you can also save the file locally (instead of downloading from Twitch for example, in this case the file is .mp4.) I livestream at 720p 60 @ 3000kpbs, and sadly OBS doesn't let you drop the framerate down to 59.940, same for 30 down to 29.976. I'd have to check the properties of the file to see the actual framerate. I have also not noticed that the framerate was varied in my videos?
Have you enabled the GPU in vegas?
When I convert the .flv with Handbrake I basically use the VBR with 2 pass at 60fps I set the bitrate to 3500kbps, slightly higher than the original file - not sure if that is recommended, but I figured it would keep the original bitrate more intact as it is already very low. If you're using a higher bitrate because you are recording locally just match that in handbrake or lower it if you think that will work.
I hope some of what I've said helps/makes sense.
That's good information Rob. If OBS is recording at a variable frame rate at times, it's best to always transcode to a constant rate rate before editing in Vegas Pro.
I just did a little more digging. I looked at my .flv files' properties none contain a framerate this doesn't mean that it isn't constant though!
Basically in OBS you have to go to the advanced settings tab and check 'use CFR' (constant framerate) https://obsproject.com/forum/threads/cfr-option.1741/ Then choose the framerate under the video settings tab.
The only reason to transcode it then, is to get a format sony vegas can use.
Also i just put in a 2 hour video from obs, no real issues... I've got a 4690k and gtx 960. So this variable bitrate thing must be the culprit.
Hope that helps!
You can record to .mp4 in OBS by changing the .FLV under broadcast settings to .mp4. This will keep you from having to convert the .FLV, and allow you to drag and drop to the Vegas timeline.
You also could change to .MP4 without handbrake with an FFMPEG command:
D:\Videos>ffmpeg -i Filename.flv -vcodec copy -acodec copy OutputFilename.mp4
This way there is no re-encode with handbrake, and you save a visual generation.
In my testing with OBS and Vegas on my i7-870/HD5770, I was able to record 1080-60p by unchecking the CBR and upping the bitrate to 16000-22000.
Disabling resample in the timeline clips helped speed up encoding to SonyAVC-60p-16Mbs, and rendering to XDCAM-ex both 720-60p and 1080-30p were the fastest renders. YouTube supports converting XDCAM.mxf files.
OBS has Quicksync and NVENC support, have you tried these settings with your NV card and Gen4 i7? If these work, it would save a lot of system overhead on the screen capture.
FFSPLIT is another version of this application that seems to work better with lower overhead, but no Quicksync or NVENC support.
Hi Aaron, just mentioned about OBS in my other post.
I think one has consider what OBS is predominantly aimed for, which is live streaming. That is not to say you can't use it for local recording, but rather just some pointers from my experience with the program.
If the op only wants to record locally, then I'm sure you're suggest is very valid - I personally haven't tried it, but I will have a look when I do need to record some in game footage for a specific video.
The only reason, I have recorded files with OBS locally was to test out my live streaming settings which are outlined over on twitch.tv. You need very low bitrates anything from 2000kbps to 3500kbps - I hear that twitch get a little sensitive if you go over their limits, especially if you're new to the game. But, maybe that's just an urban legend.
In my case, I guess checking the CFR box is a must, as Aaron points out to achieve a constant frame rate you need to use a bitrate of 12000-22000kbps. Also, you are able to record directly in .mp4 with OBS, I'm not sure if this is the case so much now, but the guys over on OBS do/did state that recording in .flv is much more stable. Maybe I'm wrong, because when I livestream I also record the file locally - the default is that the recorded file is in fact saved as .mp4 so, I guess it can't be 'that' unstable.
As for using intel quick sync or nvenc - in my experience, testing these at very low bitrates, they look hideous compared to h264. But intel quick sync does look better than nvenc at lower bitrates -
. If you are interested in using quick sync here is a tutorial to set it up with one monitor
. My tip is to 'move' the extended monitor, so that the mouse doesn't move over to the virtual monitor.
I'm sure using intel quicksync or nvenc with higher bitrates or as suggested by Aaron would produce more than acceptable videos. But I would say, record a few test files find a bitrate you're happy with, see if the framerate is variable and then decide whether or not you want to use the CBR box under advanced settings.
An alternative would be to record with Nvidia's Shadow Play, I haven't used this yet, but I have read that the files aren't supported in Sony Vegas, so you may need to transcode them in handbrake - which I guess you don't want to do. I guess the advantage of recording in OBS with Nvenc is that you have a choice to use .flv or .mp4.
The FFMPEG command I gave:
ffmpeg -i Filename.flv -vcodec copy -acodec copy OutputFilename.mp4
will not recompress the media like handbrake will, it just changes the container from .FLV to .MP4(vegas compatible) The audio and video are untouched and remain in the same form.
I recommend you check out http://www.ffsplit.com/download/ / XSplit (commercial version), it has the almost the same interface and it writes constant frame rate files. OBS's lack of writing a video standard file is really odd. This is what happens when a computer guy builds a video application, instead of a video person. There are video standards for a reason.
You may want to think about running another instance of the encoder. One for local recording, and the other for the stream/feed. This would allow you to edit the recordings at a higher bitrate. YouTube for example encodes at 7.5Mbs for 720-60p, 12Mbs for 1080-60p. That means you should be editing and uploading 15-20Mbs+ files for good results.
I don't know just some thoughts.