Steven M. Schultz wrote:
On Tue, 20 Dec 2005, sean wrote:
I got 12/19 cvs. Built that with gcc-4.1.
1. Region2D.hh needs an #include <cassert>
Hmmm, 4.0.1 didn't need that - easy enough to add though, it's in
CVS now.
Then I re-dvgrab'ed the tape --format raw.
Ok.
When I ran it I got a segfault for mpeg2enc.
smil2yuv -i 2 moontrap-raw/dv/moontrap-001.dv |
yuvdenoise | \
y4mscaler -O preset=dvd | \
mpeg2enc -D 10 -f 8 -q 5 -E -10 -4 1 -2 1 -o moontrap.m2v
and here's the output:
Looked good until something became upset. One thing to try would
be to "unlimit coredump" and then "gdb mpeg2enc core" to see where
it died.
NOT that it makes any difference - but for chroma conversion only
(with no resizing) you could use "-O chromass=420mpeg2".
INFO: [y4mscaler] Frame number 2
test.raw: line 6: 31236 Broken pipe smil2yuv -i
2 moontrap-raw/dv/moontrap-001.dv
31237 | yuvdenoise
31238 | y4mscaler -O preset=dvd
31240 Segmentation fault | mpeg2enc -D 10 -f 8 -q
5 -E -10 -4 1 -2 1 -o moontrap.m2v
Well, I tried the identical commands (changing only the filenames ;))
and nothing segfaulted.
Next thing to try is isolate the problem one step at a time. First
is checking the YUV4MPEG2 header at each stage.
smil2yuv -i 2 moontrap-raw/dv/moontrap-001.dv | head -n 1
should produce
YUV4MPEG2 W720 H480 F30000:1001 Ib A10:11 C411
smil2yuv -i 2 moontrap-raw/dv/moontrap-001.dv | head -n 1
YUV4MPEG2 W720 H480 F30000:1001 Ib A10:11 C411
Then add the next command:
smil2yuv -i 2 ... | yuvdenoise | head -n 1
should produce the same output
it does:
smil2yuv -i 2 moontrap-raw/dv/moontrap-001.dv |
yuvdenoise | head -n 1
INFO: [yuvdenoise]
-----------------------------------------------------
INFO: [yuvdenoise] mjpeg-tools yuvdenoise version 1.9.0
INFO: [yuvdenoise]
-----------------------------------------------------
INFO: [yuvdenoise] Using the following thresholds:
INFO: [yuvdenoise] Spatial-Noise-Filter [Y,U,V] : [3,6,6]
INFO: [yuvdenoise] Gauss-Lowpass-Filter [Y,U,V] :
[32,255,255]
INFO: [yuvdenoise] Temporal-Noise-Filter [Y,U,V] : [3,6,6]
INFO: [yuvdenoise] Y4M-Stream 720x480(4:1:1 (horiz.
cositing))
INFO: [yuvdenoise] Processing Mode : 4:1:1 interlaced
INFO: [yuvdenoise] Luma-Plane : 720x480 pixels
INFO: [yuvdenoise] Chroma-Plane : 180x480 pixels
YUV4MPEG2 W720 H480 F30000:1001 Ib A10:11 C411
INFO: [yuvdenoise] Buffers allocated.
INFO: [yuvdenoise] SETTING EXTENDED MMX for MOTION!
INFO: [yuvdenoise] 16-Bit gamma-transformations
initialized...
Add in the next command
smil2yuv -i 2 ... | yuvdenoise | y4mscaler -O preset=DVD | head -n 1
YUV4MPEG2 W720 H480 F30000:1001 Ib A10:11 C420mpeg2
OK
smil2yuv -i 2 moontrap-raw/dv/moontrap-001.dv | yuvdenoise
| y4mscaler -O preset=DVD | head -n 1
INFO: [yuvdenoise]
-----------------------------------------------------
INFO: [yuvdenoise] mjpeg-tools yuvdenoise version 1.9.0
INFO: [yuvdenoise]
-----------------------------------------------------
INFO: [yuvdenoise] Using the following thresholds:
INFO: [yuvdenoise] Spatial-Noise-Filter [Y,U,V] : [3,6,6]
INFO: [yuvdenoise] Gauss-Lowpass-Filter [Y,U,V] :
[32,255,255]
INFO: [yuvdenoise] Temporal-Noise-Filter [Y,U,V] : [3,6,6]
INFO: [yuvdenoise] Y4M-Stream 720x480(4:1:1 (horiz.
cositing))
INFO: [yuvdenoise] Processing Mode : 4:1:1 interlaced
INFO: [yuvdenoise] Luma-Plane : 720x480 pixels
INFO: [yuvdenoise] Chroma-Plane : 180x480 pixels
INFO: [yuvdenoise] Buffers allocated.
INFO: [yuvdenoise] SETTING EXTENDED MMX for MOTION!
INFO: [yuvdenoise] 16-Bit gamma-transformations
initialized...
INFO: [y4mscaler] Input Stream Header:
INFO: [y4mscaler] <<< frame size: 720x480 pixels
(518400 bytes)
INFO: [y4mscaler] <<< chroma: 4:1:1 (horiz. cositing)
INFO: [y4mscaler] <<< frame rate: 30000/1001 fps
(~29.970030)
INFO: [y4mscaler] <<< interlace: bottom-field-first
INFO: [y4mscaler] <<< sample aspect ratio: 10:11
INFO: [y4mscaler] DVD output format requested in NTSC norm.
INFO: [y4mscaler] Source matte region defaulting to full
source frame.
INFO: [y4mscaler] Source active region defaulting to
full source frame.
INFO: [y4mscaler] Target interlacing defaulting to match
source.
INFO: [y4mscaler] Target active region defaulting to
full target frame.
INFO: [y4mscaler] Deriving ratios from active regions
and SARs...
INFO: [y4mscaler] ...using scaling ratios which pad target.
INFO: [y4mscaler] ...using scaling ratios which are simple.
INFO: [y4mscaler] === SOURCE parameters: =================
INFO: [y4mscaler] < stream:
INFO: [y4mscaler] < 720x480, SAR 10:11, bottom-field-first
INFO: [y4mscaler] < chroma subsampling: 4:1:1 (horiz.
cositing)
INFO: [y4mscaler] < chroma ss ratios: x 1:4 y 1:1
INFO: [y4mscaler] < active region:
INFO: [y4mscaler] < 720.000000x480.000000 at
0.000000,0.000000
INFO: [y4mscaler] < matte region:
INFO: [y4mscaler] < 720x480 at 0,0 (bg Y'CbCr:
16,128,128)
INFO: [y4mscaler] === SCALING parameters: ================
INFO: [y4mscaler] | Scaler: Matto's Generic Scaler
INFO: [y4mscaler] | kernels: cubicK4, cubicK4
INFO: [y4mscaler] === TARGET parameters: =================
INFO: [y4mscaler] > stream:
INFO: [y4mscaler] > 720x480, SAR 10:11, bottom-field-first
INFO: [y4mscaler] < chroma subsampling: 4:2:0 MPEG-2
(horiz. cositing)
INFO: [y4mscaler] < chroma ss ratios: x 1:2 y 1:2
INFO: [y4mscaler] > active region:
INFO: [y4mscaler] > 720x480 at 0,0 (bg Y'CbCr:
16,128,128)
INFO: [y4mscaler] > X ratio: 1/1
INFO: [y4mscaler] > Y ratio: 1/1
INFO: [y4mscaler] Output Stream Header:
INFO: [y4mscaler] >>> frame size: 720x480 pixels
(518400 bytes)
INFO: [y4mscaler] >>> chroma: 4:2:0 MPEG-2
(horiz. cositing)
INFO: [y4mscaler] >>> frame rate: 30000/1001 fps
(~29.970030)
INFO: [y4mscaler] >>> interlace: bottom-field-first
INFO: [y4mscaler] >>> sample aspect ratio: 10:11
INFO: [y4mscaler] Frame number 0
YUV4MPEG2 W720 H480 F30000:1001 Ib A10:11 C420mpeg2
Note that the chroma has been resampled and the tag changed.
Finally try playing the file with yuvplay:
smil2yuv -i 2 ... | yuvdenoise | y4mscaler -O preset=DVD | yuvplay
ok. it plays.
If that works but mpeg2enc faults then it would seem to be a bug
being triggered somehow in the encoder. A gdb backtrace will be
needed - allow the core file to be created and then after getting into
gdb (gdb mpeg2enc core) type "bt" or "where".
Sadly this is worse than greek to me. Even worse, I'll be
away for 2 weeks - well not worse for me.
I think there some gcc-4.1 error that's causing this. It
seems odd that mpeg2enc from dec 11 built with 4.0.1 ( what
I've gone back to) doesn't have this problem.
sean
-------------------------------------------------------
This SF.net email is sponsored by: Splunk Inc. Do you grep through log files
for problems? Stop! Download the new AJAX search engine that makes
searching your log files as easy as surfing the web. DOWNLOAD SPLUNK!
http://ads.osdn.com/?ad_id=7637&alloc_id=16865&op=click
_______________________________________________
Mjpeg-users mailing list
Mjpeg-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/mjpeg-users