Hallo!
Ich schaffe es nicht richtig, MPEG Dateien so zu manipulieren, dass sie nicht mehr in einem üblichen Player abgespielt werden können. Also schaffen tu ich es schon, da ich zur Zeit über die ganze Datei drübercodiere .. jedoch dauert das einfach zu lange..
Die Filme sollten nur mit meinem Player (über DirectShow von
www.progdigy.com) abgespielt werden können, und
das Starten soll doch halbwegs schnell gehen und nicht vorher die ganze Datei decodiert werden.
Dass MPEG keinen eigentlichen Datei-Header hat, darauf bin ich schon draufgekommen, da MPEG mit Paketen
usw arbeitet und diese immer wieder einen Header besitzen.
Meine Frage ist nun, was muss ich in einer MPEG- Datei verändern / hinzufügen / entfernen, sodass
sie nicht mehr abspielbar ist ? Und diese Veränderung möglichst bei allen MPEG- Videos anwendbar ist ?
Ich kann zb. die ersten paar kb verändern, dann lassen sich einige Videos trotzdem noch problemlos und fehlerfrei
abspielen, andere wiederum nicht ...
Ein paar MPEG- Steuerungscodes habe ich zb auch schon gefunden:
Picture-Startcode 00 00 01 00
Slice-Startcode 00 00 01 01 bis 00 00 01 AF
nicht benutzt 00 00 01 B0
nicht benutzt 00 00 01 B1
User-Data-Startcode 00 00 01 B2
Sequence-Header-Startcode 00 00 01 B3
Sequence-Error-Code 00 00 01 B4
Extension-Startcode 00 00 01 B5
nicht benutzt 00 00 01 B6
Sequence-End-Code 00 00 01 B7
Group-Startcode 00 00 01 B8
System-Startcode 00 00 01 B9 bis 00 00 00 FF
jedoch nützt es nichts zb. manuell Werte setzen. Zb am Dateibeginn gleich einen Steuerungscode
(SequenzEnde oder dergleichen)
MPEG ist nicht wirklich anfällig auf Dateiänderungen ..
so braucht man nur mit einem HexEditor ein MPEG an ein anderes MPEG anhängen und schon werden die nacheinander abgespielt
(was mich auf die Idee gebracht hat, nur ein einziges Bild anzuzeigen (zb. ein Bild wo 'geschützt' angezeigt wird) und dann aber mittels eines Steuerungscoes zu sagen , der Film ist zu Ende..
Ich hoffe mir kann jemand einen Tip oder einen Hinweis auf irgendwas geben.
Thanx im voraus !
Mfg , Limster