2020-08-31 v3.6f beta NEU: - Wenn MC während einer Aufnahme läuft, wird die CI+ Verschlüsselung verhindert (experimentell) RecStrip 3.0a (11.01.2021) - PES-basiertes Stripping! (Demultiplex - Strip - Remultiplex) - PCRs werden auf DTS-Basis neu berechnet - bekannte Einschränkung: PCR muss auf der Video-PID übertragen werden! (sonst müsste die PMT neu codiert werden) - Support zum Import von Aufnahmen aus Eycos S80.12HD 2020-08-30 v3.6e NEU: - alle Topfield TimeStamps werden sekundengenau berechnet - StartTime-Sekundenangabe wird beim Schneiden in der inf (Byte 0x06) gespeichert(!) - zusätzliche StripModes: 4 (nur Fülldaten strippen und Ttx Untertitel extrahieren), 5 (auch EPG strippen und Ttx UT extrahieren) - nach Strippen wird .cut-Datei auf das aktuelle Datum gesetzt BUGFIXES: - Unterstützung von Aufnahmen mit "%" im Dateinamen RecStrip 2.7 (10.01.2021) - Vertauschung der Ausgabe-Paketgröße (o1 = 188 Bytes, o2 = 192 Bytes) - Parameter -tt extrahiert den Teletext, ohne ihn zu entfernen (dazu ist -t nötig) - StartTime-Sekundenangabe wird in der inf (Byte 0x06) gespeichert, bei Scan im Input-File (!) - StartTime aus inf wird beibehalten, wenn nicht -i und TS keine Sekundenangabe aufweist - Merge (-m) kann auch mit Schnitt (-r) kombiniert werden, um nur einzelne Segmente zusammenzufügen - alle Topfield TimeStamps werden sekundengenau berechnet - NALUDump löscht auch Filler-NALUs ohne Startcode (mehr als 10 mal 0xff, gefolgt von 0x80 - experimentell!) - TS Check: verbesserte Continuity-Error-Auswertung (verschiedene PIDs an gleicher Position werden zusammengefasst, Ausgabe der Einzel-Fehler erfolgt nur noch auf stderr) - EPG ExtEventText wird nun nur noch einmal und vollständig ausgegeben - korrekte(re) Zeitzonen-Behandlung, inkl. Sommerzeit (UnixTime=UTC, TFTime=lokale Zeitzone) - EPG-Zeitversatz wird aus Teletext-Zeitzone berechnet - Humax-Mode: Ermittlung von Startzeit und Program Identification aus Teletext - Humax-Mode: Original-Header wird in eine .humax-Datei ausgegeben - verbesserte Behandlung von Buffer Overflows in PESProcessor und PESFileLoader - Support zum Import von Aufnahmen aus Eycos S80.12HD Bugfixes: - PESProcessor: nach Continuity-Error wurde das erste Packet des neuen PES-Pakets verworfen - PESProcessor: verbesserte Berechnung der RemainingBytes - Arrival Timestamps: zu große Zeitsprünge werden verhindert - RebuildInf: falsche Ermittlung der Länge von EventNameDescription - RebuildInf: möglicher Speicherüberlauf beim Schreiben von EPG ExtEventText in die inf(!) - bei Szenen kopieren, RebuildInf und vorhandenem Szenen-Text wurde ExtEventText nicht geschrieben - aus Teletext ermittelte Programme Identification wurde nicht in inf eingetragen - DoCut: wenn kein Segment markiert, wurde grundlos das letzte Segment ausgegeben - Merge: auch bei Merge neues Bookmark an Schnittstelle setzen und Stripped-Flag setzen - Append: vorhandene Source-inf wurde nicht beibehalten - End-Meldung: Anzahl der geschriebenen Pakete korrekt berechnet (OutPacketSize) - Medion-Mode: fehlerhafte Nullbyte-Entfernung durch zu späte Prüfung auf Video-PES - Medion-Mode: korrekte Behandlung von DTS-Überlauf in Eingabe-PES - Medion-Mode: bei EPG-Daten mit mehreren Events wird das in der Mitte der Aufnahme gewählt - Medion-Mode: weitere kleine Bugfixes 2020-04-24 v3.6d NEUES OSDKeyboard: - übersichtlicheres Layout (weniger Tasten, nur noch 2 Seiten, dauerhafte Anzeige aller Funktionen) - langes Drücken auf 'OK' zeigt eine Auswahl für alternative Zeichen (Umlaute, Accents, etc.) - Auto-Vervollständigung für bereits eingegebene Wörter - Bugfix: Crash, wenn OSDKeyboard mittels USB-Tastatur beendet wurde INTERNALS: - StrMkISO in HddToolsLib ersetzt - Anpassung an neue FireBirdLib (OSDMessageEvent, AudioAutoSelect, OSDKeyboard) - neu kompiliert mit sichererer GetApplVer() RecStrip 2.5 (24.04.2020) - Ausgabe von First und Last PCR (für mehrere zusammengehörige Teilaufnahmen) - Programme Identification (meist Sendername) aus Teletext auslesen - PESProcessor: bei Adaptation field wird 1 Byte mehr (Länge) übersprungen (bisher wohl nicht aufgefallen, da PESProcessor nur für einzelne SIT-Tables eingesetzt wurde, bei denen meist kein Adaptation Field auftritt) - PESProcessor: Buffer-Overflow-Protection - neue Berechnung der M2TS Arrival Timestamps (immer den letzten PCR nehmen, dazwischen interpolieren) - anstatt PayloadStart-Pakete mit Filler-AdaptationField werden Adaptation-Only-Pakete ohne PCR gelöscht(!) RecStrip 2.4a (01.03.2020) - Bugfix: PMT bei Pro7HD wird jetzt korrekt geparsed (ProgramInfo wird übersprungen) - Bugfix: Teletext-Descriptoren werden jetzt korrekt ausgewertet - Bugfix: SD nav-Erzeugung: Bei paketübergreifendem Startcode konnten Frames übersprungen werden - Neu: Bei Humax-Import wird AC3-Descriptor in der PMT gesetzt (experimentell) - Internals: konsequentere Verwendung von benannten structs und enums anstatt Bitshift-Operationen und Konstanten 2018-06-30 v3.6c RecStrip 2.3: - auch Filler-NALUs am Dateianfang und nach Bruchstellen werden entfernt - erweiterter Continuity-Check: bis zu 8 PIDs werden geprüft (alle Audio und ggf. Teletext/EPG) - Aufnahmen ohne Video-PID werden akzeptiert - Bugfix: Continuity-Check in NALUDump wurde nach Schnitt dauerhaft ausgesetzt - Bugfix: Bei PMT-Analyse wurde die verbleibende SectionLength falsch berechnet 2017-09-30 v3.6c NEU: ** neue Funktion: Zusammenfügen zweier Aufnahmen (über Submenü "Teile kopieren") ** bei "Teile kopieren" kann ein alternatives Zielverzeichnis (z.B. NAS) angegeben werden ** Umwandlung von Itemized Event Text * beim Umbenennen / Löschen von Aufnahmen werden *.srt mit behandelt * Menü: 3 Optionen für Markieren - ungerade / gerade / keine * RecStrip: bei Rückfrage wird auf Ausblenden durch weiße Taste hingewiesen * vor Dateisystem-Prüfung wird das OSD ausgeblendet und die Wiedergabe beendet INTERNALS: - Laden von ini und lng durch eigene Implementierung - Zeichnen der SegmentList ohne Background-Image BUGFIXES: - (PlayInfo.currentBlock == -1) statt negativ abfragen - FixInodes-Bug behoben!! (gespeicherte inodes wurden nicht überwacht) - bei Schnitt mit SpecialEnd verblieb eine (falsche) Kopie der cut mit Namen des letzten Segments - RecStrip-Aufruf wurde nicht im Logfile ausgegeben RecStrip 2.0 - Zusammenfügen von Aufnahmen - diverse Bugfixes (z.B. SectionLength in RebuildInf, Remaining Bytes kopieren in PESProcessor) - Extraktion der Teletext-Untertitel (RecStrip 2.1) - benötigt nun RecStrip 2.2 (geänderte Parameterfolge für append) jfs_icheck 0.5 (31.05.2018) - berücksichtigt bei der Berechnung von realblocks die zur indirekten Adressierung genutzten Blöcke 2017-03-31 v3.6b NEU: ** neues Submenü für "Teile kopieren" (separat/gemeinsam, mit/ohne Strippen) ** nav-Erzeugung: nicht darstellbare B-Frames vor/nach dem ersten I-Frame werden ignoriert * liest cut-Format v4 (Byte-Positionen statt Block-Nummern) RecStrip 1.0 - separates Kopieren mehrerer Segmente möglich - Filler-NALUs, die genau am Paketanfang beginnen, werden komplett entfernt (anstatt ein Paket zu belassen) - Bestimmung von Sender und Startzeit aus TS jfs_icheck 0.4 - Workaround für weiteren Bug in Schnittfunktion (inkorrekte Anpassung der Subtree-Size bei stark fragmentierten Aufnahmen) 2016-08-31 v3.6 NEU: ** Während RecStrip im Hintergrund arbeitet, bleibt MC bedienbar! * Prozent-Anzeige während Strippen im ActionMenu INTERNALS: ** (unnötige?) sync-Aufrufe aus MovieCutter.c entfernt 2016-07-31 v3.6beta3 INTERNALS: ** vollständige Integration von RecStrip in die State-Machine NEU: ** Herunterfahren während des Stripping-Prozesses wird abgefangen * Rückfrage, wenn Stripping abgebrochen werden soll * leicht veränderte Texte im Action-Menu * Tastatur: Unterstützt nun auch Handy-Buchstaben * Tastatur: Zeigt beim Scrollen rechts/links immer ein Zeichen mehr nach Cursor an BUGFIX: - Tastatur: Key für Leertaste funktionierte nicht 2016-05-30 v3.6beta2 INTERNALS: ** alle Hintergrundprozesse auf fork/exec und Pipes umgestellt BUGFIX: - RecStrip-Prozess kann abgebrochen werden - verlässliche Prozent-Anzeige während Strip-Prozess - CPU- und HDD-Last während Strippen reduziert 2016-04-30 v3.6beta NEU: ** Zu jedem Segment kann eine Kurzbeschreibung (Caption) hinterlegt werden, die mittels Subt-Taste angezeigt wird Wenn Caption angezeigt wird, kann diese mittels Teletext-Taste bearbeitet werden (Eingabe ist möglich über FB, TMSRemote und USB-Keyboard) ** Bei Anlegen und Verschieben eines SegmentMarkers rastet dieser kurz vor dem vorhergehenden I-Frame ein * Kopieren von ein oder mehreren Segmenten in eine neue Aufnahme, ohne das Original zu verändern * Strippen von Aufnahmen (Bereinigung von Filler-NALUs, Zero-Byte-Stuffing und EPG-Spur) INTERNALS: - Ergänzung des cut-File-Formats um Captions (abwärtskompatibel) - TimeStamps-Array speichert nur noch die TimeStamps von I-Frames (Zeitbestimmung etwas unpräziser, dafür Speicherplatzersparnis, FrameType muss nicht mit gespeichert werden) BUGFIX: - Bei Aufnahme teilen wurde cut-File nicht gespeichert! - Beim Speichern des letzten Segments mit SpecialEnd-Modus wurde das cut-File der Source in das Cut kopiert (wegen HDD_Rename2) - Beim Schneiden wurde ServiceID in der inf gelöscht - Verzögerung nach Segment-Sprung (JumpPerformedTime) auf 2 sek erhöht (bei HD-Sat gab es sonst Sprünge) - Beim Speichern eines Segments ohne nav wurde die Laufzeit des Cutfiles falsch gesetzt (i.d.R. auf 0:00 min) - Kein Crash mehr, wenn PlayInfo.Duration==0 ist (fehlerhaft geschnittene Aufnahme) - Pause am Aufnahmeende kann durch (einmaliges!) Play-Drücken fortgesetzt werden 2015-12-15 v3.5b* NEU: * OSD-Keyboard bei Aufnahme umbenennen unterstützt auch Eingabe über USB-Tastatur INTERNALS: - File-I/O-Zugriffe in den Inf-/Nav-Methoden wieder über C-StandardLib (fopen/fread/fwrite) statt SystemCalls realisiert - PatchNavFiles(), NavLoad() und PatchOldNavFile() arbeiten nun ohne eigenes Buffering (-> übernimmt fread/fwrite) - auch WriteLogMC wieder mit gepufferten Stream-Funktionen, Buffering zusätzlich auf zeilenweise umgestellt - Dateinamen-Puffer reduziert, da Dateinamen nur MAX_FILE_NAME_SIZE (inkl. Null) lang sein dürfen - jfs_fsck: File-I/O über C-StandardLib und zeilenweises Buffering in Standardausgabe 2015-11-11 v3.5* NEU: ** Umbenennen der laufenden Aufnahme mittels (modifizierter) Firebird-Tastatur (funktioniert auch im DirectMode über TMSRemote) ** Format der cut-Speicherung in der inf-Datei geändert(*), zwecks Kompatibilität zwischen SRP/CRP-Aufnahmen (beide Formate werden eingelesen, nur neues geschrieben) 2015-10-31 v3.4b* 2015-09-18 v3.4 NEU: ** es können nun auch TS-Dateien im MediaFiles-Ordner geschnitten werden (aufgrund fehlender nav-Datei bestehen ggf. Einschränkungen bzgl. Spulen und Springen) 2015-10-31 v3.3b* 2015-08-31 v3.3 NEU: *** neue Funktion "Aufnahme teilen" (ersetzt "Gerade Segmente löschen") *** neue Behandlung des letzten Segments (truncate) -> verhindert Aufnahmenfresser! *** fixed 4-byte-offset when cutting on Australian PVRs ** neues, textbasiertes Format (v3) der cut-Datei (v1 und v2 weiterhin unterstützt) ** Speicherung der Schnittmarker wahlweise im Bookmark-Bereich der inf-Datei ** neue, bessere Stabilisierung der Zeitanzeige (auch bei Segmentwechsel und im Fortschrittsbalken) ** bei Nummerierung werden Vorhandene berücksichtigt -> '(Cut-1)' + '(Cut-3)', wenn '(Cut-2)' existiert * farbliche Warn-Markierung im Menü bei Auswahl sehr großer Segmente (> 4 GB) * deutsche Sprache bereits im TAP enthalten (-> ohne Language-Datei lauffähig) * Deaktivierung der Dateisystemprüfung, wenn jfs_fsck fehlt (+ Warnung im Log) * automatische Auswahl des Fernbedienungs-Modus möglich * alle Tasten werden berücksichtigt (auch Front-Keys?) INI-FILE: - CutFileMode = Speicherung der Marker: [0] in cut- und inf-Datei, [1] nur cut-Datei, [2] nur inf-Datei. - DeleteCutFiles = Löschen verwaister .cut-Files: [0] nie, [1] nur in /DataFiles, [2] rekursiv in Unterverzeichnissen. - SpecialEndMode = Umgekehrte Endbehandlung: [1] nur wenn notwendig, [2] immer, [0] deaktivieren. - DisableSpecialEnd wird nicht mehr unterstützt! - RCUMode: mögliche Werte geändert, neu [0] = auto BUGFIX: - Neuberechnung der Zeitangaben in Segmentliste nach Schnitt korrigiert - Undo-Stack wird nach Bookmark-Im/Export nur zurückgesetzt, wenn eine Löschung erfolgte - bei Abbruch der nav-Warnung und Beenden von MC während Wiedergabe wurde die Schnittliste gelöscht INTERNALS: - neue modifizierte FireBirdLib (2013-02-18+) - neue jfs_fsck (SVN von 2014-05-05) - Zeit-Konvertierung mittels Firmware-Funktion FIS_fwTimeToLinux() - File-I/O-Zugriffe über SystemCalls (open/close/write) statt C-StandardLib - Optimierungen zur Steigerung der Effizienz 2015-03-31 v3.2 * Segment- und Bookmark-Marker nun wieder ohne Anti-Aliasing * direkter Bookmark-Sprung nun zyklisch und inklusive Aufnahmestart 2015-02-26 v3.2 NEU: (beta) ** Dateisystemprüfung kann automatisch beim Beenden/Herunterfahren ausgeführt werden ** schnellere Zeitanzeige beim Spulen (kein "Stottern" mehr) * stabilisierte Zeitanzeige bei Slow-Motion ("Hin- und Herspringen") * verbesserte Reaktion bei schnell wiederholtem Drücken der Spul-Tasten (?) * Prüfung auf bekannten System-Typ (FirmwareTMS.dat) beim Start von MC ( * Test: Segment- und Bookmark-Marker mit Anti-Aliasing ) INI-File: ** neue Option CheckFSAfterCut=3 prüft Dateisystem für alle betroffenen HDDs beim Beenden BUGFIX: * Crash, wenn MC mit einer Aufnahme ohne nav-Datei verwendet wurde (Bug eingebaut in v3.1b) INTERNALS: - neue modifizierte FireBirdLib (2013-02-18) - auf europäischen Töpfen auch ohne FirmwareTMS.dat lauffähig - EncodeRECHeader überschreibt nicht mehr den ungenutzten Bereich - Debug-Ausgaben entfernt 2014-12-31 v3.1b BUGFIX: - jfs_icheck wird auch bei Dateinamen mit Anführungszeichen korrekt aufgerufen INI-File: - MaxNavDiscrepancy: Maximal zulässige Abweichung der nav-Datei, bevor eine Warnmeldung angezeigt wird (in Millisekunden). 2014-07-31 v3.1a BUGFIX: - Parameter DefaultMinuteJump funktionierte nicht - Behebung von SmartFiler-Einleseverzögerung (nur mit DoiCheckTest=1 und =3 und nur wenn keine Inode-Beschädigung) NEU: - Warnmeldung, wenn freier Festplattenspeicher kleiner als Aufnahmengröße ist (nur profilaktisch) INTERNALS: * jfs_fsck und HddToolsLib vorbereitet auch für schreibendes fsck * jfs_icheck löscht den Cache nur noch bei DoFix=TRUE (?) 2014-07-16 v3.1 NEU: ** verbesserte Variante der icheck-Überprüfung * farbliche Hervorhebung von sehr großen Segmenten (4 GB -> Gefahr Firmware-Bug) BUGFIX: - während der Wiedergabe einer Aufnahme blieb die System-Uhr stehen (!) - bei Nutzung von FastNav bevor das erste Segment angelegt ist, wurde die Abspielposition nicht mehr aktualisiert - Korrektur der Wiedergabeposition nach dem Schnitt - auch der letzte Bookmark kann gelöscht werden - auch das (einzige) Segment von Anfang bis Ende kann markiert werden - nach Segmentsprung auf das bereits zuvor aktive Segment wurde die Markierung nicht überzeichnet INI-File: - CheckFSAfterCut: 1: Automatische Dateisystemprüfung (nur wenn nötig). - 2: Immer nach dem Schneiden prüfen. - 0: Niemals prüfen (nicht empfohlen!) - DoiCheckTest: 1: gesammelter Test am Ende (ro). - 2: gesammelter Test und Fix. - 3: Test zwischen den Schnitten (ro). - 4: Test und Fix zwischen Schnitten. - 0: Kein icheck-Test. 2014-06-28 v3.0 NEU: (final) *** automatische Überwachung und Reparatur beim Schneiden beschädigter Inodes (dazu muss MC im AutoStart sein und permanent laufen!) ** direktes Schneiden auf externen Festplatten (inkl. Überwachung) BEDIENUNG: - Schnelles Navigieren mit variabler Sprungweite (ähnlich FastSkip) mit P+ / P-. INI-File: - CheckFSAfterCut: 0: Automatische Dateisystemprüfung (nur wenn nötig). - 1: Immer nach dem Schneiden prüfen. - 2: Niemals prüfen (nicht empfohlen!) - DoiCheckTest: 0: Kein Inode-Test zwischen den Schnitten. - 1: Testen aber nicht fixen. - 2: Test und fix. - InodeMonitoring: 1: Überwachung der beim Schneiden beschädigten Inodes. - 0: keine Überwachung. - RCUMode: 0: SRP-2401 - 1: SRP-2410 - 2: CRP-2401 - 3: TF5000 (identisch mit 2) - 4: VolKeys nicht belegen INTERNALS: ** vollständige Umstellung auf absolute Pfade 2014-05-02 v3.0 NEU: (beta!) *** vollständige Überarbeitung des OSD (s.u.) ** OSD-Synchronisation beim Neuzeichnen reduziert (-> verhindert Flackern) ** Rückgängig-Funktionalität: Es können bis zu 100 zuletzt durchgeführte Aktionen vom Typ Setzen/Verschieben/Löschen von Segment-Markern oder Bookmarks rückgängig gemacht werden. ACHTUNG! Schnittoperationen sind irreversibel und können NICHT rückgängig gemacht werden! * Im Schnittmenü können die Zahlentasten als Shortcuts verwendet werden. * Der MovieCutter ist nun darauf optimiert, per Autostart gestartet zu werden und permanent zu laufen. * Alle Tasten, die während der normalen Wiedergabe zur Verfügung stehen, können nun auch im MC genutzt werden. BEDIENUNG: - Die Umschaltung zwischen Segment- und Bookmark-Modus geschieht jetzt mit der VF (oder der FAV) Taste. Alternativ auch mit GUIDE. - Die WEISSE Taste dient nun zum Umschalten zwischen 3 verschiedenen OSD-Modi: a.) Vollständiges OSD: enthält alle bisherigen Elemente des MovieCutters. b.) Dasselbe OSD, allerdings ohne Anzeige der Segmentliste. c.) MiniOSD: enthält nur die Zeitleiste mit Schnittmarken und Bookmarks. - Einmaliges Drücken der EXIT-Taste blendet das MovieCutter-OSD vollständig aus. Der MovieCutter arbeitet dann weiter im Hintergrund und reagiert auf sämtliche Funktionstasten. - Nochmaliges Drücken der EXIT-Taste deaktiviert den MovieCutter (wie bei vorherigen Versionen). Durch Drücken der WEISSEN Taste kann der MovieCutter dann wieder aktiviert werden. - Die SLEEP-Taste beendet das MovieCutter-TAP vollständig (egal in welchem Zustand MC sich befindet). INI-File: - DefaultOSDMode: 0: MC arbeitet im Hintergrund. - 1: Vollständiges OSD. - 2: OSD ohne Segmentliste. - 3: OSD im Minimal-Modus. - DefaultMinuteJump: 0: Minutensprung-Modus ist beim Starten deaktiviert. - 1-99: Voreingestellter Wert für den Minutensprung-Modus. - AskBeforeEdit: 1: Vor dem Ausführen einer irreversiblen Schnittoperation nachfragen. - 0: Keine Rückfrage. - Overscan_X: Abstand des OSD vom linken/rechten Bildschirmrand. Mögliche Werte: 0-100 (empfohlen: 30-60) - Overscan_Y: Abstand des OSD vom oberen/unteren Bildschirmrand. Mögliche Werte: 0-100 (Standard: 25) - SegmentList_X: Anzeigeposition der Segmentliste (x-Koordinate der oberen linken Ecke, mögliche Werte: 0-556) - SegmentList_Y: Anzeigeposition der Segmentliste (y-Koordinate der oberen linken Ecke, mögliche Werte: 0-246) - DisableSleepKey: 1: Deaktiviert die Beendigung des MovieCutters durch Drücken der Sleep-Taste. - DisableSpecialEnd: Debugging-Einstellung (Standard: 0). 2014-03-31 v2.0j - kleiner Bugfix: fsck.log wurde nicht neu angelegt - interne Änderung: Schneiden des letzten Segments auf alte Art - interne Änderung: keine Unterbrechung des Schnitts durch andere TAPs - Experiment: Schneiden nur mit exklusivem HDD-Zugriff - zusätzlicher ini-Parameter DisableSpecialEnd - zusätzliche Log-Ausgaben 2014-03-28 V2.0i NEU: (stable) *** Unterstützung von externen Festplatten, sowohl mit TMSMount als auch ohne * Fortschrittsanzeige während des Schnittprozesses ** Funktion zur Überprüfung des Dateisystems auf Konsistenz ** nach dem Schnittvorgang wird das Dateisystem automatisch überprüft und ggf. eine Warnmeldung ausgegeben (optional: Diese Funktion kann durch CheckFSAfterCut=0 in der ini deaktiviert werden) BEDIENUNG: - während einer angeforderten Sprungoperation ist die Menü-Taste gesperrt - das angeforderte Sprung-Segment wird mit dünnem Rand über die blaue Segmentmarkierung gezeichnet (so dass beides sichtbar ist) - während angeforderter Sprungoperation reagiert die blaue Taste auf das markierte Sprung-Segment - beim Import von CutFiles unpassender Größe wird Markierung nicht mehr zurückgesetzt - im Bookmark-Modus wird der Menüeintrag 'Alle Bookmarks löschen' nun stets angezeigt - zusätzlicher Eintrag 'Exportiere Segmente zu Bookmarks' (wenn Segmente vorhanden) - niederländische Übersetzung (thanks to Henk Puister) INI-FILE: - SaveCutBak: Speicherung der Sicherungskopie des CutFiles kann deaktiviert werden (Default=1) - CheckFSAfterCut: überprüft das Dateisystem nach dem Schnitt (Default=0, aktuell mit 1 vorbelegt) - ShowRebootMessage: zeigt eine Meldung, wenn der Receiver nach der Aufnahme nicht neu gestartet wurde (Default=1) INTERNALS: * mehrfaches Starten desselben TAPs (durch Firmware-Bug) wird verhindert ** Behandlung sämtlicher Messageboxen neu gestaltet (leichter wartbar) ** Umstellung sämtlicher String-Operationen auf Overflow-sichere Varianten * Länge des Dateinamens und des Pfades wird auf Überschreitung der Maximalgröße geprüft * zusätzliche Synchronisation nach dem Umbenennen BUGFIXES: - Neuberechnung der Prozentangaben nach dem Schnitt korrigiert 2014-02-08 V2.0h ** Behandlung des letzten Segments neu gestaltet (stable) -> behebt Dateisystemfehler beim Schneiden des letzten Segments(?) ** Cache-Synchronisierung beim Start und vor und nach dem Schnitt -> gegen Dateisystemfehler und Korrumption des Endes(?) ** Sicherheitsprüfungen, falls PlaybackInfo nicht (mehr) stimmt * Neuberechnung der Segment-Marker nach dem Schnitt korrigiert * nach dem Schnitt wird auf das vollständige Neu-Laden der Aufnahme gewartet * beim Bookmark-Import werden keine Mini-Segmente am Anfang oder Ende mehr zugelassen * kleiner Bugfix: bei Erzeugung mehrerer Bookmarks an derselben Stelle wurde eines auf 0 gesetzt 2014-01-24 V2.0g ** new: Full support of cutting algorithms on Australian devices! * new: Support of cutting recordings without .nav-files (e.g. radio)! * SaveEnding doch wieder durch Umkehrung realisiert (u.a. wegen CutPoint-Ermittlung auf australischen Geräten, und weil es an der Korrumption des Endes nichts zu ändern scheint) ** nav-Behandlung überarbeitet (HD-Funktionen sind nun in SD integriert) * nav-Prüfung feingetuned (kleine Abweichungen, die im Bereich des Normalen liegen, werden toleriert) ** Kompatibilität mit INFplus (Zusatzinfos in .inf-Dateien bleiben erhalten, Aufnahmedatum wird neu berechnet) * ConfirmationDialog nun auch bei Import/Export Bookmarks (wenn Segmentliste bzw. Bookmarks gelöscht werden) * der jeweils nächstgelegene Segment- bzw. BookmarkMarker (der von der gelben oder roten Taste bearbeitet wird) wird farblich hervorgehoben * beim Import eines cut-Files mit nicht-passender Dateigröße, erfolgt die SegmentMarker-Neuberechnung relativ zum ersten Bookmark * neuer ini-Schalter: DirectSegmentsCut=1 bewirkt direktes Löschen der (un)geraden Segmente * auch bei aktivem MC-OSD werden Tasten an andere TAPs weitergereicht (experimentell!) * Bugfix: Wenn während der Meldung LS_NavPatched die Wiedergabe beendet wird, reagiert der Receiver nicht mehr * kritischer Bugfix: Stack-Overflow beim Laden der inf-Datei * kritischer Bugfix: Buffer-Overrun beim Speichern der Bookmarks * kritischer Bugfix: 2 weitere mögliche Buffer-Overruns in String-Puffern 2013-12-24 V2.0f * kritischer Bugfix: Wenn beim Löschen des letzten Segments ein Fehler auftritt, wird die Aufnahme nicht mehr zerstört! * kritischer Bugfix 2: Beim Generieren des temporären Cut-Namens konnte ein String-Überlauf auftreten! (-> TMS 2100 Absturz) 2013-12-21 V2.0e * Mini-Bugfix: OSD-Tastenübersicht zeigte noch "Ok"-Taste für den Menüaufruf an * Mini-Bugfix: Wenn kein SegmentMarker angelegt, konnte das Hauptsegment selektiert werden * die Abweichung der .nav-Länge von der .inf-Länge in Sekunden wird angezeigt * ausgegraute Menü-Elemente können nicht mehr angesprungen werden * die SegmentMarker können nun als Bookmarks exportiert werden (im Bookmark-Modus) * während das Schnittmenü geöffnet ist, lässt sich zwischen Segment- und Bookmark-Modus wechseln * wenn keine Segmente angelegt sind, wird auch keine .cut-Datei mehr angelegt (bzw. die vorhandene gelöscht) * bei nicht übereinstimmender .cut-Datei werden die TimeStamps importiert und die zugehörigen Blocknummern neu berechnet. 2013-12-21 V2.0d * Bedienung: - OK hat nun die Funktion Play/Pause (nicht mehr Menü) - Menu ruft jetzt das Schnittmenü auf - Pfeil nach rechts im schnellsten Zeitlupe-Modus wechselt zu Play * Warnung bei inkorrekter .nav-Länge, Fortsetzung ist jetzt trotzdem möglich * Warnung, wenn zwischen Aufnahme und Schnitt kein Neustart erfolgt ist (Beschädigung des Endes möglich!) * vor allen kritischen Methoden wird in das PlaybackDir gewechselt (andere TAPs verändern manchmal zwischendurch das Arbeitsverzeichnis) ** zahlreiche Bugfixes! (u.a. Bookmarks und OSD-Ausblenden nach dem Schnitt) 2013-12-19 V2.0c * OSD-Ausblendung bei fehlgeschlagenem Schnitt 2013-12-18 V2.0b ** kein PlaybackCheck im inaktiven Modus mehr (AutoOSDPolicy=0) -> Verbesserung der Interaktion mit anderen TAPs(?) ** Code (Zustände) intern rearrangiert * Unterstützung von Timeshift-Aufnahmen (leicht anderes .nav-Format) - *experimentell* * Laden der Language-Strings verbessert -> minimiert im Falle einer falschen .lng-Datei das Risiko von Pufferüberläufen 2013-12-14 V2.0 ** vollständiger Unicode-Support *** alle Zeitangaben werden präzise aus der nav berechnet * Hin- und Herspringen der Spielzeit-Anzeige behoben * Nummerierung der geschnittenen Teile nun aufsteigend ** mehr Segmente können angelegt werden (bis zu 100) ** Bookmarks werden korrekt zwischen MC und Firmware ausgetauscht ** Bookmark-Modus: Nach Drücken der weißen Taste können nun auch im MC Bookmarks angelegt und gelöscht, sowie dazwischen hin- und hergesprungen werden (nochmaliges Drücken der weißen Taste schaltet in den normalen Modus zurück) ** Springen zwischen Segmenten (v.a. mehrfaches Springen) geht jetzt flüssig (OSD-Anzeige erfolgt in Echtzeit, die eigentliche Sprung-Operation wird verzögert ausgeführt) * direkter Segment-Sprung kann nun über die Skip-Tasten [|<] und [>|] durchgeführt werden ** nach dem Segment-Sprung erfolgt kein kurzes Zurückspringen der Anzeige mehr * im Bookmark-Modus springen die Skip-Tasten zwischen Bookmarks, im Minutensprung-Modus um die eingestellte Minutenzahl * Minutensprung-Modus erlaubt zweistellige Eingabe (10 min ist nicht mehr [0], sondern [1], dann [0]). Theoretisch bis zu 99 min Sprungweite möglich * Minutensprung-Modus wird nun durch [0] beendet, anstatt [OK] (-> überlebt Menü-Aufruf) * MovieCutter wird jetzt allein durch die Schnitttaste (ohne Playbalken) eingeblendet * während MC aktiv ist, wird der Wiederholungs-Modus aktiviert, um Beenden der Wiedergabe zu verhindern * Menü verschlankt: Einträge erscheinen kontextsensitiv (nur wenn sie relevant sind) * Markieren der geraden / ungeraden Segmente ist jetzt eine eigene Aktion (-> Schutz vor Fehlbedienung) * Rückfrage-Dialog vor kritischen Aktionen * OSD: Segmentliste neu gestaltet * OSD: Rote Markierung von kurzen Segmenten aufgehoben (diese werden von der FW anscheinend NICHT gelöscht) ** Der Play-Modus (TrickMode) wird direkt aus der Firmware ermittelt, statt selbst verwaltet *** Fehlverhalten der FW (Schnitt inmitten eines Pakets) wird abgefangen *** Präzisere Behandlung beim Schneiden des letzten Segments: - beim Speichern bleibt dieses vollständig erhalten - beim Löschen verbleibt kein Rest des Aufnahmeendes mehr hinter der Schnittstelle ** Kompatibilitäts-Funktionen zum Umstieg von Version 1.x: - automatisches Konvertieren der alten Cut-Files - automatische Nachkorrektur der vom alten MC erzeugten nav-Files 2012-06-23 V1.4 * Added action menu items "Delete event segments" and "Delete odd segments" 2011-08-26 V1.3d * Added the French translations (Thanks to LAL) 2011-08-14 V1.3c * Fixed a reboot if green is pressed without a running playback 2011-08-13 V1.3b * Fixed: a special kind of extended event description might be destroyed (see FBLib) 2011-04-18 V1.3a * Bugfix: fixed the TS offset detection, which might have created E0807 faults 2011-04-15 V1.3 * Added: hooks a firmware function so that new bookmarks are recognized during a playback 2011-03-14 V1.2 * Bugfix: MovieCutter won't jump in during the creation of the preview images * Bugfix: unable to create segments if the byte 0x47 is located within the first time code * Bugfix: On some occasions, a bookmark has been ignored during bookmark importing 2011-02-20 V1.1 * Fixed a typo in the lng * Added a TAPCOM server so that the ScreenSaver TAP can check if the MC OSD menu is visible 2011-02-19 V1.0 * Do not accept crypted files * Cleanup stray .cut file in DataFiles * German .lng 2011-02-06 V0.3 * File date of all files will be set to the recording time stamp * Checks if a .nav exists * More stringent search for a pcr * Rearranged the menu * Support für TMSCommander * Support for 188 byte files * Packet-Check von TC auf 188/192 packets umstellen * Better error handling * Automatic switching between PCR and linear timing modes * Added a .lng file * Added an ini file * ini key AutoOSDPolicy 2011-01-29 V0.2 * TAP is now a TSR * Exit hides the OSD * >|< while the search bar is visible brings back the OSD * New action item "Remove padding" * Button text * Bugfix: defective nav due to API bug. Using fread() instead of TAP_Hdd_Fread() * A rec is not accepted if the inf time and the pcr time differs for more than 150 seconds * Several other fixes 2011-01-29 V0.1 * First internal alpha release