Skip to content

(TFM) Mode that outputs directly without field matching. However, TFMMics updates. #59

@Ikotas

Description

@Ikotas

To be precise, the desired behavior is as follows:

Measure the amount of combing in the clip and update TFMMics.

  • Do not perform field matching.
  • Do not update other Frame Properties unrelated to MI values. (Is only _Combed related?)

For several years now, I've repeatedly tackled and failed at figuring out how to handle hardcoded subtitles.
The challenge lies in how to correctly restore subtitles that span only one side of the field, as field matching does not occur properly in such cases.
The reason for my frustration is that the only methods available to compare MI values before and after processing subtitles present in only one field are IsCombedTIVTC or IsCombed2. (As far as I know.)
As you know, these two require a fixed value as an argument for the MI value and can only perform a simple comparison of whether the value is greater or less than that fixed value.
However, if this request can be implemented, it would allow direct comparison of the Clip before and after processing, as follows:

Source=last
Clip1=Source.TFM(mode=0,pp=1,ovr="ovrc.txt") # The entry in ovrc.txt is "0,0 c".
Clip2=Source.TFM(mode=0,pp=1,ovr="ovrp.txt") # The entry in ovrc.txt is "0,0 p".
Clip2'=Clip2.Some kind of script.TFM(mode=8,pp=1) # Assuming mode=8

ConditionalFilter(Clip1,Clip1,Clip2',"""
    propGetInt(Clip1,"TFMMics",index=1)<=propGetInt(Clip2',"TFMMics",index=0)
    ""","=","true")

# For reasons unknown, there is a slight difference in MI values when Source and ovrc are forced.

The obstacles causing setbacks have been removed, so I'm sure to make significant progress!

*You might think that cropping or masking the subtitle area before TFM would suffice, but I'm not considering a process that requires adjusting each video individually. Instead, I'm aiming for a solution that enables universal processing.

Additionally, TFM's output is useful for confirming the amount of combed data after processing the created script, making it convenient to use.
However, if this request could be implemented, it would allow for the output of pure results without performing unnecessary processing (in this case, field matching).

TFM(mode=8,output="output.txt") # Assuming mode=8

This is an idea that wouldn't cause any issues even if it weren't adopted, but I thought it would be nice if either a parameter forcing “p”, “c”, “u”, ‘n’, and “b” without using external files were added, or if direct writing to ovr were allowed instead of using files.

TFM(mode=0,pp=1,force=p)
TFM(mode=0,pp=1,ovr=0,0p)

I'd like you to consider this proposal.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions