How to use x264 encoder

how to use x264 encoder

OBS Development Blog

xvfw is wrapping x and exposes the encoder as VFW codec, and DirectShow uses VFW codecs through AVI Compressor Filter. Similar options are: direct and x wrapper by Monogram. Either way, an installed codec will show up on DirectShow filter list and will be available programmatically (the easiest way to ensure is SDK GraphEdit tool, or GraphStudioNext, or similar). VLC has native support for files encoded using x so it is by far the easiest method. You can get VLC for Windows from this URL. Click Fileand click the Open Fileoption. Now, click the Browsebutton next to the first white line at the top of the window with title "Open..".

There are plenty of ways to tweak your OBS settings to improve your stream, but few options are as important as choosing the right encoder. To put it simply, the encoder you choose will decide which piece of hardware is going to render your video. The right one will reduce the load on your PC and give you the extra power you need to record or stream at the best possible quality.

How to climb a fence now, Nvidia is doing a great job when it comes to delivering meaningful features for streamers. Have you got CPU power to spare? Using a two PC stream setup? The less work your CPU has to do, the better your games will run and the less likely you are to drop frames while streaming. When selecting a x you can then adjust the CPU Usage Preset from ultrafast all the way down to slow and placebo.

Faster speeds mean the encoder processes the video faster and uses fewer CPU cycles, but is also lower quality. Encode the other hand, slower speeds mean more CPU power is spent x24 each frame, and therefore the quality increases. Other good options include faster, how to make a damp basement dry, and medium, which is much higher quality, with medium being a significant jump from the baseline of very fast.

So when is x useful? Just remember this: a smooth but pixelated stream is always better than a choppy one. A lot of viewers are on mobile these days, so most can deal with low-resolution video, but few can handle dropped forms and frozen images. Medium is an open platform where million readers come to find insightful and dynamic thinking. Here, expert and encdoer voices alike dive into the heart of any topic and bring new ideas to the surface.

Learn more. If you have a story to tell, knowledge to share, or a perspective to offer — welcome home. Write on Medium. Sign in. Boost your stream quality — choose the right encoder! Andrew Whitehead Follow.

Streaming Twitch Nvidia Stream Videogames. Mobcrush Blog Follow. The Official Mobcrush Blog. Written by Andrew Whitehead Follow. More From Medium. Advanced OBS settings: What they are and how to use them. Andrew Whitehead in Mobcrush Blog. Frames Per Second: which is right for your stream? Buying a capture card? Here are FIVE great options! Anand Nigam in How to read chemical equations Programming.

Salwa Al Khatib in Zaka. Design Data pipeline encodr streaming using Kafka. Mohammed Ragab. Ori Gold in The Startup. Make Medium yours. Share your thinking.

About Help Legal.

BITRATE, RESOLUTION AND FRAMERATE

Dec 01,  · Brian Gary and Andy Beach discuss how to use the free (open source) x Encoder to producer better and faster results than the native QuickTime codec. We use -o to tell which filename to write the encoded file to. In this case, x will write a file at datmetopen.com in the current directory. The last argument we are passing to x is the input file. In this case, we pass - for the input file, which tells x to use the piped output from vspipe. You will need Haali splitter for these MKVs but if using Sharks package, it is included.. You will need it only if. you decide not to use this codec package. 2) AVISynth This will be needed to create the Avisynth scripts required by the x encoder-Required for MEGUI to funtion properly-3) MeGUI. The GUI for the x encoder. 4) Nero AAC Codec.

So, you want to learn more about video encoding? How to set up your stream for the best quality given your computer's hardware and connection limitations? Let's start with this video by Tom Scott. He does a great job of giving a quick primer on how video encoding works, and you will hopefully have a better understanding of the topics and terminology that we'll be going over.

All done? Let's get started. Before we get into the details, let me explain what this guide is not. This is not intended to be a fully detailed technical explanation of how x works; there are far better guides out there than what I can provide here. If you're interested in the nitty-gritty, head over to the doom9 forums , FFmpeg docs , or the x website and start digging. This is also not intended to be a "best settings" guide, and I will not recommend any specific settings. This is intended to help you understand how video encoding in general works, and how to better identify potential issues with your settings and help you learn where to look to correct them.

Let me reiterate that there is no such thing as "best settings". Every single setup, for every single use case, will be different. As an example, I have 3 different sets of streaming encoding settings for the types of media I stream. One for fast motion games, one for desktop applications, and another for live video. This tool will test your system and your internet connection to determine what it can handle from both an encoding standpoint and a connection stability standpoint.

However, the best way to find your best settings is to test, test, and test again. This guide is focused entirely on streaming with the x encoder. This is what the vast majority of OBS users will be using when they stream. For local recordings, your choice of encoder is far less relevant than your actual settings and in many cases a hardware encoder will be better suited for you.

