PDA

View Full Version : From DVD to DVD


dvdlearner
26th September 2001, 19:22
I dont know how to name this subject, but the idea is to make a new DVD (DVD-R with A03) from one or more DVDs.
Applications: you may want to make a new collection of clips and have your own DVD with all your favourites in it. Typical uses are: MTV, karaOK, sport, porno etc.
Obviouse, this is not to copy films.

Requirement is: keep the highest vedio quality, thus no re-encoding, use the original clips, selection of scenes and editing are necessary.

Anybody has done that?
I have tried this way, but not successful:
1) rip vobs to harddisk (SmartRipper)
2) demultiplex the vobs (in chapters or scenes) (bbtool or Vobrator)
3) eddit m2v's and ac3's (Vitec mpeg2pro)
4) authoring again (Scenarist NT2.0) FAILED here!

Problem I have is the multiplexing of these edited m2v's and ac3's. Error message says kind of buffer underflows, so the multiplexing stoped. Why?

Darkbird
27th September 2001, 01:09
I have had a similar problem. The Vitec mpeg editor is causing the problem. It can create GOP's that are too long for the DVD standard. The long GOP is causing the undeflow when muxing. It messes up when it gets to a shorter than normal GOP at a scene break. It continues filling up the output GOP with the frames from the next GOP, and thus creates a GOP with more than one 'I' frame and lots more 'B' and 'P' frames.

My solution was to use a different mpeg editor, M2-Edit. Version 3 (and up ?) works really well for editing. Only bad thing I can say about it is that the multiplexed mpeg-2 streams it creates are super big (mpeg-1 is fine). Much bigger than they should be. But, it does have a good demuxing tool so that you can break down the mpeg into the video and audio needed for dvd authoring. I believe version 4 allows editing just a video or audio stream, not just multiplexed streams.

You should keep the Vitec editor around for doing cuts on ac3 audio files. It's the only editor that I know of that can do that sort of thing.

dvdlearner
28th September 2001, 15:12
Hi Darkbird,

Thanks for your comments. But I have tried this. Set the editing mode in VitecMpeg2Pro to GOP accurate.
Actually I got three kinds of error during Scenarist muxing, GOP size too large, video or audio buffer underflow and Can't read the input stream. I guess the later two are related, but the GOP problem can be prevented.
GOP size problem is due to the vob cutting, which is not neat and leave open GOP at both ends. I use Vitec to drop some frames at both ends and the Scenarist doesn't complain the GOP size any more. Then I have the other errors like buffer underflow. I know little about the mpeg2 structure and don't understand what kind of buffer it is. Using BitrateViewer I can check mpeg2 stream, there is a 'VBV buffer size'. What is it? are they the same?
On the other hand you can mux them anyway by DVDMotion which doenst check the GOP compliance. After making DVD volumes use SmartRipper again to rip the vob. SmartRipper will create an info file listing every GOP structure. You can be sure there is no GOP size problem in the vob/m2v.

Darkbird
28th September 2001, 20:04
I should have some time this weekend to research this further and do some cutting and pasting from programs that can show the stream structure. That should make what I'm writing about clearer. So, check this thread again later . . .

Darkbird
1st October 2001, 01:51
Here's the before and after info on a very short test clip, using the Vitec editor in GOP accurate mode.

