HeaderLogoFoot
Feature Request: Schreibzyklen reduzieren
schuetzengott
#1 Geschrieben : Sonntag, 10. Oktober 2010 18:55:20(UTC)

Rang: Newbie

Gruppe: Registered Users, Subscribers
Mitglied seit: 10.10.2010(UTC)
Beiträge: 4
Punkte: 12
Wohnort: Germany

Hallo Jochen,

da mein Mainboard nach 8 Jahren den Geist aufgegeben hat und ich nun auf neue HW umziehen musste, habe ich mir im Aktualisierungswahn eine SSD gegönnt.

Somit sind nun die Propeller die einzigen beweglichen Teile im Gehäuse ...

 

Kann man DVB.NET / VCR.NET dazu bewegen, größere Datenblöcke im Arbeitsspeicher zu behalten und dann bei erreichen einer einstellbaren Grenze, alles in einem Rutsch auf die SSD zu schreiben?

Somit würden die Schreibzugriffe reduziert, was bei einer SSD ja der Knackpunkt ist.

 

Ich setze zur Zeit das aktuelle Build zusammen mit Win XP Home SP3 ein. (4 GB Arbeitsspeicher).

 

Ideal wäre ein Wert zwischen 1,5 bis 2 GB im Arbeitsspeicher zu halten. (Vielleicht lässt sich der Wert ja als Zahl eingeben / oder als Auswahlfeld mit 256er Teilung ....)

 

Gruß,

Holger

JMS
#2 Geschrieben : Dienstag, 12. Oktober 2010 19:26:51(UTC)

Rang: Advanced Member

Gruppe: JMS, Registered Users, Subscribers
Mitglied seit: 01.05.2010(UTC)
Beiträge: 396
Punkte: 1.191
Mann
Wohnort: Königswinter-Thomasberg

Es wurde: 5 mal in 5 Beiträgen gedankt

Hi Holger,

grundsätzlich ja, praktisch hat das möglicherweise einige Nachteile. Zurzeit werden 10 MB Blöcke geschrieben. Ich habe immer parallel ein Live Demux mit ProjectX laufen, da ich eh alles nachbearbeite. Der dort verwendete einfache Mechanismus (Mini-FTP Server FTPWrap) erwartet zum Beispiel, dass sich in einem gewissen Zeitrahmen (hm, 30 Sekunden glaube ich) was tut, sonst hört der auf. Darum kann man mit VCR.NET auch kein Live Demux von Radioaufzeichnungen machen: die Bitrate ist zu klein.

Ok, das ist für Deine Frage egal, da man es ja einstellen können soll, warum labere ich also herum? Nun, ich bin mir nicht sicher, ob interne Mechanismen nicht auch auf die Dateigröße gehen um zum Beispiel zu erkennen, ob keine Daten mehr kommen (Abbruch des Stroms bei Gewitter). Ich vermute zwar, dass hier die tatsächlich Eingangsrate verwendet wird, muss das aber prüfen.

Ich habe mir das einmal für's Wochenende vorgemerkt. Wenn es keine Probleme machen sollte, könnte ich das noch ins aktuelle SP2 packen (gut, dass ich so faul bin...).

Tschüss

Jochen

 

PS: Wo wir einmal dabei sind: hast Du nicht eine TT S2-3200 und CI/CAM? Ein Grund, warum ich mich nicht traue, SP2 zu zu machen ist, dass ich im CI Protokoll etwas geändert habe und das nicht für die Budget verifizieren konnte. Ich will ja auch keine Bestandskunden vergraulen, gelle Angry Geht es bei Dir mit der SP2 Beta?

schuetzengott
#3 Geschrieben : Mittwoch, 13. Oktober 2010 22:21:31(UTC)

Rang: Newbie

Gruppe: Registered Users, Subscribers
Mitglied seit: 10.10.2010(UTC)
Beiträge: 4
Punkte: 12
Wohnort: Germany

Hallo Jochen,

 

ich warte momentan noch auf die Grafikkarte - ich habe bisher 2x eine falsche geliefert bekommen.

Ich brauche zwingend einen TV-Out, da ich noch ein Röhren-TV einsetze.

