Mailing List archive

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

[linux-dvb] Re: mplex and mpegtools 2gb limit




Hi again,

I tried the package in the URL posted to the list a few hours ago and have
definately got further.... but.....

I tried using dvb-mplex to convert a TS_STREAM into a "mpg" file, as I
have done previously (though only with files <2GB).

Again, it hangs after completing the demuxing of the TS_Stream into
tmp_as.mp2 and tmp_vs.m2v.

I used the new version of ts2es to split the TS_STREAM into two files aud
and vid as I tried before.....

# ts2es DVB-9-20021127-2059.36+2h10m.ts 1 > vid
# ts2es DVB-9-20021127-2059.36+2h10m.ts 2 > aud

Both times when it reaches the end of the TS file, and looks like it has
completed vid and aud, it hangs.. in exactly the same way dvb-mplex hangs
with:
# dvb-mplex -t MPEG2 -o test.mpg -i TS_STREAM DVB-9-20021127-2059.36+2h10m.ts


read(3, "", 1880)                       = 0
read(3, "", 1880)                       = 0
read(3, "", 1880)                       = 0

... repeats for ever.. Why is it continuing to read from this file.. the
return value of 0 indicated EOF surely?

Anyway.. I again waited until the files aud and vid stopped growing.. and
hit ^C to kill them off... then ran

# dvb-mplex -t MPEG2 -o test.mpg -i ES_STREAM vid aud

Much more promising: Here's the output:


<snip>
Output File is: test.mpg
Setting up for MPEG2 mux


VPTS - APTS = 0ms

  Scanning video stream for a sequence header and pulldown type ...
    no pulldown detected ...

  Scanning video stream for pictures ...
  Found 187520 picture headers, stream bit offset 36267495408.8751.
  Video stream information
    Stream length : 238469630
    Total time (seconds) : 7500
    Sequence start : 15628
    Sequence end : 0
    No. Pictures : 187520
    No. Groups : 15628
    No. I Frames : 15628 avg. size 68370 bytes
    No. P Frames : 46880 avg. size 33197 bytes
    No. B Frames : 125012 avg. size 15267 bytes
    No. D Frames : 0 avg. size 0 bytes
    Horizontal size : 720
    Vertical size : 576
    Aspect ratio : 0.7031
    Picture rate : 25.000 frames/sec
    Bit rate : 556250 bytes/sec (4450000 bits/sec)
    Computed avg rate : 32500 bytes/sec (260000 bits/sec)
    Computed max rate : 929550 bytes/sec (7436400 bits/sec)
    Vbv buffer size : 229376 bytes
    CSPF : 0

  Scanning audio stream for access units information
  Found 312541 audio frame headers, stream bit offset 1920284160.
  MPEG audio stream information
    Stream length : 240035520
    Syncwords : 312541
    Frames : 312541 size 768 bytes
    Frames : 0 size 769 bytes
    Layer : 2
    CRC checksums : yes
    Bit rate : 32000 bytes/sec (256 kbit/sec)
    Frequency : 48.0 kHz
    Mode : 0 stereo
    Mode extension : 0
    Copyright bit : 0 no copyright
    Original/Copy : 0 copy
    Emphasis : 0 none

  Multiplexing information
    Video stream data rate : 929550 bytes/sec (7436400 bits/sec)
    Audio stream 1 data rate : 32000 bytes/sec (256000 bits/sec)
    Overhead data rate : 17250 bytes/sec (138000 bits/sec)
    Total data rate : 978800 bytes/sec (7830400 bits/sec)

  Multiplexing file test.mpg
  Finished multiplexing test.mpg
</snip>


Problems: The percentage when scanning the video stream for pictures:

Scanning video stream: 1301% - byte offset 3103261188 of 238528751.

erm?! the percentage goes up to over 2000%, perhaps the "max value" is
only the least significant 32 bits of the file size, since here its
238Million?? :-o Anyway, Thats cosmetic

