1592 Commits

Author SHA1 Message Date
jp9000
ecc102fc51 Basic UI: Clarify "advanced encoder settings" text
Change checkbox with text "Advanced Encoder Settings" to "Use Advanced
Encoder Settings".  This way it will hint that the settings will be
disabled when unchecked.
2014-09-24 21:13:28 -07:00
jp9000
d753cee1e7 win-dshow: Update libdshowcapture to 0.3.3
Adds full support for the HD-PVR Rocket
2014-09-23 04:56:39 -07:00
jp9000
46c0dd7ffb win-dshow: Change FFmpeg MPGA decoder
Apparently MPGA is equivalent to MP2, not MP1.
2014-09-23 04:56:33 -07:00
jp9000
1ccc03308d win-dshow: Add debug macros for logging timestamps 2014-09-23 04:56:32 -07:00
jp9000
5fb149a48c Add more search directories for cmake modules
I actually did this because it makes it a bit easier to use with a
build from cross-compiled windows FFMpeg/x264 DLLs.  When compiling on
linux I just have it compile to a custom prefix directory for the
specific windows arch, then I just copy the arch dir back to my windows
HD when complete.  Adding this to the cmake allows me to use the compile
arch directories directly without modification.
2014-09-23 04:56:32 -07:00
jp9000
3937f47954 Add *32 and *64 build directories to gitignore. 2014-09-23 04:56:31 -07:00
Jim
34e2b77c0f Merge pull request #266 from fryshorts/v4l2-input
Fix device capabilities checking and add "Leave unchanged" option for all settings.
2014-09-22 11:53:05 -07:00
jp9000
732d24caa1 Remove unused variables 2014-09-19 18:46:25 -07:00
jp9000
3967c6354a Replace ARB_separate_shader_objects extension
This replaces the ARB_separate_shader_objects extension with traditional
linked shaders.  I was able to get the existing system to use linked
shaders without having to change any libobs graphics API.

This essentially creates a linked list of shader programs with
references to the shaders they link.  Before draw, it searches that
linked list for a particular pixel/vertex shader pair, and the linked
program associated with it.  If no matching program exists, it creates
the program.
2014-09-19 18:23:51 -07:00
John Bradley
6ff5a3ab2c Fix APPLE -> __APPLE__ def in interaction gui 2014-09-17 12:09:26 -05:00
John Bradley
c62a0059ed Set proper source relative X,Y coords on wheel interaction 2014-09-17 12:05:49 -05:00
John Bradley
3b0fa22f8a Move raw pointer usage/delete to RAII in interaction 2014-09-17 11:01:54 -05:00
John Bradley
688af46664 Remove interaction event filter in destructor
QT fakes a mouse move when destructing which is
caught by our filter
2014-09-17 10:02:53 -05:00
fryshorts
0132453d23 Add video format check in v4l2 input.
This adds a check whether the video format from the device is compatible
with obs. This could either happen if the "Leave unchanged" option is
selected for the video format, or if the driver simply overwrites the
requested video format.
2014-09-16 21:54:42 +02:00
fryshorts
91fc59faca Refactor source structure in v4l2 input.
Due to the refactoring of the update function the separation of data
members only to be accessed from inside/outside the capture thread is
no longer needed.
2014-09-16 21:54:42 +02:00
fryshorts
875398e9dd Refactor update function for v4l2 input.
The old implementation of this function assumed that there would be some
settings that could be changed on the fly without restarting the
capture. That was actually never used for any setting.
2014-09-16 20:46:04 +02:00
fryshorts
632642010d Minor refactoring in v4l2 input.
We don't really need to use a dstr here, simply using the
right format specifier for blog will suffice.
2014-09-16 20:35:09 +02:00
Jim
c1da19e8c6 Merge pull request #267 from BtbN/seh
Disable safeseh on 32bit builds
2014-09-16 03:09:57 -07:00
BtbN
aeab5c35ef Disable safeseh on 32bit builds 2014-09-16 10:37:08 +02:00
Jim
8bfa7398b0 Merge pull request #265 from kc5nra/interaction
Add interaction support to libobs and support for pumping the events/interaction in gui
2014-09-15 16:42:19 -07:00
John Bradley
4221134748 Add interaction gui 2014-09-15 18:29:26 -05:00
John Bradley
3f993e40df Add helper function to get specific scene item 2014-09-15 18:19:39 -05:00
kc5nra
26cf4688c2 Add interaction support to libobs 2014-09-15 17:19:37 -05:00
fryshorts
c3783d055f Add option to leave settings unchanged in v4l2 input.
This adds an additional option for all settings to leave the current
configuration of the device unchanged.
2014-09-16 00:12:45 +02:00
fryshorts
dcd395f77e Use helper function to set framerate in v4l2 input. 2014-09-16 00:11:36 +02:00
fryshorts
6c8216c6a6 Use helper function to set format in v4l2 input.
Since the helper function also needs to pack/unpack the resolution, the
pack/unpack functions were moved to the helper library and prefixed with
v4l2_ in order to avoid possible collisions.
2014-09-16 00:11:28 +02:00
fryshorts
8d95a7fb47 Use helper function to set input in v4l2 input. 2014-09-16 00:09:16 +02:00
Jim
62ee66d1b9 Merge pull request #264 from BtbN/disable_stuff
Add disable options for optional plugins, various cmake fixes
2014-09-15 14:53:35 -07:00
jp9000
b4052f81ef Add cmake option to disable user interface
Adds:
ENABLE_UI (on by default) which makes it so that the UI is required, and
will fail if a dependency is not found.  This is on by default because
most people are building it with the user interface, and we'll probably
get a lot of issue reports stating "why is there no executable?" if we
don't have this on by default.

