# Copyright (C) 2002-2004 gregoire HUBERT.
#
# This library is free software; you can redistribute it and/or
# modify it under the terms of the GNU Lesser General Public
# License as published by the Free Software Foundation; either
# version 2.1 of the License, or (at your option) any later version.
#
# This library is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
# Lesser General Public License for more details.
#
# You should have received a copy of the GNU Lesser General Public
# License along with this library; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
#
# Author : gregoire HUBERT
#
# XML_node.objet
#
# This object is an XML node representation
#
# /- name (string)
# xml_node --- attributes (array)
# \- children (array) or value (string)
class xml_node {
var $name;
var $attributes = array();
var $children = array();
var $value = "";
function xml_node($name,$attributes,$children=array(),$value="") {
$this->name = $name;
if (is_array($attributes)) {
$this->attributes = $attributes;
}
$this->children = $children;
$this->value = $value;
}
}
# Copyright (C) 2003-2004 gregoire HUBERT.
#
# This library is free software; you can redistribute it and/or
# modify it under the terms of the GNU Lesser General Public
# License as published by the Free Software Foundation; either
# version 2.1 of the License, or (at your option) any later version.
#
# This library is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
# Lesser General Public License for more details.
#
# You should have received a copy of the GNU Lesser General Public
# License along with this library; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
#
# Author : gregoire HUBERT
#
# xml_tree class
#
# This object parses an XML stream and offers a tree composed by xml_nodes
#
class xml_tree {
var $xml_stream;
var $current_node;
var $root_node;
var $index;
var $value;
function xml_tree() {
$this->root_node = new xml_node("__ROOT_NODE",array());
$this->current_node = $this->root_node;
}
function add_tree($xml_stream) {
# Managing the parser
$this->xml_stream = $xml_stream;
$xml_parser = xml_parser_create();
xml_parser_set_option($xml_parser,XML_OPTION_CASE_FOLDING,0);
xml_parser_set_option($xml_parser,XML_OPTION_SKIP_WHITE,1);
if (!xml_parse_into_struct($xml_parser,$this->xml_stream,$this->value,$this->index)) {
xml_parser_free($xml_parser);
die("XML Parse error");
}
xml_parser_free($xml_parser);
# Now, $this->value and $this->index are informed, we can use the get_node methode.
$tab_result = $this->get_node(0,count($this->value) - 1);
$this->root_node->children[] = $tab_result[0];
$this->current_node = $this->root_node;
}
function get_node($index_start,$index_stop) {
#echo " \n";
#echo "GET-NODE($index_start,$index_stop) \n";
# What we are going to return is an array of xml_nodes
$return_tab = array();
# depth is only here to check if everything is all right
$tab_node = $this->value[$index_start];
$depth = $tab_node["level"]-1;
# Now we have to be sure we do not forget a single node
for ($index = $index_start;$index <= $index_stop;$index++) {
#echo "\$index = $index ";
# get the current node
$tab_node = $this->value[$index];
# what type of node is it ?
switch($tab_node["type"]) {
case "complete" :
# Depth integrity check
if ($tab_node["level"] != $depth+1) {
die("ERREUR # contrainte d'intégrité au noeud complet $index, niveau $depth + 1 au lieu de ".$tab_node["level"]);
}
#echo "Noeud complet trouvé position $index TAG ".$tab_node["tag"]." \n";
# Easy one, no children to manage, only a value...
$return_tab[] = new xml_node($tab_node["tag"],$tab_node["attributes"],"",$tab_node["value"]);
break;
case "open" :
# Depth integrity check
if ($tab_node["level"] != $depth +1 ) {
die("ERREUR # contrainte d'intégrité au noeud ouvert $index, niveau $depth au lieu de ".$tab_node["level"]);
}
# Open tag, we re-use this methode to return its children
# Where is the correspondong close tag ?
$node_index = $this->index[$tab_node["tag"]];
$flipped_node_index = array_flip($node_index);
#echo "This ".$tab_node["tag"]." is at coords ".$flipped_node_index[$index]." ";
$i=1;
do {
$next_index = $node_index[$flipped_node_index[$index] + $i++];
$next_tag=$this->value[$next_index];
}
while ($next_tag["level"]!=$tab_node["level"]);
#echo "Ouverture de noeud détectée pos $index TAG ".$tab_node["tag"]." \n Parcours jusqu au $next_index \n";
# good, we can now instanciate our node
$return_tab[] = new xml_node($tab_node["tag"],$tab_node["attributes"],$this->get_node($index+1,$next_index),"");
# As we called the get_node methode, we are sure that nodes have been parsed to the corresponding close tag
$index = $next_index;
break;
case "close" :
# Depth integrity check
if ($tab_node["level"] != $depth ){
die("ERREUR # contrainte d'intégrité au noeud fermé $index, niveau $depth au lieu de ".$tab_node["level"]);
}
#echo "Fermeture de noeud detectée pos $index TAG ".$tab_node["tag"]."
\n";
# This ugly thing is useless because reaching a close tag means that $index==$index_stop but who knows ? =)
# it will be skipped soon
$index = $index_stop;
break;
default:
die("Erreur de type de TAG non déterminé :'".$tab_node["type"]."'");
}
}
# We are out ... returns the array with collected children...
return ($return_tab);
}
# this function browse the xml tree and set the current node to the selected node
function give_node($path) {
if ($path[0]=="/") {
$current_node=$this->root_node;
$path=substr($path,1);
#echo "ABSOLUTE PATH GIVEN=$path ";
}
else {
$current_node = $this->current_node;
}
#echo "PATH GIVEN=$path ";
$tab_path = split("/",$path);
foreach ($tab_path as $node_expr) {
#echo "STUDYING EXPR='$node_expr' ";
$node = $current_node;
$expr_tab = split("\?",$node_expr);
$node_name = $expr_tab[0];
$attr_tab = 0;
if (count($expr_tab)>1) {
##echo "TROUVE AU MOINS UNE CONDITION SUR LES ATTRIBUTS... ";
$attr_expr_tab=split(",",$expr_tab[1]);
$attr_tab=array();
foreach($attr_expr_tab as $attr_expr) {
$attr_split_expr=split("=",$attr_expr);
$attr_tab[$attr_split_expr[0]]=$attr_split_expr[1];
}
}
$last=0;
foreach ($node->children as $children) {
#echo "COMPARING WITH '$children->name' ";
if ($children->name == $node_name) {
##echo "TROUVE NOEUD CORRESPONDANT $node_name ";
if (is_array($attr_tab)) {
$node_attributes = $children->attributes;
foreach ($attr_tab as $key=>$value) {
if ($node_attributes[$key] == $value) {
#echo "ATTRIBUTE & CHANGE CURRENT NODE TO ".$children->name." ";
$current_node = $children;
$last = 1;
}
}
}
else {
##echo "CHILD=".$children->name." ";
#echo "CHANGE CURRENT NODE TO ".$children->name." ";
$current_node = $children;
$last=1;
}
}
if ($last) {
break;
}
}
if (!$last) {
#echo "PATH ERROR $node_name ";
#die("MMmmmh It seems that this file is not a DIA XML format...sorry...");
return 0;
}
}
return $current_node;
}
function browse_tree($path) {
$node = $this->give_node($path);
if (is_object($node)) {
$this->current_node = $node;
return 1;
}
return 0;
}
# this method dumps an html representation of the xml tree
function xml_show($node = "",$level=0,$last=0) {
if ($node=="") {
$node=$this->root_node;
}
if (!is_object($node)) {
die("ERROR : node is not an object");
}
$line="";
for($i=1;$i<=$level;$i++) {
if ((i==$level-1) and ($last)) {
$line.=" ";
}
else {
$line.=" |";
}
if ($i==$level) {
$line.="`-";
}
}
$line.=$node->name;
#echo $line;
$line.="".count($node->children)."";
if (count($node->children)==1) {
$line.=" (".$node->value.") \n";
echo "$line";
}
else {
$line.=" \n";
echo "$line";
$i=1;
foreach($node->children as $children) {
if ($i==count($node->children)) {
$this->xml_show($children,$level+1,1);
}
else {
$this->xml_show($children,$level+1);
}
$i++;
}
}
}
#END_CLASS
}
ROUTASIELU (fi) - Pimeys (2011)
Label : Spinefarm Records
Sortie du Scud : 16 février 2011
Pays : Finlande
Genre : Death Metal Mélodique
Type : Album
Playtime : 19 Titres - 40 Mins
Ce début d’année 2011 s’avère une période bien prolifique pour le Death Mélo finlandais, avec un grand nombre de sorties de qualités. Et s’il est un homme qui doit être des plus occupés, c’est bel et bien Tuomas Saukkonen. A peine un an après l’album de BLACK SUN AEON, et l’arrivée du nouveau disque de son groupe phare, BEFORE THE DAWN, dans quelques jours, il se permet quand même de créer un nouveau projet musical, qu’il juge plus propice à l’expression de nouvelles compositions n’ayant leur place nulle part ailleurs. ROUTASIELU prend donc racine dans un Death Metal Mélodique plus nature, et reste plutôt mystérieux quant à son histoire, c’est à se demander où le Finlandais trouve le temps nécessaire pour toutes ses idées. Néanmoins, après l’excitation première, on demeure douteux ; le talent de Tuomas n’est clairement plus à démontrer en matière de mélancolie brutale et mélodique, mais THE FINAL HARVEST a déjà su prouver que son nom aux crédits n’était pas forcément synonyme de chef d’œuvre. On est donc en droit de se demander ce que cette nouvelle formation lui apportera de plus, et si elle ne sera pas, finalement, qu’un simple ersatz de ses autres combos.
Première démarcation : cette fois-ci le patronyme ne fait aucunement référence au Soleil. Il s’agit, en effet, d’un nom en finnois (signifiant "L’Âme du Gel") qui pourrait, au demeurant, sembler anodin, mais concorde avec la volonté de Tuomas d’imprégner complètement l’essence de son pays à ce groupe, d’où l’emploi de sa langue natale pour l’ensemble des paroles également ; une entreprise similaire à celle que Christian Älvestam avait réalisée avec THE FEW AGAINST MANY. Pour tout vous dire, Pimeys est un album assez délicat à analyser. On ne sait guère par où commencer, ni où le frontman cherche à nous emmener, ce disque ne cessant de laisser un sentiment d’incomplétude, comme s’il s’agissait d’une ébauche. Ce qui intensifie cette impression c’est, tout d’abord, la durée relativement courte de l’opus, dont les compositions montent rarement au-dessus des quatre minutes. La qualité des structures s’en ressent indéniablement et leur développement se fait alors pauvre, se laissant aller aux répétitions de sections. Il y a bien « Soturi » qui parvient à se démarquer de par son intro légère, mélangeant plusieurs lignes de guitares acoustiques (sèche et électrique), avec un fond de synthé, et représentant à merveille la beauté de l’hiver. Les autres pièces emploient donc des schémas convenus, avec une rythmique qui tourne vite en rond, et il est difficile d’y discerner un état d’esprit global. Certains titres sont plus grondants, d’autres plus mélodiques, et il y a ces deux pistes instrumentales, encadrant la tracklist, et ne parvenant pas à rentrer en cohésion avec le corps du disque, qui lui-même peine à nous entraîner avec aisance d’une piste à l’autre. D’une part, l’ouverture « Alkusoitto », orientée sur des nappes oppressantes, dépeignant des temps sombres que l’on ne ressent pas par la suite, et puis l’outro « Kehtolaulu », se faisant, de par ses notes pianotées tragiques, synthèse d’une mélancolie guère rencontrée sur les dix pistes précédents.
Pourtant, aux claviers, Saku Moilanen s’attache à répandre des nappes ambiantes au sein des titres pour leur apporter un côté plus atmosphérique, mais ses participations s’avèrent généralement discrètes et ne se remarquent que lors des moments d’accalmies, comme en support du chant clair ou sur de rares breaks. Le claviériste établit, par contre, un jeu plus intéressant et digne d’être souligné, lors de ses envolées déconcertantes d’harmonies dégoulinant frénétiquement qui font partie des passages les plus mémorables de l’album (« Kaipaus »), même si accessoires par moments. Par ailleurs, il se calque parfois élégamment sur les riffs et s’emploie à épaissir leur mélodie, créant ainsi des sonorités intéressantes, du plus bel effet.
Eero Silvonen et Mikko Heikkilä s’attèlent donc à exposer des lignes de guitares solides, majoritairement constituées de riffs grondants et dynamiques, mais qui tournent souvent en boucle. Certains semblent même tirés de BEFORE THE DAWN. C’est pourquoi l’on apprécie le côté Rock’n’Roll qui transpire de l’intro de « Pesäpallo », ou les intonations Heavy des cordes sur « Sukuhauta ». Côté solos, Pimeys est peu fourni, et se contente d’une seule réelle exécution de qualité sur un tempo véloce (« Luppo »), les autres étant courtes ou sous-mixées. Les leads, quant à eux, sont réussis et réalisent des parcours mélodiques entraînants au travers de la rythmique dense, à l’image de ceux intenses présents sur l’outro épique de « Pimëa ». Cependant, ils ne parviennent pas à transmettre les émotions recherchées propres aux compositions de Tuomas ; et c’est sûrement un des aspects les moins maîtrisés de cet album. Malgré de bons atouts mélodiques, les lignes instrumentales, loin de paraître sans âme, ne créent jamais de ressenti poignant par rapport à ce dont nous avait habitué le Finlandais qui maîtrisait, jusqu’alors, très bien ce sujet.
Un manque que l’on pourrait associer aux prestations vocales, et de Mikko qui, comme sur BLACK SUN AEON, rempile en voix claire, et de Tuomas, toujours distinctif grâce à son growl puissant. Si, pour ce qui est de la consonance des mots, le changement de langue reste anecdotique après les premières écoutes, il joue, par contre, un rôle évident dans les sonorités des deux chants et, sur cet album, rend de ce fait leur exécution bien moins prenante. Les lignes claires n’accrochent pas, en dépit de la bonne volonté de Mikko, sauf lorsque l’ombre gutturale du frontman apparaît en overdub pour renforcer l’harmonie du passage, ou sur « Ystävä » de par une prestation s’inscrivant parfaitement dans la mesure du titre. De surcroît, alors que sur les pistes du début d’album les vocaux mélodiques sont constamment passés sous des filtres d’effets, pour mieux les intégrer aux portions plus atmosphériques, sur la fin, c’est une voix simplement naturelle qui est servie, ce qui rend l’ensemble maladroitement balancé et laisse plutôt penser à des essais classés par ordre chronologique, qu’à des morceaux finis. En ce qui concerne Tuomas, l’emploi du finnois nous montre une facette plus brute de sa tessiture vocale. Son chant est plus rêche sur les parties dynamiques, et échoue également à complètement envoûter l’auditeur ; heureusement qu’il ressert, par moment, son habituelle growl monstrueux qui ravive les caractéristiques épiques de ses autres formations.
Et puis, l’avantage d’avoir un disque entièrement géré par le sieur Saukkonen, c’est aussi le plaisir d’une production de qualité qui nous renvoie une basse consistante. La six cordes du Finlandais est donc clairement mise en avant et vient gratter les compositions avec vigueur. On peut néanmoins regretter qu’elle ne soit pas plus ronde, lors de ses partitions en acoustique (« M.E.V »), ce qui aurait pu augmenter la profondeur et l’immersion ; mais les riffs détonants qu’elle libère font vite passer ce détail pour plonger au cœur des cordes solides (« Enkeli », « Pimeä »), empruntes de l’acerbité d’un THE FINAL HARVEST. Pareillement, le rendu des différents composants de la batterie est précis, mais Pyry Hanski en tire à peine avantage. Son jeu manque clairement d’agressivité et de variations de tempo, ce qui impacte également sur la faible persuasion des voix, puisqu’elles n’ont, du coup, qu’un faible support des percussions qui, habituellement, permettaient d’avoir des textures épiques. Seule « Loppu » ose se lancer dans des galopades effrénées et apporte ainsi un peu de variété au sein de cadences généralement molles. Qui plus est, cette section rythmique, rigoureusement dirigée par la basse, souffre de trop nombreuses répétitions qui laissent une idée de stagnation les conclure (« Ystävä »).
Finalement, Pimeys est un album correct, qui contient des compositions aux mélodies maîtrisées, tout en parvenant à se démarquer des sonorités des autres groupes de Tuomas. Toutefois, ses morceaux trop courts, ne prenant pas le temps de se développer davantage sur la touche plus personnelle des Finlandais, ainsi que la rythmique souvent redondante, et l’impression que les pistes auraient pu être mieux abouties, empêchent l’auditeur d’être pleinement charmé par ce disque. De plus, avoir des textes dans la langue maternelle reste original, mais dessert l’accroche qu’auraient pu apporter les deux vocalistes. Dans un même genre, et avec des écrits également en finnois, on lui préfèrera davantage un groupe comme SYNESTESIA. Je termine cette chronique alors que l’aube affiche ses prémices ; une invitation à aller écouter le nouvel album de BEFORE THE DAWN ? Peut-être bien. Seulement faut-il espérer que Tuomas y ait insufflé toute l’inspiration qu’il s’est gardé de partager sur ce disque-ci.
Ajouté : Vendredi 01 Avril 2011 Chroniqueur : CyberIF. Score : Lien en relation: Routasielu Website Hits: 9002
|