]> git.sesse.net Git - casparcg/log
casparcg
9 years agoMerged borderless screen consumer support from 2.0
Helge Norberg [Fri, 21 Aug 2015 13:21:07 +0000 (15:21 +0200)]
Merged borderless screen consumer support from 2.0

9 years agoMerged initializing flash module before image module (.ct before .tga if two files...
Helge Norberg [Fri, 21 Aug 2015 12:51:03 +0000 (14:51 +0200)]
Merged initializing flash module before image module (.ct before .tga if two files has the same name before the extension)

9 years agoMerged OSC audio levels sending
Helge Norberg [Fri, 21 Aug 2015 12:42:04 +0000 (14:42 +0200)]
Merged OSC audio levels sending

9 years agoAdded <stream /> element in example section of casparcg.config
Helge Norberg [Fri, 21 Aug 2015 12:27:10 +0000 (14:27 +0200)]
Added <stream /> element in example section of casparcg.config

9 years agoMerged fixes for flash producer.
Helge Norberg [Fri, 21 Aug 2015 09:19:42 +0000 (11:19 +0200)]
Merged fixes for flash producer.

9 years agoFixed bug in osd_graph where tags where not moved along the graph, but stuck on the...
Helge Norberg [Fri, 21 Aug 2015 07:49:57 +0000 (09:49 +0200)]
Fixed bug in osd_graph where tags where not moved along the graph, but stuck on the right side

9 years ago* Removed provide sync support from newtek_ivga_consumer. It didn't work as expected.
Helge Norberg [Wed, 19 Aug 2015 15:56:28 +0000 (17:56 +0200)]
* Removed provide sync support from newtek_ivga_consumer. It didn't work as expected.
* Removed risk of newtek_ivga_consumer lagging the entire channel if bandwidth/cpu power is not sufficient.

9 years ago- Removed need of non-deterministic sleeps during server shutdown.
Helge Norberg [Tue, 18 Aug 2015 20:14:01 +0000 (22:14 +0200)]
- Removed need of non-deterministic sleeps during server shutdown.
- Made KILL and RESTART shutdown as cleanly as "q".
- Added logging to some destructors to help when debugging shutdown issues.
- Fixed some deadlocks/lifetime issues.

9 years agoMerged OSC consume_time for keep alive detection purposes.
Helge Norberg [Fri, 14 Aug 2015 20:17:00 +0000 (22:17 +0200)]
Merged OSC consume_time for keep alive detection purposes.

9 years ago* Installed general protection fault handler in more places.
Helge Norberg [Fri, 14 Aug 2015 14:43:33 +0000 (16:43 +0200)]
* Installed general protection fault handler in more places.
* Catch and log exceptions in all custom boost::threads
* Log the thread name when logging stack traces.
* Fixed bug in AsyncEventServer destructor where "this" will be destroyed when a posted task is executed.

9 years agoEnabled Linux support for native thread id in INFO THREADS. Also sets the Linux threa...
Helge Norberg [Fri, 14 Aug 2015 13:37:59 +0000 (15:37 +0200)]
Enabled Linux support for native thread id in INFO THREADS. Also sets the Linux thread name that can be viewed in system utilities like ps.

9 years agoFixed compilation problem in Linux
Helge Norberg [Fri, 14 Aug 2015 11:35:38 +0000 (13:35 +0200)]
Fixed compilation problem in Linux

9 years agoMerged fix for asio::io_service lifetime race condition (sometimes destroyed too...
Helge Norberg [Fri, 14 Aug 2015 11:14:11 +0000 (13:14 +0200)]
Merged fix for asio::io_service lifetime race condition (sometimes destroyed too early).

9 years agoMerged possibility to specify another config file than the default casparcg.config...
Helge Norberg [Thu, 13 Aug 2015 18:08:04 +0000 (20:08 +0200)]
Merged possibility to specify another config file than the default casparcg.config via the command line.

9 years agoMerged fix for duplicate CRLF in CINF
Helge Norberg [Thu, 13 Aug 2015 17:57:49 +0000 (19:57 +0200)]
Merged fix for duplicate CRLF in CINF

9 years agoMerged INFO DELAY from 2.0
Helge Norberg [Thu, 13 Aug 2015 17:53:02 +0000 (19:53 +0200)]
Merged INFO DELAY from 2.0

9 years agoMerged INFO THREADS from 2.0
Helge Norberg [Wed, 12 Aug 2015 14:04:10 +0000 (16:04 +0200)]
Merged INFO THREADS from 2.0

9 years agoFixed mistake
Helge Norberg [Wed, 12 Aug 2015 14:01:31 +0000 (16:01 +0200)]
Fixed mistake

9 years agoMerged INFO QUEUES from 2.0
Helge Norberg [Wed, 12 Aug 2015 11:37:04 +0000 (13:37 +0200)]
Merged INFO QUEUES from 2.0

9 years ago* Enforce help descriptions for consumers in code.
Helge Norberg [Tue, 11 Aug 2015 17:55:56 +0000 (19:55 +0200)]
* Enforce help descriptions for consumers in code.
* Added HELP CONSUMER command to list available consumers and get help for them.
* Updated generate_docs.cpp to also include a wiki page for the consumers.

9 years ago* Enforce help descriptions for producers in code.
Helge Norberg [Thu, 2 Jul 2015 21:45:41 +0000 (23:45 +0200)]
* Enforce help descriptions for producers in code.
* Added HELP PRODUCER command to list available producers and get help for them.
* Updated generate_docs.cpp to also include a wiki page for the producers.

9 years ago* Refactored so that frame_consumers are stored in a frame_consumer_registry instance...
Helge Norberg [Wed, 1 Jul 2015 12:34:42 +0000 (14:34 +0200)]
* Refactored so that frame_consumers are stored in a frame_consumer_registry instance instead of being stored in global variables.

9 years ago* Refactored so that frame_producers are stored in a frame_producer_registry instance...
Helge Norberg [Wed, 1 Jul 2015 12:09:35 +0000 (14:09 +0200)]
* Refactored so that frame_producers are stored in a frame_producer_registry instance instead of being stored in global variables.
* Created a new executable called generate_docs which generates the relevant parts of the wiki which can be auto generated from the online help.

9 years ago* Fixed compilation problem in Linux.
Helge Norberg [Tue, 30 Jun 2015 14:23:30 +0000 (16:23 +0200)]
* Fixed compilation problem in Linux.

9 years ago* Merged RESUME command.
Helge Norberg [Tue, 30 Jun 2015 12:53:52 +0000 (14:53 +0200)]
* Merged RESUME command.
* Refactored AMCP commands to simply be implemented as free functions instead of a class for each command. Also added support for considering sub commands as a command on their own, to allow for example MixerCommand to be split up into MIXER FILL and MIXER OPACITY etc.
* Also simplified error handling in AMCP commands by embracing the use of exceptions more (letting AMCPCommandQueue.cpp create the error responses based on the type of exception).
* Created an online help system which could also be leveraged for generating parts of the wiki (AMCP command syntax and other artifacts that are tightly coupled to server code). This makes it easier to be forced to write documentation when adding new AMCP commands etc. The actual documentation for each AMCP command is documented close to the implementation of each command, making it easier to catch inconsistencies in the documentation.
* Added possibility for the SWAP command to swap mixer transformations in addition to the layers themselves.
* Fixed bug in INFO TEMPLATE command.

9 years ago* Fixed compilation problems
Helge Norberg [Tue, 23 Jun 2015 12:03:15 +0000 (14:03 +0200)]
* Fixed compilation problems

9 years ago* Removed unused Windows specific references in streaming_consumer.cpp
Helge Norberg [Tue, 23 Jun 2015 09:03:24 +0000 (11:03 +0200)]
* Removed unused Windows specific references in streaming_consumer.cpp

9 years ago* Added NO_AUTO_DEINTERLACE parameter when adding a screen consumer via AMCP to suppo...
Helge Norberg [Mon, 22 Jun 2015 13:35:59 +0000 (15:35 +0200)]
* Added NO_AUTO_DEINTERLACE parameter when adding a screen consumer via AMCP to support problem in http://casparcg.com/forum/viewtopic.php?f=3&t=3230.

9 years ago* Merged layer_producer and channel_producer from 2.0 to the reroute module (replacin...
Helge Norberg [Thu, 18 Jun 2015 17:34:46 +0000 (19:34 +0200)]
* Merged layer_producer and channel_producer from 2.0 to the reroute module (replacing the existing implementation).
* In order to support route:// without the same intrusive changes in AMCPCommandsImpl.cpp from 2.0, refactored so that every producer factory gets a list of channels.
* Refactored so that frame_factory and video_format_desc is now part of a type called frame_producer_dependencies. The list of channels needed by reroute producer was also added to this class. Future dependencies will not need a change in the signature of every producer factory.
* Fixed possible race condition in stage.cpp where std::map could be modified from multiple threads

9 years ago* Merged streaming_consumer from 2.0
Helge Norberg [Tue, 16 Jun 2015 15:33:43 +0000 (17:33 +0200)]
* Merged streaming_consumer from 2.0
* Merged <CLIENT_IP_ADDRESS> paceholder support on ADD and REMOVE commands
* Made consumers support mixed case parameters, allowing streaming_consumer to work correctly.
* Modified newtek_ivga_consumer AMCP construction to require the parameter DONT_PROVIDE_SYNC instead of the parameter PROVIDE_SYNC, which makes more sense since the default is to provide sync.

9 years ago* Fixed compilation problems in gcc.
Helge Norberg [Tue, 16 Jun 2015 09:30:14 +0000 (11:30 +0200)]
* Fixed compilation problems in gcc.

9 years ago* Merged core/fwd.h from 2.0 and added more types to it. Started using it all over...
Helge Norberg [Mon, 15 Jun 2015 15:25:52 +0000 (17:25 +0200)]
* Merged core/fwd.h from 2.0 and added more types to it. Started using it all over the code.

9 years ago* Merged newtek iVGA consumer from 2.0.
Helge Norberg [Mon, 15 Jun 2015 13:53:11 +0000 (15:53 +0200)]
* Merged newtek iVGA consumer from 2.0.
* Merged possibility for consumers to not participate in frame presentation time synchronization by returning -1 as buffer depth, allowing for unnecessary lags to be avoided when adding/removing consumers that are not expected to present video/audio at a specific time.
* Fixed counter initialization in async destruction proxies (this time it should be fixed).

9 years ago* Changed so that a paused scene still produces new frames, but just does not advance...
Helge Norberg [Fri, 12 Jun 2015 14:04:15 +0000 (16:04 +0200)]
* Changed so that a paused scene still produces new frames, but just does not advance the frame number.

9 years ago* Removed debug statement
Helge Norberg [Fri, 12 Jun 2015 12:53:32 +0000 (14:53 +0200)]
* Removed debug statement

9 years ago* Implemented supports for timeline marks in scene_producer. A mark is set on a speci...
Helge Norberg [Fri, 12 Jun 2015 12:51:46 +0000 (14:51 +0200)]
* Implemented supports for timeline marks in scene_producer. A mark is set on a specific frame and can be of type start, stop, jump_to and remove:
  - A start mark has a name and can be started via call() with "play()" as first parameter and the mark label as the second. A jump_to mark will also make the given start mark be played from (makes looping animations possible). Going to a start mark always causes the scene to unpause.
  - A stop mark on a frame makes the scene pause until a call("play()", mark_label) occurs.
  - When the timeline reaches a jump_to frame the corresponding start mark is seeked to.
  - A remove mark removes the entire scene (saving resources after outro).
  Special start marks are "intro" which will be the first frame if not defined, and "outro" which will be an empty frame if not defined.
  call() with "next()" as first parameter will jump to the next start mark from the current position.
* Created cg_proxy for scene producer going to play mark "intro" on play() and "outro" on stop(). next() jumps to the next start mark from the current frame.
* Implemented interlaced support in scene_producer.
* Implemented support in psd_producer to use the timeline mark features in scene_producer. The marks are stored in the comment track of the psd. A comment on a frame can contain multiple comma separated marks, each with the syntax:
  <mark_type> [label]
  Examples of complete comment tracks (first number is frame number):

  0   "start intro"
  20  "stop intro, start outro"
  40  "remove"

  0   "start intro"
  20  "start loop_begin"
  80  "jump_to loop_begin, start outro"
  100 "remove"
* Fixed bug where usage of chroma key was never reset in the shader.

9 years ago* Instead of merging the chroma key conditional compilation, the uniform conditional...
Helge Norberg [Tue, 9 Jun 2015 10:52:40 +0000 (12:52 +0200)]
* Instead of merging the chroma key conditional compilation, the uniform conditional was moved directly to the main function in the shader, which seems to give the same effect.

9 years ago* Merged chroma key feature, but removed unsupported parameters and color names....
Helge Norberg [Tue, 9 Jun 2015 09:33:50 +0000 (11:33 +0200)]
* Merged chroma key feature, but removed unsupported parameters and color names. Implemented chroma mode in image_transform instead of global layer setting, thus supporting animations as well.
* Implemented support for chroma in scene_producer as well.

9 years ago* Added missing config documentation and wrong default value
Helge Norberg [Fri, 5 Jun 2015 14:36:35 +0000 (16:36 +0200)]
* Added missing config documentation and wrong default value

9 years ago* Merged possibility to set mipmap flag when generating thumbnails.
Helge Norberg [Fri, 5 Jun 2015 14:28:55 +0000 (16:28 +0200)]
* Merged possibility to set mipmap flag when generating thumbnails.

9 years ago* Merged mipmapping_defaul_on configuration property.
Helge Norberg [Fri, 5 Jun 2015 14:00:09 +0000 (16:00 +0200)]
* Merged mipmapping_defaul_on configuration property.

9 years ago* Refactored blend_mode to be part of frame_transform instead of a global parameter...
Helge Norberg [Fri, 5 Jun 2015 12:35:27 +0000 (14:35 +0200)]
* Refactored blend_mode to be part of frame_transform instead of a global parameter on a layer.
* Added support for sub layers in the image mixer.
* Added blend_mode support to layers in a scene_producer.

9 years ago* Merged MIXER MIPMAP support from 2.0. Implemented as a setting in frame_transform...
Helge Norberg [Thu, 4 Jun 2015 14:42:59 +0000 (16:42 +0200)]
* Merged MIXER MIPMAP support from 2.0. Implemented as a setting in frame_transform so it does not have to be a global setting on a layer.
* Exposed mipmap and is_key setting to scene_producer.
* Fixed bug in async destruction of consumers and producers where counter was uninitialized.

9 years ago* Merged MIXER CROP, MIXER ANCHOR, MIXER ROTATION and MIXER PERSPECTIVE from 2.0
Helge Norberg [Wed, 3 Jun 2015 21:15:46 +0000 (23:15 +0200)]
* Merged MIXER CROP, MIXER ANCHOR, MIXER ROTATION and MIXER PERSPECTIVE from 2.0
* Merged reporting of current MIXER values when no parameters are given.
* Changed so that each vertex / texture coordinate pair in frame_geometry is encapsulated in a struct, to not require producers to keep track of indexes in an a array.
* Changed so that the same code in image_kernel draws a single QUAD and a list of QUAD's
* TODO make perspective correction and cropping work with non default geometry like the text producer. Currently no cropping or perspective correction works for custom geometry.
* TODO make interaction coordinate translations work with new transforms.
* Reverted text_producer change so that the baseline of the font is the actual position.
* Fixed so that JSON encoded template data is also forwarded as is, instead of being interpreted as an .ftd file name.
* Implemented anchor, crop, perspective and rotation support in scene_producer

9 years ago* Added interactive parameter to screen consumer in XML configuration. Default is...
Helge Norberg [Tue, 26 May 2015 12:13:55 +0000 (14:13 +0200)]
* Added interactive parameter to screen consumer in XML configuration. Default is true.
* Made screen consumers created via ADD to by default be windowed and interactive. Add FULLSCREEN and NON_INTERACTIVE to negate behavior.

9 years ago* Created BUILDING.txt for describing build process.
Helge Norberg [Mon, 25 May 2015 14:26:08 +0000 (16:26 +0200)]
* Created BUILDING.txt for describing build process.

9 years ago* Build script for windows.
Helge Norberg [Mon, 25 May 2015 13:33:48 +0000 (15:33 +0200)]
* Build script for windows.

9 years ago* Unpack large files before building in Linux build script
Helge Norberg [Fri, 22 May 2015 12:15:16 +0000 (14:15 +0200)]
* Unpack large files before building in Linux build script

9 years ago* Build script for Windows.
Helge Norberg [Thu, 21 May 2015 19:56:18 +0000 (21:56 +0200)]
* Build script for Windows.

9 years ago* Rudimentary support for mouse interaction in html producer. The only interaction...
Helge Norberg [Thu, 21 May 2015 19:15:10 +0000 (21:15 +0200)]
* Rudimentary support for mouse interaction in html producer. The only interaction provider at this point is the screen consumer.

9 years ago* Improved Linux build scripts
Helge Norberg [Thu, 21 May 2015 15:01:02 +0000 (17:01 +0200)]
* Improved Linux build scripts

9 years ago* Initial build scripts for Linux.
Helge Norberg [Thu, 21 May 2015 12:50:31 +0000 (14:50 +0200)]
* Initial build scripts for Linux.

9 years agoMove build scripts from 2.0
Helge Norberg [Thu, 21 May 2015 11:40:37 +0000 (13:40 +0200)]
Move build scripts from 2.0

9 years ago* Upgraded GLEW and added Linux version.
Helge Norberg [Thu, 21 May 2015 11:19:45 +0000 (13:19 +0200)]
* Upgraded GLEW and added Linux version.
* Created deploy folder with run script for linux

9 years ago* Upgraded OpenAL to 1.16 on Windows as well.
Helge Norberg [Wed, 20 May 2015 11:32:29 +0000 (13:32 +0200)]
* Upgraded OpenAL to 1.16 on Windows as well.

9 years ago* Enabled system audio consumer for Linux
Helge Norberg [Wed, 20 May 2015 10:03:51 +0000 (12:03 +0200)]
* Enabled system audio consumer for Linux
* Upgraded OpenAL to newest version.

9 years ago* Removed use of system font folder in favor of only using the configurable fonts...
Helge Norberg [Tue, 19 May 2015 17:25:20 +0000 (19:25 +0200)]
* Removed use of system font folder in favor of only using the configurable fonts folder.
* Ignored get_call_stack in stack traces on Linux.

9 years ago* Updated casparcg.config to not use backslash and to include fonts folder
Helge Norberg [Tue, 19 May 2015 16:30:34 +0000 (18:30 +0200)]
* Updated casparcg.config to not use backslash and to include fonts folder

9 years ago* Fixed CEF compilation error in debug mode.
Helge Norberg [Tue, 19 May 2015 15:58:00 +0000 (17:58 +0200)]
* Fixed CEF compilation error in debug mode.
* Reenabled text producer.
* Upgraded StackWalker and increased STACKWALK_MAX_NAMELEN from 1024 to 4096 (crashes on long function names otherwise).
* Added psd documents as STILL media type in CLS and CINF.

9 years ago* Fixed code standard issues in PSD producer.
Helge Norberg [Mon, 18 May 2015 17:33:17 +0000 (19:33 +0200)]
* Fixed code standard issues in PSD producer.

9 years ago* Fixed code standard issues in PSD producer.
Helge Norberg [Mon, 18 May 2015 17:25:22 +0000 (19:25 +0200)]
* Fixed code standard issues in PSD producer.

9 years ago* Enabled PSD producer in Linux
Helge Norberg [Mon, 18 May 2015 14:16:14 +0000 (16:16 +0200)]
* Enabled PSD producer in Linux
* Fixed some bugs in the PSD producer which made it unportable

9 years ago* Fixed copying of CEF locales and missing copy on Linux
Helge Norberg [Fri, 15 May 2015 18:39:15 +0000 (20:39 +0200)]
* Fixed copying of CEF locales and missing copy on Linux

9 years ago* Downgraded CEF in Windows as well
Helge Norberg [Fri, 15 May 2015 18:01:19 +0000 (20:01 +0200)]
* Downgraded CEF in Windows as well

9 years ago* Added Linux support for html producer
Helge Norberg [Fri, 15 May 2015 15:25:13 +0000 (17:25 +0200)]
* Added Linux support for html producer
* Downgraded CEF (on Linux)

9 years ago* Merged html producer and updated to latest CEF version (does not have satisfactory...
Helge Norberg [Tue, 12 May 2015 11:16:07 +0000 (13:16 +0200)]
* Merged html producer and updated to latest CEF version (does not have satisfactory performance though see http://casparcg.com/forum/viewtopic.php?f=3&t=3153). Registers a cg_proxy implementation as well, to work seamlessly with CG commands.
* Modules can now intercept command line arguments (used by html module) and take complete control of server start up.
* Module uninitialization now in reverse order of initialization.

9 years ago* Compiled ffmpeg for Linux as similary to Zeranoe Windows build as possible.
Helge Norberg [Fri, 8 May 2015 18:16:52 +0000 (20:16 +0200)]
* Compiled ffmpeg for Linux as similary to Zeranoe Windows build as possible.
* Support for finding files on Linux in a case insensitive way.
* Enable stack trace in Linux

9 years ago* Corrected symbolic links
Helge Norberg [Mon, 20 Apr 2015 10:40:35 +0000 (12:40 +0200)]
* Corrected symbolic links

9 years ago* Replaced boost::timer with caspar::timer because of too low resolution on Linux...
Helge Norberg [Mon, 20 Apr 2015 10:34:53 +0000 (12:34 +0200)]
* Replaced boost::timer with caspar::timer because of too low resolution on Linux with boost::timer.
* Decoupled copying of runtime dependencies (dll:s and so:s) from shell to the module most directly dependant on the file.

9 years ago* Adapted decklink module changes made in Linux to work in Windows as well (including...
Helge Norberg [Fri, 17 Apr 2015 13:29:54 +0000 (15:29 +0200)]
* Adapted decklink module changes made in Linux to work in Windows as well (including updating the SDK to 10.4)

9 years ago* Working server startup in Linux
Helge Norberg [Fri, 17 Apr 2015 07:58:01 +0000 (09:58 +0200)]
* Working server startup in Linux
* Decklink module ported to Linux

9 years agoAdjustments in windows after linux changes.
Helge Norberg [Fri, 10 Apr 2015 22:36:35 +0000 (00:36 +0200)]
Adjustments in windows after linux changes.

9 years ago* Added some libraries in linux
Helge Norberg [Fri, 10 Apr 2015 22:17:49 +0000 (00:17 +0200)]
* Added some libraries in linux

9 years ago* Broke out platform specific parts of main.cpp to platform_specific.h with implement...
Helge Norberg [Fri, 10 Apr 2015 13:30:31 +0000 (15:30 +0200)]
* Broke out platform specific parts of main.cpp to platform_specific.h with implementation for windows and noop-version for linux

9 years ago* Extracted module startup from server.cpp to a generated included_modules.h.
Helge Norberg [Fri, 10 Apr 2015 10:50:36 +0000 (12:50 +0200)]
* Extracted module startup from server.cpp to a generated included_modules.h.
* Each module CMakeLists.txt adds itself to included_modules.h, so if a project is not built under for example linux included_modules.h will not try to include the flash module.

9 years ago* Removed hard dependencies to XML based consumer factories, so that server.cpp does...
Helge Norberg [Thu, 9 Apr 2015 13:53:18 +0000 (15:53 +0200)]
* Removed hard dependencies to XML based consumer factories, so that server.cpp does not need to know what kind of consumers there are when iterating the <consumers /> element.

9 years ago* Enabled modules like flash and html (will be merged soon) to hook in CG functionali...
Helge Norberg [Wed, 8 Apr 2015 20:15:36 +0000 (22:15 +0200)]
* Enabled modules like flash and html (will be merged soon) to hook in CG functionality without AMCPCommandsImpl.cpp needing too know about them.
* Removed hard dependencies to flash module from AMCP, CLK and CII protocol implementations, using the above mentioned abstractions.

9 years agoRemoved unused dependencies from protocol make list
Helge Norberg [Tue, 7 Apr 2015 15:53:41 +0000 (17:53 +0200)]
Removed unused dependencies from protocol make list

9 years agoReduced the coupling between specific modules and InfoCommand, VersionCommand and...
Helge Norberg [Tue, 7 Apr 2015 15:43:56 +0000 (17:43 +0200)]
Reduced the coupling between specific modules and InfoCommand, VersionCommand and main.cpp by enabling modules to contribute system information via providers

9 years agoMerged ffmpeg duration column and media_info_repository in CLS and CINF from master...
Helge Norberg [Fri, 27 Mar 2015 14:02:48 +0000 (15:02 +0100)]
Merged ffmpeg duration column and media_info_repository in CLS and CINF from master, and abstracted CLIP_TYPE as well, so that the CLS command does not need to know about media types.

9 years agoFixed build errors under windows
Helge Norberg [Thu, 26 Mar 2015 14:25:25 +0000 (15:25 +0100)]
Fixed build errors under windows

9 years agoMade the server more portable
Helge Norberg [Thu, 26 Mar 2015 12:55:54 +0000 (13:55 +0100)]
Made the server more portable

9 years agoAccidentally took by value instead of by reference.
Helge Norberg [Tue, 24 Mar 2015 20:43:32 +0000 (21:43 +0100)]
Accidentally took by value instead of by reference.

9 years agoFixed bug where avfilter crashes server on some DV files (starts in YUV420p but chang...
Helge Norberg [Tue, 24 Mar 2015 20:38:13 +0000 (21:38 +0100)]
Fixed bug where avfilter crashes server on some DV files (starts in YUV420p but changes to YUV411p after the first frame)

9 years agoFixed build errors under windows
Helge Norberg [Fri, 20 Mar 2015 22:12:23 +0000 (23:12 +0100)]
Fixed build errors under windows

9 years agoMade the code more portable.
Helge Norberg [Fri, 20 Mar 2015 21:39:29 +0000 (22:39 +0100)]
Made the code more portable.

9 years agoRemoved unused library
Helge Norberg [Fri, 20 Mar 2015 09:29:52 +0000 (10:29 +0100)]
Removed unused library

9 years agoCreated CMake build system for building CasparCG Server. To build:
Helge Norberg [Thu, 19 Mar 2015 15:59:35 +0000 (16:59 +0100)]
Created CMake build system for building CasparCG Server. To build:

1. Install CMake
2. Create a folder called build in the root.
3. With the build folder as working directory write:
   cmake -A x64 -G "Visual Studio 12 2013" ..
4. Open build/CasparCG Server.sln

9 years agoInitial checkin of CMake build system
Helge Norberg [Wed, 18 Mar 2015 09:07:08 +0000 (10:07 +0100)]
Initial checkin of CMake build system

9 years ago* Added RxCpp library for LINQ api, replacing Boost.Range based iterations where...
Helge Norberg [Mon, 9 Mar 2015 10:20:33 +0000 (11:20 +0100)]
* Added RxCpp library for LINQ api, replacing Boost.Range based iterations where appropriate (often becomes easier to read). It is missing some features but seems to be somewhat extendable when it comes to terminal operations via its aggregate() method.

9 years agoOGL image_mixer: Fixed a performance hotspot where an idle channel without any layers...
Helge Norberg [Thu, 5 Mar 2015 21:10:47 +0000 (22:10 +0100)]
OGL image_mixer: Fixed a performance hotspot where an idle channel without any layers performs zero initialization of memory for each frame. Now uses a shared memory buffer as big as the biggest video mode available for all channels.

9 years ago- Fixed diag to work with new SFML version.
Helge Norberg [Wed, 4 Mar 2015 14:12:28 +0000 (15:12 +0100)]
- Fixed diag to work with new SFML version.
- Added thread local contextual information which currently include channel and layer where applicable (used by diag).
- Created graph_sink abstraction, separating diag backend from diag API.
- Bundled liberation fonts for use with SFML font rendering.
- In addition to ordinary diag OSD window backend an OSC backend has also been implemented:
  /diag/[graph_id]/text <string> for the name of the graph
  /diag/[graph_id]/color/[value-name] <int> for the 32-bit rgba value of the color for the tag or value with the a given name.
  /diag/[graph_id]/context/channel <int> for the channel that the graph concerns (if any)
  /diag/[graph_id]/context/layer <int> for the layer that the graph concerns (if any)
  /diag/[graph_id]/value/[value-name] <float> for the value generally within 0.0 <= n <= 1.0
  /diag/[graph_id]/tag/[value-name] only sent when an "event" happens, like a dropped frame or similar. Generally no values are sent for value-names dedicated for tagging.

9 years agoCreated template alias for std::vector<T, tbb::cache_aligned_allocator<T>> to caspar...
Helge Norberg [Fri, 20 Feb 2015 20:47:19 +0000 (21:47 +0100)]
Created template alias for std::vector<T, tbb::cache_aligned_allocator<T>> to caspar::cache_aligned_vector<T> which we use heavily throughout the code.

9 years agoRefactored to use non-static data member initializers where it makes sense. Mixes...
Helge Norberg [Fri, 20 Feb 2015 20:22:27 +0000 (21:22 +0100)]
Refactored to use non-static data member initializers where it makes sense. Mixes well with ordinary member initializer lists.

9 years ago* Refactored to use enum class instead of enum_class.
Helge Norberg [Tue, 17 Feb 2015 12:43:42 +0000 (13:43 +0100)]
* Refactored to use enum class instead of enum_class.
* Fixed all warnings in psd project and enabled treat warnings as errors

9 years ago* started using final keyword on classes where previously sealed or commented final
Helge Norberg [Fri, 13 Feb 2015 16:49:27 +0000 (17:49 +0100)]
* started using final keyword on classes where previously sealed or commented final
* removed some lambda workarounds no longer required.

9 years agoRefactored to use range based for instead of BOOST_FOREACH
Helge Norberg [Fri, 13 Feb 2015 15:00:53 +0000 (16:00 +0100)]
Refactored to use range based for instead of BOOST_FOREACH

9 years agoRefactored to use initializer lists and uniform initialization in appropriate places.
Helge Norberg [Fri, 13 Feb 2015 14:14:56 +0000 (15:14 +0100)]
Refactored to use initializer lists and uniform initialization in appropriate places.

9 years agoUsed raw string literals for shader code and regexes.
Helge Norberg [Fri, 13 Feb 2015 09:34:03 +0000 (10:34 +0100)]
Used raw string literals for shader code and regexes.

TODO: timed waiting on deferred futures does not work.

9 years ago* Upgraded to Visual Studio 2013
Helge Norberg [Thu, 12 Feb 2015 15:52:55 +0000 (16:52 +0100)]
* Upgraded to Visual Studio 2013
* Notable changes needed because of boost upgrade:
  - custom async implementation removed in favor of std::async. (boost::async still does not have support for deferred launch policy).
  - std::future instead of boost::future throughout the code because of above change.
  - std::future requires default constructibility, so for example caspar::array has been affected. spl::shared_ptr has been changed to std::shared_ptr in cases where required.
  - boost.log changes adopted from 2.0.7.
* Fixed bugs where some OpenGL resources was not destructed on ogl thread.
* Fixed audio cadence issues in ffmpeg producer.