Using a little utility called 'm2vinfo', the GOP structure looks like this before editing:
= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =
Gop header; hour, minute, sec, frame: 0, 0, 0, 0
drop_flag, closed_gop, broken_link: 0 1 0
Sequence header: frame_rate_code 29.97 aspect_ratio 3:4 bitrate 7000000
display size 704 480
Type 1 tff 1 rff 0 temp_reference 0
Type 2 tff 1 rff 0 temp_reference 2
Type 3 tff 1 rff 0 temp_reference 1
Type 2 tff 1 rff 0 temp_reference 5
Type 3 tff 1 rff 0 temp_reference 3
Type 3 tff 1 rff 0 temp_reference 4
Type 2 tff 1 rff 0 temp_reference 7
Type 3 tff 1 rff 0 temp_reference 6
Gop header; hour, minute, sec, frame: 0, 0, 0, 8
drop_flag, closed_gop, broken_link: 0 1 0
Sequence header: frame_rate_code 29.97 aspect_ratio 3:4 bitrate 7000000
display size 704 480
Type 1 tff 1 rff 0 temp_reference 0
Type 2 tff 1 rff 0 temp_reference 2
Type 3 tff 1 rff 0 temp_reference 1
Type 2 tff 1 rff 0 temp_reference 5
Type 3 tff 1 rff 0 temp_reference 3
Type 3 tff 1 rff 0 temp_reference 4
Type 2 tff 1 rff 0 temp_reference 8
Type 3 tff 1 rff 0 temp_reference 6
Type 3 tff 1 rff 0 temp_reference 7
Type 2 tff 1 rff 0 temp_reference 9
Gop header; hour, minute, sec, frame: 0, 0, 0, 18
drop_flag, closed_gop, broken_link: 0 1 0
Sequence header: frame_rate_code 29.97 aspect_ratio 3:4 bitrate 7000000
display size 704 480
Type 1 tff 1 rff 0 temp_reference 0
Type 2 tff 1 rff 0 temp_reference 2
Type 3 tff 1 rff 0 temp_reference 1
Type 2 tff 1 rff 0 temp_reference 5
Type 3 tff 1 rff 0 temp_reference 3
Type 3 tff 1 rff 0 temp_reference 4
Type 2 tff 1 rff 0 temp_reference 8
Type 3 tff 1 rff 0 temp_reference 6
Type 3 tff 1 rff 0 temp_reference 7
Type 2 tff 1 rff 0 temp_reference 11
Type 3 tff 1 rff 0 temp_reference 9
Type 3 tff 1 rff 0 temp_reference 10
Type 2 tff 1 rff 0 temp_reference 14
Type 3 tff 1 rff 0 temp_reference 12
Type 3 tff 1 rff 0 temp_reference 13
Gop header; hour, minute, sec, frame: 0, 0, 1, 3
drop_flag, closed_gop, broken_link: 0 0 0
Sequence header: frame_rate_code 29.97 aspect_ratio 3:4 bitrate 7000000
display size 704 480
Type 1 tff 1 rff 0 temp_reference 2
Type 3 tff 1 rff 0 temp_reference 0
Type 3 tff 1 rff 0 temp_reference 1
Type 2 tff 1 rff 0 temp_reference 5
Type 3 tff 1 rff 0 temp_reference 3
Type 3 tff 1 rff 0 temp_reference 4
Type 2 tff 1 rff 0 temp_reference 8
Type 3 tff 1 rff 0 temp_reference 6
Type 3 tff 1 rff 0 temp_reference 7
Type 2 tff 1 rff 0 temp_reference 11
Type 3 tff 1 rff 0 temp_reference 9
Type 3 tff 1 rff 0 temp_reference 10
Type 2 tff 1 rff 0 temp_reference 14
Type 3 tff 1 rff 0 temp_reference 12
Type 3 tff 1 rff 0 temp_reference 13
Gop header; hour, minute, sec, frame: 0, 0, 1, 18
drop_flag, closed_gop, broken_link: 0 0 0
Sequence header: frame_rate_code 29.97 aspect_ratio 3:4 bitrate 7000000
display size 704 480
Type 1 tff 1 rff 0 temp_reference 2
Type 3 tff 1 rff 0 temp_reference 0
Type 3 tff 1 rff 0 temp_reference 1
Type 2 tff 1 rff 0 temp_reference 5
Type 3 tff 1 rff 0 temp_reference 3
Type 3 tff 1 rff 0 temp_reference 4
Type 2 tff 1 rff 0 temp_reference 8
Type 3 tff 1 rff 0 temp_reference 6
Type 3 tff 1 rff 0 temp_reference 7
Type 2 tff 1 rff 0 temp_reference 11
Type 3 tff 1 rff 0 temp_reference 9
Type 3 tff 1 rff 0 temp_reference 10
Type 2 tff 1 rff 0 temp_reference 14
Type 3 tff 1 rff 0 temp_reference 12
Type 3 tff 1 rff 0 temp_reference 13
= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =


