Yes, fish will eat birds in nature, but not as a regular staple. Wrong amino acid profile, and wrong fatty acid profile. Also in the wild, fish will eat elephant and rhino dung as it falls out of their arse - because in the wild fish live by a feast or famine rule. So better to eat what they can, when they can, in order to survive to another day. Then figure out what's next on the menu.
Agreed, most fish are opportunistic. There's a crayfish crawling around on the bottom, it's food. A cricket fell into the river, it gets eaten. There's some fish fry/smaller fish, it gets eaten. There's a frog that fell into the water, it gets eaten. Simply put, if it goes into the water, there's a good chance it gets eaten, hell I've caught fish with ham, with corn, with grubs, with hotdogs, with chicken, with heart and liver, and even without bait. They're opportunistic, they will eat just about anything in the wild. When it comes to reptiles and amphibians, are they also not good for fish? I just go by the rule of thumb that if it isn't an insect, crustacean/mollusk, or another fish, then the fish shouldn't eat it (for carnivores).