]> git.sesse.net Git - casparcg/blob - CHANGES.txt
layer: Fixed a problem where first frame was not always shown @ load.
[casparcg] / CHANGES.txt
1 CasparCG 2.0.3 Stable (w.r.t 2.0.3 Alpha)\r
2 =========================================\r
3 \r
4 Stage\r
5 -----\r
6 \r
7   o Fixed dead-lock that can occur with multiple mixer tweens.\r
8 \r
9 AMCP\r
10 ----\r
11 \r
12   o DATA STORE now supports creating folders of path specified if they does not\r
13     exist.\r
14   o DATA REMOVE command was added.\r
15 \r
16 CasparCG 2.0.3 Alpha (w.r.t 2.0 Stable)\r
17 =======================================\r
18 \r
19 General\r
20 -------\r
21 \r
22   o Data files are now stored in UTF-8 with BOM. Latin1 files are still\r
23     supported for backwards compatibility\r
24   o Commands written in UTF-8 to log file but only ascii characters to console.\r
25   o Added supported video formats:\r
26     + 720p2398 (not supported by decklink)\r
27     + 720p2400 (not supported by decklink)\r
28     + 1080p5994\r
29     + 1080p6000\r
30     + 720p30 (not supported by decklink)\r
31     + 720p29.976 (not supported by decklink)\r
32 \r
33 CLK\r
34 ---\r
35 \r
36   o CLK protocol implementation can now serve more than one connection at a time\r
37     safely.\r
38   o Added timeline support to the CLK protocol.\r
39   o Refactored parts of the CLK parser implementation.\r
40 \r
41 Consumers\r
42 ---------\r
43 \r
44   o Consumers on same channel now invoked asynchronously to allow for proper\r
45     sync of multiple consumers.\r
46   o System audio consumer:\r
47     + no longer provides sync to caspar.\r
48   o Screen consumer:\r
49     + Support for multiple screen consumers on the same channel\r
50     + No longer spin-waits for vsync\r
51     + Now deinterlaces to two separate frames so for example 50i will no longer\r
52       be converted to 25p but instead to 50p for smooth playback of interlaced\r
53       content.\r
54   o Decklink consumer now logs whether a reference signal is detected or not.\r
55 \r
56 Producers\r
57 ---------\r
58 \r
59   o Image scroll producer:\r
60     + Field-rate motion instead of frame-rate motion with interlaced video\r
61       formats. This can be overridden by giving the PROGRESSIVE parameter.\r
62     + SPEED parameter now defines pixels per frame/field instead of half pixels\r
63       per frame. The scrolling direction is also reversed so SPEED 0.5 is the\r
64       previous equivalent of SPEED -1. Movements are done with subpixel accuracy\r
65     + Fixed incorrect starting position of image.\r
66     + Rounding error fixes to allow for more exact scrolling.\r
67     + Added support for motion blur via a new BLUR parameter\r
68     + Added PREMULTIPLY parameter to support images stored with straight alpha.\r
69 \r
70 CasparCG 2.0 Stable (w.r.t Beta 3)\r
71 ==================================\r
72 \r
73 General\r
74 -------\r
75 \r
76   o Misc stability and performance fixes.\r
77 \r
78 Consumers\r
79 ---------\r
80 \r
81   o File Consumer\r
82     + Changed semantics to more closely follow ffmpeg (see forums).\r
83     + Added options, -r, -acodec, -s, -pix_fmt, -f and more.\r
84   o Screen Consumer\r
85     + Added vsync support.\r
86 \r
87 CasparCG 2.0 Beta 3 (w.r.t Beta 1)\r
88 ==================================\r
89 \r
90 Formats\r
91 -------\r
92 \r
93   o ProRes Support\r
94     + Both encoding and decoding.\r
95   o NTSC Support\r
96     + Updated audio-pipeline for native NTSC support. Previous implementation\r
97       did not fully support NTSC audio and could cause incorrect behaviour or\r
98       even crashes.\r
99 \r
100 Consumers\r
101 ---------\r
102 \r
103   o File Consumer added\r
104     + See updated wiki or ask in forum for more information.\r
105     + Should support anything ffmpeg supports. However, we will work mainly with\r
106       DNXHD, PRORES and H264.\r
107     - Key-only is not supported.\r
108   o Bluefish Consumer\r
109     + 24 bit audio support.\r
110     - Embedded-audio does not work with Epoch cards.\r
111   o Decklink Consumer\r
112     + Low latency enabled by default.\r
113     + Added graphs for driver buffers.\r
114   o Screen Consumer\r
115     + Changed screen consumer square PAL to the more common wide-square PAL.\r
116     + Can now be closed.\r
117     + Fixed interpolation artifacts when running non-square video-modes.\r
118     + Automatically deinterlace interlaced input.\r
119 \r
120 Producers\r
121 ---------\r
122 \r
123   o Decklink Producer\r
124     + Improved color quality be avoiding uneccessary conversion to BGRA.\r
125   o FFMPEG Producer\r
126     + Fixed missing alpha for (RGB)A formats when deinterlacing.\r
127     + Updated buffering to work better with files with long audio/video\r
128       interleaving.\r
129     + Seekable while running and after reaching EOF. CALL 1-1 SEEK 200.\r
130     + Enable/disable/query looping while running. CALL 1-1 LOOP 1.\r
131     + Fixed bug with duration calculation.\r
132     + Fixed bug with fps calculation.\r
133     + Improved auto-transcode accuracy.\r
134     + Improved seeking accuracy.\r
135     + Fixed bug with looping and LENGTH.\r
136     + Updated to newer ffmpeg version.\r
137     + Fixed incorrect scaling of NTSC DV files.\r
138     + Optimized color conversion when using YADIF filters.\r
139   o Flash Producer\r
140     + Release flash-player when empty.\r
141     + Use native resolution template-host.\r
142     + Template-hosts are now choosen automatically if not configured. The\r
143       template-host with the corresponding video-mode name is now chosen.\r
144     + Use square pixel dimensions.\r
145 \r
146 AMCP\r
147 ----\r
148 \r
149   o When possible, commands will no longer wait for rendering pipeline. This\r
150     reduces command execution latencies, especially when sending a lot of\r
151     commands in a short timespan.\r
152   o Fixed CINF command.\r
153   o ADD/REMOVE no longer require subindex,\r
154     e.g. "ADD 1 SCREEN" / "REMOVE 1 SCREEN" instead of "ADD 1-1 SCREEN" / ...\r
155   o PARAM is renamed to CALL.\r
156   o STATUS command is replaced by INFO.\r
157   o INFO command has been extended:\r
158     + INFO (lists channels).\r
159     + INFO 1 (channel info).\r
160     + INFO 1-1 (layer info).\r
161     + INFO 1-1 F (foreground producer info).\r
162     + INFO 1-1 B (background producer info).\r
163     + INFO TEMPLATE mytemplate (template meta-data info, e.g. field names).\r
164   o CG INFO command has been extended.\r
165     + CG INFO 1 (template-host information, e.g. what layers are occupied).\r
166 \r
167 Mixer\r
168 -----\r
169 \r
170   o Fixed alpha with blend modes.\r
171   o Automatically deinterlace for MIXER FILL commands.\r
172 \r
173 Channel\r
174 -------\r
175 \r
176   o SET MODE now reverts back to old video-mode on failure.\r
177 \r
178 Diagnostics\r
179 -----------\r
180 \r
181   o Improved graphs and added more status information.\r
182   o Print configuration into log at startup.\r
183   o Use the same log file for the entire day, instead of one per startup as\r
184     previously.\r
185   o Diagnostics window is now closable.\r
186 \r
187 Configuration\r
188 -------------\r
189 \r
190   o Simplified.\r
191 \r
192 CasparCG 2.0 Beta 1 (w.r.t Alpha)\r
193 =================================\r
194 \r
195   o Blending Modes (needs to be explicitly enabled)\r
196     + overlay\r
197     + screen\r
198     + multiply\r
199     + and many more.\r
200   o Added additive keyer in addition to linear keyer.\r
201   o Image adjustements\r
202     + saturation\r
203     + brightness\r
204     + contrast\r
205     + min input-level\r
206     + max input-level\r
207     + min output-level\r
208     + max output-level\r
209     + gamma\r
210   o Support for ffmpeg-filters such as (ee http://ffmpeg.org/libavfilter.html)\r
211     + yadif deinterlacer (optimized in CasparCG for full multi-core support)\r
212     + de-noising\r
213     + dithering\r
214     + box blur\r
215     + and many more\r
216   o 32-bit SSE optimized audio pipeline.\r
217   o Decklink-Consumer uses external-key by default.\r
218   o Decklink-Consumer has 32 bit embedded-audio support.\r
219   o Decklink-Producer has 32 bit embedded-audio support.\r
220   o LOADBG with AUTO feature which automatically playes queued clip when\r
221     foreground clip has ended.\r
222   o STATUS command for layers.\r
223   o LOG LEVEL command for log filtering.\r
224   o MIX transitation work with transparent clips.\r
225   o Freeze on last frame.\r
226   o Producer buffering is now configurable.\r
227   o Consumer buffering is now configurable.\r
228   o Now possible to configure template-hosts for different video-modes.\r
229   o Added auto transcoder for ffmpeg-producer which automatically transcodes\r
230     input video into compatible video format for the channel.\r
231     + interlacing (50p -> 50i)\r
232     + deinterlacing (50i -> 25p)\r
233     + bob-deinterlacing (50i -> 50p)\r
234     + bob-deinterlacing and reinterlacing (w1xh150i -> w2xh250i)\r
235     + doubling (25p -> 50p)\r
236     + halfing (50p -> 25p)\r
237     + field-order swap (upper <-> lower)\r
238   o Screen consumer now automatically deinterlaces when receiveing interlaced\r
239     content.\r
240   o Optimized renderer.\r
241   o Renderer can now be run asynchronously with producer by using a\r
242     producer-buffer size greater than 0.\r
243   o Improved error and crash recovery.\r
244   o Improved logging.\r
245   o Added Image-Scroll-Producer\r
246   o Key-only has now near zery performance overhead.\r
247   o Reduced memory requirements\r
248   o Removed "warm up lag" which occured when playing the first media clip after\r
249     the server has started.\r
250   o Added read-back fence for OpenGL device for improved multi-channel\r
251     performance.\r
252   o Memory support increased from standard 2 GB to 4 GB on 64 bit Win 7 OS.\r
253   o Added support for 2* Decklink cards in FullHD.\r
254   o Misc bugs fixes and performance improvements.\r
255   o Color producer now support some color codes in addition to color codes, e.g.\r
256     EMPTY, BLACK, RED etc...\r
257   o Alpha value in color codes is now optional.\r
258   o More than 2 Decklink cards might be possible but have not yet been tested.\r
259 \r
260 CasparCG 2.0 Alpha (w.r.t 1.8)\r
261 ==============================\r
262 \r
263 General\r
264 -------\r
265 \r
266   o Mayor refactoring for improved readability and mainainability.\r
267   o Some work towards platorm-independence. Currently the greatest challenge for\r
268     full platform-independence is flash-producer.\r
269   o Misc improved scalability.\r
270   o XML-configuration.\r
271   o Decklink\r
272     + Support for multiple decklink-cards.\r
273 \r
274 Core\r
275 ----\r
276 \r
277   o Multiple producers per video_channel.\r
278   o Multiple consumers per video_channel.\r
279   o Swap producers between layers and channels during run-time.\r
280   o Support for upper-field and lower-field interlacing.\r
281   o Add and remove consumers during run-time.\r
282   o Preliminary support for NTSC.\r
283 \r
284 AMCP\r
285 ----\r
286 \r
287   o Query flash and template-host version.\r
288   o Recursive media-folder listing.\r
289   o Misc changes.\r
290 \r
291 Mixer\r
292 -----\r
293 \r
294   o Animated tween transforms.\r
295   o Image-Mixer\r
296     + Fully GPU accelerated (all features listed below are done on the gpu),\r
297     + Layer composition.\r
298     + Colorspaces (rgba, bgra, argb, yuv, yuva, yuv-hd, yuva-hd).\r
299     + Interlacing.\r
300     + Per-layer image-transforms:\r
301       + Opacity\r
302       + Gain\r
303       + Scaling\r
304       + Clipping\r
305       + Translation\r
306   o Audio-Mixer\r
307     + Per-layer and per-sample audio-transforms:\r
308         + Gain\r
309     + Fully internal audio-mixing. Single output-video_channel.\r
310 \r
311 Consumers\r
312 ---------\r
313 \r
314   o Decklink-Consumer\r
315     + Embedded audio.\r
316     + HD support.\r
317     + Hardware clock.\r
318   o Bluefish-Consumer\r
319     + Drivers are loaded on-demand (server now runs on computers without\r
320       installed bluefish-drivers).\r
321     + Embedded-audio.\r
322     + Allocated frames are no longer leaked.\r
323 \r
324 Producers\r
325 ---------\r
326 \r
327   o Decklink-Producer\r
328     + Embedded audio.\r
329     + HD support.\r
330   o Color-Producer\r
331     + GPU accelerated.\r
332   o FFMPEG-Producer\r
333     + Asynchronous file IO.\r
334     + Parallel decoding of audio and video.\r
335     + Colorspace transform are moved to gpu.\r
336   o Transition-Producer\r
337     + Fully interlaced transition (previsously only progressive, even when\r
338       running in interlaced mode).\r
339     + Per-sample mixing between source and destination clips.\r
340     + Tween transitions.\r
341   o Flash-Producer\r
342     + DirectDraw access (sligthly improved performance).\r
343     + Improved time-sync. Smoother animations and proper interlacing.\r
344   o Image-Producer\r
345     + Support for various imageformats through FreeImage library.\r
346 \r
347 Diagnostics\r
348 -----------\r
349 \r
350   o Graphs for monitoring performance and events.\r
351   o Misc logging improvements.\r
352   o Seperate log-file for every run of the server.\r
353   o Error logging provides full exception details, instead of only printing that\r
354     an error has occured.\r
355   o Console with real-time logging output.\r
356   o Console with AMCP input.\r
357 \r
358 Removed\r
359 -------\r
360 \r
361   o Registry-configuration (replaced by XML-Configuration).\r
362   o TGA-Producer (replaced by Image-Producer).\r
363   o TGA-Scroll-Producer\r