Tuesday, April 06, 2010

problems with streaming - hard disk usage

Our streams had problems, as noted before. IIS was a possible culprit, with our own download service being the prime suspect. Limiting number of connections per IP address seemed a possible way out. But IIS does not have a mechanism to do that - only global total number of connections can be limited. The disk from which the audio files were being taken seemed highly fragmented - maybe because of all these small files? Anyway, wanted to try defragmenting it. So, copied all to another volume on another drive. Copied using RichCopy to minimize disruptions during the process, with


  1. trickle

  2. serialize disk access

  3. single thread only

  4. system buffer disable
turned on so that impact on system performance was minimized. Screenshot:




No problem with the streams while the copy went on. A minor issue when the playout was restarted, the temp audio files could not be overwritten by colinux. Had to manually delete them from Windows.

But after shifting playout to the new volume, again the skipping re-occured in a couple of hours! So, there is some system-wide hard disk usage? The first reaction was to shut down IIS by stopping the websites one by one. That did not solve the problem - at least, it did not reflect in any reduction in the hard disk usage with Performance Monitor as given in my previous post.

Investigating with the tips given on these pages, to identify the process which uses large amount of disk usage by checking out Task Manager, Start -> Run -> taskmgr, looking for processes with rapidly changing values for I/O Read Bytes and I/O Write Bytes and later using Process Monitor to view files accessed by that process. csrss.exe seems to be the process using the filesystem to some extent - Client Server Runtime Subsystem. But it does not display excess CPU utilization as noted here. This forum post notes a similar hard disk issue with csrss. Or maybe there is some process which we did not catch in time. Will keep investigating.

revisiting internet banking from mobile

In my earlier post, I'd described failure of IE mobile and Opera Mini. This time, Skyfire worked with HDFC bank. It still doesn't work with Canara bank and SBI. Of course, it goes through Skyfire's servers, but so does Opera Mini, so hopefully it is as safe as it's privacy policy states. Skyfire drinks bandwidth, so feasible only on an unlimited plan or for emergencies.

Monday, April 05, 2010

ngpay and mchek

Tried out these mobile payment solutions first with the new credit card. mchek has the disadvantage of having only Airtel recharge as the USP. Can't recharge other operators' mobiles if your operator is Airtel! ngpay's USP for me is KSRTC booking. Even when KSRTC's AWATAR system is down, which is often, ngpay works. But ngpay does not have Airtel recharge for AP circle or All India, though the menu item exists. Navigating ngpay is a pain because of the QTEK 9100 mobile's terrible touch screen. Much easier to do it by tethering it to a PC and using MyMobiler.

mchek registration had some hiccups, since the registration is followed by a card number verification which requires a popup. The first time I enabled the popup, had to retry. And on retrying so quickly, I think the card processing back end would have refused the connection, and hence returned "Invalid card". I thought this was because the card was earlier registered with my Tata number. Customer care assured me that the earlier unsubscribe was effected. Anyway, waiting for some time - 15 minutes - and retrying - solved the issue.

Wednesday, March 31, 2010

free space on colinux and hard disk performance

Over the last two days, there were several interruptions on our streams. Problem seems to be excessive Hard Disk usage, since copying files was taking a very long time. But at a time when the system was behaving normally, trying out the counters
1. PhysicalDisk: Avg. Read Queue Length Should be less than 2
2. PhysicalDisk: Avg. Write Queue Length Should be less than 2
3. PhysicalDisk: % Disk Time more than 50% indicates a bottleneck
as given here indicates that the disk is fine. That page says
to ensure that it was not a processor or memory bottleneck, I also recorded % processor time and available bytes. As you can see from Diagram 1, the processor's average was below 30%. If the processor were the bottleneck the trace would be over 80%. On the other hand, if there was a memory shortage, available bytes should drop below 10MB.

And our processor usage was < 20%, with > 200 MB of memory also available.

Maybe I should try the same checks when the system is crawling. If there is some indication of what application is causing the hard disk usage in some log somewhere, it would have been useful. I suspect IIS, since SSSBPT and the audio downloads are also on this machine.

Checking the colinux virtual machine, found only 100 MB free, 10%. Cleaned up to make it around 40%, 400 MB or so, by the following.

apt-get clean cleaning out /var/cache/apt

As given here, postsuper -d ALL
for /var/spool/postfix

from /home/sgh/playlist,
ls ????09* to find the 2009 playlists, removed them and older ones...

Some interesting info:
2007 Feb asia/africa/america started
2004 Oct started web stream

for /home/sgh/log

mv 0*.check ../audio/log_backup 2> /dev/null
mv 1*.check ../audio/log_backup 2> /dev/null
mv 2*.check ../audio/log_backup 2> /dev/null

etc - the errors to dev null, because mv complains that it cannot keep the same user ownership and permissions.

tail -5 logfile > logfile did not work, so had to do
tail ices.log > icesnew.log
mv icesnew.log ices.log

after taking backup.