The GOP structure looks like this after editing:
= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =
Gop header; hour, minute, sec, frame: 0, 0, 0, 0
drop_flag, closed_gop, broken_link: 0 0 0
Sequence header: frame_rate_code 29.97 aspect_ratio 3:4 bitrate 7000000
display size 704 480
Type 1 tff 1 rff 0 temp_reference 0
Type 2 tff 1 rff 0 temp_reference 1
Type 2 tff 1 rff 0 temp_reference 4
Type 3 tff 1 rff 0 temp_reference 2
Type 3 tff 1 rff 0 temp_reference 3
Type 2 tff 1 rff 0 temp_reference 6
Type 3 tff 1 rff 0 temp_reference 5
Gop header; hour, minute, sec, frame: 0, 0, 0, 7
drop_flag, closed_gop, broken_link: 0 0 0
Sequence header: frame_rate_code 29.97 aspect_ratio 3:4 bitrate 7000000
display size 704 480
Type 1 tff 1 rff 0 temp_reference 0
Type 2 tff 1 rff 0 temp_reference 2
Type 3 tff 1 rff 0 temp_reference 1
Type 2 tff 1 rff 0 temp_reference 5
Type 3 tff 1 rff 0 temp_reference 3
Type 3 tff 1 rff 0 temp_reference 4
Type 2 tff 1 rff 0 temp_reference 8
Type 3 tff 1 rff 0 temp_reference 6
Type 3 tff 1 rff 0 temp_reference 7
Type 2 tff 1 rff 0 temp_reference 9
Sequence header: frame_rate_code 29.97 aspect_ratio 3:4 bitrate 7000000
display size 704 480
Type 1 tff 1 rff 0 temp_reference 10
Type 2 tff 1 rff 0 temp_reference 12
Type 3 tff 1 rff 0 temp_reference 11
Type 2 tff 1 rff 0 temp_reference 15
Type 3 tff 1 rff 0 temp_reference 13
Type 3 tff 1 rff 0 temp_reference 14
Type 2 tff 1 rff 0 temp_reference 18
Type 3 tff 1 rff 0 temp_reference 16
Type 3 tff 1 rff 0 temp_reference 17
Type 2 tff 1 rff 0 temp_reference 21
Type 3 tff 1 rff 0 temp_reference 19
Type 3 tff 1 rff 0 temp_reference 20
Type 2 tff 1 rff 0 temp_reference 24
Type 3 tff 1 rff 0 temp_reference 22
Type 3 tff 1 rff 0 temp_reference 23
Gop header; hour, minute, sec, frame: 0, 0, 1, 2
drop_flag, closed_gop, broken_link: 0 0 0
Sequence header: frame_rate_code 29.97 aspect_ratio 3:4 bitrate 7000000
display size 704 480
Type 1 tff 1 rff 0 temp_reference 2
Type 3 tff 1 rff 0 temp_reference 0
Type 3 tff 1 rff 0 temp_reference 1
Type 2 tff 1 rff 0 temp_reference 5
Type 3 tff 1 rff 0 temp_reference 3
Type 3 tff 1 rff 0 temp_reference 4
Type 2 tff 1 rff 0 temp_reference 8
Type 3 tff 1 rff 0 temp_reference 6
Type 3 tff 1 rff 0 temp_reference 7
Type 2 tff 1 rff 0 temp_reference 11
Type 3 tff 1 rff 0 temp_reference 9
Type 3 tff 1 rff 0 temp_reference 10
Type 2 tff 1 rff 0 temp_reference 14
Type 3 tff 1 rff 0 temp_reference 12
Type 3 tff 1 rff 0 temp_reference 13
Gop header; hour, minute, sec, frame: 0, 0, 1, 17
drop_flag, closed_gop, broken_link: 0 0 0
Sequence header: frame_rate_code 29.97 aspect_ratio 3:4 bitrate 7000000
display size 704 480
Type 1 tff 1 rff 0 temp_reference 2
Type 3 tff 1 rff 0 temp_reference 0
Type 3 tff 1 rff 0 temp_reference 1
Type 2 tff 1 rff 0 temp_reference 5
Type 3 tff 1 rff 0 temp_reference 3
Type 3 tff 1 rff 0 temp_reference 4
Type 2 tff 1 rff 0 temp_reference 8
Type 3 tff 1 rff 0 temp_reference 6
Type 3 tff 1 rff 0 temp_reference 7
Type 2 tff 1 rff 0 temp_reference 11
Type 3 tff 1 rff 0 temp_reference 9
Type 3 tff 1 rff 0 temp_reference 10
Type 2 tff 1 rff 0 temp_reference 14
Type 3 tff 1 rff 0 temp_reference 12
Type 3 tff 1 rff 0 temp_reference 13
= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =


