Wednesday, July 13, 2011

Showing and Hiding Windows Form in System Tray in VB .net

Show and Hide Windows Form in System Tray

How to show and hide your form in windows system tray.

1. Add NotifyIcon class in your project (System.Windows.Forms.NotifyIcon) and drag it into form.




2. Change NotifyIcon properties.

BalloonTipIcon = Info
BalloonTipText = Running
Change Icon
Text = Running Your Program
Visible = True






3. Add code in Event Form1_Resize.

Private Sub Form1_Resize(ByVal sender As System.Object, ByVal e As System.EventArgs) _
Handles MyBase.Resize
' If minimize form that will show in system tray.
If System.Windows.Forms.FormWindowState.Minimized = WindowState Then
sysMonTray.ShowBalloonTip(5, "Running", "Running Your Program", ToolTipIcon.Info)
Me.Hide()
End If
End Sub


4. Add code in Event NotifyIcon_Click to hide and show form.

Private Sub sysMonTray_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) _
Handles sysMonTray.Click

If Me.Visible Then
Me.Hide()
Else
Me.Show()
Me.ShowInTaskbar = True
Me.WindowState = FormWindowState.Normal
Me.StartPosition = FormStartPosition.CenterScreen
End If

End Sub



With Regards,
Er.Animesh Nanda
Manusis Technologies Pvt.Ltd.
Bengaluru,
Karnataka,INDIA.

Thursday, July 7, 2011

Sphinx Commands For Beginners

#INDEXER

Configuring single index
indexer --config /full path/sphinx.conf myindex
Configuring all indices
indexer --config /full path/sphinx.conf --all
Rotating single index
indexer --rotate myindex
Rotating all indices
indexer --rotate --all
No output on rotation
indexer --rotate --all --quiet
Not to display progress detail
indexer --rotate --all --noprogress

#SEARCHD

Help
searchd --help
Configuring searchd
searchd --config /full path/sphinx.conf
Configuring port
searchd --port 9313

Status
searchd --status

Checking Status
searchd --config /full path/sphinx.conf --status
IO status
searchd --config /full path/sphinx.conf --iostats
CPU status
searchd --config /full path/sphinx.conf --cpustats

Setting PID file
searchd --config /full path/sphinx.conf --pidfile /home/myuser/sphinx.pid
Forcing to search specified index
searchd --index myindex
Stopping search process
searchd --config /full path/sphinx.conf --stop
Killing all search process
killall searchd


STEPS TO DO IF SPHINX SEARCH IS NOT WORKING

1. killall searchd
2. searchd --config /full path/sphinx.conf --status
3. searchd --pidfile --config /fullpath/sphinx.conf
4. searchd --config /full path/sphinx.conf --status
5. indexer --config /full path/sphinx.conf --all
6. indexer --rotate --all

COMMAND TO SEARCH
search -i myindex -e 'test'

Search Attributes
1. Match modes (--any / --phrase / --boolean / --ext / --ext2 / --filter attr v)
2. Set Limit (--limit count)
3. Set offset value (--offset count)
4. Sort by group (--group attr)
5. Sort by ASC/DESC (--sortby clause)
6. Sort by timestamp attribute (--rsort)




With Regards,
Er.Animesh Nanda
Software Developer,
Manusis Technology Pvt. Ltd.
Bengaluru,Karnataka,INDIA.

Tuesday, July 5, 2011

How to write Sphinx confugiration file ?

Four Steps to create a sphinx confugiration file

STEP - 1
Create a file named as sphinx.conf

STEP - 2
Declare a source as per following.

source src1
{
type = mysql
sql_host = host name
sql_user = user name
sql_pass = password
sql_db = database name
sql_port = 3306 # optional, default is 3306
sql_query = sql query for fetching data
sql_attr_uint = unique column eg id #can use more than one sql_attr_uint
sql_attr_timestamp = date_added
sql_query_info = sql query for viewing in command prompt
}

STEP - 3
Declare an index as per following.

index test1
{
source = src1
path = /var/lib/sphinxsearch/data/test1
docinfo = extern
charset_type = sbcs
enable_star = 1
min_prefix_len = 1
}


indexer
{
mem_limit = 32M
}


STEP - 4
Declare a searchd function as per following.

searchd
{
port = 9312
log = /var/log/sphinxsearch/searchd.log
query_log = /var/log/sphinxsearch/query.log
read_timeout = 5 #return null if no results found for 5 secs
max_children = 30
#maximum result to show in a dropdown or autocomplete
pid_file = /var/run/searchd.pid
max_matches = 1000 #maximum matches to get from database
seamless_rotate = 1
preopen_indexes = 0
unlink_old = 1
}



After each modification on sphinx.conf file, developer needs to rotate the index declared in the confugiration file.



With Regards,
Er.Animesh Nanda
Software Developer,
Manusis Technology Pvt. Ltd.
Bengaluru,Karnataka,INDIA.

Wednesday, June 29, 2011

Adding Twitter follow button to a web page

There are three ways you can add the Tweet Button to your webpage.
Using javascript

The easiest way to add the Tweet Button to your website is to use javascript. This method requires adding a line of javascript and an HTML anchor to your webpage. Using this method you can customise the Tweet Button using data attributes and query string parameters.

Notice how the anchor element has a class of twitter-share-button. This is required for the Tweet Button javascript to know which anchor elements to convert to buttons.




Using an iframe

If you prefer you can add a Tweet Button using an iframe. When using this method you have to use query string parameters to customise the Tweet Button’s behavior.



Build your own

If you want to be able to customise the way the Tweet Button looks you will want to use this basic format. When using this method you have to use query string parameters to customise the Tweet Button’s behavior as well as handle the popup of the Share Box.

