Log in

View Full Version : HD-DVD compliant AVC stream to Blu-Ray compliant AVC stream


Creator1
24th December 2007, 21:19
Hi,

I finally was able to have two files of the same movie, one that is encoded in 29.97fps for HD-DVD compliancy and one that is encoded in 23.976fps for Blu-Ray compliancy.

The problem is, I am not the one who was able to convert the HD-DVD compliant 29.97fps AVC elementary stream to a blu-ray compliant 23.976fps AVC stream. I was just lucky enough to find the blu-ray compliant version of the HD-DVD movie I own.

Now, it is clear to me that this is no re-encode, so some tool has been used to do the conversion or some hex edits were done. I have no idea what tool can do 29.97fps to 23.976fps on an AVC stream with no re-encode but if anybody has an idea please tell me.

I compared both streams with Elecard stream analyzer and I was able to find a pattern more or less clear of the changes that were made. Unfortunately, some are inconsistent to be applied in a simple serach and replace hex edit of the entire file. In fact the parts that are inconsistent makes no sense to me but maybe other people here who knows more about the video file formats in general will understand it more?

Here are the changes I can see:

In every H264 SEI structure, the guy replaced pic_struct from whatever value it was before (it changes in the 29.97 file from HEI structure to another) to 0 all the time (0 = frame instead of interlaced). The num_clock_ts is also changed to always be equal to 1. The cpb_removal_delay changes compared to the 29.97 file but the value of the change differs each time. Same thing for dpb_output_delay.

In every H264 Sequence Parameter Set, the guy changed the gaps_in_frame_num_value_allowed_flag from 1 to 0 but we already knew that. Also, in the same sequence parameter set, he changed num_units_in_tick from 1001 in the 29.97fps file to 5005 in the 23.976fps file. He changed the time_scale from 60000 in the 29.97fps file to 240000 in the 23.976fps file.

In each of the P slices he ADDED some three new elements in the 23.976 compared to the 29.97. Here are the elements:

pred_weight_table()
luma_log2_weight_denom=0
chroma_log2_weight_denom=0

Now, the hard to figure out parts in all this are the "cpb_removal_delay" and "dpb_output_delay" flags in each H264 SEI structure. I can't figure out the pattern after checking it out a little (will continue to check).

TO help you guys see it more clearly, I created two files using elecard stream analyzer. Those presents the entire structures of the first 5 megabytes of each of the files. I named the hd-dvd compliant file "hddvd_29_97.txt" and the bluray one "bluray_23_976.txt".

Do a compare on those two files using any standard text file compare program and you should easily see the differences between the two files.

I hope somebody can figure something out so that we can apply the same thing to any HD-DVD 29.97fps avc movie file to make them blu-ray compliant.

Thanks for any help!

Creator1
25th December 2007, 04:39
Here, I decided to do a ppf patch for people who want to convert their copy of Transformers HD-DVD to blu-ray. You will need the original HD-DVD movie to be able to use this patch.

This is only a small patch that will hex modify your HD-DVD avc elementary stream of Transformers to transform it from 29.97 HD-DVD format to 23.976 blu-ray format.

You will need ppf-o-matic 3.0 to apply the ppf patch file. The program can be found here:

http://www.planete-pes.com/mydownloads-singlefile.cid-19-lid-142.htm

You will also need to download the ppf patch here:

http://rapidshare.com/files/78893320/Transformers_avc_hddvd_to_bluray_patch.zip.html

Then, you need to start ppf-o-matic 3.0 and choose your avc elementary file from the hd-dvd that you obtained after using evodemux and open that file in the "ISO Image" box and open the ppf patch in the "Patch" box and then click Apply. Note that the avc file will be directly edited by this operation and that it will take quite a while to apply.

After that, you should be able to use the resulting avc file to author a blu-ray compliant disc.

NOTE: This only works for Transformers. It won't work for other HD-DVD AVC releases.

Happy holidays to all!

zeroprobe
30th December 2007, 14:45
Ahh I understand now.

Usenet is you friend :)

You might want to put this in the Blu-Ray HD-DVD authoring forum as well. Will be very intresting to see how this pans out.

