Bug while using new update of Title & Text (attribute paste) function.

iEmby wrote on 4/23/2024, 8:24 AM

When i use the copy attribute option on single track with text & titles which i created new. it works well
but when i move some of text event to new track above it or somewhere else and again try this on first text event of that moved text events of new track then this error occurred.

 

this is the example

Last changed by iEmby

PROCESSOR
     

Operating System: Windows 11 Pro 64-bit (Always Updated)
System Manufacturer: ASUS
12th Gen Intel(R) Core(TM) i7-12700 (20 CPUs), ~2.1GHz - 4.90GHz
Memory: 32GB RAM
Page File: 11134MB used, 7934MB Available
DirectX Version: DirectX 12

-----------------------------------------------

MOTHERBOARD

 

ASUS PRIME H610-CS D4
Intel® H610 (LGA 1700)
Ready for 12th Gen Intel® Processors
Micro-ATX Motherboard with DDR4
Realtek 1 Gb Ethernet
PCH Heatsink
PCIe 4.0 | M.2 slot (32Gbps) 
HDMI® | D-Sub | USB 3.2 Gen 1 ports
SATA 6 Gbps | COM header
LPT header | TPM header
Luminous Anti-Moisture Coating
5X Protection III
(Multiple Hardware Safeguards
For all-round protection)

-----------------------------------------------
EXTERNAL GRAPHIC CARD

-----------------------------------------------

INTERNAL GRAPHIC CARD (iGPU)

------------------------------------------------

LED - MONITOR

Monitor Name: Generic PnP Monitor
Monitor Model: HP 22es
Monitor Id: HWP331B
Native Mode: 1920 x 1080(p) (60.000Hz)
Output Type: HDMI

-----------------------------------------------

STORAGE DRIVE

Drive: C:
Free Space: 182.3 GB
Total Space: 253.9 GB
File System: NTFS
Model: WD Blue SN570 1TB (NVMe)

---------------O----------------

My System Info (PDF File).

https://drive.google.com/open?id=1-eoLmuXzshTRH_8RunAYAuNocKpiLoiV&usp=drive_fs

 

Also Check

Some useful creations by me including VEGAS Scripts

https://getopensofts.blogspot.com/

 

My YouTube Channel Dedicated to Only VEGAS Pro Tutorials

EDITROOM : My YouTube Channel (For VEGAS Tutorials)

Comments

iEmby wrote on 4/24/2024, 5:44 AM

@lan-mLMC please reproduce.this error and check if it exists.

 

PROCESSOR
     

Operating System: Windows 11 Pro 64-bit (Always Updated)
System Manufacturer: ASUS
12th Gen Intel(R) Core(TM) i7-12700 (20 CPUs), ~2.1GHz - 4.90GHz
Memory: 32GB RAM
Page File: 11134MB used, 7934MB Available
DirectX Version: DirectX 12

-----------------------------------------------

MOTHERBOARD

 

ASUS PRIME H610-CS D4
Intel® H610 (LGA 1700)
Ready for 12th Gen Intel® Processors
Micro-ATX Motherboard with DDR4
Realtek 1 Gb Ethernet
PCH Heatsink
PCIe 4.0 | M.2 slot (32Gbps) 
HDMI® | D-Sub | USB 3.2 Gen 1 ports
SATA 6 Gbps | COM header
LPT header | TPM header
Luminous Anti-Moisture Coating
5X Protection III
(Multiple Hardware Safeguards
For all-round protection)

-----------------------------------------------
EXTERNAL GRAPHIC CARD

-----------------------------------------------

INTERNAL GRAPHIC CARD (iGPU)

------------------------------------------------

LED - MONITOR

Monitor Name: Generic PnP Monitor
Monitor Model: HP 22es
Monitor Id: HWP331B
Native Mode: 1920 x 1080(p) (60.000Hz)
Output Type: HDMI

-----------------------------------------------

STORAGE DRIVE