The dimensions of the Share Box are listed in our Tweet Button FAQ.

Tweet

Properties

There are several properties for the Tweet Button which allow you to customise its behavior. Whilst the Tweet Button will work without any of this properties, using them allows you to provide default values for the user to Tweet. If the query string, data source or link source are not provided the Tweet Button will use the default values available from the web page and referrer information.

To learn more about each property and to see ways you can use them check the examples further down this page.
Properties which can be used by all types of Tweet Button

The properties in this table can be used by the javascript, iframe and build your own Tweet Buttons. Each property is a query string parameter for the http://twitter.com/share URL.
Query String Parameter Description
url URL of the page to share
via Screen name of the user to attribute the Tweet to
text Default Tweet text
related Related accounts
count Count box position
lang The language for the Tweet Button
counturl The URL to which your shared URL resolves to


With Regards,
Er.Animesh Nanda
Software Developer,
Manusis Technology Pvt. Ltd.
Bengaluru,Karnataka,INDIA.

Adding facebook like button to a web page

The Like button lets a user share a content with friends on Facebook. When the user clicks the Like button on a site, a story appears in the user's friends' News Feed with a link back to that website.



There are two Like button implementations: XFBML and Iframe. The XFBML version is more versatile, but requires use of the JavaScript SDK. The XFBML dynamically re-sizes its height according to whether there are profile pictures to display, gives you the ability (through the Javascript library) to listen for like events so that you know in real time when a user clicks the Like button, and it always gives the user the ability to add an optional comment to the like. If users do add a comment, the story published back to Facebook is given more prominence.

Attributes

href - the URL to like. The XFBML version defaults to the current page.
send - specifies whether to include a Send button with the Like button. This only works with the XFBML version.
layout - there are three options.
standard - displays social text to the right of the button and friends' profile photos below. Minimum width: 225 pixels. Default width: 450 pixels. Height: 35 pixels (without photos) or 80 pixels (with photos).
button_count - displays the total number of likes to the right of the button. Minimum width: 90 pixels. Default width: 90 pixels. Height: 20 pixels.
box_count - displays the total number of likes above the button. Minimum width: 55 pixels. Default width: 55 pixels. Height: 65 pixels.
show_faces - specifies whether to display profile photos below the button (standard layout only)
width - the width of the Like button.
action - the verb to display on the button. Options: 'like', 'recommend'
font - the font to display in the button. Options: 'arial', 'lucida grande', 'segoe ui', 'tahoma', 'trebuchet ms', 'verdana'
colorscheme - the color scheme for the like button. Options: 'light', 'dark'
ref - a label for tracking referrals; must be less than 50 characters and can contain alphanumeric characters and some punctuation (currently +/=-.:_). The ref attribute causes two parameters to be added to the referrer URL when a user clicks a link from a stream story about a Like action:
fb_ref - the ref parameter
fb_source - the stream type ('home', 'profile', 'search', 'other') in which the click occurred and the story type ('oneline' or 'multiline'), concatenated with an underscore.


Open Graph Tags

Open Graph tags are meta tags that you add to the head of your website to describe the entity your page represents, whether it is a band, restaurant, blog, or something else.

An Open Graph tag looks like this:

meta property="og:tag name" content="tag value"

If you use Open Graph tags, the following six are required:

og:title - The title of the entity.
og:type - The type of entity. You must select a type from the list of Open Graph types.
og:image - The URL to an image that represents the entity. Images must be at least 50 pixels by 50 pixels. Square images work best, but you are allowed to use images up to three times as wide as they are tall.
og:url - The canonical, permanent URL of the page representing the entity. When you use Open Graph tags, the Like button posts a link to the og:url instead of the URL in the Like button code.
og:site_name - A human-readable name for your site, e.g., "IMDb".
fb:admins or fb:app_id - A comma-separated list of either the Facebook IDs of page administrators or a Facebook Platform application ID. At a minimum, include only your own Facebook ID.


With Regards,
Er.Animesh Nanda
Software Developer,
Manusis Technology Pvt. Ltd.
Bengaluru,Karnataka,INDIA.

Wednesday, May 11, 2011

Sphinx - An open source framework for search

After reading my introduction to full text search or you have read article somewhere else and decided to go with full text search in your next project, but you still confuse what full text search engine to use. One implementation of full text search engine is Sphinx. And I’ll give you a short course on how you installing Sphinx for your full text search engine.
Sphinx is a full-text search engine, distributed under GPL version 2. It is not only fast in searching but it is also fast in indexing your data. Currently, Sphinx API has binding in PHP, Python, Perl, Ruby and Java.
Sphinx features

high indexing speed (upto 10 MB/sec on modern CPUs);
high search speed (avg query is under 0.1 sec on 2-4 GB text collections);
high scalability (upto 100 GB of text, upto 100 M documents on a single CPU);
provides good relevance ranking through combination of phrase proximity ranking and statistical (BM25) ranking;
provides distributed searching capabilities;
provides document exceprts generation;
provides searching from within MySQL through pluggable storage engine;
supports boolean, phrase, and word proximity queries;
supports multiple full-text fields per document (upto 32 by default);
supports multiple additional attributes per document (ie. groups, timestamps, etc);
supports stopwords;
supports both single-byte encodings and UTF-8;
supports English stemming, Russian stemming, and Soundex for morphology;
supports MySQL natively (MyISAM and InnoDB tables are both supported);
supports PostgreSQL natively.
There you go, so fire up your terminal or console, and let’s get thing done.
Installing sphinxsearch