Bei den gelieferten Karten wurde dieser allerdings durch einen HDMI ersetzt, entgegen der Beschreibung des Herstellers.

 

Mit ein wenig Glück bekomme ich nun aber die richtige Karte bis zum Ende der Woche und werde dann umgehend in die Testphase einsteigen.

 

Klar könnte ich jetzt auch schon eine Versuchsreihe starten, aber es ein wenig mühselig den HTPC in die HiFi-Anlage zu integrieren und dann wieder zum Einbau der Grafikkarte rauszubauen - ich wollte mir einen "Durchgang" ersparen.

 

Sobald ich Ergebnisse habe, schicke ich dir nen E-Mail.

 

Gruß und schönen Abend,

Holger

JMS
#4 Geschrieben : Donnerstag, 14. Oktober 2010 07:26:25(UTC)

Rang: Advanced Member

Gruppe: JMS, Registered Users, Subscribers
Mitglied seit: 01.05.2010(UTC)
Beiträge: 396
Punkte: 1.191
Mann
Wohnort: Königswinter-Thomasberg

Es wurde: 5 mal in 5 Beiträgen gedankt

Super, Danke!

Ich habe schon mal vorrecherchiert: ganz trivial wird das nicht. Aber ich denke, ich könnte da relativ zeitnah was machen.

Jochen

JMS
#5 Geschrieben : Samstag, 16. Oktober 2010 22:04:18(UTC)

Rang: Advanced Member

Gruppe: JMS, Registered Users, Subscribers
Mitglied seit: 01.05.2010(UTC)
Beiträge: 396
Punkte: 1.191
Mann
Wohnort: Königswinter-Thomasberg

Es wurde: 5 mal in 5 Beiträgen gedankt

Ich habe das mal in die aktuelle, noch nicht freigegebene Version von 3.9 SP2 übernommen - nennt sich SP2 RC3. Wenn Du das ausprobieren willst, musst Du ALLE DVB.NET / VCR.NET Installationen auf RC3 aktualisieren, sonst läuft VCR.NET nicht mehr richtig. I.e Deinstallieren von VCR.NET, Viewer, Tools, Server, Core und Installation RC3 in umgekehrter Reihenfolge.

Die neue Funktionalität ist nicht über die Oberfläche konfigurierbar. Ohne Änderung bleibt alles wie gehabt, die Buffergröße ist tatsächlich 2 MB (nicht 10, wie ich bisher dachte).

Nun der Teil für Dich: VCR.NET stoppen und die Konfigurationsdatei (im bin Unterverzeichnis des Installationsverzeichnisses) JMS.DVBVCR.RecordingService.exe.config editeren. Dabei etwas Sorgfalt walten lassen, sonst startet VCR.NET nicht mehr - es handelt sich um eine XML Datei. Die letzten drei Einträge (TS*BufferSize) sind die von Dir gewünschten Einstellungen. Die Voreinstellung 0 bedeutet, dass alles bleibt wie es war. Ansonsten kannst Du hier die Größe des Buffers in Bytes (!! nicht Kilobytes, nicht Megabytes !!) einstellen, der kleinste erlaubte Wert ist 1000. Die Angabe darf nur aus Ziffern bestehen, also kein 15.000.000 oder so was. Es wäre dann Deine Aufgabe zu prüfen, ob bei zu großen Werten kein Abbruch der Aufzeichnung erfolgt, weil VCR.NET denkt, es kommt nichts mehr - wenn ich dazu komme, mache ich das selbst, habe im Moment aber nur die Funktionalität an sich geprüft.

Wenn VCR.NET startet und alles zu Deiner Zufriedenheit läuft, solltest Du die Konfigurationsdatei JMS.DVBVCR.RecordingService.exe.config zusätzlich über die Sicherungskopie JMS.DVBVCR.RecordingService.exe.config.cpy legen. Damit ist dann sichergestellt, dass Deine Einstellung auch nach einer Neuinstallation nicht verloren geht - es sei denn, Du installierst eine ältere Version. Vergisst Du diesen Schritt, musst Du die Änderung nach der nächsten Installation halt noch einmal machen.

Viel Glück und laß' Dir Zeit - die anderen Dinge gehen vor!

Jochen

