Donaciones

videoedicion.org es una web sin ánimo de lucro que se mantiene gracias a las donaciones de sus usuarios. Todas las donaciones, desde 1 €, son extremadamente valiosas.
[ PINCHA AQUÍ
PARA MÁS INFORMACIÓN
]

Haz una donación para ocultar este bloque
Welcome to videoedicion.org (v9). Please login or sign up.

08 de Septiembre de 2024, 18:10:21

Login with username, password and session length

Temas Recientes

308 Visitantes, 0 Usuarios

Colaboraciones

Estas empresas colaboran con videoedicion.org, bien ofreciendo algún descuento a los  usuarios que se registren usando estos banners o bien ofreciéndonos una pequeña comisión que nos ayudará con los gastos de la web.


 


¡Gracias por las donaciones!

Hemos alcanzado el objetivo de 250 € para costear videoedicion.org durante el próximo año [Más info aquí]

Mensajes recientes

#1
La cafetería / Re:Necesito un manitas reparad...
Último mensaje por pajarini - Ayer a las 11:59:56
Como decíamos cuando éramos jóvenes "tengui"., pero me guastaba más hacerlo con la cámara, caprichoso que es uno ¡
Gracias por tu respuesta, y perdón por tardar tanto en verla.
Manel
#4
Vegas Pro / Re:Automatización de Time Stre...
Último mensaje por manellopez - 06 de Septiembre de 2024, 01:12:05
SOLUCIÓN:
Hola chicos, por fin tengo la solución para que lo haga correctamente, tanto en el audio como en la longitud del clip, gracias a la IA:

velocidad al 95% (ralentizar)

using System;
using System.Windows.Forms;
using ScriptPortal.Vegas;

public class EntryPoint
{
    Vegas myVegas = null;
    Form dlog = new Form();

    public void FromVegas(Vegas vegas)
    {
        myVegas = vegas;
        AdjustPlaybackRate(0.95f); // Aplicar directamente el 95% al abrir la ventana
        dlog.Close(); // Cerrar la ventana automáticamente
    }

    void AdjustPlaybackRate(float rate)
    {
        foreach (Track track in myVegas.Project.Tracks)
        {
            foreach (TrackEvent trackEvent in track.Events)
            {
                if (trackEvent.Selected)
                {
                    // Ajustar tanto audio como video relacionados
                    SyncAndAdjustEvent(trackEvent, rate);
                }
            }
        }
    }

    void SyncAndAdjustEvent(TrackEvent selectedEvent, float rate)
    {
        // Ajustar el evento seleccionado (audio o video)
        AdjustEvent(selectedEvent, rate);

        // Buscar el evento relacionado (audio o video)
        foreach (Track track in myVegas.Project.Tracks)
        {
            foreach (TrackEvent trackEvent in track.Events)
            {
                // Si encontramos un evento relacionado con el seleccionado
                if (trackEvent != selectedEvent && AreEventsLinked(selectedEvent, trackEvent))
                {
                    // Ajustar el evento relacionado para que coincida
                    AdjustEvent(trackEvent, rate, selectedEvent.Length);
                }
            }
        }
    }

    bool AreEventsLinked(TrackEvent event1, TrackEvent event2)
    {
        // Consideramos que los eventos están vinculados si comparten la misma posición de inicio
        return event1.Start == event2.Start && event1.Length == event2.Length;
    }

    void AdjustEvent(TrackEvent trackEvent, float rate, Timecode syncedLength = null)
    {
        // Ajustar eventos de audio
        if (trackEvent.Track.IsAudio())
        {
            trackEvent.AdjustPlaybackRate(rate, true); // Ajustar la tasa de reproducción del audio
            if (syncedLength != null)
            {
                trackEvent.Length = syncedLength; // Sincronizar duración con el video
            }
            else
            {
                // Ajustar la duración del evento de audio
                double newLengthInSeconds = trackEvent.Length.ToMilliseconds() / 1000.0 / rate;
                trackEvent.Length = new Timecode(newLengthInSeconds * 1000);
            }
        }

        // Ajustar eventos de video
        if (trackEvent.Track.IsVideo())
        {
            VideoEvent videoEvent = trackEvent as VideoEvent;
            if (videoEvent != null)
            {
                videoEvent.PlaybackRate = rate; // Ajustar la tasa de reproducción del video
                if (syncedLength != null)
                {
                    videoEvent.Length = syncedLength; // Sincronizar duración con el audio
                }
                else
                {
                    // Ajustar la longitud del evento de video
                    double newLengthInSeconds = videoEvent.Length.ToMilliseconds() / 1000.0 / rate;
                    videoEvent.Length = new Timecode(newLengthInSeconds * 1000);
                }
            }
        }
    }
}