DISABLE_UI which forces the UI off.

If neither are set, then the UI will only be built if the dependencies
for it are found, otherwise the UI will be be ignored.
2014-09-15 14:42:18 -07:00
BtbN
978ff008fe Fix major misunderstanding of cached variables in all find modules 2014-09-15 14:42:18 -07:00
BtbN
34134bfbf6 Fix AppKit find module 2014-09-15 14:42:18 -07:00
BtbN
62d7bcf841 Fix Freetype cmake module 2014-09-15 14:42:11 -07:00
BtbN
bffbe94377 Fix fontconfig cmake module 2014-09-15 14:42:01 -07:00
fryshorts
0abf0f5740 Do not explicitly set a default device in v4l2 input.
This was added at a time where the source properties dialog did not
pop up automatically on source creation. Now when the properties are
displayed the first device in the select input will be selected by
default if there was none already specified by the source settings.

This will make the code cleaner and also save one redundant round of
device enumeration.
2014-09-15 23:27:43 +02:00
fryshorts
841f02be87 Fix device capability checking in v4l2 input.
The capabilities flags that were used previously describe all
capabilities the physical device offers. This would cause devices
that are accessible through multiple device nodes to show up with
all device nodes while only one of the nodes might actually offer
the needed video capture capability.

If the device has more nodes the CAP_DEVICES_CAP flag might be set
in which case the device_caps field is filled with the capabilities
that only apply to that specific node that is opened.
2014-09-15 23:27:43 +02:00
BtbN
9f8b74b720 Add disable options for optional plugins 2014-09-15 19:34:53 +02:00
jp9000
f0568f772d Update libdshowcapture to 0.3.2 2014-09-14 18:36:47 -07:00
jp9000
2446f62180 Do not call dlclose on modules
This apparently can cause issues with certain modules (as noted by
faruton with his browser plugin)
2014-09-12 20:36:35 -07:00
jp9000
4e78635764 win-dshow: Use a single thread per device
This prevents certain issues I've encountered with devices where they
expect to shut down in a specific thread they started up in, as well as
a number of other issues, such as the configuration dialogs.

The configuration dialogs require that a message loop be present, and
this was not the case previously because everything was in the video
thread, which has no windows-specific code.

Configuration/crossbar/etc dialogs will now execute correctly.
2014-09-12 20:36:34 -07:00
jp9000
1291351a2a win-dshow: Properly log colorspace on format fail 2014-09-12 20:36:34 -07:00
jp9000
8bdc967ae9 win-dshow: Implement dynamic format change support
This adds support for dynamic format changes on the fly.  Format,
resolution, sample rate, can all now be changed by the current
directshow device on the fly.
2014-09-12 20:36:34 -07:00
jp9000
24ae80a481 win-dshow: Implement decoding of encoded devices 2014-09-12 20:36:33 -07:00
jp9000
2378ecdbb5 win-dshow: Clear video/audio frame data on init 2014-09-12 20:36:33 -07:00
jp9000
755f95a3a7 win-dshow: Add FFmpeg decoding support 2014-09-12 20:36:32 -07:00
jp9000
bf1fea3494 win-dshow: Allow automatic handling of source res
On an asynchronous video source, the source resolution is automatically
handled by the core, and set to the resolution of the last video data
that was sent.  There is no need to manually specify a resolution.
2014-09-12 20:36:32 -07:00
jp9000
1abcdd7f50 WinHandle: Do not close handle on operator &
This is not a com pointer; it should not release/close the handle when
an & operator is used, it should only return the handle value.  Clearing
is only used on assignment.
2014-09-12 20:36:32 -07:00
jp9000
11b0fe122c Improve async source render timing
This helps ensure that an asynchronous video source is played as close
to its framerate as possible, reduces the risk of duplication as
much as possible, and helps to ensure that playback is as smooth as
possible.
2014-09-12 20:36:31 -07:00
jp9000
52e08249f1 Only render async frames to texture once per frame
This prevents multiple needless calls to obs_source_get_frame and other
functions.  If the texture has already been processed, then just render
it as-is in any subsequent calls to obs_source_video_render.
2014-09-12 20:36:31 -07:00
Jim
07c2d32a68 Merge pull request #261 from fryshorts/pulse-input
Use default source settings for recording in pulse input
2014-09-12 13:03:54 -07:00
jp9000
febede1fde Update libdshowcapture to 0.2.3 (Fix audio assert) 2014-09-06 14:37:52 -07:00