Thứ Bảy, 28 tháng 8, 2010

The Beatles' 1995 Hội Ngộ: Tìm thấy những gì qua nhạc phẩm "Free As A Bird"

Bạn,

Nhân có bạn Leaqua khen bài "Free As a Bird" của nhóm "Threetles" và John Lennon làm nhân kỳ hội ngộ hy hữu của họ để làm "The Beatles Anthology", vì cũng có quyển sách đã mua và cũng có nghiền ngẫm về bài này, hoctro trước tiên google để xem mấy trang đó có available không, rồi cut-and-paste lên đây để bạn cùng xem. Ấn vào hình để thấy rõ hơn. Nếu muốn xem sách thì vào trang http://books.google.com/ rồi đánh vào "free as a bird Pedler".






Sau khi nói xong bài "Free As A Bird", tác giả tiện thể phân tích luôn "Here, There and Everywhere". Nói chung quyển sách này là bửu bối cho các nhạc sĩ nghiệp dư cũng như chuyên nghiệp để tìm hiểu.





Tiếp theo là bài nhạc "Free As A Bird" và lịch sử hình thành bài hát "hội ngộ"

http://en.wikipedia.org/wiki/Free_as_a_Bird

http://www.youtube.com/watch?v=glUFjjkYuAk



Đây cũng là một dịp để video trình bày lại các chi tiết trong các bài hát rất nổi tiếng của ban nhạc, có một fan rất hâm mộ đã gom góp nhận xét các fans rồi đăng lên ở đây:

http://www.phaseshift.com/beatles/faab/

Một Beatles fan khác có bằng tiến sĩ về nhạc, ông Alan Pollack, đã bỏ ra 10 năm trời ghi lại các kỹ thuật hòa âm, lối chơi, v.v. rồi đăng miễn phí ở đây http://www.icce.rug.nl/~soundscapes/DATABASES/AWP/awp-notes_on.shtml . Sau đây là bài viết của ông về Free As a Bird:

http://www.icce.rug.nl/~soundscapes/DATABASES/AWP/faab.shtml


Vậy, những gì cần nói về nhạc thuật thì đã được hai ông Dominic Pedler và Alan Pollack nói đến rồi, hoctro có bàn gì đến cũng chỉ là nhắc lại, hay dịch thoát lại ý kiến của hai ông mà thôi.

Tuy nhiên có hai ý mà hoctro muốn nhắc đến là:

1. Các nhạc sĩ cây đa cây đề Việt Nam thường không là thành viên của một ban nhạc như các thành viên của ABBA, Beatles, Bee Gees chẳng hạn, nên các sáng tạo về hòa âm của họ cũng không thấy có, chỉ thấy nhạc và lời thôi, ban nhạc khác sau đó muốn đánh sao thì đánh, nhạc sĩ không biết đường nào mà can thiệp. Việt Nam mình có trường hợp ngoại lệ là sự hợp tác giữa hai bố con nhạc sĩ Phạm Duy và Duy Cường, khi ở hải ngoại anh đã hòa âm lại hết các bài nhạc của nhạc sĩ rất bài bản và hợp lý. Các đĩa nhạc Phạm Duy muốn phát hành phải được sự đồng ý của ns PD, như các CD Quỳnh Giao, Ý Lan, Khánh Hà Tuấn Ngọc, Thái Hiền, v.v.

Trở lại với the Beatles. Vì viết nhạc, rồi chơi nhạc, họ có điều kiện chơi các biến thể của một chord progression mà họ đã đặt. Một trong các sáng tạo của họ là cách chuyển cung (modulate) chỉ trong một hay hai measures, rồi lại khéo léo trở về cung chính. Như đã nói ở trên, nhạc Việt Nam không có, hay có mà hoctro chưa thấy, cách viết nhạc kiểu này.



