0
0
mirror of https://github.com/obsproject/obs-studio.git synced 2024-09-20 13:08:50 +02:00
Commit Graph

350 Commits

Author SHA1 Message Date
Jim
a89a8151d5 Merge pull request #21 from computerquip/master
Various Changes to OpenGL intialization
2014-01-06 15:32:09 -08:00
jp9000
f4ebc44844 Updated VS2013 project dependencies
- Made is so that libobs is now marked as a dependency for the main
   application project 'obs'.
2014-01-06 08:50:07 -07:00
Jim
121f4a3ae9 Merge pull request #20 from benklett/time
Revert "Merge pull request #19 from asgeirom/master"
2014-01-05 21:58:20 -08:00
Zachary Lund
840c1cfd65 I removed GL-specific extension checking to a platform independent file.
I also fixed autoconf to find wxWidgets 2.9 without user intervention
Removed unused code and added more organization
2014-01-05 23:50:32 -06:00
Benjamin Klettbach
ab1d4588e2 Revert "Merge pull request #19 from asgeirom/master"
This reverts commit 27ccb09473, reversing
changes made to b7eccedf8a.
2014-01-06 06:29:08 +01:00
jp9000
e9d1d66b8a Make it so that created scenes are selected
- When a scene is created it now is automatically selected and switched
   to.
2014-01-05 21:38:28 -07:00
Zachary Lund
4aef1d00d1 Change _DEBUG coverage a bit 2014-01-05 19:55:19 -06:00
Palana
7fa7af6c03 check for signalled event before pthread_cond_wait-ing
fixes a deadlock in obs_free_video/obs_video_thread where
video_output_stop would signal the update event before obs_video_thread
enters video_output_wait (the thread calling obs_free_video would
block on pthread_join and obs_video_thread would block on
pthread_cond_wait)
2014-01-06 02:04:32 +01:00
jp9000
25acf095ab Remove from list based upon data, not string
- Added an extra comment regarding source removal

 - Made is so that when a scene item is removed from the sources list
   box, it removes the item based upon the GetClientData rather than by
   its string name.  This is done because there may be duplicate sources
   in a particular scene, and it's important to remove the right one.
2014-01-04 19:26:15 -07:00
jp9000
717a2538f4 Implement source removal via GUI
- When the remove source tool icon is clicked, it will now remove the
   source from the scene.

 - Fixed a bug where the scene item removal callback would add the scene
   item to the list instead of removing it.

 - Changed AddSourcePopup to AddSourcePopupMenu.  Name actually confused
   me once despite being the writer, so it was clearly a bad name.
2014-01-04 18:53:02 -07:00
jp9000
dcde1dcf2a Implemented adding sources to scenes via GUI
Sources can now be added to scenes via user interface.  It's a little
convoluted because everything has to work through OBS signals to ensure
that plugins/etc can modify the scenes/sources exernally.

  Also, when switching scenes, it will properly list sources for the
scene you changed to.
2014-01-04 13:53:36 -07:00
jp9000
41a73ceeea Added WX_UTF8 macro
The WX_UTF8 macro is primarily for convenience so you can input a
UTF-8 string into a wxWidgets function without having to do
wxString(string, wxConvUTF8) each time.
2014-01-04 13:50:16 -07:00
jp9000
a2a8a5f148 Added add/remove signals to scenes
Scenes will now signal via their source when an item has been added
or removed from them.

  "add" - Item added to the scene.
  Parameters:  "scene": Scene that the item was added to.
               "item":  Item that was added.

  "remove" - Item removed from the scene.
  Parameters:  "scene": Scene that the item was removed from.
               "item":  Item that was removed.
2014-01-04 13:47:48 -07:00
jp9000
968f5fed32 Added some return-style functions to calldata.h
When using signal callbacks, there is rarely a need to check to see if
the callback paramters are actually validl; in those cases, if they are
invalid, then the signal is being used incorrectly.  The calldata_get*
functions are meant to be used more for when using dynamic function
calls rather than when using signals.  The calldata_get* functions made
it so that you have to declare your varaibles, and then call that
function to assign that value to those variables, which was slightly
annoying to constantly have to do over and over.

  Therefore I created a few extra functions for returning the value
