Hier also mal die neuen gebündelten änderungen/vorschläge vom Lord und Morone aus diesem thread eingearbeitet.
Die setup daten werden jetzt sauber gespeichert und auch gleich wirksam.
Ich habe noch die von viking gewünschte möglichkeit eingearbeitet den laufwerksknopf zu blockieren.
Übernommen wurden auch die playdetektion vom Lord. Arbeite noch nicht wirklich fehlerfrei was aber an dem schmus liegt den die plugins beim abspielen so reporten. Habe mich deshalb entschieden erst mal den stop+unmount nicht auf der playdetektion beruhen zu lassen. Es wird also wieder immer gestopped.
"Eggschberden" können bei den benötigten zeilen ja einfach wieder die kommentare entfernen.
Nun zu den pferdefüssen:
QuoteOriginal von Morone
Vielleicht darf ich ja auch mal meine Stimme erheben und vorschlagen , dass der Status vom Laufwerk vorher abgecheckt wird.
Denn wenn die Lade offen ist und man VDR startet dann
m_isOpen = true , net false -> womit man wieder beim 2x Druecken ist ;).
Dürfte fast unmöglich sein, da das "cdrom" modul anscheinend immer CDS_TRAY_OPEN liefert solange keine disc im laufwerk ist. Das liegt laut einträgen in den kernel foren aber an den ATAPI unzulänglichkeiten.
Ich habe ein kleines programm "status" dazugepackt das den status des drives ausgibt. Sollte wider erwarten euer drive doch zwischen tray open und geschlossenen tray ohne disc unterscheiden, könnt ihr das define STATUSCHECK benutzen um die tray positionserkennung zu komplettieren.
Im moment wird der tray nur synchronisiert wenn eine disk eingelegt ist (oder wird).
Vielleicht fällt mir aber in zukunft noch was geniales in der ATAPI spec auf.
QuoteOriginal von LordJaxom
- beim Umount wird aus /proc/mounts ausgelesen, an welcher Stelle das Device gemountet ist. Dann wird das Ziel umounted, da auf meiner Kiste alles andere bei cdfs zu einem Fehler führte.
Ich habe mittlerweise auf einem zweiten system das mal ohne ide-scsi nachvollzogen. Es könnten effecte von ide-cd sein.
Bei mir funktioniert es ohne den speziellen LordJaxom (LJ) unmount mit folgender configuration:
fstab:
/dev/cdrom /cdrom iso9660
/dev/cdda /cdfs cdfs
devices:
/dev/cdrom -> /dev/cdrom0
/dev/cdda -> /dev/cdrom0
/dev/cdrom0 -> /dev/hdc
/dev/dvd -> /dev/cdrom0
Display More
Mit diese konfiguration kann ich unter 2.4.27 kernel alle logischen mountpoints durch "umount /dev/hdc" unmounten.
Sollte es trotzdem noch probleme geben habe ich die idee von LordJaxom als LJ_UNMOUNT eigearbeitet. Einfach das define setzen und der umount benutzt /proc/mounts um den mountpoint festzustellen.
gruss Peter
P.S.
ich bekomme hier noch einen üblen restart bei versuch vcds zu starten, also obacht