Hua Hin
Contact Subscribe
🇬🇧 EN
🇫🇷 Français 🇬🇧 English
Instants Ordinaires

Photography & Blog

It all started with a comment

Published on 13 August 2026 · technology

Seven mornings and one evening of listening at Baan Sansuk, Hua Hin

A reader replied, under one of my photos, that if Merlin was not performing well in Thailand I should try BirdNET Live. Seven days later I had thirty-two listening sessions, more than six hours of recordings, and a picture of the birds that live in my neighbourhood.

Merlin covers Southeast Asia poorly

Merlin’s Sound ID covers North America, Europe, the western Palearctic, partly India and the Neotropics. Here it works, but only halfway: the app itself announces 38% of the species in my area. This is not a flaw in the software.

The model needs an annotated corpus, meaning hundreds of recordings archived at the Macaulay Library and then annotated by specialists. That corpus follows the density of eBird contributors. Where few people upload recordings, there is nothing to teach the model.

BirdNET makes the other choice. The model I use claims 9,789 species, birds but also amphibians, mammals and insects, worldwide. Broader, less checked, so more false positives to sort through.

The two apps side by side

On the seventh morning I decided to check instead of assuming. Both phones on the balcony table together: BirdNET Live on my iPhone 13 Pro Max, Merlin on a OnePlus running Android. Same table, same moment, eleven minutes each, from 6:57 to 7:09.

Looking down at the balcony table: two phones side by side on a placemat, a notebook, a pair of binoculars and a coffee

The two phones on the balcony table on the seventh morning: BirdNET Live on one, Merlin on the other.

Merlin seven species, BirdNET twelve. Six in common: Common Myna, Common Tailorbird, Black-naped Oriole, Ashy Woodswallow, House Swift, Zebra Dove.

The six Merlin does not pick up are not borderline cases: Coppersmith Barbet at 0.82, Streak-eared Bulbul at 0.85, Scaly-breasted Munia at 0.93. Clean detections.

During the three previous sessions Merlin was picking up the waders too: the Red-wattled Lapwing, the sandpiper and the greenshank. They appeared on both screens at the same instant, while BirdNET was lining them up on its side.

According to my assistant Claude, both come out of the same house. BirdNET was born at the technical university of Chemnitz, in Saxony, in the hands of Stefan Kahl — and the project is run together with the bioacoustics centre of the Cornell Lab of Ornithology. Merlin and eBird are products of that same Cornell Lab, and Merlin’s Sound ID was built with BirdNET technology.

Merlin is a field guide: restricted regional catalogue, simple answer, nothing to export. BirdNET Live is a measuring instrument: 9,789 species, probabilistic geographic filter, export to Raven and JSON. The interfaces follow from that, and it is why I stayed with BirdNET.

The setup

I record from the balcony table, fourth floor, a hundred metres from the sea. No specialised equipment, no external microphone. Thirty-two sessions from 4 to 10 August, 384 minutes in total. Twenty-seven from the balcony in the morning, between 6:00 and 8:35; four late in the morning on 7 August, between 10:20 and 11:40, this time down inside the wooded strip itself; one on the evening of the 9th, from the balcony. Confidence threshold 35%, 3-second analysis window, geographic filter on.

Phone standing on the balcony table, showing the list of species detected during the session

End of session #29, 9 August at 6:38: 7 minutes 44, eight detections, five species.

I soon came to prefer many short sessions. A long one saturates: after a few minutes I was hearing the same individuals on the same perches again. Another hour, another day, and the sample was fresh.

The sessions follow one another more or less at random. I am not doing science, I am enjoying myself learning.

What the numbers say

771 detections, 38 species, median confidence 0.69, only 9% of detections above 0.90.

About that confidence figure: Claude explains that it compares the curve heard against the models. It only says how closely the sound resembles what the model has learned. It serves to rank detections against each other — the one at 0.85 is safer than the one at 0.55 — but not to know how many times in a hundred the software gets it wrong.

The accumulation curve says more than the total. Five species in the first session, eleven in the second, twenty-one by the fourth, then it slows down sharply. By the thirteenth I was at twenty-eight and added nothing for four sessions. The twenty-ninth arrived in the seventeenth, and I thought the series was closed.