velocidad al 105% (acelerar)


using System;
using System.Windows.Forms;
using ScriptPortal.Vegas;

public class EntryPoint
{
    Vegas myVegas = null;
    Form dlog = new Form();

    public void FromVegas(Vegas vegas)
    {
        myVegas = vegas;
        AdjustPlaybackRate(1.05f); // Aplicar directamente el 105% al abrir la ventana
        dlog.Close(); // Cerrar la ventana automáticamente
    }

    void AdjustPlaybackRate(float rate)
    {
        foreach (Track track in myVegas.Project.Tracks)
        {
            foreach (TrackEvent trackEvent in track.Events)
            {
                if (trackEvent.Selected)
                {
                    // Ajustar tanto audio como video relacionados
                    SyncAndAdjustEvent(trackEvent, rate);
                }
            }
        }
    }

    void SyncAndAdjustEvent(TrackEvent selectedEvent, float rate)
    {
        // Ajustar el evento seleccionado (audio o video)
        AdjustEvent(selectedEvent, rate);

        // Buscar el evento relacionado (audio o video)
        foreach (Track track in myVegas.Project.Tracks)
        {
            foreach (TrackEvent trackEvent in track.Events)
            {
                // Si encontramos un evento relacionado con el seleccionado
                if (trackEvent != selectedEvent && AreEventsLinked(selectedEvent, trackEvent))
                {
                    // Ajustar el evento relacionado para que coincida
                    AdjustEvent(trackEvent, rate, selectedEvent.Length);
                }
            }
        }
    }

    bool AreEventsLinked(TrackEvent event1, TrackEvent event2)
    {
        // Consideramos que los eventos están vinculados si comparten la misma posición de inicio
        return event1.Start == event2.Start && event1.Length == event2.Length;
    }

    void AdjustEvent(TrackEvent trackEvent, float rate, Timecode syncedLength = null)
    {
        // Ajustar eventos de audio
        if (trackEvent.Track.IsAudio())
        {
            trackEvent.AdjustPlaybackRate(rate, true); // Ajustar la tasa de reproducción del audio
            if (syncedLength != null)
            {
                trackEvent.Length = syncedLength; // Sincronizar duración con el video
            }
            else
            {
                // Ajustar la duración del evento de audio
                double newLengthInSeconds = trackEvent.Length.ToMilliseconds() / 1000.0 / rate;
                trackEvent.Length = new Timecode(newLengthInSeconds * 1000);
            }
        }

        // Ajustar eventos de video
        if (trackEvent.Track.IsVideo())
        {
            VideoEvent videoEvent = trackEvent as VideoEvent;
            if (videoEvent != null)
            {
                videoEvent.PlaybackRate = rate; // Ajustar la tasa de reproducción del video
                if (syncedLength != null)
                {
                    videoEvent.Length = syncedLength; // Sincronizar duración con el audio
                }
                else
                {
                    // Ajustar la longitud del evento de video
                    double newLengthInSeconds = videoEvent.Length.ToMilliseconds() / 1000.0 / rate;
                    videoEvent.Length = new Timecode(newLengthInSeconds * 1000);
                }
            }
        }
    }
}
#5
Noticias / DJI Neo
Último mensaje por Ramón Cutanda - 05 de Septiembre de 2024, 19:25:33
#7
La cafetería / Re:De Xarqus
Último mensaje por Oleada - 04 de Septiembre de 2024, 20:49:59
Joder, me has dejado de piedra.

No se ni que decirte.

Abrazos virtuales y mucho ánimo.



#8
La cafetería / Re:De Xarqus
Último mensaje por J_Girona - 04 de Septiembre de 2024, 18:31:54
Hostia !!!

Se suele decir: "No hay noticias, buenas noticias"
Está claro que éste no es el caso, el silencio no presagiaba nada bueno...


Para darte un poco de alegría decirte que he utilizado algunas de tus creaciones musicales en el último vídeo que he montado:
.
.
Un abrazo y muchos ánimos, de un catalán para un andaluz al que admiro desde hace tiempo.


                                  Jordi Girona





#10
Noticias / RED rebaja los precios de sus ...
Último mensaje por Ramón Cutanda - 04 de Septiembre de 2024, 17:51:47
El spam de este foro está controlado por CleanTalk