Alguien escribió:
Yo conozco por dentro los VST en motores float32 o float64(todos) y tal y como salen los datos van derechitos al siguiente plugin de la cadena o donde pertoque, no hay nigún proceso de por medio porque son del mismo tipo. Piensa que truncar es recortar, y un 64 aloja a uno de 32 y le sobra la mitad, otra cosa sería el caso contrario.
En los plugins dentro se puede implementar processreplacing (de 32b) y processdoublereplacing(64) en el plugin dependiendo de si vas a entregarle un float 32 y un 64 al DAW, lo normal es entregar los de 32 y si en algún momento se requiere mayor resolución interna para un cálculo que debe de ser bastante preciso o en el que los errores se hacen acumulativos (hay veces que los errores se producen pero el mismo error siguiente anula el primero y de media es como si no se hubiera producido) usar los pesados, o sea los de 64.
En verdad es lo más sensato, ya que meter muchos dithers o truncamientos sería en un caso pesado y en otro innecesario, directamente se trabaja todo en float y ya al final se convierte.
El processdoublereplacing(float64) no se como lo manejan por dentro los motores de Steinberg de 32, no creo que se molesten en poner la opción de meter pasar al DAW floats de 64 en la API VST para luego hacerles desde el DAW un Typecasting, para eso que decida el que programa el plugin si quiere hacer un typecasting de toda la vida o uno más complejo, igualmente en la realidad en plugins se usa el de 32, y si se soporta el de 64 suele ser por marketing, con trabajar internamente a 64 y devolver uno de 32 al DAW basta, ahora, si el DAW es de 64 bits sería una conversión innecesaria.
Lo de Protools ya es un caso especial, y en verdad cuando no había visto estas cosas un poco por dentro me lió también un poco, también tenía esta pregunta y me pensaba que iban metiendo dithers a diestro y siniestro porque no había pillado que trabajaban en float.
Hacia mucho q no aprendia tanto en tan poco tiempo...
gracias rafa