global $post, $wp_post_types;
$q_obj = get_queried_object();
$ptype = null;
if (!empty($post)) $ptype = &$wp_post_types[$post->post_type];
else if (isset($q_obj->taxonomy)) $ptype = &$wp_post_types[get_taxonomy($q_obj->taxonomy)->object_type[0]];
$post_title = $ptype->labels->name;