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