Download sphinx at sphinxsearch.com, for this tutorial, I use Sphinx 0.9.8.1
$wget http://sphinxsearch.com/downloads/sphinx-0.9.8.1.tar.gz
Open your terminal, extract and install sphinx
$tar -xvf sphinx-0.9.8.1.tar.gz
sphinx need mysql-dev install, if you use ubuntu linux install this
$sudo apt get install libmysqlclient15-dev
Install sphinx to your system
$cd sphinx-0.9.8.1/
$./configure
$make
$sudo make install
Note if you want to use sphinx with PostgreSQL, configure with this argument –with-pgsql
$./configure --with-pgsql
Test your installation
$search
This should come up in your terminal
Sphinx 0.9.8.1-release (r1533)
Copyright (c) 2001-2008, Andrew Aksyonoff

Usage: search [OPTIONS] [word2 [word3 [...]]]

Options are:
-c, --config use given config file instead of defaults
-i, --index search given index only (default: all indexes)
-a, --any match any query word (default: match all words)
-b, --boolean match in boolean mode
-p, --phrase match exact phrase
-e, --extended match in extended mode
-f, --filter only match if attribute attr value is v
-s, --sortby sort matches by 'CLAUSE' in sort_extended mode
-S, --sortexpr sort matches by 'EXPR' DESC in sort_expr mode
-o, --offset print matches starting from this offset (default: 0)
-l, --limit print this many matches (default: 20)
-q, --noinfo dont print document info from SQL database
-g, --group group by attribute named attr
-gs,--groupsort sort groups by
--sort=date sort by date, descending
--rsort=date sort by date, ascending
--sort=ts sort by time segments
--stdin read query from stdin

This program (CLI search) is for testing and debugging purposes only;
it is NOT intended for production use.
Well done. You have Sphinx at your service. But before you can play with this full text search engine you have just installed, you have to understand how Sphinx works.
Sphinx installed 4 program in your environment, but most of the time we will only use indexer, search and searchd. To begin with, we have to create an index for our source. Let’s create a file name sphinx.conf, and here is a sample of sphinx.conf look like.
source book
{
type = mysql
sql_host = localhost
sql_user = root
sql_pass = root
sql_db = library
sql_port = 3306# optional, default is 3306
sql_query = SELECT id, title, summary, author from library
sql_query_info = SELECT * FROM library_book WHERE id=$id
}

index book
{
source = book
path = data/book
docinfo = extern
charset_type = sbcs
}

indexer
{
mem_limit = 32M
}

searchd
{
port = 3312
log = log/searchd.log
query_log = log/query.log
read_timeout = 5
max_children = 30
pid_file = log/searchd.pid
max_matches = 1000
}
For more information about sphinx configuration, please go to sphinx documentation.
Create log folder for our searchd log file and another folder named data for our index data. Run indexer to index our database.
$mkdir log
$mkdir data
$indexer --all
Sphinx 0.9.8.1-release(r1533)
Copyright (c) 2001-2008, Andrew Aksyonoff

using config file ./sphinx.conf'...
indexing index 'book'...
collected 12 docs, 0.0 MB
sorted 0.0 Mhits, 100.0% done
total 12 docs, 10319 bytes
total 0.018 sec, 571436.48 bytes/sec, 664.53 docs/sec
You can use search program to test search index you have just created. Assuming you have book with title contain PHP in your database, then run search PHP will give you some results.
$search PHP
Done. I really recommend you to play with sphinx configuration and tweak different setting based on your need.


With Regards,
Er.Animesh Nanda
Software Developer,
Manusis Technology Pvt. Ltd.
Bengaluru,Karnataka,INDIA.

Wednesday, March 16, 2011

ffmpeg Commands for beginners

Hyper fast Audio and Video encoder
usage: ffmpeg [options] [[infile options] -i infile]... {[outfile options] outfile}...

Main options:
-L show license
-h show help
-? show help
-help show help
--help show help
-version show version
-formats show available formats
-codecs show available codecs
-bsfs show available bit stream filters
-protocols show available protocols
-filters show available filters
-pix_fmts show available pixel formats
-loglevel loglevel set libav* logging level
-f fmt force format
-i filename input file name
-y overwrite output files
-t duration record or transcode "duration" seconds of audio/video
-fs limit_size set the limit file size in bytes
-ss time_off set the start time offset
-itsoffset time_off set the input ts offset
-itsscale stream:scale set the input ts scale
-timestamp time set the recording timestamp ('now' to set the current time)
-metadata string=string add metadata
-dframes number set the number of data frames to record
-timelimit limit set max runtime in seconds
-v number set ffmpeg verbosity level
-target type specify target file type ("vcd", "svcd", "dvd", "dv", "dv50", "pal-vcd", "ntsc-svcd", ...)
-xerror exit on error
-vf filter list video filters

Advanced options:
-map file:stream[:syncfile:syncstream] set input stream mapping
-map_meta_data outfile[,metadata]:infile[,metadata] set meta data information of outfile from infile
-map_chapters outfile:infile set chapters mapping
-benchmark add timings for benchmarking
-dump dump each input packet
-hex when dumping packets, also dump the payload
-re read input at native frame rate
-loop_input loop (current only works with images)
-loop_output number of times to loop output in formats that support looping (0 loops forever)
-threads count thread count
-vsync video sync method
-async audio sync method
-adrift_threshold threshold audio drift threshold
-vglobal video global header storage type
-copyts copy timestamps
-shortest finish encoding within shortest input
-dts_delta_threshold threshold timestamp discontinuity delta threshold
-programid desired program number
-copyinkf copy initial non-keyframes
-streamid streamIndex:value set the value of an outfile streamid
-muxdelay seconds set the maximum demux-decode delay
-muxpreload seconds set the initial demux-decode delay
-fpre filename set options from indicated preset file