The fifth morning proved otherwise, and I had planned nothing of the sort. I was due to leave for Kaeng Krachan, I got up a little late, and at 6:30 it was so pleasant on the balcony that I made my tea and started listening. Five more sessions, two new species, a Spotted Owlet and a Brown-throated Sunbird, arriving in the eighteenth and the nineteenth. The curve does not flatten, it drags. Four sessions with nothing new do not mean the place is exhausted, only that what is left is rare, secretive, or passing through.

The sixth morning did the same. Five sessions between 6:00 and 8:00, four more species. A White-breasted Waterhen, which called in three consecutive sessions without my hearing it. A Black Drongo. And two waders, Common Sandpiper and Common Greenshank, which come neither from the woodland nor from the stadium but from the beach — the third habitat.

On the evening of the 9th, same phone, same table, at 18:36. The sun sets at 18:43 here. Twenty-eight minutes kept, twenty detections, five species and none of them new. Seven detections per ten minutes against twenty in the morning. The kingfisher opens at 18:38, then nine Oriental Magpie-Robins follow one another, then eight House Swifts, and by 19:02 it is over. I had forgotten I was recording, the machine ran on by itself until 20:29 and picked up nothing but a Red-wattled Lapwing at 20:05 and another at 20:13. I only count up to 19:05 for the analyses.

On the seventh morning it was raining. Low sky, steady drizzle for a good hour, then a brightening that did not take the grey away. I expected nothing and listened anyway, four sessions back to back from 6:00 to 7:09.

It is the best morning of the series. Twenty-three species, 166 detections in 67 minutes, 25 per ten minutes where the other mornings run at 22. Three new species: an Asian Palm Swift, a Black-collared Starling at 0.56, and an Osprey at 0.80, on a single detection — the sea is a hundred metres away, I am keeping it. And one twenty-minute session, at 6:36, that lines up 25 Red-wattled Lapwings and 12 kingfishers.

After twenty-eight sessions I thought I had a ceiling: the estimate had fallen back to 48. That morning sends it to 53. It is not the list getting longer, three species only. It is three more singletons, and that is all the estimator measures, the share of rarity still left.

Curve of cumulative species against listening time, from 5 species to 38 over 384 minutes

Each point is a session. The dotted line is an estimate of the total, not a count: 34 species after twelve sessions, 44 after twenty-two, 53 after twenty-seven, 48 after twenty-eight, 53 after thirty-two.

The Common Myna dominates everything with 246 detections, a third. That does not mean it is four times more numerous than the Streak-eared Bulbul, only that it is loud, close, and vocalises in a frequency band the phone picks up well.

No two mornings are alike. On that fifth morning the Coppersmith Barbet and the Asian Koel gave 44 of the 138 detections between them, against 22 over the four previous mornings combined. The species list barely moves, the proportions change completely. One more reason not to conclude anything from a single session.

The White-throated Kingfisher gave Claude some work: 42 detections, 16 of them in the 7:00 hour. Trying to pin down peaks of activity strikes me as somewhat illusory…

Timeline of the 42 kingfisher detections over seven mornings and one evening

Each grey bar is a session, each dot a detection. On 6 August it is talkative between 7:00 and 7:35, on the 7th it only appears after 8:10. Late in the morning nothing, but it opens the evening of the 9th.

Now the other species. The koel calls early and falls silent before 7:00. The Zebra Dove holds one slot and nothing around it. The Streak-eared Bulbul sings much the same from one end of the morning to the other. Two absentees. The Common Myna, found everywhere here and at any hour: its curve teaches nothing. The Coppersmith Barbet, more than half of whose 52 detections come from two mornings: it would speak of my schedule rather than of the bird.

Hourly profiles of four species: Asian Koel, White-throated Kingfisher, Zebra Dove, Streak-eared Bulbul

Each panel has its own scale: what counts is the shape, not the height.

What the map explains

Aerial view of Baan Sansuk, the wooded strip outlined in red, the balcony as a blue dot, the municipal stadium to the southwest

The blue dot is the balcony, the red outline the wooded strip, the municipal stadium is marked to the southwest. The sea is on the right.

View from the balcony: a frangipani in the foreground, a bedded vegetable garden below, then the wooded strip, two towers and a hill on the horizon

The wooded strip seen from the table, from the fourth floor.