It is important to understand that video encoding is a very resource intensive process, especially when attempting to do so in real-time. As a trade-off the overall quality per bitrate is lower than the CPU-based x in nearly all cases.

For streaming where bitrate is usually a constraining factor, x is currently the best option for getting the most quality out of your stream. Only been in recent years have standard consumer-grade computers reached the point where they can realistically provide the processing power to do live video encoding. Keep all this in mind when you wonder why your 8 year old dual core Pentium CPU cannot encode p 60fps without failing miserably.

Even the most powerful consumer CPUs can still struggle with the load of encoding a high-resolution, high-fps stream. There are two primary components to the x encoder we'll be looking at: presets and bitrate.

By "preset", it means exactly what it sounds like: a set of pre-determined settings for x so that you don't have to set them all manually yourself to tweak things. These sets of settings have been tested by lots of people and are great for general use, depending on what you want to get out of your encoder.

The basic idea is that, all things being equal same bitrate, etc , less CPU usage would result in worse quality, and more CPU usage would result in better quality, because the presets change how much time the encoder spends compressing each frame to look good within its setting constraints. Sometimes you need to reduce your CPU usage in order to get good performance, and the higher CPU usage presets can be difficult to use effectively with average consumer CPUs.

The last thing to note is that any preset lower than medium will have significant diminishing returns, and is not really worth the extra CPU cycles for streaming scenarios. Unless you are squinting at two identical streams side by side, you will not notice a difference. That said, if your CPU can handle it, there's no reason outside your power bills not to use them.

All these test are performed with exactly the same source video and bitrate, only the preset has changed. If it cannot, you might start to notice skipping or image distortion on your stream, accompanied by the message in OBS stating: Encoding overloaded! The simple way of fixing this issue is to turn down the resolution and FPS of your stream to reduce the load, and failing that, you may need to turn down the preset.

The amount of energy the CPU spends compressing each frame isn't the only factor in video quality. Bitrate is also important, as it determines how much information you can put into each frame of video.

If you are allowed to cram more data into each frame, you don't need lots of CPU spent on compression, so you can make each frame look better just by cranking up the bitrate. Remember how the Tom Scott video looked when he simulated lowering bitrate, with all other settings left the same? The same is true the other way. If you increase bitrate, you can make the video look better quality. Thus, you can get a good-looking video with relatively low CPU usage by using a low-CPU usage preset like superfast with a higher bitrate.

Just note that the amount of bitrate you'll need for this can vary greatly depending on the resolution and FPS you are trying to stream at.

A p 60fps stream at only kbps bitrate using the ultrafast preset is not going to look very good. For reference, the YouTube encoding settings list is a great place to start. The list below differs slightly, and would be my personal recommendation as a starting point. They are assuming x encoder with the veryfast preset, and low to medium motion in your scene.

For p 60fps in a high-motion scenario like an action or FPS game , you would likely need more than 8,kbps of bitrate at veryfast for it to look smooth during playback. Conversely, low-motion video such as an RTS game or streaming Photoshop art creation can work with much lower bitrate.

These charts are intended to give you an idea on where to start. The end result of using a lower encoder preset and upping the bitrate will probably look a bit different then comparable bitrate at higher presets, but the goal is to get roughly the same quality by trading off CPU usage for bandwidth. I recommend trying both and see which one works for you in terms of quality, CPU usage, and what your connection and streaming service can handle.

For comparison, here is the same scene encoded using x veryfast in both a low-motion high-detail scene, and a high-motion scene. As before with the preset test, these tests were performed with the exact same source video and preset, only the bitrate has changed.

I hope that this has helped you gain a better understanding of the basics on how video encoding works, the importance of bitrate, and the overall impact of changing these settings in OBS will have on your stream and performance of your PC.

I will say again, the road to finding the perfect settings for your stream is to test, test, and test again. If you have any further questions, our forums and support chat are always open. Preamble So, you want to learn more about video encoding? Presets anchor: presets x has several CPU presets, in increasing order from low CPU usage to high CPU usage: ultrafast, superfast, veryfast, faster, fast, medium, slow, slower, veryslow, placebo.

Here we have put together some comparison examples for how this actually looks in practice. Resolution Bitrate FPS x - kbps 30 x - kbps 30 x - kbps 30 x - kbps 30 x - kbps 30 x - kbps 30 They are assuming x encoder with the veryfast preset, and low to medium motion in your scene. Happy creating!



More articles in this category:
<- How to share a folder in windows 8 in network - How to reset a user password in windows 7->

Comment on post
4 comments

Add a comment

Your email will not be published. Required fields are marked *