MPEG Smartrender question

Moderator: Ken Berry

Post Reply
richlux
Posts: 60
Joined: Tue Nov 13, 2007 6:03 pm

MPEG Smartrender question

Post by richlux »

I know VS11+ will do smart rendering of MPEGs and not re-encode them. Why then is the source MPEG different from the one created by VS11+? Here's what I did...

I took an MPEG from my computer and put it on the timeline (with no changes to it). I set the field order to Upper Field First (the way the MPEG is). I then used the MPEG Optimizer and saw that none of the file needed to be re-encoded and created a new file. I expected the new file to be identical to the source file, but it is not. When I play them back they look the same, but the file sizes are different and when using a HEX editor, I can see that the content is completedly different between the two.

Any ideas what's really happening here?

Thanks,
Rich
Black Lab
Posts: 7429
Joined: Wed Dec 15, 2004 3:11 pm
operating_system: Windows 8
System_Drive: C
32bit or 64bit: 64 Bit
Location: Pottstown, Pennsylvania, USA

Post by Black Lab »

Well, what are your clip properties and what are your project properties?
User avatar
Ken Berry
Site Admin
Posts: 22481
Joined: Fri Dec 10, 2004 9:36 pm
operating_system: Windows 11
System_Drive: C
32bit or 64bit: 64 Bit
motherboard: Gigabyte B550M DS3H AC
processor: AMD Ryzen 9 5900X
ram: 32 GB DDR4
Video Card: AMD RX 6600 XT
Hard_Drive_Capacity: 1 TB SSD + 2 TB HDD
Monitor/Display Make & Model: Kogan 32" 4K 3840 x 2160
Corel programs: VS2022; PSP2023; DRAW2021; Painter 2022
Location: Levin, New Zealand

Post by Ken Berry »

And can you confirm that you had switched SmartRender on when you created the new file. It is not an automatic feature, after all.
Ken Berry
sjj1805
Posts: 14383
Joined: Wed Jan 26, 2005 7:20 am
operating_system: Windows XP Pro
System_Drive: C
32bit or 64bit: 32 Bit
motherboard: Equium P200-178
processor: Intel Pentium Dual-Core Processor T2080
ram: 2 GB
Video Card: Intel 945 Express
sound_card: Intel GMA 950
Hard_Drive_Capacity: 1160 GB
Location: Birmingham UK

Post by sjj1805 »

I just took a short mpg clip 6966 KB and smart rendered it with VS11.5+ and it came out at exactly 6966 KB.
richlux
Posts: 60
Joined: Tue Nov 13, 2007 6:03 pm

Post by richlux »

The properties were the same except for the Max Bitrate (project=8000, clip=9400), but none of the compression items should matter because it's not re-rendering the clip.

Yes, smartrender was on and I know it wasn't doing any rendering because it immediately starting writing to the hard drive. Without smartrendering the machine will process the file for quite some time before it starts writing the file.

I have tried this with many different clips and it always does this. I would think that if it's truely not doing anything to the clip, then the output file should be identical to the input file. Can someone else try and see what happens? I'm obsessed with making sure I don't lose any quality.

Rich
sjj1805
Posts: 14383
Joined: Wed Jan 26, 2005 7:20 am
operating_system: Windows XP Pro
System_Drive: C
32bit or 64bit: 32 Bit
motherboard: Equium P200-178
processor: Intel Pentium Dual-Core Processor T2080
ram: 2 GB
Video Card: Intel 945 Express
sound_card: Intel GMA 950
Hard_Drive_Capacity: 1160 GB
Location: Birmingham UK

Post by sjj1805 »

richlux wrote:The properties were the same except for the Max Bitrate (project=8000, clip=9400), but none of the compression items should matter because it's not re-rendering the clip.

Yes, smartrender was on and I know it wasn't doing any rendering because it immediately starting writing to the hard drive. Without smartrendering the machine will process the file for quite some time before it starts writing the file.

I have tried this with many different clips and it always does this. I would think that if it's truely not doing anything to the clip, then the output file should be identical to the input file. Can someone else try and see what happens? I'm obsessed with making sure I don't lose any quality.

