Mailing List archive

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

[linux-dvb] Re: pid filtering




> -----Original Message-----
> From: Marcus Metzler [mailto:mocm@metzlerbros.de]
> Sent: 23. mai 2003 12:27
> To: Harald Dankworth
> Cc: linux-dvb@linuxtv.org
> Subject: [linux-dvb] pid filtering
> 
> Harald Dankworth writes:
>  > I have some problems with the mpeg-2 mpts to mpeg-2 spts filtering in
> the
>  > linux driver with a WinTV Nova card; during playback it seems like the
> pcr
>  > is not correct. The playback is choppy if the demultiplexer does not
> support
>  > resampling for correction of the pcr.
>  >
> 
> With what program/hardware. The av7110 does not check PCRs when doing
> playback and most software player don't do that either. They just use
> the PTS for synching.

I multicast the transport stream read from the dvr device. On the client
side I use either the videolan client or a directshow player I have
developed. The videolan client performs resampling, so the playback is quite
well. However, with the Microsoft mpeg-2 demultiplexer the playback is
choppy because there is apparently no resampling. With a high-end
remultiplexer, instead of using a pc with dvb card etc., the directshow 
player works fine.

>  > According to ISO/IEC 13818-1 page xiii:
>  > "Figure 0-3 illustrates the second case, where a transport stream
> containing
>  > multiple programs is converted into a transport stream containing a
> single
>  > program. In this case the remultiplexing operation may necessitate the
>  > correction of program clock reference (pcr) values to account for
> changes in
>  > the pcr locations in the bit stream."
>  >
>  > Thus, if the dvb driver drops packets from the mpeg-2 mpts there pcr
> should
>  > be restamped. There is one paper covering the problem:
>  > http://cairo.cs.uiuc.edu/HD/mse2002.pdf
> 
> The kernel only does the filtering not the remultiplexing. And it is
> not a multiple program TS (mpts I guess but should not have to)
> to single program TS filtering, it is a simple PID filter. The rest
> has to be done in userspace. The kernel cannot be responsible for the
> internals of the transport stream, because otherwise it would have to
> check all the filters that are open in order to see if there is a
> certain service which is filtered and than adjust the clock values for
> that service. E.g. if you only filter the audio stream of a program,
> you usually won`t even get a PCR.

This answers my question.

>  >
>  > Has anybody any thoughts about this?
>  >
> 
> There could be a new type of filter which filters a certain
> service or as you said mpts to spts. This would require the kernel to
> check the PAT and PMT and get all the PIDs belonging to the
> service. Then it has to adjust the tables and clocks accordingly.
> IMHO this is probably not a job for the kernel, unless there is a
> hardware solution.

Is there any open-source projects implementing a remultiplexer?

Harald

---
Outgoing mail is certified Virus Free.
Checked by AVG anti-virus system (http://www.grisoft.com).
Version: 6.0.443 / Virus Database: 248 - Release Date: 10.01.2003
 


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



Home | Main Index | Thread Index