View Full Version : RV9's variable framerate and hybrid movies.
bilu
14th October 2003, 15:41
This is the first time I'm looking to RV9.
I already noticed it has variable framerate capabilities, and was wondering about a nice process to encode hybrid movies (not necessarily anime) without decimating video to 24fps or blending film to 30 fps.
Any suggestions? I was thinking about a Dropdupe modification, that recognizes patterns and drops duplicate frames but doesn't modify the dupped frame speed, i.e.
instead of
ABCDD (30 fps) -> ABC D* (*=15 fps on this frame)
it should be
ABCDD (30 fps) -> ABCD all at 24fps
The hard part would be recognizing what would be video or film at the edges of the film range. The risk is 4 frames @24fps at every edge speeded at 30fps I suppose :rolleyes:
Another question: how does RV9 behaves with blended fields?
Bilu
karl_lillevold
15th October 2003, 05:42
For hybrid content (film 24fps/broadcast 30fps) you could enable Producer's inverse telecine /and/ de-interlace functions, instead of using Avisynth filters, which are not able to vary the framerate. Producer's inverse telecine will decimate framerate to 24 fps where it recognizes the telecine pattern, which it does a very good at. De-interlace will blend fields during 30 fps broadcast segment, and your encode will vary between 24 and 30 fps.
how does RV9 behaves with blended fields?
?? If de-interlace was done prior to Producer, for instance in Avisynth script, Producer/RV9 will encode the blended fields like one frame.
bilu
15th October 2003, 11:33
Originally posted by karl_lillevold
For hybrid content (film 24fps/broadcast 30fps) you could enable Producer's inverse telecine /and/ de-interlace functions, instead of using Avisynth filters, which are not able to vary the framerate. Producer's inverse telecine will decimate framerate to 24 fps where it recognizes the telecine pattern, which it does a very good at. De-interlace will blend fields during 30 fps broadcast segment, and your encode will vary between 24 and 30 fps.
OK, you have convinced me to try RV9 :D
I hadn't tried yet because I was encoding in a PIII-500 and a PIII-850, already between 3fps and 6fps, was afraid to change to a spf (second per frame) measure :D
Originally posted by karl_lillevold
?? If de-interlace was done prior to Producer, for instance in Avisynth script, Producer/RV9 will encode the blended fields like one frame.
Yes, but does it affect motion estimation? Sometimes Xvid has a problem with complex blended fields.
Bilu
Sirber
15th October 2003, 13:16
Producer blending isn't very cool. It makes the image blury and it's detection isn't very acurate. (Tested on anime content)
bilu
15th October 2003, 13:51
@Sirber
What do you recommend?
Bilu
bilu
15th October 2003, 17:13
Other important question: IVTC anime.
Since Dropdupe is a pre-filter and IVTC is not, I guess there's not way to use both filters :/
Bilu
karl_lillevold
15th October 2003, 17:22
hmm, as far I as can recall, when both IVTC and DropDupe are enabled, IVTC should run first, then DropDupe. You could even still run Donald's Dup first since it does not drop frames, just makes them true duplicates. I guess this could confuse the IVTC algorithm in Producer though.
@Sirber: unfortunately, when de-interlace detects that it needs to de-interlace, there will be some image quality degradatation. Could you please point to some example content and your optios, perhaps de-interlace was set to ON and not auto?
karl.
bilu
15th October 2003, 17:40
Originally posted by karl_lillevold
hmm, as far I as can recall, when both IVTC and DropDupe are enabled, IVTC should run first, then DropDupe. You could even still run Donald's Dup first since it does not drop frames, just makes them true duplicates. I guess this could confuse the IVTC algorithm in Producer though.
I agree with IVTC and then Dropdupe, but isnīt DropDupe a pre-filter, i.e. a filter that runs before Producer?
Sorry, I have just subscribed Helix Community and I'm giving the first steps into RV9, so I don't know if all filters are called pre-filters in RV9 or if there are Producer filters and other pre-filters that run before Producer :confused:
Bilu
karl_lillevold
15th October 2003, 17:54
all the pre-filters that are included with Producer use the Producer plugin architecture, and Producer can decide which order to apply them in. IVTC should have the highest priority, and run first, unless there is a bug I don't know about.
bilu
15th October 2003, 18:16
I assume DropDupe uses Producer architecture then :)
Can you force priorities or check the chosen priorities?
Sirber
15th October 2003, 23:15
Originally posted by karl_lillevold
@Sirber: unfortunately, when de-interlace detects that it needs to de-interlace, there will be some image quality degradatation. Could you please point to some example content and your optios, perhaps de-interlace was set to ON and not auto?
karl. I have some, but I won't be able to find them. It's somewhere in Hikaru No Go, 75 episodes, in the middle of 3 episodes. De-interlace was set auto. The results was like a vertical resize to get half height, then another resize to match the real size. It was scary :(
bilu
16th October 2003, 23:52
My first manual encode, trying a hybrid encode (neuron2's Star Trek clip).
Command line
============
D:\rv9\producer\producer.exe -i movie.avs -o movie.rmvb -am music -vm sharp -lc e,d -di di -bl -da -ad movie.rpad
Movie.avs
=========
Loadplugin("MPEG2Dec3dg.dll")
mpeg2source("TNGsample.d2v",idct=2,cpu=0)
movie.rpad
==========
<?xml version="1.0" encoding="UTF-8"?>
<audience xmlns="http://ns.real.com/tools/audience.2.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://ns.real.com/tools/audience.2.0 http://ns.real.com/tools/audience.2.0.xsd">
<avgBitrate type="uint">1000000</avgBitrate>
<maxBitrate type="uint">9999999</maxBitrate>
<streams>
<stream xsi:type="videoStream">
<pluginName type="string">rn-videocodec-realvideo</pluginName>
<codecName type="string">rv9</codecName>
<encodingType type="string">vbrQuality</encodingType>
<quality type="uint">83</quality>
<maxStartupLatency type="double">60</maxStartupLatency>
<maxFrameRate type="double">30</maxFrameRate>
<maxKeyFrameInterval type="double">10</maxKeyFrameInterval>
<enableLossProtection type="bool">false</enableLossProtection>
</stream>
<stream xsi:type="audioStream">
<pluginName type="string">rn-audiocodec-vorbis</pluginName>
<!-- 48 kHz Stereo -->
<codecName type="string">vorbis</codecName>
<codecFlavor type="uint">7</codecFlavor>
<streamContext type="bag">
<presentationType type="string">audio-video</presentationType>
<audioMode type="string">music</audioMode>
</streamContext>
</stream>
</streams>
</audience>
One can notice the VFR advantages over hybrid movies, but you Deinterlace/IVTC filters are far far behind Decomb or SmartDecimate packages. Maybe that's why AutoRV9 doesn't use RV9 internal filtering but Avisynth's filters.
Maybe it's time for Real Video to open (or at least show a little more ) the plugin architecture or even to try to make the transition smoother for Avisynth plugin developers. You have the VFR advantage.
I can upload you this clip if you want to, it's a 34 MB VOB.
Best regards,
Bilu
karl_lillevold
17th October 2003, 00:10
unfortunately our resources are very limited and we have not updated IVTC or de-interlace in a while. In general they work well when the pattern is relatively stable, but I don't very often encode hybrid material.
Maybe it's time for Real Video to open (or at least show a little more ) the plugin architecture or even to try to make the transition smoother for Avisynth plugin developers. You have the VFR advantage.
As a matter of fact is already completely open source. Anyone interested can check out the source code for our inverse telecine and de-interlacer, and improve it! The location is
producersdk/plugins/transform/videoprogressive
It is checked out as part of building producer from source code.
It would be nice to have your example file so I can see the quality problem, even though I will not have time to set aside anytime in the near future for IVTC or de-interlace improvements. I'll send you the upload location separately.
EDIT: did you try option -di auto ?
-di di will always force de-interlace and IVTC, I think.
bilu
17th October 2003, 07:57
Havent't tried the other options yet.
I noticed that the IVTC funtion, although I forced it's use, was only activated at 10.3 seconds or something like that. That's good, it was only when needed. What was bad was the halved resolution in the film part (also look at the top windows, looks interlaced) and the blending that killed motion on the video part.
My list of weird clips
======================
52M Eva.vob (anime, Neo genesis Evangelion,NTSC, not IVTC, read http://neuron2.net/ipw-web/bulletin/bb/viewtopic.php?t=174 for a pattern description I made)
46M ROD.vob (anime, Read Or Die, Decomb can do it but only with pattern guidance)
36M TNGsample.vob (Star Trek hybrid clip, I'm sending it now)
8M TFFmonty2.avi (small clip with lots of blended fields, can confuse decombing packages)
10M TFFsnip.avi (dirty IVTC, also hard for Decomb but doable)
My objective is to completely mode out from Avisynth in terms of decombing to avoid CFR limitations.
As a matter of fact is already completely open source. Anyone interested can check out the source code for our inverse telecine and de-interlacer, and improve it! The location is
producersdk/plugins/transform/videoprogressive
It is checked out as part of building producer from source code.
Do you think it could be used for Matroska too and as a new Avisynth API as in this thread:
http://forum.doom9.org/showthread.php?s=&threadid=63290
Bilu
bilu
17th October 2003, 12:06
unfortunately our resources are very limited and we have not updated IVTC or de-interlace in a while. In general they work well when the pattern is relatively stable, but I don't very often encode hybrid material.
As a matter of fact is already completely open source. Anyone interested can check out the source code for our inverse telecine and de-interlacer, and improve it!
There are chances that VFR filter support can be less of a worry for your team :)
http://forum.doom9.org/showthread.php?s=&postid=387157#post387157
Best regards,
Bilu
karl_lillevold
17th October 2003, 14:58
I will take a look at the sample you sent. Thanks!
Originally posted by bilu
There are chances that VFR filter support can be less of a worry for your team :)
Possibly, unless too many higher level Producer changes are required.
vBulletin® v3.8.11, Copyright ©2000-2026, vBulletin Solutions Inc.