Hi.
Software, even if generaly accepting of Transport Stream files, such as TMPGEnc (free ed, note!), will not even read .trp files!
VLC will not always (if ever) play .trp files, as they stand, and in fact the only two programs that have read the files successfully, are MPEG Stream Clip, and ProjectX. Even analysis programs such as TSReader, will not accept the .trp files without some modification.
The problem lies in the fact that the .trp files of the Digihome are only partial TS files. They have been stripped of all their repetative data, assumed to be in order to save on space. Instead, missing data has been replaced by an indexing system, which helps playback of the streams by hardware, indexing the frames/audio, and so on. A number of indexing systems exsist, all of which seem 'custom' made to suit the manufacturer (view sites such as 'free patentsonline' for plenty of examples). The only commercial system I have seen, is one by Elecard, who make XMuxer Pro, a brilliant allternative to TMPGEnc. I incidently, have not yet managed to find the patent for the Vestel system (and Vestel wouldn't let on), and have had to relay on the team at Elecard to tell me what the indexing did.
The most obvious ommission from the .trp files, are the PAT and PMT tables (Program Association, and Program Map tables respectively). Without these, it isn't possible for decoders to distinguish between various programs within a multiplex. They are, however, not essential for playback if all the video and audio data is present. Hence, software players will often play .trp files anyway, and without any trouble. ie, there arn't any sync. or other problems at all, as the video and audio data is exactly the same for a .ts file. Thus, if your particular player and editor will accept them, than fine, there will be no problems. The problem arises with software which is looking for a 'compliant' stream, ie one which conforms to the specifications for MPEG-2 compression. These will usually reject .trp files, simply on the grounds that the PAT and PMT arn't there. Otherwise, they wouldn't have any worries about dealing with them.
By compliant, it is meant that the TS streams comply with the directives given by ISO 3818 and all it's parts, and inparticular for DVB-T, ETSI TS/TR 101 154 and associated parts. This is the only 'standardisation' I could find anywhere for a .ts file, as .ts files can vary from manufacturer to manufacturer (it is not like, say, a Word document, which adheers to a very specific format).
According to ISO3818-1 (Systems), the PAT/PMT need to appear every no less than every 100ms. It is more stringent for DVB-T, requiring that streams have the PAT/PMT appear at least every 40ms. That is a very large number of occurrances when looking at the binary data of a file! With the .trp files, it is not clear if the PCR was altered in order to compensate for the packets removal. Hence, replacing the packets within the stream could prove more difficult than expected.
MPEG Stream Clip and ProjectX both will do conversion of the file to .ts. However, the resultant streams are non-compliant. That is, the tables do not appear regularly enough to conform to the standards of ISO3818 etc. That doesn't mean that they won't play, nor that they will play badly. Th quality of the playback relys soley on the quality of the video/audio data. Hence, if quality of the original stream is to be maintained, all other alteration/conversion of the data by the software such as ProjectX, must be 'switched off'. This is easier said than done, but it is possible to produce a conversion in both programs which leaves the video/audio data untouched, and just replaces the tables, as required (try playing around with the .ini file for ProjectX, if there is difficulty). If any conversion of the video/audio is done, it is then that quality markedly suffers, and sync/ other problems are introduced to the data (for eg, leaving ProjectX to treat the data as 'progressive' rather than 'interlaced', as is default, will produce a massive effect!). Thus, it is imperitive that the data remain the same if accurate editing is later required. Leave all data conversion (to say MPEG-2 PS file for DVD production) to commercial software, such as TMPGEnc 4 Xpress, which does the job far better than any freeware material could (same applies if using XMuxer Pro).
The software mentioned will still re-arrange the packets (to group together some of the Audio), and completely re-do the timing! This accounts for why there is no concern on their part about re-introducing the tables into the stream. Jitter is often the result, which also must be avoided if using the original timing. Jitter will affect sync, and cause 'stuttering' of the video, plus other undesireable effects. The work needed on the packets to remove Jitter is quite difficult, that is why it is hoped that the tables wern't removed with timing alteration as well. Jitter, of course, might be a broadcast problem anyway. This will show up no matter what file/software is used.
In conclusion, I am still aiming to write a simple program that re-introduces the PAT/PMT data, which will make the streams compliant, and acceptable to other software. I have not as yet found if the tables need to be completely re-generated (complete with CRC etc), or exist somewere else on the disks first partition. I also have not done enough study to find if other data has been removed (eg NIT, CAT tables etc). When I lost all my equipment, I foolishly got rid of all my notes as well! I have managed to get some equipment back together again, and hence hope to resume experimenting.
If you find any software that accepts the .trp file, than all well and good. Certainly, it is possible to palyback the .trp files with no problem on a PC, with no visible compromise in quality (unless this was introduced by broadcast/recording). If, however, you wish to do any serious quality conversion/editing, then some alteration is necessary to get commercial software to accept the files (except it seems, Sony Vagas!). This might be as little as just 'fooling' the software by sticking a couple of extra packets at the beginning of the file. This fools TSReader for eg, which then can be used to add the other packets (using manual PID declaration).
Sorry for a long, boring post again!!!
Tim.