New Open Source Text to Speech system for Tamil

Prof. Vasu Renganathan, Univ Pennsylvania, Philadelphia, USA, has released his Text to Speech for Tamil language as Open source.

Get the source at :

See in action:

It is written in php.

There are many open source TTS systems available as espeak, Festival, CMU Sphinx  etc.

But they work fine for English only. A new system is needed for Tamil.

Myself and my brother Arulalan are trying to build a TTS system using python.

He wrote script to convert tamil text to IPA.

The next step is to record audio for each symbol and play with python.

In the meantime, the TTS by Vasu gives a great enlightenment on text and sound processing,a s it has all the sound files and code to process text, map to sound files and stitch as a word etc.

We will port it to python soon.

This is not a very perfect TTS.
Many things have to be improved.

  • There is little gap between letters.
  • Need few more gap between sentences.
  • Need more voices.

We can add all these features as we have the source now.

Please check the code and explore a how TTS works.

Reply here if you are interested in improving Tamil TTS System.


Thanks for prof.vasu for open sourcing his nice works.

How to fix wireless problem in Lenovo z50 in ubuntu 14.04?

In my  Lenovo Z50 laptop, wireless is not working in Ubuntu 14.04.

My laptop has RealTek RTL8723BE Wireless adapter.

The wireless is not even displayed in the network settings.

Installed Ubuntu 14.04.1 as it has the latest kernel updates for wireless drivers.

The wireless works now, but it has very frequent disconnection.

Then, found the link

which says Linux Kernel 3.16 fixes all the issues.

cd /tmp/




sudo dpkg -i linux-headers-3.16.0-*.deb linux-image-3.16.0-*.deb

Ran the above commands and upgraded Linux kernel to 3.16 version.

Now, the wireless is working perfectly.

Thanks for the Linux Kernel team and team for the great works.

INFITT 2014 – International Conference for Tamil Internet


INFITT is an international organization which connects, Tamil Scholars, Government, IT Professionals and Public.

Every year it conducts “Tamil Internet Conference”. One time in India and Next time in any other country. This year “Tamil Internet Conference 2014” has been conducted in Pondicherry on Sep 19,20,21 2014.


This was my first participation to a INFITT conference.

100 papers were presented from the scholars from 9 countries.

It was a great place to meet most of the Scholars in Tamil.

Around 50 scholars came from Malaysia for this conference.

So happy to meet my Malaysian friends after a year.

I presented a paper on “Open-Tamil” a python library for processing Tamil Text.

Here is the paper

Here is the presentation

Sibi from fsftn gave a talk on “Introduction to OCR using Tesseract”

My friends BalaVignesh and Arthi BalaVignesh are researching on OCR using Tesseract.

They are building a web application for training Tesseract for Tamil Text. They gave a talk on their research.

There were many talks in various topics like Fonts conversion, Text to speech, mobile application development, Spell Checker and more.

ElanTamil from Malaysia explained their work on Tamil SpellChecker using hunspell and Grammar Checker using LanguageTool.

Most of the talks were pure academic and there were not much demonstration on practical implementations.

There are tons of research happening on Tamil Computing, Linguistic areas. But the sad part is no one is ready to share their works for public.

Many Universities run funded research on various topics, but they are not ready to share their works.

OCR, Text to Speech, Annotated Corpus, Speech to Text, Spell Checker, Grammar Checker are the highly required softwares. People are asking for them for more than 10 years.

There are many academicians did funded research by universities on these areas and created some working products with the help of their research students. After they retired they package their products and selling them.

As they see that not many people are interested in buying their products, they expect government to buy their software and distribute to all public for free.

I had a discussion with the participants asking for releasing their software as Free/Open Source Software.

But, most of them are not ready for this. They had huge fears on this. If they open source their works, they fear that some big company will take their works, sell and see huge gains.

They really had huge research and created few working software. If I have to create similar software, I have to invest more then 10 years of research, which is impossible.