Như ông Peddler trình bày rất ư cặn kẽ, The Beatles đã chuyển cung từ La trưởng qua Do trưởng chỉ trong hai trường canh với câu "Free as a Bird", rồi lại chuyển về La trưởng ở câu kế. "Prosody" (nhạc ăn khớp với lời) như thế này thì quá tuyệt chiêu, vì nếu diễn tả mình "tự do như chim" mà cứ lang thang trong một thang âm, không "đột phá" (break-free) được (từ A trưởng sang C trưởng như đã thấy trong hình) thì đâu diễn tả được trạng thái tự do, xổ lồng???

2. Trong điệp khúc, hòa âm đi từ F -> F#dim -> G -> A, (Whatever happened to / the life that we once knew? / Can we really live without each other?) nghe rất chơi vơi hướng đến một cái đích nào đó. Các nốt nhạc cũng đi lên như vậy. Điều đáng nói là A (La trưởng) ở chỗ each other chính là nốt chủ (tonic) thang âm chính, thì mình phải cảm thấy là "về nhà" chứ. Nhưng không, mình đã ở nhà mà mình không biết! không thỏa mãn! Quá tuyệt!!!

Hỏi mà như là đã trả lời Can we really live without each other? (Chúng ta có thể sống thiếu nhau chăng?) Đã ở nhà (La trưởng) mà còn bâng khuâng vô định, làm câu hỏi rất ư là câu hỏi băn khoăn.

Nếu muốn nghe nhạc Beatles trên Youtube, mời bạn vào đây, tôi có lựa bài theo Albums họ đã phát hành trước và sau khi nhóm rã:

Studio Albums: http://hoctroyoutube2010.blogspot.com/2010/08/beatles-abbey-road.html


Compilation Albums: http://hoctroyoutube2010.blogspot.com/2010/08/beatles-anthology-1.html



Hẹn bạn kỳ sau.

Hoctro,
August 28, 2010

Thứ Ba, 24 tháng 8, 2010

It's a small (music) world!

Bạn,

Trong Disneyland California, a.k.a. "The Happiest Place On Earth", có một cái ride tên là "It's a Small World". Bạn sắp hàng, rồi được ngồi trên một cái thuyền con, và được máy kéo ngầm tự động chở đi vòng vòng một tour xem búp bê con nít khắp thế giới hát bài "It's a Small World", mỗi nước hát tiếng của mình, đệm đàn cách của mình.





Trong ý tưởng đó, những ngày cuối tuần vừa qua tôi dồn sức làm một cái blog mới, chứa nhiều links của tên các nhạc sĩ, bài hát, ca sĩ, hòa tấu, v.v. của ba ngôn ngữ chính mà tôi đam mê nghe nhạc, đó là Việt Nam, Pháp, và Anh ngữ. Hy vọng trang này sẽ làm bạn thấy thế giới âm nhạc của chúng ta rộng lớn, mà cũng gắn bó với nhau ra sao. Đây là link dẫn đến trang:

http://hoctroyoutube2010.blogspot.com/



Trang này có những "tiết mục" chính như sau:

  • 1000 bài nhạc Việt Nam,
  • 40 năm Top #1 Hits của nhạc Mỹ,
  • Tất cả các dĩa LP và CD chính của maestro Paul Mauriat, (Raymond Lefevre - đang thực hiện)
  • Tên các ca sĩ Pháp từ xưa đến nay,
  • Một số các anthology của các nhóm nhạc nổi tiếng khác như ABBA, Carpenters, và The Beatles (đang làm), ..
Mục đích chính là làm danh sách gợi ý để bạn nghe nhạc. Khi ấn vào tên một bài hát hay ca sĩ trong post, bên phải sẽ trả về 32 kết quả, với 4 cái đầu là đúng nhất. Sau đó. khi ấn vào một kết quả, bạn sẽ tới một trang mới, rồi nếu bạn thấy thích các bài gợi ý khác của trang đó, thì lại tiếp tục xem nhạc nữa.

