Additional recording features (Suggestions)

Kayten

New Member
Even though OBS is mainly used for streaming and although it has been improved in the MP version, OBS is lacking some recording features compared to other known programs, which some people consider to be important.
Sure, you could just use any other program for recording but there's one thing OBS pretty much excells them at: Hooking performance in games.
OBS hooking method seems to have the smallest impact on performance (FPS) if the rest of the system does not show any bottlenecks. It would be a shame not to use it for recording.

So these are the ideas I had, though one of them is platform specific:
  1. Multiple (lossless) audio tracks for recordings. Currently the only way of capturing multiple audio sources on separate tracks is by selecting "Normal" in the recording tab, resulting in limiting yourself to x264 and all tracks being encoded into AAC, therefore lossy. Why no raw PCM for example?
  2. (Windows only) VfW Suppport. Some might legitimately ask "Why? We do have FFmpeg.". That's definately true but FFmpegs implementations of (lossless) codecs are nowhere as good as their native (Windows) counterparts (Looking at you, UtVideo) or just non-existent like MagicYUV. Using all codecs available to the specific operating system wouldn't limit this suggestion to Windows, MagicYUV for example is available for Linux and Mac too but not included in FFmpeg.
  3. Record video sources instead of (or in addition to) scenes. This way, recordings wouldn't be limited to scenes and their respective resolution but could be using the actual resolution of the video source, opening access to perfectly in sync and independant recordings of a game and a webcam for example.
  4. Capturing at the original resolution (somehow dependant on suggestion 3.). Some games/programs tend to change their resultion during runtime, so they might get up- or downscaled by OBS. Other programs tend to stop the current recording and start a new one if the resolution changes. It could be an optional feature available to a video source itself for simplicity, as mentioned in 3.
 

dodgepong

Administrator
Community Helper
1. Multitrack recording will eventually come to FFmpeg, so hopefully that will help some. Right now, AAC is the only encoder because that is the only thing that is really supported by RTMP.

2. For what it's worth, we're going to be leveraging Media Foundation for hardware encoding on Windows, at least initially. We're already using Media Foundation's AAC encoders on compatible systems that don't have CoreAudio available.

3. This is called Multicording, and it may be added someday, but probably not for a long time.

4. I'm not sure what you mean by this one. Assuming your base resolution is already set to the native resolution of what you are trying to record, and you're not downscaling, then you will record at the original resolution. I guess you're only talking about multicording, then?
 

Kayten

New Member
Thanks for your reply and moving my post into the correct category.

My last point refers to games switching their resolution while recording (menu vs. in-game for example).
You got two possibilities to handle these: Either you scale them on-the-fly so they fit the base resolution or automatically "stop" the recording (close the current file) and immediately start a new one with the new resolution, leaving the scaling up to separate video editing/encoding programs.
Personally I would prefer the latter. Combined with multicording, you could for example stream at 1280x720 and record the game at its native resolution, which might be 1024x768 in-game but 800x600 in menus (many older games do this), creating a new file for every change in resolution, while still constantly recording a webcam at your chosen resolution in a separate file.
As this obviously depends on multicording, it'll probably take a long time taking it into consideration, let alone implementing it.

Coming back to the previous suggestions, I can't estimate the value of Media Foundation as I'm not into hardware encoding and more into lossless recording but you sure have something in mind. Just out of interest, what does OBS gain by using it? Custom formats encoded by hardware for streaming/recording? Some might benefit from that, even though it won't be me.
I'm mostly concerned about well performing lossless video codecs, which probably aren't available through Media Foundation?
Being limited to AAC is quite a bummer but that limitation seems to be lifted by using FFmpeg (or Media Foundation)?
 

Jack0r

The Helping Squad
In theory it should be possible with obs-mp, but it will probably not be a high priority. ffmpeg is working on all platforms and has a wide support for different codecs.
Media Foundation as explained is mainly used for the hardware encoding support at the moment and will probably/hopefully be replaced in the future by a native implementation.
 
Top