Nachtrag mit Sourcecode
Hallo nochmal!
Hier ein kleines Beispielprogramm, welches die Frameheader in einem mp3 zählt und für einen ausgesuchten Haeder mal verdeutlicht, wie man die Informationen extrahiert.
Wahrscheinlich geht hier das Einrücken verloren, sodass das Programm etwas schwer lesbar sein wird. Musst Du mal sehen …
Gruß
Ted
program header;
type my_file = file of byte;
var bns:array[1…4] of byte;
f:my_file;
i,j,k,maske:byte;
n,ausgabe:longint;
begin
n:=0;
ausgabe:=167;
assign(f,‚xxxxxxxx.mp3‘);
reset(f);
read(f,bns[1]);
while not eof(f) do
begin
read(f,bns[2]);
if (bns[1]=255) and (bns[2] and 224 = 224)
then begin
n:=n+1;
for i:=3 to 4 do read(f,bns[i]);
if (n=ausgabe) then begin
writeln(‚Header Nr. : ‚,n);
writeln(‚AAAAAAAAAAABBCCDEEEEFFGHIIJJKLMM‘);
for j:=1 to 4 do
begin
maske:=128;
for k:=1 to 8 do
begin
if (bns[j] and maske = maske) then write(‚1‘)
else write(‚0‘);
maske:=maske div 2;
end;
end;
writeln;
if (bns[4] and 8 = 8) then writeln(‚k = 1, Audio is copyrighted.‘)
else writeln(‚k = 0, Audio is not copyrighted.‘);
end;
read(f,bns[1]);
end
else bns[1]:=bns[2];
end;
writeln(n,‘ Frameheader gefunden!‘);
close(f);
readln;
end.