Tôi thấy nhiều lần tôi đi búa xua đờ la mua, ấn vô bài Viens Viens thì nó ra Paul Mauriat, Raymond Lefevre, rồi thì tôi mới biết là ca sĩ thân thương Marie Laforêt hát bài đó từ thời tôi còn cuổng trời tắm mưa. Cô ta thật có vẻ đẹp "liêu trai", hát viens viens mà cứ như là rên hừ hừ, lúc gần cuối bài:




Đại khái lả vậy, mình search cái này, nghe xong, lại lòi ra cái khác để nghe. Xem bằng Firefox thì tốt hơn là Internet Explorer, vì Firefox làm một tab mới chứa video, chứ không tạo ra một window mới

Nhân đây, tôi cũng mạn phép cám ơn l'ami D'OR Leaqua đã rất nhiệt tình góp nhiều ý kiến hay để làm blog ấy search tốt hơn.

Hy vọng blog mới này sẽ làm bạn cảm thấy yêu đời, yêu YouTube và BlogSpot world hơn. Có lẽ Blogger world cũng chẳng thua gì Wordpress world nhỉ? (câu hỏi tu từ-xin miễn giả nhời ;-)

Cũng như tôi vậy, nếu không "tôi còn yêu lắm đời này" thì bỏ công ra viết và làm blog for free làm chi?!

Còn nữa, ba cái blog "Tam Quốc Chí" của tôi từ nay cover ba loại khác nhau: hoctro.blogspot.com thì viết về cách làm widget bằng anh ngữ, cái này thì thiên về nhạc, cái thứ ba đang giới thiệu thì để các bạn và tôi giải trí. It's a small hoctro world!!!

Thân,

Hoctro
8/24

Thứ Năm, 19 tháng 8, 2010

Tiện ích mới: "Bài viết liên quan" (Related Articles)

Bạn,

Giới thiệu với bạn tiện ích mới nhất: "Bài Viết Liên Quan".

Hãy cắt dán vào một HTML widget trong trang thiết kế để coi nó có chạy hay không.



Tôi có làm thử một cái, dùng chính đoạn mã mà tôi viết dưới đây, vào trang Anh ngữ của tôi, thì nó chạy ngay http://hoctro.blogspot.com/2010/08/testing-of-new-related-articles-widget.html . Trang Hoctro Việt cũng có tiện ích này.





Nếu bạn đã lắp các "Bài Liên Quan" widget trước của tôi, bạn cứ tự nhiên lắp tiếp cái này, chứ đừng bỏ cái kia vội. Cái mới này chỉ cần một bước cài đặt thôi, mà sau khi cài đặt xong ta có thể chuyển nó sang chỗ mới dễ dàng, không như cái cũ.

Như bạn thấy, cái tiện ích này tạo ra một dòng mã gồm những từ khóa/nhãn của trang đang xem, sau đó nó gửi lên Google, và được kết quả trả về gần sát nhất những gì bạn muốn tìm. Các kết quả này do google tìm kiếm trong trang của bạn mà thôi. Ta thấy cách này hệt như khi ta muốn tìm một bài viết nào đó trên Google http://www.google.com/ .





Theo thiển ý, đây là widget sát ý nhất với ý nghĩa "bài liên quan", vì nó đăng lên những bài giống với những từ khóa mà ta tìm nhất. tiện ích trước tôi viết không làm được điều này, vì nó chỉ trả về những kết quả mới nhất của từng nhãn trong trang mà thôi, những bài hay nhất mà xưa thì sẽ không được hiện ra. Ta đã dùng giải thuật "page ranking" của Google lần này để tìm các bài liên quan nhất.

Tôi sẽ đăng tiếp một bài viết tiếp theo về những động lực để làm tiện ích, giải thích cấu trúc mã, và những chỉnh sửa khác. Có nhiều cách như dùng CSS để chỉnh màu sắc, font chữ, hiện thêm dòng ngắn giới thiệu (snippet) hay không, v.v.

Chúc bạn thành công,

Thân mến,

Hoctro
8/16/2010