Video options:
-b bitrate set bitrate (in bits/s)
-vb bitrate set bitrate (in bits/s)
-vframes number set the number of video frames to record
-r rate set frame rate (Hz value, fraction or abbreviation)
-s size set frame size (WxH or abbreviation)
-aspect aspect set aspect ratio (4:3, 16:9 or 1.3333, 1.7777)
-croptop size Removed, use the crop filter instead
-cropbottom size Removed, use the crop filter instead
-cropleft size Removed, use the crop filter instead
-cropright size Removed, use the crop filter instead
-padtop size Removed, use the pad filter instead
-padbottom size Removed, use the pad filter instead
-padleft size Removed, use the pad filter instead
-padright size Removed, use the pad filter instead
-padcolor color Removed, use the pad filter instead
-vn disable video
-vcodec codec force video codec ('copy' to copy stream)
-sameq use same video quality as source (implies VBR)
-pass n select the pass number (1 or 2)
-passlogfile prefix select two pass log file name prefix
-newvideo add a new video stream to the current output stream
-vlang code set the ISO 639 language code (3 letters) of the current video stream

Advanced Video options:
-pix_fmt format set pixel format, 'list' as argument shows all the pixel formats supported
-intra use only intra frames
-vdt n discard threshold
-qscale q use fixed video quantizer scale (VBR)
-rc_override override rate control override for specific intervals
-me_threshold threshold motion estimaton threshold
-deinterlace deinterlace pictures
-psnr calculate PSNR of compressed frames
-vstats dump video coding statistics to file
-vstats_file file dump video coding statistics to file
-intra_matrix matrix specify intra matrix coeffs
-inter_matrix matrix specify inter matrix coeffs
-top top=1/bottom=0/auto=-1 field first
-dc precision intra_dc_precision
-vtag fourcc/tag force video tag/fourcc
-qphist show QP histogram
-force_fps force the selected framerate, disable the best supported framerate selection
-force_key_frames timestamps force key frames at specified timestamps
-vbsf bitstream_filter
-vpre preset set the video options to the indicated preset

Audio options:
-ab bitrate set bitrate (in bits/s)
-aframes number set the number of audio frames to record
-aq quality set audio quality (codec-specific)
-ar rate set audio sampling rate (in Hz)
-ac channels set number of audio channels
-an disable audio
-acodec codec force audio codec ('copy' to copy stream)
-vol volume change audio volume (256=normal)
-newaudio add a new audio stream to the current output stream
-alang code set the ISO 639 language code (3 letters) of the current audio stream

Advanced Audio options:
-atag fourcc/tag force audio tag/fourcc
-sample_fmt format set sample format, 'list' as argument shows all the sample formats supported
-absf bitstream_filter
-apre preset set the audio options to the indicated preset

Subtitle options:
-sn disable subtitle
-scodec codec force subtitle codec ('copy' to copy stream)
-newsubtitle add a new subtitle stream to the current output stream
-slang code set the ISO 639 language code (3 letters) of the current subtitle stream
-stag fourcc/tag force subtitle tag/fourcc
-sbsf bitstream_filter
-spre preset set the subtitle options to the indicated preset

Audio/Video grab options:
-vc channel set video grab channel (DV1394 only)
-tvstd standard set television standard (NTSC, PAL (SECAM))
-isync sync read on input