Drive: C:
Free Space: 182.3 GB
Total Space: 253.9 GB
File System: NTFS
Model: WD Blue SN570 1TB (NVMe)

---------------O----------------

My System Info (PDF File).

https://drive.google.com/open?id=1-eoLmuXzshTRH_8RunAYAuNocKpiLoiV&usp=drive_fs

 

Also Check

Some useful creations by me including VEGAS Scripts

https://getopensofts.blogspot.com/

 

My YouTube Channel Dedicated to Only VEGAS Pro Tutorials

EDITROOM : My YouTube Channel (For VEGAS Tutorials)

Former user wrote on 4/24/2024, 9:01 AM

@iEmby 

  1. I created 4 text events, each one dragged in individually from the Media Generator tab,
  2. I changed the writing of the text of each, First, Second, Third & Forth but left the text font at the default Verdana.
  3. I changed the text font of the First to a random font, Vivian.
  4. I clicked the 'copy attribute option' & got this msg

Weirdly while writing this comment I clicked back to Vegas, didn't change anything & clicked the 'copy attribute option' again and it worked 🤷‍♂️, I need to do this a few times to understand what I did & why it didn't then did work.

-----------

I recreated this from a fresh project about 10 times with different fonts but only managed to make it show that msg once, the rest of the time it worked correctly changing the other events, 🤷‍♂️

This is the only time it showed that msg,

Former user wrote on 4/24/2024, 9:55 AM

@iEmby I noticed you have different fonts on the same text event, so I tried that & get that msg every time. but I don't think I was changing just a single word in my other tests n the comment above, I was changing the whole word

Former user wrote on 4/24/2024, 10:11 AM

@iEmby Here's another version,

  1. 2 text events, I change the font of the word but not the single space that's at the end, the error msg shows.
  2. Same 2 text events but this time I highlight & change the word + the single space at the end, this time it worked.

I'm guessing this has something to do with having different fonts on the same text event similar to my vid above.

------------------------

When i use the copy attribute option on single track with text & titles which i created new. it works well

Why this worked at first but didn't when 'when i move some of text event to new track ' I don't know.

zzzzzz9125 wrote on 4/24/2024, 10:29 AM

@iEmby I noticed you have different fonts on the same text event, so I tried that & get that msg every time. but I don't think I was changing just a single word in my other tests n the comment above, I was changing the whole word

I can reproduce this problem by changing different fonts.

 

By the way, I wrote a script earlier which did something similar to this button in T&T. Just tested, it doesn't have the issues mentioned in this thread, but for fonts, it can only convert a single font.

If need be, I provide the code for the script:

using System;
using System.Collections;
using System.Windows.Forms;

using ScriptPortal.Vegas;  // "ScriptPortal.Vegas" for Magix Vegas Pro 14 or above, "Sony.Vegas" for Sony Vegas Pro 13 or below

