How is 青 and 苍 used in classical Chinese to denote colors? Here is what the dictionary says about 青:

　1. 深绿色或浅蓝色：～草。～苔。 Dark Blue or light green.
　2. 靛蓝色：靛～。～紫。 Indigo blue.
　3. 黑色：～布。～衣。 Black.

Similar case is 苍:

　1. 深青色，深绿色：～翠。～天。 Dark blue or green.
　2. 灰白色：～白。 Pale

It looks like you have to get into the writer's head to know what he means. Are there any rules for these words?
For example, if I see a word 青鸟, how do I know if it's blue or black?
As a native Chinese speaker, I can tell the color of the word with 青 almost at once.

As 青 is a word of a certain color name between green and blue, most of the word with 青 is described as this color.

For the word like 青草 or 青苔, it's often means the plant as 草 and 苔. The color of these plant can be determined by last character.

In terms of other words like 青 for black in 青布 and 青衣, they are the old usage of word maybe just used in poems. At least in the daily life of mine, I don't used it in that way.

For 青鳥 in your example, it mostly used like the color of 青 itself.
As the ref of 青鳥, you can take a look at this link http://baike.baidu.com/subview/5674/5502935.htm . And I think the hummingbird is just a kind of 青鳥.