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