(yahoo archiv) File auf Receiver kopieren

uClinux and more...

Moderator: LaSAT

Antworten
Florian_Breu

(yahoo archiv) File auf Receiver kopieren

Beitrag von Florian_Breu »

From: "tibor_loevei" <tibor.loevei@lasat.de>
Subject: [zapmaster] =?iso-8859-1?q?Betrifft:_Format_für_Upload_(pc2box)?=


das format is reines TS nach MPEG 188 byte der beginn bei 0x47. wenn
man ein stream in PS hat, muss man diesen noch in TS transkodieren.

beschreibung zum LaSAT_Rec_Header ->>

diese zwei werte sind fuer FFW und REV gedacht und beinhalten
offsets fuer das schnelle finden von sequence_header im TS.

0xb3010000 <-- sequence_header
0x00010000 <-- picture_header

will man jetzt ein bild stehend darstellen, muss man die positionen
dieser werte kennen.
ein i-bild kann man immer nach einem sequence_header finden und
das ende dieses bildes ist genau der anfang des nachsten bildes, was
aber kein I-bild ist und sozusagen nicht darstellbar .

type; -> oben beschrieben =

U8OfsTsToPictHead; -> U8 offset im record zum TSHead(0x47)
OfsTsHead -> offset von 0x47 zum sequence_header

NbrOfHeads; -> anzahl der header im record
IdxTable[PIC_IDX_MAX]; -> eintrag

will man jetzt einen header erzeugen muss man dies tabelle noch
berechnen :)

1) stream nach video TS filtern
2) sequence_header finden und in der tabelle mit type =3D 1 kennzeichnen
3) picture_header finden und in der tabelle mit type =3D 0 kennzeichnen

hoffe diese ausfuehrungen reichen
bis dann


--- In zapmaster@yahoogroups.de hat "vyruz4u" <vyruz@...> geschrieben:
>
> Hallo!
>
> Der Source des Tools pc2box ist ja frei verfügbar und zeigt
> prinzipiell, wie es möglich ist Dateien auf die Festplatte upzuloaden.
> (Btw.: Ich besitze einen Grand Prix PVR 500 CI.)
>
> Nach meinem Wissen muss eine gültige LaFAT-Datei zu Beginn einen
>
> HD_VFS_PC_HEADER
>
> enthalten (enthält allg. Infos unter anderem die EPG-Beschreibung).
>
> Wenn in diesen Header der gültige Format-String (definiert als
> Konstante: VFS_PC_ACTVERSION) geschrieben wird, so erkennt das Tool
> pc2box die Datei als gültig und ein Upload ist möglich.
>
> Um die Datei jedoch auch abspielen zu können müssen die restlichen
> Daten noch in sogenannte Records unterteilt werden. Am Ende jedes
> Records hängt ein HD_VFS_RECORD_INFO. Auch die Länge der Daten und di=
e
> Größe eines Records sind als Konstanten definiert.
>
> Die RECORD_INFO enthält mehrere Felder und es ist mir bereits
> gelungen, eine Datei, die von der Festplatte ohne PC_HEADER und
> RECORD_INFO heruntergeladen wurde, zu modifizieren und wieder
> upzuloaden, sodass die Datei sich abspielen lässt.
>
> Beim Versuch eine beliebige MPEG-Datei abzuspielen bin ich jedoch bis
> jetzt gescheitert. In einem älteren Eintrag steht, dass sich eine
> beliebige Datei (nachdem sie z.B. mit VLC transkodiert wurde)
> prinzipiell abspielen lassen müsste. In meinem Fall scheint die Datei
> zwar abgespielt zu werden, aber es wird kein Bild angezeigt;
> allerdings nehme ich an, dass dies nur bedeutet, dass die TimeStamps
> der einzelnen Records richtig ausgelesen werden.
>
> Das heißt für mich kommen nur noch zwei Fehlerquellen in Frage:
>
> 1) Das Format der upgeloadeten Datei ist für den Fujitsu SmartMPEG
> nicht lesbar. Leider habe ich keine Information gefunden, welche
> Formate der SmartMPEG verarbeiten kann bzw. welche Formate von LASAT
> zur Verarbeitung vorgesehen und von (ihrer?) Firmware unterstützt
werden.
> Wie bereits gesagt, verweist ein älterer Beitrag auf eine
> Transkodierung in einen MPEG-Transport-Stream.
>
>
> 2) Sollte das Format stimmen, so sind meine Einträge in den
> RECORD_INFOs wohl falsch.
>
> Folgende Felder sind vorhanden:
>
> ActRecordNbr; // Fortlaufende Nummer
> RecHdTimeStamp; // Zeitmarke (in Sekunden)
>
> ActChId; // (Nummer des Sendeplatzes ?)
> ActVideoPid; // Sender-spezifische Information
> ActAudioPid; // --------- || -------------
> ActAc3Pid; // --------- || -------------
>
> NbrOfHeads; // ???
> IdxTable[PIC_IDX_MAX]; // *)
>
> MarkLink; // wird vom Receiver verwaltet
> Linkused; // --------- || -------------
>
>
> *) IdxTable: Enthält drei Felder (type, und 2 Offsets). In der Datei,
> die ich vorher von der Festplatte downgeloaded habe, dann die
> Header-Info und die Aufteilung in Records hinzugefügt habe und dann
> wieder upgeloaded habe, wird in jedem Record "0x00" für IdxTable
> eingetragen. Trotzdem lässt sich die Datei (scheinbar) fehlerfrei
> abspielen. Daher vermute ich, dass der Fehler hier nicht unbedingt
liegt.
>
> Die Pid-Felder betreffen laut meinen Informationen senderspezifische
> Informationen, um bei der gemultiplexten =DCbertragung, die einzelnen
> Blöcke dem jeweiligen Sender zuordnen zu können. Daher sollte auch
> diese Information fürs Abspielen irrelevant sein.
>
>
>
> Kann mir irgendjemand Genaueres zum unterstützten Format bzw. zu den
> einträgen in der RECORD_INFO sagen oder sieht jemand noch andere
> Möglichkeiten, wo der Fehler liegen könnte?
>
>
>
> Mit freundlichen Grüßen
>
> Genewein Tim
>
Florian_Breu

