Monday, December 26, 2011

Android Share Icon Vector

Since I couldn't find a Share Icon for android, I decided to create one myself. So here is the Share Icon Vector created using Adobe Illustrator. Find the download link at the bottom of this post.



Downlaod from here :
http://www.mediafire.com/?cx7d84vx321geor

Monday, December 12, 2011

"Share via" feature of the pnrstatusapp for Android

My PNR Status is Confirmed , RAC 1,GNWL #PNRStatusApp

Monday, December 05, 2011

Android apps usage tips

After using the gingerbread flavor of the android is on my phone for the past few months, I am embarrassed to admit that I as able to figure out a few things only recently.
firstly most applications have a facility to respond to the "search" hard button on the phone. for example the built-in "messaging " application. I thought it would be a cool idea to search among your message inbox for finding something . and Viola, it is already there. many other applications have also implemented the search functionality from the search key.
secondly the "menu " button for the built-in apps was also overlooked. it took me 4 months to figure out I could enable "delivery reports " for the messages that I send. lot of customizations were tucked away in the menu.
so my tip - check out the search and menu buttons on your android device for each apparently.

Update: Composed on Blogger App for Android.

Sunday, October 30, 2011

Ra·One : A Review


All right, so I went to watch Ra·One yesterday, I had been looking forward to watching this film for a long time now.


Introduction






In case you have no clue what Ra·One is, let me give you a heads up. It is a science fiction superhero film starring Shahrukh Khan (SRK), released in Hindi, Tamil, Telugu and German.


In the first scene, a new technological innovation is described which serves as the base of the film. Then you are introduced to Shekhar Subramaniam (SRK). He is a brilliant Game Developer who acts more like Mr. Bean. The character being a South Indian, his references to the Madrasi Cliché, won't seem to get well received in the South. Shekhar lives in London, with his wife and son, who is embarrassed of sorts because of his dad trying to be cool, but messes things up.


Characters


So Shekhar develops a game with the ultimate super villain - Ra-One. It stands for 'Random Access - Version 1.0'. Now can some one tell me how that makes any sense? RaOne is the ultimate super villain that Shekar comes up to please his son who thinks villains are cool and heroes are boring. The hero in the game is G-One which means life and he is modeled after SRK, albeit a cooler looking version. Reminds you of 'Rab ne bana di Jodi'. 



Not intending to give out any spoilers in case you haven't seen the film, I will say what I thought of the game film.


I have already given my verdict on the characters played by SRK. They are the usual play of duality that you see as in Fight Club or The Mask. G-One acts more like a human, which I like compared to other films with robots where you can hear metallic sounds when the walk and move in a constrained way.


Kareena as Sonia, wife of Shekhar does exactly what she has been asked to do, although you do wonder if she is limited by her character in the script. Armaan Verma as Pratheek, Shekhar's son also does well, his role being similar to the young John Connor from Terminator 2.


But Arjun Rampal as Ra-One beats everyone else by a mile. He comes in, does his job, no nonsense, no compromise. A great villainous performance.


Special Effects


Firstly it has the best Visual Effects and CGI I have seen in an Indian film, Yes Enthiran was good, but in my opinion, Ra-One has done a little better in this department. The detail in which the effects have come out is pretty good. The fight scenes have come out really well and the action scenes are on par with International movies. 


That said the 3D didn't add anything special, it's just another thing of producers jumping on the 3D bandwagon, plus the film was shot in 2D and converted to 3D. Apart from the title scenes and a few others it seemed as the 3D was non existent.



Final Word


The first half didn't seem like a lag, but the second half I wondered was too long. I am not sure how well received Shekhar's character will be, may be its a trick to make you like G-One more. And the plot of the movie is such that I don't think it will cater to the wide audience, but to younger viewers. My grand parents and all question me for spending time on my computer playing games.


But anyways, see the film for the Visual Effects, editing and the Sound effects. So I would suggest that you watch it for the Special Effects and not for the story. You can try it once. It's kind of fun to go with your friends, young nephews, nieces or children.


A 3.5 out of 5. 

Sunday, October 09, 2011

