Connexion
Note: Il s'agit d'une traduction automatique, s'il vous plaît utilisez un langage clair, sans jargon.

Vidéo à effet ascii

Forums : Vidéo à effet ascii
Vidéo à effet ascii
jporter313 - 10-25-2007


J'ai donc affiché sur le After Effects forum, Et peut-être pensé qu'il serait plus approprié de poster ici.

J'essaye de créer un effet où je peux prendre une vidéo et de le remplacer par des caractères.

Kevin camp a lancé cette expression, qui fonctionne très bien, Mais seulement de rendre un seul caractère par case:

Asciiarray = [ "","a","b","c","d","e","f","g","h","I","j"]; / / saisir les caractères de gamme de la lumière à l'obscurité des valeurs
Numcharacters = 10; / / le nombre total de caractères dans le tableau ci-dessus
Imagemap = thiscomp.Couche ( "image source").Sampleimage ([position [0], Position [1]], [1, 1]);
A = math.Round (linéaire (Imagemap [0], 0, Numcharacters));
Asciiarray [a]

J'ai essayé de mettre cela sur un champ de texte et de le dupliquer sur une grille, Problème est que cela prend quelques milliers de couches (tous des expressions) de remplir l'écran avec un nombre suffisant de caractères et After Effects plante bien avant que j'ai assez.

J'ai aussi trouvé cette page:

http://www.Creative-workflow-hacks.com / 2007/08/27/more-fun-with-sampleim...

Qui contient une expression qui travaille pour une ligne de texte, J'ai donc moins de couches (je ne dispose que de la répéter par le nombre de lignes), Mais le problème est qu'il ne réglemente pas la largeur de la zone de texte, Si l'évolution de la largeur des caractères changer la position de ultérieures caractères.

Je suis vraiment coincé et j'ai été aux prises avec ce problème pendant des jours. Est-ce que quelqu'un sais comment je peux obtenir cet effet?

Re: Vidéo à effet ascii
Dan Ebberts - 10-26-2007


Si la couche de votre vidéo est nommé "cible", Vous pouvez appliquer une expression comme celle-ci pour un calque de texte:

Densité = " .' `,^:"+'";~-_+<>i!Li?/ \|() 1 () [] rcvunxzjftlcjuyxzo0qoahkbdpqwm * wmb8 &%$#@';
Target = thiscomp.Couche ( "target");
Cols = 80;
Lignes = 60;
W = thiscomp.Largeur / cols;
H = thiscomp.Hauteur des lignes;

S = ""

For (var i = 0; i lignes; I + +) (
For (var j = 0; j cols; j + +) (
Center = [w / 2 + j * w, H / 2 + I * h];
Sample = cible.Sampleimage (au centre,[(p-1) / 2,(h-1) / 2]);
S + = densité [math.Round (linéaires (échantillon [0],0,1,0,Densité.Length - 1))];
}
S + = "\ r";
}
s


Vous aurez à jouer avec la taille de la police, Suivi, Leader, Etc. Modifier les colonnes et les lignes variables en fonction de vos besoins

Dan

Re: Vidéo à effet ascii
jporter313 - 10-26-2007


Thanks a lot Dan, Je vais essayer que l'un.

Re: Vidéo à effet ascii
moldyboot - 10-26-2007


Dan, Qui est assez impressionnant Dans sa simplicité (tout au moins à un gars sans aucune connaissance de script).

Dans l'espoir d'en apprendre davantage sur les scripts...

[ Dan ebberts] "for (Var i = 0; I < rows; i++){"

Var i = 0, Fixe la valeur initiale de 'I' à 0. Compare ensuite la valeur de 'I' de la valeur des lignes. I + + et augmente la valeur de 'I' jusqu'à ce que le «je» est supérieure à la valeur de lignes, à quel point la «boucle» se termine (mais est-ce correct de l'appeler une boucle, Ou est-ce comme une sous-routine).

[ Dan ebberts] "s =" ""

Est-ce simplement la mise en place d'une variable "s" ne renvoie rien que Dans un premier? Et il est alors augmenté (+ =) par la valeur de la densité du tableau... Jusqu'à ce que le «je» est supérieure à la valeur de lignes, à quel point «s» n'est rien de nouveau (et la «boucle s'arrête).

Kevin camp
Designer - kcpq, Kmyq & krcw

Re: Vidéo à effet ascii
Dan Ebberts - 10-26-2007


Assez bien. La boucle est exécuté aussi longtemps que je le moins de lignes. S = "" juste s établit comme une chaîne vide. La + = ajoute un nouveau caractère à la chaîne.

Je viens de remarquer que le caractère barre oblique inverse a perdu quand j'ai collé le code dans. Je vais essayer de nouveau, En utilisant cette fois la html code balise.




density = " .'`,^:" + '";~-_+<>i!lI?/|()1{}[]rcvunxzjftLCJUYXZO0Qoahkbdpqwm*WMB8&%$#@';
target = thisComp.layer("target");
cols = 80;
rows = 60;
w = thisComp.width/cols;
h = thisComp.height/rows;

s = ""

for (var i = 0; i < rows; i++){
for(var j = 0; j < cols; j++){
center = [w/2 + j*w, h/2 + i*h];
sample = target.sampleImage(center,[(w-1)/2,(h-1)/2]);
s += density[Math.round(linear(sample[0],0,1,0,density.length - 1))];
}
s += "r";
}
s




Dan

Re: Vidéo à effet ascii
Patrick Deen - 10-30-2007


Dan vous me rendez malade apparemment facile à trouver des solutions avec vous!
Je cherchais une façon de le faire avant CS3 après avoir vu le "black tambourins" vidéo de beck. J'ai longtemps abandonné l'idée que je pourrais moi-même, il figure.

La seule chose que je voudrais ajouter, c'est que lorsque vous êtes à expérimenter avec différentes vidéos, il est plus pratique d'utiliser le "layer (index)" attribut (juste une autre chose que j'ai appris à portée de la main de Dan )

Mise en place de la cible sous "target = thiscomp.Layer (index -1); "
Maintenant vous pouvez simplement ajouter la vidéo que vous voulez "ascciisize" à la couche au-dessus de votre calque de texte et de scripts.

D'ajouter un peu plus de profondeur à mon ascii vidéo que j'ai fait une deuxième couche de texte en caractères gras, et avec l'échantillon de la même vidéo avec crunched afin de limiter le gras à des zones les plus sombres. Vous avez besoin d'ajuster l'espacement de la lettre d'aligner les caractères gras et normaux. Méfiez-vous que l'ajout d'une deuxième couche de script montre vraiment qu'il s'agit là d'une expression intense du processeur.

asciistuff

Réponse à fil
FORUMSTUTORIELSMAGAZINESERVICESVIDEOSACTUALITéSBLOGS


© CreativeCOW.net Tous les droits sont réservés.

Communautés créatives du monde

[Haut]

Englishالعربية中文FrançaisDeutschעבריתहिन्दीItaliano日本語PortuguêsРусскийEspañol