Re: (yahoo archiv) File auf Receiver kopieren

Beitrag von Florian_Breu »

From: "mamue6453" <weisser.zwerg@web.de>
X-Yahoo-Profile: mamue6453
Sender: zapmaster@yahoogroups.de
MIME-Version: 1.0
Mailing-List: list zapmaster@yahoogroups.de; contact zapmaster-owner@yahoogroups.de
Delivered-To: mailing list zapmaster@yahoogroups.de
List-Id: <zapmaster.yahoogroups.de>
Precedence: bulk
List-Unsubscribe: <mailto:zapmaster-unsubscribe@yahoogroups.de>
Date: Wed, 07 Mar 2007 20:10:39 -0000
Subject: [zapmaster] =?iso-8859-1?q?Betrifft:_Format_für_Upload_(pc2box)?=
Reply-To: zapmaster@yahoogroups.de
X-Yahoo-Newman-Property: groups-email-tradt
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: quoted-printable

Hallo,

nochmal ne Frage zu den Strukturen in den Records:
HD_VFS_RECORD_INFO ist 104 Bytes lang (wenn der Compiler das auf mind.
4 Byte aligned) - im Datenstrom sind aber 128 Bytes enthalten und die
"übrig bleibenden" 24 Byte sind nicht 0. Ist das Rauschen oder
wichtig? In pc2box wird das eigentlich nirgens angesprochen - sieht
wie zufällig aus - oder übersehe ich da was?
Die Längenangaben zu den Strukturmembern in der VFS.H sind übrigens
etwas irritierend - die bekommt man nur mit 1 Byte-Alignment. Dann
geht aber das reinnageln der Daten a la cast oder memcpy nicht mehr.

Maja

--- In zapmaster@yahoogroups.de hat "tibor_loevei" <tibor.loevei@...>
geschrieben:
>
> PAT,PMT usw sind erstmal nicht notwendig. wenn dein TS einfach nur die
> PIDs hat, die du in die tabelle eintraegst, dann hast du auch ein
> bild. wenn das bild nicht stabil ist, macht irgendein tool nen fehler.
> problematisch ist die errechnung und aufteilung in die einzelnen
> packete und zeitliche zuordnung. was man vermeiden muss sind VBV und
> ABV ueberlauf und unterlauf und dann noch synchron.
> aktuell gibt es da keine ordentlichen sachen als open source. die
> einzige moeglichkeit is da nur viel zeit und spass an der freude.
>
>
>
>
> --- In zapmaster@yahoogroups.de hat "mamue6453" <weisser.zwerg@>
> geschrieben:
> >
> > Hi,
> >
> > die Werte für die PIDs finden sich im MPEG-Transportstrom (nach
> > Umwandlung mit ProjectX oder VLC) in der sogenannten PMT (program map
> > table). Die Werte sollten die Umwandlungsprogramme bei der
> > Konvertierung ausgeben - ProjectX hat dafür auch eine INFO-Funktion.
> > Falls das gerade nicht zur Hand ist, probiers mal mit E0h für die
> > VideoPID und C0h für die AudioPID.
> >
> > @tibor_loevei
> > >ActChID ist die nummer im TS auf den sich alle SIs beziehen
> > Meint das die PID der PAT? Die ist doch per Definition 0.
> >
> > Maja
> >
> > --- In zapmaster@yahoogroups.de hat "vyruz4u" <vyruz@> geschrieben:
> > >
> > > Hallo!
> > >
> > > Die Probleme im vorigen Posting betreffen FFWD und RWD, sowie das
> > > PicturePreview während der Aufnahmenauswahl. Für das prinzipielle
> > > Abspielen einer Datei wäre dies jedoch egal.
> > >
> > > Ich habe festgestellt, dass die Felder
> > >
> > > > ActChId; // (Nummer des Sendeplatzes ?)
> > > > ActVideoPid; // Sender-spezifische Information
> > > > ActAudioPid; // --------- || -------------
> > > > ActAc3Pid; // --------- || -------------
> > >
> > > durchaus für das fehlerfreie Abspielen richtig versorgt sein müss=
en.
> > > Ich habe dazu eine Aufnahme downgeloaded, den Header
hinzugefügt, die
> > > Datei in Records unterteilt und entsprechend versorgt. Wenn nun die
> > > oben genannten Felder falsche Werte enthalten, so läuft zwar der
Timer
> > > in der untern Leiste, das Bild bleibt jedoch schwarz.
> > > Sind die Felder richtig versorgt, so lässt sich die hochgeladene
Datei
> > > abspielen allerdings bleibt beim Vor- und Zurückspulen das Bild
stehen
> > > (weil die IdxTabels nicht richtig versorgt sind).
> > >
> > > Mir geht es primär das Abspielen beliebiger MPEG-TS-Dateien, die
nicht
> > > vom Receiver stammen. Wie wären also die oben genannten Feldern zu
> > > versorgen (lässt sich das irgendwie aus der Quelle berechnen)?
> > >
> >
>
Antworten