{"id":17190,"date":"2023-05-16T22:33:58","date_gmt":"2023-05-17T02:33:58","guid":{"rendered":"https:\/\/scruss.com\/blog\/?p=17190"},"modified":"2025-10-09T18:12:21","modified_gmt":"2025-10-09T22:12:21","slug":"the-joy-of-birdnetpi","status":"publish","type":"post","link":"https:\/\/scruss.com\/blog\/2023\/05\/16\/the-joy-of-birdnetpi\/","title":{"rendered":"The Joy of BirdNetPi"},"content":{"rendered":"\n<p>I don&#8217;t think I&#8217;ve had as much enjoyment for a piece of software for a very long time as I&#8217;ve had with <a href=\"https:\/\/github.com\/Nachtzuster\/BirdNET-Pi\">BirdNET-Pi<\/a>. It&#8217;s a realtime acoustic bird classification system for the Raspberry Pi. It listens through a microphone you place somewhere near where you can hear birds, and it&#8217;ll go off and guess what it&#8217;s hearing, using a cut-down version of the <a href=\"https:\/\/birdnet.cornell.edu\/\">BirdNET Sound ID<\/a> model. It does this 24\/7, and saves the samples it hears. You can then go to a web page (running on the same Raspberry Pi) and look up all the species it has heard.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Our Garden<\/h2>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"768\" src=\"https:\/\/scruss.com\/wordpress\/wp-content\/uploads\/2023\/05\/PXL_20230514_113057456-1024x768.jpg\" alt=\"a somewhat overgrown garden with budding green trees against blue sky\" class=\"wp-image-17191\" srcset=\"https:\/\/scruss.com\/wordpress\/wp-content\/uploads\/2023\/05\/PXL_20230514_113057456-1024x768.jpg 1024w, https:\/\/scruss.com\/wordpress\/wp-content\/uploads\/2023\/05\/PXL_20230514_113057456-320x240.jpg 320w, https:\/\/scruss.com\/wordpress\/wp-content\/uploads\/2023\/05\/PXL_20230514_113057456-160x120.jpg 160w, https:\/\/scruss.com\/wordpress\/wp-content\/uploads\/2023\/05\/PXL_20230514_113057456-768x576.jpg 768w, https:\/\/scruss.com\/wordpress\/wp-content\/uploads\/2023\/05\/PXL_20230514_113057456-1536x1152.jpg 1536w, https:\/\/scruss.com\/wordpress\/wp-content\/uploads\/2023\/05\/PXL_20230514_113057456-2048x1536.jpg 2048w, https:\/\/scruss.com\/wordpress\/wp-content\/uploads\/2023\/05\/PXL_20230514_113057456-1568x1176.jpg 1568w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p>Not very impressive, kind of overgrown, in the wrong part of town. Small, too. But birds love it. At this time of year, it&#8217;s <em>alive<\/em> with birds. You can&#8217;t make them out, but there&#8217;s a pair of <a href=\"https:\/\/www.allaboutbirds.org\/guide\/Rose-breasted_Grosbeak\">Rose-breasted Grosbeak<\/a>s happily snacking near the top of the big tree. There are conifers next door too, so we get birds we wouldn&#8217;t expect.<\/p>\n\n\n\n<p>We are next to two busy subway\/train stations, and in between two schools. There&#8217;s a busy intersection nearby, too. Consequently, the background noise is horrendous<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">What I used<\/h2>\n\n\n\n<p>This was literally \u201cstuff I had lying around\u201d:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Raspberry Pi 3B+ (with power supply, case, thermostatic fan and SD card)<\/li>\n\n\n\n<li>USB extension cable (this, apparently, is quite important to isolate the USB audio device from electrical noise)<\/li>\n\n\n\n<li>Horrible cheap USB sound card: I paid about $2 for a &#8220;3d sound&#8221; thing about a decade ago. It records in mono. It works. My one is wrapped in electrical tape as the case keeps threatening to fall off, plus it has a hugely bright flashing LED that is annoying.<\/li>\n\n\n\n<li>Desktop mic (circa 2002): before video became a thing, PCs had conferencing microphones. I think I got this one free with a PC over 20 years ago. It&#8217;s entirely unremarkable and is not an audiophile device. I stuck it out a back window and used a strip of gaffer tape to stop bugs getting in. It&#8217;s not waterproof, but it didn&#8217;t rain the whole week it was out the window.<\/li>\n\n\n\n<li><a href=\"https:\/\/www.raspberrypi.com\/software\/\">Raspberry Pi OS<\/a> Lite 64-bit. Yes, it has to be 64 bit.<\/li>\n\n\n\n<li><a href=\"https:\/\/github.com\/mcguirepr89\/BirdNET-Pi\">BirdNET-Pi<\/a> installation on top.<\/li>\n<\/ul>\n\n\n\n<p>I spent very little time optimizing this. I had to fiddle with microphone gain slightly. That&#8217;s all.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">What I heard<\/h2>\n\n\n\n<p>To the best of my knowledge, I have actual observations of 30 species, observed between May 7th and May 16th 2023:<\/p>\n\n\n\n<p style=\"padding-top:0;padding-right:0;padding-bottom:0;padding-left:0\"><a href=\"https:\/\/www.allaboutbirds.org\/guide\/American_Goldfinch\">American Goldfinch<\/a>, <a href=\"https:\/\/www.allaboutbirds.org\/guide\/American_Robin\">American Robin<\/a>, <a href=\"https:\/\/www.allaboutbirds.org\/guide\/Baltimore_Oriole\">Baltimore Oriole<\/a>, <a href=\"https:\/\/www.allaboutbirds.org\/guide\/Blue_Jay\">Blue Jay<\/a>, <a href=\"https:\/\/www.allaboutbirds.org\/guide\/Cedar_Waxwing\">Cedar Waxwing<\/a>, <a href=\"https:\/\/www.allaboutbirds.org\/guide\/Chimney_Swift\">Chimney Swift<\/a>, <a href=\"https:\/\/www.allaboutbirds.org\/guide\/Clay-colored_Sparrow\">Clay-colored Sparrow<\/a>, <a href=\"https:\/\/www.allaboutbirds.org\/guide\/Common_Grackle\">Common Grackle<\/a>, <a href=\"https:\/\/www.allaboutbirds.org\/guide\/Common_Raven\">Common Raven<\/a>, <a href=\"https:\/\/www.allaboutbirds.org\/guide\/Gray_Catbird\">Gray Catbird<\/a>, <a href=\"https:\/\/www.allaboutbirds.org\/guide\/Hermit_Thrush\">Hermit Thrush<\/a>, <a href=\"https:\/\/www.allaboutbirds.org\/guide\/House_Finch\">House Finch<\/a>, <a href=\"https:\/\/www.allaboutbirds.org\/guide\/House_Sparrow\">House Sparrow<\/a>, <a href=\"https:\/\/www.allaboutbirds.org\/guide\/Killdeer\">Killdeer<\/a>, <a href=\"https:\/\/www.allaboutbirds.org\/guide\/Mourning_Dove\">Mourning Dove<\/a>, <a href=\"https:\/\/www.allaboutbirds.org\/guide\/Nashville_Warbler\">Nashville Warbler<\/a>, <a href=\"https:\/\/www.allaboutbirds.org\/guide\/Northern_Cardinal\">Northern Cardinal<\/a>, <a href=\"https:\/\/www.allaboutbirds.org\/guide\/Northern_Parula\">Northern Parula<\/a>, <a href=\"https:\/\/www.allaboutbirds.org\/guide\/Orchard_Oriole\">Orchard Oriole<\/a>, <a href=\"https:\/\/www.allaboutbirds.org\/guide\/Ovenbird\">Ovenbird<\/a>, <a href=\"https:\/\/www.allaboutbirds.org\/guide\/Red-winged_Blackbird\">Red-winged Blackbird<\/a>, <a href=\"https:\/\/www.allaboutbirds.org\/guide\/Ring-billed_Gull\">Ring-billed Gull<\/a>, <a href=\"https:\/\/www.allaboutbirds.org\/guide\/Rose-breasted_Grosbeak\">Rose-breasted Grosbeak<\/a>, <a href=\"https:\/\/www.allaboutbirds.org\/guide\/Ruby-crowned_Kinglet\">Ruby-crowned Kinglet<\/a>, <a href=\"https:\/\/www.allaboutbirds.org\/guide\/Song_Sparrow\">Song Sparrow<\/a>, <a href=\"https:\/\/www.allaboutbirds.org\/guide\/Veery\">Veery<\/a>, <a href=\"https:\/\/www.allaboutbirds.org\/guide\/Warbling_Vireo\">Warbling Vireo<\/a>, <a href=\"https:\/\/www.allaboutbirds.org\/guide\/White-throated_Sparrow\">White-throated Sparrow<\/a>, <a href=\"https:\/\/www.allaboutbirds.org\/guide\/White-winged_Crossbill\">White-winged Crossbill<\/a>, <a href=\"https:\/\/www.allaboutbirds.org\/guide\/Wood_Thrush\">Wood Thrush<\/a><\/p>\n\n\n\n<p>I&#8217;ll put the recordings at the end of this post. Note, though, they&#8217;re noisy: Cornell Lab quality they ain&#8217;t.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">What I learned<\/h2>\n\n\n\n<p>This is the first time that I&#8217;ve let an &#8220;AI&#8221; classifier model run with no intervention. If it flags some false positives, then it&#8217;s pretty low-stakes when it&#8217;s wrong. And how wrong did it get some things!<\/p>\n\n\n\n<figure class=\"wp-block-video\"><video height=\"466\" style=\"aspect-ratio: 720 \/ 466;\" width=\"720\" controls src=\"https:\/\/scruss.com\/wordpress\/wp-content\/uploads\/2023\/05\/Barred_Owl-81-2023-05-15-birdnet-083840.webm\"><\/video><figcaption class=\"wp-element-caption\">allegedly a Barred Owl, this is clearly a two-stroke leafblower<\/figcaption><\/figure>\n\n\n\n<figure class=\"wp-block-video\"><video height=\"466\" style=\"aspect-ratio: 720 \/ 466;\" width=\"720\" controls src=\"https:\/\/scruss.com\/wordpress\/wp-content\/uploads\/2023\/05\/Black-billed_Cuckoo-74-2023-05-10-birdnet-130222.webm\"><\/video><figcaption class=\"wp-element-caption\">Black-Billed Cuckoo? How about kids playing in the school yard?<\/figcaption><\/figure>\n\n\n\n<figure class=\"wp-block-video\"><video height=\"468\" style=\"aspect-ratio: 720 \/ 468;\" width=\"720\" controls src=\"https:\/\/scruss.com\/wordpress\/wp-content\/uploads\/2023\/05\/Common_Loon-77-2023-05-08-birdnet-194018.webm\"><\/video><figcaption class=\"wp-element-caption\">Emergency vehicles are Common Loons now, according to BirdNetPi<\/figcaption><\/figure>\n\n\n\n<figure class=\"wp-block-video\"><video height=\"466\" style=\"aspect-ratio: 720 \/ 466;\" width=\"720\" controls src=\"https:\/\/scruss.com\/wordpress\/wp-content\/uploads\/2023\/05\/Eastern_Screech-Owl-91-2023-05-16-birdnet-022445.webm\"><\/video><figcaption class=\"wp-element-caption\">Police cars at 2:24 am are Eastern Screech-Owls. I wonder if we could use this classifier to detect over-policed, under-served neighbourhoods?<\/figcaption><\/figure>\n\n\n\n<figure class=\"wp-block-video\"><video height=\"468\" style=\"aspect-ratio: 720 \/ 468;\" width=\"720\" controls src=\"https:\/\/scruss.com\/wordpress\/wp-content\/uploads\/2023\/05\/Great_Black-backed_Gull-73-2023-05-10-birdnet-143622.webm\"><\/video><figcaption class=\"wp-element-caption\">Great Black-backed Gulls, or kids playing? The latter<\/figcaption><\/figure>\n\n\n\n<figure class=\"wp-block-video\"><video height=\"466\" style=\"aspect-ratio: 720 \/ 466;\" width=\"720\" controls src=\"https:\/\/scruss.com\/wordpress\/wp-content\/uploads\/2023\/05\/Turkey_Vulture-72-2023-05-07-birdnet-201652.webm\"><\/video><figcaption class=\"wp-element-caption\">Turkey Vulture? How about a very farty two-stroke engine in a bicycle frame driving past? <br>(This thing stinks out the street, blecch)<\/figcaption><\/figure>\n\n\n\n<p>There are also false positive for Trumpeter Swans (local dog) and Tundra Swans (kids playing). These samples had recognizable voices, so I didn&#8217;t include them here.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">The 30 positive species identifications<\/h2>\n\n\n\n<p>Many of these have a fairly loud click at the start of the sample, so mind your ears.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><a href=\"https:\/\/www.allaboutbirds.org\/guide\/American_Goldfinch\">American Goldfinch<\/a><\/h3>\n\n\n\n<p><video controls=\"controls\" src=\"https:\/\/scruss.com\/wordpress\/wp-content\/uploads\/2023\/05\/American_Goldfinch-94-2023-05-11-birdnet-063959.webm\"><\/video><\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><a href=\"https:\/\/www.allaboutbirds.org\/guide\/American_Robin\">American Robin<\/a><\/h3>\n\n\n\n<p><video controls=\"controls\" src=\"https:\/\/scruss.com\/wordpress\/wp-content\/uploads\/2023\/05\/American_Robin-98-2023-05-16-birdnet-043946.webm\"><\/video><\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><a href=\"https:\/\/www.allaboutbirds.org\/guide\/Baltimore_Oriole\">Baltimore Oriole<\/a><\/h3>\n\n\n\n<p><video controls=\"controls\" src=\"https:\/\/scruss.com\/wordpress\/wp-content\/uploads\/2023\/05\/Baltimore_Oriole-83-2023-05-13-birdnet-061715.webm\"><\/video><\/p>\n\n\n\n<p>(I dunno what&#8217;s going on here; the next sample&#8217;s much more representative)<\/p>\n\n\n\n<p><video controls=\"controls\" src=\"https:\/\/scruss.com\/wordpress\/wp-content\/uploads\/2023\/05\/Baltimore_Oriole-84-2023-05-11-birdnet-073314.webm\"><\/video><\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><a href=\"https:\/\/www.allaboutbirds.org\/guide\/Blue_Jay\">Blue Jay<\/a><\/h3>\n\n\n\n<p><video controls=\"controls\" src=\"https:\/\/scruss.com\/wordpress\/wp-content\/uploads\/2023\/05\/Blue_Jay-82-2023-05-10-birdnet-115736.webm\"><\/video><\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><a href=\"https:\/\/www.allaboutbirds.org\/guide\/Cedar_Waxwing\">Cedar Waxwing<\/a><\/h3>\n\n\n\n<p><video controls=\"controls\" src=\"https:\/\/scruss.com\/wordpress\/wp-content\/uploads\/2023\/05\/Cedar_Waxwing-96-2023-05-12-birdnet-084554.webm\"><\/video><\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><a href=\"https:\/\/www.allaboutbirds.org\/guide\/Chimney_Swift\">Chimney Swift<\/a><\/h3>\n\n\n\n<p><video controls=\"controls\" src=\"https:\/\/scruss.com\/wordpress\/wp-content\/uploads\/2023\/05\/Chimney_Swift-97-2023-05-11-birdnet-204535.webm\"><\/video><\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><a href=\"https:\/\/www.allaboutbirds.org\/guide\/Clay-colored_Sparrow\">Clay-colored Sparrow<\/a><\/h3>\n\n\n\n<p><video controls=\"controls\" src=\"https:\/\/scruss.com\/wordpress\/wp-content\/uploads\/2023\/05\/Clay-colored_Sparrow-86-2023-05-13-birdnet-060245.webm\"><\/video><\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><a href=\"https:\/\/www.allaboutbirds.org\/guide\/Common_Grackle\">Common Grackle<\/a><\/h3>\n\n\n\n<p><video controls=\"controls\" src=\"https:\/\/scruss.com\/wordpress\/wp-content\/uploads\/2023\/05\/Common_Grackle-95-2023-05-08-birdnet-134755.webm\"><\/video><\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><a href=\"https:\/\/www.allaboutbirds.org\/guide\/Common_Raven\">Common Raven<\/a><\/h3>\n\n\n\n<p><video controls=\"controls\" src=\"https:\/\/scruss.com\/wordpress\/wp-content\/uploads\/2023\/05\/Common_Raven-83-2023-05-13-birdnet-064045.webm\"><\/video><\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><a href=\"https:\/\/www.allaboutbirds.org\/guide\/Gray_Catbird\">Gray Catbird<\/a><\/h3>\n\n\n\n<p><video controls=\"controls\" src=\"https:\/\/scruss.com\/wordpress\/wp-content\/uploads\/2023\/05\/Gray_Catbird-81-2023-05-14-birdnet-102350.webm\"><\/video><\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><a href=\"https:\/\/www.allaboutbirds.org\/guide\/Hermit_Thrush\">Hermit Thrush<\/a><\/h3>\n\n\n\n<p><video controls=\"controls\" src=\"https:\/\/scruss.com\/wordpress\/wp-content\/uploads\/2023\/05\/Hermit_Thrush-85-2023-05-13-birdnet-051729.webm\"><\/video><\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><a href=\"https:\/\/www.allaboutbirds.org\/guide\/House_Finch\">House Finch<\/a><\/h3>\n\n\n\n<p><video controls=\"controls\" src=\"https:\/\/scruss.com\/wordpress\/wp-content\/uploads\/2023\/05\/House_Finch-86-2023-05-13-birdnet-175805.webm\"><\/video><\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><a href=\"https:\/\/www.allaboutbirds.org\/guide\/House_Sparrow\">House Sparrow<\/a><\/h3>\n\n\n\n<p><video controls=\"controls\" src=\"https:\/\/scruss.com\/wordpress\/wp-content\/uploads\/2023\/05\/House_Sparrow-87-2023-05-07-birdnet-071113.webm\"><\/video><\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><a href=\"https:\/\/www.allaboutbirds.org\/guide\/Killdeer\">Killdeer<\/a><\/h3>\n\n\n\n<p><video controls=\"controls\" src=\"https:\/\/scruss.com\/wordpress\/wp-content\/uploads\/2023\/05\/Killdeer-92-2023-05-14-birdnet-071504.webm\"><\/video><\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><a href=\"https:\/\/www.allaboutbirds.org\/guide\/Mourning_Dove\">Mourning Dove<\/a><\/h3>\n\n\n\n<p><video controls=\"controls\" src=\"https:\/\/scruss.com\/wordpress\/wp-content\/uploads\/2023\/05\/Mourning_Dove-84-2023-05-07-birdnet-192336.webm\"><\/video><\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><a href=\"https:\/\/www.allaboutbirds.org\/guide\/Nashville_Warbler\">Nashville Warbler<\/a><\/h3>\n\n\n\n<p><video controls=\"controls\" src=\"https:\/\/scruss.com\/wordpress\/wp-content\/uploads\/2023\/05\/Nashville_Warbler-77-2023-05-14-birdnet-084349.webm\"><\/video><\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><a href=\"https:\/\/www.allaboutbirds.org\/guide\/Northern_Cardinal\">Northern Cardinal<\/a><\/h3>\n\n\n\n<p>Hey, we&#8217;ve got both of the repetitive songs that these little doozers chirp out all day. Song 1:<\/p>\n\n\n\n<p><video controls=\"controls\" src=\"https:\/\/scruss.com\/wordpress\/wp-content\/uploads\/2023\/05\/Northern_Cardinal-93-2023-05-10-birdnet-051220.webm\"><\/video><\/p>\n\n\n\n<p>and song 2 \u2026<\/p>\n\n\n\n<p><video controls=\"controls\" src=\"https:\/\/scruss.com\/wordpress\/wp-content\/uploads\/2023\/05\/Northern_Cardinal-95-2023-05-11-birdnet-145447.webm\"><\/video><\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><a href=\"https:\/\/www.allaboutbirds.org\/guide\/Northern_Parula\">Northern Parula<\/a><\/h3>\n\n\n\n<p><video controls=\"controls\" src=\"https:\/\/scruss.com\/wordpress\/wp-content\/uploads\/2023\/05\/Northern_Parula-81-2023-05-13-birdnet-062815.webm\"><\/video><\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><a href=\"https:\/\/www.allaboutbirds.org\/guide\/Orchard_Oriole\">Orchard Oriole<\/a><\/h3>\n\n\n\n<p><video controls=\"controls\" src=\"https:\/\/scruss.com\/wordpress\/wp-content\/uploads\/2023\/05\/Orchard_Oriole-77-2023-05-13-birdnet-055429.webm\"><\/video><\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><a href=\"https:\/\/www.allaboutbirds.org\/guide\/Ovenbird\">Ovenbird<\/a><\/h3>\n\n\n\n<p><video controls=\"controls\" src=\"https:\/\/scruss.com\/wordpress\/wp-content\/uploads\/2023\/05\/Ovenbird-92-2023-05-12-birdnet-053954.webm\"><\/video><\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><a href=\"https:\/\/www.allaboutbirds.org\/guide\/Red-winged_Blackbird\">Red-winged Blackbird<\/a><\/h3>\n\n\n\n<p><video controls=\"controls\" src=\"https:\/\/scruss.com\/wordpress\/wp-content\/uploads\/2023\/05\/Red-winged_Blackbird-81-2023-05-09-birdnet-105014.webm\"><\/video><\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><a href=\"https:\/\/www.allaboutbirds.org\/guide\/Ring-billed_Gull\">Ring-billed Gull<\/a><\/h3>\n\n\n\n<p><video controls=\"controls\" src=\"https:\/\/scruss.com\/wordpress\/wp-content\/uploads\/2023\/05\/Ring-billed_Gull-93-2023-05-12-birdnet-162453.webm\"><\/video><\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><a href=\"https:\/\/www.allaboutbirds.org\/guide\/Rose-breasted_Grosbeak\">Rose-breasted Grosbeak<\/a><\/h3>\n\n\n\n<p><video controls=\"controls\" src=\"https:\/\/scruss.com\/wordpress\/wp-content\/uploads\/2023\/05\/Rose-breasted_Grosbeak-94-2023-05-15-birdnet-053724.webm\"><\/video><\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><a href=\"https:\/\/www.allaboutbirds.org\/guide\/Ruby-crowned_Kinglet\">Ruby-crowned Kinglet<\/a><\/h3>\n\n\n\n<p><video controls=\"controls\" src=\"https:\/\/scruss.com\/wordpress\/wp-content\/uploads\/2023\/05\/Ruby-crowned_Kinglet-96-2023-05-10-birdnet-071451.webm\"><\/video><\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><a href=\"https:\/\/www.allaboutbirds.org\/guide\/Song_Sparrow\">Song Sparrow<\/a><\/h3>\n\n\n\n<p><video controls=\"controls\" src=\"https:\/\/scruss.com\/wordpress\/wp-content\/uploads\/2023\/05\/Song_Sparrow-86-2023-05-14-birdnet-062419.webm\"><\/video><\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><a href=\"https:\/\/www.allaboutbirds.org\/guide\/Veery\">Veery<\/a><\/h3>\n\n\n\n<p><video controls=\"controls\" src=\"https:\/\/scruss.com\/wordpress\/wp-content\/uploads\/2023\/05\/Veery-89-2023-05-13-birdnet-080115.webm\"><\/video><\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><a href=\"https:\/\/www.allaboutbirds.org\/guide\/Warbling_Vireo\">Warbling Vireo<\/a><\/h3>\n\n\n\n<p><video controls=\"controls\" src=\"https:\/\/scruss.com\/wordpress\/wp-content\/uploads\/2023\/05\/Warbling_Vireo-85-2023-05-13-birdnet-084931.webm\"><\/video><\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><a href=\"https:\/\/www.allaboutbirds.org\/guide\/White-throated_Sparrow\">White-throated Sparrow<\/a><\/h3>\n\n\n\n<p><video controls=\"controls\" src=\"https:\/\/scruss.com\/wordpress\/wp-content\/uploads\/2023\/05\/White-throated_Sparrow-80-2023-05-13-birdnet-052659.webm\"><\/video><\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><a href=\"https:\/\/www.allaboutbirds.org\/guide\/White-winged_Crossbill\">White-winged Crossbill<\/a><\/h3>\n\n\n\n<p><video controls=\"controls\" src=\"https:\/\/scruss.com\/wordpress\/wp-content\/uploads\/2023\/05\/White-winged_Crossbill-90-2023-05-13-birdnet-174150.webm\"><\/video><\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><a href=\"https:\/\/www.allaboutbirds.org\/guide\/Wood_Thrush\">Wood Thrush<\/a><\/h3>\n\n\n\n<p><video controls=\"controls\" src=\"https:\/\/scruss.com\/wordpress\/wp-content\/uploads\/2023\/05\/Wood_Thrush-97-2023-05-11-birdnet-053629.webm\"><\/video><\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Boring technical bit<\/h2>\n\n\n\n<p>BirdNetPi doesn&#8217;t create combined spectrograms with audio as a single video file. What it does do is create an mp3 plus a PNG of the spectrogram. ffmpeg can make a nice not-too-large webm video for sharing:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>ffmpeg -loop 1 -y -i 'birb.mp3.png' -i 'birb.mp3' -ac 1 -crf 48 -vf scale=720:-2 -shortest 'birb.webm'<\/code><\/pre>\n\n\n\n<p>(Minor update, May 2024: the original project maintainer has moved on, so I changed the project link to point to <a href=\"https:\/\/github.com\/Nachtzuster\/BirdNET-Pi\">Nachtzuster\/BirdNET-Pi: A realtime acoustic bird classification system for the Raspberry Pi 5, 4B 3B+ 0W2 and more. Built on the TFLite version of BirdNET.<\/a>)<\/p>\n","protected":false},"excerpt":{"rendered":"<p>I don&#8217;t think I&#8217;ve had as much enjoyment for a piece of software for a very long time as I&#8217;ve had with BirdNET-Pi. It&#8217;s a realtime acoustic bird classification system for the Raspberry Pi. It listens through a microphone you place somewhere near where you can hear birds, and it&#8217;ll go off and guess what [&hellip;]<\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_publicize_message":"","jetpack_publicize_feature_enabled":true,"jetpack_social_post_already_shared":true,"jetpack_social_options":{"image_generator_settings":{"template":"highway","default_image_id":0,"font":"","enabled":false},"version":2}},"categories":[7],"tags":[2527,1104,3123,847,2510],"class_list":["post-17190","post","type-post","status-publish","format-standard","hentry","category-computers-suck","tag-ambient","tag-audio","tag-birb","tag-bird","tag-raspberrypi"],"jetpack_publicize_connections":[],"jetpack_featured_media_url":"","jetpack_shortlink":"https:\/\/wp.me\/pQNZZ-4tg","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/scruss.com\/blog\/wp-json\/wp\/v2\/posts\/17190","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/scruss.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/scruss.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/scruss.com\/blog\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/scruss.com\/blog\/wp-json\/wp\/v2\/comments?post=17190"}],"version-history":[{"count":7,"href":"https:\/\/scruss.com\/blog\/wp-json\/wp\/v2\/posts\/17190\/revisions"}],"predecessor-version":[{"id":17969,"href":"https:\/\/scruss.com\/blog\/wp-json\/wp\/v2\/posts\/17190\/revisions\/17969"}],"wp:attachment":[{"href":"https:\/\/scruss.com\/blog\/wp-json\/wp\/v2\/media?parent=17190"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/scruss.com\/blog\/wp-json\/wp\/v2\/categories?post=17190"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/scruss.com\/blog\/wp-json\/wp\/v2\/tags?post=17190"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}