Tuesday, January 31, 2006

[talk] The Art of Listening (to Music, Language, Mind)

I will conduct a 3-day workshop in Ocean Lotus Farm during May 5-7, 2006. This is the introduction to the workshop. If you are interested in participating, please contact Ocean Lotus Farm for further details.

The Art of Listening

Ocean Lotus Farm Workshop

Tsan-Kuang Lee

May 5-7, 2006


Music, language, and thoughts come so easily in our daily life that most of us take them for granted and stop interacting with them meaningfully. We hear music without listening to it; we let our spouses talk to us without knowing what they are really saying; we hear our own inner voices but constantly ignore them.

In this workshop, we learn the art of listening. We learn how to listen to and enjoy music; we learn how to listen to and comprehend language; we learn how to listen to and become union with our thoughts.


Few people would say they don't love music. Music empowers an army,preludes the birthday cake serving, announces a friend's call,farewells the use of your computer, and accompanies our showering. It's so close to our daily life, but why are there moments when we wonder,how come some people are so crazy about symphonies in the concert hall,jazz solos in the bar, or loud raps on the street? Why, while an opera and a movie may both take two hours, most people find the lengths of the two psychologically so different?

Of course, it's a matter of preference and taste. Some love operas; some love movies. In fact, most of us can manage to be with music for a while in the concert hall, in the bar, or on the street. We can also learn when to applaud, when to scream, or when to shake and nod our heads. However, how the music itself really interacts with us internally, is probably irrelevant to the social codes that make us good audience.

How do we really enjoy music?

Again,the question is, how "we" "really" "enjoy" "music". First, it's"enjoyable", not boring, nor patience-challenging; neither does it make us feel arrogant or ignorant. Second, the enjoyment is "really"experienced, not imagined or pretended. Third, the satisfaction comes from the "music", not from the well-decorated concert hall, the dressed-up audience, the gossips about a famous conductor, or "the attractive girl/boy who saw me go to Philadelphia Symphony Orchestra". Most importantly, "we" participate in the whole process.

In this workshop, we will (re-)learn to listen to music, and learn to appreciate different types of musical expressions.


Thanks to the best-sellers, everybody today knows that listening plays an essential role in effective communication. However,being proficient in Martian and Venusian does not seem to guarantee better understanding. While we try very hard to listen, we still hear something very different from what's intended or even what's said. How do we fill the gap between theory and practice?
In this workshop,we will re-evaluate our listening ability and investigate the factorsthat hinder it. Then we learn to establish new listening habits tobreak from the bad cycles of poor communication that we were so used to.


The techniques of taming one's mind have been around for several thousands of years, and have been used by many different traditions, from religions(Buddhist, Catholic , Christian, Taoist, to name a few), to modern training (music performance, business leadership, athletics, military,etc.), and healing (stress reduction, meditational healing, etc.).However, most of us still have little control over our own minds.Running thoughts take over easily and many of us either ignore its effects or totally give up on disciplining our minds.

Why do we need to discipline our minds? Aren't discursive minds more creative? Don't we relax more when we just let our minds go free? Aren't minds more natural without control?

It's no surprise that many of us have such questions. On the other hand, we also wish we had the power to stop thinking in a sleepless night;musicians/speakers/athletes/examinees hope to concentrate on the performance instead of worrying about what would happen to them if they don't do well; in classrooms we hope to focus so we can learn better.

A trained mind does not only benefit us in those achievement-oriented goals. Obviously, if we are worrying about our tax return when we are in the Grand Canyon, we certainly are missing something; if we keep checking the time for the parking meters outside of the concert hall,we certainly won't be able to enjoy the music; if we are nervous about an exam on the table, we certainly won't be able to taste the breakfast fully.

A chaotic mind may actually harm us. We bite ourselves because our minds are not with us when eating; we fall because our minds aren't walking with us; we have car accidents because our minds aren't alert enough.

It actually goes deeper if we take it seriously: we say harmful words to others because our negative thoughts rule us; we ignore important signals/signs of dangers because our minds aren't clear; we fail to hear our own voices among other noises in our minds and regret not listening to ourselves.
Mindful technique swill be instructed and used throughout the workshop. We learn to pay full attention to music, language, and thoughts. Then we hope to apply the same techniques to other things and improve the quality of our daily life.

Workshop Rules