AVCodecContext AVOptions:
-b E.V.. set bitrate (in bits/s)
-ab E..A. set bitrate (in bits/s)
-bt E.V.. set video bitrate tolerance (in bits/s)
-flags EDVA.
mv4 E.V.. use four motion vector by macroblock (mpeg4)
obmc E.V.. use overlapped block motion compensation (h263+)
qpel E.V.. use 1/4 pel motion compensation
loop E.V.. use loop filter
gmc E.V.. use gmc
mv0 E.V.. always try a mb with mv=<0,0>
part E.V.. use data partitioning
gray EDV.. only decode/encode grayscale
psnr E.V.. error[?] variables will be set during encoding
naq E.V.. normalize adaptive quantization
ildct E.V.. use interlaced dct
low_delay EDV.. force low delay
alt E.V.. enable alternate scantable (mpeg2/mpeg4)
global_header E.VA. place global headers in extradata instead of every keyframe
bitexact EDVAS use only bitexact stuff (except (i)dct)
aic E.V.. h263 advanced intra coding / mpeg4 ac prediction
umv E.V.. use unlimited motion vectors
cbp E.V.. use rate distortion optimization for cbp
qprd E.V.. use rate distortion optimization for qp selection
aiv E.V.. h263 alternative inter vlc
slice E.V..
ilme E.V.. interlaced motion estimation
scan_offset E.V.. will reserve space for svcd scan offset user data
cgop E.V.. closed gop
-me_method E.V.. set motion estimation method
zero E.V.. zero motion estimation (fastest)
full E.V.. full motion estimation (slowest)
epzs E.V.. EPZS motion estimation (default)
esa E.V.. esa motion estimation (alias for full)
tesa E.V.. tesa motion estimation
dia E.V.. dia motion estimation (alias for epzs)
log E.V.. log motion estimation
phods E.V.. phods motion estimation
x1 E.V.. X1 motion estimation
hex E.V.. hex motion estimation
umh E.V.. umh motion estimation
iter E.V.. iter motion estimation
-g E.V.. set the group of picture size
-cutoff E..A. set cutoff bandwidth
-frame_size E..A.
-qcomp E.V.. video quantizer scale compression (VBR)
-qblur E.V.. video quantizer scale blur (VBR)
-qmin E.V.. min video quantizer scale (VBR)
-qmax E.V.. max video quantizer scale (VBR)
-qdiff E.V.. max difference between the quantizer scale (VBR)
-bf E.V.. use 'frames' B frames
-b_qfactor E.V.. qp factor between p and b frames
-rc_strategy E.V.. ratecontrol method
-b_strategy E.V.. strategy to choose between I/P/B-frames
-wpredp E.V.. weighted prediction analysis method
-hurry_up .DV..
-ps E.V.. rtp payload size in bytes
-bug .DV.. workaround not auto detected encoder bugs
autodetect .DV..
old_msmpeg4 .DV.. some old lavc generated msmpeg4v3 files (no autodetection)
xvid_ilace .DV.. Xvid interlacing bug (autodetected if fourcc==XVIX)
ump4 .DV.. (autodetected if fourcc==UMP4)
no_padding .DV.. padding bug (autodetected)
amv .DV..
ac_vlc .DV.. illegal vlc bug (autodetected per fourcc)
qpel_chroma .DV..
std_qpel .DV.. old standard qpel (autodetected per fourcc/version)
qpel_chroma2 .DV..
direct_blocksize .DV.. direct-qpel-blocksize bug (autodetected per fourcc/version)
edge .DV.. edge padding bug (autodetected per fourcc/version)
hpel_chroma .DV..
dc_clip .DV..
ms .DV.. workaround various bugs in microsofts broken decoders
trunc .DV.. trancated frames
-lelim E.V.. single coefficient elimination threshold for luminance (negative values also consider dc coefficient)
-celim E.V.. single coefficient elimination threshold for chrominance (negative values also consider dc coefficient)
-strict EDVA. how strictly to follow the standards
very EDV.. strictly conform to a older more strict version of the spec or reference software
strict EDV.. strictly conform to all the things in the spec no matter what consequences
normal EDV..
inofficial EDV.. allow unofficial extensions (deprecated - use unofficial)
unofficial EDV.. allow unofficial extensions
experimental EDV.. allow non standardized experimental things
-b_qoffset E.V.. qp offset between P and B frames
-er .DVA. set error detection aggressivity
careful .DV..
compliant .DV..
aggressive .DV..
very_aggressive .DV..
-mpeg_quant E.V.. use MPEG quantizers instead of H.263
-qsquish E.V.. how to keep quantizer between qmin and qmax (0 = clip, 1 = use differentiable function)
-rc_qmod_amp E.V.. experimental quantizer modulation
-rc_qmod_freq E.V.. experimental quantizer modulation
-rc_eq E.V.. set rate control equation
-maxrate E.V.. set max video bitrate tolerance (in bits/s)
-minrate E.V.. set min video bitrate tolerance (in bits/s)
-bufsize E.VA. set ratecontrol buffer size (in bits)
-rc_buf_aggressivity E.V.. currently useless
-i_qfactor E.V.. qp factor between P and I frames
-i_qoffset E.V.. qp offset between P and I frames
-rc_init_cplx E.V.. initial complexity for 1-pass encoding
-dct E.V.. DCT algorithm
auto E.V.. autoselect a good one (default)
fastint E.V.. fast integer
int E.V.. accurate integer
mmx E.V..
mlib E.V..
altivec E.V..
faan E.V.. floating point AAN DCT
-lumi_mask E.V.. compresses bright areas stronger than medium ones
-tcplx_mask E.V.. temporal complexity masking
-scplx_mask E.V.. spatial complexity masking
-p_mask E.V.. inter masking
-dark_mask E.V.. compresses dark areas stronger than medium ones
-idct EDV.. select IDCT implementation
auto EDV..
int EDV..
simple EDV..
simplemmx EDV..
libmpeg2mmx EDV..
ps2 EDV..
mlib EDV..
arm EDV..
altivec EDV..
sh4 EDV..
simplearm EDV..
simplearmv5te EDV..
simplearmv6 EDV..
simpleneon EDV..
simplealpha EDV..
h264 EDV..
vp3 EDV..
ipp EDV..
xvidmmx EDV..
faani EDV.. floating point AAN IDCT
-ec .DV.. set error concealment strategy
guess_mvs .DV.. iterative motion vector (MV) search (slow)
deblock .DV.. use strong deblock filter for damaged MBs
-pred E.V.. prediction method
left E.V..
plane E.V..
median E.V..
-aspect E.V.. sample aspect ratio
-debug EDVAS print specific debug info
pict .DV.. picture info
rc E.V.. rate control
bitstream .DV..
mb_type .DV.. macroblock (MB) type
qp .DV.. per-block quantization parameter (QP)
mv .DV.. motion vector
dct_coeff .DV..
skip .DV..
startcode .DV..
pts .DV..
er .DV.. error recognition
mmco .DV.. memory management control operations (H.264)
bugs .DV..
vis_qp .DV.. visualize quantization parameter (QP), lower QP are tinted greener
vis_mb_type .DV.. visualize block types
buffers .DV.. picture buffer allocations
-vismv .DV.. visualize motion vectors (MVs)
pf .DV.. forward predicted MVs of P-frames
bf .DV.. forward predicted MVs of B-frames
bb .DV.. backward predicted MVs of B-frames
-mb_qmin E.V.. obsolete, use qmin
-mb_qmax E.V.. obsolete, use qmax
-cmp E.V.. full pel me compare function
sad E.V.. sum of absolute differences, fast (default)
sse E.V.. sum of squared errors
satd E.V.. sum of absolute Hadamard transformed differences
dct E.V.. sum of absolute DCT transformed differences
psnr E.V.. sum of squared quantization errors (avoid, low quality)
bit E.V.. number of bits needed for the block
rd E.V.. rate distortion optimal, slow
zero E.V.. 0
vsad E.V.. sum of absolute vertical differences
vsse E.V.. sum of squared vertical differences
nsse E.V.. noise preserving sum of squared differences
w53 E.V.. 5/3 wavelet, only used in snow
w97 E.V.. 9/7 wavelet, only used in snow
dctmax E.V..
chroma E.V..
-subcmp E.V.. sub pel me compare function
sad E.V.. sum of absolute differences, fast (default)
sse E.V.. sum of squared errors
satd E.V.. sum of absolute Hadamard transformed differences
dct E.V.. sum of absolute DCT transformed differences
psnr E.V.. sum of squared quantization errors (avoid, low quality)
bit E.V.. number of bits needed for the block
rd E.V.. rate distortion optimal, slow
zero E.V.. 0
vsad E.V.. sum of absolute vertical differences
vsse E.V.. sum of squared vertical differences
nsse E.V.. noise preserving sum of squared differences
w53 E.V.. 5/3 wavelet, only used in snow
w97 E.V.. 9/7 wavelet, only used in snow
dctmax E.V..
chroma E.V..
-mbcmp E.V.. macroblock compare function
sad E.V.. sum of absolute differences, fast (default)
sse E.V.. sum of squared errors
satd E.V.. sum of absolute Hadamard transformed differences
dct E.V.. sum of absolute DCT transformed differences
psnr E.V.. sum of squared quantization errors (avoid, low quality)
bit E.V.. number of bits needed for the block
rd E.V.. rate distortion optimal, slow
zero E.V.. 0
vsad E.V.. sum of absolute vertical differences
vsse E.V.. sum of squared vertical differences
nsse E.V.. noise preserving sum of squared differences
w53 E.V.. 5/3 wavelet, only used in snow
w97 E.V.. 9/7 wavelet, only used in snow
dctmax E.V..
chroma E.V..
-ildctcmp E.V.. interlaced dct compare function
sad E.V.. sum of absolute differences, fast (default)
sse E.V.. sum of squared errors
satd E.V.. sum of absolute Hadamard transformed differences
dct E.V.. sum of absolute DCT transformed differences
psnr E.V.. sum of squared quantization errors (avoid, low quality)
bit E.V.. number of bits needed for the block
rd E.V.. rate distortion optimal, slow
zero E.V.. 0
vsad E.V.. sum of absolute vertical differences
vsse E.V.. sum of squared vertical differences
nsse E.V.. noise preserving sum of squared differences
w53 E.V.. 5/3 wavelet, only used in snow
w97 E.V.. 9/7 wavelet, only used in snow
dctmax E.V..
chroma E.V..
-dia_size E.V.. diamond type & size for motion estimation
-last_pred E.V.. amount of motion predictors from the previous frame
-preme E.V.. pre motion estimation
-precmp E.V.. pre motion estimation compare function
sad E.V.. sum of absolute differences, fast (default)
sse E.V.. sum of squared errors
satd E.V.. sum of absolute Hadamard transformed differences
dct E.V.. sum of absolute DCT transformed differences
psnr E.V.. sum of squared quantization errors (avoid, low quality)
bit E.V.. number of bits needed for the block
rd E.V.. rate distortion optimal, slow
zero E.V.. 0
vsad E.V.. sum of absolute vertical differences
vsse E.V.. sum of squared vertical differences
nsse E.V.. noise preserving sum of squared differences
w53 E.V.. 5/3 wavelet, only used in snow
w97 E.V.. 9/7 wavelet, only used in snow
dctmax E.V..
chroma E.V..
-pre_dia_size E.V.. diamond type & size for motion estimation pre-pass
-subq E.V.. sub pel motion estimation quality
-me_range E.V.. limit motion vectors range (1023 for DivX player)
-ibias E.V.. intra quant bias
-pbias E.V.. inter quant bias
-coder E.V..
vlc E.V.. variable length coder / huffman coder
ac E.V.. arithmetic coder
raw E.V.. raw (no encoding)
rle E.V.. run-length coder
deflate E.V.. deflate-based coder
-context E.V.. context model
-mbd E.V.. macroblock decision algorithm (high quality mode)
simple E.V.. use mbcmp (default)
bits E.V.. use fewest bits
rd E.V.. use best rate distortion
-sc_threshold E.V.. scene change threshold
-lmin E.V.. min lagrange factor (VBR)
-lmax E.V.. max lagrange factor (VBR)
-nr E.V.. noise reduction
-rc_init_occupancy E.V.. number of bits which should be loaded into the rc buffer before decoding starts
-inter_threshold E.V..
-flags2 EDVA.
fast E.V.. allow non spec compliant speedup tricks
sgop E.V.. strictly enforce gop size
noout E.V.. skip bitstream encoding
local_header E.V.. place global headers at every keyframe instead of in extradata
bpyramid E.V.. allows B-frames to be used as references for predicting
wpred E.V.. weighted biprediction for b-frames (H.264)
mixed_refs E.V.. one reference per partition, as opposed to one reference per macroblock
dct8x8 E.V.. high profile 8x8 transform (H.264)
fastpskip E.V.. fast pskip (H.264)
aud E.V.. access unit delimiters (H.264)
skiprd E.V.. RD optimal MB level residual skipping
ivlc E.V.. intra vlc table
drop_frame_timecode E.V..
non_linear_q E.V.. use non linear quantizer
reservoir E..A. use bit reservoir
mbtree E.V.. use macroblock tree ratecontrol (x264 only)
psy E.V.. use psycho visual optimization
ssim E.V.. ssim will be calculated during encoding
intra_refresh E.V.. use periodic insertion of intra blocks instead of keyframes
-error E.V..
-antialias .DV.. MP3 antialias algorithm
auto .DV..
fastint .DV..
int .DV..
float .DV..
-qns E.V.. quantizer noise shaping
-threads EDV..
-mb_threshold E.V.. macroblock threshold
-dc E.V.. intra_dc_precision
-nssew E.V.. nsse weight
-skip_top .DV.. number of macroblock rows at the top which are skipped
-skip_bottom .DV.. number of macroblock rows at the bottom which are skipped
-profile E.VA.
unknown E.VA.
aac_main E..A.
aac_low E..A.
aac_ssr E..A.
aac_ltp E..A.
-level E.VA.
unknown E.VA.
-lowres .DVA. decode at 1= 1/2, 2=1/4, 3=1/8 resolutions
-skip_threshold E.V.. frame skip threshold
-skip_factor E.V.. frame skip factor
-skip_exp E.V.. frame skip exponent
-skipcmp E.V.. frame skip compare function
sad E.V.. sum of absolute differences, fast (default)
sse E.V.. sum of squared errors
satd E.V.. sum of absolute Hadamard transformed differences
dct E.V.. sum of absolute DCT transformed differences
psnr E.V.. sum of squared quantization errors (avoid, low quality)
bit E.V.. number of bits needed for the block
rd E.V.. rate distortion optimal, slow
zero E.V.. 0
vsad E.V.. sum of absolute vertical differences
vsse E.V.. sum of squared vertical differences
nsse E.V.. noise preserving sum of squared differences
w53 E.V.. 5/3 wavelet, only used in snow
w97 E.V.. 9/7 wavelet, only used in snow
dctmax E.V..
chroma E.V..
-border_mask E.V.. increases the quantizer for macroblocks close to borders
-mblmin E.V.. min macroblock lagrange factor (VBR)
-mblmax E.V.. max macroblock lagrange factor (VBR)
-mepc E.V.. motion estimation bitrate penalty compensation (1.0 = 256)
-skip_loop_filter .DV..
none .DV..
default .DV..
noref .DV..
bidir .DV..
nokey .DV..
all .DV..
-skip_idct .DV..
none .DV..
default .DV..
noref .DV..
bidir .DV..
nokey .DV..
all .DV..
-skip_frame .DV..
none .DV..
default .DV..
noref .DV..
bidir .DV..
nokey .DV..
all .DV..
-bidir_refine E.V.. refine the two motion vectors used in bidirectional macroblocks
-brd_scale E.V.. downscales frames for dynamic B-frame decision
-crf E.V.. enables constant quality mode, and selects the quality (x264)
-cqp E.V.. constant quantization parameter rate control method
-keyint_min E.V.. minimum interval between IDR-frames (x264)
-refs E.V.. reference frames to consider for motion compensation (Snow)
-chromaoffset E.V.. chroma qp offset from luma
-bframebias E.V.. influences how often B-frames are used
-trellis E.VA. rate-distortion optimal quantization
-directpred E.V.. direct mv prediction mode - 0 (none), 1 (spatial), 2 (temporal), 3 (auto)
-complexityblur E.V.. reduce fluctuations in qp (before curve compression)
-deblockalpha E.V.. in-loop deblocking filter alphac0 parameter
-deblockbeta E.V.. in-loop deblocking filter beta parameter
-partitions E.V.. macroblock subpartition sizes to consider
parti4x4 E.V..
parti8x8 E.V..
partp4x4 E.V..
partp8x8 E.V..
partb8x8 E.V..
-sc_factor E.V.. multiplied by qscale for each frame and added to scene_change_score
-mv0_threshold E.V..
-b_sensitivity E.V.. adjusts sensitivity of b_frame_strategy 1
-compression_level E.VA.
-use_lpc E..A. sets whether to use LPC mode (FLAC)
-lpc_coeff_precision E..A. LPC coefficient precision (FLAC)
-min_prediction_order E..A.
-max_prediction_order E..A.
-prediction_order_method E..A. search method for selecting prediction order
-min_partition_order E..A.
-max_partition_order E..A.
-timecode_frame_start E.V.. GOP timecode frame start number, in non drop frame format
-request_channels .D.A. set desired number of audio channels
-drc_scale .D.A. percentage of dynamic range compression to apply
-channel_layout ED.A.
-request_channel_layout .D.A.
-rc_max_vbv_use E.V..
-rc_min_vbv_use E.V..
-ticks_per_frame EDVA.
-color_primaries EDV..
-color_trc EDV..
-colorspace EDV..
-color_range EDV..
-chroma_sample_location EDV..
-psy_rd E.V.. specify psycho visual strength
-psy_trellis E.V.. specify psycho visual trellis
-aq_mode E.V.. specify aq method
-aq_strength E.V.. specify aq strength
-rc_lookahead E.V.. specify number of frames to look ahead for frametype
-crf_max E.V.. in crf mode, prevents vbv from lowering quality beyond this point
-lpc_type E..A. specify LPC algorithm
-lpc_passes E..A. number of passes to use for Cholesky factorization during LPC analysis
-slices E.V.. number of slices, used in parallelized decoding

