Helge Norberg [Thu, 15 Aug 2013 15:40:57 +0000 (17:40 +0200)]
#155
Fixed problem where SFML stops calling SoundStream::OnGetData when too few samples are returned. This problem seems to have started after the change to static linking against SFML. The current solution is to collect the samples of more frames (3) before returning sample data. This unfortunately adds a 2 frame delay on system audio, but solves the choppyness.
Helge Norberg [Thu, 27 Jun 2013 15:52:36 +0000 (17:52 +0200)]
Corrected line lengths (should always be under 80 characters), inconsistent amount of newlines between sections and removed trailing whitespace from CHANGES.txt and README.txt
Helge Norberg [Tue, 25 Jun 2013 13:55:46 +0000 (15:55 +0200)]
Added new decklink consumer implementation which does not use scheduled playback but uses DisplayVideoFrameSync() and sleeps until frame has been shown using the timing information returned by GetHardwareReferenceClock(). This seems to reduce the latency (although not as much as I would have hoped) and provide for more deterministic synchronization between multiple instances (for example a Decklink Quad with one device used for fill and another for key).
Helge Norberg [Tue, 18 Jun 2013 12:26:43 +0000 (14:26 +0200)]
Experimental support for synchronizing output of multiple consumers. For example using a Decklink Quad with one consumer for fill and one for key. Place the consumer elements in casparcg.config within a <synchronizing /> element. For example:
Helge Norberg [Tue, 11 Jun 2013 14:31:55 +0000 (16:31 +0200)]
Experimental support for switching output between premultiplied / straight alpha
Use
MIXER 1 STRAIGHT_ALPHA_OUTPUT 1
to turn on straight alpha output on channel 1 or configure it in casparcg.config under the <straight-alpha-output /> element for the channel
Helge Norberg [Tue, 4 Jun 2013 15:26:44 +0000 (17:26 +0200)]
straighten alpha before applying contrast-saturation-brightness when contrast is less than 1 and remultiply afterwards to prevent rgb values from rising above alpha value for each pixel.
cambell [Fri, 31 May 2013 02:01:53 +0000 (09:01 +0700)]
Rebase parameters branch on current master.
* Change parameters const& to const parameters& for coding style.
* Update thumbnail producer to use parameters class.
* Update some methods to use params.get(...) rather than get_params.
Helge Norberg [Wed, 29 May 2013 07:53:25 +0000 (09:53 +0200)]
Fixed problem in audio_mixer where a default constructed channel_layout was used. Also fixed so that default constructed channel_layout and mix_config instances doesn't have uninitialized members
Helge Norberg [Mon, 27 May 2013 18:23:42 +0000 (20:23 +0200)]
Modified OSC support so that whenever an AMCP connection is established an OSC client is started against the AMCP client ip using a default udp port configurable in casparcg.config. The OSC client will follow the lifycycle of the AMCP connection. A <osc><predefined-clients></predefined-clients></osc> element is provided to setup persistent OSC clients just as today.
Reduced use of temporaries and minor optimizations in AMCPProtocolStrategy::Parse in order to address #113
also increased buffersize in SocketInfo to be more efficient
Made audio_candence sequences mean the number of samples per channel instead of the number of samples for *both* channels
#6
Fixed bug where we give too few samples to the decklink driver each time RenderAudioSamples() is called (constant rate of 50 calls per second) when the video format has a frame rate > 50 like 59.94 and 60
Robert Nagy [Sun, 14 Apr 2013 17:12:40 +0000 (19:12 +0200)]
- Implemented real-time state notification using OSC-UDP.
Commit sponsored by Boffins Technologies.
Notes:
- Based on similar functionality in CasparCG 2.1.
- Note not all events/messages from 2.1 are implemented.
Changes w.r.t CasparCG 2.1:
- Better performance.
- Use UDP instead of TCP.
- Configurable in casparcg.config.
- Use "Microsoft Asynchronous Agents Message Blocks" API (included in VS2010+), instead of custom "reactive" solution.