-CasparCG 2.1.0 (w.r.t 2.0 Stable)\r
-=================================\r
+C H A N G E S\r
+\r
+CasparCG 2.1.0 Next (w.r.t 2.1.0 Beta 1)\r
+========================================\r
+\r
+General\r
+-------\r
+\r
+ o Fail early with clear error message if configured paths are not\r
+ creatable/writable.\r
+ o Added backwards compatibility (with deprecation warning) for using\r
+ thumbnails-path instead of thumbnail-path in casparcg.config.\r
+ o Suppress the logging of full path names in stack traces so that only the\r
+ relative path within the source tree is visible.\r
+ o General stability improvements.\r
+ o Native thread id is now logged in Linux as well. Finally they are mappable\r
+ against INFO THREADS, ps and top.\r
+ o Created automatically generated build number, so that it is easier to see\r
+ whether a build is newer or older than an other.\r
+ o Changed configuration element mipmapping_default_on to mipmapping-default-on\r
+ for consistency with the rest of the configuration (Jesper Stærkær).\r
+ o Handle stdin EOF as EXIT.\r
+ o Added support for RESTART in Linux startup script run.sh.\r
+ o Copy casparcg_auto_restart.bat into Windows releases.\r
+ o Fixed bug with thumbnail generation when there are .-files in the media\r
+ folder.\r
+ o Removed CMake platform specification in Linux build script\r
+ (Krzysztof Pyrkosz).\r
+ o Build script for building FFmpeg for Linux now part of the repository.\r
+ Contributions during development (not w.r.t 2.1.0 Beta 1):\r
+ + Fix ffmpeg build dependencies on clean ubuntu desktop amd64 14.04.3 or\r
+ higher (Walter Sonius).\r
+ o Added support for video modes 2160p5000, 2160p5994 and 2160p6000\r
+ (Antonio Ruano Cuesta).\r
+\r
+Consumers\r
+---------\r
+\r
+ o FFmpeg consumer:\r
+ + Fixed long overdue bug where HD material was always recorded using the\r
+ BT.601 color matrix instead of the BT.709 color matrix. RGB codecs like\r
+ qtrle was never affected but all the YCbCr based codecs were.\r
+ + Fixed bug in parsing of paths containing -.\r
+ o DeckLink consumer:\r
+ + Fixed possible dead-lock in frame queue.\r
+\r
+Producers\r
+---------\r
+\r
+ o FFmpeg producer:\r
+ + Increased the max number of frames that audio/video can be badly\r
+ interleaved with (Dimitry Ishenko).\r
+ + Fixed bug where decoders sometimes requires more than one video packet to\r
+ decode the first frame.\r
+ + Added support for IN and OUT parameters (Dimitry Ishenko).\r
+ + Added DV/HDV video device support under Linux (Walter Sonius).\r
+ o Framerate producer:\r
+ + Fixed bug when INFO was used on a not yet playing framerate producer.\r
+ o HTML producer:\r
+ + Fixed bug where only URL:s with . in them where recognized.\r
+ o Image producer:\r
+ + Added LENGTH parameter to allow for queueing with LOADBG AUTO.\r
+ o Layer producer:\r
+ + Fixed serious bug where a circular reference of layer producers caused a\r
+ stack overflow and server crash.\r
+ o Scene producer:\r
+ + Added abs() function to expression language.\r
+\r
+Mixer\r
+-----\r
+\r
+ o Fixed bug in the contrast/saturation/brightness code where the wrong luma\r
+ coefficients was used.\r
+ o Rewrote the chroma key code to support variable hue, instead of fixed green\r
+ or blue. Threshold setting was removed in favour of separate hue width,\r
+ minimum saturation and minimum brightness constraints.\r
+ o Fixed bug where glReadPixels() was done from the last drawn to texture\r
+ instead of always from the target texture. This means that for example a\r
+ MIXER KEYER layer without a layer above to key, as well as a separate alpha\r
+ file with MIXER OPACITY 0 now works as expected.\r
+\r
+AMCP\r
+----\r
+\r
+ o INFO PATHS now adds all the path elements even if they are using the default\r
+ values.\r
+ o MIXER CHROMA syntax deprecated (still supported) in favour of the more\r
+ advanced syntax required by the rewritten chroma key code.\r
+ o Added special command REQ that can be prepended before any command to\r
+ identify the response with a client specified request id, allowing a client\r
+ to know exactly what asynchronous response matched a specific request.\r
+ o Added support for listing contents of a specific directory for CLS, TLS,\r
+ DATA LIST and THUMBNAIL LIST.\r
+ o Fixed bug where CINF only returned the first match.\r
+\r
+\r
+\r
+CasparCG 2.1.0 Beta 1 (w.r.t 2.0.7 Stable)\r
+==========================================\r
\r
General\r
-------\r
\r
o 64 bit!\r
+ o Linux support!\r
+ + Moved to CMake build system for better platform independence.\r
+ + Contributions before build system switch (not w.r.t 2.0.7 Stable):\r
+ + gitrev.bat adaptions for 2.1 (Thomas Kaltz III).\r
+ + Thanks to our already heavy use of the pimpl idiom, abstracting platform\r
+ specifics was easily done by having different versions of the .cpp files\r
+ included in the build depending on target platform. No #ifdef necessary,\r
+ except for in header only platform specific code.\r
+ + Flash, Bluefish and NewTek modules are not ported to the Linux build.\r
+ + Contributions during development (not w.r.t 2.0.7 Stable):\r
+ + Fixed compilation problems in Linux build (Dimitry Ishenko).\r
+ + Fixed compilation problem in GCC 5 (Krzysztof Pyrkosz).\r
+ + Fixed thumbnail image saving on Linux (Krzysztof Pyrkosz).\r
+ + Fixed compilation problem in PSD module (Krzysztof Pyrkosz).\r
o Major code refactoring:\r
+ Mixer abstraction so different implementations can be created. Currently\r
- CPU mixer and GPU mixer (previously the usage of the GPU was ) exists.\r
+ CPU mixer and GPU mixer (previously the usage of the GPU was mandatory)\r
+ exists.\r
+ Flattened folder structure for easier inclusion of header files.\r
+ + Many classes renamed to better describe the abstractions they provide.\r
+ + Sink parameters usually taken by value and moved into place instead of\r
+ taken by const reference as previously done.\r
+ Old Windows specific AsyncEventServer class has been replaced by platform\r
independent implementation based on Boost.Asio.\r
+ Pimpl classes are now stack allocated with internal shared_ptr to\r
of via safe_ptr/shared_ptr, because they are internally reference counted.\r
+ Protocol strategies are now easier to implement correctly, because of\r
separation of state between different client connections.\r
- + Much more...\r
- o Data files are now stored in UTF-8 with BOM. Latin1 files are still\r
- supported for backwards compatibility\r
- o Commands written in UTF-8 to log file but only ascii characters to console.\r
- o Added supported video formats:\r
- + 720p2398 (not supported by decklink)\r
- + 720p2400 (not supported by decklink)\r
- + 1080p5994\r
- + 1080p6000\r
- + 720p30 (not supported by decklink)\r
- + 720p29.976 (not supported by decklink)\r
+ + Complete AMCP command refactoring.\r
+ + On-line help system that forces the developer to document AMCP commands,\r
+ producer syntaxes and consumer syntaxes making the documentation coupled\r
+ to the code, which is great.\r
+ + Added missing help for VERSION command (Jesper Stærkær).\r
+ + Upgraded Windows build to target Visual Studio 2015 making it possible to\r
+ use the C++11 features also supported by GCC 4.8 which is targeted on\r
+ Linux.\r
+ + Fixed compilation problems in Visual Studio 2015 Update 1\r
+ (Roman Tarasov)\r
+ + Created abstraction of the different forms of templates (flash, html, psd\r
+ and scene). Each module registers itself as a CG producer provides. All CG\r
+ commands transparently works with all of them.\r
+ + Audio mixer now uses double samples instead of float samples to fully\r
+ accommodate all int32 samples.\r
+ + Reduced coupling between core and modules (and modules and modules):\r
+ + Modules can register system info providers to contribute to INFO SYSTEM.\r
+ + XML configuration factories for adding support for new consumer elements\r
+ in casparcg.config.\r
+ + Server startup hooks can be registered (used by HTML producer to fork\r
+ its sub process).\r
+ + Version providers can contribute content to the VERSION command.\r
+ o Refactored multichannel audio support to use FFmpeg's PAN filter and\r
+ simplified the configuration a lot.\r
+ o Upgraded most third party libraries we depend on.\r
+ o Some unit tests have been created.\r
+ o Renamed README.txt to README, CHANGES.txt to CHANGELOG and LICENSE.txt to\r
+ LICENSE\r
+ o Created README.md for github front page in addition to README which is\r
+ distributed with builds.\r
+ o README file updates (Jonas Hummelstrand).\r
+ o Created BUILDING file describing how to build the server on Windows and\r
+ Linux.\r
+ o Diagnostics:\r
+ + Now also sent over OSC.\r
+ + Diag window is now scrollable and without squeezing of graphs.\r
+ + Contextual information such as video channel and video layer now included\r
+ in graphs.\r
+ o Logging:\r
+ + Implemented a TCP server, simply sending every log line to each connected\r
+ client. Default port is 3250.\r
+ + Changed default log level to info and moved debug statements that are\r
+ interesting in a production system to info.\r
+ + Try to not log full stack traces when user error is the cause. Stacktraces\r
+ should ideally only be logged when a system error or a programming error\r
+ has occurred.\r
+ + More contextual information about an error added to exceptions. An example\r
+ of this is that XML configuration errors now cause the XPath of the error\r
+ is logged.\r
+ + Improved the readability of the log format.\r
+ + Added optional calltrace.log for logging method calls. Allows for trace\r
+ logging to be enabled while calltracing is disabled etc.\r
\r
OSC\r
---\r
\r
- o Technical information about the current state of the server is published via\r
- the OSC protocol via different subjects.\r
- o Examples of information published:\r
- + Different performance metrics.\r
- + Producer names\r
- + Producer specific information\r
- + Consumer names.\r
- + Consumer specific information.\r
+ o Improved message formatting performance.\r
+ o Added possibility to disable sending OSC to connected AMCP clients.\r
+ o Fixed inconsistent element name predefined_client to predefined-client in\r
+ casparcg.config (Krzysztof Pyrkosz).\r
+\r
+Consumers\r
+---------\r
+\r
+ o System audio consumer:\r
+ + Pushes data to openal instead of being callbacked by SFML when data is\r
+ needed.\r
+ + Added possibility to specify the expected delay in the sound card. Might\r
+ help get better consumer synchronization.\r
+ o Screen consumer:\r
+ + Added mouse interaction support, usable by the producers running on the\r
+ video channel.\r
+ o FFmpeg consumer:\r
+ + Replaced by Streaming Consumer after it was adapted to support everything\r
+ that FFmpeg Consumer did.\r
+ + Added support for recording all audio channels into separate mono audio\r
+ streams.\r
+ + Now sends recording progress via OSC.\r
+ o SyncTo consumer:\r
+ + New in 2.1.0.\r
+ + Allows the pace of a channel to follow another channel. This is useful for\r
+ virtual "precomp" channels without a DeckLink consumer to pace it.\r
+ o DeckLink consumer:\r
+ + Added workaround for timescale bug found in Decklink SDK 10.7.\r
+ + Now ScheduledFrameCompleted is no longer only used for video scheduling\r
+ but for audio as well, simplifying the code a lot.\r
+ o iVGA consumer:\r
+ + No longer provides sync to the video channel.\r
+ + Supports NewTek NDI out of the box just by upgrading the\r
+ Processing.AirSend library.\r
+ \r
+Producers\r
+---------\r
+\r
+ o Scene producer:\r
+ + New in 2.1.0.\r
+ + Utilizes CasparCG concepts such as producers, mixer transforms and uses\r
+ them in a nested way to form infinite number of sub layers. Think movie\r
+ clip in Flash.\r
+ + A scene consists of variables, layers, timelines and marks (intro and\r
+ outro for example).\r
+ + Mostly for use by other producers but comes with a XML based producer that\r
+ is a registered CG producer and shows up in TLS.\r
+ + Enables frame accurate compositions and animations.\r
+ + Has a powerful variable binding system (think expressions in After Effects\r
+ or JavaFX Bindings).\r
+ o PSD producer:\r
+ + New in 2.1.0.\r
+ + Parses PSD files and sets up a scene for the Scene producer to display.\r
+ + Text layers based on CG parameters.\r
+ + Supports Photoshop timeline.\r
+ + Uses Photoshop comment key-frames to describe where intro and outro (CG\r
+ PLAY and CG STOP) should be in the timeline.\r
+ + Shows up as regular templates in TLS.\r
+ o Text producer:\r
+ + New in 2.1.0.\r
+ + Renders text using FreeType library.\r
+ + Is used by the PSD producer for dynamic text layers.\r
+ o Image scroll producer:\r
+ + Speed can be changed while running using a CALL. The speed change can be\r
+ tweened.\r
+ + Added support for an absolute end time so that the duration is calculated\r
+ based on when PLAY is called for shows when an exact end time is\r
+ important.\r
+ o Image producer:\r
+ + Fixed bug where too large (OpenGL limit) images were accepted, causing\r
+ problems during thumbnail generation.\r
+ o Framerate producer:\r
+ + New in 2.1.0.\r
+ + Wraps a producer with one framerate and converts it to another. It is not\r
+ usable on its own but is utilized in the FFmpeg producer and the DeckLink\r
+ consumer.\r
+ + Supports different interpolation algorithms. Currently a no-op\r
+ drop-and-repeat mode and a two different frame blending modes.\r
+ + It also supports changing the speed on demand with tweening support.\r
+ o FFmpeg producer:\r
+ + Supports decoding all audio streams from a clip. Useful with .mxf files\r
+ which usually have separate mono streams for every audio channel.\r
+ + No longer do framerate conversion (half or double), but delegates that\r
+ task to the Framerate producer.\r
+ + Added support for v4l2 devices.\r
+ + Added relative and "from end" seeking (Dimitry Ishenko).\r
+ + Contributions during development (not w.r.t 2.0.7 Stable):\r
+ + Fixed 100% CPU problem on clip EOF (Peter Keuter, Robert Nagy).\r
+ + Constrained SEEK within the length of a clip (Dimitry Ishenko).\r
+ + Fixed a regular expression (Dimitry Ishenko).\r
+ o DeckLink producer:\r
+ + No longer do framerate conversion (half or double), but delegates that\r
+ task to the Framerate producer.\r
+ o Route producer:\r
+ + Added possibility to delay frames routed from a layer or a channel.\r
+ o HTML Producer:\r
+ + Disabled web security in HTML Producer (Robert Nagy).\r
+ + Reimplemented requestAnimationFrame handling in Javascript instead of C++.\r
+ + Implemented cancelAnimationFrame.\r
+ + Increased animation smoothness in HTML Producer with interlaced video\r
+ modes.\r
+ + Added remote debugging support.\r
+ + Added mouse interaction support by utilizing the Screen consumer's new\r
+ interaction support.\r
+ o Flash Producer:\r
+ + Contributions during development (not w.r.t 2.0.7 Stable):\r
+ + Workaround for flickering with high CPU usage and CPU accelerator\r
+ (Robert Nagy)\r
+\r
+AMCP\r
+----\r
+\r
+ o TLS has a new column for "template type" for clients that want to\r
+ differentiate between html and flash for example.\r
+ o SET CHANNEL_LAYOUT added to be able to change the audio channel layout of a\r
+ video channel at runtime.\r
+ o HELP command added for accessing the new on-line help system.\r
+ o FLS added to list the fonts usable by the Text producer.\r
+ o LOCK command added for controlling/gaining exclusive access to a video\r
+ channel.\r
+ o LOG CATEGORY command added to enable/disable the new log categories.\r
+ o SWAP command now optionally supports swapping the transforms as well as the\r
+ layers.\r
+ o VERSION command can now provide CEF version.\r
+\r
+\r
+\r
+CasparCG Server 2.0.7 Stable (as compared to CasparCG Server 2.0.7 Beta 2)\r
+==========================================================================\r
+\r
+General\r
+-------\r
+\r
+ o Added support for using a different configuration file at startup than the\r
+ default casparcg.config by simply adding the name of the file to use as the\r
+ first command line argument to casparcg.exe.\r
+ o Upgraded FFmpeg to latest stable.\r
+ o Created build script.\r
+ o Fixed bug where both layer_producer and channel_producer display:s and\r
+ empty/late first frame when the producer is called before the consumer in\r
+ the other end has received the first frame.\r
+ o Added rudimentary support for audio for layer_producer and channel_producer.\r
+ o Upgraded DeckLink SDK to 10.1.4, bringing new 2K and 4K DCI video modes. New\r
+ template hosts also available for those modes.\r
+ o General bug fixes (mostly memory and resource leaks, some serious).\r
+ o Updated Boost to version 1.57\r
+ o Frontend no longer maintained and therefore not included in the release.\r
+\r
+Mixer\r
+-----\r
+\r
+ o Added support for rotation.\r
+ o Added support for changing the anchor point around which fill_translation,\r
+ fill_scale and rotation will be done from.\r
+ o Added support for perspective correct corner pinning.\r
+ o Added support for mipmapped textures with anisotropic filtering for\r
+ increased downscaling quality. Whether to enable by default can be\r
+ configured in casparcg.config.\r
+ o Added support for cropping a layer. Not the same as clipping.\r
+\r
+AMCP\r
+----\r
+\r
+ o Added RESUME command to complement PAUSE. (Peter Keuter)\r
+ o To support the new mixer features the following commands has been added:\r
+\r
+ + MIXER ANCHOR -- will return or modify the anchor point for a layer\r
+ (default is 0 0 for backwards compatibility). Example:\r
+ MIXER 1-10 ANCHOR 0.5 0.5\r
+ ...for changing the anchor to the middle of the layer\r
+ (a MIXER 1-10 FILL 0.5 0.5 1 1 will be necessary to place the layer at the\r
+ same place on screen as it was before).\r
+\r
+ + MIXER ROTATION -- will return or modify the angle of which a layer is\r
+ rotated by (clockwise degrees) around the point specified by ANCHOR.\r
+\r
+ + MIXER PERSPECTIVE -- will return or modify the corners of the perspective\r
+ transformation of a layer. One X Y pair for each corner (order upper left,\r
+ upper right, lower right and lower left). Example:\r
+ MIXER 1-10 PERSPECTIVE 0.4 0.4 0.6 0.4 1 1 0 1\r
+\r
+ + MIXER MIPMAP -- will return or modify whether to enable mipmapping of\r
+ textures produced on a layer. Only frames produced after a change will be\r
+ affected. So for example image_producer will not be affected while the\r
+ image is displayed.\r
+\r
+ + MIXER CROP -- will return or modify how textures on a layer will be\r
+ cropped. One X Y pair each for the upper left corner and for the lower\r
+ right corner.\r
+\r
+ o Added INFO QUEUES command for debugging AMCP command queues. Useful for\r
+ debugging command queue overflows, where a command is deadlocked. Hopefully\r
+ always accessible via console, even though the TCP command queue may be\r
+ full.\r
+ o Added GL command:\r
+ - GL INFO prints information about device buffers and host buffers.\r
+ - GL GC garbage collects pooled but unused GL resources.\r
+ o Added INFO THREADS command listing the known threads and their descriptive\r
+ names. Can be matched against the thread id column of log entries.\r
+\r
+Consumers\r
+---------\r
+\r
+ o Removed blocking_decklink_consumer. It was more like an experiment at best\r
+ and its usefulness was questionable.\r
+ o Added a 10 second time-out for consumer sends, to detect/recover from\r
+ blocked consumers.\r
+ o Some consumers which are usually added and removed during playout (for\r
+ example ffmpeg_consumer, streaming_consumer and channel_consumer) no longer\r
+ affect the presentation time on other consumers. Previously a lag on the SDI\r
+ output could be seen when adding such consumers.\r
+\r
+HTML producer\r
+-------------\r
+\r
+ o No longer tries to play all files with a . in their name.\r
+ (Georgi Chorbadzhiyski)\r
+ o Reimplemented using CEF3 instead of Berkelium, which enables use of WebGL\r
+ and more. CEF3 is actively maintained, which Berkelium is not. (Robert Nagy)\r
+ o Implements a custom version of window.requestAnimationFrame which will\r
+ follow the pace of the channel, for perfectly smooth animations.\r
+ o No longer manually interlaces frames, to allow for mixer fill transforms\r
+ without artifacts.\r
+ o Now uses CEF3 event loop to avoid 100% CPU core usage.\r
+\r
+\r
+\r
+CasparCG Server 2.0.7 Beta 2 (as compared to CasparCG Server 2.0.7 Beta 1)\r
+==========================================================================\r
+\r
+General\r
+-------\r
+\r
+ o Added sending of OSC messages for channel_grid channel in addition to\r
+ regular channels.\r
+\r
+Producers\r
+---------\r
+\r
+ o FFmpeg: Reports correct nb_frames() when using SEEK (Thomas Kaltz III)\r
+ o Flash: Fixed bug where CG PLAY, CG INVOKE did not work.\r
+\r
+Consumers\r
+---------\r
+\r
+ o channel_consumer: Added support for more than one channel_consumer per\r
+ channel.\r
+ o decklink_consumer: Added support for a single instance of the consumer to\r
+ manage a separate key output for use with DeckLink Duo/Quad cards:\r
+\r
+ <decklink>\r
+ <device>1</device>\r
+ <key-device>2</key-device>\r
+ <keyer>external_separate_device</keyer>\r
+ </decklink>\r
+\r
+ ...in the configuration will enable the feature. The value of <key-device />\r
+ defaults to the value of <device /> + 1.\r
+ o synchronizing_consumer: Removed in favour of a single decklink_consumer\r
+ managing both fill and key device.\r
+ o streaming_consumer: A new implementation of ffmpeg_consumer with added\r
+ support for streaming and other PTS dependent protocols. Examples:\r
+\r
+ <stream>\r
+ <path>udp://localhost:5004</path>\r
+ <args>-vcodec libx264 -tune zerolatency -preset ultrafast -crf 25 -format mpegts -vf scale=240:180</args>\r
+ </stream>\r
+\r
+ ...in configuration or:\r
+\r
+ ADD 1 STREAM udp://localhost:5004 -vcodec libx264 -tune zerolatency -preset ultrafast -crf 25 -format mpegts -vf scale=240:180\r
+\r
+ ...via AMCP. (Robert Nagy sponsored by Ericsson Broadcasting Services)\r
+ o newtek_ivga_consumer: Added support for iVGA consumer to not provide channel\r
+ sync even though connected. Useful for iVGA clients that downloads as fast\r
+ as possible instead of in frame-rate pace, like Wirecast. To enable:\r
+\r
+ <newtek-ivga>\r
+ <provide-sync>false</provide-sync>\r
+ </newtek-ivga>\r
+\r
+ ...in config to not provide channel sync when connected. The default is\r
+ true.\r
+\r
+AMCP\r
+----\r
+\r
+ o Added support in ADD and REMOVE for a placeholder <CLIENT_IP_ADDRESS> which\r
+ will resolve to the connected AMCP client's IPV4 address.\r
+ o Fixed bug where AMCP commands split into multiple TCP packets where not\r
+ correctly parsed (http://casparcg.com/forum/viewtopic.php?f=3&t=2480)\r
+\r
+\r
+\r
+CasparCG Server 2.0.7 Beta 1 (as compared to 2.0.6 Stable)\r
+==========================================================\r
+\r
+General\r
+-------\r
+ o FFmpeg: Upgraded to master and adapted CasparCG to FFmpeg API changes\r
+ (Robert Nagy sponsored by SVT)\r
+ o FFmpeg: Fixed problem with frame count calculation (Thomas Kaltz III)\r
+ o Fixed broken CG UPDATE.\r
+\r
+Producers\r
+---------\r
+\r
+ o New HTML producer has been created (Robert Nagy sponsored by Flemish Radio\r
+ and Television Broadcasting Organization, VRT)\r
+\r
+\r
+\r
+CasparCG Server 2.0.6 Stable (as compared to 2.0.4 Stable)\r
+==========================================================\r
+\r
+General\r
+-------\r
+ o iVGA: Allow for the server to work without Processing.AirSend.x86.dll to\r
+ prevent a possible GPL violation. It is available as a separate optional\r
+ download.\r
+ o iVGA: Only provide sync to channel while connected, to prevent channel\r
+ ticking too fast.\r
+ o FFmpeg: Fixed bug during deinterlace-bob-reinterlace where output fields\r
+ were offset by one field in relation to input fields.\r
+ o FFmpeg: Fixed bug in ffmpeg_consumer where an access violation occurred\r
+ during destruction.\r
+ o FFmpeg: Improved seeking. (Robert Nagy and Thomas Kaltz III)\r
+ o Frontend: Only writes elements to casparcg.config which overrides a default\r
+ value to keep the file as compact as possible.\r
+ o System audio: Patched sfml-audio to work better with oal-consumer and\r
+ therefore removed PortAudio as the system audio implementation and went back\r
+ to oal.\r
+ o Flash: Changed so that the initial buffer fill of frames is rendered at a\r
+ frame-duration pace instead of as fast as possible. Otherwise time based\r
+ animations render incorrectly. During buffer recovery, a higher paced\r
+ rendering takes place, but still not as fast as possible, which can cause\r
+ animations to be somewhat incorrectly rendered. This is the only way though\r
+ if we want the buffer to be able to recover after depletion.\r
+ o Fixed race condition during server shutdown.\r
+ o OSC: outgoing audio levels from the audio mixer for each audio channel is\r
+ now transmitted (pFS and dBFS). (Thomas Kaltz III)\r
+ o Stage: Fixed bug where tweened transforms were only ticked when a\r
+ corresponding layer existed.\r
+ o Screen consumer: Added borderless option and correct handling of name\r
+ option. (Thomas Kaltz III)\r
+ o AMCP: CLS now reports duration and framerate for MOVIE files were\r
+ information is possible to extract. (Robert Nagy)\r
+ o Version bump to keep up with CasparCG Client version.\r
+\r
+\r
+\r
+CasparCG Server 2.0.4 Stable (as compared to 2.0.4 Beta 1)\r
+==========================================================\r
+\r
+General\r
+-------\r
+ o Can now open media with file names that only consist of digits.\r
+ (Cambell Prince)\r
+ o Miscellaneous stability and performance improvements.\r
+\r
+Video mixer\r
+-----------\r
+ o Conditional compilation of chroma key support and straight alpha output\r
+ support in shader (just like with blend-modes) because of performance impact\r
+ even when not in use on a layer or on a channel. New <mixer /> element added\r
+ to configuration for turning on mixer features that not everybody would want\r
+ to pay for (performance-wise.) blend-modes also moved into this element.\r
+ o Fixed bug where MIXER LEVELS interpreted arguments in the wrong order, so \r
+ that gamma was interpreted as max_input and vice versa.\r
+\r
+Consumers\r
+---------\r
+ o Added support for NewTek iVGA, which enables the use of CasparCG Server \r
+ fill+key output(s) as input source(s) to a NewTek TriCaster without \r
+ requiring video card(s) in the CasparCG Server machine, or taking up inputs\r
+ in the TriCaster. <newtek-ivga /> element in config enables iVGA on a\r
+ channel. (Robert Nagy sponsored by NewTek)\r
+ o DeckLink: Created custom decklink allocator to reduce the memory footprint.\r
+ o Replaced usage of SFML for <system-audio /> with PortAudio, because of\r
+ problems with SFML since change to static linkage. Also PortAudio seems to\r
+ give lower latency.\r
+\r
+Producers\r
+---------\r
+ o FFmpeg: Added support for arbitrary FFmpeg options/parameters\r
+ in ffmpeg_producer. (Cambell Prince)\r
+ o Flash: Flash Player 11.8 now tested and fully supported.\r
+ o Flash: No longer starts a Flash Player to service CG commands that mean\r
+ nothing without an already running Flash Player.\r
+ o Flash: globally serialize initialization and destruction of Flash Players,\r
+ to avoid race conditions in Flash.\r
+ o Flash: changed so that the Flash buffer is filled with Flash Player\r
+ generated content at initialization instead of empty frames.\r
+\r
+OSC\r
+---\r
+ o Performance improvements. (Robert Nagy sponsored by Boffins Technologies)\r
+ o Never sends old values to OSC receivers. Collects the latest value of each\r
+ path logged since last UDP send, and sends the new UDP packet (to each\r
+ subscribing OSC receiver) with the values collected. (Robert Nagy sponsored\r
+ by Boffins Technologies)\r
+ o Batches as many OSC messages as possible in an OSC bundle to reduce the \r
+ number of UDP packets sent. Breakup into separate packages if necessary to \r
+ avoid fragmentation. (Robert Nagy sponsored by Boffins Technologies)\r
+ o Removed usage of Microsoft Agents library (Server ran out of memory after a\r
+ while) in favour of direct synchronous invocations.\r
+\r
+\r
+\r
+CasparCG Server 2.0.4 Beta 1 (as compared to 2.0.3 Stable)\r
+==========================================================\r
+\r
+General\r
+-------\r
+ o Front-end GUI for simplified configuration and easy access to common tasks.\r
+ (Thomas Kaltz III and Jeff Lafforgue)\r
+ o Added support for video and images file thumbnail generation. By default the\r
+ media directory is scanned every 5 seconds for new/modified/removed files\r
+ and thumbnails are generated/regenerated/removed accordingly.\r
+ o Support for new video modes: 1556p2398, 1556p2400, 1556p2500, 2160p2398,\r
+ 2160p2400, 2160p2500, 2160p2997 and 2160p3000.\r
+ o Experimental ATI graphics card support by using static linking against SFML\r
+ instead of dynamic. Should improve ATI GPU support, but needs testing.\r
+ o Added support for playback and pass-through of up to 16 audio channels. See\r
+ http://casparcg.com/forum/viewtopic.php?f=3&t=1453 for more information.\r
+ o Optimizations in AMCP protocol implementations for large incoming messages,\r
+ for example base64 encoded PNG images.\r
+ o Logging output now includes milliseconds and has modified format:\r
+ YYYY-MM-DD hh:mm:ss.zzz\r
+ o Improved audio playback with 720p5994 and 720p6000 channels.\r
+ o An attempt to improve output synchronization of consumers has been made. Use\r
+ for example:\r
+\r
+ <consumers>\r
+ <synchronizing>\r
+ <decklink>\r
+ <device>1</device>\r
+ <embedded-audio>true</embedded-audio>\r
+ </decklink>\r
+ <decklink>\r
+ <device>2</device>\r
+ <key-only>true</key-only>\r
+ </decklink>\r
+ </synchronizing>\r
+ </consumers>\r
+\r
+ ...to instruct the server to keep both DeckLink consumers in sync with each\r
+ other. Consider this experimental, so don't wrap everything in\r
+ <synchronizing /> unless synchronization of consumer outputs is needed. For\r
+ synchronization to be effective all synchronized cards must have genlock\r
+ reference signal connected.\r
+ o Transfer of source code and issue tracker to github. (Thomas Kaltz III)\r
+\r
+Layer\r
+-----\r
+ o Fixed a problem where the first frame was not always shown on LOAD.\r
+ (Robert Nagy)\r
+\r
+Stage\r
+-----\r
+\r
+ o Support for layer consumers for listening to frames coming out of producers.\r
+ (Cambell Prince)\r
+\r
+Audio mixer\r
+-----------\r
+ o Added support for a master volume mixer setting for each channel.\r
+\r
+Video mixer\r
+-----------\r
+ o Added support for chroma keying. (Cambell Prince)\r
+ o Fixed bug where MIXER CONTRAST set to < 1 can cause transparency issues.\r
+ o Experimental support for straight alpha output.\r
+\r
+Consumers\r
+---------\r
+ o Avoid that the FFmpeg consumer blocks the channel output when it can't keep\r
+ up with the frame rate (drops frames instead).\r
+ o Added support for to create a separate key and fill file when recording with\r
+ the FFmpeg consumer. Add the SEPARATE_KEY parameter to the FFmpeg consumer\r
+ parameter list. The key file will get the _A file name suffix to be picked\r
+ up by the separated_producer when doing playback.\r
+ o The Image consumer now writes to the media folder instead of the data\r
+ folder.\r
+ o Fixed bug in DeckLink consumer where we submit too few audio samples to the\r
+ driver when the video format has a frame rate > 50.\r
+ o Added another experimental DeckLink consumer implementation where scheduled\r
+ playback is not used, but a similar approach as in the bluefish consumer\r
+ where we wait for a frame to be displayed and then display the next frame.\r
+ It is configured via a <blocking-decklink> consumer element. The benefits of\r
+ this consumer is lower latency and more deterministic synchronization\r
+ between multiple instances (should not need to be wrapped in a\r
+ <synchronizing> element when separated key/fill is used).\r
+\r
+Producers\r
+---------\r
+ o Added support for playing .swf files using the Flash producer. (Robert Nagy)\r
+ o Image producer premultiplies PNG images with their alpha.\r
+ o Image producer can load a PNG image encoded as base64 via:\r
+ PLAY 1-0 [PNG_BASE64] <base64 string>\r
+ o FFmpeg producer can now use a directshow input filters:\r
+ PLAY 1-10 "dshow://video=Some Camera"\r
+ (Cambell Prince, Julian Waller and Robert Nagy)\r
+ o New layer producer which directs the output of a layer to another layer via\r
+ a layer consumer. (Cambell Prince)\r
+\r
+AMCP\r
+----\r
+ o The master volume feature is controlled via the MASTERVOLUME MIXER\r
+ parameter. Example: MIXER 1 MASTERVOLUME 0.5\r
+ o THUMBNAIL LIST/RETRIEVE/GENERATE/GENERATE_ALL command was added to support\r
+ the thumbnail feature.\r
+ o ADD 1 FILE output.mov SEPARATE_KEY activates the separate key feature of the\r
+ FFmpeg consumer creating an additional output_a.mov containing only the key.\r
+ o Added KILL command for shutting down the server without console access.\r
+ o Added RESTART command for shutting down the server in the same way as KILL\r
+ except that the return code from CasparCG Server is 5 instead of 0, which\r
+ can be used by parent process to take other actions. The\r
+ 'casparcg_auto_restart.bat' script restarts the server if the return code is\r
+ 5.\r
+ o DATA RETRIEVE now returns linefeeds encoded as an actual linefeed (the\r
+ single character 0x0a) instead of the previous two characters:\r
+ \ followed by n.\r
+ o MIXER CHROMA command added to control the chroma keying. Example:\r
+ MIXER 1-1 CHROMA GREEN|BLUE 0.10 0.04\r
+ (Cambell Prince)\r
+ o Fixed bug where MIXER FILL overrides any previous MIXER CLIP on the same\r
+ layer. The bug-fix also has the side effect of supporting negative scale on\r
+ MIXER FILL, causing the image to be flipped.\r
+ o MIXER <ch> STRAIGHT_ALPHA_OUTPUT added to control whether to output straight\r
+ alpha or not.\r
+ o Added INFO <ch> DELAY and INFO <ch>-<layer> DELAY commands for showing some\r
+ delay measurements.\r
+ o PLAY 1-1 2-10 creates a layer producer on 1-1 redirecting the output of\r
+ 2-10. (Cambell Prince)\r
+\r
+OSC\r
+---\r
+ o Support for sending OSC messages over UDP to either a predefined set of\r
+ clients (servers in the OSC sense) or dynamically to the ip addresses of the\r
+ currently connected AMCP clients.\r
+ (Robert Nagy sponsored by Boffins Technologies)\r
+ o /channel/[1-9]/stage/layer/[0-9]\r
+ + always /paused [paused or not]\r
+ + color producer /color [color string]\r
+ + ffmpeg producer /profiler/time [render time] [frame duration]\r
+ + ffmpeg producer /file/time [elapsed seconds] [total seconds]\r
+ + ffmpeg producer /file/frame [frame] [total frames]\r
+ + ffmpeg producer /file/fps [fps]\r
+ + ffmpeg producer /file/path [file path]\r
+ + ffmpeg producer /loop [looping or not]\r
+ + during transitions /transition/frame [current frame] [total frames]\r
+ + during transitions /transition/type [transition type]\r
+ + flash producer /host/path [filename]\r
+ + flash producer /host/width [width]\r
+ + flash producer /host/height [height]\r
+ + flash producer /host/fps [fps]\r
+ + flash producer /buffer [buffered] [buffer size]\r
+ + image producer /file/path [file path]\r
+\r
+\r
+\r
+CasparCG Server 2.0.3 Stable (as compared to 2.0.3 Alpha)\r
+=========================================================\r
+\r
+Stage\r
+-----\r
+\r
+ o Fixed dead-lock that can occur with multiple mixer tweens. (Robert Nagy)\r
+\r
+AMCP\r
+----\r
+\r
+ o DATA STORE now supports creating folders of path specified if they does not\r
+ exist. (Jeff Lafforgue)\r
+ o DATA REMOVE command was added. (Jeff Lafforgue)\r
+\r
+\r
+\r
+CasparCG Server 2.0.3 Alpha (as compared to 2.0 Stable)\r
+=======================================================\r
+\r
+General\r
+-------\r
+\r
+ o Data files are now stored in UTF-8 with BOM. Latin1 files are still\r
+ supported for backwards compatibility.\r
+ o Commands written in UTF-8 to log file but only ASCII characters to console.\r
+ o Added supported video formats:\r
+ + 720p2398 (not supported by DeckLink)\r
+ + 720p2400 (not supported by DeckLink)\r
+ + 1080p5994\r
+ + 1080p6000\r
+ + 720p30 (not supported by DeckLink)\r
+ + 720p29.976 (not supported by DeckLink)\r
\r
CLK\r
---\r
o Consumers on same channel now invoked asynchronously to allow for proper\r
sync of multiple consumers.\r
o System audio consumer:\r
- + No longer provides sync to caspar.\r
- + Pushes data to openal instead of being callbacked by SFML when data is\r
- needed.\r
+ + no longer provides sync to the video channel.\r
o Screen consumer:\r
+ Support for multiple screen consumers on the same channel\r
- + No longer spin-waits for vsync\r
+ + No longer spin-waits for vsync.\r
+ Now deinterlaces to two separate frames so for example 50i will no longer\r
be converted to 25p but instead to 50p for smooth playback of interlaced\r
content.\r
+ o DeckLink consumer now logs whether a reference signal is detected or not.\r
\r
Producers\r
---------\r
formats. This can be overridden by giving the PROGRESSIVE parameter.\r
+ SPEED parameter now defines pixels per frame/field instead of half pixels\r
per frame. The scrolling direction is also reversed so SPEED 0.5 is the\r
- previous equivalent of SPEED -1. Movements are done with subpixel accuracy\r
+ previous equivalent of SPEED -1. Movements are done with sub-pixel\r
+ accuracy.\r
+ Fixed incorrect starting position of image.\r
+ Rounding error fixes to allow for more exact scrolling.\r
+ Added support for motion blur via a new BLUR parameter\r
+ Added PREMULTIPLY parameter to support images stored with straight alpha.\r
\r
-AMCP\r
-----\r
\r
- o DATA STORE now supports creating folders of path specified if they does not\r
- exist.\r
- o DATA REMOVE command was added.\r
\r
-CasparCG 2.0 Stable (w.r.t Beta 3)\r
-==================================\r
+CasparCG Server 2.0 Stable (as compared to Beta 3)\r
+==================================================\r
\r
General\r
-------\r
---------\r
\r
o File Consumer\r
- + Changed semantics to more closely follow ffmpeg (see forums).\r
+ + Changed semantics to more closely follow FFmpeg (see forums).\r
+ Added options, -r, -acodec, -s, -pix_fmt, -f and more.\r
o Screen Consumer\r
+ Added vsync support.\r
\r
-CasparCG 2.0 Beta 3 (w.r.t Beta 1)\r
-==================================\r
+\r
+\r
+CasparCG Server 2.0 Beta 3 (as compared to Beta 1)\r
+==================================================\r
\r
Formats\r
-------\r
\r
o File Consumer added\r
+ See updated wiki or ask in forum for more information.\r
- + Should support anything ffmpeg supports. However, we will work mainly with\r
- DNXHD, PRORES and H264.\r
+ + Should support anything FFmpeg supports. However, we will work mainly with\r
+ DNxHD, PRORES and H264.\r
- Key-only is not supported.\r
o Bluefish Consumer\r
+ 24 bit audio support.\r
- Embedded-audio does not work with Epoch cards.\r
- o Decklink Consumer\r
+ o DeckLink Consumer\r
+ Low latency enabled by default.\r
+ Added graphs for driver buffers.\r
o Screen Consumer\r
Producers\r
---------\r
\r
- o Decklink Producer\r
- + Improved color quality be avoiding uneccessary conversion to BGRA.\r
+ o DeckLink Producer\r
+ + Improved color quality be avoiding unnecessary conversion to BGRA.\r
o FFMPEG Producer\r
+ Fixed missing alpha for (RGB)A formats when deinterlacing.\r
+ Updated buffering to work better with files with long audio/video\r
+ Improved auto-transcode accuracy.\r
+ Improved seeking accuracy.\r
+ Fixed bug with looping and LENGTH.\r
- + Updated to newer ffmpeg version.\r
+ + Updated to newer FFmpeg version.\r
+ Fixed incorrect scaling of NTSC DV files.\r
+ Optimized color conversion when using YADIF filters.\r
o Flash Producer\r
- + Release flash-player when empty.\r
- + Use native resolution template-host.\r
- + Template-hosts are now choosen automatically if not configured. The\r
- template-host with the corresponding video-mode name is now chosen.\r
+ + Release Flash Player when empty.\r
+ + Use native resolution TemplateHost.\r
+ + TemplateHosts are now chosen automatically if not configured. The\r
+ TemplateHost with the corresponding video-mode name is now chosen.\r
+ Use square pixel dimensions.\r
\r
AMCP\r
previously.\r
o Diagnostics window is now closable.\r
\r
-Configuration\r
--------------\r
\r
- o Simplified.\r
\r
-CasparCG 2.0 Beta 1 (w.r.t Alpha)\r
-=================================\r
+CasparCG Server 2.0 Beta 1 (as compared to Alpha)\r
+=================================================\r
\r
o Blending Modes (needs to be explicitly enabled)\r
+ overlay\r
+ multiply\r
+ and many more.\r
o Added additive keyer in addition to linear keyer.\r
- o Image adjustements\r
+ o Image adjustments\r
+ saturation\r
+ brightness\r
+ contrast\r
+ min output-level\r
+ max output-level\r
+ gamma\r
- o Support for ffmpeg-filters such as (ee http://ffmpeg.org/libavfilter.html)\r
+ o Support for FFmpeg-filters such as (ee http://ffmpeg.org/libavfilter.html)\r
+ yadif deinterlacer (optimized in CasparCG for full multi-core support)\r
+ de-noising\r
+ dithering\r
+ box blur\r
+ and many more\r
o 32-bit SSE optimized audio pipeline.\r
- o Decklink-Consumer uses external-key by default.\r
- o Decklink-Consumer has 32 bit embedded-audio support.\r
- o Decklink-Producer has 32 bit embedded-audio support.\r
- o LOADBG with AUTO feature which automatically playes queued clip when\r
+ o DeckLink-Consumer uses external-key by default.\r
+ o DeckLink-Consumer has 24 bit embedded-audio support.\r
+ o DeckLink-Producer has 24 bit embedded-audio support.\r
+ o LOADBG with AUTO feature which automatically plays queued clip when\r
foreground clip has ended.\r
o STATUS command for layers.\r
o LOG LEVEL command for log filtering.\r
- o MIX transitation work with transparent clips.\r
+ o MIX transition works with transparent clips.\r
o Freeze on last frame.\r
o Producer buffering is now configurable.\r
o Consumer buffering is now configurable.\r
o Now possible to configure template-hosts for different video-modes.\r
- o Added auto transcoder for ffmpeg-producer which automatically transcodes\r
+ o Added auto transcoder for FFmpeg producer which automatically transcodes\r
input video into compatible video format for the channel.\r
+ interlacing (50p -> 50i)\r
+ deinterlacing (50i -> 25p)\r
+ doubling (25p -> 50p)\r
+ halfing (50p -> 25p)\r
+ field-order swap (upper <-> lower)\r
- o Screen consumer now automatically deinterlaces when receiveing interlaced\r
+ o Screen consumer now automatically deinterlaces when receiving interlaced\r
content.\r
o Optimized renderer.\r
o Renderer can now be run asynchronously with producer by using a\r
producer-buffer size greater than 0.\r
o Improved error and crash recovery.\r
o Improved logging.\r
- o Added Image-Scroll-Producer\r
- o Key-only has now near zery performance overhead.\r
- o Reduced memory requirements\r
- o Removed "warm up lag" which occured when playing the first media clip after\r
+ o Added Image-Scroll-Producer.\r
+ o Key-only has now near zero performance overhead.\r
+ o Reduced memory requirements.\r
+ o Removed "warm up lag" which occurred when playing the first media clip after\r
the server has started.\r
o Added read-back fence for OpenGL device for improved multi-channel\r
performance.\r
o Memory support increased from standard 2 GB to 4 GB on 64 bit Win 7 OS.\r
- o Added support for 2* Decklink cards in FullHD.\r
+ o Added support for 2* DeckLink cards in Full HD.\r
o Misc bugs fixes and performance improvements.\r
o Color producer now support some color codes in addition to color codes, e.g.\r
EMPTY, BLACK, RED etc...\r
o Alpha value in color codes is now optional.\r
- o More than 2 Decklink cards might be possible but have not yet been tested.\r
+ o More than 2 DeckLink cards might be possible but have not yet been tested.\r
+\r
\r
-CasparCG 2.0 Alpha (w.r.t 1.8)\r
-==============================\r
+\r
+CasparCG Server 2.0 Alpha (as compared to 1.8)\r
+==============================================\r
\r
General\r
-------\r
\r
- o Mayor refactoring for improved readability and mainainability.\r
- o Some work towards platorm-independence. Currently the greatest challenge for\r
- full platform-independence is flash-producer.\r
+ o Mayor refactoring for improved readability and maintainability.\r
+ o Some work towards platform-independence. Currently the greatest challenge\r
+ for full platform-independence is flash-producer.\r
o Misc improved scalability.\r
o XML-configuration.\r
- o Decklink\r
- + Support for multiple decklink-cards.\r
+ o DeckLink\r
+ + Support for multiple DeckLink cards.\r
\r
Core\r
----\r
\r
o Animated tween transforms.\r
o Image-Mixer\r
- + Fully GPU accelerated (all features listed below are done on the gpu),\r
+ + Fully GPU accelerated (all features listed below are done on the GPU),\r
+ Layer composition.\r
- + Colorspaces (rgba, bgra, argb, yuv, yuva, yuv-hd, yuva-hd).\r
+ + Color spaces (rgba, bgra, argb, yuv, yuva, yuv-hd, yuva-hd).\r
+ Interlacing.\r
- + Per-layer image-transforms:\r
+ + Per-layer image transforms:\r
+ Opacity\r
+ Gain\r
+ Scaling\r
+ Clipping\r
+ Translation\r
- o Audio-Mixer\r
- + Per-layer and per-sample audio-transforms:\r
+ o Audio Mixer\r
+ + Per-layer and per-sample audio transforms:\r
+ Gain\r
- + Fully internal audio-mixing. Single output-video_channel.\r
+ + Fully internal audio mixing. Single output video_channel.\r
\r
Consumers\r
---------\r
\r
- o Decklink-Consumer\r
+ o DeckLink Consumer\r
+ Embedded audio.\r
+ HD support.\r
+ Hardware clock.\r
- o Bluefish-Consumer\r
+ o Bluefish Consumer\r
+ Drivers are loaded on-demand (server now runs on computers without\r
- installed bluefish-drivers).\r
- + Embedded-audio.\r
+ installed Bluefish drivers).\r
+ + Embedded audio.\r
+ Allocated frames are no longer leaked.\r
\r
Producers\r
---------\r
\r
- o Decklink-Producer\r
+ o Decklink Producer\r
+ Embedded audio.\r
+ HD support.\r
- o Color-Producer\r
+ o Color Producer\r
+ GPU accelerated.\r
- o FFMPEG-Producer\r
+ o FFMPEG Producer\r
+ Asynchronous file IO.\r
+ Parallel decoding of audio and video.\r
- + Colorspace transform are moved to gpu.\r
- o Transition-Producer\r
- + Fully interlaced transition (previsously only progressive, even when\r
+ + Color space transform are moved to GPU.\r
+ o Transition Producer\r
+ + Fully interlaced transition (previously only progressive, even when\r
running in interlaced mode).\r
+ Per-sample mixing between source and destination clips.\r
+ Tween transitions.\r
- o Flash-Producer\r
- + DirectDraw access (sligthly improved performance).\r
+ o Flash Producer\r
+ + DirectDraw access (slightly improved performance).\r
+ Improved time-sync. Smoother animations and proper interlacing.\r
- o Image-Producer\r
- + Support for various imageformats through FreeImage library.\r
+ o Image Producer\r
+ + Support for various image formats through FreeImage library.\r
\r
Diagnostics\r
-----------\r
\r
o Graphs for monitoring performance and events.\r
o Misc logging improvements.\r
- o Seperate log-file for every run of the server.\r
+ o Separate log file for every run of the server.\r
o Error logging provides full exception details, instead of only printing that\r
- an error has occured.\r
+ an error has occurred.\r
o Console with real-time logging output.\r
o Console with AMCP input.\r
\r
Removed\r
-------\r
\r
- o Registry-configuration (replaced by XML-Configuration).\r
- o TGA-Producer (replaced by Image-Producer).\r
- o TGA-Scroll-Producer\r
+ o Registry configuration (replaced by XML Configuration).\r
+ o TGA Producer (replaced by Image Producer).\r
+ o TGA Scroll Producer\r