L'école [RESOLU] AUDIO Stéréo / VIDEO Screen 8 (Real Time Movie) Audio Stéréo avec 2 Music Module et Vidéo avec Effets spéciaux 256 couleurs
Reprise du message précédent
igal, je ne comprends pas ce que tu veux démontrer ...Que le VDP numérise à la volée la vidéo en arrière plan ?
Je suis très sceptique ...
La pixellisation que tu filmes ne serait pas plutôt la pixellisation de la compression MPEG2 du DVD ?
En tout cas, le MSX2 ne possède pas de palette de couleur suffisamment étendue que pour pouvoir restituer une vidéo.
MSX1: Daewoo DPC-200 / Yamaha CX5M
MSX2: Sony HB-F9P
MSXVR
Vidéo: V9990 (GFX-9)
Audio: MSX-Music (FM-PAC) / MSX-Audio (Audiowave) / OPL4 (Monster Sound FM Blaster) / OPNB (Neotron)
igal
Membre non connecté
Conseiller Municipal
Salut Métalion:
En fait la vidéo que tu vois, passe bien au travers du VDP, elle est bien numérisée dans le sens ou elle est interprété par le VDP.
Ca, c'est une certitude. D'ailleurs, je suis très heureux que cela puisse étonner, c'est un peu mon but avec le MSX en général.
Je n'invente absolument rien, c'est simplement que tant qu'aucune "application" n'existe permettant de tirer partie de cette "performance", que faire de cet "exploit" mis à part s'la péter en montrant la capacité du VDP à Numériser à la volée le signal vidéo!
Je t'invite tester par toi même et tu verras.
Autrement, lance la vidéo youtube et fait une pause à 1,48 minutes.
Tu y vois en arrière plan la vidéo du DVD. Cette vidéo est visible parce que le fond NOIR est considéré comme TRANSPARENT par la SuperImpose:
(Bon ben je l'ai fait pour toi lol)
La seule façon de rendre la numérisation à la volée cohérente, est d'utiliser le Screen 8. Simplement parce que ce mode graphique attribue des couleurs cohérentes par défaut.
Cela fonctionne peut être aussi avec le SCREEN 12! Je ferai des essais demain avec l'extension MSX2+ de Fabf
Voila ce que je vais faire:
10 SCREEN 12:COLOR,,255 sachant que je passe en screen 12, quelle valeur je dois mettre?
20 SET VIDEO 2,1,1
30 GOTO 30
Si les VDP se conduisent comme je le pense, alors nous auront du SCREEN 8 numérisé à la volée par le VDP 9938 qui se trouve dans le 8280 et nous aurons du SCREEN 12 numérisé à la volée sur l'Extension MSX2+ qui est équipé d'un VDP 9950
C'est juste pour le Fun.
Edit:
Quelques infos sur le Color Bus en page 17 du [9938 Programmer Guide] ici => http://www.ccas.ru/brychkov/MSX/V9938_programmers_guide.pdf Edité par igal Le 27/01/2013 à 23h23
En fait la vidéo que tu vois, passe bien au travers du VDP, elle est bien numérisée dans le sens ou elle est interprété par le VDP.
Ca, c'est une certitude. D'ailleurs, je suis très heureux que cela puisse étonner, c'est un peu mon but avec le MSX en général.
Je n'invente absolument rien, c'est simplement que tant qu'aucune "application" n'existe permettant de tirer partie de cette "performance", que faire de cet "exploit" mis à part s'la péter en montrant la capacité du VDP à Numériser à la volée le signal vidéo!
Je t'invite tester par toi même et tu verras.
Autrement, lance la vidéo youtube et fait une pause à 1,48 minutes.
Tu y vois en arrière plan la vidéo du DVD. Cette vidéo est visible parce que le fond NOIR est considéré comme TRANSPARENT par la SuperImpose:
(Bon ben je l'ai fait pour toi lol)
La seule façon de rendre la numérisation à la volée cohérente, est d'utiliser le Screen 8. Simplement parce que ce mode graphique attribue des couleurs cohérentes par défaut.
Cela fonctionne peut être aussi avec le SCREEN 12! Je ferai des essais demain avec l'extension MSX2+ de Fabf
Voila ce que je vais faire:
10 SCREEN 12:COLOR,,255 sachant que je passe en screen 12, quelle valeur je dois mettre?
20 SET VIDEO 2,1,1
30 GOTO 30
Si les VDP se conduisent comme je le pense, alors nous auront du SCREEN 8 numérisé à la volée par le VDP 9938 qui se trouve dans le 8280 et nous aurons du SCREEN 12 numérisé à la volée sur l'Extension MSX2+ qui est équipé d'un VDP 9950
C'est juste pour le Fun.
Edit:
Quelques infos sur le Color Bus en page 17 du [9938 Programmer Guide] ici => http://www.ccas.ru/brychkov/MSX/V9938_programmers_guide.pdf Edité par igal Le 27/01/2013 à 23h23
le digitaliseur a l'intérieur du 8280 est branché sur le VDP interne
a mon avis ça devrait pas marcher
sur mon 8280 monté en 2 + j'ai une image a forte dominance de jaune avec des gros pixels genre YJK
a mon avis ça devrait pas marcher
sur mon 8280 monté en 2 + j'ai une image a forte dominance de jaune avec des gros pixels genre YJK
igal
Membre non connecté
Conseiller Municipal
Voilà c'est fait.
L'image passe bien par la mémoire via [COPY SCREEN 0].
En fait, la boucle est très simple puisque une fois que l'image est visualisée avec SET VIDEO 2,1,1
Cette tache continue comme en tache de fond
Il suffit de mettre à la ligne suivante la commande [COPY SCREEN 0] que l'on boucle à l'aide d'un [GOTO] pour que toutes les FRAMES passent par la VRAM
Pour sauvegardé une image, j'ai suivie les indication de Jipe avec BSAVE"TEST.SC8",0,&HD3FF,S
Afin d'appliquer cette commande à n'importe quel moment, je l'ai implanté en sortie de programme ou l'on est renvoyé par un [STOP ON].
Il suffit de faire [CTRL+STOP] pour [Enregistrer sur la Disquette] la Frame visualisée à l'écran au moment du [CTRL+STOP]
En résumé, j'ai eu une approche "A l'envers" ce qui permet de visualiser le film complètement numérisé et permet de Sauvegarder la Frame de son choix.
Selon moi, la partie Vidéo est une réussite complète.
Voici le résulta en image:
Pour ce qui est du SON, j'ai bon espoir de remonter du matériel d'ici ce soir
A suivre.
L'image passe bien par la mémoire via [COPY SCREEN 0].
En fait, la boucle est très simple puisque une fois que l'image est visualisée avec SET VIDEO 2,1,1
Cette tache continue comme en tache de fond
Il suffit de mettre à la ligne suivante la commande [COPY SCREEN 0] que l'on boucle à l'aide d'un [GOTO] pour que toutes les FRAMES passent par la VRAM
Pour sauvegardé une image, j'ai suivie les indication de Jipe avec BSAVE"TEST.SC8",0,&HD3FF,S
Afin d'appliquer cette commande à n'importe quel moment, je l'ai implanté en sortie de programme ou l'on est renvoyé par un [STOP ON].
Il suffit de faire [CTRL+STOP] pour [Enregistrer sur la Disquette] la Frame visualisée à l'écran au moment du [CTRL+STOP]
En résumé, j'ai eu une approche "A l'envers" ce qui permet de visualiser le film complètement numérisé et permet de Sauvegarder la Frame de son choix.
Selon moi, la partie Vidéo est une réussite complète.
Voici le résulta en image:
Pour ce qui est du SON, j'ai bon espoir de remonter du matériel d'ici ce soir
A suivre.
igal
Membre non connecté
Conseiller Municipal
Voici ce qui reste du programme après l'avoir réduit.
10 ON STOP GOSUB 40: STOP ON
20 SCREEN 8: COLOR ,,255:SET VIDEO 2,1,1
30 COPY SCREEN 0: GOTO 30
40 BSAVE"TEST.SC8",0,&HD3FF,S
50 SET VIDEO 2,0,0
Ce programme Digitalise 100% des frames vidéos en temps réel et plein écran.
Il est possible de sauvegarder un image à la volée en pressant simultanément [CTRL + STOP]
@Jipe: Si le jaune à l'air d'être une saturation de Couleur, le problème est peut être lié au bouton [LOW <Digitalize>HIG].
Selon la position (Valeur) du potentiomètre, certaine couleurs peuvent saturer. (on sait jamais).
Je viens d'insérer l'extension MSX2+ qui contient seulement le VDP. Il n'y a donc aucune ROM additionnelle.
Dès qu'on lance la commande SET VIDEO 2,1,1, l'image affichée par l'extension devient NOIR.
Il faut repasser par SET VIDEO 2,0,0 pour retrouver l'image sur la carte additionnelle.
Cela semble confirmer ce que tu disais sur le câblage spécifique du VDP sur le 8280.
10 ON STOP GOSUB 40: STOP ON
20 SCREEN 8: COLOR ,,255:SET VIDEO 2,1,1
30 COPY SCREEN 0: GOTO 30
40 BSAVE"TEST.SC8",0,&HD3FF,S
50 SET VIDEO 2,0,0
Ce programme Digitalise 100% des frames vidéos en temps réel et plein écran.
Il est possible de sauvegarder un image à la volée en pressant simultanément [CTRL + STOP]
@Jipe: Si le jaune à l'air d'être une saturation de Couleur, le problème est peut être lié au bouton [LOW <Digitalize>HIG].
Selon la position (Valeur) du potentiomètre, certaine couleurs peuvent saturer. (on sait jamais).
Je viens d'insérer l'extension MSX2+ qui contient seulement le VDP. Il n'y a donc aucune ROM additionnelle.
Dès qu'on lance la commande SET VIDEO 2,1,1, l'image affichée par l'extension devient NOIR.
Il faut repasser par SET VIDEO 2,0,0 pour retrouver l'image sur la carte additionnelle.
Cela semble confirmer ce que tu disais sur le câblage spécifique du VDP sur le 8280.
igal
Membre non connecté
Conseiller Municipal
J'ai pensé à une chose.
Plutôt que de faire une sauvegarde d'écran à l'isus d'un BSAVE, je voudrais faire un "Arrêt sur Image".
A l'arrêt sur image, on a tout le loisir de choisir si l'on veut la sauvegarder, ou alors reprendre la Visualisation en SCREEN8.
Par exemple, si l'image est intéressante, on peut la Sauvegarder [TOUCHE S] autrement, si on veut pas la sauvegarder, on presse sur [TOUCHE ESC] qui reprend la visualisation en cours en SCREEN 8.
N'ayant pas les connaissances nécessaires, je poste ce que je souhaiterai faire
10 ON STOP GOSUB 50: STOP ON:' Permet une sortie du programme
11 Si un appui de touche est détecté, alors aller à la ligne 31
20 SCREEN 8: COLOR ,,255:SET VIDEO 2,1,1:'Bascule en mode écran 8, couleur noir,noir, ??? et enfin lance la superimpose, active les effets spéciaux et les affiches par dessus le film vidéo.
30 COPY SCREEN 0: GOTO 30:' Force la mise en mémoire des frames lues par le COLOR BUS du VDP
31 Couleur Noir,Noir,Noir : afficher à l'écran l'image qui se trouve en mémoire
32 Si l'appui de la touche [S] est détecté alors aller ligne 40 autrement, si un appui sur une touche quelconque est détecté aller à la ligne 10. Autrement, relire la ligne 32.
40 BSAVE"TEST.SC8",0,&HD3FF,S:GOTO 10:' Sauvegarde l'image sur la Disquette et relance le programme au début.
50 SET VIDEO 2,0,0:' Remet l'écran dans un état lisible.
En Bleu, le programme en BASIC.
En Noir, les explication sur ce qui se produit.
En Rouge, ce que je voudrais faire, mais j'ai pas la maîtrise du Basic.
Si une âme charitable se dévoue pour traduire les lignes rouges en BASIC
Par avance, Merci
Plutôt que de faire une sauvegarde d'écran à l'isus d'un BSAVE, je voudrais faire un "Arrêt sur Image".
A l'arrêt sur image, on a tout le loisir de choisir si l'on veut la sauvegarder, ou alors reprendre la Visualisation en SCREEN8.
Par exemple, si l'image est intéressante, on peut la Sauvegarder [TOUCHE S] autrement, si on veut pas la sauvegarder, on presse sur [TOUCHE ESC] qui reprend la visualisation en cours en SCREEN 8.
N'ayant pas les connaissances nécessaires, je poste ce que je souhaiterai faire
10 ON STOP GOSUB 50: STOP ON:' Permet une sortie du programme
11 Si un appui de touche est détecté, alors aller à la ligne 31
20 SCREEN 8: COLOR ,,255:SET VIDEO 2,1,1:'Bascule en mode écran 8, couleur noir,noir, ??? et enfin lance la superimpose, active les effets spéciaux et les affiches par dessus le film vidéo.
30 COPY SCREEN 0: GOTO 30:' Force la mise en mémoire des frames lues par le COLOR BUS du VDP
31 Couleur Noir,Noir,Noir : afficher à l'écran l'image qui se trouve en mémoire
32 Si l'appui de la touche [S] est détecté alors aller ligne 40 autrement, si un appui sur une touche quelconque est détecté aller à la ligne 10. Autrement, relire la ligne 32.
40 BSAVE"TEST.SC8",0,&HD3FF,S:GOTO 10:' Sauvegarde l'image sur la Disquette et relance le programme au début.
50 SET VIDEO 2,0,0:' Remet l'écran dans un état lisible.
En Bleu, le programme en BASIC.
En Noir, les explication sur ce qui se produit.
En Rouge, ce que je voudrais faire, mais j'ai pas la maîtrise du Basic.
Si une âme charitable se dévoue pour traduire les lignes rouges en BASIC
Par avance, Merci
Fabf
Membre non connecté
Conseiller Municipal
Compliqué, tu multiplie les boucles.
Cela doit pouvoir se simplifier.
Je peux regarder mais pas avant demain
Cela doit pouvoir se simplifier.
Je peux regarder mais pas avant demain
je peux te faire ça mais pas avant vendredi
essaye quand même DIGITIZE.COM pour voir l'image en SCREEN 8 brut
l'effet que tu as sur ton écran doit être une combinaison du superimpose et de la rémanence de ton écran
vois tu la même chose sur un tube ?
essaye quand même DIGITIZE.COM pour voir l'image en SCREEN 8 brut
l'effet que tu as sur ton écran doit être une combinaison du superimpose et de la rémanence de ton écran
vois tu la même chose sur un tube ?
igal
Membre non connecté
Conseiller Municipal
Merci les gars
@Jipe: Sur Pc, J'ai plus de lecteur de Diquettes et sur MSX, ma CF est KO
Je peux rien faire pour le moment sauf acheter un lecteur de disquette USB.
Le sujet des lecteur de Disquettes USB compatible avec le MSX a été abordé, mais je retrouve pas le sujet
Autrement, si t'as une solution pour créer de toute pièce un formatage de la CF sur le PC, je suis ouvert à de nouvelles expériences
@Jipe: Sur Pc, J'ai plus de lecteur de Diquettes et sur MSX, ma CF est KO
Je peux rien faire pour le moment sauf acheter un lecteur de disquette USB.
Le sujet des lecteur de Disquettes USB compatible avec le MSX a été abordé, mais je retrouve pas le sujet
Autrement, si t'as une solution pour créer de toute pièce un formatage de la CF sur le PC, je suis ouvert à de nouvelles expériences
igal
Membre non connecté
Conseiller Municipal
Jipe :
l'effet que tu as sur ton écran doit être une combinaison du superimpose et de la rémanence de ton écran
vois tu la même chose sur un tube ?
l'effet que tu as sur ton écran doit être une combinaison du superimpose et de la rémanence de ton écran
vois tu la même chose sur un tube ?
J'ai sorti le petit cathodique pour en avoir le coeur net.
Le résulta est encore meilleur certainement à cause de la petite taille de l'écran combiné au principe du "Moyenneur" propre que Cathodique.
Voici un enregistrement du film qui tourne en SREEN 8 suivi de quelques photos d'une image saisie à la volée avec BSAVE.
J'essais d'être positionné de tel sorte à limité les bandes noirs sur l'écran:
Ces trois photos sont celle d'une seule et unique image sauvée à la volée avec BSAVE
@Jipe: Lorsque tu parles de rémanence combinée à la Superimpose, tu veux dire que le film visible à l'écran est plus beau que ce que va produire une "Saisie d'écran" à la volée?
Pour le moment, tout semble démontré que l'image saisie "à la volée" est strictement identique à l'image visualisée en pleine action
igal
Membre non connecté
Conseiller Municipal
Ok ok...
@Jipe: Avec l'ajout de la commande SET VIDEO 0,0,0 on va vite savoir puisque t'as trouvé la bonne solution.
J'ai donc modifié le programme tel que:
Concrètement, lorsque je fait [CTRL + STOP] l'image se met en [PAUSE] ensuite, dès que j'appuie sur une [TOUCHE], le film est de nouveau visible à l'écran.
Par contre il y a un problème puisque aléatoirement, l'image Saisie fait "soit" le [TIERS] haut de l'images, "soit l'image [ENTIERE].
Je remarque à l'instant que l'ai bouclé 50 => 40. C'est peut être la source du problème! Edité par igal Le 01/02/2013 à 19h43
@Jipe: Avec l'ajout de la commande SET VIDEO 0,0,0 on va vite savoir puisque t'as trouvé la bonne solution.
J'ai donc modifié le programme tel que:
Code TEXT :
10 ON STOP GOSUB 40: STOP ON 20 SET VIDEO 2,0,0 COLOR 1,15:SCREEN 8:COLOR,,255:SET VIDEO 2,1,1 30 COPY SCREEN 0:GOTO30 40 SET VIDEO 0,0,0:COLOR 1,15:A$=INKEY$ 50 IF A$=""THEN40 60 GOTO 20
Concrètement, lorsque je fait [CTRL + STOP] l'image se met en [PAUSE] ensuite, dès que j'appuie sur une [TOUCHE], le film est de nouveau visible à l'écran.
Par contre il y a un problème puisque aléatoirement, l'image Saisie fait "soit" le [TIERS] haut de l'images, "soit l'image [ENTIERE].
Je remarque à l'instant que l'ai bouclé 50 => 40. C'est peut être la source du problème! Edité par igal Le 01/02/2013 à 19h43
igal
Membre non connecté
Conseiller Municipal
Je sais pas si c'est la meilleur solution, mais cela fonctionne.
J'ai ajouté une temporisation à la boucle principale [COPY SCREEN 0] de sorte à limiter le nombre de frames à mettre en V-RAM.
La commande est FOR A=0 TO 127:NEXT A
Il faut comprendre ceci:
1): Plus on Diminue A et plus le nombre d'images envoyé en V-RAM est important.
2): Plus le nombre d'images envoyé en V-RAM est important et plus souvent l'image est incomplète au deux tiers.
3): Avec cette valeur, on obtient 99% d'images complètes et donc 1% de déchets.
Voici le programme:
Le résulta en image:
Pour rendre intéressant ce petit programme, l'idéal serait d'ajouter la possibilité de sauvegarder avec la touche [ S] après la mise en pause [CTRL+STOP] si on le souhaite.
Le top du top est de créer en plus un automatisme dans la création des fichiers du genre:
001.SC8
002.SC8
003.SC8
etc etc...
Une dernière chose.
Actuellement, il m'est impossible de quitter le programme même en faisant plusieurs fois [CTRL+STOP]
@Jipe: selon le niveau du bouton <<High=[Quality Digit]=Low>>, la digitalisation peut être extrêmement contrasté blanchâtre ou encore très jaunie.
Ca vaut peut être la peine de vérifier les valeurs que tu obtiens sur le bouton à glissière! (Potentiomètre ou Résistance Variable?)
En fait je suis curieux de voir le résulta avec le 9958
Tu pourrais tenter avec du SCREEN 12 Edité par igal Le 01/02/2013 à 23h46
J'ai ajouté une temporisation à la boucle principale [COPY SCREEN 0] de sorte à limiter le nombre de frames à mettre en V-RAM.
La commande est FOR A=0 TO 127:NEXT A
Il faut comprendre ceci:
1): Plus on Diminue A et plus le nombre d'images envoyé en V-RAM est important.
2): Plus le nombre d'images envoyé en V-RAM est important et plus souvent l'image est incomplète au deux tiers.
3): Avec cette valeur, on obtient 99% d'images complètes et donc 1% de déchets.
Voici le programme:
Le résulta en image:
Pour rendre intéressant ce petit programme, l'idéal serait d'ajouter la possibilité de sauvegarder avec la touche [ S] après la mise en pause [CTRL+STOP] si on le souhaite.
Le top du top est de créer en plus un automatisme dans la création des fichiers du genre:
001.SC8
002.SC8
003.SC8
etc etc...
Une dernière chose.
Actuellement, il m'est impossible de quitter le programme même en faisant plusieurs fois [CTRL+STOP]
@Jipe: selon le niveau du bouton <<High=[Quality Digit]=Low>>, la digitalisation peut être extrêmement contrasté blanchâtre ou encore très jaunie.
Ca vaut peut être la peine de vérifier les valeurs que tu obtiens sur le bouton à glissière! (Potentiomètre ou Résistance Variable?)
En fait je suis curieux de voir le résulta avec le 9958
Tu pourrais tenter avec du SCREEN 12 Edité par igal Le 01/02/2013 à 23h46
pour la sauvegarde automatique ( disque dur ou CF conseillé )
10 N=1'init compteur
500 'routine de digit ave c le SET VIDEO
1000 N$=RIGHT$(STR(N),LEN(STR$(N))-1)
1020 BSAVE"IMAGE"+N$+".SC8",0,&HD3FF,S
1030 N=N+1:GOTO500
10 N=1'init compteur
500 'routine de digit ave c le SET VIDEO
1000 N$=RIGHT$(STR(N),LEN(STR$(N))-1)
1020 BSAVE"IMAGE"+N$+".SC8",0,&HD3FF,S
1030 N=N+1:GOTO500
igal
Membre non connecté
Conseiller Municipal
@Jipe: J'ai une erreur de type OVERFLOW il me semble...j'ai pas pu tester tranquillement
Par contre, coté Audio, y a du progrès.
Après avoir extrait ce qui me semblait essentiel, j'ai tapé le Listing récupéré dans le Manuel de Service du Music Module.
Un premier test fait à la va vite, mais qui est très prometteur.
On est bel et bien en multitache puisque j'ai beau faire des accès disque du genre LOAD, SAVE etc, tout est géré en externe par le MSX-AUDIO
Voici la Vidéo:
Nb: Un simple Music Module suffit. Il est pas nécessaire d'avoir d'expander FRS-MSXPro
Par la suite, j'essaierai de génerer une sorte de pseudo Streaming.
En réalité il s'agit d'enregistrer/lire en alternance, des fractions de secondes successives.
Ca reste juste une idée. SI vous avez mieux, je suis tout ouïe
Par contre, coté Audio, y a du progrès.
Après avoir extrait ce qui me semblait essentiel, j'ai tapé le Listing récupéré dans le Manuel de Service du Music Module.
Un premier test fait à la va vite, mais qui est très prometteur.
On est bel et bien en multitache puisque j'ai beau faire des accès disque du genre LOAD, SAVE etc, tout est géré en externe par le MSX-AUDIO
Voici la Vidéo:
Nb: Un simple Music Module suffit. Il est pas nécessaire d'avoir d'expander FRS-MSXPro
Par la suite, j'essaierai de génerer une sorte de pseudo Streaming.
En réalité il s'agit d'enregistrer/lire en alternance, des fractions de secondes successives.
Ca reste juste une idée. SI vous avez mieux, je suis tout ouïe
Répondre
Vous n'êtes pas autorisé à écrire dans cette catégorie