Dirty laundry, chickenpox and chrysanthemum. In case of Amnesia: Mr.Harmonies Memory Database.
Jumaat, 10 Januari 2014
Khamis, 9 Januari 2014
#89: Katak Bawah Tempurung - A New Perspective (Part 2)
Bayangkan seseorang yang tak pernah menonton filem orang lain tapi minat untuk membuat filem. Agak-agak apakah hasilnya kalau beliau mengarah filem? Orang yang tak pernah menonton filem orang lain boleh juga ambe bagi contoh antara pembuat filem terawal iaitu Georges Méliès. Di zaman dimana orang buat filem hanya dengan durasi beberapa saat, ambe boleh simpulkan bahawa Georges Méliès sudah tentu tak banyak menonton filem-filem kerana zaman tersebut masih belum ada banyak filem yang dikeluarkan. Nak tahu hasil filem arahan beliau?
Filem dari tahun 1902, A Trip to the Moon, arahan Georges Méliès
Macam "katak bawah tempurung tak"? Bagi ambe, tak boleh la nak label katak dibawah tempurung sebab beliau antara orang yang pertama mengarah filem didunia. Tapi disini anda boleh lihat bagaimana seseorang yang langsung tak ada garis panduan norma-norma filem mengarah sebuah filem. Terasa sangat asing dan avant guard kan? Bayangkan Georges Méliès tinggal di zaman moden tapi beliau tinggal pula didalam gua di negara Malaysia, tak pernah menonton filem Playboy itu Suamiku, Senario the Movie, Mami Jarum, dan lain-lain. Jika beliau keluar dengan filem sebegini, boleh nampak bahawa beliau seperti "katak dibawah tempurung" kan?
Ia adalah purely "katak dibawah tempurung", dan bukan reverse-"katak dibawah tempurung" kerana ambe bayangkan orang yang reverse-"katak di bawah tempurung" adalah orang yang terdedah dengan dunia luar tanpa terdedah pada masyarakat setempat sedangkan masyarakat setempat hanya terdedah dikalangan sendiri.
Selasa, 7 Januari 2014
#88: Islamic Finance - Forex Trading by Sheikh Hacene Chebbani
FOREX Trading: Halal or Haram by Sheikh Hacene Chebbani
#87: Katak Bawah Tempurung - A New Perspective
Katak bawah tempurung adalah peribahasa melayu dimana lebih kurang bermaksud, orang yang tak pernah terdedah dengan dunia luar dan tak tahu menahu apa disekelilingnya. Dulu ambe menganggap ia perkara yang teruk untuk menjadi "katak bawah tempurung", tapi ambe realize ada baiknya juga dengan sesetengah keadaan.
Kisah katak bawah tempurung ni ambe suka nak kaitkan dengan dari Greece bertajuk Dogtooth. Filem ni mengisahkan tentang satu keluarga yang duduk di tempat yang terpencil dan parents keluarga tersebuat semacam membuat satu "social experiment" keatas anak mereka sendiri. Social experiment ini adalah dengan membesarkan anak-anak mereka di tempat yang tidak ada orang lain dan mereka menggunakan perkataan-perkataan serta tanggapan sendiri. Contohnya memberitahu bahawa kucing adalah pemangsa manusia. Mempunyai vocabulary sendiri yang songsang dari dunia luar seperti memanggil sesuatu objek dengan nama yang lain contohnya memanggil "Epal" dengan nama "Keyboard". Ia filem yang sangat disturbing dan tak berperikemanusiaan, tapi ia memberi idea yang jelas tentang katak dibawah tempurung.
Berbalik kepada katak dibawah tempurung, ambe fikir dengan kedudukan yang unik, katak dibawah tempurung boleh menjadi sesuatu yang baik. "Di bawah tempurung" boleh bermaksud di dunia sendiri tanpa campuran idea-idea dari luar. Ini adalah sesuatu yang unik. Dengan adanya persekitaran sendiri tanpa pengaruh luar, sesuatu yang baru dan asli boleh lahir. Sesuatu yang idea asal tanpa influence orang lain. Contohnya seseorang yang tak pernah mendengar muzik rock dan diberikan sebuah gitar. Tanpa pengetahuan bermain gitar, tapi dengan perasaan ingin tahu dan suka mendengar bunyi-bunyian beliau mungkin akan memetik gitar tersebut dan cuba bermain sesuatu. Gitar juga perlu di tune mengikut standard. Dan jika orang itu tak pernah tahu apa itu cara tuning gitar, lama kelamaan beliau akan mencipta satu standard tuning sendiri. Kaedah memetik gitar, time signature sendiri serta bentuk muzik yang tak pernah didengari sebelum ini. Idea asal yang tidak pernah dipengaruhi.
By the way, ini Javier Reyes, salah seorang gitaris dari band Animal As Leaders. Seriously, ambe dok pernah dengar muzik begini. Ambe saspek dia ni jenis "katak bawah tempurung" :)
Javier Reyes. Seriously, I never heard this kind of music before!
Kisah katak bawah tempurung ni ambe suka nak kaitkan dengan dari Greece bertajuk Dogtooth. Filem ni mengisahkan tentang satu keluarga yang duduk di tempat yang terpencil dan parents keluarga tersebuat semacam membuat satu "social experiment" keatas anak mereka sendiri. Social experiment ini adalah dengan membesarkan anak-anak mereka di tempat yang tidak ada orang lain dan mereka menggunakan perkataan-perkataan serta tanggapan sendiri. Contohnya memberitahu bahawa kucing adalah pemangsa manusia. Mempunyai vocabulary sendiri yang songsang dari dunia luar seperti memanggil sesuatu objek dengan nama yang lain contohnya memanggil "Epal" dengan nama "Keyboard". Ia filem yang sangat disturbing dan tak berperikemanusiaan, tapi ia memberi idea yang jelas tentang katak dibawah tempurung.
![]() |
| Dogtooth. Anak ditutup mata dari dunia luar. |
By the way, ini Javier Reyes, salah seorang gitaris dari band Animal As Leaders. Seriously, ambe dok pernah dengar muzik begini. Ambe saspek dia ni jenis "katak bawah tempurung" :)
Javier Reyes. Seriously, I never heard this kind of music before!
Khamis, 2 Januari 2014
#85: Stereo Mix : Windows desktop sound loop back
![]() |
| Patchage on Linux |
Kebolehan untuk merakam sound dari desktop amatlah penting tanpa adanya kebolehan untuk menyalurkan output audio ke input program lain seperti pada Linux. Dulu ambe pernah berfikir untuk membuat satu wayar dengan 2 hujung jack male bagi membolehkan ambe merakam sound yang keluar dari speaker untuk masuk semula ke jack mikrofon atau line-in dengan menyalurkan output dari jack speaker/headphone ke mikrofon/line-in melalui sambungan wayar fizikal speaker/headphone ke mic/line-in. Ia boleh berhasil tapi hasilnya mungkin akan mengalami sedikit masaalah dari segi kualiti dan kehilangan data. Masaalah ini berlaku kerana proses yang dilakukan oleh soundcard iaitu menukarkan signal digital kepada analog dan menukar semula signal analog kepada signal digital. Sewaktu proses conversion ini kehilangan data boleh berlaku yang akan merendahkan kualiti rakaman.
![]() |
| Enable Stereo Mix by right-clicking and select Enable |
Untuk aktifkan soft-audio-device ni, pergi ke Control Panel dan pilih Sound. Pada tab Recording, right-click ruang senarai recording device seperti dibawah dan pastikan Show Disabled Devices dan Show Disconnected Devices telah ditandakan. Sepatutnya ketika ini anda sudah boleh lihat device Stereo Mix didalam ruang senarai recording device. Select dan right-click Stereo Mix dan pilih Enable. Sekarang soft-audio-device Stereo Mix anda sudah diaktifkan dan sedia untuk digunakan. Sekarang cuba pasang apa-apa audio player/media player dan pasang lagu kegemaran anda dan anda akan lihat audio peak meter di sebelah Stereo Mix memberikan respon pada bunyi dari media/audio player anda. Perlu diingat, Stereo Mix menyalurkan audio dari desktop dan bukan dari aplikasi tertentu seperti di Linux. Dengan menggunakan Patchage/Qjackctl, anda boleh menyalurkan audio output dari Audacity ke aplikasi Jamin dan output dari Jamin masuk ke input Ardour tanpa dicemari bunyi-bunyian dari aplikasi lain.
Nak guna Stereo Mix mudah saja. Pasang audio recorder kegemaran anda, dan pilih Stereo Mix sebagai recording device (seperti nak pilih mikrofon). Klik record dan anda dah merekod sound dari desktop anda sendiri.
| Untuk merakam sound dari desktop, gunakan device Stereo Mix. Notice the track? Yes, it's in stereo! |
Tags:
adc,
dac,
patchage,
qjackctl,
record desktop sound,
soundflower,
stereo mix
Ahad, 29 Disember 2013
#84: Just A Thought About "Forever Alone People".
Waktu ambe kerja di Hospital Sultanah Aminah dulu ambe pernah jumpa kereta buruk ditempat parking. Bukan buruk sebab memang asal buruk, tapi buruk sebab parking disitu tak alih berbulan lamanya. Tayar dah kempis. Semak dah menjalar. Ambe assume orang yg tinggal kereta di parking hospital ni mesti dh meninggal. Mungkin dulu dia dtg sendiri naik kereta pegi masuk wad sorang2 dan meninggal tanpa orang tahu ttg keretanya masih disitu. Masih parking.
Buat ambe terfikir betapa forever alone-nya sesetengah orang di dalam dunia ini. :'(
Buat ambe terfikir betapa forever alone-nya sesetengah orang di dalam dunia ini. :'(
![]() |
| This is Abg Man, my eldest brother in law. He's got a family though. |
Jumaat, 1 November 2013
#83: Sexy Beast
![]() |
| Focusrite Scarlett series 18i6 |
![]() |
| JACK shows 18 input and 6 output |
18i6 ada 18 input dan 6 output. Tapi yang ada pada unit ni hanya ada 10 input. 8 lagi boleh connect dengan Optical input dari belakang unit ni. So far, ambe guna menatang ni dengan Linux Mint tade masaalah.
Ambe dapat latency 2.67 millisecond dengan memilih sample rate 192000 dan 256 frames. Dengan latency 2.67 millisecond, ambe masih mendapat XRUN, tapi tak kerap (1 XRUN dengan selang 8-10 saat) jadi ambe rasa ia acceptable. Untuk lebih selamat, bolehlah gunakan setting yang lebih sederhana dan akan berakhir dengan latency yang masih acceptable seperti 13 millisecond dengan langsung tak ada XRUN.
![]() |
| Settings on qjackctl. Latency 2.67 millisecond. |
#82: Cara Bodoh untuk Mati
This music video is so cute, I feel so bad not sharing it ;) Have a nice day!
Jumaat, 25 Oktober 2013
#81: period_converter script modification for MT4
| period_converter script with feedback |
//+------------------------------------------------------------------+
//| Period_Converter.mq4 |
//| Copyright © 2005-2007, MetaQuotes Software Corp. |
//| http://www.metaquotes.net |
//+------------------------------------------------------------------+
#property copyright "Copyright © 2007, MetaQuotes Software Corp."
#property link "http://www.metaquotes.net"
#property show_inputs
#include <WinUser32.mqh>
extern int ExtPeriodMultiplier=3; // new period multiplier factor
int ExtHandle=-1;
//+------------------------------------------------------------------+
//| script program start function |
//+------------------------------------------------------------------+
int start()
{
Comment("Converting using " + ExtPeriodMultiplier + " multiplier...");
int i, start_pos, i_time, time0, last_fpos, periodseconds;
double d_open, d_low, d_high, d_close, d_volume, last_volume;
int hwnd=0,cnt=0;
//---- History header
int version=400;
string c_copyright;
string c_symbol=Symbol();
int i_period=Period()*ExtPeriodMultiplier;
int i_digits=Digits;
int i_unused[13];
//----
ExtHandle=FileOpenHistory(c_symbol+i_period+".hst", FILE_BIN|FILE_WRITE);
if(ExtHandle < 0) return(-1);
//---- write history file header
c_copyright="(C)opyright 2003, MetaQuotes Software Corp.";
FileWriteInteger(ExtHandle, version, LONG_VALUE);
FileWriteString(ExtHandle, c_copyright, 64);
FileWriteString(ExtHandle, c_symbol, 12);
FileWriteInteger(ExtHandle, i_period, LONG_VALUE);
FileWriteInteger(ExtHandle, i_digits, LONG_VALUE);
FileWriteInteger(ExtHandle, 0, LONG_VALUE); //timesign
FileWriteInteger(ExtHandle, 0, LONG_VALUE); //last_sync
FileWriteArray(ExtHandle, i_unused, 0, 13);
//---- write history file
periodseconds=i_period*60;
start_pos=Bars-1;
d_open=Open[start_pos];
d_low=Low[start_pos];
d_high=High[start_pos];
d_volume=Volume[start_pos];
//---- normalize open time
i_time=Time[start_pos]/periodseconds;
i_time*=periodseconds;
for(i=start_pos-1;i>=0; i--)
{
time0=Time[i];
//---- history may be updated
if(i==0)
{
//---- modify index if history was updated
if(RefreshRates())
i=iBarShift(NULL,0,time0);
}
//----
if(time0>=i_time+periodseconds || i==0)
{
if(i==0 && time0<i_time+periodseconds)
{
d_volume+=Volume[0];
if (Low[0]<d_low) d_low=Low[0];
if (High[0]>d_high) d_high=High[0];
d_close=Close[0];
}
last_fpos=FileTell(ExtHandle);
last_volume=Volume[i];
FileWriteInteger(ExtHandle, i_time, LONG_VALUE);
FileWriteDouble(ExtHandle, d_open, DOUBLE_VALUE);
FileWriteDouble(ExtHandle, d_low, DOUBLE_VALUE);
FileWriteDouble(ExtHandle, d_high, DOUBLE_VALUE);
FileWriteDouble(ExtHandle, d_close, DOUBLE_VALUE);
FileWriteDouble(ExtHandle, d_volume, DOUBLE_VALUE);
FileFlush(ExtHandle);
cnt++;
if(time0>=i_time+periodseconds)
{
i_time=time0/periodseconds;
i_time*=periodseconds;
d_open=Open[i];
d_low=Low[i];
d_high=High[i];
d_close=Close[i];
d_volume=last_volume;
}
}
else
{
d_volume+=Volume[i];
if (Low[i]<d_low) d_low=Low[i];
if (High[i]>d_high) d_high=High[i];
d_close=Close[i];
}
}
FileFlush(ExtHandle);
Comment("Conversion done! "+cnt+" record(s) written using "+ ExtPeriodMultiplier +" multiplier");
Print(cnt," record(s) written");
//---- collect incoming ticks
int last_time=LocalTime()-5;
while(IsStopped()==false)
{
int cur_time=LocalTime();
//---- check for new rates
if(RefreshRates())
{
time0=Time[0];
FileSeek(ExtHandle,last_fpos,SEEK_SET);
//---- is there current bar?
if(time0<i_time+periodseconds)
{
d_volume+=Volume[0]-last_volume;
last_volume=Volume[0];
if (Low[0]<d_low) d_low=Low[0];
if (High[0]>d_high) d_high=High[0];
d_close=Close[0];
}
else
{
//---- no, there is new bar
d_volume+=Volume[1]-last_volume;
if (Low[1]<d_low) d_low=Low[1];
if (High[1]>d_high) d_high=High[1];
//---- write previous bar remains
FileWriteInteger(ExtHandle, i_time, LONG_VALUE);
FileWriteDouble(ExtHandle, d_open, DOUBLE_VALUE);
FileWriteDouble(ExtHandle, d_low, DOUBLE_VALUE);
FileWriteDouble(ExtHandle, d_high, DOUBLE_VALUE);
FileWriteDouble(ExtHandle, d_close, DOUBLE_VALUE);
FileWriteDouble(ExtHandle, d_volume, DOUBLE_VALUE);
last_fpos=FileTell(ExtHandle);
//----
i_time=time0/periodseconds;
i_time*=periodseconds;
d_open=Open[0];
d_low=Low[0];
d_high=High[0];
d_close=Close[0];
d_volume=Volume[0];
last_volume=d_volume;
}
//----
FileWriteInteger(ExtHandle, i_time, LONG_VALUE);
FileWriteDouble(ExtHandle, d_open, DOUBLE_VALUE);
FileWriteDouble(ExtHandle, d_low, DOUBLE_VALUE);
FileWriteDouble(ExtHandle, d_high, DOUBLE_VALUE);
FileWriteDouble(ExtHandle, d_close, DOUBLE_VALUE);
FileWriteDouble(ExtHandle, d_volume, DOUBLE_VALUE);
FileFlush(ExtHandle);
//----
if(hwnd==0)
{
hwnd=WindowHandle(Symbol(),i_period);
if(hwnd!=0) Print("Chart window detected");
}
//---- refresh window not frequently than 1 time in 2 seconds
if(hwnd!=0 && cur_time-last_time>=2)
{
PostMessageA(hwnd,WM_COMMAND,33324,0);
last_time=cur_time;
}
}
Sleep(50);
}
//----
return(0);
}
//+------------------------------------------------------------------+
//| |
//+------------------------------------------------------------------+
void deinit()
{
if(ExtHandle>=0) { FileClose(ExtHandle); ExtHandle=-1; }
}
//+------------------------------------------------------------------+
Langgan:
Catatan (Atom)