Putting the list onto an aerial view, Claude points out: on one side woodland birds, Common Tailorbird, iora, Scarlet-backed Flowerpecker, sunbird, Asian Barred Owlet. On the other, open-ground birds: Red-wattled Lapwing, Scaly-breasted Munia, Zebra Dove, Ashy Woodswallow, sparrows.

No garden produces that combination. It comes from two contrasting habitats sitting side by side, the woodland below me and the municipal stadium pitch some two hundred metres to the south-southwest, to which the coastal strip has to be added.

The wooded strip runs about 250 metres, some sixty wide on the road side and close to twice that as it approaches the beach. It is not isolated, it sits within a continuous ribbon of trees running several hundred metres along the coast. That explains the high turnover from one session to the next. Many birds pass through rather than live there.

A party of Black-winged Stilts makes the point: seven detections between 6:48 and 6:55, then nothing for the rest of the series. The two waders are the same kind of thing: one detection each on the sixth morning, then four sandpipers in thirty seconds on the seventh and nothing more. Those come neither from the woodland nor from the stadium, they follow the coast.

Going down into the strip

On the morning of the 7th, a little after ten, I wanted to see from the inside what I had been listening to from above.

The first dirt track ends at a closed gate: Private property. I carry on, take the paved access and run into the caretaker — behind the garden there is a small hotel, tucked into the woodland. I show my camera, I say I have come to see the birds. He hesitates. I insist, quietly sure of myself, and he lets me through.

Near the garden, a younger man who works there. I ask whether I can stay by the stone bench. He hesitates too, shakes his head more or less no, then catches sight of an old gentleman and speaks to him in Thai. I come over and put my question again. The answer comes without a pause: yes, you can, there are many birds, you have to stay a long time, wait. Stay as long as you like. Come back whenever you like.

You have to stay a long time, wait. It is the best advice I was given all week.

I ask him whether I can go into the wooded strip next to his garden. He thinks about it. Yes, but be careful, there may be small snakes on the ground.

I stay an hour in the garden. On that side the woodland is closed off, fencing and vegetation too dense, so I leave by the beach. I cross the hotel after asking at reception, who let me through without fuss: small buildings spaced out among the greenery, a swimming pool right at the end, against the sand. Under the restaurant patio, the old gentleman, having his lunch, gives me a nod.

I follow the low stone wall, find a built stairway — no gate this time, an abandoned house — and finally reach the path. A little further on an old building that looks lived in, nobody outside.

Four sessions late in the morning, thirty-four minutes, eight species. Not one I did not already have, except a Barn Swallow on a single detection — the one Claude doubts most, the species wintering here and having no business around in August. The detection rate drops too, from 18 to 23 per ten minutes in the morning to 12.9 late in the morning.

I was about to leave, a movement in the branches and there they were, the Common Tailorbird and the Sunda Pied Fantail. Three days hearing them without ever having seen them. The app let me recognise them at once. I stayed a good hour listening and photographing, then walked back along the beach.

The microphone taught me nothing new in the understorey, my eyes did. For the microphone, the balcony remains the better post: high up, in the open, at the interface of the habitats. For the eye, I had to go down.

What the microphone doesn’t hear

Three species I see regularly from that balcony were never detected. Not once in 771. Greater Coucal, Rufous Treepie, Eurasian Hoopoe.

According to Claude, they share a profile. Low-pitched voices — the coucal sits around 200 to 400 Hz, the hoopoe around 500 Hz in an almost pure tone. Species that are not very vocal, often foraging on the ground, and fairly large. On top of that, smartphone microphones apply a high-pass filter upstream, over which the user has no control at all.

The Common Tailorbird is the seventh species in the table, 37 detections across seventeen sessions, and I had never seen it before that walk.

The White-throated Kingfisher let itself be seen in its turn on that fifth morning, and photographed. I was not watching for it, I was sitting there with my tea. It was indeed its hour, chance once again…

White-throated Kingfisher perched on a bamboo frame, blue back and brown head, against a background of foliage

The White-throated Kingfisher, fifth morning. Seen many times, photographed once.

On the seventh morning it was in the garden, and so was the Eurasian Hoopoe.

The other way round, the three missed species are the most photogenic of the whole list. Large, contrasted, slow, perching in the open. I am far away, and only the coucal really let itself be photographed.

Five identifications remain doubtful: the Barn Swallow already mentioned, the two sparrows, the white-eye, a Red Junglefowl that is very probably a neighbourhood chicken, and a Black-collared Starling that turned up on the last morning, alone, at 0.56.

