- 20 2月, 2019 1 次提交
-
-
由 derrod 提交于
Adds display_duration declaring the minimum duration a caption text is not going to be overwritten by a new one. To keep the functions backwards-compatible obs_output_output_caption_text2 was added while obs_output_output_caption_text1 continues having a 2 second default.
-
- 11 2月, 2019 1 次提交
-
-
由 jp9000 提交于
Ensures that there are no textures being encoded before attempting to shut down a texture-based encoder.
-
- 08 2月, 2019 5 次提交
-
-
由 VodBox 提交于
-
由 jp9000 提交于
Allows the ability to encode by passing NV12 textures. This uses a separate thread for texture-based encoders with a small queue of textures. An output texture with a keyed mutex shared texture is locked between OBS and each encoder. A new encoder callback and capability flag is used to encode with textures.
-
由 jp9000 提交于
This splits the "do_encode" function in to "do_encode" and "send_off_encoder_packet", the latter of which allows the ability for texture-based encoders to manage their own encoding and just simply send off a packet to the outputs.
-
由 jp9000 提交于
Allows the ability for one encoder to defer to another in case of failure or unsupported feature. Okay, fine, it's mostly a hack so the new NVENC encoder can fall back to the FFmpeg encoder if NV12 textures aren't in use, that way it does not have to implement raw fallback support itself. The settings and properties are pretty much the same, so there's no reason not to utilize it in order to save time that could otherwise be spent more productively.
-
由 jp9000 提交于
-
- 05 10月, 2018 1 次提交
-
-
由 jp9000 提交于
-
- 07 9月, 2018 1 次提交
-
-
由 cg2121 提交于
-
- 10 8月, 2018 1 次提交
-
-
由 jp9000 提交于
Allows the ability to set custom global OBS context private data for allowing the frontend to communicate variables with plugins in an indirect way.
-
- 02 5月, 2018 1 次提交
-
-
由 Zachary Lund 提交于
-
- 23 4月, 2018 1 次提交
-
-
由 jp9000 提交于
Reduces GPU usage when encoding is not active. Does not perform color conversion, frame staging, or frame downloading unless encoding is explicitly active.
-
- 04 1月, 2018 2 次提交
-
-
由 jp9000 提交于
Because it would be troublesome to add the ability to remove source types (in case for example a script fails to reload), instead make it so source types can be temporarily disabled while the program is running.
-
由 jp9000 提交于
Allows the ability to have a callback invoked every time video ticks. Particularly useful for scripting.
-
- 28 10月, 2017 1 次提交
-
-
由 jp9000 提交于
This is to prevent confusion with video_thread in libobs/media-io/video-io.c, which is used exclusively for video encoding/output. Also prevents confusion in the profiler log data.
-
- 10 10月, 2017 1 次提交
-
-
由 jp9000 提交于
Decoupling the audio from the video causes the audio to be played right when it's received rather than attempt to sync up to the video frames. This is useful with certain async sources/devices when the audio/video timestamps are not reliable. Naturally because it plays audio right when it's received, this should only be used when the async source is operating in unbuffered mode, otherwise the video frame timing will be out of sync by the amount of buffering the video currently has.
-
- 14 9月, 2017 1 次提交
-
-
由 jp9000 提交于
Allows setting and sharing of user data for sources and scene items.
-
- 21 7月, 2017 1 次提交
-
-
由 SammyJames 提交于
This allows the ability for certain types of modules (particularly scripting-related modules) to initialize extra data when all other modules have loaded. Because front-ends may wish to have custom handling for loading modules, the front-end must manually call obs_post_load_modules after it has completed loading all plug-in modules. Closes jp9000/obs-studio#965
-
- 15 5月, 2017 1 次提交
-
-
由 Richard Stanway 提交于
-
- 14 5月, 2017 1 次提交
-
-
由 jp9000 提交于
(This commit also modifies the decklink, linux-v4l2, mac-avcapture, obs-ffmpeg, and win-dshow modules) Originally, async buffering for sources was supposed to be a user-controllable flag. However, that turned out to be less than ideal because sources (such as the win-dshow plugin) were programmed with automatic control over their buffering (such as automatically detecting USB 2.0 capture devices and then enabling in those cases). The fact that it was a flag caused a design flaw to where buffering values would be overwritten when a source is loaded from save data. Because of that, this flag is being deprecated and replaced with a specific function to enable unbuffered mode instead.
-
- 13 5月, 2017 1 次提交
-
-
由 jp9000 提交于
Useful for real-time rendering statistics
-
- 11 5月, 2017 1 次提交
-
-
由 Richard Stanway 提交于
Using bitfields causes less optimized code generation and the memory savings are minimal as none of the objects are instantiated enough times to be worth it. See https://blogs.msdn.microsoft.com/oldnewthing/20081126-00/?p=20073
-
- 07 5月, 2017 3 次提交
-
-
由 jp9000 提交于
Optionally allows drawing directly to the primary output instead of having to use a source to draw.
-
由 jp9000 提交于
Originally, obs_get_video_info would recreate the obs_video_info structure that was originally passed to it from obs_reset_video. This changes that to just store a copy of the obs_video_info when calling obs_reset_video, and then copying that to the parameter of obs_get_video_info when called.
-
由 jp9000 提交于
When frames are skipped the skipped frame count would increment, but the total frame count would not increment, causing the percentage calculation to fail. Additionally, the skipped frames log reporting has been moved to media-io/video-io.c instead of each output.
-
- 29 3月, 2017 2 次提交
- 07 2月, 2017 1 次提交
-
-
由 jp9000 提交于
Adds functions to turn on audio monitoring to allow the user to hear playback of an audio source over the user's speaker. It can be set to turn off monitoring and only output to stream, or it can be set to output only to monitoring, or it can be set to both. On windows, audio monitoring uses WASAPI. Windows also is capable of syncing the audio to the video according to when the video frame itself was played. On mac, it uses AudioQueue. On linux, it's not currently implemented and won't do anything (to be implemented).
-
- 24 12月, 2016 1 次提交
-
-
由 jp9000 提交于
Uses the libcaption library to allow insertion of caption data directly in to H.264 frame data.
-
- 18 12月, 2016 2 次提交
-
-
由 jp9000 提交于
Because D3D11 specifically does not support an L8 texture format (you have to use a shader swizzle), manually convert Y800 signals to RGBX instead. This also fixes a bug where Y800 signals will render red. Closes jp9000/obs-studio#718
-
由 jp9000 提交于
For displays, instead of using the draw_callbacks_mutex and risk a reverse mutual lock scenario, use a separate mutex to lock display size data. This bug was exposed when trying to reorder filters in the UI module. The UI thread would try to reorder the filters, locking the filter mutex of the source, and then the reorder would signal the UI to resize the display, so the display would lock its draw_callbacks_mutex. Then, in the graphics thread, it would lock the display's draw_callbacks_mutex, try to draw the source, and then the source would try to lock that same filter mutex. A mutex trace: UI thread -> lock source filter mutex -> waiting on display mutex graphics thread -> lock display mutex -> waiting on source filter mutex Closes jp9000/obs-studio#714
-
- 08 12月, 2016 1 次提交
-
-
由 jp9000 提交于
Prevents reallocation of encoded packet data. Deprecates: obs_duplicate_encoder_packet obs_free_encoder_packet Replaces those functions with: obs_encoder_packet_ref obs_encoder_packet_release
-
- 10 11月, 2016 1 次提交
-
-
由 Jim 提交于
If an async source is cropped on one side, then when the program is restarted and the source is loaded from file, the async source will start out with a width/height of zero. This will cause the async source to not be drawn if cropping or scale filtering is added to the scene item, because it has to be rendered to a texture first. However, the source cannot reset its size until it's drawn, so it leaves it in perpetual state of having a 0x0 size. This fixes that problem by ensuring that the async source size is always reset even when not being rendered. Close jp9000/obs-studio#686
-
- 23 8月, 2016 1 次提交
-
-
由 jp9000 提交于
Allows getting the current active framerate that the core is rendering with. This takes in to account any rendering lag or stalls that may be occurring.
-
- 29 6月, 2016 1 次提交
-
-
由 jp9000 提交于
Allows the ability to use scale filters such as point, bicubic, lanczos on specific scene items, disabled by default. When using one of the latter two options, if the item's scale is under half of the source's original size, it uses the bilinear low resolution downscale shader instead.
-
- 23 6月, 2016 1 次提交
-
-
由 jp9000 提交于
(Note: This commit also modifies obs-ffmpeg and obs-outputs) API Changed: obs_output_info::void (*stop)(void *data); To: obs_output_info::void (*stop)(void *data, uint64_t ts); This fixes the long-time design flaw where obs_output_stop and the output 'stop' callback would just shut down the output without considering the timing of when obs_output_stop was used, discarding any possible buffering and causing the output to get cut off at an unexpected timing. The 'stop' callback of obs_output_info now takes a timestamp with the expectation that the output will use that timestamp to stop output data in accordance to that timing. obs_output_stop now records the timestamp at the time that the function is called and calls the 'stop' callback with that timestamp. If needed, obs_output_force_stop will still stop the output immediately without buffering.
-
- 22 6月, 2016 3 次提交
- 27 3月, 2016 1 次提交
-
-
由 jp9000 提交于
-