Commit Graph

326 Commits (master)

Author SHA1 Message Date
John Bradley 361522198e deps-libff: Workaround to PNG multithreaded bug in ffmpeg
FFMpeg has an issue where png decoding will not correctly
begin until its optimal-thread-detection finishes in
multi-threaded mode. This unfortunately is after decoding
has begun.
2015-03-10 12:55:53 -05:00
John Bradley b3fddc9f53 obs-ffmpeg: Support interrupt callbacks for both av input styles 2015-03-10 12:47:08 -05:00
kc5nra 5d6a4e5172 deps-libff: Add libff library to deps
This library wraps the ffmpeg library and adds some utility
functions and types.
2015-03-09 21:22:32 -05:00
jp9000 0c1d121ff2 Remove various unused variables
Unused variables detected by mingw
2015-02-09 03:49:13 -08:00
martell 119c06198a deps-glad: don't build with -fPIC on windows
-fPIC generates unwanted warnings in mingw on windows.
2015-02-09 03:41:47 -08:00
martell e869a914b0 cmake: exclude w32-pthreads for mingw-w64
mingw-w64 has its own pthreads library
2015-02-08 06:40:15 -08:00
jp9000 5d9526d98c Add ipc-util static library for IPC functions
Originally I made the "win_pipe" stuff for named pipes on windows but it
was argued that it should be available to all modules and
programs/libraries that the modules might communicate with.

It cannot really be put in to libobs due to the fact that there would
hypothetically be things unrelated to libobs that might want to use it,
so I felt the best option was just to create a simple static library
specific for interprocess communication.

Non-windows versions of these functions are still yet to be implemented.
2014-12-08 01:53:53 -08:00
BtbN 3b26db389d Fix Jansson dependency importing 2014-07-17 18:13:25 +02:00
BtbN 34cf2b0528 Add glad headers to CMakeLists 2014-07-10 14:36:56 +02:00
BtbN 6d8146f6f0 Honor QUIET argument in FindJansson 2014-06-18 06:24:21 +02:00
BtbN 2cc24dccab Add support for external jansson 2014-05-24 15:47:03 +02:00
BtbN ce542525fc Fix dependency on win32-pthreads 2014-05-08 14:43:16 +02:00
BtbN b586240fa0 Stop forcing parameters on jansson. Modify their CMakeLists directly instead 2014-04-20 17:51:06 +02:00
BtbN afd8b63687 Fix w32-pthreads build and string handling 2014-04-20 17:51:05 +02:00
jp9000 2faef6f098 Fix jansson_config.h issue 2014-04-19 21:32:02 -07:00
jp9000 903287a3df Add 'SHARED' to add_library in w32-pthreads cmake 2014-04-19 21:08:38 -07:00
jp9000 92812ba313 Make w32-pthreads and jansson shared libraries 2014-04-19 20:33:45 -07:00
BtbN 334792a62c Add glad opengl loader 2014-04-15 22:19:40 +02:00
jp9000 fdd5b2b3b6 Fix a few warnings with jansson 2014-04-14 13:46:07 -07:00
jp9000 92522d1886 Implement RTMP module (still needs drop code)
- Implement the RTMP output module.  This time around, we just use a
   simple FLV muxer, then just write to the stream with RTMP_Write.
   Easy and effective.

 - Fix the FLV muxer, the muxer now outputs proper FLV packets.

 - Output API:
   * When using encoders, automatically interleave encoded packets
     before sending it to the output.

   * Pair encoders and have them automatically wait for the other to
     start to ensure sync.

   * Change 'obs_output_signal_start_fail' to 'obs_output_signal_stop'
     because it was a bit confusing, and doing this makes a lot more
     sense for outputs that need to stop suddenly (disconnections/etc).

 - Encoder API:
   * Remove some unnecessary encoder functions from the actual API and
     make them internal.  Most of the encoder functions are handled
     automatically by outputs anyway, so there's no real need to expose
     them and end up inadvertently confusing plugin writers.

   * Have audio encoders wait for the video encoder to get a frame, then
     start at the exact data point that the first video frame starts to
     ensure the most accrate sync of video/audio possible.

   * Add a required 'frame_size' callback for audio encoders that
     returns the expected number of frames desired to encode with.  This
     way, the libobs encoder API can handle the circular buffering
     internally automatically for the encoder modules, so encoder
     writers don't have to do it themselves.

 - Fix a few bugs in the serializer interface.  It was passing the wrong
   variable for the data in a few cases.

 - If a source has video, make obs_source_update defer the actual update
   callback until the tick function is called to prevent threading
   issues.
2014-04-07 22:00:10 -07:00
BtbN 45ec80fb7d Full rewrite of all CMakeLists
CMake now works on all platforms
2014-01-24 18:56:32 +01:00
jp9000 b404fb7c75 Update jansson subtree to latest revision 2014-01-20 08:49:48 -07:00
jp9000 aead95f5e3 converted project to vs2013, removed 2010 support (ugh) 2013-12-14 16:01:30 -07:00
jp9000 d8b49034c9 added jansson to the main project 2013-11-22 10:02:57 -07:00
jp9000 12790a40b5 Subtree merged in deps/jansson 2013-11-21 16:04:11 -07:00
jp9000 dc38a1b8fc added a 'deps' directory and moved w32-pthreads into it 2013-10-28 06:20:37 -07:00