In this workshop of the Art of Listening, we want to emphasize the practice of listening instead of talking and expressing. Therefore, we require the participants to observe the following rules during the whole time of the workshop(including non-class time), for the sake of ourselves and others:

  • No talking except for in-class discussion.
  • No phone calls. (All emergency incoming calls should be taken and redirected by Ocean Lotus Farm administration.)
  • No emailing.
  • No reading, unless asked to.
  • No listening to personal music/speech.

These rules really help protect our minds from going away. According to our experiences, these simple rules turn out to be very powerful and enable one to go into a deeper level of observation and concentration.

Powerful transformation comes from a determined mind willing to change bad habitual patterns. Let's make it our Lesson One: when we come to the workshop, we bring our full mind here. We deal with other things before or after, but not during, the workshop.

About the Speaker

This workshop will be led by composer/linguist/meditator Tsan-Kuang Lee, who will share his insights on how to listen to music/language/mind deeply.

Trained to be a scientist in high school, turning to literature in college, but ending up studying linguistics and computer science in graduate school; with several established musicians' help, Tsan-Kuang is now working as a composer/arranger/performer, as well as a software developer. In recent years, he has been learning to re-exam himself through Zen practices; he has found Zen practices sharpen one's sensibility, deepen one's understanding, break one's prejudice, and free one's concepts,while at the same time, cultivate one's compassion and bring one harmony.

Friday, January 27, 2006

[FW] A Rescued Whale Thanked her Rescuers

I got a short summery of a news report from a friend's email. It's about a whale entagled in traps and the rescuers risked their lives to save her; afterwards, she thanked the rescuers.

I got a short summery of a news report from a friend's email.

If you read the front page story of the SF Chronicle on-- Thu, 15 Dec 2005 -- you would have read about a female humpback whale who had become entangled in a spider web of crab traps and lines. She was weighted down by 100s of pounds of traps that caused her to struggle to stay afloat. She had 100s of yards of line (rope) wrapped around her body - her tail, her torso, a line tugging in her mouth.

A fisherman spotted her just east of the Farralone Islands (outside the Golden Gate) and radioed an environmental group for help. Within a few hours the rescue team arrived and determined that she was so bad off, the only way to save her was to dive in and untangle her - a very dangerous proposition; One slap of the tail could kill a few rescuers. They worked for hours with curved knives and eventually freed her. When she was free, the divers say she swam in what seemed like joyous circles. She then came back to each and every diver, one at a time, and nudged them, pushed them gently around - she thanked them... some say it was the most incredibly beautiful experience of their lives. The guy who cut the rope out of her mouth says her eye was following him the whole time, and he will never be the same.

By checking TruthOrFiction.com, I found it's a true story and its original source.

This article was written by Peter Fimrite (see his email at the end of the article) and was originally posted on San Francisco Chronicle on December 14, 2005.

Daring rescue of whale off Farallones

Humpback nuzzled her saviors in thanks after they untangled her from crab lines, diver says

- Peter Fimrite, Chronicle Staff Writer

A humpback whale freed by divers from a tangle of crab trap lines near the Farallon Islands nudged its rescuers and flapped around in what marine experts said was a rare and remarkable encounter.

"It felt to me like it was thanking us, knowing that it was free and that we had helped it," James Moskito, one of the rescue divers, said Tuesday. "It stopped about a foot away from me, pushed me around a little bit and had some fun."

Sunday's daring rescue was the first successful attempt on the West Coast to free an entangled humpback, said Shelbi Stoudt, stranding manager for the Marine Mammal Center in Marin County.

The 45- to 50-foot female humpback, estimated to weigh 50 tons, was on the humpbacks' usual migratory route between the Northern California coast and Baja California when it became entangled in the nylon ropes that link crab pots.

It was spotted by a crab fisherman at 8:30 a.m. Sunday in the open water east of the Farallones, about 18 miles off the coast of San Francisco.

Mick Menigoz of Novato, who organizes whale watching and shark diving expeditions on his boat the New Superfish, got a call for help Sunday morning, alerted the Marine Mammal Center and gathered a team of divers.

By 2:30 p.m., the rescuers had reached the whale and evaluated the situation. Team members realized the only way to save the endangered leviathan was to dive into the water and cut the ropes.

It was a very risky maneuver, Stoudt said, because the mere flip of a humpback's massive tail can kill a man.

"I was the first diver in the water, and my heart sank when I saw all the lines wrapped around it," said Moskito, a 40-year-old Pleasanton resident who works with "Great White Adventures," a cage-diving outfit that contracts with Menigoz. "I really didn't think we were going to be able to save it."