Rich
Read the previous reply.
richlux
Posts: 60
Joined: Tue Nov 13, 2007 6:03 pm

Post by richlux »

sjj1805 wrote:I just took a short mpg clip 6966 KB and smart rendered it with VS11.5+ and it came out at exactly 6966 KB.
Can you do a binary filecompare (fc) on the two. Just run the following command at a command prompt. It will tell you if they truely are binary duplicates...

fc/b <firstfile> <secondfile>

Thanks,
Rich
etech6355
Posts: 2121
Joined: Fri Jul 29, 2005 3:24 am
Location: US

Post by etech6355 »

Rich,
That's no exactly how smartrender works, the new video file stills get re-timestamped but not re-encoded.

If the video was constructed using a different encoder there can be many settings that aren't the same as the ulead encoder, both the videos can still be mpeg2 complaint though.
But, for example one encoder could have made the mpeg2 file as -VR compliant, you wouldn't know this. VS will re-code it as standard mpeg2.
The important point is that the new file is produced quickly without re-rendering and still plays properly.
Different encoders will write a mpeg2 file somewhat differently and the mpeg2 file can still be mpeg2 compliant.
richlux
Posts: 60
Joined: Tue Nov 13, 2007 6:03 pm

Post by richlux »

Hmmmm.... I thought that "encoding" and "rendering" were the same thing. Are you saying they are different? So the output file can be different from a binary perspective but still contain the identical frames as the input file? Do you know if there are any sites that explain this in layman's terms?

I just want to make sure that VS isn't doing anything that could affect quality because part of what I'm doing is using VS to split large MPEGs into smaller ones for other uses and want to make sure the smaller ones are just cuts from the original with nothing added or removed.

Here's a little more info about the file I'm working with.... The file was imported using VS11+ from a miniDVD created by my Canon DC100 camcorder (in standard DVD format, not VR). Since the file was imported by VS and then export by VS I would have assumed they should be identical.

Thanks for all the info,
Rich
richlux
Posts: 60
Joined: Tue Nov 13, 2007 6:03 pm

Post by richlux »

It looks like I'm going to have to "trust" VideoStudio when it tells me that my file will not be re-encoded because no matter what I do to test this, the resulting MPEG file is never the same as my input file :-(

Thanks,
Rich
2Dogs
Advisor
Posts: 1152
Joined: Wed Nov 02, 2005 3:33 am
Location: Katrinaland

Black Preview Screen = Smart Render

Post by 2Dogs »

richlux wrote:It looks like I'm going to have to "trust" VideoStudio when it tells me that my file will not be re-encoded because no matter what I do to test this, the resulting MPEG file is never the same as my input file
Except that nothing you've said thus far makes us think you've actually set the same bitrate for your output as for the source file! :evil: If the maximum bitrate in your source file was 9400kbps, then you should also set your output to 9400kbps, not 8000kbps.

When the Smart Render function works, you should notice that the preview screen goes black during rendering - since the video is not actually being re-rendered, but merely written to another file. If Smart Rendering is not working, you'll see the video in the preview screen as rendering progresses.

I did a test Smart Render of a test mpg file of 145,524 KB, produced by VS11+ from a miniDV avi original. The resulting Smart Rendered file was 143,558 KB. When I Smart Rendered that file, the resulting file was 143,558 KB. Just to be certain, I Smart Rendered that one, giving another 143,558 KB file. So it would seem that the initial Smart render does something minor, perhaps to the header info, as your hex editor viewing might indicate.
JVC GR-DV3000u Panasonic FZ8 VS 7SE Basic - X2
richlux
Posts: 60
Joined: Tue Nov 13, 2007 6:03 pm

Post by richlux »

That's because there's no way to set the bitrate to 9400. The bitrate must be between 7000 and 8264. However, everything else was identical AND, according to VS, the properies of the output file are identical to those of the input file (yes, even the bitrate says 9400).