If they opened their research result and their working software, many people can jump in the Tamil Linguistic area and improve their software.

There are many open source developers are ready to contribute for Tamil. But as we don’t know from where to start, we stand still on the starting point itself.

The existing software sellers, ex professors are not ready to share their works.

They keep on telling that “I have spent 20 years of research on this. Why I have to give it for free? Why I have to open source it? I have to take back the huge revenue for my works.”

They all forget that they got paid for their research works by universities, i.e by public. It is their duty to release their works for public.

I agree that if a company invests huge money and creates some software for tamil, it can sell it and expect the ROI. Even it can sell the closed source software. If the software is really useful and working perfectly, people will buy it for sure.

But these Ex Professors build their products based on their universities fund. The universities should own these software and release to public as Free/Open Source Software. But, these universities are not aware of this truth and these professors sell their works.

This is the great loss for Tamil Computing and Tamil People.

English and other languages are having great software as most of the linguistic research by their universities are released as open source.

Thats why English has so many software available.

I dont know how many decades it may take for Universities to release their tamil research works as open source.

Till then, let us leave these ex professors worrying and wondering on why their software are not, selling.

I dont know what will happen to their hard work and software, after their lifetime.

It is a happy news that few young open source enthusiasts started working on Tamil Software.

There is open-tamil python library for processing tamil text. It can convert 25 types of Tamil Encoding to Unicode. It has tamil to IPA conversion, which is a base for Text to Speech conversion.

Tesseract is being used for Tamil OCR development. Libreoffice got spellchecker and grammar checker.

I hope we can get more contributors for these projects. If they grow well, Tamil will get great open source software.

Apart from these thoughts,

Good stuff about this conference:

  • Met many good contributors for Tamil Computing.
  • Many papers gave new ideas for new open source tamil software development.
  • Co-ordination was good for the talks.
  • Food was nice.
  • The Dinner Treat given by CM was awesome.

Things to improve:

  • Make the Conference free for the audience. So that interested people around the city can participant. The current models enables only paid members to talk and hear the talks.
  • When there are three tracks, place the notice boards and banners to show, the track, talk, and time details.
  • Add the Table of Contents in the Conference book.
  • Release the conference book in creative commons license.
  • Do something more than yearly conference.
  • To increase membership, explain the benefits of members in the website.

I received Rs 5000 Cash Prize for the works on Tamil computing like and by Prof.C.R.Selvakumar, Waterloo University, Canada.

Thanks sir for the recognition. This reminds me that I have to do more and continue these projects. These projects are being driven by great volunteers around the globe. I dedicate all the praise and prize to all the volunteers.


The next conference will be in Singapore.

Hope we can create more open source software for tamil to talk in next conference.

How to make the brightness buttons work in Lenovo Z50 laptop?

I have a Lenovo Z50 laptop with ubuntu 14.04 installed.

The brightness control buttons are not working.

Searched net for this and found solution.

Here is the fix:

Open a terminal and create the following configuration file, if it does not exist:

sudo touch /usr/share/X11/xorg.conf.d/20-intel.conf

Now we need to edit this file. You can use any editor be it a terminal one or graphical.

sudo gedit /usr/share/X11/xorg.conf.d/20-intel.conf

Add the following lines to this file:

Section "Device"
        Identifier  "card0"
        Driver      "intel"
        Option      "Backlight"  "intel_backlight"
        BusID       "PCI:0:2:0"


Save it. Log out and log in back.

It is working fine now.

Thanks for the itsfoss team and stackoeverflow contributors.

Chennai events calendar – from google calendar to wordpress post via facebook event

Chennai is the hub for the events.

There are many sites like , to create and announce events.

But, the events stay there unnoticed, unless we visit the sites.

An interesting meeting may be happening tomorrow. We will be missing it without getting any info about that.