<!-- Related Articles - Take 5 - Using JQuery & Google Search API - by Hoctro 8/2010 -->
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.3/jquery.min.js" type="text/javascript"></script>
<script src="http://www.google.com/jsapi" type="text/javascript"></script>
<script language="Javascript" type="text/javascript">//<![CDATA[

//var website = "hoctro.blogspot.com";
var website = getBaseURL();
var hoctroRelated = "site:" + website + " ";
var labelArray = new Array();

function getParams() {
$('div.post-footer-line span.post-labels a').each(function(idx, el) {
var test = 0;
var textLabel = $(el).html();
for (var i = 0; i != labelArray.length; i++) {
if (labelArray[i] == textLabel.toString()) test = 1;
}
if (test == 0) {
labelArray.push(textLabel.toString());
hoctroRelated = hoctroRelated + '"' + textLabel.toString() + '" OR ';
}
}); // each
}
// Callback main function
$(document).ready(function() {
 
getParams() ;
}); // function

function OnLoadRelated() {
  // create a search control
  var searchControl = new google.search.SearchControl();

  // create a draw options object so that we
  // can position the search form root

  var options = new google.search.DrawOptions();
  options.setSearchFormRoot(document.getElementById("searchHoctroRelatedForm"));

  // populate with searcher
  var blogSearch = new google.search.WebSearch();
  blogSearch.setUserDefinedLabel("Related Articles");
  var options2 = new google.search.SearcherOptions();
  options2.setExpandMode(google.search.SearchControl.EXPAND_MODE_OPEN);

  searchControl.setResultSetSize(google.search.Search.LARGE_RESULTSET);
  searchControl.addSearcher(blogSearch, options2);
  searchControl.draw(document.getElementById("searchHoctroRelatedResults"), options);
  getParams();
  searchControl.execute(hoctroRelated);
}

// Copied from http://www.gotknowhow.com/articles/how-to-get-the-base-url-with-javascript
function getBaseURL() {
  var url = location.href; // entire url including querystring - also: window.location.href;
  var baseURL = url.substring(0, url.indexOf('/', 14));
  if (baseURL.indexOf('http://localhost') != -1) {
  // Base Url for localhost
    var url = location.href; // window.location.href;
    var pathname = location.pathname; // window.location.pathname;
    var index1 = url.indexOf(pathname);
    var index2 = url.indexOf("/", index1 + 1);
    var baseLocalUrl = url.substr(0, index2);
    return baseLocalUrl + "/";
  }
  else {
  // Root Url for domain name
  return baseURL + "/";
  }
}



  // Important, this has to be called here, otherwise main var is not yet created
  google.load('search', '1.0');
  google.setOnLoadCallback(OnLoadRelated, true);

//]]>
</script>

<style>
  //#searchHoctroRelatedResults a.gs-title, a.gs-title * { color : brown; }
  //#searchHoctroRelatedResults .gs-webResult .gs-snippet { display : none; }
  //#searchHoctroRelatedResults .gs-webResult .gs-visibleUrl { display : none; }
  //#searchHoctroRelatedForm { display : none; }
</style>

<div id="searchHoctroRelatedResults">Loading...</div>
<div id="searchHoctroRelatedForm">Loading...</div>
<h6>Related Articles Widget by <u><a href='http://hoctro.blogspot.com'>Hoctro</a></u></h6>

Thứ Tư, 18 tháng 8, 2010

Constructive Laziness

Bạn,

"Thừa thắng xông lên" với cái widget tôi mới chế ra, tôi nghĩ ra cách hiệu quả nhất để tìm kiếm nhạc hay, cũng như nhạc nghe rồi mà lâu quá quên tên, chỉ còn nhớ tên ca sĩ. Tôi nghĩ cách hay nhất là chế ra một cái blog mới, sau đó tựa của mỗi post sẽ là tên một ca sĩ, để bạn đọc dễ dàng lựa chọn sau này. Tựa bài cũng có thể là tên một CD, nếu một ban nhạc có quá nhiều bài hay.


