兩位團員的古典、爵士背景,充分展現在首張作品裡。第二首曲目〈Glömd〉,一開場便取樣了德布西的〈Prelude To The Afternoon Of A Faun〉並配以略顯散亂的碎拍,客座女聲Cecilia Stanlin的夢幻詮釋,恰如其分。 〈Psalm〉彷如Portishead的陰氣沉沉,Cecilia的vocal頗似Bjork。然而〈Once Britten〉中的她,歌聲又令人聯想到同樣出身瑞典的The Cardigans女主唱Nina,只不過是闇黑版。 〈Bjarne Riis〉裡,那像心電圖又像潛水艇探測聲響加上背後一聲聲男子的嘆氣,拖人進入一種更為深沉恐怖的氛圍之中,神秘而難測。在Ambient Jazz風格的〈Salvation〉裡,另一客座男聲,饒舌歌手Stephen Simmonds則以溫柔的唱腔呈現出全然不同以往Rap形象的他。這是一張極度幽暗氣氛的作品,雖然好事者將它拿來與Portishead、MASSIVE ATTACK等團相比擬,但其實KOOP玩出了與Bristol截然不同,只屬於斯堪地那維亞的 冷冽。
他們於1998年正式推向全歐洲發行第二張專輯《sons of koop》。加納比節奏,甜美的男聲演唱,迷幻絢麗的Acid Jazz,就好比一場令人亢奮的仲夏派對,叫人印象深刻。
2006年9月,推出第三張專輯《koop island》。
Koop有著甚優越的爵士樂底蘊,令其Jazz Downtempo音樂聽來是那麼妙不可言。 Koop Island是他們五年來的全新專輯,柔揚的爵士樂韻、熱情的加納比節奏,仍是那麼的美好雅緻,更何況又有Earl Zinger(即前Galliano主將Rob Gallagher)獻聲。與《Waltz for Koop》比較起來,新專輯《Koop Island》來得爵士化,除了Magnus Zingmark及Oscar Simonsson創作之外,他們亦找來了許多不同的音樂人合作,《Come To Me》、《I See A Different You》及《Whenever There Is You》就有Yukimi Nagano這位由上張專輯已參與過演唱部分的女主音獻聲。另外,Koop更找來了前Galliano成員Rob Gallagher(Earl Zinger),參與創作及演唱,其它歌手還包括 Ane Brun、Hilde Louise Asbjørnsen和 Mikael Sundin,令專輯的陣容更加壯盛。
Coup de Grãce(Best of Koop 1997-2007)是電子音樂二人組 Koop 的“最佳”合輯。這張專輯收錄了樂隊前三張專輯中的精選歌曲。 它還包括未發行的歌曲“Strange Love”。
Koop, the duo of Oscar Simonsson and Magnus Zingmark, seem to grasp what many other trip-hop production units never did — that, no matter which instruments are used in your productions, digital or acoustic or electric, a sense of place is what should never be lost. Their debut album Waltz for Koop, with its languruous textures and tugging sense of melancholy, one-upped a parade of other deservedly recognized acts who had come in the wake of Air (groups like Royksopp, Zero 7, and Groove Armada ). Koop Islands, the duo's first proper record in six years, is another quality collection of songs, with guest vocalists and the returning Yukimi Nagano usually providing exactly the right touch for each song (credit Koop for those personnel decisions). Ane Brun contributes the best, a swinging French chanson named "Koop Island Blues" with pining accordion and vibraphone (plus a devastating clarinet solo from Koop's Lindgren himself). Earl Zinger stops by to lighten the mood on two tracks, including a humorous "letter home" on the track "Beyond the Son." Part of what helps the pair stand apart is their instrumental prowess and obvious arranging talents; Koop Islands is one of the few records of the '90s and 2000s that has exactly the right atmosphere to suit trip-hop fans and all the ingredients for an excellent contemporary jazz record.
Coup de Grãce (Best of Koop 1997–2007) is a 'best of' compilation album by electronic music duo Koop. The album comprises a selection of songs taken from the band's previous three albums. It also includes the unreleased song "Strange Love".
【試聽曲目】: · · · · · ·
Now playing:
String 57th & 9th
----- all music copyrighted please purchase original materials -----
----- 所有的音樂只是試聽音質請購買原裝版本 -----
${song.name}
${song.singer}
`;
});
playlist.innerHTML = htmls.join("");
},
defineProperties: function () {
Object.defineProperty(this, "currentSong", {
get: function () {
return this.songs[this.currentIndex];
} });
},
handleEvents: function () {
const _this = this;
const cdWidth = cd.offsetWidth;
// X? l? CD quay / d?ng
// Handle CD spins / stops
const cdThumbAnimate = cdThumb.animate([{ transform: "rotate(360deg)" }], {
duration: 10000, // 10 seconds
iterations: Infinity });
cdThumbAnimate.pause();
// X? l? phóng to / thu nh? CD
// Handles CD enlargement / reduction
document.onscroll = function () {
const scrollTop = window.scrollY || document.documentElement.scrollTop;
const newCdWidth = cdWidth - scrollTop;
cd.style.width = newCdWidth > 0 ? newCdWidth + "px" : 0;
cd.style.opacity = newCdWidth / cdWidth;
};
// X? l? khi click play
// Handle when click play
playBtn.onclick = function () {
if (_this.isPlaying) {
audio.pause();
} else {
audio.play();
}
};
// Khi song ???c play
// When the song is played
audio.onplay = function () {
_this.isPlaying = true;
player.classList.add("playing");
cdThumbAnimate.play();
};
// Khi song b? pause
// When the song is pause
audio.onpause = function () {
_this.isPlaying = false;
player.classList.remove("playing");
cdThumbAnimate.pause();
};
// Khi ti?n ?? bài hát thay ??i
// When the song progress changes
audio.ontimeupdate = function () {
if (audio.duration) {
const progressPercent = Math.floor(
audio.currentTime / audio.duration * 100);
progress.value = progressPercent;
}
};
// X? l? khi tua song
// Handling when seek
progress.onchange = function (e) {
const seekTime = audio.duration / 100 * e.target.value;
audio.currentTime = seekTime;
};
// Khi next song
// When next song
nextBtn.onclick = function () {
if (_this.isRandom) {
_this.playRandomSong();
} else {
_this.nextSong();
}
audio.play();
_this.render();
_this.scrollToActiveSong();
};
// Khi prev song
// When prev song
prevBtn.onclick = function () {
if (_this.isRandom) {
_this.playRandomSong();
} else {
_this.prevSong();
}
audio.play();
_this.render();
_this.scrollToActiveSong();
};
// X? l? b?t / t?t random song
// Handling on / off random song
randomBtn.onclick = function (e) {
_this.isRandom = !_this.isRandom;
_this.setConfig("isRandom", _this.isRandom);
randomBtn.classList.toggle("active", _this.isRandom);
};
// X? l? l?p l?i m?t song
// Single-parallel repeat processing
repeatBtn.onclick = function (e) {
_this.isRepeat = !_this.isRepeat;
_this.setConfig("isRepeat", _this.isRepeat);
repeatBtn.classList.toggle("active", _this.isRepeat);
};
// X? l? next song khi audio ended
// Handle next song when audio ended
audio.onended = function () {
if (_this.isRepeat) {
audio.play();
} else {
nextBtn.click();
}
};
// L?ng nghe hành vi click vào playlist
// Listen to playlist clicks
playlist.onclick = function (e) {
const songNode = e.target.closest(".song:not(.active)");
if (songNode || e.target.closest(".option")) {
// X? l? khi click vào song
// Handle when clicking on the song
if (songNode) {
_this.currentIndex = Number(songNode.dataset.index);
_this.loadCurrentSong();
_this.render();
audio.play();
}
// X? l? khi click vào song option
// Handle when clicking on the song option
if (e.target.closest(".option")) {
}
}
};
},
scrollToActiveSong: function () {
setTimeout(() => {
$(".song.active").scrollIntoView({
behavior: "smooth",
block: "nearest" });
}, 300);
},
loadCurrentSong: function () {
heading.textContent = this.currentSong.name;
cdThumb.style.backgroundImage = `url('${this.currentSong.image}')`;
audio.src = this.currentSong.path;
},
loadConfig: function () {
this.isRandom = this.config.isRandom;
this.isRepeat = this.config.isRepeat;
},
nextSong: function () {
this.currentIndex++;
if (this.currentIndex >= this.songs.length) {
this.currentIndex = 0;
}
this.loadCurrentSong();
},
prevSong: function () {
this.currentIndex--;
if (this.currentIndex