AVFormatContext AVOptions:
-probesize .D... set probing size
-muxrate E.... set mux rate
-packetsize E.... set packet size
-fflags ED...
ignidx .D... ignore index
genpts .D... generate pts
nofillin .D... do not fill in missing values that can be exactly calculated
noparse .D... disable AVParsers, this needs nofillin too
igndts .D... ignore dts
rtphint E.... add rtp hinting
-track E.... set the track number
-year E.... set the year
-analyzeduration .D... how many microseconds are analyzed to estimate duration
-cryptokey .D... decryption key
-indexmem .D... max memory used for timestamp index (per stream)
-rtbufsize .D... max memory used for buffering real-time frames
-fdebug ED... print specific debug info
ts ED...
-max_delay ED... maximum muxing or demuxing delay in microseconds

SWScaler AVOptions:
-sws_flags E.V.. scaler/cpu flags
fast_bilinear E.V.. fast bilinear
bilinear E.V.. bilinear
bicubic E.V.. bicubic
experimental E.V.. experimental
neighbor E.V.. nearest neighbor
area E.V.. averaging area
bicublin E.V.. luma bicubic, chroma bilinear
gauss E.V.. gaussian
sinc E.V.. sinc
lanczos E.V.. lanczos
spline E.V.. natural bicubic spline
print_info E.V.. print info
accurate_rnd E.V.. accurate rounding
mmx E.V.. MMX SIMD acceleration
mmx2 E.V.. MMX2 SIMD acceleration
sse2 E.V.. SSE2 SIMD acceleration
3dnow E.V.. 3DNOW SIMD acceleration
altivec E.V.. AltiVec SIMD acceleration
bfin E.V.. Blackfin SIMD acceleration
full_chroma_int E.V.. full chroma interpolation
full_chroma_inp E.V.. full chroma input
bitexact E.V..
-srcw E.V.. source width
-srch E.V.. source height
-dstw E.V.. destination width
-dsth E.V.. destination height
-src_format E.V.. source format
-dst_format E.V.. destination format
-src_range E.V.. source range
-dst_range E.V.. destination range
-param0 E.V.. scaler param 0
-param1 E.V.. scaler param 1
FFmpeg version SVN-r25919, Copyright (c) 2000-2010 the FFmpeg developers
built on Dec 8 2010 04:07:59 with gcc 4.4.2
configuration: --enable-gpl --enable-version3 --enable-libgsm --enable-pthreads --enable-libvorbis --enable-libtheora --enable-libspeex --enable-libmp3lame --enable-libopenjpeg --enable-libschroedinger --enable-libopencore_amrwb --enable-libopencore_amrnb --enable-libvpx --disable-decoder=libvpx --arch=x86 --enable-runtime-cpudetect --enable-libxvid --enable-libx264 --extra-libs='-lx264 -lpthread' --enable-librtmp --extra-libs='-lrtmp -lpolarssl -lws2_32 -lwinmm' --target-os=mingw32 --enable-avisynth --cross-prefix=i686-mingw32- --cc='ccache i686-mingw32-gcc' --enable-memalign-hack
libavutil 50.34. 0 / 50.34. 0
libavcore 0.15. 0 / 0.15. 0
libavcodec 52.99. 0 / 52.99. 0
libavformat 52.88. 0 / 52.88. 0
libavdevice 52. 2. 2 / 52. 2. 2
libavfilter 1.68. 0 / 1.68. 0
libswscale 0.12. 0 / 0.12. 0



