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