JMS
#6 Geschrieben : Sonntag, 17. Oktober 2010 10:40:40(UTC)

Rang: Advanced Member

Gruppe: JMS, Registered Users, Subscribers
Mitglied seit: 01.05.2010(UTC)
Beiträge: 396
Punkte: 1.191
Mann
Wohnort: Königswinter-Thomasberg

Es wurde: 5 mal in 5 Beiträgen gedankt

Zur Information: also schon 10 MB verträgt sich nicht mit dem Live Demux, das bricht dann vorzeitig ab. Das ist zwar völlig unkritisch, aber lästig, ich habe bei mir die Zahlen auf 0 zurück gestellt - an den FTPWrap wollte ich nicht mehr ran. Und: beobachtet man die Dateizugriffe im Process Monitor (SysInternal), so sieht man, dass immer in 256 kByte Blöcken geschrieben wird. Das machen aber Betriebssystem / Treiber, wie ich durch ein C++ Programm und direktem Zugriff auf die Win32 API Funktion WriteFile feststellen konnte.

Jochen

schuetzengott
#7 Geschrieben : Freitag, 5. November 2010 19:41:38(UTC)

Rang: Newbie

Gruppe: Registered Users, Subscribers
Mitglied seit: 10.10.2010(UTC)
Beiträge: 4
Punkte: 12
Wohnort: Germany

So,

 

ich bin nun dazu gekommen, einen Testrun zu starten:

Vorerst habe ich den Writepuffer auf 536870912 (512MB) bei allen drei Werten gesetzt.

Bis Morgen Abend laufen 3 Aufnahmen ... anschließend wissen wir, ob es funktioniert .... Falls es geht, wird die nächste Testgröße 1GB , dann 1,5GB sein

 

Ich habe ca. 2800 MB freien Ram - bis zu welcher Puffergröße macht es Sinn den Wert zu vergrößern?

Werden die 3 Werte addiert oder immer nur 2 (HD und Audio / SD und Audio) oder weshalb sind da drei Werte?

 

 

Gruß,

Holger

 

EDIT:

Die erste Aufnahme mit dem Puffer  von 512MB lief reibungslos durch - war vom ÖR-Programm, d.h. ordentlich hohe Datenrate ...

Morgen kommt dann noch mal ÖR und abends dann vom Privaten, je nach verlauf werd ich dann den Puffer erhöhen.

JMS
#8 Geschrieben : Samstag, 6. November 2010 11:20:30(UTC)

Rang: Advanced Member

Gruppe: JMS, Registered Users, Subscribers
Mitglied seit: 01.05.2010(UTC)
Beiträge: 396
Punkte: 1.191
Mann
Wohnort: Königswinter-Thomasberg

Es wurde: 5 mal in 5 Beiträgen gedankt

Abhängig von der Art der Aufnahme wird einer der drei Puffer verwendet. Dieser allerdings dann zweimal (! Double Buffering zur Entkoppelung der Aufzeichnung von den Schreiboperationen !). Darum ist äußerste Vorsicht bei der Größe geboten. Zudem VCR.NET ein 32 Bit Programm ist und maximal 2 GB addressieren kann (ich meine, ich hätte die 3 GB Option nicht aktiviert). Ich würde an Deiner Stelle die Finger von Werten oberhalb von 512 MB lassen. Bei parallelen Aufzeichnung kann das noch kritischer sein - bitte mal in Dich gehen! Selbst bei einer Bitrate von 7 MBit/s würde es immerhin 100 Sekunden dauern, bis geschrieben wird - reicht das nicht schon?

Jochen

schuetzengott
#9 Geschrieben : Mittwoch, 10. November 2010 14:53:23(UTC)

Rang: Newbie

Gruppe: Registered Users, Subscribers
Mitglied seit: 10.10.2010(UTC)
Beiträge: 4
Punkte: 12
Wohnort: Germany

So, es ist mal wieder Zeit für eine kleine Rückmeldung:

 

Ein Puffer von 512MB funktioniert wunderbar - es wird ca. alle 10min etwas auf die SSD geschrieben (bei SD-TV) / HDTV hab ich noch nicht getestet.

EIn weiterer Versuch mit 768MB Puffer wurde sofort abgebrochen und das System ging nach 5min (wie eingestellt) in den Standby.

