@@ -12,6 +12,65 @@ include_once("includes/header.php"); | |||
<a href="http://feeds.launchpad.net/kxstudio/announcements.atom"><img src="images/rss.png" alt="RSS"/></a> | |||
</div> | |||
<p> | |||
<span style="font-size: 20px">> Carla 2.0 development progress report</span><br/> | |||
On <i>2013-12-17</i> by<i> falkTX</i> | |||
</p> | |||
<p> | |||
This is a progress report for the new Carla, version 2.0.<br/> | |||
It will take a while to get a release ready, but there are already a few things done and stuff to show. | |||
</p> | |||
<h3>Backend</h3> | |||
<p> | |||
First, <b>the backend is being rewritten to not use any system toolkit</b>.<br/> | |||
In 1.x series I've used Qt4 to handle graphics, but that might be a problem soon with Qt5 (cannot mix Qt4 and Qt5 stuff together).<br/> | |||
Plus I want the Carla backend to be toolkit agnostic, so that in the future it may be re-usable for others no matter what their main toolkit is.<br/> | |||
The main backend header files are now ANSI C compatible, thus increasing the chances of re-usability (as some Linux developers have a weird aversion to C++...). | |||
</p> | |||
<p> | |||
Because Qt is no longer used in the backend code, I needed something else to handle graphics and other advanced stuff - Juce was selected for this.<br/> | |||
Juce is a C++ framework focused on audio applications and plugins, which suits Carla nicely.<br/> | |||
There's a lot of useful things inside it that will make developing new features much easier (like the internal patchbay mode).<br/> | |||
Other things like AU and VST3 plugin hosting will be possible too thanks to Juce, although they are not relevant to Linux. | |||
</p> | |||
<p> | |||
Loading <b>Carla as a plugin</b> is also being worked on.<br/> | |||
There target two main targets with this: | |||
</p> | |||
<ul> | |||
<li>Load entire Carla projects - rack or patchbay - as a single plugin in the graph (avoiding clutter);</li> | |||
<li>Carla itself as an LV2 plugin;</li> | |||
</ul> | |||
<p> | |||
If you been following the LinuxMusicians forums you know that internal Carla plugins are already available as LV2 plugins (yes, that includes zynaddsubfx-lv2!).<br/> | |||
Once the Carla internal plugin work is complete, you automatically get an LV2 version of it as well! :D | |||
</p> | |||
<h3>Front-end</h3> | |||
<p> | |||
There has been a few changes on the UI side as well.<br/> | |||
For example, the <b>plugin edit dialog</b> now looks like this: | |||
</p> | |||
<p> | |||
<img src="/screenshots/news/carla-2.0-report_edit-dialog.png" alt=""/> | |||
</p> | |||
<p> | |||
As seen the image, the user will be able to use "Stereo Balance" or "Mono Panning".<br/> | |||
The new layout also allows for a much <b>smaller window size</b>.<br/> | |||
</p> | |||
<p> | |||
Lastly, there's plans to bring <b>custom skins to plugin "slots"</b>, in a similar way to Reason.<br/> | |||
This is something I still have to investigate to find the best possible way to do it.<br/> | |||
It should be expandable so that random plugins can also use skins, probably via a new LV2 extension.<br/> | |||
</p> | |||
<br/> | |||
<p> | |||
That's all for now.<br/> | |||
Soon there will be a new DISTRHO release, so stay tuned! | |||
</p> | |||
<hr/> | |||
<p> | |||
<span style="font-size: 20px">> New releases and future plans</span><br/> | |||
On <i>2013-11-27</i> by<i> falkTX</i> | |||
@@ -47,8 +47,8 @@ include_once("includes/header.php"); | |||
<pre class="code"> | |||
<span style="color: rgb(110, 110, 110);"># Install needed tools</span> | |||
sudo apt-get install software-properties-common wget<br/> | |||
<span style="color: rgb(110, 110, 110);"># Enable KXStudio repo</span> | |||
sudo /usr/bin/add-apt-repository -y ppa:kxstudio-debian/kxstudio<br/> | |||
<span style="color: rgb(110, 110, 110);"># Enable KXStudio repo (press 'Enter' once asked)</span> | |||
sudo add-apt-repository ppa:kxstudio-debian/kxstudio<br/> | |||
<span style="color: rgb(110, 110, 110);"># Update software sources</span> | |||
sudo apt-get update<br/> | |||
<span style="color: rgb(110, 110, 110);"># Install kxstudio-repos</span> | |||
@@ -432,6 +432,38 @@ fieldset table { | |||
background:none repeat scroll 0 0 transparent; | |||
} | |||
#div_menuSoftware { | |||
position: absolute; | |||
top: 30px; | |||
left: 0px; | |||
background-color: #111111; | |||
border-top: 1px solid #222222; | |||
padding: 0px; | |||
visibility: hidden; | |||
text-decoration: none; | |||
z-index: 99; | |||
} | |||
#div_menuSoftware p { | |||
color: #F0F0F0; | |||
margin: 0 0 0 0; | |||
padding-top: 4px; | |||
padding-bottom: 4px; | |||
padding-left: 16px; | |||
padding-right: 16px; | |||
border: 1px solid #222222; | |||
border-top: 0px; | |||
} | |||
#div_menuSoftware a { | |||
color: #F0F0F0; | |||
text-decoration: none; | |||
} | |||
#div_menuSoftware a:hover, #div_menuSoftware a:focus { | |||
color: #6464E6; | |||
} | |||
#donations_container { | |||
padding-left: 10px; | |||
padding-right: 10px; | |||
@@ -30,8 +30,10 @@ else*/ | |||
<?php if ($PAGE_TYPE == "HOME") { ?> | |||
<script type="text/javascript" src="includes/jquery-1.4.2.min.js"></script> | |||
<script type="text/javascript" src="includes/responsiveslides.min.js"></script> | |||
<?php } ?> | |||
<script type="text/javascript"> | |||
$(window).load(function() { | |||
<?php if ($PAGE_TYPE == "HOME") { ?> | |||
$(window).load(function(){ | |||
$(".rslides").responsiveSlides({ | |||
auto: true, | |||
nav: true, | |||
@@ -41,6 +43,46 @@ else*/ | |||
namespace: "large-btns" | |||
}); | |||
}); | |||
<?php } ?> | |||
function itemSoftwareClicked(event){ | |||
event.stopPropagation(); | |||
var objSoftwareMenu = document.getElementById("div_menuSoftware"); | |||
if (objSoftwareMenu.style.visibility != "visible") | |||
{ | |||
var leftPos = document.getElementById("item-soft").getBoundingClientRect().left - 1; | |||
objSoftwareMenu.style.left = "" + leftPos + "px"; | |||
objSoftwareMenu.style.visibility = "visible"; | |||
} | |||
else | |||
{ | |||
objSoftwareMenu.style.visibility = "hidden"; | |||
} | |||
return false; | |||
}; | |||
function bodyClicked(){ | |||
var objSoftwareMenu = document.getElementById("div_menuSoftware"); | |||
if (objSoftwareMenu.style.visibility == "visible") | |||
objSoftwareMenu.style.visibility = "hidden"; | |||
return true; | |||
}; | |||
</script> | |||
<?php if ($PAGE_TYPE == "DONATIONS") { ?> | |||
<script type="text/javascript"> | |||
/* <![CDATA[ */ | |||
(function() { | |||
var s = document.createElement('script'), t = document.getElementsByTagName('script')[0]; | |||
s.type = 'text/javascript'; | |||
s.async = true; | |||
s.src = 'http://api.flattr.com/js/0.6/load.js?mode=auto'; | |||
t.parentNode.insertBefore(s, t); | |||
})(); | |||
/* ]]> */ | |||
</script> | |||
<?php } else if ($PAGE_TYPE == "PASTE") { ?> | |||
<link rel="stylesheet" href="<?php echo $ROOT; ?>/paste/kxstudio.css" type="text/css" media="screen" /> | |||
@@ -72,26 +114,22 @@ else*/ | |||
resize: none; | |||
} | |||
</style> | |||
<?php } else if ($PAGE_TYPE == "DONATIONS") { ?> | |||
<script type="text/javascript"> | |||
/* <![CDATA[ */ | |||
(function() { | |||
var s = document.createElement('script'), t = document.getElementsByTagName('script')[0]; | |||
s.type = 'text/javascript'; | |||
s.async = true; | |||
s.src = 'http://api.flattr.com/js/0.6/load.js?mode=auto'; | |||
t.parentNode.insertBefore(s, t); | |||
})(); | |||
/* ]]> */ | |||
</script> | |||
<?php } ?> | |||
</head> | |||
<?php if ($PAGE_TYPE == "HOME") { ?> | |||
<body class="mediawiki ltr ns-0 ns-subject skin-bentofluid" style="min-width:1076px"> | |||
<body class="mediawiki ltr ns-0 ns-subject skin-bentofluid" style="min-width:1080px" onClick="return bodyClicked();"> | |||
<?php } else { ?> | |||
<body class="mediawiki ltr ns-0 ns-subject skin-bentofluid"> | |||
<body class="mediawiki ltr ns-0 ns-subject skin-bentofluid" style="min-width:1080px" onClick="return bodyClicked();"> | |||
<?php } ?> | |||
<!-- Software sub menu --> | |||
<div id="div_menuSoftware"> | |||
<p><a href="<?php echo $ROOT; ?>/Applications"><img src="<?php echo $ROOT; ?>/images/ico_cadence.png" alt=""/> Applications</a></p> | |||
<!-- <div></div> --> | |||
<p><a href="<?php echo $ROOT; ?>/Plugins"><img src="<?php echo $ROOT; ?>/images/ico_distrho.png" alt=""/> Plugins</a></p> | |||
</div> | |||
<!-- Top link --> | |||
<a name="Top" id="Top"></a> | |||
<!-- Start: Header --> | |||
@@ -102,10 +140,10 @@ else*/ | |||
</a> | |||
<a id="header-home" href="<?php echo $ROOT; ?>/" style="font-size:1.2em">Home</a> | |||
<ul id="global-navigation"> | |||
<li id="item-apps"><a href="<?php echo $ROOT; ?>/Applications">Applications</a></li> | |||
<li id="item-plugins"><a href="<?php echo $ROOT; ?>/Plugins">Plugins</a></li> | |||
<li id="item-news"><a href="<?php echo $ROOT; ?>/News">News</a></li> | |||
<li id="item-soft"><a href="#" onClick="return itemSoftwareClicked(event);">Software ▼</a></li> | |||
<li id="item-repos"><a href="<?php echo $ROOT; ?>/Repositories">Repositories</a></li> | |||
<li id="item-documentation"><a href="<?php echo $ROOT; ?>/Documentation">Documentation</a></li> | |||
<li id="item-docs"><a href="<?php echo $ROOT; ?>/Documentation">Documentation</a></li> | |||
<li id="item-donate"><a href="<?php echo $ROOT; ?>/Donations">Donations</a></li> | |||
<li id="item-downloads"><a href="<?php echo $ROOT; ?>/Downloads">Downloads</a></li> | |||
<li id="item-paste"><a href="<?php echo $ROOT; ?>/Paste">Paste</a></li> | |||