http://hoctroyoutube2010.blogspot.com/


Sau đó, mỗi cái tựa tôi có một cái link đằng sau, khi ấn vào nó sẽ dùng thanh search để tìm ra các bài cùng tên, cùng tác giả trên YouTube, rồi tôi tha hồ lựa version hay nhất. Thí dụ như tôi ấn vào cái tựa Deux amis pour un amour trong post Johnny Hallyday, thì kết quả sẽ cho tôi rất nhiều versions của bài đó, vì trong câu search tôi viết cả tên bài lẫn ca sĩ ('Johnny Hallyday Deux amis pour un amour' ).







Label (nhãn) cũng được tận dụng tối đa, với tên ca sĩ được ghi xuống làm nhãn của mỗi post. Do đó, khi ấn vào tên ca sĩ, Google sẽ trả về những bài được xem nhiều nhất của ca sĩ này, tha hồ mà chọn. Danh sách này sẽ tăng dần khi nhiều post mới được thêm vào.


Bên phải phía dưới thanh search có một cái nút setting với bánh xe răng cưa, bạn có thể tìm những bài mới được upload theo cách này (sort by date), thay vì để google trả về các search relevant nhất.




Nhưng điều làm tôi "khoái trá" nhất là những gì mình tìm kiếm được trong ngày đều được ghi lại, không mất mát uổng phí công đi tìm. Có thể gọi blog này là một "nhật ký tìm vàng" :-) Tôi học được một chữ rất hay từ sách vở là "constructive laziness", tạm gọi là "lười tích cực". Tôi áp dụng điều này thường xuyên. Vì rất lười, khi thấy một cái gì có thể tự động hóa, hay làm cho nhanh hơn được thì tôi đều tìm cách để làm. Làm cho mình và làm cho người khác dùng theo nữa. Tôi nghĩ đây là một cái "trait" (tính cách) không thể thiếu được của một thảo chương viên.

Lâu lâu bạn nhớ vào xem các bài mới của blog trên nhé, vì tôi sẽ đi lùng hết các bài nhạc xưa tôi thích và mang vào đó cất giữ.

Nếu bạn cần code của search widget nói trên thì nhắn vào đây tôi sẽ post lên. Có mấy lần tôi post mà không ai dùng tốn công quá, destructive laziness :-))) tôi rút kinh nghiệm không mang lên nữa nếu không ai hỏi.
Thân,

Hoctro
8/16/10

Chủ Nhật, 15 tháng 8, 2010

YouTube Mashup Tìm Kiếm Dựa Trên Label

Bạn,

Loay hoay hoài hủy cả tối, rồi cũng tìm ra cách viết code để tìm kiếm những videos liên hệ tới một label (nhãn). Ý tưởng rất đơn giản. Thay vì dùng "Label" widget để hiện lên các bài viết có nhãn ấy, tôi dùng Ajax Search API để tìm kiếm. Tôi làm hai tìm kiếm khác nhau để tạo ra hai kết quả: videotừ blog của tôi. Ấn các "tabs" để chuyển đổi. Vì tôi dùng "relevant search", kết quả trả về là kết quả giống với chữ cần tìm nhất, hệt như khi bạn dùng google.com để tìm vậy.

Tôi có gắn thử ngay sau post này, có gì bạn thử nghe.

Thế là từ nay tôi đỡ mắc công lên google tìm nhạc theo tên của các nhạc sĩ. Tôi chỉ cần gắn một label mới đâu đó trong một post vớ vẩn nào đó, et voilà!




Đây là đoạn mã tôi chèn vô, tôi lười sửa soạn lại nên "chụp" lại đây để ai thích làm thì làm theo nhé. Cũng có thể dùng View -> source để cut-and-paste những đoạn mã JavaScript, rồi đánh vào những đoạn blogger code.

 Hoctro,
8/15/10
Girls Generation - Korean