Archive for July, 2009

Modartt presents Rock piano, an add-on (29$) that brings 3 new pop/rock pianos : YC5 Stage, YC5 Chamber and YC5 Studio. Audio demos are available, and the extension is provided for free with Pianoteq 3 until end of September.

Kontakt 3.5 is available. As stated in the previous beta, this update brings support for 64 bits addressing, in order to bypass the 4Gb samples memory limit. Under MacOSX this feature is allowed thanks to NI’s Memory Server, a separate non GUI process (Unix/BSD 64 bits) that communicates with the Kontakt plugin (such trick was used in EastWest’s PLAY player), and then also works on Tiger (only Leopard allows GUI processes to use 64 bits modes – on Tiger only non GUI processes are allowed to. Moreover since Leopard the Carbon 64 bits APIs have been dropped, and we have to use Cocoa to gain 64 bits addressing).
Thanks to this solution the 64 bits mode also works when the Kontakt plugin is hosted in a 32 bits sequencer (Logic, ProTools). The DFD mode has also been enhanced (uses less memory).

On theMozilla site we can find an article about support for Access Control for Cross-Site Requests in Firefox 3.5. This recommandation submitted to W3C allows to circumvent the same orgin policy limitation in a secure way, in order to provide cross-domain access using XMLHttpRequest (then no need for JSONP). The principle is to specify, through new headers, the origin for client requests, and allowed origins in server’s responses (requires an additional initial request, managed automatically by Firefox, in the same way as with native browser digest authentication – the unique XMLHttpRequest object is reused automatically by the browser to send the original data once access rights are checked). It also allows to manage cookies (unavailable using JSONP).

We can discover on the WebKit site a new demo that features CSS 3D Transforms : Poster Circles. We could also see Snow Stack demo at satine.org, and Animated CSS3 Cube at fofronline.com. The CSS 3D Transforms have been available on the iPhone WebKit since iPhone OS 2.0 (hardware accelerated), and more recently on the Snow Leopard WebKit. Now this feature is available also on the latest WebKit nightly builds for Leopard (still not present in Safari 4 – previously only CSS 2D Transforms were provided). Apple submitted this CSS extension to W3C (contrary to Microsoft whose Silverlight features are closed, and Adobe whose container is even more proprietary and opaque).

This year, enhancements in Apple’s WebKit (also promoted by Google – used in Chrome) – CSS Effects and recently WebSockets -, HTML5 (audio and video tags, javascript database, application cache, subprocesses), and Mozilla’s Canvas (Canvas 3D JS Libary) – and Google’s O3D, seem to indicate the upcoming demise of Flash (and of Silverlight probably shortly thereafter). Flash will then never be available on iPhone, even considering Adobe may decide this time (because has no other choice) to bring an optimized Flash version (performances of Flash are really bad on MacOSX, and not that great on Windows). In Snow Leopard we can now see Safari subprocesses (created by plugins) and see how much CPU Flash uses (too much, even on Windows).

masterDetailViewA new version of CP2JavaWS is available. Besides enhancements for CPTableViewDelegate and bug fixes, it brings a Direct2CP mode (Direct2Java like for CP client), that allows to display a Master/Detail view, by simply providing the CP elements class name (and additional selection criteria for the master table if needed) :

– refactored the request management (mode switch, CPURLConnection/CPJSONP creation, delegate and auth. delegate creation, encoding and decoding) in a new class, CP2JavaWSHttpSender, as it is used by both CPRemoteService and CP2JavaWSTableViewDelegate. The CP2JavaWSHttpSender allows to specify if call arguments have to be encoded (CP to js conversion before js to JSON), and if result has to be decoded (js to CP after JSON to js).

– For remote service methods that have generic argument types (Object), we can now pass to the CP2JavaWSHttpSender an array of generic parameters indexes (required as on the Java server side we then cannot discover the generic Object type from the passed parameter value).

– reponses with error code didn’t trigger anymore the failHandler since CPURConnection doesn’t check anymore for error codes (in order to allow to perform action depending on the error code).

– fixed a problem in Decoder, where empty Date on JS object was setted as undefined on the CP object instead of null, and where JS boolean fields with false value where treated as unset.

– CP2JavaWSTableViewDelegate can now be used in two modes : in the first mode the full CP objects are returned for each requested row (slower but we then still have the full object if we select it for editing in the detail view – then no need for additional read request).
In the second mode the return (for a row) is a tab of values (each value is the final attribute corresponding to the specified attribute path – setted as the column’s id), that is faster (attributes paths are passed to the select HQL request – faster than a select *, and no decoding occurs on the client side – result encoding to JSON on the server side is also faster) but requires an additional read for editing. In both cases the displayed values correspond to the columns’ ids, and can be nested attributes paths.

– a new object, CP2JavaWSMasterDetailView allows to display and manage automatically a Master/Detail view for a specified CP business class (sort of a Direct2CP, that uses CP2JavaWSTableViewDelegate). We can specify specific attributes paths to display in the master view (tableView), as we may want to display only a few of those (and the whole attributes values in the detail view). If not precised, the master view will display a column for each attribute (the elements CP class ivars are introspected recursively – so we get a column for each nested CP object’s attributes).
endPoint1 = [CP2JavaWSEndPoint createForURL:"http://host/appName/endpointName"];
var masterDetailView = [CP2JavaWSMasterDetailView createForEndPoint:endPoint1 elementsClassName:"MyCustomClass" idAttName:"customerId" masterAttributes:["customerId", "name", "age"] criterias:nil rect:CGRectMake(x, y, w, h)];

Depending on the attribute type (string/integer, boolean, date) the detail view adds a CPTextField, CPCheckBox, etc. To use combo lists for some attributes values editing,  a next update will allow to specify RemoteValuesListDescriptors, that will store the endpoint (if different) and remote services (if many) that return the corresponding combo lists values.
By clicking on a row in the master view (tableView), the detail view fields are automatically filled. The detail view contains a Modify button, that automatically calls the generic RemoteDAOService to update the object.
We can pass a custom detail view if needed (that will have to implement some delegate methods to fill the editing fields, and use the provided DetailViewDelegate for changes submission).

Note : the Objective-J/preprocess.js (or Frameworks/Objective-J/Objective-J.js) has to be modified using the provided file changes in order to manage ivar types (required for the new MasterDetail view).

Best Service : TITAN

Posted: July 9, 2009 in Audio
Tags: , , , ,

Best Service unveiled TITAN (will be released July, 15) – in fact we discovered it some months ago in the Best Service paper catalog. This library includes 5500 multisamples (100 000 samples, 36 Gb) of sounds from 200 synthesizers of 80s and 90s (and from recent virtual plugins) : 2327 Synth Sounds, 1200 Pads & Atmospheres, 778 Basses, 250 Synth-Brass & Real Brass Sounds, 100 Guitars, 161 Choirs & Voices, 227 Pianos, hundreds of effect-sounds, and Bonus-Bank (170 original vintage string synths from over 20 different original instruments).
The ENGINE player (developed in collaboration with Yellow Tools) is provided (includes 400 impulse responses), and also works on G4. Videos are available, and the library is priced 249 euros.

VLC 1.0 available

Posted: July 7, 2009 in Apple
Tags: , ,

The final 1.0 version of VLC is available. That is here for the PowerPC version. Leopard (OSX 10.5) is required. Among new supported codecs are AES3, Dolby Digital Plus, TrueHD, Blu-Ray Linear PCM, Real Video 3.0 and 4.0, Raw Dirac, M2TS.