Moskito said about 20 crab-pot ropes, which are 240 feet long with weights every 60 feet, were wrapped around the animal. Rope was wrapped at least four times around the tail, the back and the left front flipper, and there was a line in the whale's mouth.

The crab pot lines were cinched so tight, Moskito said, that the rope was digging into the animal's blubber and leaving visible cuts.

At least 12 crab traps, weighing 90 pounds each, hung off the whale, the divers said. The combined weight was pulling the whale downward, forcing it to struggle mightily to keep its blow- hole out of the water.

Moskito and three other divers spent about an hour cutting the ropes with a special curved knife. The whale floated passively in the water the whole time, he said, giving off a strange kind of vibration.

"When I was cutting the line going through the mouth, its eye was there winking at me, watching me," Moskito said. "It was an epic moment of my life."

When the whale realized it was free, it began swimming around in circles, according to the rescuers. Moskito said it swam to each diver, nuzzled him and then swam to the next one.

"It seemed kind of affectionate, like a dog that's happy to see you,'' Moskito said. "I never felt threatened. It was an amazing, unbelievable experience."

Humpback whales are known for their complex vocalizations that sound like singing and for their acrobatic breaching, an apparently playful activity in which they lift almost their entire bodies out of the water and splash down.

Before 1900, an estimated 15,000 humpbacks lived in the North Pacific, but the population was severely reduced by commercial whaling. In the 20th century, their numbers dwindled to fewer than 1,000. An international ban on commercial whaling was instituted in 1964, but humpbacks are still endangered. Between 5,000 and 7,500 humpbacks are left in the world's oceans, and many of those survivors migrate through the Gulf of the Farallones National Marine Sanctuary.

Whale experts say it's nice to think that the whale was thanking its rescuers, but nobody really knows what was on its mind.

"You hate to anthropomorphize too much, but the whale was doing little dives and the guys were rubbing shoulders with it," Menigoz said. "I don't know for sure what it was thinking, but it's something that I will always remember. It was just too cool."

Humpback whales hold a special place in the hearts of Bay Area residents ever since one that came to be known as Humphrey journeyed up the Sacramento River in 1985. The wayward creature swam into a slough in Rio Vista, attracting 10,000 people a day as whale experts tried desperately to turn it around. Humphrey went back to sea after 25 days of near-pandemonium and worldwide media attention.

In the fall of 1990, Humphrey turned up again inside the bay in shallow water near the Bayshore Freeway, finally beaching on mud flats near Double Rock, just off the Candlestick parking lot. He remained stuck for 25 hours, until volunteers, helped by a 41-foot Coast Guard boat, pulled him free and sent him back to the ocean. He has not been seen since.

Humpbacks like Humphrey do seem to relate to people more than other whales, according to Stoudt.

"You do hear reports of friendly humpbacks, whales approaching boaters, especially in Baja California," Stoudt said, "but, for the most part, they don't like to be interacted with."

E-mail Peter Fimrite at pfimrite@sfchronicle.com

Page A - 1
URL: http://sfgate.com/cgi-bin/article.cgi?file=/c/a/2005/12/14/MNGNKG7Q0V1.DTL
©2006 San Francisco Chronicle

[FW] 偶爾離開象牙塔





























Thursday, January 26, 2006