Wenn ich 512MB verwende hab ich bei maximalem Puffer noch ca. 1400 MB Ram frei - also noch locker ausreichend für ein 32bit XP.

 

BTW: Ich hab in dem anderen Thread was gelesen von .Net 4.0 - entwickelst du dann parallel für 32 und 64bit, oder nur noch 64bit?

.Net 4.0 ist übrigens installiert .... - ich könnte wohl testen.

 

Gruß,

Holger

JMS
#10 Geschrieben : Mittwoch, 10. November 2010 18:50:30(UTC)

Rang: Advanced Member

Gruppe: JMS, Registered Users, Subscribers
Mitglied seit: 01.05.2010(UTC)
Beiträge: 396
Punkte: 1.191
Mann
Wohnort: Königswinter-Thomasberg

Es wurde: 5 mal in 5 Beiträgen gedankt

Das sind doch mal gute Nachrichten!

 

Nein, für DVB.NET und VCR.NET ist .NET 4.0 nicht in Planung. Leider ist meine Zeit so knapp geworden, dass ich gar nicht weiß, ob es überhaupt noch grosse Releases geben wird - und Microsoft hat bestimmt einige Schweinereien nicht dokumentiert Whistle  

Aber der Fehler in dem anderen Thread könnte dazu führen, dass ab SP2 der VCR.NET Dienst als 64 Bit Anwendung läuft. Das ist aber nicht ganz trivial (nicht die Umstellung, das ist nur eim Schalter) und ich muss mir das ziemlich sorgfältig überlegen. Es kann zudem sein, dass ich dann zwei Setups brauche, das wäre ein K.O. Kriterium. Und ich selbst kann es nicht testen!

Ciao

Jochen

 

PS: Bekomme leider immer noch keine E-Mail vom Forum, versuche aber längstens im Tagesrhythmus reinzuschauen.

JMS
#11 Geschrieben : Mittwoch, 10. November 2010 18:53:38(UTC)

Rang: Advanced Member

Gruppe: JMS, Registered Users, Subscribers
Mitglied seit: 01.05.2010(UTC)
Beiträge: 396
Punkte: 1.191
Mann
Wohnort: Königswinter-Thomasberg

Es wurde: 5 mal in 5 Beiträgen gedankt

Zitat von: schuetzengott Go to Quoted Post

So, es ist mal wieder Zeit für eine kleine Rückmeldung:

 

Ein Puffer von 512MB funktioniert wunderbar - es wird ca. alle 10min etwas auf die SSD geschrieben (bei SD-TV) / HDTV hab ich noch nicht getestet.

EIn weiterer Versuch mit 768MB Puffer wurde sofort abgebrochen und das System ging nach 5min (wie eingestellt) in den Standby.

Wenn ich 512MB verwende hab ich bei maximalem Puffer noch ca. 1400 MB Ram frei - also noch locker ausreichend für ein 32bit XP.

 

BTW: Ich hab in dem anderen Thread was gelesen von .Net 4.0 - entwickelst du dann parallel für 32 und 64bit, oder nur noch 64bit?

.Net 4.0 ist übrigens installiert .... - ich könnte wohl testen.

 

Gruß,

Holger

Mach' trotzdem mal eine Mehrkanalaufzeichnung - ich befürchte schon 2 parallele (Pro7 / Kabel1 / Sat.1) werden schon knallen, da durch das Double Buffering 4 x 512 MB benötigt würden. Ich könnte theoretisch die betroffene Komponente (Card Server) auf 3 GB patchen, aber dann könnte es instabil werden - nicht alle Trieber mögen negative Adressen und wie es im DirectShow / BDA Umfeld da aussieht kann ich nicht sagen.

Jochen

Rss Feed  Atom Feed
Benutzer, die gerade dieses Thema lesen
Das Forum wechseln  
Du kannst keine neue Themen in diesem Forum eröffnen.
Du kannst keine Antworten zu Themen in diesem Forum erstellen.
Du darfst deine Beiträge nicht löschen.
Du darfst deine Beiträge nicht editieren.
Du kannst keine Umfragen in diesem Forum erstellen.
Du kannst nicht an Umfragen teilnehmen.