I started a shared Google calendar to solve this problem.
People can subscribe this calendar and get notifications via sms and email.

Visit the calendar here.

Public iCal :

Add the above link in your Calendar Application.

To Add this in your Google Calendar:

To get Events notifications via Email and SMS :

How to add events :

Email to tshrinivasan AT for Volunteering to add the events in this Calender.

You can volunteer to add the events in chennai. Currently we limit the scope of the events to computer technology, tamil, literatute, photography, nature, trekking etc.

Now, added two more features.

1. Facebook event creation from google calendar.

Using the site, connected google calendar, facebook page for events and wordpress posting the events.

Like this page :
To know the events.

2. WordPress blogposts for the events.

Site :

You can subscribe to email notifications for the events too.

Thanks for the Zapier team for providing the awesome services to connect different websites and portals.

Book Review : i want 2 do project. tell me wat 2 do.


The book “I want 2 do project. tell me wat 2 do.” is an excellent guide for any student to get into the Free/Open Source Software world.

The students have tons of queries when asked to do a project, themselves. Though they know the basics of few programming languages, they usually don’t do any programs themselves. They just copy/paste from others and found it is very difficult, when they have to do some programming themselves.

This book encourages the students to self learn new things and make their hands dirty with programming.
This is not a book to teach any language. All the programming books stop with teaching programming.
But this books begins from where they stop.

Students need to learn many stuff after programming. The communication with others and self discipline are the key strengths they should have. This books explains them well.

Shakthi Kannan, explains the following concepts

  • Mailing list guidelines
  • Programming language guidelines
  • Contacting mentors
  • Logging learning activities
  • The problems on continuous learning and how to overcome them
  • how to create and do presentations
  • how to concentrate on the basics
  • Various phases of Computer Science Skills
  • The Tools available for project development and contribution
  • Keep on growing the projects
    and more.

I recommend this book for all the computer science students. Learning does not stops with college. If you are working and interested in contributing to Free/Open Software, this book is for you. Start with this book, follow all the tips and guidelines. You will become a rockstar contributor for your favourite Free/Open Source Software.

Teachers are the big inspirations for the students. I recommend this book for all the lecturers/professors to read and contribute for any Free/Open Source software, ask their students to contribute.

The quotes in each chapter are much impressive. They show the hard work behind finding them and placing in proper places. The friendly writing style makes the book, easy to read and follow.

You can buy the book at the following links.

Pothi : :
Flipkart :

Thanks Shakthi Kannan for the wonderful book.

How to get a computer science career?

How students can prepare themselves for a computer career?


I thank Mr. Ashok <> for translating the article in English.

The original Tamil version is available here.


How students can prepare themselves for a computer career?


Dear student aspiring for a computer career,

For those students who have completed a computer science or related course and in the process of a job search or will be starting one,



Shall we talk a little bit about your job search process?


Each year, about 2 lakh students complete their studies in Tamil Nadu, graduate and start looking for a job in the computer field. Of course, it is not possible for 2 lakh new jobs to be created every year. This is why everyone does not get a job immediately. Only about 10% of the people land a job with large enterprises such as InfoSys, TCS and CTS in the Campus Interview. SMEs (Small Medium Enterprises) provide the opportunities for the remaining 90%.

Shall we see what kind of problems arise in hiring freshers in this kind of Micro, Small and Medium companies?


1. Training

These SMEs cannot provide the place, trainers and 6-months time for training the freshers like the large enterprises. Even one or two weeks is difficult. Students who are prepared to pay as much as 1 lakh rupees for a 6-month course in large private computer training companies like NIIT, instead if you join smaller companies, you expect to be paid a salary for the same training.

To provide free training, office in central city location, air conditioning, computers, internet connection and uninterrupted power and on top of that to pay a salary, these companies are not charitable organizations. Let us say these students are provided free training for a few months, it takes another 6-months for them to become productive. By then a year goes by.