without having to check for validity.  Although you would think this
would be an issue for maintaining, keep in mind that these functions
return base types.  Admittedly, these functions are merely for
convenience.
2014-01-04 13:28:27 -07:00
Jim
27ccb09473 Merge pull request #19 from asgeirom/master
Adding <linux/time.h> for CLOCK_REALTIME define.
2014-01-04 04:28:31 -08:00
Asgeir Mortensen
c95f133fac Adding <linux/time.h> for CLOCK_REALTIME define. 2014-01-04 10:29:06 +01:00
Zachary Lund
fee0d9a8f3 Minor style fixup 2014-01-04 01:37:00 -06:00
Zachary Lund
8df5293be1 Added GLX version check and assures context is set to none on failure.
Fixed the location glewExperimental was being set to just before glewInit() (where it should be).
2014-01-04 01:29:37 -06:00
Zachary Lund
ffd80449d3 Added gl_update (does nothing for now).
Fix previous commit..
2014-01-04 00:50:40 -06:00
Zachary Lund
3dc2024c8f Remove enable statements. This should be done in platform-independent code using GLEW. 2014-01-04 00:42:23 -06:00
Zachary Lund
94f88c82cf Added OpenGL debug callback support and context changes.
1. We no longer hardcode a 3.2 profile. It chooses the latest profile that fits out description.
2. I added three tables and macros to help with the offsets compared to the variables to help reading. Read comments for more info.
3. I added glewExperimental being set. What a dumb "feature". It doesn't help anything...
2014-01-03 23:14:35 -06:00
Jim
b7eccedf8a Merge pull request #18 from Ceropean/master
fix check_path not using path variable
2014-01-03 18:47:13 -08:00
Ján Mlynek
e38f9d22f6 fix check_path not using path variable 2014-01-03 23:22:49 +01:00
Jim
f76a3db272 Merge pull request #17 from reboot/master
Don't close module if opening failed during graphics initialization
2014-01-03 09:59:57 -08:00
Christoph Hohmann
1a928f638c Don't close module if opening failed during graphics initialization 2014-01-03 18:15:50 +01:00
Palana
70e6e33abd add source of precompiled ffmpeg debian packages to INSTALL 2014-01-03 03:48:39 +01:00
Palana
7ca68a9d04 fix function pointer types in dynamic procedure handler 2014-01-03 02:58:17 +01:00
Palana
e846d0395c remove duplicate lines and reformat for 80 columns limit 2014-01-03 01:50:36 +01:00
computerquip
2a5899d1ec Merge pull request #16 from computerquip/master
Fixed memory leak by calling gl_windowinfo_destroy in platform destruction.
2014-01-02 16:37:18 -08:00
Zachary Lund
9b882768be Fixed memory leak by calling gl_windowinfo_destroy in platform destruction. 2014-01-02 18:35:10 -06:00
Jim
980083c58d Merge pull request #15 from computerquip/master
GLX Implementation along with appropriate autotools changes
2014-01-02 16:28:00 -08:00
Zachary Lund
80b8176e29 GLX implementation and *nix-specific file handling implementation
I added gl-x11 which allows compatibility with X11 (Xlib-based) and GLX.
I also added various functions to handle file finding based on FHS.
Various changes to autotools to both install files correctly and to configure correctly.
2014-01-02 18:20:58 -06:00
jp9000
1c91e0d0e0 forgot to lock the mutex when destroying a scene item 2014-01-01 10:28:37 -07:00
jp9000
966c091078 make scene items use linked list rather than array (containers are a bad habit), add a few functions for getting scene item information, also use a mutex to prevent race conditions when using the linked list 2014-01-01 10:22:55 -07:00
jp9000
96448d7361 add some preliminary compile instructions 2014-01-01 05:13:01 -07:00
Palana
4dfee68dd7 fix warnings in window-namedialog and mark methods as override 2014-01-01 04:06:59 +01:00
Palana
ec5cdf1b17 fix incompatible types warning in signal system 2014-01-01 03:33:16 +01:00
Palana
3c581d7fa2 update cmake compiler flags
- disable -Wshadow for c++ (less semi-bogus warnings for constructors)
- make gcc use c99 mode
2014-01-01 03:17:36 +01:00
Palana
b70df7607c synchronize opengl context access on osx between threads 2013-12-31 18:46:19 +01:00
jp9000
843a092fae fixed starting GL context size to use GetClientSize over GetMinSize 2013-12-31 07:26:24 -07:00
jp9000
e1a32f8eac make it use GetClientSize instead of GetMinSize for when resizing the panel (though at this point I don't think it's going to help anymore) 2013-12-31 07:12:38 -07:00
jp9000
1302e65ee6 create a sizing callback for the preview panel specifically, apparently on macos the window size isn't guaranteed to be the size it's set to in the main window size handler 2013-12-31 07:10:47 -07:00
jp9000
c71eb041b6 fix startup resize issue on osx 2013-12-31 04:02:07 -07:00
jp9000
e2a1186269 one of the problems of doing changes for Objective-C on windows is that you can't actually compile your code and test it before commiting, leading to foolish little errors like 'you forgot to put a semicolen at the end of that call' 2013-12-31 03:13:56 -07:00
jp9000
141b22e76e not sure what was on my mind there but I totally got the variable names wrong in that last commit (for NSOpenGLContext update) 2013-12-31 03:12:31 -07:00
jp9000
969a71d716 call NSOpenGLContext 'update' on opengl context on macos when resizing 2013-12-31 03:09:28 -07:00
jp9000
36041e9d80 display a test source on startup 2013-12-30 15:47:20 -07:00
jp9000
f03d90639a macos cannot have widgets/items with ID of 0 2013-12-30 13:33:13 -07:00
Palana
b002c78fe7 update gitignore for osx binaries 2013-12-30 21:04:01 +01:00
Palana
683585938c add infrastructure for app bundle target and unmark as advanced 2013-12-30 20:52:44 +01:00