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