After the lapse of a year, you compare yourselves with friends working for large enterprises. You say, “He is paid Rs 20,000 per month and gets overseas opportunities. I must have the same pay and overseas opportunities.” and switch to another company. Your company that has accepted new projects from customers, will have to start looking for employees again. As many are doing this, companies are afraid to hire freshers.

If they hire employees with experience of one year or more, they need to train them for only a week or two. They will start being productive from the third week. Companies will also get their work done. Even if they quit in a year, there is no big loss for the company. For the salary paid for the year, they would have got matching output.

Instead, if they hire freshers they have to pay the salary and invest in training. And their output is very low. What solution would you suggest for this?

If tomorrow you were to start a company, you will be facing this same situation. How will you manage this?

I can hear you saying, “This is all fine. But only if we get a job we can gain experience. Without a job we don’t have any experience either.” That is also true.


2. Knowledge and skills

Knowledge, skills and experience need not be gained only by taking up a job. We can grow these ourselves, Right?

What do most students say? “Give me a job. Then, I will learn all that is required. After that, I will grow my skills.” True.

Let us say, you buy a car to travel out of town with your family often. You are looking for a good driver. I have come for an interview. I have attended driving classes. But I do not have any experience.

“I have completed training. I have a certificate. But, I do not have experience. Give me employment. Let me have your new car. Give me training for a few months. Once I have learnt it well, I will drive your family wherever you want.”

If I say this, will you hire me? But, this is what you say to the companies.

For learning how to drive a car, you need a car that costs lakhs of rupees. But for learning computer skills you can use the computer you already have.

In cricket, if someone is not scoring runs, even if it is Sachin, we get annoyed. We expect them to score continuously and hit fours and sixes frequently. However, you will not create any software using your computer, but will listen to music, watch films, play games and keep chatting with your friends on social media. How is this justified?


3. Interview


If I advertise saying that I want 100 freshers for my company, at least a 1000 people apply. Most of these follow the same template. “I know C, C++, Java, Oracle, HTML, CSS, Javascript, VB, DotNet, ASP, Photoshop, Windows and so on.” With freshers versed in all these skills we begin to have confidence that we can develop any software. Let us call some of them for an interview.



“Hello, sir!”

“What are your skills?”

“I have all the computer skills. C, C++, Java, DotNet, Oracle… and so on!”

“Oh, I am happy to hear that. What Project did you do?”

“About that sir! I created the software for the space vehicle that was launched last month. It combines Fuzzy Logic and Artificial Intelligence in Cloud Computing and will run on Android and iOS.”

“Very good! Can you develop a small software program to keep track of receipts and expenses in my small shop?”

“All by myself? That is difficult sir. I have to study more. Give me a job. Then I will study and then complete this work for you.”

“Why not? Did you not do that major project by yourself? You even explained that at length.”

“About that sir…hmm….hmm I didn’t do that project by myself.”

“Then, who did?”

“We bought it from a project center in T. Nagar for Rs. 10,000. However, I know all about that project. Give me a job. I will learn everything well and then complete your project.”

This is what 95 out of 100 people say. Only a very few do the project by themselves and gain the skill and experience of developing new software.

How can anybody employ someone who doesn’t even have such basic skills?

How will you go to a doctor who has completed a medical degree but says doesn’t know anything?

Isn’t computer studies the same?

In education, the lowest level of qualification is ITI. Candidates who have failed in 10th standard can join ITI. We can ask a student who has just completed 2 year welding course in ITI to make a grill gate for us. He will also willingly make one.

A computer student who has completed 12th standard and then studied computers extensively for 3 or 4 or even 6 years is not able to create even a small piece of software on their own.

Companies are not prepared to offer employment to such students who don’t know anything. Only about 10 percent of the students get jobs through Reference, Campus Interview, or Off Campus. The rest have to find a job only through their capability.


4. How to gain experience and skill ?