namespace Test_Script
{
    public class Class
    {
        public Vegas myVegas;
        public void Main(Vegas vegas)
        {
            myVegas = vegas;
            Project project = myVegas.Project;
            if (vegas.Project.Tracks.Count == 0)
            {
                return;
            }

            ArrayList selectList = new ArrayList();

            foreach (Track myTrack in project.Tracks)
            {
                if (myTrack.IsVideo())
                {
                    foreach (TrackEvent evnt in myTrack.Events)
                    {
                        if (evnt.Selected)
                        {
                            VideoEvent vEvent = (VideoEvent) evnt;
                            if (vEvent.ActiveTake.Media.IsGenerated())
                            {
                                selectList.Add(vEvent);
                            }
                        }
                    }
                }
            }

            foreach (VideoEvent vEvent in selectList)
            {
                OFXEffect ofxEffect = GetOFXEffect(vEvent.ActiveTake.Media);
                if (ofxEffect == null)
                {
                    continue;
                }

                bool isTAT = vEvent.ActiveTake.Media.Generator.PlugIn.UniqueID.ToLower().Contains("titlesandtext");

                OFXStringParameter textParam = FindTextParameter(ofxEffect);

                foreach (VideoEvent otherEvent in vEvent.Track.Events)
                {
                    if (otherEvent == vEvent)
                    {
                        continue;
                    }

                    OFXEffect otherOfxEffect = GetOFXEffect(otherEvent.ActiveTake.Media);
                    if (otherOfxEffect == null || otherOfxEffect.Label != ofxEffect.Label)
                    {
                        continue;
                    }

                    OFXStringParameter otherTextParam = FindTextParameter(otherOfxEffect);
                    if (textParam != null && otherTextParam != null)
                    {
                        string txt = otherTextParam.Value;

                        if (isTAT)
                        {
                            RichTextBox richtextBox = new RichTextBox();
                            richtextBox.Rtf = txt;
                            txt = richtextBox.Text;
                            richtextBox.Rtf = textParam.Value;
                            richtextBox.Text = txt;
                            txt = richtextBox.Rtf;
                        }

                        otherTextParam.Value = txt;
                    }

                    foreach (OFXParameter otherPara in otherOfxEffect.Parameters)
                    {
                        OFXParameter para = ofxEffect.FindParameterByName(otherPara.Name);
                        if (para == null || otherPara == otherTextParam || otherPara.ParameterType != para.ParameterType)
                        {
                            continue;
                        }

                        switch (otherPara.ParameterType)
                        {
                            case OFXParameterType.Boolean:
                                ((OFXBooleanParameter)otherPara).Value = ((OFXBooleanParameter)para).Value;
                                break;

                            case OFXParameterType.Choice:
                                ((OFXChoiceParameter)otherPara).Value = ((OFXChoiceParameter)para).Value;
                                break;

                            case OFXParameterType.Custom:
                                ((OFXCustomParameter)otherPara).Value = ((OFXCustomParameter)para).Value;
                                break;

                            case OFXParameterType.Double2D:
                                ((OFXDouble2DParameter)otherPara).Value = ((OFXDouble2DParameter)para).Value;
                                break;

                            case OFXParameterType.Double3D:
                                ((OFXDouble3DParameter)otherPara).Value = ((OFXDouble3DParameter)para).Value;
                                break;

                            case OFXParameterType.Double:
                                ((OFXDoubleParameter)otherPara).Value = ((OFXDoubleParameter)para).Value;
                                break;

                            case OFXParameterType.Integer2D:
                                ((OFXInteger2DParameter)otherPara).Value = ((OFXInteger2DParameter)para).Value;
                                break;

                            case OFXParameterType.Integer3D:
                                ((OFXInteger3DParameter)otherPara).Value = ((OFXInteger3DParameter)para).Value;
                                break;

                            case OFXParameterType.Integer:
                                ((OFXIntegerParameter)otherPara).Value = ((OFXIntegerParameter)para).Value;
                                break;

                            case OFXParameterType.RGBA:
                                ((OFXRGBAParameter)otherPara).Value = ((OFXRGBAParameter)para).Value;
                                break;

                            case OFXParameterType.RGB:
                                ((OFXRGBParameter)otherPara).Value = ((OFXRGBParameter)para).Value;
                                break;

                            case OFXParameterType.String:
                                ((OFXStringParameter)otherPara).Value = ((OFXStringParameter)para).Value;
                                break;

                            default:
                                continue;
                                break;
                        }
                    }
                }
            }
        }

        private OFXEffect GetOFXEffect(Media media)
        {
            if (media == null)
            {
                return null;
            }

            Effect generator = media.Generator;
            if (generator == null)
            {
                return null;
            }

            OFXEffect ofxEffect = generator.OFXEffect;
            if (ofxEffect == null)
            {
                return null;
            }

            return ofxEffect;
        }

        private OFXStringParameter FindTextParameter(OFXEffect ofx)
        {
            // Compatible with other Text plugins, such as TextOFX (https://text.openfx.no/)
            foreach (OFXParameter para in ofx.Parameters)
            {
                if (para.ParameterType == OFXParameterType.String && (para.Name.ToLower() == "text" || para.Name.ToLower() == "texts"))
                {
                    return (OFXStringParameter)para;
                }
            }
            return null;
        }
    }
}

