Mailing List archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[linux-dvb] converting PES to TS while reading from (multiple)/dev/ost/demux0



Hi,

now that I got working PS and PES from /dev/ost/dvr0 (thanks, Marcus!),
I want to convert PES which is read from /dev/ost/demux0 to a TS and/or
to a PS. The reason for this is, that it is not possible to view TV
while reading from dvr0, as opposed to reading from demux0 (at least on
the dbox2).

First I tried to write TS headers myself until I found
write_ts_header(), which seems to do a good job. Now I have 2 main
problems:

If I filter for one pid, the result almost seems to be fine (e.g. about
400KB/s, but distorted video). If I filter for two pids, the data rate
does not increase but instead drops to about 80KB/s. I am using poll()
to see which demux file descriptor has data available. How large should
the read buffer be for every PES?

As far as I understood, a TS packet which contains the beginning of a
PES packet must begin with the PES packet as the first data byte. If the
size of the PES packet ist smaller than 184 bytes, then the missing
bytes must be padded. But what to do when the PES_packet_length is set
to zero? Do I have to search for the next PES packet manually? What is
the maximum size of a PES packet? 0xFFFF?

Thanks in advance,
obi



-- 
Info:
To unsubscribe send a mail to listar@linuxtv.org with "unsubscribe linux-dvb" as subject.


Home | Main Index | Thread Index