The two waders are a case apart. They are supposed to winter here, not spend the summer. The sandpiper was at first a single detection, then four more fell on the seventh morning within the same minute, up to 0.96. Early August is when the first migrants come back down, and the sea is a hundred metres away. I am keeping them.

Merlin was showing them at the same moment, on the other phone. Two engines, two microphones, the same bird in the same second.

Then there is an owl problem. The fifth morning gave a Spotted Owlet, one detection at 0.65, while the list already held an Asian Barred Owlet, one detection at 0.75. Two small daytime owls in the same garden, one detection each. The Spotted Owlet is the ordinary species of towns and lowland gardens; the Asian Barred Owlet belongs rather to the forests of the north and the hills.

The Greater Racket-tailed Drongo is besides a remarkable mimic, perfectly capable of generating detections of species that are not there.

Appendix — the 41 species

Thirty-two sessions, 384 minutes, 4 to 10 August 2026. BirdNET Live 1.0.3, BirdNET+ V3.0-preview3.1 Global 10K-pruned model, 35% confidence threshold, 3-second window, geographic filter on, iPhone with no external microphone. An empty “seen” cell means “no visual observation recorded”, not “never seen”.

Species French name Det. Sess. Mean conf. Seen
Common Myna Martin triste 246 29 0.68
Streak-eared Bulbul Bulbul de Conrad 66 24 0.70
Oriental Magpie-Robin Shama dayal 54 15 0.67
Coppersmith Barbet Barbu à plastron rouge 52 10 0.68
Zebra Dove Géopélie zébrée 49 17 0.61 photographed
White-throated Kingfisher Martin-chasseur de Smyrne 42 12 0.84 photographed
Common Tailorbird Couturière à longue queue 37 17 0.75 photographed
House Swift Martinet des maisons 36 13 0.72
Asian Koel Koel maliniste 32 11 0.82
Red-wattled Lapwing Vanneau indien 27 3 0.75
Sunda Pied Fantail Rhipidure pie 18 8 0.69 photographed
Ashy Woodswallow Langrayen brun 16 8 0.69
Scaly-breasted Munia Capucin damier 13 10 0.79
Red Junglefowl Coq bankiva 11 4 0.62 probably a chicken
White-breasted Waterhen Râle à poitrine blanche 9 4 0.72
Black-winged Stilt Échasse blanche 7 1 0.68
Black-naped Oriole Loriot à nuque noire 6 3 0.70
House Sparrow Moineau domestique 6 4 0.61 doubtful identification
Common Sandpiper Chevalier guignette 5 2 0.87
Ornate Sunbird Souimanga élégant 5 3 0.60
Common Iora Petit iora 4 2 0.69
Scarlet-backed Flowerpecker Dicée à dos rouge 4 4 0.60
Eurasian Tree Sparrow Moineau friquet 3 3 0.62 doubtful identification
Greater Racket-tailed Drongo Drongo à raquettes 3 1 0.52
Large-billed Crow Corbeau à gros bec 3 1 0.72
Yellow-vented Bulbul Bulbul goiavier 3 3 0.63
Barn Swallow Hirondelle rustique 2 2 0.75 doubtful identification
Common Greenshank Chevalier aboyeur 2 2 0.70
Asian Barred Owlet Chevêchette cuculoïde 1 1 0.75 doubtful identification
Asian Palm Swift Martinet des palmes 1 1 0.87
Black Drongo Drongo royal 1 1 0.75
Black-collared Starling Étourneau à cou noir 1 1 0.56 doubtful identification
Brown-throated Sunbird Souimanga à gorge brune 1 1 0.66
Indian White-eye Zostérops oriental 1 1 0.59 doubtful identification
Osprey Balbuzard pêcheur 1 1 0.80
Red-whiskered Bulbul Bulbul orphée 1 1 0.87
Spotted Dove Tourterelle tigrine 1 1 0.66
Spotted Owlet Chevêche brame 1 1 0.65
Greater Coucal Grand coucal 0 0 photographed
Rufous Treepie Témia vagabonde 0 0 photographed
Eurasian Hoopoe Huppe fasciée 0 0 seen

One email when I publish. Nothing else.

No schedule, no promotion. Unsubscribe in one click.

Your address is used for this email only and is never shared. Privacy