puppydg68
5th January 2008, 20:59
After that, you should be able to use the resulting avc file to author a blu-ray compliant disc.

NOTE: This only works for Transformers. It won't work for other HD-DVD AVC releases.

Happy holidays to all!

If I want to remux this to M2TS for PS3 streaming, how would I go about muxing the new patched AVC file and a converted AC3 file (from eac3to).

I tried both Xmuxer and Manzanita (align PES - and stripped nulls from resulting mux). neither will allow me to remux the resulting .TS to a playable M2TS.

Creator1
24th January 2008, 19:04
If I want to remux this to M2TS for PS3 streaming, how would I go about muxing the new patched AVC file and a converted AC3 file (from eac3to).

I tried both Xmuxer and Manzanita (align PES - and stripped nulls from resulting mux). neither will allow me to remux the resulting .TS to a playable M2TS.

You can try scenarist but I suspect TSRemux will do the job for what you want... that is, if it does'nt crash on the transformers video or audio file.

You can find tsremux in the hddvd and bluray authoring section here.

glen8
26th January 2008, 15:51
If we're talking about 'Amir' I read an article stating he used a Ulead product. Maybe that's how he changed it from 29 to 24 fps

Really wish someone would work it out as Transformers on Blu-Ray is awesome!!

glen8
26th January 2008, 17:37
How about Elecard Converter Studio Pro?

Import an AVS script calling the video file (stripped from .evo) with the framerate=23.976

Elecard can directly stream the imported file without re-encoding. Would this convert the framerate?

glen8
26th January 2008, 21:56
No that didn't work :-(

someone must know how he did it

glen8
27th January 2008, 17:48
1. EVODEMUX .EVO file to get video and dd+

2. eac3to dd+ to ac3 (sonic filters)

3. H.624 video to remove pulldown

4. video into elecard xmuxer pro to transport stream .ts

5. elecard converter studio to mux .ts and .ac3 to a new .ts (stream processing as not to encode anything)
or
mux .ts and .ac3 file in xmuxer pro

6. load .ts into tsremux and author to blu-ray

7. burn blu-ray folder to dvd udf at 2.5

Video plays smoothly on ps3 and nero showtime osd reports it as 23.8fps. Audio also plays at the same speed as it should.

Now the problem...

The AC3 file doesnt have any sound until 0.05 but after I mux both together the sound starts as soon as I hit play. This results in the audio being 0.05 infront of the video

If I play the ac3 file in media player and the video in nero everything is in perfect sync. I can't work out why muxing both together would loose the blank 0.05 from the start of the ac3

any ideas?

:edit: I think I've done it :-)

Creator1
29th January 2008, 22:38
1. EVODEMUX .EVO file to get video and dd+

2. eac3to dd+ to ac3 (sonic filters)

3. H.624 video to remove pulldown

4. video into elecard xmuxer pro to transport stream .ts

5. elecard converter studio to mux .ts and .ac3 to a new .ts (stream processing as not to encode anything)
or
mux .ts and .ac3 file in xmuxer pro

6. load .ts into tsremux and author to blu-ray

7. burn blu-ray folder to dvd udf at 2.5

Video plays smoothly on ps3 and nero showtime osd reports it as 23.8fps. Audio also plays at the same speed as it should.

Now the problem...

The AC3 file doesnt have any sound until 0.05 but after I mux both together the sound starts as soon as I hit play. This results in the audio being 0.05 infront of the video

If I play the ac3 file in media player and the video in nero everything is in perfect sync. I can't work out why muxing both together would loose the blank 0.05 from the start of the ac3

any ideas?

:edit: I think I've done it :-)

How do you do step 3? What is H.264 video? An application? Link please?

Also, how did you correct the audio 0.05 delay problem?

I hope you get back on me on this, I have been waiting for somebody to figure this out!

Thanks! :thanks:

Atak_Snajpera
29th January 2008, 22:48
How do you do step 3? What is H.264 video? An application? Link please?
h264info

Creator1
29th January 2008, 23:03
h264info

Thanks. I just saw glen's thread in the other section so you can ignore my post here glen.