With Regards,
Er.Animesh Nanda
Web developer,
Manuusis Technology Pvt. Ltd.,
Bengaluru,Karnataka,INDIA.

Wednesday, January 5, 2011

Three Web Wishes For 2011

Happy New Year! I hope you all had a great week to relax and
reboot for the year ahead.


MY THREE WEB WISHES FOR 2011 - - - - - - - - - - - - - - - - -

1. MICROSOFT WOULD RELEASE IE9 ON WINDOWS XP

Microsoft is obviously excited about HTML5. Their conferences,
articles, and products are all pushing the technology as the next
"big thing." So why produce an HTML5-aware browser which can't be
installed by 60% of their users? HTML5 could be held back years
if Microsoft do not release a compatible browser for their most
successful and widespread OS. The main arguments for not
releasing IE9 on XP are:

1. IE9 uses Windows Vista/7 rendering technology. I don't doubt
it, but there's no fundamental reason why it can't be ported to
XP. Isn't DirectX supposed to be a solution which solves OS and
hardware incompatibilities? Besides, all the other browser
vendors support XP without whining -- and several offer IE9-like
video acceleration. If others have the resources to support XP,
Microsoft certainly does.

1. XP is a ten year-old OS and support is being phased out.
That's true, but it's currently Microsoft's most popular OS. If
they were really serious about scrapping XP, they could stop
selling the OS and release Vista/7-only versions of Office!