Information on Audio Steganography

    In the following post, I am giving some guidelines and info about the Final Year Project that I did for my Engineering course. The information provided here is solely intended for educational purposes.

    What is Steaganography? Simply put, it is the art and science of writing hidden messages in such a way that no one, apart from the sender and intended recipient, suspects the existence of the message. Its like passing secret information right under people's noses, but no one has a clue that it contains secret information. This is unlike an encrypted file / information where people can suspect that there is a secret information.

    Anyway, there is a long history and types of Steganography that you can get from following this wikipedia link. What I am going to concentrate is hiding an encrypted file inside an audio file (*.wav). We have chosen wave format because of its simplicity and its simple structure and is based on the RIFF File Format. Why not use MP3, you may have a question? We need the Source audio file to be large enough to accomodate the encrypted contents of the file that we are going to hide and I haven't researched it, any licensing issues for using MP3 format.

    First of all, get a hold of the WAV file format specifications. The WAVE file header is 44 bytes long. You should not modify any data here, because if you do, the file will become unusable (i.e; cannot be played back in a media player software). 

   Since we decided to use the Java Programming Language to implement this, you would like to look into ByteArrayOutputStream, and byte Arrays to have access to each lower level bit of the files that you would be dealing with. So read the source file into a byte array, skip the header part, (44 bytes). Using an LSB replacement algorithm, we will add our data to this file.

LSB Audio Steganography Method


     What happens is we will replace the 2 least significant bits of each byte of the source file with bits from our secret message. You also need a method to know how much data you have to read back. You can use a marker text at the end, or keep the length of the message at the beginning which is what we did. The reason for changing the LSB is that, since they are the Least Significant (duh!), a listener cannot detect that much loss in information about the file.

    As stated in the FAQ,  I cannot post the source code for my project. I guess I have explained what goes on in a short post. You can figure out how to do all these with some simple Google Searches. I would suggest using the Eclipse IDE for development, splitting the project into a number of classes in nice packages :) and add any other features that you can think of. The complex part is encoding the message, and that will be just a few lines of code. 

    We had a user management module with a database for managing users, a log writer module for writing out a log, some extra UI libraries to make the app look unlike a java project, encrypt the message using any Encryption algorithm etc...

Sunday, August 14, 2011

PNRStatus App 1.6

The next update to PNRStatusApp is here. Some minor changes in layout, UI elements and the addition of StatusHistory to keep track of all the statuses of a ticket that you have checked.

Redesigned Main State

Status Histories


You can access the download link at the end of this page.

Changelog :
PNR Status App 1.6 [Aug 2011]
- [CHANGED] PNRInfoRenderer Layout and UI.
- [ADDED] Button to copy the PnrNumber to the clipboard.
- [CHANGED] PNRInfo List not updated when a note is added / updated.
- [CHANGED] PNRNo is not editable in the PNRInfoRenderer.
- [ADDED] Each time a PNR Status is checked, it is stored in StatusHistory.
- [ADDED] Last successful Status is displayed on startup.
- [ADDED] StatusHistoryWindow lists all the StatusHistory of a PNRNumber.
- [FIXED] Bug while reading back StatusHistory items.
- [ADDED] Added option to clear StatusHistories.
- [ADDED] Info Message if More Info clicked without checking the PNRStatus.
- [ADDED] Style for PNRRow based on the last check.
- [FIXED] Bug of Booking status text also getting updated when the note is updated.
- [CHANGED] Removed the StatusBar.
- [FIXED] Bug in PNRNumber equals method.
- [FIXED] Bug in check for duplicate PNRNumber.
- [ADDED] Alert is shown if trying to add a PNRNumber that already exists.


