Décompacteur RGB555 vers des canaux RGB 8 bits
Transformez un nombre RGB555 compacté en RVB classique : 0x7C1F donne rouge 255, vert 0 et bleu 255. Chaque niveau sur cinq bits est étendu à toute la plage de 0 à 255, pour lire graphismes rétro et données d’appareils comme de vraies couleurs. Gratuit dans votre navigateur.
- Gratuit
- Fonctionne dans votre navigateur
- Sans inscription
- Vos données restent sur votre appareil
Lancer gratuitement
Exemple résolu
- Valeur
- 0x7C1F
- Valeur
- 31 775
- Hex
- 0x7C1F
- Red
- 255
- Vert
- 0
Le décompacteur RGB555 vers RGB convertit une couleur non signée codée sur 15 bits en valeurs rouge, verte et bleue séparées, adaptées aux traitements modernes sur 8 bits. Il accepte un texte décimal ou hexadécimal commençant par 0x, valide toute l’entrée, extrait les trois champs de cinq bits et redimensionne chacun entre 0 et 255. Le résultat conserve aussi les composants d’origine et une écriture hexadécimale normalisée afin que vous puissiez inspecter, comparer, tester ou intégrer facilement la conversion.
Comprendre l’agencement des bits RGB555
RGB555 place trois canaux de couleur dans quinze bits significatifs. Ici, les bits 14 à 10 contiennent le rouge, les bits 9 à 5 le vert et les bits 4 à 0 le bleu. Chaque champ représente donc un entier de 0 à 31.
La valeur non signée doit rester comprise entre 0 et 32767 ; un seizième bit n’est interprété ni comme transparence, ni comme intensité, ni comme remplissage. Vous pouvez fournir du texte décimal, par exemple 31775, ou hexadécimal avec le préfixe 0x, par exemple 0x7C1F. La sortie fournit une forme hexadécimale normalisée sur quatre chiffres, les composantes exactes sur cinq bits et leurs canaux développés sur huit bits.
Vous pouvez ainsi comparer le résultat à un vidage mémoire ou à la documentation d’un format et vérifier les masques sans effectuer manuellement les décalages.
Passer de cinq bits à huit bits
Après extraction, chaque composante couvre la plage 8 bits selon la formule round(composante × 255 ÷ 31). La valeur 0 devient donc 0 et la valeur 31 devient 255. Les valeurs intermédiaires sont réparties de manière déterministe.
Cette extension numérique ne restaure pas une information chromatique absente : RGB555 ne possède que 32 niveaux par canal. La règle est précisée, car certains convertisseurs effectuent un décalage à gauche, limité à 248, ou répliquent des bits.
Valider les couleurs dans vos traitements
Employez cet outil pour des graphismes rétro, des écrans embarqués, des textures, des enregistrements binaires, des émulateurs ou tout format déclarant RGB555 avec le rouge dans le champ le plus significatif. BGR555 inverse les canaux et RGB565 réserve six bits au vert : ces formats ne sont pas devinés. Le texte mal formé, les signes, fractions, chiffres hexadécimaux sans 0x, caractères finaux et valeurs hors de la plage non signée sur 15 bits sont rejetés sans analyse partielle.
Ainsi, 123abc ne devient jamais 123 en silence. Sans réseau, hasard, horloge, analyse locale ni état mutable, une entrée valide identique produit toujours la même sortie.
Cas d’usage
Examiner les couleurs de jeux rétro
Convertissez les palettes compactées en canaux 8 bits tout en conservant les composantes 5 bits pour le débogage.
Valider les données d’un écran embarqué
Contrôlez les registres ou tampons RGB555 et refusez les valeurs dépassant la plage non signée sur 15 bits.
Préparer des couleurs décodées
Transformez les valeurs hexadécimales ou décimales en champs numériques nommés pour vos tests et migrations.
Questions fréquentes
Quel ordre de bits ce décompacteur utilise-t-il ?
Le rouge occupe les bits 14–10, le vert les bits 9–5 et le bleu les bits 4–0.
Comment les canaux sur cinq bits sont-ils étendus ?
Chaque composante suit round(composante × 255 ÷ 31) et donne un entier compris entre 0 et 255.
Puis-je saisir une valeur hexadécimale ?
Oui. Utilisez le préfixe 0x, par exemple 0x7C1F ; les chiffres hexadécimaux sans ce préfixe sont refusés.
RGB565 et BGR555 sont-ils acceptés ?
Non. Leur attribution ou ordre des bits diffère ; seule la disposition RGB555 documentée est décodée.
Que devient le bit 15 ?
Les valeurs supérieures à 0x7FFF sont refusées. Le bit supérieur n’est interprété ni comme alpha ni comme indicateur.
Outils associés
Pour les développeurs — accès API
Tout sur cette page est disponible par programmation. Cette section s'adresse aux équipes qui veulent l'intégrer à leurs systèmes ; les autres peuvent simplement utiliser l'outil ci-dessus.
Endpoint
Authentification par jeton Bearer : un seul POST met la tâche en file d’attente, et le résultat vous parvient par webhook ou lien signé.
Appeler depuis votre stack
curl -X POST https://api.kit.forhosting.com/color/rgb555-rgb \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"value":"0x7C1F"}'const res = await fetch("https://api.kit.forhosting.com/color/rgb555-rgb", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"value": "0x7C1F"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/color/rgb555-rgb",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"value": "0x7C1F"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/color/rgb555-rgb", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"value":"0x7C1F"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"value":"0x7C1F"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/color/rgb555-rgb", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Exemple de requête
{
"value": "0x7C1F"
}Exemple de réponse
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "color.rgb555_rgb",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}L’API est asynchrone : chaque appel renvoie un task_id immédiatement, puis vous interrogez l’état à raison d’une requête par seconde.
Tarifs
Le prix est publié, sans tokens ni crédits. Une tâche qui échoue n’est pas facturée.
Erreurs
| HTTP | Code | Signification |
|---|---|---|
401 | unauthorized | Clé API absente ou invalide : vérifiez l’en-tête Authorization. |
402 | insufficient_balance | Solde insuffisant : rechargez votre compte pour lancer cette tâche. |
404 | unknown_type | Type de tâche inconnu : vérifiez le champ type de votre requête. |
429 | rate_limited | Trop de requêtes : ralentissez la cadence, puis réessayez. |
Notes techniques
Passer de cinq bits à huit bits
Cette capacité applique toujours la formule annoncée et renvoie un JSON stable dans l’API comme dans le navigateur. Les champs red_5bit, green_5bit et blue_5bit restent disponibles afin que vous puissiez contrôler les masques ou appliquer ensuite une autre convention imposée par un ancien format.
Valider les couleurs dans vos traitements
Pour automatiser, envoyez une valeur par requête et utilisez directement les champs numériques nommés. Le tarif de base de l’API est de $0.002 par requête.