If you think IE6 development is tough now, consider how bad
it'll be supporting IE8 in 2018.

2. WIDESPREAD AVAILABILITY OF SERVER-SIDE JAVASCRIPT

Desktop application developers have it easy. They pick a single
development language and perhaps add a sprinkling of SQL for
complex systems. However, a half-decent web developer must learn
HTML, CSS, JavaScript, a server-side language such as PHP, SQL
and possibly XML for good measure. Wouldn't it be great if we
could use JavaScript on the server and reduce the workload?
node.js [2] may be the best solution, but it's yet to achieve the
widespread appeal and is dwarfed by the availability of PHP and
ASP.NET. Perhaps that will change in 2011?

3. WEB DEVELOPERS WOULD BACKTRACK ON BANDWIDTH-HOGGING WEBSITES

There's an annoying web development trend which considers
bandwidth to be unimportant. Why do some sites insist on
multi-megabyte pages? Why is the total file size larger than the
browser used to render it? I have some sympathy for those
developing complex web applications, although there are few
excuses. Google and other vendors can provide full online office
suites in a few hundred Kb, so there's rarely a need for larger
applications. But it's an entirely different matter for
content-only websites. Bandwidth is not necessarily cheap or
unlimited -- especially for those using mobile devices. Trim that
bulk or have your web development license revoked!