public class EntryPoint
{
    public void FromVegas(Vegas vegas)
    //public void FromVegas(Vegas vegas, String scriptFile, XmlDocument scriptSettings, ScriptArgs args)
    {
        Test_Script.Class test = new Test_Script.Class();
        test.Main(vegas);
    }
}

 

Using VEGAS Pro 22 build 248 & VEGAS Pro 21 build 208.

Information about my PC:
Brand Name: HP VICTUS Laptop
System: Windows 11.0 (64-bit) 10.00.22631
CPU: 12th Gen Intel(R) Core(TM) i7-12700H
GPU: NVIDIA GeForce RTX 3050 Laptop GPU
GPU Driver: NVIDIA Studio Driver 560.70

bitman wrote on 4/24/2024, 10:40 AM

@iEmby This behavior is to be expected, the system cannot know where to copy which font on which piece of destination text if more than one variant is to be copied of the same attribute type (such as 2 different fonts).

2 different font sizes does not give an exception, but does not work either...

What should be changed by the developers @VEGASDerek is to catch and return a proper and user friendly exception message such as 'copy attribute option not allowed on multiple variants of the same attribute' or something more meaningful.

APPS: VIDEO: VP 365 suite (VP 22 build 194) VP 21 build 315, VP 365 20, VP 19 post (latest build -651), (uninstalled VP 12,13,14,15,16 Suite,17, VP18 post), Vegasaur, a lot of NEWBLUE plugins, Mercalli 6.0, Respeedr, Vasco Da Gamma 17 HDpro XXL, Boris Continuum 2025, Davinci Resolve Studio 18, SOUND: RX 10 advanced Audio Editor, Sound Forge Pro 18, Spectral Layers Pro 10, Audacity, FOTO: Zoner studio X, DXO photolab (8), Luminar, Topaz...

  • OS: Windows 11 Pro 64, version 24H2 (since October 2024)
  • CPU: i9-13900K (upgraded my former CPU i9-12900K),
  • Air Cooler: Noctua NH-D15 G2 HBC (September 2024 upgrade from Noctua NH-D15s)
  • RAM: DDR5 Corsair 64GB (5600-40 Vengeance)
  • Graphics card: ASUS GeForce RTX 3090 TUF OC GAMING (24GB) 
  • Monitor: LG 38 inch ultra-wide (21x9) - Resolution: 3840x1600
  • C-drive: Corsair MP600 PRO XT NVMe SSD 4TB (PCIe Gen. 4)
  • Video drives: Samsung NVMe SSD 2TB (980 pro and 970 EVO plus) each 2TB
  • Mass Data storage & Backup: WD gold 6TB + WD Yellow 4TB
  • MOBO: Gigabyte Z690 AORUS MASTER
  • PSU: Corsair HX1500i, Case: Fractal Design Define 7 (PCGH edition)
  • Misc.: Logitech G915, Evoluent Vertical Mouse, shuttlePROv2

 

 

iEmby wrote on 4/24/2024, 11:47 AM

@bitman @zzzzzz9125 @Former user

thanks all for your response on my thread.

yeah I think you guys figure this out.

yes I need to use different fonts in one text event.

so here is the problem.

I hope they can fix it with some update like asking user to keep one font or before applying attributes ask user to which they want to keep.

PROCESSOR
     

Operating System: Windows 11 Pro 64-bit (Always Updated)
System Manufacturer: ASUS
12th Gen Intel(R) Core(TM) i7-12700 (20 CPUs), ~2.1GHz - 4.90GHz
Memory: 32GB RAM
Page File: 11134MB used, 7934MB Available
DirectX Version: DirectX 12

-----------------------------------------------

MOTHERBOARD

 