...之前在另一篇「Change of My Copyright Policy 版權更動」裡提到我想在Creative Common(創用 CC)和PublicDomain(公共智財中擇一為我在網上出版作品的條款。基本上,PublidDomain就是把作品捐給大眾,有人要拿去營利也可以,但CreativeCommon能讓我保留一些基本權利,限制作品被拿去商用。我原來比較傾向捐出來,這樣我也沒有什麼多餘的負擔。但我還有一些擔心:...

之前在另一篇「Change of My Copyright Policy 版權更動」裡提到我想在Creative Common(創用 CC)和Public Domain(公共智財中擇一為我在網上出版作品的條款。基本上,Publid Domain就是把作品捐給大眾,有人要拿去營利也可以,但Creative Common能讓我保留一些基本權利,限制作品被拿去商用。我原來比較傾向捐出來,這樣我也沒有什麼多餘的負擔。但我還有一些擔心:



-----Original Message-----
From: Tsan-Kuang Lee
Sent: Tuesday, January 10, 2006 4:44 PM
To: Li Shu Hsien 李書賢
Subject: Public Domain


我想把我一些文字與音樂作品捐給 public domain, 也就是 no right reserved. 如果未來有個人拿了我的曲子,說是他的作品,我是不是完全不受保護?

我的理解是著作權和版權是不同的。只要作品是我寫的,他用他的名字再發表,應該就不行。但法律可有保護這點?也就是說,我如果發表「命運交響曲」,因為貝多芬已死去多時,作品已是公共財,我是不是就不會受到任何法律的約束?謝謝你的回答。我在考慮用 creative common 但有很多想不通的問題。










ps. 附上一些你回答你問題的法條,及這些法條的出處





一 著作財產權人死亡,其著作財產權依法應歸屬國庫者。
二 著作財產權人為法人,於其消滅後,其著作財產權依法應歸屬於地方自治團體者。








原來我選擇Creative Common來當做版權條款,背後還有我很多本來看不到的自私原因,並不是自己以為得那麼慷慨哩!

Tuesday, January 24, 2006

About Category Jazz 關於爵士樂區

開始作曲以來,我一直為爵士樂的即興本質著迷。可以說,即興演奏,就是在當下作曲,而且在音樂發生時,能帶給演奏/作曲者自己許多驚奇。(雖然我這麼說,我仍覺得傳統作曲很重要。這大概是因為人心智的極限吧 ── 我們能想像一個交響樂團以即興的方式而能夠奏出像春之祭一樣結構複雜的作品嗎?)對我個人而言,即興精神和禪的本質很接近 ── 抓住當下。



I've been fascinated by the improvisational nature of jazz since I started composing. In a sense, it's like composing in real-time, full of surprises even for the composer/performer himself/herself. (That said, I still value planned composition a lot due to the limitation of human mind -- imagine an orchestra improvises and produces a symphony that's as neat and tight as Rite of Spring.) And for me personally this is very close to Zen -- moment to moment awareness.

I play jazz piano and compose/arrange for jazz bands. For me, it's fun, satisfying, and a great practice for me as a Zen pratictioner. The excitement of listening to great jazz musicians' improvisation has always taught me to be humble and be more in the moment.

In this category, I will put some handouts of my early talks introducing jazz, some email I wrote to recommend standard tunes, and perhaps some reflections I got over the years.

Monday, January 23, 2006















Friday, January 20, 2006

Sound and Music copyright for this blog 本網誌聲音音樂版權

Audio/Music 聲音/音樂

Effective 生效日期: 2006/01/20

Creative Commons License

The audio/music works on this blog, unless otherwise noted, are licensed under a Creative Commons Attribution-NonCommercial-NoDerivs 2.5 License.

除另外註明,本網誌的聲音與音樂著作係採用創用 CC 姓名標示-非商業性-禁止改作 2.5 授權條款授權。

Text copyright for this blog 本網誌文字版權

Text 文字

Effective 生效日期: 2006/01/20

Creative Commons License

The text works on this blog, unless otherwise noted, are licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 2.5 License.

除非另外註明,本網誌上所有文字使用創用 CC 姓名標示-非商業性-相同方式分享 2.5 授權條款

Copyright for this blog 本網誌版權

By default, text works on this blog use this license. Music works use this license.

You can find a note I wrote about the change of the copyright and my thoughts on the copyright of my website over the years. And here's the copyright history from 1998/05/19 to 2006/01/10.

Saturday, January 14, 2006

About Category Studio 關於錄音室與錄音工程


About Category Studio


I'vebeen hoping to share my own experience in the music studio, but as timegoes by, very little was done. However, my answers to friends'questions over the years seem to be useful for some people out there;thus I put them here.

Tuesday, January 10, 2006

Change of My Copyright Policy 版權更動

1998年起架了第一版個人網頁時,就開始寫版權文件。... 大概在2004年夏天左右,我開始有把這些文字作品版權釋出的想法。原因大抵有二: ....

I wrote my first Copyright Statement in 1998 when I created my first version of personal website. ... In 2004 summer, I started considering releasing the copyright of my articles, for two main reasons: ....

(English translation followed)









目前考慮在public domain與creative common之間擇一,來當做網站大部份作品的預設版權。


I wrote my first Copyright Statement in 1998 when I created my firstversion of personal website.

The first statement (1998) was written because I hope my works wouldn't be used commercially without attribution and my permission again.

Since my second version website was created, I started to receive tons of email requesting my permission to use my articles, mostly from from students, and mostly around the end of summer/winter breaks or semesters. Obviously my articles were used for their homework.

I was very eager to help educate Taiwan society to respect the property of wisdom, so I setup a protocol for students to follow, to get the permission of using my works. Responding to those requests was really time and energy consuming. I actually learned a great deal from the requests from students of different age, gender, region, and generation. Their attitudes vary a lot: from enthusiastic music newbies constantly exchanging ideas with me, to some one leaving a terse note, "Well written. I'll use that for my homework. Bye.", to somebody asking "I need English translation of your Mozart article. Because I have a short deadline, could you please finish the translation and send it to me by Monday? Thank you!".

I have to admit that I once felt so out-dated.

In 2004 summer, I started consideringreleasing the copyright of my articles, for two main reasons:

1. I believe I have written clear enough to explain what copyright is and why it's relevant. For those who alreaady know to respect others, my words don't add anything; those who are willing to learn can learn from what I wrote; as for those who simply can't learn to respect others (yet, hopefully), if my copyright statement couldn't convince them, how would my additional email?

2. I started to meditate in 2003. Meditation enabled me to clearly see my clinging to fame (I made sure my credit is mentioned), to profits (I felt angry when others used my works for their commercial purpose), to phenoma (I couldn't let go whenever I failed to change a student's attitude), and to achievement (I wanted to know how many people used my works). I also realized that these clingings benefited nobody but simply brought me unhappiness. With these observations, my practice gradually equipted me with the power to let go.

Then for a while I got busy in my life so I haven't got any chance to update my copyright statement, until early 2006.

Now I'm choosing between Public Domain and Creative Common. One of them will be the default copyright policy of my blog.





  • 所有的引用與參考,必須在所引用(或參考)的段落旁,附上「參考(或引用)資料出處:李璨光個人網頁tklee.com」或同義字樣。
  • 成品具商業或營利用途者(書報雜誌或各種平面、立體、電子媒體),須經作者本人(李璨光)正式書面授權。



1997年我架設個人網頁時,是希望能將過去PC BBS討論音樂的風氣換另一種網路媒體繼續下去。可是,這麼多年來,我所收到的一兩百封信裡,絕大部份都是學生來信要求「借用」我的文章,來應付音樂課作業、暑假作業、壁報展等。當初與樂會友的目的沒有達到,反倒讓許多學生有一個方便應付音樂報告的方法。除了一位國中音樂老師來信討論學生抄襲問題外,我在實際的教書經驗裡,也為學子們習慣抄襲的問題頭疼不已。因此,我也花了不少時間和口舌來試著傳播一個尊重他人創作的習慣,與正確參考、引用的方法。原本我要求需要我授權引用我作品的人提供姓名、用途(校名課名等)及授權期限。我接到來信後,會回寄一封具法律效用的電子簽章授權書。


有許多朋友並沒能真正明瞭尊重原作的意義,以匿名、別名、無效電子郵件住址來信,或是提供假的資訊。這點令我不解 ── 一份寫給就讀「某國中某年級的大牛」的授權書,要如何有法律效用?如果不願意以真面目與我接觸,寫一封「你寫得不錯,我要拿來交報告,謝啦!」的信,到底意義何在?







我收到許多匿名網友的來信要求引用我的文章。有的雖不是完全匿名,但使用暱稱或是難以解讀的代號。在此說明,我的授權書,無法授權給沒有法律效用的稱號。因此,我要求來信者附上以下資料 :

  1. 真實姓名(若使用筆名出版,請加附筆名)
  2. 用途 (出版品請附刊物名及出版處,學校報告請附上校名、班系級、課名及授課者姓名)。
  3. 需要授權的時間期限


在您拿到我的電子簽名授權書後,您始有權在標注原出處的情形下引用或轉載。出處請標明「李璨光個人網頁 http://tklee.com」。








在取得本人授權書授權您引用之前,您引用本人資料是違法的。若您仍需使用本人文章,請提供真實資料。請參考 http://www.tklee.com/Big5/copyright.html 謝謝。
















  • 真實姓名(若使用筆名出版,請加附筆名)
  • 用途(出版品請附刊物名及出版處,學校報告請附上校名、班系級、課名及授課者姓名)。
  • 需要授權的時間期限










那時候,台灣的PC BBS站還只有十幾個的時候,我也架了個GT站台,當做一些同好交流的中心。後來,BBS人口愈來愈多,功能需求也愈來愈大,於是先後改用PC Board,Power Board,Maximus架站,同時廣收站友。








Date2002-06-17 07:36
去過你的網站 裡頭有我想要的資料
喔 我先自我介紹 我姓x 可以叫我xx 我是一個高中生
因為我的音樂老師要一份有關 w.a.mozart 的資料
而我急需複製你的作品 可能等不到你的回應
在此 我深感抱歉 望請諒解






如果您資料已經交給老師,而您用我的文字沒有標注網址出處,請您將出處補交給老師。出處請標明「李璨光的莫札特網站http://tklee.com 」。如果還沒交,請您務必將出處補上。不管您如何處理,請您來信告知您的處理方式。如果您沒有這樣做,很抱歉,我無法同意您使用任何我放在網路上的資料。如果您仍有未經授權使用我資料的情事,表示您選擇玩見不得人的躲迷藏了。

最後,容我指出,您的來信沒有稱呼,沒有真實姓名,使用免費信箱,行文中也完全看不出真正要徵得原作同意的誠意,在我看來,是非常沒有禮貌的。我好幾個在高中教音樂的朋友們都要我直接拒絕您,而且她/他們都說如果您是她/他們學生,一定會被當。但我認為您並不了解您行為的嚴重性,所以我花一些時間向您解釋這一切。希望對您 (以及其他已遭殃或未遭殃的車主) 有幫助。




PS: 我會將我的回答公佈到網上。但您的 email 住址與稱呼不會被公佈。如果您覺得不妥,請讓我知道。順便也請您看一看過去關於使用我網站資料的著作權相關問答。其中包括一位音樂老師的來信。http://tklee.com/Big5/Music/Mozart/FAQ#Copyright


我很抱歉讓你有這麼不好的感受 我在我的報告上有附上你的站名


畢竟這是網路世界 沒什麼不能發生

我姓x 名xx 為了表示我的誠意及我歉意




我被你信中的內容嚇到 的確 我不知道這樣做的嚴重性


另外我誠心向你道歉 希望你能夠原諒我不當的行為

若你能不記前嫌的話 我很希望和你成為朋友

還有什麼是你對我存有疑問的 我希望你能明確的告訴我









我欣賞你敢做敢當敢改的個性,也接受你的道歉,當然也同意你在尊重我著作權的前提下自由使用我的創作。關於公布你資料,我建議保留你的姓名 (也就是匿名)。現在的搜尋引擎容量都很大,一旦你的名字被存入 cache 後,恐怕要很久很久才會改變。你年紀還輕,大概還沒有什麼出版記錄。總不希望人家上網用「xxx(來信者姓名)」搜尋,就只看到這件烏龍事吧。

最後,是不「計」前嫌 (至少我小時候還是「計」);還有,best wish"es".



From 中學生
Subject 做音樂報告





From 李璨光






From 學生
Subject Copy文章




Sincerely XXXX

From 李璨光

Dear XXXX,


1. 非常感謝您知會我。這代表您願意尊重我。

2. 不知道您說的 copy 指全篇抄用還是指部份參考?不管是那一個,都歡迎您轉錄使用。但我希望您標注參考資料出處。這也會讓您作業顯得正式而嚴謹。



From X同學
Subject 引用文章



截錄處:Oh! Mozart!


2. A great poet uses but the twenty-six letters ofthe alphabet, and without devising a single new word gives voice tooughts undreamed-of. (Mozart 正如一偉大詩人,毋須創造任何新字,僅僅用二十六個字母,道出了我們幻夢未及的情感。)Mozart, His Character, His Work by Alfred Einstein



From 李璨光



信末附上電子簽名的授權書。您只需標注資料出處 (李璨光的莫札特網站 tklee.com),不需在您的大作中附上授權書。
1...我們常常可以聽到人用「清澈透明、純真自然」來形容他的音樂。Mozart的音樂在表面上的確相當地「簡單」,讓人聽起來細毫沒有什麼困難,沒有Bach(巴哈)複音音樂那種複雜性,也沒有Beethoven般老愛給人「和平、奮鬥、救世界」的那種使命壓力,更不是像Haydn那種簡單到 我忍不住用「拙」來形容

2. A great poet uses but the twenty-six letters of the alphabet,andwithout devising a single new word gives voice to oughtsundreamed-of. (Mozart 正如一偉大詩人,毋須創造任何新字,僅僅用二十六個字母,道出了 我們幻夢未及的情感。)Mozart, His Character, His Work by Alfred Einstein

這段話我只是翻譯。原文是Alfred Einstein寫的。也請您別忘了標上真正的原作。





Tuesday, January 3, 2006

[QA] 美語補習班課程錄音帶


An English language after-school consulted me for a low-cost solution to record their classes for students to review at home. They are using a dual-deck cassette recorder but it's too time-consuming.

(English translation below)


1. 錄音設備/媒體
2. 複製方式
3. 傳播方式

我認為最好的方式還是用數位的方式,長期下來能節省大量成本。您購買幾台 mp3 錄音設備(或是一間教室裝一台PC來錄音),上課完將錄好的檔案燒錄至光碟(由於mp3檔案小,燒錄速度遠比音樂CD快),或是用USB隨身碟(這就更快了;一個學生買一支應該不為過;一兩個小時的課內容64MB就很夠了),或是放到網站上供學生下載(最方便的方法)。學生應該都有電腦或mp3 player來播放mp3檔案。


如果一定要輸出成錄音帶,又不用錄音室的品質的話(那樣您也需使用較昂貴的帶子),可以用有監聽輸出的錄音設備(一般現代電腦用的可錄音的音效卡就可以了),一邊錄入電腦成數位音檔,一邊錄入錄音帶。然後再用 high speed cassette duplicator 大量複製。購買的時候可以選擇速度,基座數(一次可以拷貝幾卷),以及軌數(單音或立體)。


You need to consider:

1. the recording equiment and media

2. how you duplicate the media

3. how to distribute the media

I would recommend digital means throughout. That would save your cost over time.

You may equipt your classrooms with mp3 recorders or PCs to record the class. Then you can burn the mp3 files, the size of which enables faster burning than audio CDs. You can even use USB thumb drives for even faster file transfer (64MB should be enough for a 2-hour class recording). The easiest way is to provide the files online for students to download themselves. Most students in Taiwan should alreay have an mp3 player or a PC to play the files.

If you go with the cassette solution, you may want to consider the cost in the long run (I think the cost will outrun digital solution after several classes). The cost would include the cassettes themselves, the duplication system, and the time and efforts involved in duplication. Digital means also allows easier archiving and duplication.

If cassette is a must, and you don't go after studio quality, you can use recording devices with monitor out (if you use a PC, most likely its sound card would work). This way, you can record into digital files and analog tapes at the same time. Then, you can use something like "high speed cassette duplicator" to make duplications. When you buy a high speed cassette duplicator, you can opt its copying speed, the number of decks (how many tapes you can copy at one run), and the number of channels (mono or stereo).

Monday, January 2, 2006

Idx/Sub Subtitle File Time Adjust (ISFiTA) v0.01

This is a quick and dirty (even the acronym) perl script I use to time-shift/stretch idx/sub subtitle files.


# Idx/Sub Subtitle File Time Adjust (ISFiTA) v0.01
# Author: Tsan-Kuang Lee
# Date: Jan 2, 2006
# What does it do?
# A video file may have different subtitle files, which not only differ in format
# but also differ in their timestamps. Usually this is because the creators of
# the subtitle files are syncing their subtitles to different video files (of the
# same content, but some with, say, trailors, and others without).
# For example, there are two video files: v1 and v2. Let's say v1 has 2 minutes more
# trailors from the beginning before the main content. Subtitle creators make s1 for
# v1 and s2 for v2.
# However, we only have v1 and s2 at hand. We want s2 to sync with v1.
# If s2 is in plain text subtitle format, e.g. SRT, TXT, SSA, etc. Many excellent
# utilities have been written, such as: SubCreator, http://www.radioactivepages.com/
# ISFiTA deals with idx/sub format.
# How to use it?
# ISFiTA simply reads the idx file (it's a plain text file) and recalculate the
# timestamps, according to the parameters we provide. We'll need to provide the
# several parameters. Here's what you would usually input at the command prompt:
# % perl ISFiTA-v0.01.pl 3 film0.idx 00:03:55:735 01:32:53:067 film.idx 00:03:34:535 01:32:32:067
# Here's what they mean:
# "%" is the command prompt;
# "perl ISFiTA-v0.01.pl" launches this script;
# "3" is the index code of the language you want to deal with. If you open the idx file
# with a text editor, you would see something like "id: zh, index: 3". zh is the language
# code for Chinese (Zhong-wen), and "3" is what we want here.
# "film0.idx" is the original idx file we want to read from.
# "00:03:55:735" is the timestamp (the last three digits are in milliseconds) of one
# specific subtitle line in "filem0.idx". Let's say it maps to the line "Let the show begin!".
# Many tools let you see which line "00:03:55:735" maps to, e.g. VobSub. (Of course, you need
# to have film0.sub for VobSub to display the image.)
# "01:32:53:067" maps to another line in "film0.idx", say "See you next time!".
# "film.idx" is the target file we want to write to.
# "00:03:34:535" is the target timestamp for "Let the show begin!". You can get this target
# timestamp from watching the video file, or from a correctly synced subtitle file.
# "01:32:32:067" is the target timestamp for "See you next time!".
# "Let the show begin!" doesn't have to be the first line in the whole subtitle; likewise,
# "See you next time!" doesn't have to be the last. However, the more apart they are from
# each other, the more accuracy of caculation we get, since the minor time-offs will be
# divided into ignorably small differences.
# Don't forget to provide film.sub to complete the idx/sub pair. Just use the original sub and
# correctly rename it.
# About
# This is a quick and dirty perl script (even its acronym sucks) I use to time-shift/stretch
# idx/sub subtitle files. Do whatever you want with it, at your own risk. If you do improve
# it or rewrite it, I encourage you to share it with the public. Authors of free utilities have
# my highest respects.
# Todos for you
# Here are some suggestions if you want to contribute something to the Open Source world, or the
# freeware world:
# SubCreator has much more sophisticated transformations. For example, you can decide the time
# range in which you want to adjust the time code.
# Obviously Perl is not user-friendly for most people. You may want to re-write it in another
# language and compile it into an excuteable.
# GUI makes it more approachable.
# Bug the authors of VobSub, SubCreator, etc. to include idx/sub time adjust/stretch functions
# into their utilities.

# Command line arguments
unless (@ARGV == 7) { die "Usage: $0 lang_index in_file in_start in_end out_file out_start out_end\n(timestamp format: hh:mm:ss:mis)\n" }
($lang_index, $in_file, $in_start_timestamp, $in_end_timestamp, $out_file, $out_start_timestamp, $out_end_timestamp) = @ARGV;

# Open files
unless (open INFILE, "<", $in_file) {
die "Couldn't open input file $in_file: $!; aborting";
unless (open OUTFILE, ">", $out_file) {
die "Couldn't open output file $out_file: $!; aborting";

# calculate necessaary transformation (shift, slope)
# simple linear transformation formula :
# new_bx = (ax - a1) * (b2-b1)/(a2-a1) + b1 , where
# a1 = in_start ; a2 = in_end
# b1 = out_start; b2 = out_en
# ax = old_time_point

$shift_milliseconds = &convert_to_milliseconds($out_start_timestamp);
$slope = (&convert_to_milliseconds($out_end_timestamp) - $shift_milliseconds) / (&convert_to_milliseconds($in_end_timestamp) - &convert_to_milliseconds($in_start_timestamp));
$in_start_milliseconds = &convert_to_milliseconds($in_start_timestamp);

# start processing

$section = "header";
while ()
if ($section eq "header" || $section eq "other_lang")
# check language id
# id: zh, index: 2
if ($_ =~ m/^id: *.+, index: *(.+)$/)
if ($1 eq $lang_index)
$section = "processing";
print "Processing $_";
$section = "other_lang";
elsif ($section eq "processing")
# stop when another language id tag appears
if ($_ =~ m/^id: *.+, index: *(.+)$/)
$section = "other_lang";
elsif ($_ =~ m/^(timestamp: )(\d\d:\d\d:\d\d:\d\d\d)(,.+)$/s)
# only process lines with timestamps, e.g.
# timestamp: 01:22:20:634, filepos: 00011a000
$_ = $1 . &calculate_new_timestamp($2) . $3;
print OUTFILE $_;

sub calculate_new_timestamp
my ($old_timestamp) = @_;
$new_milliseconds = (&convert_to_milliseconds($old_timestamp) - $in_start_milliseconds) * $slope + $shift_milliseconds;
return &convert_to_timestamp($new_milliseconds);

sub convert_to_milliseconds
my ($string) = @_;
$string =~ m/(\d+):(\d+):(\d+):(\d+)/;
$milliseconds = $4 + $3*1000 + $2*1000*60 + $1*1000*60*60;
return $milliseconds;

sub convert_to_timestamp
my ($milliseconds) = @_;

# Although perl supports integer division, the scope of "use integer"
# is global and that would cause slope calculation become integer.
# Therefore, we use redundant division as below. floor() is possible but
# we don't use it here for cross-distribution compatibility
# (some perl distributions don't have that package installed)

my $res_h = $milliseconds % (60*60*1000);
my $hour = ($milliseconds - $res_h) / (1000*60*60);
my $res_m = $res_h % (1000*60);
my $min = ($res_h - $res_m) / (1000*60);
my $res_s = $res_m % 1000;
my $sec = ($res_m - $res_s) / 1000;
my $ms = $res_s;

return sprintf("%02d:%02d:%02d:%03d", $hour, $min, $sec, $ms);