Download from here (http://www.mediafire.com/?3miq5dfjzrwjuuq)

Saturday, August 13, 2011

FAQ regarding AudioSteganography App

This post is in relation to two of my previous posts here and here.

Q1. Why is the source file removed from MediaFie?
Ans : It seems that some part of the source code contains copyrighted code belonging to Summit Entertainment LLC. So they have requested MediaFire to remove the zip file. They have not informed what file or specific code is copyrighted.

Q2. Can you post a version removing the said copyrighted code?
Ans : As I it hasnt been specified as to which part of the code is copyrighted, I am unable to edit the sourcecode to give another version.

Q3. What Algorithm is used for Encryption process?
Ans : In this project, DES (Data Encryption Standard) has been used to encrypt the plain text that is to be stored in the audio file. We can use anyother algorithm supported by "javax.crypto.Cipher" class.

Q4. What language is used to implement this?
Ans : Java 1.5. I used Java because it was part of our curriculum to do this project in Java. You can use C# or C, C++ to implement the same. The advantage of Java being the Crypto package already available in the language as well as the advantages of the Java Programming language.

Q5. Can you detail out the implementation of this project?
Ans : I worked on this project for my Engg Project back in 2007 - 08. Check this post for more info on the implementation of the project. http://midhunhk.blogspot.com/2011/10/audiosteganography-info.html

Any other queries, please provide in the comments section.

Friday, July 08, 2011

Triton Player 1.3 : Themes are here

Another major update for Triton Player is here. Version 1.3.5.0 is out with the main attraction being the ability of themes. Currently we have the default Orange theme and a new theme called Minty Green.

Triton Player with Theme Minty Green
Along with a string of minor enhancements and bug fixes, we have changed the settings panel for themes and language under a new tab called other. There is an improvement in start up speed also.
Change Theme
The change log for this release is :
 Triton Player 1.3 [June 2011]
 - [CHANGED] SettingsManager redefined.
 - [CHANGED] Events Reordered.
 - [ADDED] Remember last played track no and position when the player is closed.
 - [ADDED] Update InfoView when a Track is added or removed.
 - [CHANGED] Playlist Track no updated when a track is removed.
 - [OPTIMIZED] Saving settings on Application Exit.
 - [CHANGED] Shuffling doesn't restart from the beginning with a new track.
 - [DROPPED] Reordering the playlist acting weierd, reorderTrack() function still available
  inside PlaylistManager.
 - [CHANGED] Styling of application.
 - [CHANGED] Properly positioned Close and Minimize buttons.
 - [ADDED] Themes!
 - [ADDED] ThemeManager to manage Themes.
 - [CHANGED] Settings read in preinitialize and runtime style loaded 
  before application is loaded.
 - [CHANGED] UI Layout.
 - [ADDED] States and transitions for UI.
 - [OPTIMIZED] Code for Compact Mode toggle.
 - [CHANGED] UI on PlaylistView.
 - [OPTIMIZED] Improved Startup Speed.
 - [ISSUE] Minor flicker on startup if in Compact mode.
 - [CHANGED] Language tab from SettingsPanel renamed to Other.
 - [ADDED] Option to chnage the theme from Settings Panel.
 - [REMOVED] Playlist Reorder codes.
 
 Triton Player 1.3 [July 2011]
 - [CHANGED] SelectionColor of playlist item updated when the theme is changed.
 - [CHANGED] Localization text for themes.
 - [CHANGED] SettingsPanel layout.
 - [CHANGED] Current theme and locale are pre-selected in SettingsPanel.
 - [CHANGED] Tracks added in Shuffled Mode are added to the original collection at the end.
 - [FIXED] Fixed minor null exceptions introduced with new features.
 - [CHANGED] Minimize To Tray is false by default.
 - [CHANGED] Fix for total time calculation in PlaylistView.

Download Triton Player 1.3 here (http://www.mediafire.com/?a7b3m6o7c2kah5e) [914kb]

Saturday, May 21, 2011

Cryptx 6

Cryptx 6 is out of beta stage and you can download the new version right now. A few bug fixes and explorer integration have been done, so you can directly double click on an encrypted file to open CryptX window. The changes between he beta and this are :

Cryptx 6.0.7 [Apr 2011]
- Explorer integration for Rap File Type.
- BugFix for FileInfoVo.
- ProcessTime in Log file processed properly.

Cryptx 6.0.8 [Apr 2011]
- BugFix for invalid Decrypted file naming.
- After decryption, the decrypted file's info are updated in the UI.
- Using AeLogger 0.4.9.
- BugFix for UI not reflecting updated Destination Location.

Please download the latest version of CryptX 6 :from here (http://www.mediafire.com/?png0da1boqw46of)

Saturday, May 14, 2011

Triton Player 1.2

    Triton Player 1.2 is available for download now. This version is a recommended update and has massive performance improvements. 

Triton Player 1.2

    The major visible change is the much awaited addition of a SeekBar for the player. Some under the hood changes have also taken place which includes Storing the Settings in binary format from the previously used XML format for improved speed and performance. The core of the application, the ‘sndbarlib’ has been updated to version 1.1 with some performance optimizations. So what are you waiting for? Checkout the latest version now itself!

The full changelog for this release follows :

Triton Player 1.2 [May 2011]
 - [REMOVED] Logging platform as it seemed surplus.
 - [ADDED]     Save settings and default playlist on ALT + F4.
 - [CHANGED] Localization String in en_US updated.
 - [FIXED]      Null Pointer Exception fixed in PlaylistManager.
 - [ADDED]     Seekbar for player.
 - [CHANGED] Application settings stored as a binary file to speed up
                        startup time and increase performance.
 - [ADDED]     SeekBar functionality on Paused state.
 - [CHANGED] sndbarlib updated to 1.0.
  - [OPTIMIZED]    Several Code Optimizations.
 - [ISSUES]    Clicking on Seekbar position might not always doSeek properly.
 - [FIXED]      Mute icon was not toggling properly.
 - [OPTIMIZED]    Updating of TrackInfo on UI.
 - [CHANGED] sndbarlib updated to 1.1, with optimizations.
 - [OPTIMIZED]    Removed many unnecessary function calls.


Download Triton Player 1.2 here : (http://www.mediafire.com/?r1z8iea8hq217cy)

Saturday, April 23, 2011

CryptX 6 Beta!

    CryptX 6 is finally here. Albeit in Beta version. After almost scrapping the project due to various technical challenges, we have found our way through those and able to make it perform beyond initial expectations.

    Like its predecessor, this version does encryption using the AES Algorithm. Some more work will be done on the application before it is liberated from the Beta Label. But most planned features have been implemented. We are expecting user reviews and suggestions to better understand the product. Checkout some screen shots of the application revealed for the first time.

Initial Screen
File Selected
Encrypting!
Encryption complete!
And the download link for CryptX 6 Beta : http://www.mediafire.com/?xib9jdmmi50k8d2 

Tuesday, April 12, 2011

Cryptx 6


Finally, the most awaited Adobe AIR based development project is about to get released. The latest version of CryptX will be 6 superceding the HTA and C++ based 5.1 Beta. Yes, the last version never broke from the Beta label. It was made as a Proof Of Concept that such an encryption decryption utility could be made, after encryption algorithm security problems from CryptX 4.

CryptX 6 like its predecessor will be using 128 bit AES encryption. Check out some of the features of CryptX 6.

  • 128-bit AES Encryption.
  • Password used for encryption is not stored in the encrypted file.
  • Completely written using Action Script 3 and uses as3crypto library.
  • Intuitive UI.
  • Desktop integration with Encrypted file.
  • Using Green Threads for multitasking support in AS3.
  • Improved performance from previous versions.
  • Logging Platform support.

Please note that the CryptX 6 does not support file formats from previous versions.

More info to follow

Sunday, March 06, 2011

PNRStatus App Features & Changelog

Here is the list of features and the changelog of PNRStatus App.

What all are the features of PNRStatusAPp 1.5?

  • Save PNRNumbers persistently.
  • Add a note against a PNRNumber Entry.
  • Check the current status.
  • Display more info regarding the entry.
  • Reservation date calculator.
  • Advanced reservation date reminder.
  • Export and Import reminders.

And the complete changelog follows.

PNR Status App 1.0 [Dec 2010]
- Initial Release Version

PNR Status App 1.2 [Jan 2011]
- [FIXED] Bugs Fixes.
- [ADDED] Note component.

PNR Status App 1.3 [Feb 2011]
- [CHANGED] Theme.
- [CHANGED] Refined layout.
- [ADDED] Reservation Date Calculator.
- [ADDED] Reminders for Dates.

PNR Status App 1.4 [Feb 2011]
- [CHANGED] Using the Mate Flex Framework
- [CHANGED] Most of the code rewrote to follow MVC Pattern.
- [CHANGED] Removal of Redundant code.
- [ADDED] Advanced Reservation Reminder facility.

PNR Status App 1.5 [Mar 2011]
- [ADDED] Copy More Info Screen as bitmap to the clipboard.
- [ADDED] Error Handler for WebRequest fault.
- [CHANGED] Using TabNavigator for RemindersScreen.
- [ADDED] Licence.txt with licence texts.
- [ADDED] Import and Export Reminders!
- [ADDED] User is propmted before deleting a reminder

Download the 1.5 Version from here (http://www.mediafire.com/?h7nbea6wz3g79)

PNTStatusAPP 1.5

Most people who travel by train in India might have to come across the problem of checking ticket PNR status. Up until now you have to log in to irctc site to check the current status or type the pnrnumber to some other service to keep tabs on that. This is made easier using the PNRStatusApp, developed in Adobe AIR and using the PNRStatus service from ixigo.com. This non commercial dsktop application can store PNR numbers, check them in real time (provided you have an internet connection) and give you details status.


Wait theres more, the Reservation Reminders section helps you to plan ahead and make note of the day on which the advanced reservation begins (90 days).



So dont wait up and check out this app if you think its useful to you.

Download the 1.5 Version from here (http://www.mediafire.com/?h7nbea6wz3g79)

Sunday, February 20, 2011

Changes in TritonPlayer

We will have a look at the list of changes in Triton Player 1.1

Localization

Did you know that Triton Player supports German Language in addition to the default English? More localization strings have been added in this version. There was a bug that initially the default language was coming as null. It has been fixed.

Changes based on User Review

Some changes have been implemented from user responses. This includes the playing from the beginning if you switch to shuffle mode being changed to start playing only if any song is already playing. "Hide to tray" when minimized can now be controlled using the settings screen. This is an issue reported in Win 7 versions. By default "Hide to tray" is disabled.

UI Enhancements

On the UI end, we start displaying the File Loaded progress bar as soon as the user has selected a folder rather than once the first file was completed loading. This change should make the users seem the application is more responsive. Some minor UI tweaks also.

Performance Related

Some changes are in the internal workings for performance and following standards etc. This includes using an Item Renderer to display the playlist instead of manually creating.

Attempted Features

Reordering the playlist was partially implemented, but the track numbers were not updating properly. So that feature is still not implemented.

Whats in store

A feature that should be available on most normal players would be a "seek bar". If you noticed that the seek bar on TritonPlayer is not working , well we are working on it. Also lookout for themes in the future releases.

Saturday, February 19, 2011

Triton Player 1.1

An update to TritonPlayer has come. We are now in Version 1.1. Some features, enhancements and performance improvements have been added. Check out the changelog below.


Triton Player 1.1.x.x [Feb 2011]

- [ADDED] More localization strings in File / Directory Select.
- [FIXED] Setting of locale at startup.
- [CHANGED] AudioPlayer instance encapsulated in the PlaylistManager.
- [CHANGED] Using ItemRenderer for Playlist for improved performance.
- [CHANGED] Shuffling starts playing from the first track only if the player was already playing.
- [CHANGED] Default playlist stores unshuffled playlist even if it is shuffled when closing.
- [CHANGED] File Loading Progress bar is displayed as soon as the user has selected a folder
instead of when the first file was loaded.
- [ADDED] Added Application Logging Module.
- [CHANGED] Minor UI Enhancements.

Download From here (http://www.mediafire.com/?qdo21otdsr1id25)


Project Status

The following lists the status of my recent projects. A few of them are active as in features being added on and stuff, couple of them have been scrapped and a few ideas are in the pipeline :)

Adobe AIR Based Projects

Active Projects :

TritonPlayer (Mp3 player project) (v 1.1)
PNRStatusApp (PNR Status & Reservation Reminder) (v 1.4)
TimerApp (Basic Timer Application) (v 1.0)

Planned Projects

CryptX 6 (Encryption / Decryption Utility)
TheBrowser (HTML browser based in AIR, uses WebKit for rendering)

Scrapped Projects

ScreenGarbber (Take screen shot of desktop) (reused code into PNRStatusApp)
ReservationDateCalculator (Calculate date for advanced reservation) (implemented functionality in PNRStatusApp)
FlvPlayer (FlvPlayer) (Better apps already available)

Other Projects

Simple FFMPEG UI (UI for FFMPEG media converter) (v 0.6)


Monday, January 17, 2011

Triton Player 1.0

We have Triton Player 1.0!

In case you are wondering what this is all about, it is a small mp3 player project that I developed in my spare time while working on Adobe AIR. The player features playlists, visualizations, shuffle mode, compact mode to no name a few. A feature to update the current playing track on Twitter was in plans, but run into some technical difficulties.

Below is a screen shot of the Compact Mode.


When minimized the player will hide from the task bar and an icon will be displayed in the system tray. Some of the options can be invoked from the system tray menu. When you mouse over the icon, it will show the current track name. Triton Player features 3 types of Visualizations that are based on the sound input from the currently playing file.

Here is a look at the maximized mode.


You can save the playlist as an mpl file which is nothing but a fancy XML file. The player will remember the last browsed directory and the playlist that was used when you start it again. We are working on adding a couple of features at the moment. Explore and find out more.

Check out the version 1.0 from here(Hosted at MediaFire).

P.S. You will need atleast Adobe Air 1.0 Runtime to install and use this player.