ASUS PRIME H610-CS D4
Intel® H610 (LGA 1700)
Ready for 12th Gen Intel® Processors
Micro-ATX Motherboard with DDR4
Realtek 1 Gb Ethernet
PCH Heatsink
PCIe 4.0 | M.2 slot (32Gbps) 
HDMI® | D-Sub | USB 3.2 Gen 1 ports
SATA 6 Gbps | COM header
LPT header | TPM header
Luminous Anti-Moisture Coating
5X Protection III
(Multiple Hardware Safeguards
For all-round protection)

-----------------------------------------------
EXTERNAL GRAPHIC CARD

-----------------------------------------------

INTERNAL GRAPHIC CARD (iGPU)

------------------------------------------------

LED - MONITOR

Monitor Name: Generic PnP Monitor
Monitor Model: HP 22es
Monitor Id: HWP331B
Native Mode: 1920 x 1080(p) (60.000Hz)
Output Type: HDMI

-----------------------------------------------

STORAGE DRIVE

Drive: C:
Free Space: 182.3 GB
Total Space: 253.9 GB
File System: NTFS
Model: WD Blue SN570 1TB (NVMe)

---------------O----------------

My System Info (PDF File).

https://drive.google.com/open?id=1-eoLmuXzshTRH_8RunAYAuNocKpiLoiV&usp=drive_fs

 

Also Check

Some useful creations by me including VEGAS Scripts

https://getopensofts.blogspot.com/

 

My YouTube Channel Dedicated to Only VEGAS Pro Tutorials

EDITROOM : My YouTube Channel (For VEGAS Tutorials)

iEmby wrote on 4/24/2024, 11:52 AM

or they can ask for properties which user want to paste as attributes. In my case i dont want to change fonts just position and size. so may be @VEGASDerek and team can make it possible in next updates same like 'Selective Paste Attributes' for effects and others.

PROCESSOR
     

Operating System: Windows 11 Pro 64-bit (Always Updated)
System Manufacturer: ASUS
12th Gen Intel(R) Core(TM) i7-12700 (20 CPUs), ~2.1GHz - 4.90GHz
Memory: 32GB RAM
Page File: 11134MB used, 7934MB Available
DirectX Version: DirectX 12

-----------------------------------------------

MOTHERBOARD

 

ASUS PRIME H610-CS D4
Intel® H610 (LGA 1700)
Ready for 12th Gen Intel® Processors
Micro-ATX Motherboard with DDR4
Realtek 1 Gb Ethernet
PCH Heatsink
PCIe 4.0 | M.2 slot (32Gbps) 
HDMI® | D-Sub | USB 3.2 Gen 1 ports
SATA 6 Gbps | COM header
LPT header | TPM header
Luminous Anti-Moisture Coating
5X Protection III
(Multiple Hardware Safeguards
For all-round protection)

-----------------------------------------------
EXTERNAL GRAPHIC CARD

-----------------------------------------------

INTERNAL GRAPHIC CARD (iGPU)

------------------------------------------------

LED - MONITOR

Monitor Name: Generic PnP Monitor
Monitor Model: HP 22es
Monitor Id: HWP331B
Native Mode: 1920 x 1080(p) (60.000Hz)
Output Type: HDMI

-----------------------------------------------

STORAGE DRIVE

Drive: C:
Free Space: 182.3 GB
Total Space: 253.9 GB
File System: NTFS
Model: WD Blue SN570 1TB (NVMe)

---------------O----------------

My System Info (PDF File).

https://drive.google.com/open?id=1-eoLmuXzshTRH_8RunAYAuNocKpiLoiV&usp=drive_fs

 

Also Check

Some useful creations by me including VEGAS Scripts

https://getopensofts.blogspot.com/

 

My YouTube Channel Dedicated to Only VEGAS Pro Tutorials

EDITROOM : My YouTube Channel (For VEGAS Tutorials)

VEGASDerek wrote on 4/24/2024, 2:10 PM

It would be a pretty significant mechanism to put this in place for this plugin is we use stock Windows controls for it and do not have a customized paste function in place. I will investigate and add a bug to our database.