191:, as it is expected that many applications will be making sounds (music decoders, event based sounds, video conferencing, etc.). The ESD daemon connects to the sound device and accepts connections from multiple clients, mixing the incoming audio streams and sending the result to the sound device. Connections are only allowed to clients that can authenticate successfully, alleviating the concern that unauthorized users can eavesdrop via the sound device. In addition to accepting client connections from the local machine, ESD can be configured to accept client connections from remote hosts that authenticate successfully.
1219:
227:
25:
1231:
1251:
1241:
1205:
195:
client local to the machine that the ESD daemon is running on, the data is transferred through a local socket, then written to the sound device by the ESD daemon. For a client on a remote machine, the data is sent by libesd on the remote machine over the network to the ESD daemon. The process is completely transparent to the application using ESD.
133:
than one application to share an open device. ESD accomplishes these things while remaining transparent to the application, meaning that the application developer can simply provide ESD support and let it do the rest. On top of this, the API is designed to be very similar to the current audio device API, making it easy to port to ESD.
132:
is a small sound daemon for both Linux and UNIX. ESD was created to provide a consistent and simple interface to the audio device, so applications do not need to have different driver support written per architecture. It was also designed to enhance capabilities of audio devices such as allowing more
194:
Applications wanting to contact the ESD daemon do so using the libesd library. Much like with file i/o, an ESD connection is first opened. The ESD daemon will be spawned automatically by libesd if a daemon is not already present. Data is then either read or written to the ESD daemon. For an ESD
157:. Since ESD has been around for over a decade, earlier than almost any other sound server, a very large number of Unix applications have support for ESD output built-in, or available as add-ons.
1254:
618:
425:
380:
187:(OSS), as well as other UNIX systems, typically only one process may open the sound device. This is not acceptable in a desktop environment like
1147:
1285:
150:. As such, an application that supports ESD can output audio over the network, to any connected computer that is running an ESD server.
315:
183:
Esound (ESD) is a stand-alone sound daemon that abstracts the system sound device to multiple clients. Under Linux using the
136:
ESD will mix the simultaneous audio output of multiple running programs, and output the resulting stream to the sound card.
1223:
232:
89:
1295:
1097:
319:
160:
ESD was maintained as part of the GNOME project, but as of April 2009, all ESD modules in GNOME have been ported to
153:
ESD support must be specifically written and added into applications, as ESD does not emulate normal audio hardware
638:
61:
345:
121:
582:
243:- new, in development, unified sound and video server which aims to be able to replace PulseAudio, JACK and
1280:
1044:
857:
1039:
899:
216:
1290:
475:
450:
362:
1244:
924:
827:
654:
991:
959:
852:
837:
613:
144:
832:
677:
598:
8:
954:
904:
766:
577:
385:
338:
38:
Please help update this article to reflect recent events or newly available information.
1092:
741:
603:
147:
1152:
914:
842:
771:
415:
309:
184:
264:
1183:
1142:
1122:
682:
410:
390:
375:
278:
140:
73:
1173:
1064:
909:
776:
736:
633:
526:
480:
1275:
1234:
1087:
984:
521:
430:
420:
331:
1269:
1188:
1012:
623:
485:
470:
1209:
1102:
672:
435:
292:
117:
66:
878:
847:
708:
703:
698:
531:
500:
405:
395:
370:
161:
1178:
1112:
1107:
883:
204:
169:
1157:
1082:
1072:
667:
541:
440:
244:
165:
101:
1117:
1027:
1017:
919:
873:
572:
536:
240:
1054:
1049:
1034:
979:
761:
720:
715:
516:
490:
78:
662:
567:
557:
465:
400:
1077:
1007:
969:
756:
751:
746:
628:
608:
495:
354:
210:
188:
125:
1022:
974:
562:
219:– prevailing sound server for professional audio production
1204:
949:
944:
154:
323:
222:
1267:
175:PulseAudio 2.0 completely drops ESounD support.
207:– prevailing sound server for Linux desktop use
339:
265:"Lennart's Blog aggregated on Planet Gnome"
346:
332:
1224:Free and open-source software portal
178:
1268:
327:
1240:
233:Free and open-source software portal
18:
1250:
310:Current Gnome EsounD source archive
13:
1286:Enlightenment Foundation Libraries
90:www.tux.org/~ricdude/overview.html
14:
1307:
303:
1249:
1239:
1230:
1229:
1217:
1203:
225:
23:
285:
271:
257:
1:
250:
7:
293:"libcanberra docomentation"
213:- sound server from OpenBSD
198:
93:(archive date: 2016 May 28)
10:
1312:
1197:
1166:
1135:
1063:
1000:
937:
892:
866:
820:
803:
796:
789:
729:
691:
647:
591:
550:
509:
458:
449:
361:
353:
217:JACK Audio Connection Kit
85:
72:
60:
32:This article needs to be
1296:Audio software for Linux
476:Glade Interface Designer
312:(current Gnome releases)
106:Enlightened Sound Daemon
56:Enlightened Sound Daemon
925:Avant Window Navigator
828:Client-Side Decoration
853:Tango Desktop Project
179:Architecture Overview
172:for everything else.
164:for event sounds or
139:ESD can also manage
1281:Free audio software
57:
55:
1263:
1262:
1153:The GNOME Project
1131:
1130:
933:
932:
785:
784:
619:GNOME Connections
363:Core Applications
279:"libcanberra git"
185:Open Sound System
98:
97:
94:
53:
52:
1303:
1253:
1252:
1243:
1242:
1233:
1232:
1222:
1221:
1220:
1210:Linux portal
1208:
1207:
1184:Havoc Pennington
1143:GNOME Foundation
801:
800:
794:
793:
639:Transmission-gtk
456:
455:
348:
341:
334:
325:
324:
297:
296:
289:
283:
282:
275:
269:
268:
261:
235:
230:
229:
228:
92:
58:
54:
48:
45:
39:
27:
26:
19:
1311:
1310:
1306:
1305:
1304:
1302:
1301:
1300:
1291:Audio libraries
1266:
1265:
1264:
1259:
1218:
1216:
1202:
1193:
1174:Miguel de Icaza
1162:
1127:
1065:freedesktop.org
1059:
996:
929:
888:
862:
816:
781:
737:Archive Manager
725:
687:
643:
587:
546:
505:
445:
357:
352:
306:
301:
300:
291:
290:
286:
277:
276:
272:
263:
262:
258:
253:
231:
226:
224:
201:
181:
49:
43:
40:
37:
28:
24:
17:
12:
11:
5:
1309:
1299:
1298:
1293:
1288:
1283:
1278:
1261:
1260:
1258:
1257:
1247:
1237:
1227:
1213:
1198:
1195:
1194:
1192:
1191:
1186:
1181:
1176:
1170:
1168:
1164:
1163:
1161:
1160:
1155:
1150:
1145:
1139:
1137:
1133:
1132:
1129:
1128:
1126:
1125:
1120:
1115:
1110:
1105:
1100:
1095:
1090:
1088:NetworkManager
1085:
1080:
1075:
1069:
1067:
1061:
1060:
1058:
1057:
1052:
1047:
1042:
1037:
1032:
1031:
1030:
1020:
1015:
1010:
1004:
1002:
998:
997:
995:
994:
989:
988:
987:
982:
972:
967:
966:
965:
962:
957:
952:
941:
939:
935:
934:
931:
930:
928:
927:
922:
917:
912:
907:
902:
896:
894:
890:
889:
887:
886:
881:
876:
870:
868:
864:
863:
861:
860:
855:
850:
845:
840:
835:
830:
824:
822:
818:
817:
815:
814:
811:
807:
805:
798:
797:User interface
791:
787:
786:
783:
782:
780:
779:
774:
769:
764:
759:
754:
749:
744:
739:
733:
731:
727:
726:
724:
723:
718:
713:
712:
711:
706:
695:
693:
689:
688:
686:
685:
680:
678:SoundConverter
675:
670:
665:
660:
657:
651:
649:
645:
644:
642:
641:
636:
631:
626:
621:
616:
611:
606:
601:
595:
593:
589:
588:
586:
585:
580:
575:
570:
565:
560:
554:
552:
548:
547:
545:
544:
539:
534:
529:
524:
519:
513:
511:
507:
506:
504:
503:
498:
493:
488:
483:
478:
473:
468:
462:
460:
453:
447:
446:
444:
443:
438:
433:
428:
423:
418:
413:
408:
403:
398:
393:
388:
383:
378:
373:
367:
365:
359:
358:
351:
350:
343:
336:
328:
322:
321:
317:
313:
305:
304:External links
302:
299:
298:
284:
270:
255:
254:
252:
249:
248:
247:
237:
236:
221:
220:
214:
208:
200:
197:
180:
177:
96:
95:
87:
83:
82:
76:
70:
69:
64:
51:
50:
31:
29:
22:
15:
9:
6:
4:
3:
2:
1308:
1297:
1294:
1292:
1289:
1287:
1284:
1282:
1279:
1277:
1274:
1273:
1271:
1256:
1248:
1246:
1238:
1236:
1228:
1226:
1225:
1214:
1212:
1211:
1206:
1200:
1199:
1196:
1190:
1189:Karen Sandler
1187:
1185:
1182:
1180:
1177:
1175:
1172:
1171:
1169:
1165:
1159:
1156:
1154:
1151:
1149:
1146:
1144:
1141:
1140:
1138:
1134:
1124:
1121:
1119:
1116:
1114:
1111:
1109:
1106:
1104:
1101:
1099:
1096:
1094:
1091:
1089:
1086:
1084:
1081:
1079:
1076:
1074:
1071:
1070:
1068:
1066:
1062:
1056:
1053:
1051:
1048:
1046:
1043:
1041:
1038:
1036:
1033:
1029:
1026:
1025:
1024:
1021:
1019:
1016:
1014:
1011:
1009:
1006:
1005:
1003:
999:
993:
990:
986:
983:
981:
978:
977:
976:
973:
971:
968:
963:
961:
958:
956:
953:
951:
948:
947:
946:
943:
942:
940:
936:
926:
923:
921:
918:
916:
913:
911:
908:
906:
903:
901:
898:
897:
895:
891:
885:
882:
880:
877:
875:
872:
871:
869:
865:
859:
856:
854:
851:
849:
846:
844:
841:
839:
836:
834:
831:
829:
826:
825:
823:
819:
812:
810:Mutter on GSK
809:
808:
806:
802:
799:
795:
792:
788:
778:
775:
773:
770:
768:
765:
763:
760:
758:
755:
753:
750:
748:
745:
743:
740:
738:
735:
734:
732:
728:
722:
719:
717:
714:
710:
707:
705:
702:
701:
700:
697:
696:
694:
690:
684:
681:
679:
676:
674:
671:
669:
666:
664:
661:
658:
656:
653:
652:
650:
646:
640:
637:
635:
632:
630:
627:
625:
624:GNOME Fractal
622:
620:
617:
615:
612:
610:
607:
605:
602:
600:
597:
596:
594:
590:
584:
581:
579:
576:
574:
571:
569:
566:
564:
561:
559:
556:
555:
553:
549:
543:
540:
538:
535:
533:
530:
528:
525:
523:
520:
518:
515:
514:
512:
508:
502:
499:
497:
494:
492:
489:
487:
486:GNOME Devhelp
484:
482:
479:
477:
474:
472:
469:
467:
464:
463:
461:
457:
454:
452:
448:
442:
439:
437:
434:
432:
429:
427:
424:
422:
419:
417:
414:
412:
409:
407:
404:
402:
399:
397:
394:
392:
389:
387:
386:Character Map
384:
382:
379:
377:
374:
372:
369:
368:
366:
364:
360:
356:
349:
344:
342:
337:
335:
330:
329:
326:
320:
318:
316:
314:
311:
308:
307:
294:
288:
280:
274:
267:. 2009-04-05.
266:
260:
256:
246:
242:
239:
238:
234:
223:
218:
215:
212:
209:
206:
203:
202:
196:
192:
190:
186:
176:
173:
171:
167:
163:
158:
156:
151:
149:
146:
142:
137:
134:
131:
127:
123:
122:Enlightenment
119:
115:
111:
107:
103:
91:
88:
84:
80:
77:
75:
71:
68:
65:
63:
59:
47:
35:
30:
21:
20:
1215:
1201:
1103:X.Org Server
747:dconf-editor
673:Sound Juicer
287:
273:
259:
193:
182:
174:
159:
152:
138:
135:
129:
118:sound server
113:
109:
105:
99:
67:sound server
41:
33:
16:Sound server
1255:WikiProject
879:GNOME Panel
848:GNOME Shell
699:GNOME Games
583:Simple Scan
532:GNOME LaTeX
501:Gtranslator
459:Development
416:Text Editor
162:libcanberra
145:transparent
1270:Categories
1179:Luis Villa
1113:PackageKit
1108:PulseAudio
938:GNOME Base
884:Clearlooks
790:Components
391:Dictionary
376:Calculator
251:References
205:PulseAudio
170:PulseAudio
116:) was the
1158:Outreachy
1136:Community
1083:GStreamer
1073:AppStream
833:Cantarell
730:Utilities
668:Rhythmbox
542:OCRFeeder
527:Evolution
245:GStreamer
166:GStreamer
102:computing
44:June 2014
1235:Category
1118:HarfBuzz
1028:GnomeVFS
1018:GNOME-DB
920:GNOME Do
905:Cinnamon
874:Metacity
804:GNOME 40
767:Seahorse
592:Internet
578:Shotwell
573:Inkscape
551:Graphics
537:Gnumeric
431:Terminal
426:Snapshot
421:Software
381:Calendar
241:PipeWire
199:See also
1245:Commons
1098:Wayland
1093:Poppler
1055:libxml2
1050:libxslt
1040:Tracker
1035:Librsvg
1013:Keyring
980:GObject
964:Clutter
900:Adwaita
867:GNOME 2
821:GNOME 3
762:GParted
742:Brasero
721:PyChess
716:gbrainy
659:EasyTag
655:Banshee
604:Empathy
517:AbiWord
491:Nemiver
471:Builder
141:network
86:Website
79:GNU GPL
74:License
34:updated
1167:People
1148:GUADEC
915:Diodon
843:Mutter
772:Tomboy
663:Pitivi
568:gThumb
558:F-Spot
510:Office
466:Anjuta
451:Extras
436:Videos
401:Evince
130:Esound
114:EsounD
104:, the
1276:GNOME
1123:Cairo
1078:D-Bus
1008:dconf
1001:Other
970:Pango
893:Other
757:gnote
752:gedit
709:Mines
704:Chess
692:Games
683:sushi
648:Media
629:Gobby
614:Geary
609:Ekiga
599:Balsa
496:Geany
411:Loupe
406:Files
396:Disks
371:Boxes
355:GNOME
211:Sndio
189:GNOME
148:audio
126:GNOME
1045:Vala
1023:GVfs
992:IBus
975:GLib
910:MATE
858:Orca
777:Yelp
634:Jami
563:GIMP
481:Meld
155:APIs
124:and
120:for
62:Type
985:GIO
960:ATK
955:GSK
950:GDK
945:GTK
838:GDM
522:Dia
441:Web
112:or
110:ESD
100:In
1272::
128:.
81:v2
813:…
347:e
340:t
333:v
295:.
281:.
168:/
143:-
108:(
46:)
42:(
36:.
Text is available under the Creative Commons Attribution-ShareAlike License. Additional terms may apply.