Los sustantivos cuyo primer sonido es una vocal van precedidos de una, como por ejemplo hora. Aunque todos comienzan con h, h es silencioso, por lo que debe ser coherente con el /au/ que seguimos, por lo que se usa an.
La consonante inicial se pronuncia como un sustantivo consonante que comienza con a, como libro, y la consonante inicial b se pronuncia como consonante /b/, por lo que se debe usar a para representar un libro.
En otras palabras, el uso de a o an depende de la pronunciación, no de la letra inicial.