The job of a cricket player is to practice regularly and display their talent. Nobody says, “Include me in the Indian cricket team! Then I will learn the game and then I will play well and after that I will win cups for the country.”

To become more skilled in cricket, you have to take the bat / ball and practice. For computers, it is enough if you practice with the computer you already have. To learn software development all you need are a computer and internet connection.

If you do all of the steps below, you will learn automatically:


1. Learn beyond the syllabus.

Learn many skills such as GNU/Linux, PHP, Python, Ruby, MySQL.


2. Join Tech groups

Join Tech groups in your town. If there are no groups, start one. Meet frequently and learn new things.


3. Learn GNU/Linux

The whole world is eagerly taking on to GNU/Linux. Leave Windows and install any Linux distro such as Ubuntu, Debian or Fedora. When you use the Command Line, many things will become clearer to you.


4. Study the software source code

You can access the source code of all the software in GNU/Linux. Download them, open them and simply study them.


5. Develop software

Create a simple calculator. An address book. A tool for testing the Internet connection, an alarm, a backup software, web scraping software and other software for very small tasks. Each task will take only a day or two.


Then ask people around you and develop any software that they need. Shops will need many softwares such as Billing, Accounts, Attendance and so on. Develop them free of charge.


6. Learn version control

Version Control System is helpful to share the source code with others and share to do the work as a team. Learn Subversion (SVN) and GIT. Create an account on and add your source code there. Also, contribute to software created by others. Your Github profile will determine your growth more than your FaceBook profile.


7. Contribute to Open source

Contribute to your favorite Open Source project. Even if you contribute one line of code it is a big thing. In addition to coding, contribute to other things like documentation, graphics, helping in IRC, Forum or Mailing List, packaging, publicity or translation. Search for “How to contribute to Open Source Software?” Contribute to your favorite Open Source project in your favorite language.


8. Write a blog

Write about everything you worked on in your blog. Write everyday without fail. Your blog will become your best Visiting Card.


9. Add all these things to your Resume

Add to your Resume your blog address, your Github address, the list of Open Source software you are contributing to and all the skills you have learnt beyond your syllabus.


10. Don’t ask for a job. Ask for Project Work.

Don’t bug everyone you know to get you a job. Tell them that you will develop any software that they need. Do it as a Project Work.

After completing your education, if you merely keep searching for a job, an year will go by easily. By then the next batch will graduate and will become freshers. You will be in a very confused state being neither a fresher nor having any experience.

In this one year if you do about one project per month you would have completed about 10 to 12 projects. You can claim that as one year experience. You can rightfully claim that as one year freelancing work in your Resume.

Declare that you have one year experience and search for a job. Then see what kind of opportunities you get. Because you have actual experience, your interview will also be easier.

When you do many projects, you may be able to develop commercial software and earn from it. If you develop a good team, you may be able to start your own business.

If you work hard and also have the skills, the sky is the limit for your career.


My dear Sachins! Just as Sachin amassed 50’s and 100’s, develop software, contribute to Free/Open Source software and shine like the bright sun with your talent!


My very best wishes.

Also, see these links.


Give your feedback in the ‘Comments’ here..



T Shrinivasan

A talk on Free Software with Payilagam students

Today, I spoke to the students of "Payilagam", a CS Training center at Velacherry, Chennai.

I explained about Free Software, Open Source philosophies, History of GNU/Linux, Distributions, Job Market, Advantages of Python etc.

Demonstrated how to contribute to a project in

Asked to students to contribute to Free Software and write blog regularly.

Most of the students had fear that GNU/Linux is a big black screen with thousands of commands to remember. But, on showing the beautiful KDE Desktop and alternate applications like LibreOffice, GIMP, they wondered much.

Explored the following links

Indian Linux Users Group, Chennai
Free Software Foundation, TamilNadu –
Events in Chennai –

IRC Chat –
Freelance Portal –
Kaniyam – Tamil Magazine for Free Software –

