LED strip question

CrossRoads:
For Dumb LED strips: Every 3 LEDs will have its own current limit resistor; power & gnd are passed along in parallel to the next group of 3. Each group of 3 will draw ~20mA from 12V supply. A shorter length will thus draw less current. PWM/transistor can be used to control brightness.

For Smart LED strips, a control chip will control each LED/group of LEDs. Current draw will be similar. Software controls the brightness.

No external resistor is needed either way.

As an example, here is 74HC595 controlling AOI518 N-channel MOSFETs to fade strips with 9 LEDs (3 groups of 3) up & down.
Cross Roads Electronics
http://youtu.be/hAVf1D1L-7c

One more question if you don't mind;

To drive one of these LED strips, I need to use a NPN transistor. However, I am not sure which transistor to choose and the resistor to connect its base.

I reckon the resistor should be something like that for 5 Meters;

5* Hfe / (1.3 * 2)

where 5 is the switching voltage from digitalOutput and 2 is the load current drawn by LED strip