Please bookmark this page to avoid losing your image tool!

Multi Language HiFi VHSRip And DVDRip Audio Player

(Free & Supports Bulk Upload)

Drag & drop your images here or

The result will appear here...
You can edit the below JavaScript code to customize the image tool.
function processImage(originalImg, mode = "VHS", noiseLevel = 25, rgbShift = 5) {
    const canvas = document.createElement('canvas');
    const ctx = canvas.getContext('2d');
    
    // Set canvas dimensions to match the original image
    const width = originalImg.width;
    const height = originalImg.height;
    canvas.width = width;
    canvas.height = height;

    // Draw the original image onto the canvas
    ctx.drawImage(originalImg, 0, 0);

    // Get the image data for pixel manipulation
    let imgData = ctx.getImageData(0, 0, width, height);
    let data = imgData.data;

    // Create a temporary canvas/context to hold the original unadulterated pixels
    const copyCanvas = document.createElement('canvas');
    copyCanvas.width = width;
    copyCanvas.height = height;
    const copyCtx = copyCanvas.getContext('2d');
    copyCtx.drawImage(originalImg, 0, 0);
    const copyDataObj = copyCtx.getImageData(0, 0, width, height);
    const copyData = copyDataObj.data;

    // Parse parameters
    const noiseNum = parseInt(noiseLevel, 10);
    const shiftNum = parseInt(rgbShift, 10);
    const isVHS = mode.toUpperCase() === "VHS";

    // Loop through each pixel
    for (let y = 0; y < height; y++) {
        // VCR Tracking Distortion effect near the bottom of the screen
        let offsetBase = 0;
        if (isVHS && y > height * 0.88 && y < height * 0.95) {
            offsetBase = Math.floor(Math.random() * 15) - 7;
        }

        for (let x = 0; x < width; x++) {
            const index = (y * width + x) * 4;

            // Chromatic Aberration (RGB Shift)
            let redX = Math.min(width - 1, Math.max(0, x + shiftNum + offsetBase));
            let blueX = Math.min(width - 1, Math.max(0, x - shiftNum + offsetBase));
            let greenX = Math.min(width - 1, Math.max(0, x + offsetBase));

            const rIndex = (y * width + redX) * 4;
            const gIndex = (y * width + greenX) * 4;
            const bIndex = (y * width + blueX) * 4;

            // Apply Shifted Colors
            data[index] = copyData[rIndex];         // R
            data[index + 1] = copyData[gIndex + 1]; // G
            data[index + 2] = copyData[bIndex + 2]; // B
            // Alpha remains original (data[index + 3])

            // Add Static/Noise
            if (noiseNum > 0) {
                let noiseVal = (Math.random() - 0.5) * noiseNum * 2;
                data[index] = Math.min(255, Math.max(0, data[index] + noiseVal));
                data[index + 1] = Math.min(255, Math.max(0, data[index + 1] + noiseVal));
                data[index + 2] = Math.min(255, Math.max(0, data[index + 2] + noiseVal));
            }
        }
    }

    // Put modulated image data back onto the canvas
    ctx.putImageData(imgData, 0, 0);

    // Apply Scanlines
    ctx.fillStyle = 'rgba(0, 0, 0, 0.25)';
    const scanlineThickness = Math.max(1, Math.floor(height / 400));
    for (let y = 0; y < height; y += scanlineThickness * 3) {
        ctx.fillRect(0, y, width, scanlineThickness);
    }

    // Apply overall color tint (Greenish for VHS, Bluish for DVD)
    ctx.fillStyle = isVHS ? 'rgba(0, 255, 0, 0.04)' : 'rgba(0, 0, 255, 0.04)';
    ctx.fillRect(0, 0, width, height);

    // Overlay VCR/Player OSD Text (On-Screen Display)
    const fontSize = Math.max(14, Math.floor(height * 0.04));
    ctx.font = `bold ${fontSize}px "Courier New", Courier, monospace`;
    ctx.fillStyle = '#f0f0f0';
    
    // Text Shadows for CRT glow effect
    ctx.shadowColor = '#000000';
    ctx.shadowBlur = 6;
    ctx.shadowOffsetX = 2;
    ctx.shadowOffsetY = 2;

    const marginX = width * 0.05;
    const marginYTop = height * 0.1;
    const marginYBottom = height * 0.9;

    if (isVHS) {
        ctx.fillText('PLAY ►', marginX, marginYTop);
        ctx.fillText('SP', width - marginX - (fontSize * 1.5), marginYTop);
        ctx.fillText('HIFI VHSRip AUDIO MONO', marginX, marginYBottom);
        ctx.fillText('Других Языков', width - marginX - (fontSize * 7.5), marginYBottom);
    } else {
        ctx.fillText('DVDRip MULTI LANGUAGE', marginX, marginYTop);
        ctx.fillText('AUDIO TRACK: 2', marginX, marginYBottom);
        ctx.fillText('Других Языков Плеер', width - marginX - (fontSize * 10), marginYBottom);
    }

    // Reset shadow properties before returning
    ctx.shadowBlur = 0;
    ctx.shadowOffsetX = 0;
    ctx.shadowOffsetY = 0;

    return canvas;
}

Free Image Tool Creator

Can't find the image tool you're looking for?
Create one based on your own needs now!

Description

This tool applies retro visual effects to images to simulate the aesthetic of vintage media formats like VHS tapes or DVDs. It can add characteristics such as chromatic aberration, film grain/noise, scanlines, and color tints. Additionally, it overlays nostalgic on-screen display (OSD) text and tracking distortions to mimic the look of old video players. This is ideal for creators looking to give their photos or digital art a lo-fi, analog, or nostalgic cinematic feel.

Leave a Reply

Your email address will not be published. Required fields are marked *

Other Image Tools:

Image To Stylized Character Hero Generator

AI Image Idea Generator

Image Topic Search and Mediateka Creator Tool

Image Based Advanced Movie Identifier Search Tool

Image Movie Identifier Advanced Search Tool

Image Aspect Ratio Calculator By Numbers

SEO Topic Search Image Finder Tool

VHSRip and DVDRip Audio Track and Language Translator Tool

Video Audio Track and Language Dub Text Translator Downloader

HIFI VHSRip Mono Effects Image Applier

Image To Online Website Address Converter

YouTube Video Title Renamer Based on URL Tool

Image URL Web Interface Tool

Movie Languages and Auto Dubbing Translation Tool

Video Platform Metadata and DVDRip Text Downloader Tool

YouTube Video Multilingual Auto Dubbing Tool

Video Platform Language Dubbing Text Downloader and Translator Tool

HIFI VHSRip Video Metadata and Subtitle Downloader

Video and Audio Metadata Text Extractor Tool

Search and Download TV Video Platform Audio Dubbing Text Translator

Video Platform Audio Track and Language Dubbing Text Downloader

Video Platform Audio Track Language Dub Translator and Downloader

Video Platform Audio Track Language Translator and Downloader

Video Platform Audio Track DVDRip Player Name Language Extractor

Image To Website Interface Address Converter

Image Name And Topic Identifier Tool

Image Based Software Program Identifier

Audio Lyric MP3 Player and Downloader

Song Lyric MP3 Player and Downloader

AI Powered Image Tool Idea Generator

Image Movie Studio Company Identifier

No Image Result

Image SEO Name Finder Tool

Image To Video Platform Name Generator

Video and Photo Player

AI Powered Image Idea Generator

See All →