Books for GNU/Linux in Tamil –
Mono – DotNet in open source –

Slides I showed are available at –

All the students agreed to install GNU/Linux and to explore it.

The session was very interactive and much interesting.

Thanks for the Director Manikandan and his Team.

They agreed to conduct sessions for public and Hackathon like events.

How to Change the user Interface of KDE in Tamil ?

I use kubuntu 14.04

My language is Tamil (ta)

Tamil translations packs are not available in the repo.

But, I can see them in the SVN repo here.

I checked out the po files application files in stable.

svn co svn://

Now, Where to place these files to see KDE in Tamil?

Asked this question in the KDE mailing list.

Got the reply as below.


you must "translate" PO files into (binary) MO files.
msgfmt utility (from gettext package) might be used to do that:

$ msgfmt -o file.po

Then, MO files should be put into

Additionally, you need
file. Without it, you won’t be able to pick up Tamil from list of

existing languages. Simplified file content is below:

[KCM Locale]
Name[ta]=Tamil in Tamil

On my system, localization files are owned by user root, group root, and
have 644 permissions.


Mirosław Zalewski <miniopl AT> in KDE mailing list.

To convert one po file to mo file.
$ msgfmt -o file.po

The messages folder has many subfolders for KDE applications.

shrinivasan@shrinivasan-laptop:~/ubuntu-contributions/kde-ta/messages$ ls
applications extragear-network kdeedu kdemultimedia kdepim-runtime kdeutils

calligra kdeaccessibility kdegames kdenetwork kde-runtime kdewebdev
entry.desktop kdeadmin kdegraphics kdepim kdesdk kde-workspace
extragear-kdevelop kdeartwork kdelibs kdepimlibs kdetoys qt

Go to each folder and convert all the po files to mo files using this small shell script.

for i in *; do msgfmt -o `basename $i .po`.mo $i; done

Now, find all mo files and copy them to /usr/share/locale/ta/LC_MESSAGES

find . -name "*.mo" -exec cp -i {} //usr/share/locale/ta/LC_MESSAGES/. \;

Then, goto "System Settings->Locale->Languages.
Select "Tamil" and add as "Prefered Language".

Make Tamil in the Top.

Thats all.

Now, logout and login.

Most of the KDE intereface will be in Tamil.
As we need to do more translations for KDE, we see many English words too.

Please contribute to Tamil Translations of KDE.

Explore these links to contribute to KDE Localization.

Need IPA sounds for Tamil

Do you remember the following symbols?

IPA in IPA.svg

You might seen them in your school english books and Dictionary.

See here to remember few more symbols.

These are the symbolic representation of the sounds of any language.

Using these symbols, anyone can read the strings and spell like the original sound of the word, even though he dont know the language.

This IPA symbols are available for all languages, as they represent only the various sounds.

I am thinking of an open source system for building Text to Speech System for Tamil, ( actually for any language)

Mr. Vinoth created a web application in PHP, which can convert a Tamil string to IPA.

Here it is –


My brother Arulalan convert this as a Python Library.

Now, we need all the sound files for the Tamil IPA symbols.

Where can we get the IPA symbols for Tamil ?

You can click on the symbol on wikipedia to know how a symbol sounds.


Hear the audio file. It is an full example.

But, we can not use these audio files for Text to IPA, as they have very long extended audio.

Now, we need the short and clear audio files all the tamil symbols, just like how we spell the words and letters on our daily speech.

As we have text to IPA convertor, once we have all the sound files with regular sounds, we can play them together to create almost nearly speech version of any word.

This is my assumption only. There may be issues. But hope we can fix them all.

If we have multiple voices, then our Text to speech engine can have multiple voices too.

I request you to record the IPA sounds for Tamil symbols and send to me.

My email : tshrinivasan AT gmail DOT com

If this plan works well, we can extend this to all the languages.

Share your thoughts on this.