Also, I am confident that VS is not "re-encoding" per-se because when VS renders the file, the preview screen is black and, as I mentioned, it starts writing the file to disk immediately. If I add a video effect to it, then it encodes the file (I see it in the preview screen) and it writes the file to disk much much slower.

I've tried working with other MPEGs and I get the same results (I should add that these are all widescreen (16:9)). That said, I've done more tests and found that if I do a Share/Create Video File in VS to create a new file and then do my tests with that new file, it will produce output that is 100% identical to the input file. It's almost as if the files outputted from VS11 are written a certain way even though they are not re-encoded (if you can understand what I mean).

For those people above who have done tests, was the file you were working with a new MPEG or did it come out of VideoStudio?

I can send a small clip to test with if someone is willing.

Thanks,
Rich
richlux
Posts: 60
Joined: Tue Nov 13, 2007 6:03 pm

Post by richlux »

Ok, I think I've figured out what's going on and it has to do with the fact that these are 16:9 files.

These files were imported from a widescreen (16:9) DVD camcorder. According to VS, they are 16:9 and they play back in preview mode as 16:9. However, Windows Media Player plays them back with the video squished in 4:3 mode and Gspot (a free video analyzer) reports that the MPEG is actually 4:3. The resulting video out of VS, however, plays as 16:9 in Windows Media Player and Gspot reports it to be 16:9.

Know I don't know alot about video encoding, but I believe this is happening because the source file is actually in Anamorphic Widescreen mode (http://en.wikipedia.org/wiki/Anamorphic_widescreen). So VS is not re-encoding the file, it's just changing elements about the video stream.

I'd love to know what it's changing and why, but I have a feeling only the developers at Ulead know the answer :-(

Thanks,
Rich
2Dogs
Advisor
Posts: 1152
Joined: Wed Nov 02, 2005 3:33 am
Location: Katrinaland

Ah now you tell us! :))

Post by 2Dogs »

It's always good to know the source file format - it actually helps you to figure out what's going on.

The maximum 8264 kbps video data rate will apply if the audio is LPCM format. If you use compressed audio, you can get to 9400kbps and beyond. To be DVD compliant, the combined video and audio stream has to be within a set limit.

You would surely have noticed if your 16:9 video was being played back in 4:3 format! VS will normally detect the input file properties, and the fact that you managed to get Smart Render to work (as evidenced by the short "render" time and the black preview screen) shows that it has done so. The slight increase in file size is a bit of a mystery - but perhaps you can easily confirm, for your own peace of mind, that there is no further increase if you make a second generation Smart Rendered file. Try it.

If you're concerned about image quality losses, try making a 10th generation Smart rendered test file and compare it to the original.

You should be careful with your workflow, however, since mpeg2 is not a format intended for editing. Ideally you'd produce a single, large project mpeg2 file, as per the recommended procedure, from your camcorder source files on the timeline. With Smart Render enabled, only transitions and sections with filters or titles would be re-rendered.

With any mpeg2 editing in VS, you will get some artefacts at transitions.
JVC GR-DV3000u Panasonic FZ8 VS 7SE Basic - X2
richlux
Posts: 60
Joined: Tue Nov 13, 2007 6:03 pm

Re: Ah now you tell us! :))

Post by richlux »

2Dogs wrote: You should be careful with your workflow, however, since mpeg2 is not a format intended for editing. Ideally you'd produce a single, large project mpeg2 file, as per the recommended procedure, from your camcorder source files on the timeline. With Smart Render enabled, only transitions and sections with filters or titles would be re-rendered.
That's exactly what I'm doing and I wanted to make sure it truly is only re-rendering the transitions (I don't use filters because I don't want the MPEG to be re-rendered).
2Dogs wrote:If you're concerned about image quality losses, try making a 10th generation Smart rendered test file and compare it to the original.
Thats a great idea.... I just did this and after the first generation, all the others are exactly the same (filesize and all) so I guess it does work. I would still like to know what it's doing to the first generation, but I'm pretty confident it's not re-rendering.

Thanks,
Rich
Post Reply