📜Geschichte & Lizenz
„Scanner Access Now Easy“ – und die Hoffnung, dass die Schnittstelle auch im Wortsinn sane (vernünftig) ist. Seit 1996 ist SANE der Standard für Scanner unter Linux und anderen Unix-Systemen.
🕰️Zeitleiste
- 27.11.1996
Erste Veröffentlichung
David Mosberger-Tang und Andreas Beck veröffentlichen SANE 0.1 – eine Scanner-API, die Bedienung und Treiber trennt und Scannen übers Netz von Anfang an vorsieht.
- Ende der 1990er
SANE 1.00
Die API erreicht Major-Version 1. Frontends und Backends aus verschiedenen Versionen passen zusammen, solange die Major-Version gleich ist – das gilt bis heute.
- 06.03.2000
sane-backends 1.0.2
Aliase und versteckte Geräte (dll.aliases), ADF-Unterstützung in scanimage, das Hilfsskript sane-config.
- 2000er
Viele Backends
Von SCSI über Parallelport zu USB: die Community schreibt Backends für hunderte Modelle, oft durch Analyse des USB-Verkehrs. Das test-Backend (Henning Meier-Geinitz) hilft Frontend-Entwicklern.
- 02.02.2020
sane-backends 1.0.29
Neues escl-Backend für treiberloses Scannen (AirPrint-Geräte), Aufzeichnen und Abspielen von USB-Verkehr, Zeitstempel in Debug-Ausgaben.
- 18.01.2022
sane-backends 1.1.1
Die Versionsnummern springen von 1.0.x auf 1.1.x – die API bleibt SANE 1.
- 11.05.2025
sane-backends 1.4.0
Aktuellste Version laut NEWS-Datei beim Erstellen dieser Seite; u. a. weitere geprüfte eSCL-Geräte.
📄Der Standard
Das Dokument „SANE Standard Version 1.06“ beschreibt die Umgebung (Bildformat, Rahmen), die C-API mit 14 Funktionen, Code-Flow, Well-Known Options und das Netzwerkprotokoll. Ein Entwurf für SANE 2 wurde nie verabschiedet.
Versionen werden als SANE_VERSION_CODE(major, minor, build) in ein 32-Bit-Wort gepackt: Major und Minor je 8 Bit, Build 16 Bit. Nur die Major-Version entscheidet über Kompatibilität.
SANE_VERSION_CODE(1, 0, 28) 31 24 23 16 15 0 ┌──────────┬──────────┬──────────────────┐ │ 00000001 │ 00000000 │ 0000000000011100 │ └──────────┴──────────┴──────────────────┘ major 1 minor 0 build 28 = 0x0100001C = 16 777 244
⚖️Lizenz: drei Teile, drei Regeln
Eine Umstellung auf die LGPL ist laut FAQ des Projekts praktisch unmöglich: Alle Rechteinhaber müssten zustimmen, und manche ursprünglichen Autoren sind nicht mehr erreichbar.
📚Quellen
- sane-project.org – Einführung, Lizenz, Liste unterstützter Geräte
- SANE Standard Version 1.06 (sane-project.gitlab.io/standard)
- Manpages scanimage(1), saned(8), sane-net(5), sane-dll(5), sane-test(5)
- sane-backends: NEWS-Datei, Quelltext backend/test.c und include/sane/sane.h
- sane-airscan (Alexander Pevzner) – README; Mopria eSCL-Spezifikation
- Microsoft-Dokumentation zu WIA und WSD, TWAIN Working Group