Notice that not only was a GOP header dropped at a scene change, but all of the 'Closed_GOP' flags have been turned off.

Using the transcoder program 'rempeg2' to view the structure, it looks like this before editing:
= = = = = = = = = = = = = = = = = = = = =
GOP 00001: IPBPBBPB
GOP 00002: IPBPBBPBBP
GOP 00003: IPBPBBPBBPBBPBB
GOP 00004: IBBPBBPBBPBBPBB
GOP 00005: IBBPBBPBBPBBPBB
= = = = = = = = = = = = = = = = = = = = =

and looks like this after editing:
= = = = = = = = = = = = = = = = = = = = =
GOP 00001: IPPBBPB
GOP 00002: IPBPBBPBBPIPBPBBPBBPBBPBB
GOP 00003: IBBPBBPBBPBBPBB
GOP 00004: IBBPBBPBBPBBPBB
= = = = = = = = = = = = = = = = = = = = =


The Vitec editor also seems to have dropped a frame in the first GOP and changed the structure of the 'B' and 'P' frames (re-encoded perhaps ?) there as well. Not good.

Anyway, the DVD spec only allows a maximum of 32 fields per GOP. The 25 frames in the second GOP of the edited output means 50 fields for that GOP. And that will cause muxing problems. Clear as mud now ?

The REAL Arky
1st October 2001, 04:55
Yeah, I noticed that the Vitec editor screws up MPEG files too - which is a pity because it is far easier to use than M2-edit.

To the best of my knowledge, the DVD spec only permits a maximum GOP-length of 15frames (PAL), & 18frames (NTSC).


Arky ;o)

Darkbird
1st October 2001, 09:09
Ooops, yes I think you're right, it's 18 frames or 36 fields for NTSC (not 16/32). But 50 is still more than 36.

I don't think I've seen it mentioned anywhere, but I've had problems with streams being accepted by scenarist that were 23.97fps had a gop-size of 15 frames and used pulldown to make them 29.97fps. After pulldown, that would be 37 or 38 fields; which is over the 36 max for NTSC. So I've learned to set the encoders for gop-sizes of 12 frames (what most NTSC dvd's use) when making 23.97fps video, which gives a pulldowned set of 30 fields.

dvdlearner
1st October 2001, 19:01
Darkbird, you are right. I have checked again Vitec editor last weekend and got the same result. In the original DVD video tream, there are here and then some GOPs having smaller frame size (3,6,9 <12 in PAL). Vitec dropped the seq heads of their neighbour GOPs and mergered them. But if you do a re-encoding, you will get a quite uniform GOP size so that Vitec will not generate that problem. That is why I didn't realize Vitec causes problems.
I have also tested M2 editor and it worked fine. M2 was a CBR editor and fortunately can do VBR editing now. Thanks again.

Gary1225
4th February 2002, 12:32
I just installed my HP DVD+RW and have been desperately trying to figure out an EASY way to edit parts (different segments from the same and/or different DVD's) together. I've been able to get whole DVD's easily onto my hard drive without losing any quality. I've read everything posted in this thread but it's a little over my head. I'm hoping that since the last post (Oct of last year) there is a new program available that will allow me to see what I'm editing and allow me to put pieces of DVD's together without having to change the file type, so I can avoid degrading the picture and sound. Anyone have any answers???