Ce programme était à l'origine un poisson d'avril, mais le lecteur vidéo fonctionne tout de même. En réalité, c'est un lecteur de GIF. Vous pouvez convertir vos GIF à l'aide du fichier python fourni dans les sources, mais vous devez également utiliser le fichier VLC.g1a qui se trouve dans les sources pour lire vos propres GIF, car la version du 1er avril est différente de celle des sources et a subi des modifications.
Comment ça marche derrière ?
Tout d'abord, le GIF est découpé et redimensionné de manière à être deux fois plus petit que l'écran de la Casio. Ensuite, il est converti en nuances de gris. Le convertisseur sauvegarde ensuite chaque pixel dans un unsigned char.
Ensuite, le programme Casio ouvre le fichier et le garde ouvert. Quand il lit une frame, il effectue un GINT_CALL pendant la durée de la lecture du fichier, puis affiche l'image en deux fois plus grand. Il continue de boucler ainsi jusqu'à ce que vous arrêtiez le programme, moment où il ferme le fichier.
Voilà comment fonctionne ce lecteur de GIF pour Casio. Si vous avez d'autres questions, n'hésitez pas à les poser !
Description 1er avril
Cliquer pour enrouler
Avez-vous toujours rêvé d'avoir un lecteur vidéo sur votre Casio ? Désormais, il est possible de visionner vos films pré-enregistrés grâce à un nouveau système de compression révolutionnaire !
Ce système de compression permet de transformer une vidéo de 20 minutes, qui peut parfois peser plus de 100 Mo, en seulement 2 Mo ! Vous pouvez même tester cette prouesse technique grâce à la démo qui vous a été envoyée.
Pour utiliser ce programme, vous aurez besoin de deux fichiers : VLC.g1a et VIDEO.bin. Une fois que vous les avez téléchargés, vous pourrez profiter pleinement de vos vidéos préférées directement sur votre Casio.
Ne perdez plus de temps à chercher un lecteur vidéo compatible avec votre Casio et essayez dès maintenant cette nouvelle technologie de compression vidéo. Profitez d'une expérience de visionnage exceptionnelle où que vous soyez, et cela sans avoir à sacrifier la qualité de vos vidéos. Bon visionnage !
Voici le lien d'une vidéo de démonstration : lien démo vidéo
Deuxième vidéo :
il y a quel que années je n'avait pas compris que l'on pouvait metre notre propre gif dessus mais maintenant je me demande comment on fait, tu pourrais faire un tuto?
Salut !
Dans les fichiers il y les sources dont le fichier GifConvert.py, Tout en bas de ce fichier il y a une ligne : ConvertGid("one-piece.gif","VIDEO.bin")
Il te suffit de changer le nom du gif par le tien et exécuter le fichier et voilà !
Alors dire que ça ne marche pas sans rajouter plus, ça n'aide pas beaucoup.
Je l'ai dit dans mon précédent message, il faut utiliser Python et installer les librairies nécessaires à son fonctionnement. Il n'est pas nécessaire d'être en administrateur.
Je te laisse le soin de faire les recherches par toi-même pour l'installation et l'utilisation de Python.
ok parfait, j'ai apris python il n'y a pas longtemps, donc j'ai compris pourquoi sa ne marcher pas, j'ai modifier ton programme pour pouvoir lire des gif lus lourd, il y a juste un probleme sur les fps, le programme sert a prendre une immage sur deux pour divisée par 2 le nombre d'octet
import json
import os,sys
import struct
import unicodedata
from PIL import Image, ImageEnhance
import numpy as np
from PIL import Image, ImageDraw, ImageFont, GifImagePlugin
def ConvertRGB(RGB):
R = RGB[0]
G = RGB[1]
B = RGB[2]
return ((R >> 3) << 11) + ((G >> 2) << 5) + (B >> 3)
def ConvertRGB(RGB):
#make grey scale
R = RGB[0]
G = RGB[1]
B = RGB[2]
grey = (R + G + B) // 3
return grey
def SaveString(fp,string):
for i in string:
fp.write(struct.pack('>B', i))
SizeScreen = (396,224)
#make function import all images from a folder and save array of pixels in list
def import_images_from_folder(folder):
images = []
width, height = 0, 0
lst = os.listdir(folder)
#sort the list 0.png, 1.png, 2.png, ...
lst.sort(key=lambda f: int(''.join(filter(str.isdigit, f))))
for filename in lst:
print(filename)
img = Image.open(os.path.join(folder,filename))
#convert as greyscale
img = img.convert("L")
#convert to RGBA
#img = img.convert("RGBA")
#change Brightness
img = ImageEnhance.Brightness(img).enhance(1.5)
#resize image with max size of 396x224
if img.size[0] > img.size[1]:
new_width = 396
new_height = int((new_width * img.size[1]) / img.size[0])
else:
new_height = 224
new_width = int((new_height * img.size[0]) / img.size[1])
new_width, new_height = new_width//2, new_height//2
width, height = new_width, new_height
img = img.resize((new_width, new_height))
if img is not None:
arr = np.array(img)
#convert to RGB
txt = []
#for i in range(len(arr)):
# for j in range(len(arr[i])):
# txt += [ConvertRGB(arr[i][j])]
#convert to grey scale
for i in range(len(arr)):
for j in range(len(arr[i])):
txt += [arr[i][j]]
images.append(txt)
return images, (width, height)
#make function to convert to binary
def ConvertToBinary(filename,lst,size):
with open(filename, 'wb') as f:
#write size of screen
f.write(struct.pack('>i', size[0]))
f.write(struct.pack('>i', size[1]))
#write number of frames
f.write(struct.pack('>i', len(lst)))
#write name of file
f.write(struct.pack('>i', len(filename)))
f.write(b''.join(struct.pack('>b', n) for n in str.encode(filename)))
for image in lst:
SaveString(f,image)
def ConvertGid(filenameGif,filenameBin):
img = Image.open(filenameGif)
#remove Temp folder if it exists
if os.path.exists("Temp"):# and remove all files in folder
for filename in os.listdir("Temp"):
os.remove("Temp/" + filename)
os.rmdir("Temp")
#create Temp folder
os.mkdir("Temp")
#convert gif to frames and save in Temp folder with name 0.png, 1.png, 2.png, etc
for i in range(img.n_frames):
img.seek(i)
if i%2 == 1:continue
img.save("Temp/" + str(i) + ".png")
#import images from Temp folder
lst,size = import_images_from_folder("Temp")
#convert to binary
ConvertToBinary(filenameBin,lst,size)
j'ai donc pu telecharger le debut de l'age de glace 3 j'usqu'a scrat qui tombe au fond du goufre, je vais essayer de liberer de l'espace pour rajouter du film maintenant
Planète Casio est un site communautaire non affilié à Casio. Toute reproduction de Planète Casio, même partielle, est interdite.
Les programmes et autres publications présentes sur Planète Casio restent la propriété de leurs auteurs et peuvent être soumis à des licences ou copyrights.
CASIO est une marque déposée par CASIO Computer Co., Ltd