When the stream eventually finished, the audio was out of sync by over a
second.. Something I've not seen before. I don't know if this was a result
of using ts2es FIRST, then using dvb-mplex to join to ES_STREAMS (again
soemthing Ive never needed to do before) or if its something to do with
the software and/or my system???

But anyway, it does still seem to be having problems demuxing the TS
stream into ES_Stream components. This has been a problem for a while.
Infact Ive had to use an old version of mplex and mpegtools (6 months
old?) to avoid this deadlocking at the end of files. I wonder if this is
something to do with my version of GLIBC? In newer versions perhaps read
returns a different value at the end of file?

quest:~# gcc -v
Reading specs from /usr/lib/gcc-lib/i386-slackware-linux/2.95.3/specs
gcc version 2.95.3 20010315 (release)
# ls -asl /lib/libc.so.6
   0 lrwxrwxrwx    1 root     root           13 Mar  9  2002 /lib/libc.so.6 -> libc-2.2.5.so*

# cat /etc/slackware-version
8.0.47 (alpha test version)

(URGH.. I will upgrade to 8.1 or 9 soon!)
I think fixing the code steming from ts_demux() in transform.c might fix
the last remaining problem I have?

Just for reference ts2es from the new package.. and indeed from the older
ones.. hangs in the same way:

read(3, "", 1880)                       = 0
read(3, "", 1880)                       = 0
read(3, "", 1880)                       = 0


for ANY TS stream.. not just ones greater than 2GB in size!

I don't want to lump all my troubles to the list without contributing.. I
will look at the code to see what I can find too.. but thought I'd share
my experiences and I am really grateful for any help/suggestions!

Thanks again!

Chris



On Thu, 28 Nov 2002, Andy Coates wrote:

> > Chris Pitchford writes:
> >  >
> >  > Hi all,
> >  >
> >  > Ive upgraded to 2.4.20-rc3 and CVS dated 23rd Nov and my
> > Nova-T card has
> >  > been working a treat! Since I was out and about last night
> > I cron'd up
> >  > dvbstream to record "Analyse This" from Channel 5 here in
> > the UK and it
> >  > worked perfectly.. which beat ALL my previous attempts..
> > usually I get
> >  > serious block errors (according to dvbtune -m) and no more
> > than 5 minutes
> >  > uncorrupted video.. It all seems fine now.. which is good!
> > Just hoping its
> >  > not due to the weather ;)
> >  >
> > Try the latest dvb-mpegtools at
> > http://www.metzlerbros.org/dvb/index.html.
> > If it still doesn't work, tell me and I will see what's wrong.
>
> I have the same problem (input.ts is 2.1GB):
>
> #dvb-mplex -t MPEG2 -i TS_STREAM -p 2312 -q 2311 -o output.mpg input.ts
> Reading from input.ts
> Output File is: output.mpg
> Setting up for MPEG2 mux
>
> Opening tmp_as.mp2 for audio demux
> Opening tmp_vs.m2v for video demux
> TS demux with apid: 2312  vpid: 2311
> Videostream: ASPECT: 4:3  Size = 544x576  FRate: 25 fps  BRate: 3.15
> Mbit/s
> vpts : 82644.598556s
> Audiostream: Layer: 2  BRate: 192 kb/s  Freq: 48.0 kHz
> apts : 82644.757478s
>
>  - then it hangs here.
>
> Files created so far are:
>
> 5860251 Nov 28 19:00 tmp_as.mp2
> 101950737 Nov 28 19:01 tmp_vs.m2v
> andy@angel:~/streams$ date
> Thu Nov 28 19:26:14 GMT 2002
>
> So nothing has been written for a good 25 minutes.  The MUX'd video and
> audio should be 180MB, but its "stuck".  "ts2ps" also has problems with
> the file:
>
> 108328434 Nov 28 14:35 output.ps
>
> Which looks about the same size as a mux'd mplex stream.
>
> Is there some common problem causing mine and Chris' streams to be cut
> short?
>
> Andy.
>
>
>
>
> --
> Info:
> To unsubscribe send a mail to listar@linuxtv.org with "unsubscribe linux-dvb" as subject.
>
>



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



Home | Main Index | Thread Index