But tho playout continues, log file is not appended :(
only after playout restarts next day? Anyway, had to restart all playouts by restarting colinux service since the streams started skipping, so the logs have restarted now.

Sunday, March 28, 2010

midi works tho' audio is dead

The Yamaha AW4416 came back some weeks back after a stint at Chennai, with no improvement. Apparently it can't be fixed without a high cost. The audio output is dead, and I believe the inputs are dead too. Some of the switches are also not working. Tested the midi connections today by connecting to laptop like in my previous post through a Tascam US-144. The Midi section seems to be fine. They seem to be getting a firewire mixer at the Studio. Then maybe I will get the Tascam US-1641 once again.

Tuesday, March 09, 2010

hardware debugging - cordless door-bell

A cordless door-bell which K got for me had a funny problem. When I affix the remote switch on our door, it would not work. Remove the switch from the door, and it works, though it is at the same distance from the bell. When KR fixed it to the wall instead, it worked. So, in retrospect, it was probably some sort of capacitive effect from the aluminium door frame acting through the plastic case which was changing the transmission frequency or something.

asp error '8004020f'

BT subscription feedback form returned this error. The many-headed say this means that the e-mail was rejected by the server for some reason. Checked the asp code, it had
Fields("http://schemas.microsoft.com/cdo/configuration/smtpserver") = "localhost"
which listed the wrong smtp server. Corrected it and it worked fine. A wrong email address, as mentioned here, leads to asp error '8004020e'.

Friday, March 05, 2010

shopping cart code and digital downloads

A google ad on this very blog pointed to www.fatfreecart.com which looks pretty useful. Free shopping cart code for google checkout and paypal. Of course, many hosting companies offer free shopping cart code with their hosting too... And DigiVendor seems to be a useful MySql-Php secure downloads payment option. The Google Checkout API docs detail the process, and provides sample code, too. Similar stuff exists for paypal.

Thursday, March 04, 2010

ebook reader for Nokia 6303

Struggled quite a bit for helping V find an ebook reader for his Nokia 6303 classic. C mentioned that it was an S40 phone and not an S60 phone. That helped the google searches. Mobipocket's java version had some signing bug which was not allowing it to work properly. I sent him this list,

ReadManiac

Libris is not free, $10

Wattpad reader
free, but supposed to read books from their website, I don't know if you can read your own files.

Wikitome reader seems to be for Series 40, so may work on 6303

Again, getting books in that format?

And he replied with his solution, MTextReader, which seems much better, and free too.

Monday, March 01, 2010

disabling google buzz in a corporate or academic network

R wanted some way to block google buzz at work. According to him, too many people were spending too much time on Buzz, with a spike in network bandwidth. And following friends of friends and other such undesirable activities. This was my reply.

This question has been asked in gmail support forums also, but since
buzz is integrated into gmail, it seems difficult to block it using
traditional methods. Here is one way I can think of:

Make the user log in to gmail using an older browser, or a browser not
supported in the latest gmail version. For example, I am typing this
in Opera 8.53 - available from oldversion.com - then, buzz is not even
seen. It is not using html view, either - it is using the older
version of gmail, which you can see from the url
https://mail.google.com/mail/?shva=1&ui=1&ov=0
This version has most of the useful things like address completion and so on.

(If you can redirect users to this url when they go to gmail also, it
might do the trick.)

One way of forcing users to use an old browser would be to allow gmail
only on terminal sessions running on a terminal server or remote X
sessions running on a linux server or remote desktop sessions. Since
the user is just logging on to the server, permissions can be set so
that the user cannot install any sw. Possibly such permissions can be
set on the desktops also.

Edit: R says it's not practical for him to change user settings. He will explore a url rewrite using squid's php rewrite or something like that, to redirect any requests to mail.google.com/mail to mail.google.com/mail/?ui=1

Saturday, February 27, 2010

malware and more

Once again, malware hit some of our websites. Had to do stuff from this earlier post. These were coming in via ftp from remote hosts. So, ftp logs showing logins from Poland, Bulgaria, etc were red flags. All sorts of stuff, like iframes and links to various sites which were themselves hacked, and so on. Some examples of malicious links, do not visit these!!!
videointerviewtips.com/pdf/free-resources-old.php


and in iframes

jL.chura.pl/rc/

Luckily Google and stopbadware.org have filters in place, warning us. But some sort of pro-active thing should be done, instead of reactive, like this time.

pdf to text

Foxit reader has "Save as text", but only for the pro version. Doubtless there are easier ways to do this, but for the quick and dirty fix without having to install any software, pdftextonline.com does the job. Of course, only those pdfs which have text in them (and not just images) will be useful with this text extraction.

Wednesday, February 24, 2010

testing Tata Indicom photon plus usb wireless connection

First I tried the McAfee speed test like in my previous Airtel test and it showed 200 kbps.



But then I tried connecting to our studio ftp server, and it started serving at 1500 kbps! This sustained for quite some time, not some caching effect. So, their international ports are probably slow. Again, their speeds seem to fluctuate. Tata Indicom's own test showed Your current download speed is: 695.50kbps

It was able to connect to our colinux machine, so no problems with ssh or rdp being blocked or anything like that. Latency-wise, it seemed even better than our leased line Tata internet port! 186 ms on pinging google.com, versus 256 ms with the leased line. Similar results to tracert as given here.

My tests were on Windows XP, so the built-in drivers could be used. The USB device has the drivers on in-built memory which is recognised as a CD drive. Autorun.exe and all that. For Linux, these people seem to have it worked out. Basically using wvdial, copy into /etc/wvdial.conf

[Dialer Defaults]
Modem = /dev/ttyUSB0
Init1 = ATZ
Phone = #777
Username = internet
Password = internet
New PPPD = yes
Stupid Mode = 1

then sudo wvdial

Edit: Some more info. The device gets a bit hot like a mobile phone during talk-time! Bittorrent speed tested with an Ubuntu CD download, was around 1.5 Mbps again. So, that seems to be the fastest it can deliver. Upload speeds were slightly slower - 800 kbps for the local ftp server. This product is a USB-based one, Tata also has a router configuration. Tariff is somewhat higher than BSNL's wireline ones.

Friday, February 19, 2010

mixer glitches

The Tascam TM-D4000 I'm currently using after the Yamaha 4416 went back to Chennai for repairs, showed its temperamental nature a couple of days back on Tuesday, when it "hung" with blank display and saturated output - all inputs set to +10 dB or something like that. This happened 10 minutes after switching it on around 4 pm. So, the reason S used to report this in the Studio is probably not water condensation. Turning it off and on does not work, have to wait an hour or so. After an hour, turning it on - worked, again hanging after 7 minutes. Turned it off till Wednesday, then it worked fine. No problems yesterday and this morning, either. But must be ready with a backup plan, since this sort of failure is a possibility.

Tuesday, February 16, 2010

trying out Java streaming radio apps

Tried out various Java apps listed on the radiosai website on my Windows Mobile 5 phone which has a Java environment also, but all of them failed to play. At least VirtualRadio gave an error message:
creating player:
javax.microedition.media.MediaException
NULL

I suppose that is because the Java environment does not have access to an mp3 decoder.

Thursday, February 11, 2010

gprs counter for mobile - WM5

Tried out the built-in gprs data counter in HomeScreen PlusPlus, the settings for which which can be accessed via Start -> Settings -> Personal -> Today -> Items -> HomeScreen PlusPlus and clicking the Options button. Or by pressing and holding near the cpu icon.



But for some reason it did not work on my phone. Maybe I should have tried rebooting the phone after setting it or something. But anyway, it showed 0 incoming 0 outgoing even after using nearly an MB - Rs 5.40 worth - by just seeing half a page of slashdot in skyfire!

Monday, February 08, 2010

some fixes for windows media encoding

Some of the VOB files to be encoded showed some audio delay when processed through VirtualdubMod even though they played perfectly well with KMPlayer. Then found this page which explains how to do it with Virtualdub, and this one for VirtualdubMod. Basically,
Streams -> Stream List -> Right-click the audio -> Interleaving -> Delay audio track by xxx ms.
500 ms worked well for me. Virtualdub has the same thing under
Audio -> Interleaving

Then trying to do WME batch encoding as given in this post, finally ended up making a batch file with
cscript.exe wmcmd.vbs -wme "E:\wmv\2.wme"
cscript.exe wmcmd.vbs -wme "E:\wmv\3.wme"
cscript.exe wmcmd.vbs -wme "E:\wmv\4.wme"
cscript.exe wmcmd.vbs -wme "E:\wmv\5.wme"

and so on, with each wme file having a separate input and output file specified. The input file is in two places in the wme file, for audio and video. The wme files are xml files, so a text editor can be used to generate them by modifying older wme files.

But in typical Microsoft fashion, the resultant output files are not exactly the same as the files generated using the WME gui. Because, WMVAppendGui cannot join these files with files produced earlier with the WME gui! Have to re-create those files also with the wmcmd.vbs commandline technique.

Tuesday, February 02, 2010

BleachBit

From this slashdot story about tracking, went on to EFF's Panopticlick and bleachbit. Bleachbit - removes cache/temp/cookies etc from a variety of programs and plugins including Flash cookies and Java cache - seems quite impressive, a portable version too, along with Windows and Linux versions. Saves space on C drive for the space-constrained, too.

delay in streams and jitter

Today, I sat down to quantify the amount of delay in our stream which is being aired now on AsiaStar also. I noticed that most programs on AsiaStar were starting a few minutes after the hour - like 1.05 instead of 1.00 etc. Checked if the time on the server was correct, yes, it is set to automatically keep the correct time using updates from time.windows.com

Then checked the log to see when files are being played:
tail /home/sgh/ices/asiastream/ices.log
This does not have any timestamps. But
ls -l /home/sgh/ices/asiastream/ices.log
gives last write timestamp, saw this was 13:04

Checked the playlist on xmms, according to the xmms duration listing, it should have been 13:03. So, this adds some jitter.

Next, there is the buffering time in the ShoutCast server, and also buffering in the client. This probably adds a few more seconds. Checked the time gap from the time on the log and the time I heard it on AsiaStar - 13:20 on log for next file, I heard it at 13:23. This is probably the buffering on the server + client.

Client buffering probably changes with time. For example: I played AsiaStream on my machine, it was approx 10 seconds later than AsiaStar which is AsiaStream coming after going up and down from the satellite. The satellite round-trip takes approx 2 seconds, so my machine was 12 sec behind the Melbourne machine.

permission error

My colleague got this error from the webserver:
Microsoft OLE DB Provider for ODBC Drivers error '80004005'
[Microsoft][ODBC Excel Driver] Operation must use an updateable query.

Googling found these possible causes, and changing permissions for the folder seems to have solved the issue. Allowed the user called IUSR_WEB_SERVER_NAME (the web server) to write in that folder.

Sunday, January 31, 2010

Windows media encoding and virtualdubmod batch jobs

Investigating batch converstion with Windows media encoder, found this resource which includes info on the command-line encoder. This page has the info in a more readable form - just
cscript.exe c:\path\to\wmcmd.vbs -loadprofile encoding-profile.prx -input "F:\input-folder" -output "F:\output-folder"
This page explains how to get the prx files from the WMEncoder, Properties -> Compression -> Edit -> Export button. But of course, it did not work for me,
.Error occurred in transcoding: Error Code = 0xC00D002F
since my WME does not work with Xvid encoded files, needs a nominal crop of a couple of pixels before it works. Probably then it uses a different input codec or whatever.

But checking out cscript.exe wmcmd.vbs /? found that it supports WMEncode wme session files too! So next time I can try that.

Virtualdubmod also has a batch encoding option with input and output folders, as given at this page and I used it this time: File -> Job Control, and Edit -> Process Directory from the Job control window.

machine translation of Indian languages

This IIT-built automatic translation engine is interesting, pointed out to me by BK. If you don't prefer the Hindi keyboard, you can use other tools like gmail's or google's or others like writeka, then copy-paste into the duur sampark page. The attached sentence took nearly a minute to translate, and it seems to be highly Hyderabadi Telugu! (Click on the picture below for larger image).

Saturday, January 30, 2010

voddler

Voddler seemed a good service, for watching ad-supported movies. But it really needed a 2.5 Mbps connection, so not suitable for us - too much time spent buffering. The interface is a bit quirky too, since they have made it "remote-friendly" for people running media center PCs or whatever, but PC unfriendly, not allowing mouse-clicks! And officially only open for people in Sweden, of course.

disabling TRACK and TRACE

Testing our web servers with the OpenVAS tool (fork of Nessus) at hackertarget.com, it pointed out that TRACK/TRACE need to be disabled. On IIS, it turned out that actually TRACK and TRACE are disabled, verified with telnet as given here.

telnet media.radiosai.org 80
Trying 66.249.27.178...
Connected to media.radiosai.org.
Escape character is '^]'.
TRACK / HTTP/1.0
Host: foo
A: b
C: d

HTTP/1.1 501 Not Implemented
Content-Length: 0
Server: Microsoft-IIS/6.0
MicrosoftOfficeWebServer: 5.0_Pub
X-Powered-By: ASP.NET
Date: Sat, 30 Jan 2010 04:30:44 GMT
Connection: close

telnet media.radiosai.org 80
Trying 66.249.27.178...
Connected to media.radiosai.org.
Escape character is '^]'.
TRACE / HTTP/1.0
Host: foo
A: b
C: d

HTTP/1.1 501 Not Implemented
Content-Length: 0
Server: Microsoft-IIS/6.0
MicrosoftOfficeWebServer: 5.0_Pub
X-Powered-By: ASP.NET
Date: Sat, 30 Jan 2010 04:30:44 GMT
Connection: close


On krishna, had to disable TRACE - for doing this, googled a bit, finally howtoforge showed the simple way of just adding
TraceEnable Off
to /etc/apache2/apache2.conf and restarting the web server.

PS. Initially I had tried with the code for re-write as given at many places, like here
# disable TRACE and TRACK in the main scope of httpd.conf
RewriteEngine On
RewriteCond %{REQUEST_METHOD} ^TRACE
RewriteRule .* - [F]
RewriteCond %{REQUEST_METHOD} ^TRACK
RewriteRule .* - [F]

But this did not seem to work. For enabling mod rewrite, had to do sudo a2enmod rewrite as given here.

Sunday, January 24, 2010

Tips for clean audio

A "request for sermon" about tips on getting cleaner audio, and I obliged.

While recording,

1. Record with minimum ambient noise - switch off a/c etc. Don't use mics like wireless mics which give a hiss.

2. Have both shotgun mics and lapel mics for both guest and host in case of video interviews, or have dynamic mics close to speakers' mouths in case of audio-only interviews.

The rest of the stuff has to be done in the post-processing.

1. For each track recorded, do noise reduction using Adobe audition or cool edit pro or whatever, my settings in CEP 2.0 are as shown below, after doing a "Get Profile from Selection" using a section with only noise.



2. After the NR, doing a suitable noise gate, like the one below, is recommended.



3. Only after these steps, if the different tracks (interviewer and interviewee) are merged, and then normalized, we can have best results.

Wednesday, January 13, 2010

RAID failure on mp3server

The Melbourne uplink had a couple of RAID failures this week. My first suspect is of course the power supply for the external RAID enclosure...

duplicate entries in search results

A listener pointed out the duplicate entries which were being thrown up in the search results, which we knew about, but had not yet fixed. The initial entries to the files table had white-space before the filename, this was making them "distinct" from the newer entries of the same files without the whitespace. Trying to find them using this technique,
select c1.fileid, c2.fileid, c1.filename
from `radiosai_file_master` c1, `radiosai_file_master` c2
where c1.fileid < filename =" c2.filename
did not work, since the filenames were actually not exactly the same: this was throwing up filenames which had .mp3 and .MP3 extensions. Then tried with a wildcard before the filename, found it matched. Then, making queries of the form
 SELECT *  FROM `radiosai_file_master` WHERE
`fileName` LIKE CONVERT(_utf8 '__SPECIAL%' USING latin1) COLLATE latin1_swedish_ci
(note the two underscores - meaning two characters) found that there are two white-space chars before the filename. CR and LF is my guess. Couldn't find the way to properly search with an SQL Like statement for "Like 'CR+LF+%', since
 SELECT *  FROM `radiosai_file_master` WHERE
`fileName` LIKE CONVERT(_utf8 '__%' USING latin1) COLLATE latin1_swedish_ci
returned
SELECT *  FROM `radiosai_file_master` WHERE 1
(ha ha!). So, did individual searches for __BV%, __TALK% and so on and deleted those files. Hopefully all are covered now.

Friday, January 08, 2010

withdrawing from some activities

Have stopped day-to-day involvement with some of the sites given on the left-hand side. Slowly other people are taking up various responsibilities. All for the best. The college website sssu.edu.in has a new CMS-based site, and the alumni site saistudents.org has also been relaunched...

application framework on javascript

Interesting project on freshmeat - WAJAF
Demos seen on left-hand side links work, including drag and drop, animation etc.

mounting remote volume over ssh

Briefly thought about remote mounting, googling found this link, but did not implement for video encoding of remote files etc it since my fiber media convertor frequently breaks the connection.

email with attachments on the qtek mobile phone

I think the only way to send email with attachments is to use the built-in pop3 client on the WM5 mobile phone. There was some configuration issue, so I followed the posts at howard forums which linked to the wiki giving the POP info. Mainly,
Messaging -> Menu -> Tools -> Accounts tab -> tap hold on an account to delete.

reducing table size on mysql

As a follow-up to this post, This is what I did in October: after deleting, also did
OPTIMIZE TABLE `radiosai_stream_daily`
That reduced the disk usage from 52 MB for that table to 9 MB. So, Optimize table is what reduces disk usage.

blog becoming useless? Or not?

Now, site search using Google as well as the search bar on top left give no results for many searches, even for recent posts. For example, to find this post, I searched for Delete From Where but it did not find any matches. Gmail's internal search is finding matches, so maybe I will have to log in to gmail and search there! Bing and Yahoo also do not index this blog much, I think.

Edit: Googled, found this thread, and tried cache:hnsws.blogspot.com in google search. Showed last indexed in Dec 2nd week. That's not so bad. Then, found Delete From Sql site:hnsws.blogspot.com does return the relevant post. So, maybe the <pre> tag contents are not indexed?

Wednesday, December 09, 2009

restoring clipped audio

Searching for 'noise reduction tutorial' in Cool Edit Pro's help system, found a Howto for restoring clipped audio:

To restore clipped audio while retaining the amplitude

If you have clipped audio (sound that’s overly amplified to the point of distortion), Cool Edit Pro’s Clip Restoration effect can help clean it up. Here’s how to use it without changing the volume of the waveform.

1. In Edit View, use Edit > Convert Sample Type to convert the file to 32-bit audio.

2. Run Effects > Noise Reduction > Clip Restoration with “Input Attenuation” set to 0dB.

3. Run Effects > Amplitude >Hard Limiting with “Boost Input” set to 0dB, and “Limit Max Amplitude” set to -0.2dB to bring the restored clipped audio back into normal range.

4. Use Edit > Convert Sample Type to convert the waveform back to the original sampling frequency if desired.

Monday, December 07, 2009

joining multiple VOBs into a single DVD

As given in a previous post, this is fairly straight-forward when the resulting DVD can fit in a regular DVD5 disc. But when it's bigger, must use DVD Shrink. And DVD Shrink does not play nice with the ifo files created with ifoEdit. Had to
1. Create ifo files separately with ifoEdit for each PGC ripped into it's own folder making sure DVDDecrypter had the File Splitting set to 1 GB in settings. Still didn't work with Shrink.
2. Had to rip one of the parts with DVD Shrink itself, shrinking it in the process
3. In Re-author mode of DVDShrink, drag and drop required ifo files
4. Set Start/End Frames for each title, hit Backup.

Sunday, November 29, 2009

free iphone app for streaming audio - Fstream

From geardiary, Fstream is a free app to listen to streaming audio.

creating a DVD from miniDV tracks

Captured the intro and outro tracks in 3 languages from miniDV tape to DVD. Used NeroVision Express write directly to DVD feature to capture to a rewritable DVD+RW. Could capture multiple takes without having to erase earlier takes - I'm not sure if this is possible with DVD-R, but possibly yes. Then renamed the VOBs as VTS_01_01.VOB, VTS_01_02.VOB and so on and used IFOEdit to create IFO files for quick mastering.

Friday, October 16, 2009

Wednesday, October 14, 2009

new warning for right-clicking on zip file on shared drive

Right-clicking on zip files on shared drives now give the message “This page has an unspecified potential security risk. Would you like to continue?” Apparently this is a "feature" MS has added from IE7 onwards. That link, as well as this one and this one, gives workarounds if you do it a lot and are annoyed by the popup.

Monday, October 12, 2009

update to processing audio post

Wanted to add an update to the audio processing post. Found that the search box in the blogger bar at the top of this blog was not working too well. Google site search - the "search hnsws.blogspot.com" option at the top of the page - was working better. I'm not removing the blogger bar just yet, because some time ago the opposite was true, with site search not returning proper results.

Anyway, here is the update. To the info in the earlier post of 2006, this auto-trim-crop tip has to be added. Also, in Sound Forge version 7 (and above?) the normalization has been tweaked a bit, so that -12 dB is almost as loud as -10 dB in the earlier Sound Forge 4.x. So, in batch processing, the processing settings look like this:



One more point to be mentioned is that when processing audio sent for regional language broadcasts, I have to select the regions with similar levels based on visual inspection and normalize them separately - m on Sound Forge drops a marker at current cursor position, and double-click on a region selects it.



Filenames for these (other language broadcasts) are also in a pattern, this can be easily learnt by looking at the older files.

Thursday, October 08, 2009

AOL FBL and finding the relevant subscriber

AOL's Feed Back Loop redacts the aol email id, even redacting the X-Subscriber header. So, we've to dig through the mail server logs to find the subscriber. First we have to find the message id which the mail server reports -
Received: by krishna.radiosai.org (Postfix, from userid 33) id [11 char alphanumeric id]
and use that id for
cat /var/log/mail.log | grep [11 char alphanumeric id]
or
cat /var/log/mail.log.0 | grep [11 char alphanumeric id]

Friday, October 02, 2009

USB mics

C asked about USB mics, the Blue Snowball and the AKG Perception since he was on a budget. I asked him to be careful of hiss as some buyer's comments indicated, and also my bad experience with the M-Audio Mobile Pre. Pointed him to the Tascam US-144, which seems to be not only frame-accurate but also quite low noise and has low latency monitoring. Tested today with inputs trimmed for balanced line level signal output from the Yamaha AW4416, max noise level was a sample value of 3 == better than -80 dB. Of course, the digital SPDIF input is even better, with the max noise sample value being 0! For the time being, C has borrowed A's US-144.

Monday, September 21, 2009

outlook email on the QTEK 9100

Sending attachments from the QTEK 9100 wasn't possible till now, since I got an error configuring the Outlook email for gmail. Googling gave this page which linked to this wiki for Windows Mobile 5 devices. My earlier mistake was to not check the 'use separate settings' for sending mail. For deleting the earlier misconfigured POP3 account,
Messaging -> Menu -> Tools -> Accounts tab -> tap hold on an account to delete.

Saturday, September 19, 2009

quickly view page source

To quickly view page source of potentially infected web-pages, we can use
view-source:http://website.address.com
in the Firefox address bar.

Tuesday, September 15, 2009

cool edit pro limitations

Cool Edit pro on Sathya was supposed to route out each track to one of the outputs on the 8-out Darla card, and I was supposed to mix down using the Tascam TM-D4000 mixer. But CEP 1 was not up to the task - I thought it was due to the tracks being too long, 90 minutes each. Even restricting to just 4 tracks did not help. Thought Audition might be good - but it was not supported on Win98. CEP 2 was able to open the tracks, but while playing, gets MMSYSTEM errors if I put 4 long tracks. The fact that they are on a network drive adds to the mess. So, tried cutting up into 15 minute pieces. Even those pieces, even when copied to local drive, were too big for CEP2. So have currently suspended work on this. Will probably try mixing down in Studio using the Nuendo/Yamaha AW4416 combo, maybe in the summer or something.

latency

Investigating latency for S, checked first on the Mandir celeron and US-144.

Changing the setting on US-144 control panel from highest latency to lowest, the output latencies seen in Device Setup of Cubase were, from highest to normal to lowest, 64, 29, 5 ms respectively. The 64 ms makes the lag quite audible. The 5 ms setting makes the system unstable. Testing with same signal being applied to digital and analog inputs, can discern a faint lag in the analog, audible as a sort of reverb-like sound. Measured to be approx 57 samples or 1.3 ms by comparing recorded waveforms.

S had a latency of 24 ms. That was disturbing for him when listened on headphones. Changed to lowest latency on US-1641 control panel - that made it 10 ms, acceptable for him. Of course, if this makes his system unstable, he would have to compromise...

Saturday, September 05, 2009

re-authoring DVDs without menus with IFOEdit

IfoEdit has a create IFO button at the bottom. So, if you already have VOB files and just want to create a playable DVD with a single title on it, just name the files as VTS_01_1.VOB, VTS_01_2.VOB and so on, put them in a VIDEO_TS folder, and point IFOEdit at the folder. You can choose to create the output in the same folder itself for this operation, it just creates the IFO and BUP files. Faster and quicker than any other way. Of course, more advanced stuff like menus and so on may be easier with other tools. Will explore dvdauthor and its gui later. As of now, noting that it needs de-muxed files - m2v and ac3 etc. Demuxing seemingly quick with BatchDemux - ten minuts for around an hour of video.

Wednesday, August 26, 2009

Opera mini impresses

Browsed for nearly an hour with opera mini on the QTEK 9100 mobile with "Load Images" turned off in settings. Expected a GPRS bill of something like Rs. 20-30. But it came to only Rs. 1.80! That makes it 300 kB transferred. Quite efficient, since I was browsing wired.com. Opera did not disconnect the GPRS connect even as I was reading each page, and so kept the bill down. I believe the connection times out when using IE, so each reconnect charges 30p. Ease of page navigation was also good in Opera. Small user-friendly touches like auto-flowing the text to fit screen without disturbing the general page layout and so on.

Saturday, August 22, 2009

repair mysql database

Today, the Sai Inspires db showed an error,
Database error 145 while doing
query Table
'./the_name_of_our_db/si_usermessage' is marked as crashed and
should be repaired

Solution from PB:
mysql -u root -p
mysql> show databases;
mysql> use the_name_of_our_db;
mysql> show tables;
mysql> repair table si_usermessage;

directly writing a DVD in real-time

Found that Nerovision Express (my version is 3) has the option to directly write to DVD if a video source is connected. Useful for quick conversion to DVD from any video source including firewire. Pluses and Minuses:

+ Finishes the recording in real time.

- Once you press stop, you cannot write any more into that DVD.

- No fancy menus - a default menu of Nerovision Express.

- Preset to approx 90 minutes of recording, not more.

issue with starting vnc on saiwaves

The one-line script for starting the VNC service on localhost with the required port and bit-depth would not work when I logged in with putty, but was working when I ssh'ed in with Linux! Felt the issue was with the tunnels I had defined in putty. Starting the session without the tunnels, the script works fine. If the tunnels are opened from another instance of putty also, the script "hangs". Some sort of port conflict, I guess.

Sunday, August 16, 2009

leftover files from Windows update

When I found a folder feb890il9089876 or something like that in L:, thought I had been hit by a virus. But found inside the folder an i386 and an AMD64 folder, and looking at the inf file MSXPSDRV.INF and googling, found that this was a leftover from dotNET framework 3.5 update. Was able to delete with no issues since I have only one login on this machine. Or maybe it was because this was an ext2 drive and not NTFS or FAT32.

Friday, August 14, 2009

internet banking from mobile

The browsers on the QTEK 9100 mobile phone are not upto doing internet banking: Tried to pay a bill from onlinesbi.com using both IE and Opera mini, but both failed at some point during the confirmation of the transaction. Some javascript issue I believe. Bandwidth usage - if images are turned off, seeing a couple of emails on gmail or going through to the login or some other screens on the bank site use less than 50 kB, so charged at 30 paise if using Airtel's GPRS network.

Wednesday, August 12, 2009

printing on thermal printer with Linux

Apparently thermal printers, like dot-matrix printers, also use certain escape codes and the rest of the text is treated like "Generic Text". This experts exchange page says at the very bottom, it may be better to have the code directly in the app. And this MSDN forum post links to a pdf with escape codes. PB used the OpenBravo forum for help.

From PB's private blog,

Using EPSON TM-T88IV parallel port on ubuntu 9.04
In openbravo configuration set the printer as epson - File - /dev/lp0
To make the printer accessible by a normal user set the permissions:
sudo chmod a+rw /dev/lp0
Note: These settings are lost on reboot.
To set these permissions on boot, I added the following line in /etc/rc.local (in Ubuntu 9.04) before the exit command
# For parallel port printers add:
chmod a+rw /dev/lp0
# For USB printers add:
chmod a+rw /dev/usblp0

airflow not enough with one AHU

Today, KR tried closing a damper on one of the AHUs and using only one AHU with one compressor. Air flow seems to be not enough - the projectors in the dome ports not getting cool air, feet cool but head hot. Control panel is cool enough.

Edit: AHU is air handling unit - the big blowers for our centralized air-conditioning system.

Monday, August 10, 2009

checking for malware without getting infected

Can view pages' source by entering
view-source:http://google.com
in address bar of firefox. Nifty for a quick check for malicious code. Noscript etc are also there for javascript, of course, but I think that would not flag malicious iframes.

Monday, August 03, 2009

telescope

J brought a telescope for trouble-shooting, not able to focus. A reflector. The first problem he diagnosed himself, that was an alignment issue with the main mirror. Looking into the tube while he aligned the mirror using the screws at the back fixed that. The other problem was that he was attaching the eyepiece to a "balfour" tube and then to the eyepiece screw mount. Attached the eyepiece directly (it fit better, too) and the focus issue was solved too. Non-motorized, 72mm main mirror aperture, total magnification of around 400x, I think.

Sunday, August 02, 2009

Acer Aspire One netbook

M left his Acer Aspire One netbook with me to give a graduate student. The most striking thing about it is how light and compact it is - can really carry around like a book. 1 GB RAM and 350 GB hard disk, 1.5 gig Atom processor, so it's faster than the Celeron I use in Mandir! Keyboard is a little cramped for touch typing, as all the reviews say. Can get used to it, but shifting back and forth between regular keyboards and the netbook would be difficult.

Thursday, July 30, 2009

fring

Cool Edit Pro and Skype stopped working on the desktop - perhaps it was after installing DRM Removal from Giveaway of the day. Using SoundForge instead of CEP, and fring on the QTEK mobile. At first, fring seemed to have issues with sound. Sometimes it needs checking with the "fring test call" - the mic doesn't work. A bit tinny, but reasonably OK except for a nearly 1 second lag. Mainly quick and convenient, till the laptop comes back.

Edit: Confirmed that the DRM Removal was the reason for the CEP errors. Removed DRM Removal, CEP started working again. But Skype still has errors on startup.

Thursday, July 23, 2009

power consumption on a Thursday

kWhr readings:

904 905
9.45 am 3435 15610.6
12.10 pm 3446 15685.5

trying Cisco's Linksys "iPhone" CIT200

Tested out this skype-phone - needs skype running on the computer on which the base-station is connected by USB. Voice quality just as good as any cordless (DECT) phone, has an option for speakerphone and hands-free also - 2.5 mm handsfree socket. The minus point is that it needs the PC to be on with skype running. But it's half the price of standalone wifi phones.

Sunday, July 12, 2009

bridge mode on Netgear wireless router WGR614

One of my former colleagues had an issue with his Airtel broadband, wireless and his laptop - every time the power failed, he had to connect his laptop to the DSL modem directly, "repair" the connection, then connect the wireless router and so on. Airtel tech support asked him to reinstall network interface drivers on his laptop. That seemed to work - the wired network now worked without the need for "repair". Then he wanted to add the wireless router into the mix, and it appeared that disabling DHCP was the way to go. So he assigned ip addresses in the same sub-net to the DSL router's LAN interface, the Netgear's LAN interface and to the laptop's wireless interface. He was able to ping the wireless router, but not the DSL modem. Then he changed the port on which the DSL router was connected to the wireless router - initially it was connected to the "uplink" port, now he connected it to one of the "normal" 4 LAN ports on the Netgear. Now everything works. It seems this is the way to do "bridge-mode" (as against NATing) on the Netgear WGR614 - googling brought up this page which links to the Netgear KB article.

recording on windows mobile

Recording calls with the QTEK 9100 was quite simple - the recording utility works quite well if the mobile is not in hands-free mode. Speakerphone on or off, it records both sides of the conversation quite well. If recorded using the notes function, it ends up in pwi format. To convert that to wav, this page has the run-down:
  1. Open the pwi file in Word
  2. Right-click on the audio object speaker icon
  3. Open the pwi file in Word
  4. Choose Sound Recorder Document Object -> Edit -> Edit menu -> Copy
  5. Open another instance of Sound Recorder, choose Paste Insert and Save As.

miscellaneous vnc problems

I had miscellaneous vnc problems with the server running Suse. Unable to use smb4k to mount windows shares and rdesktop not opening using the VNC connection. Error mesg was
rdesktop server-ip
Autoselected keyboard map en-us
X Error of failed request: BadMatch (invalid parameter attributes)
Major opcode of failed request: 1 (X_CreateWindow)

Thought it might have something to do with the window manager - twm and not KDE. According to this page, I could change it by editing ~/.vnc/xstartup to
#!/bin/sh
/usr/bin/startkde
But that did not help. Then thought it might be the colour depth. Changed the colour depth to 16 as
vncserver -geometry 800x600 -depth 16 :68
That did the trick.

Next, vncserver was getting into a loop or something when I try to run it from a putty session, but not when I run it from a terminal in Linux! This turned out to be some sort of vnc allergy to ssh tunnels - when I used putty without any tunnels, vncserver created desktops without complaints.

Then P solved the issue with smb4k:
In settings -> configure Smb4k -> super user
checked the boxes which say "Use super user privileges to mount and unmount shares", and also for 'force unmounting', gave the su pw when asked. Now it mounts.

Friday, July 10, 2009

using sed

The Cygwin install on the server running colinux doesn't have vi, so sed is useful on occasion. This useful page has the basics. String replace has the syntax
's/{old value}/{new value}/'
like
$ echo The tiger cubs will meet | sed 's/tiger/wolf/'
The wolf cubs will meet
which of course you can pipe to a new file.

The article mentions that sed can change any printable character with another printable character, but use tr instead for unprintable characters. It also discusses append and insert.

Tally caveats

For TALLY users - if your installation license misbehaves, this info might help.

The following is an extract from a long post by one of my colleagues. The full version has lots of humour, I have just extracted the "lessons".

At one of our units, the Tally installation had a few little problems since the day we installed.... It might be useful to someone who faces a similar issue or someone can tell us what we might have done better.

First, the lessons: (for those who want to move on) :
1. Keep your system date and time current before activating Tally.
2. Register at the Tally site.
3. After you activate, there is such a thing called 'Update', which you should do within 45 days. Can do offline, but nobody will tell you.
4. Don't expect good English from Tally Customer Service.

Tuesday, June 02, 2009

phone as bluetooth modem

Finally a lucid article in smartphonemag.com which also points to an article in smartphonethoughts.com for PC configuration gave the crucial info - the number to be entered in the dial-up networking is *99# - once this is done, everything works. Apparently this is a code which tells the mobile phone to connect to GPRS connection which has already been set up. There are other similar codes found on googling - *99***1# for example, and another is *99*1#. Maybe this means the first GPRS setting in memory or something like that. Anyway, this provides a way to dial up with the USB connection also without using the USBModem_Dialer.exe - use the *99# as the number and the USB modem as the device. But here, two caveats:
  1. The Modem Link software has to be running on the mobile before the USB is connected.
  2. The APN has to be entered, since Modem Link doesn't seem to remember it.
APN entering has to be a bit of voodoo, as explained at the pdagold article - it has to be entered into the modem properties. In my case, the path is different from the pdagold article - in Control Panel -> System -> Hardware tab -> Device Manager -> Modem properties -> Advanced tab -> Extra initialization commands. Here, entered AT+CGDCONT=1,"IP","airtelgprs.com" where airtelgprs.com is my APN. Then, the normal windows dialler works.

Sunday, May 31, 2009

using the phone as a modem

Followed the excellent article at pdagold to connect to use the phone as a modem. Basically it requires that I start the Modem Link software on the phone, "Activate" on the phone, and use the provided dialler with the appropriate APN. Bluetooth modem is proving to be more difficult, will try it later.

Speed tests - 48 kbps using McAfee's speed test, and also by manually counting the number of bytes.


As you can see, the testing involved around 2 MB of data transfer, lasting around a minute more for a total of around 7 minutes, and this cost approx Rs. 12.

Thursday, May 28, 2009

DNS requests not resolving

We faced a strange problem on fs3 of DNS requests not resolving - nslookup would complain that even the default dns server could not be contacted and would time out after 2 seconds.
nslookup
DNS request timed out.
timeout was 2 seconds.
*** Can't find server name for address x.y.z.p: Timed out
Default Server: UnKnown
Googling gave many hits on configuring the dns service properly, and advice to run
ipconfig /registerdns
All these didn't work - finally the issue turned out to be a firewall problem after all: TCP/IP filtering was turned on, and ALL UDP packets were being blocked. TCP/IP Properties -> Advanced -> Options tab, TCP-IP filtering Properties, Changed radio-buttons to Permit All for UDP Ports and Protocols. That solved the problem.

SPF restored

No wonder the SPF was being shown as bad by the tools in my previous post - whoever shifted our domain to the new dns servers had also forgotten the spf records in addition to many cnames. Restored it today.

Wednesday, May 27, 2009

Signing emails with DKIM

Yahoo once again started rejecting mails from our mail server. I wanted to title this post "Yahoo mail admins need to grow up" but then thought better of it. After filling in their bulk sender form for the third time, decided to enter their Complaint Feedback Loop programme. Had to implement DKIM first, so headed over to howtoforge after googling. Test mechanisms were in the centos setup page and the DNS setup required a request to our ISP. Then signed up for the complaint feedback loop, and the next day got 3 'complaints' - these 3 guys marked our mail as spam to cause yahoo to block 3000 of our subscribers.

In case the howtoforge articles vanish, here's the gist:
sudo apt-get install dkim-filter
sudo mkdir /var/dkim-filter
cd /var/dkim-filter
sudo openssl genrsa -out private.key 1024
sudo openssl rsa -in private.key -out public.key -pubout -outform PEM
sudo vim /etc/dkim-filter.conf
Here, un-comment the following, with the appropriate domain name. The selector can be anything, only remember to set the same selector name in dns. Relevant dkim-filter.conf settings:
# Log to syslog
Syslog yes
# Required to use local socket with MTAs that access the socket as a non-
# privileged user (e.g. Postfix)
#UMask 002


# Sign for example.com with key in /etc/mail/dkim.key using
# selector '2007' (e.g. 2007._domainkey.example.com)
Domain DOMAIN.TLD
KeyFile /var/dkim-filter/private.key
Selector mail

# Common settings. See dkim-filter.conf(5) for more information.
AutoRestart no
Background yes
Canonicalization simple
DNSTimeout 5
Mode sv
SignatureAlgorithm rsa-sha256
SubDomains no
UseSSPDeny no
X-Header no
Actually setting the X-header to yes is useful for initial debugging - then, checking the headers shows you right away if the milter is working. (Milter = Mail API Filter, from sendmail-speak). Then
sudo /etc/init.d/dkim-filter start
sudo vi /etc/postfix/main.cf
to add the following lines to the end,
milter_default_action = accept
milter_protocol = 2
smtpd_milters = inet:localhost:8891
non_smtpd_milters = inet:localhost:8891
And then finally restart with
sudo /etc/init.d/postfix restart
The DNS record to be set is of the form
mail._domainkey.DOMAIN.TLD. IN TXT "k=rsa; t=y; p=MIGfKh1FC.....bfQIDAQAB"
where mail is the selector, DOMAIN.TLD should be your domain name and the p=is the key from /var/dkim-filter/public.key

Once the dns propagates, you can check by sending email to yahoo or gmail - gmail shows as "signed by radiosai.org" when you click show details. domainkeys.sourceforge.net lists some test tools - some of them are a bit flaky. I got dkim=pass from crynwr.com but sa-test@sendmail.net reported my SPF as bad - I thought it was working.

Wednesday, May 13, 2009

add Google contacts to windows mobile without using Outlook

Googling got this link which pointed to this great solution.

1. Install PIM Backup
2. Change the extension of the Outlook formatted .csv file to .csc
3. Zip the file and change the extension of the .zip file to .pib, copy the pib file to the mobile.
4. Run the PIM backup app on the windows mobile, and choose the Restore option, browsing to the .pib file above. It gives the option to allow duplicates or update existing contacts and so on.



Here actually the third option is what I selected - add contacts and update old etc. BTW the screenshot was taken with MyMobileR using which you can control your mobile from your PC.

Saturday, May 09, 2009

more with the QTEK mobile

Posting this with the QTEK mobile with wifi at home. Wifi at work working as of now only in "Open" mode and not WEP or WPA. But probably will have some workaround. Home wifi needed freebase to make the SSID broadcast - it couldn't connect with SSID hidden. Saw some google results about WM6 having that feature, but this one is WM5 and can't. Skype for WM was disappointing - 10 MB download, and the sound was stuttering on wifi. Fring looks much more promising, and feature packed too. Skyfire looks really good, and streams youtube videos without buffering over our 256 k connection.

Wednesday, May 06, 2009

QTEK 9100 mobile

Set up the smartphone to use wifi at home, but not yet working at PSN with the Airport - probably the hidden SSID is causing the problem for Windows Mobile 5. Infrared works fine with the Toshiba PDA, but transfers to the laptop @ S3 were not going through. Bluetooth also the same. Set up with mobireader total commander etc. Will set up skype as and when the wifi is operational.

GPRS setup on Airtel was simple enough, but had to call customer care.

Start -> Settings -> Connections tab -> Connections -> Advanced tab -> Select Networks
Here, Programs that connect to the internet should connect using 'My ISP name'

Start -> Settings -> Connections tab -> Connections -> Tasks tab
under 'My ISP name', manage existing connections -> Modem should be Cellular line (GPRS) and the apn name or access point name should be airtelgprs.com, username and password to be left blank.

Charges are currently 30 paise for 50 kB.

Thursday, April 16, 2009

vbscript error handling

Added error handling to asp file which adds content disposition attachment headers to files on stream.radiosai.org - used ideas from this msdn blog post and this devguru article to write something like:
Err.Clear
On Error Resume next
'This statement makes the program resume the next statement
'instead of throwing an error
'***************
set f=fs.GetFile(strFilePath)
strFileSize=f.Size

numerror=Err.number
if numerror <> 0 Then
Response.Write ErrorMesg
Response.Flush
else
....snip snip ....
'and at the end of the script
On Error GoTo 0
'This means On Error, report it - the syntax is crazy.

Wednesday, April 08, 2009

schedule update flushing

The schedule update was consistently timing out every time the csv update was done. Checked with Plesk DBWebadmin (phpmyadmin) and found records from 2008 onwards. Blundering about the interface, found a "Search" - tried 2008, it gave
Search results for "2008" (at least one of the words):

336232 match(es) inside table radiosai_stream_daily Browse Delete
Blundering, because I chose delete, and it did
SQL-query: 
DELETE FROM `radiosai`.`radiosai_stream_daily` WHERE `streamId` LIKE '%2008%'
OR `fileId` LIKE '%2008%' OR `groupId` LIKE '%2008%'
OR `gmtDatetime` LIKE '%2008%' OR `newflag` LIKE '%2008%'
At least now I know what to give as the proper SQL statement - something like
DELETE FROM `radiosai`.`radiosai_stream_daily` WHERE `gmtDatetime` LIKE '%2009-01%'

Sunday, March 29, 2009

command prompt here

Adding a command prompt to the context menu got by right-clicking a folder in Windows Explorer: followed this link and added a Command Prompt item in Tools -> Folder Options -> Files Tab -> File Folder -> Advanced -> New with cmd.exe as the executable. The link actually mentions the item Folder, I did it for File Folder. Maybe due to this, CKRename became the default action for folders on double-clicking, just like this query on Experts-Exchange. Downloaded and ran the vbs file as mentioned there, restored to "Open" default action. The code in the vbs file is:
'folder_open.vbs - Fixes problem where Search opens on a double click
'© Doug Knox - 03/13/2002
'Downloaded from www.dougknox.com

Set WshShell = WScript.CreateObject("WScript.Shell")

p1 = "HKEY_CLASSES_ROOT\Directory\shell\"
p2 = "none"

WshShell.RegWrite p1, p2

p1 = "HKEY_CLASSES_ROOT\Drive\shell\"
WshShell.RegWrite p1, p2

X = WshShell.Run("REGSVR32 /I /S SHELL32.DLL",4,True)
Set WshShell = Nothing

MyBox = MsgBox("Folders will now Open when double clicked", 4096, "Finished!")

Friday, March 27, 2009

phplist return-path

Found that phplist was having some bounces of unknown user. These were bounces which were going to the local sender email id - found that Sai Spiritual phplist emails had return-path showing this as the return-path (which was not being resolved by google apps, of course). Googled and found
http://docs.phplist.com/PhpListConfigBounces
Un-commented in the /config/config.php
$message_envelope = "noreply@sssbpt.org";
and made the return-path noreply@sssbpt.org

Also noted that on the new Ubuntu install, vi filename uses the old-style vi - for the more user-friendly version where you can use the arrow keys, have to use vim filename !

mail merge with MS Office 2003

Mail merge turns out to be easy to do, even easier than this document says:
http://www.wellesley.edu/Computing/Office03/MailMerge03/letexistdata.html

Basically, you just have to go to Tools -> Letters and Mailings -> Mail Merge
and follow the wizard clicking Next, Next. Just choose data source and insert suitable field at suitable place in the Word document.

The screenshots detail the procedure.



Sunday, March 22, 2009

Indic scripts on Microsoft Word and Google Docs

Creating documents with Indic scripts using online tools like Blogger or Quillpad and opening in MS Word 2003 doesn't work: the Indic letters are shown as rectangles. Quillpad's FAQ notes that
"You will have to install 'Supplemental language support' in Windows XP.
Start -> Control Panel -> Regional & Language Options -> Languages -> Install files for complex script and right-to-left languages (including Thai)
(You would need your Operating System installation disc for this)
Incidentally(accidentally!!) Microsoft WordPad (write.exe) (and notepad to some extent) doesn't have any problem rendering indian language content, so if you don't have complex formatting in your documents you can use the minimalistic wordpad."
Even after the Complex script install, the problem persists in Word, but the WordPad workaround is useful for printing. The print command in Google docs nowadays creates a pdf, and this pdf has Telugu script mangled. Workaround till now was to take a screenshot (!) but now I can save as .doc, open in WordPad, correct font size issues and then print.

Just now found another workaround - use the File -> Print menu item in the browser menu instead of the Google docs menu - this one works fine!

Miranda IM sounds

Found that sounds were enabled in Miranda IM but I wasn't hearing any alerts. Reason was that there was no wav file assigned to each event by default. Set some events and went on with life.

Monday, March 16, 2009

hide apache version info

As suggested here, edited /etc/apache2/apache2.conf and changed ServerTokens from Full to Prod and then did /etc/init.d/apache2 restart

Monday, March 09, 2009

15.6 kHz hum when TV is connected

When the TV monitor is kept above the PA system mixer, a 15.6 kHz hum is induced in the system.


I use a notch filter to get rid of it in recordings.

Sunday, February 22, 2009

loading Ubuntu Linux on Clamshell iBook - part 5

Probably I should conclude this series here.

The power issue is a niggling one, but couldn't solve it, so am living with a max battery life of 1.5 hours or so. Standby lifetime is around a week, so it's pretty nice to leave it on standby and start it up for a quick browse or something. Found that the Fn-backspace (or should I say Fn-delete?) combo works as the delete key (since the mac keyboard doesn't have a "backspace" and instead has a "delete" which works like a backspace).

Future work may be an upgrade to swfdec-mozilla 0.8 (currently installed is 0.6)which is supposed to let flash movies play OK. Currently using greasemonkey workaround to download from youtube and play with vlc on desktop.

checking which version is installed on ubuntu

To find which version of a package is installed on ubuntu: Googling led to this post on howtogeek and this one in ubuntuforums so I can do either dpkg -s packagename or aptitude show packagename Aptitude is much slower. Another option, apt-show-versions turns out to be not installed currently. aptitude search pattern searches for all packages which match pattern.

Wednesday, February 18, 2009

Miranda IM

Finally settled on Miranda IM for Yahoo and MSN. Trillian used to need re-login for MSN after a couple of hibernate/resumes. Pidgin had crashes with MSN.


Had to install two more plugins for Miranda, keepstatus and startupstatus, for my requirement of remaining logged in automatically whenever I use the machine. Miranda also used to give an error message on resume, saying that Yahoo login was refused. Figured that this was because the ethernet interface was not yet up when it retried. Tweaked the settings Options -> Status -> StartupStatus -> Set after 60000 ms and in Options -> Status -> KeepStatus -> Check Connection (ticked) and Delay between retries at 60 sec.


Also blocked spam using Options -> Events-> Ignore settings. A bit non-intuitive, "The following events are being ignored" - Unknown contacts, everything is enabled (i.e. everything is ignored).


Saturday, February 14, 2009

mp3 and wav as WinAmp Media File

While sorting files based on type in Windows explorer, both mp3 and wav files were being listed as WinAmp Media file. To prevent this, googled and adopted a similar strategy as given in the WinAmp forums:
  1. Remove the mp3 and wav files associations from WinAmp preferences (Ctrl-P in WinAmp to reach preferences, File Types on left pane).
  2. In Windows Explorer, Tools -> Folder Options -> File Types tab, Click New, Enter mp3 extension. Here, if it is already associated with some other app, it will complain. Then you need to remove the association from the other app...
  3. Click Advanced button at the bottom, delete all the Actions, create two new actions - Action Play with Application used to perform field set as
    "C:\Program Files\Winamp\winamp.exe" "%1"
    and Action Enqueue in WinAmp with the field set as
    "C:\Program Files\Winamp\Winamp.exe" /ADD "%1"
  4. Note of course that you need to put in the correct path to winamp.exe on your system, and that if the %1 is not within quotes, you will come to grief with any long filenames!

Thursday, February 12, 2009

multilingual show notices in Google docs

Created multilingual show notices in Google docs by copy-pasting from blogger which has Indic transliteration support. Telugu had a problem - on generating print preview or while printing, the generated pdf had wrongly placed diacritic marks. Downloading a doc doesn't help, since the Telugu fonts are not loaded. Maybe I'll try later after installing the Indic fonts and keyboard support.

Wednesday, February 11, 2009

krishna on dell t100 setup continues

  1. automysqlbackup.sh script from krishna used to backup and restore mysql databases. It gives two ways to restore:
    # mysql --user=username --pass=password --host=dbserver database < /path/file.sql 
    # or
    # mysql --user=username --pass=password --host=dbserver -e "source /path/file.sql" database
    The latter method fails with ERROR 1064 (42000) at line 1: Luckily the former method works, tho' while importing SI db, it gave an error ERROR 1298 (HY000) at line 2410: Unknown or incorrect time zone: 'NULL' the db seems to be working. After the database import, phplist said database needs to be upgraded. As given in the docs, went to Main Page -> System Functions -> upgrade and it took less than a second.
  2. Next, the php files were being served as MIME type application/x-trash. Not sure what exactly was wrong, but now it is working after
    (a) DirectoryIndex index.php index.html added to /etc/apache2/apache2.conf
    (b) index.html.old moved to another directory.
    (c) Subscription page configured properly.
  3. Commandline php had to be installed, with apt-get install php5-cli as given at ubuntuforums.org
  4. getmail downloaded from http://pyropus.ca/software/getmail/ and extracted from tar.gz.
  5. apachemails added to webserver's group with
    useradd -G {group-name} username
    as given here. Listed users and groups seeing /etc/group,
    ps -eo euser,ruser,suser,fuser,f,comm,label
    showed that apache was being run as www-data so did
    chown apachemails:www-data apachebounces
  6. Later found (after many attempts, testing pop with and without notls option) that this version of phplist (2.10.9) would not read arbitrary files as mbox files (like the earlier 2.10.5 on the older krishna could!) .
    Cannot open mailbox file Can't open mailbox /var/www/bounces/apachebounces: no such mailbox
    So had to change mbox location to /var/mail/username for a valid username.
  7. Before that, sendemaillib edited as given in PB's earlier post. Since I copied the scripts from the old krishna, did not have any user problems with running the scripts.
  8. Running processbounces gave
    Error: IMAP is not included in your PHP installation, cannot continue 
    Installed imap module with apt-get install php5-imap
  9. Now to lock up the system using the techniques given here, but passwd -l causes the message
    Your account has expired; please contact your system administrator
    probably due to this bug. So, did the editing of /etc/ftpusers and /etc/ssh/sshd_config instead.

Sunday, February 08, 2009

more on vm and finally not virtualizing after all

I'm filling in this post with stuff on the virtual machine just for completeness - we've decided to go ahead without virtualization for krishna since the only thing to be running on it would have been a single vm with phplist on it.
  1. Added gpm to use mouse if necessary on the local terminal.
  2. removed many daemons like bluetooth from /etc/rc3.d
  3. Was giving error on boot of vm, "Use of uninitialized value $uni in pattern match (m//) at /usr/bin/ckbcomp 3109." etc. Apparently this was due to a missing dependency and adding perl solves the problem. sudo apt-get install perl solved the issue.
  4. Cannot redir from lower ports as unprivileged user. So, 5080 redirected to port 80 and so on.
  5. Way to port-forward only a limited number of ports for passive ftp is discussed in experts-exchange. The syntax for vsftpd is given here, for example, specifying pasv_max_port and pasv_min_port
  6. Changed /etc/hostname and /etc/hosts so that each vm has it's own name.
  7. While starting the vms using kvm, use -daemonize -nographic and not & to put into background. Otherwise becomes a zombie or something.
  8. ftp server running on the vm was accessible from outside with firefox, not with filezilla or IE. Reason was probably that FF was rolling over to active mode.
  9. Packet sniffed with wireshark, it gave all out-going packets tcp checksum errors due to checksum offload, so disabled checking in wireshark. Edit -> Preferences -> TCP
  10. PASV ip address and port are specified as given here: http://en.wikipedia.org/wiki/File_Transfer_Protocol
    "PORT 192,168,0,1,192,2". first 4 numbers are ip address, The port fields should be interpreted as p1×256 + p2 = port192x256+2
  11. Since qemu's natting was mangling the pasv packets, changing the ip to 10.0.2.2 - probably we have to go with ftp on raw server. This is in spite of setting the pasv_address in vsftpd.conf. After the packets leave the vm, the change is made by the NAT.
  12. Since ftp is on bare metal, phplist being on a single vm is more convenient, so why have a vm at all - hence, going with a bare metal install. Install itself took only 10 minutes!

Friday, February 06, 2009

removing X from server

Too late, found that sudo aptitude remove ubuntu-desktop would have removed all the stuff in one line. Anyway, went through the meta-package references given here and did the aptitude remove for many of them. Some daemons like bluetooth still left, manually hunting them down... sudo apt-get remove xserver-xorg to remove X.

building virtualized servers on a dell T100

This is yet another looong post. Starting from scratch, had to do everything from changing bios settings to adding and removing virtual machines. Maybe I'll skip over the many days of trial and error and will just summarize the actual steps to be taken here.

  1. The lights 1 2 3 4 on the front panel are only for diagnostics according to the Dell manual and do not indicate hard disks or anything like that.
  2. Warning message "Alert! cover was previously removed" and not booting till F1 or F2 is pressed. Solution as given here - Bios setup -> System Security -> Chassis Intrusion -> Enabled Silent.
  3. Much later, while installing KVM, found virtualization needs to be enabled in Bios as given here. So, as mentioned in the dell manual, went into Bios setup -> CPU Information -> Virtualization -> Enable. Also enabled the CPU info reporting to OS, which also was disabled by default.
  4. PB wanted to do JeOS as given here, the installation on the base machine was Ubuntu server 8.10 Intrepid amd64 build.
  5. Installed gui with sudo apt-get install ubuntu-desktop since I wanted to try out virt-manager. The installation of ubuntu-desktop stalled at 99% after downloading files for more than an hour, probably due to some network glitch. Did Ctrl-C, again ran the same command, this time it downloaded a few kB more and then finished the install with no more problems. The install itself took around 6 minutes. 4 GB RAM, amd64 kernel. Did apt-get remove gdm so that it would not boot into X.
  6. While installing virtual machines from CD with virt-manager as given here, wizard would not proceed until CD was unmounted in host OS. Then, the CD could be selected.
  7. Had to install qemu, without which install of virtual machines was failing. Listed in Ubuntu docs here, here and here.
    sudo apt-get install kvm libvirt-bin ubuntu-vm-builder qemu bridge-utils
  8. Trying to install from the same Ubuntu server CD using virt-manager was hanging at the point where it installs and configures grub. Tried the install in expert mode and installed Lilo instead, this works. For expert mode, hit F4 when booting from CD after choosing English (language of install).
  9. Virtual machines created with network options with virt-manager were not able to access the network. Only later did I know that all these machines needed was to be set to DHCP. QEMU has a strange and wonderful user mode virtual network which has a firewall / gateway / dhcp server at 10.0.2.2, DNS at 10.0.2.3. Since each instance of Qemu is a separate process, if set to DHCP, each Qemu virtual machine will get the address 10.0.2.15 ! And they are automatically NATed.
  10. Now tried the commandline vmbuilder, since the virt-manager based installs were taking so much time and user interaction.Did the install according to the docs, some find the install to take just a minute! But in my case, found it took two hours. Reason was that it was downloading from ubuntu.com instead of using CD.
  11. The --iso option for vmbuilder does not work, so the install was going to ubuntu.com for each package.
  12. Also found that lines separated by \ for a multiline command works if typed in, but takes only the first line if copy-pasted!! So, my first vmbuilder image was a basic default one. Luckily, the default made a run.sh filein the same directory, which gave the syntax to run the vm as
    kvm -m 128 -drive file=disk0.qcow2 -net nic -net user $@
    The trailing $@ is equivalent to $1 $2 $3..., which means that you can add any more commandline arguments to the script (run.sh) and they will be passed on to the kvm program. Man kvm says it takes the same arguments as kvm-qemu - and man kvm-qemu redirects to the qemu man page.
  13. Again another trial - the commandline virt-install (since the vmbuilder was using so much network and time). . It complained of "Unsupported virtualization type" - apparently had to put --hvm in the arguments. Bridge mode causes it to crash. Reason seems to be that the bridging, tap interface etc should be manually set up beforehand. So, removed the bridge option --network bridge:eth1. Then, it has qemu-system-x86 running at 100% cpu for a long time - indefinitely? - with no disk activity, as seen with top. So abandoned this attempt. The command used was
    virt-install --name testX3 --ram 512 --file testX3 file-size 6 --nographics --hvm --cdrom ubuntu-8.10-server-amd64.iso
  14. The images created with vmbuilder could be copied and run using the kvm command. So, concentrating on those. Found the wonderful world of Qemu virtual networking! Redir seems to be the way to go, given at wikibooks. btm.geek says be sure to use bridging, but let's see how it goes with the user mode qemu. Now calling the virtual machines with
    kvm -m 128 -hda disk0.qcow2 -hdb disk1.qcow2 -redir tcp:5555::22
    for example exposes the ssh port 22 of the guest on the host machine's interfaces (localhost and eth0).
    ssh -p 5555 user@localhost connects to the guest vm's sshd. We've to see if this method continues to work under load.

Tuesday, February 03, 2009

printing over network with command prompt

Printing from the Acer laptop over the network using the method given at computing.net forum by typing
net use lpt2: \\machine2\shared_printer_name /persistent:yes
type filename.bin > lpt2