Analog TV Simulator
CRT Television like it was
Only for Mac
$4.99 · In‑App Purchases
New: play video from an SFTP server, an Audio Effect toggle for clean sound, Command-B Bypass Mode, and a real 16:9 MAC/HD export. Plus stall fixes.
AnalogTV recreates the complete analogue television chain — broadcast camera tube, composite signal encoding, RF transmission, and CRT phosphor display — simulated from physical first principles. Not a vintage filter. Not a post-process effect. A working simulation of every stage of broadcast television, from the camera neck to the phosphor screen.
THE COMPLETE BROADCAST CHAIN
Every frame passes through the same stages as a real television signal. A camera tube model — Image Orthicon, Plumbicon, Vidicon, or CCD — captures the scene with its characteristic lag, halation, and MTF response. The signal is composite-encoded to NTSC, PAL, or SECAM standards, then decoded through the same mathematics a real television receiver performs. A Metal GPU fragment shader renders each frame onto a simulated CRT phosphor display at 60 fps.
EIGHT PHOSPHOR TYPES
P22 colour television. P31 oscilloscope green. P45 white sub-millisecond. P4 B&W television. P3 amber radar. P7 dual-persistence radar — white flash fading to yellow-green afterglow. P11 deep blue photographic. P24 cyan-green flying-spot. Each calibrated from manufacturer datasheets and IEEE literature. Each shifts the IIR decay constants, rendered colour, and shutdown spot tint independently.
SERVICE MENU
Access the hidden service menu to make adjustments a television engineer would use: RGB drive and cutoff, convergence, focus voltage, G2 screen voltage, purity, HV regulation, and degauss. Every control operates at the physics level — changing focus changes the modelled electron beam diameter, not a software blur.
MAGNET
Press a virtual permanent magnet against the faceplate and watch the shadow mask magnetise. Drag to paint a continuous smear of purity damage across the screen. The magnetisation field persists across restarts. Degauss triggers the PTC thermistor coil sequence and clears it over 1.8 seconds.
TUBE AGEING AND SHUTDOWN
Cathode emission falls with use. The screen accumulates burn-in at sustained high-brightness areas. Shut the set down and watch the EHT bleed, beam defocus, and phosphor decay to darkness — with optional HV arc sounds.
14 TEST PATTERNS
SMPTE and EIA colour bars, pluge, crosshatch, multiburst, zone plate, flat fields, and more. Every pattern is generated mathematically in real time.
TECHNICAL SUMMARY
- Metal GPU rendering at 60 fps
- NTSC, PAL, and SECAM composite encoding and decoding
- Eight phosphor types from primary source measurements
- Four camera tube models with authentic lag and MTF physics
- 14 test patterns generated in real time
- Shadow mask magnetisation with 128×128 persistence texture
- IIR phosphor decay with per-channel time constants
- Aperture grille, shadow mask, and slot mask geometries
Also on iPhone and iPad as AnalogTV, and on Apple TV as AnalogTV for TV, each sold separately.
more New: play video from an SFTP (SSH) server
Play Stream URL now accepts sftp:// addresses alongside the existing http and rtsp support, so you can play a file straight off a NAS or server reachable over SSH.
New: Audio Effect toggle
A new switch turns the full analog audio processing (bandwidth limit, hum, buzz, tape wow and flutter) on or off independently of the picture, for clean program audio when you want it.
Fixed: MAC, D2-MAC, MUSE and HD-MAC video exported through Convert Video was squeezed into a 4 by 3 frame instead of its real 16 by 9 shape. Now correct.
Fixed a bug where the Apollo Field-Sequential Colour and SIT camera modes lost their colour when exported through Convert Video.
Fixed: Teletext weather pages now show Fahrenheit and miles per hour for US viewers, instead of always using Celsius and km/h.
Fixed a macOS playback stall and choppiness while moving the mouse during video playback.
macOS also gets a new Toggle Bypass Mode command (Command-B).
Plus a more accurate Image Orthicon camera halo effect and other small fixes.
2.9.4 Sep 7
Bypass Mode: a clean passthrough that shows any source, most usefully an NDI feed, with the whole simulated broadcast chain switched off. A Reset Output button was added to the Network section to go with it.
Four new Ceefax-style weather Teletext pages: a condition-icon page, a 24-hour temperature chart, a precipitation bar chart, and a local map with city markers.
Fixed a bug where video recording could fail silently with no file and no error shown, sharing the same fix already applied to iPhone/iPad.
Camera sources now model a real Plumbicon tube by default, and a picture sharpness improvement for high-detail sources. Plus NDI stability fixes.
2.9.3 Aug 24
1. NTSC-A impulse-noise polarity fix
2. macOS Send Feedback / space-bar fix
2.9.2 Aug 12
Decoder and CRT refinements
A mono decoder on a colour signal now shows the real cross-hatch from an unrejected subcarrier, instead of the clean picture the control never actually produced. CAUSAL IF no longer reads as on while doing nothing.
The HANOVER and DL ERR sliders (PAL comb artefacts) now survive the picture pipeline instead of being silently averaged away.
Input rotation for more sources
The rotate control that fixes a sideways camera now works for NDI network sources, and for photo and video library playback too.
A rebuilt picture tube
Phosphor persistence, halation, bloom, the shadow mask and the vignette now all work in light rather than on signal values, which is where a real tube does them. It changes what they do, not just how strong they are. Trails fade the way phosphor fades. A bright highlight dims its own core as it blooms, because light scattering in the faceplate moves light rather than creating it. The mask's dimming and the vignette's falloff come from beam geometry instead of curves that looked about right.
Looks you have already saved are unaffected. Each one records the version of the simulator it was made against and is rendered that way.
The Decoder control works properly
Choosing a decoder that does not match the signal now behaves like a receiver tuned to the wrong system: the colour beats against the picture and crawls, a set that cannot lock both rolls and tears, and a SECAM decoder kills the colour while the abandoned subcarrier cross-hatches the picture, because a colour killer removes the colour and not the carrier. PAL-M and PAL-60 lock cleanly to NTSC and differ only in colour, exactly as the real sets did.
NTSC-A: 405-line colour
Britain trialled colour on its 405-line system between 1955 and 1960 and never shipped it. Built from the figures in BBC Engineering Division Monograph No. 18. Now you can watch it.
More accurate tape
VHS records colour on a carrier below the picture, and those figures are now derived per television standard rather than taken from two rough groups. PAL, PAL-N, SECAM and NTSC-4.43 tape looks slightly different as a result.
Teletext
A real SAA5050-series character set, and nineteen international alphabets, recorded per character cell so one page can mix them the way a real service did.
Also
Play Stream URL now accepts http, https and ftp addresses. The recording timer shows the real elapsed time rather than drifting behind it. Saved Looks keep a stable identity as they sync, so editing one no longer leaves a second copy behind, and Presets can merge any duplicates already there. Plus fixes to recording and vertical hold.
And there is now an Apple TV app, AnalogTV for TV, sold separately.
2.9.1 Aug 10
A rebuilt picture tube
Phosphor persistence, halation, bloom, the shadow mask and the vignette now all work in light rather than on signal values, which is where a real tube does them. It changes what they do, not just how strong they are. Trails fade the way phosphor fades. A bright highlight dims its own core as it blooms, because light scattering in the faceplate moves light rather than creating it. The mask's dimming and the vignette's falloff come from beam geometry instead of curves that looked about right.
Looks you have already saved are unaffected. Each one records the version of the simulator it was made against and is rendered that way.
The Decoder control works properly
Choosing a decoder that does not match the signal now behaves like a receiver tuned to the wrong system: the colour beats against the picture and crawls, a set that cannot lock both rolls and tears, and a SECAM decoder kills the colour while the abandoned subcarrier cross-hatches the picture, because a colour killer removes the colour and not the carrier. PAL-M and PAL-60 lock cleanly to NTSC and differ only in colour, exactly as the real sets did.
NTSC-A: 405-line colour
Britain trialled colour on its 405-line system between 1955 and 1960 and never shipped it. Built from the figures in BBC Engineering Division Monograph No. 18. Now you can watch it.
More accurate tape
VHS records colour on a carrier below the picture, and those figures are now derived per television standard rather than taken from two rough groups. PAL, PAL-N, SECAM and NTSC-4.43 tape looks slightly different as a result.
Teletext
A real SAA5050-series character set, and nineteen international alphabets, recorded per character cell so one page can mix them the way a real service did.
Also
Play Stream URL now accepts http, https and ftp addresses. The recording timer shows the real elapsed time rather than drifting behind it. Saved Looks keep a stable identity as they sync, so editing one no longer leaves a second copy behind, and Presets can merge any duplicates already there. Plus fixes to recording and vertical hold.
And there is now an Apple TV app, AnalogTV for TV, sold separately.
2.9 Aug 9
• Community Looks gallery: browse, search, and download presets shared by other users, and publish your own.
• Live streams & video URLs: play an HLS or MP4 stream through the analog pipeline (new Play Stream URL button).
• iCloud sync: your saved Looks now follow you across your devices.
• Video Input audio: capture the embedded audio from a capture device through the analog sound path.
• Much faster video conversion: exports are dramatically quicker, and Start Recording now honours your selected Export Quality tier.
• NDI Output improvements: a network-interface picker for Macs on multiple networks, resolution downscale to ease Wi-Fi bandwidth, and clearer
interface/firewall diagnostics.
• Camera / Video Input source refinements, plus a clean feed to a second display or projector.
• New built-in game: Turbo Track, a Sprint-style overhead racer. (very much still in beta)
• Stability and bug fixes, including a crash in the built-in space game on certain TV standards.
2.8 Jul 22
• Capture audio from your Video Input - a capture card's HDMI audio now rides through the analog sound path (and turns on automatically, so you're never left wondering where the sound went).
• Convert Video, leveled up - pick export quality (HEVC / H.264 / ProRes), set an export‑resolution dial for speed, and cancel a running export anytime.
• Better NDI on multi‑network Macs - choose which network interface NDI uses, with a heads‑up when two share a subnet, plus a new resolution control to smooth Wi‑Fi receivers.
• Play live streams & video URLs through the analog pipeline.
• Community preset gallery - browse, download, and share looks in‑app.
• More convincing CRT magnet, now with a strength slider.
Plus stability fixes and refinements throughout.
2.7 Jul 13
Convert Video export overhaul
- Selectable export quality — HEVC / H.264 (small files) + ProRes 422/4444 (masters), improved lip sync on every tier.
- Export size dial (Full / Standard / Fast).
- Abort button to cancel a running export.
- Fix to a catastrophic simulation-cost blow-up on large sources (a 1080p movie export goes from hours to minutes).
- Paused-VCR artifacts no longer baked into exports (no more PAUSE indicator / noise bar).
- Info box explaining why Convert Video is greyed out (MKV/AVI/WMV).
Signal & CRT fidelity
- Causal IIR IF filter, multi-octave fBm signal noise, chroma vertical blend + fBm edge wave.
- Chroma loss control; geometric/hue-preserving vcrEdgeWave.
Apollo & AnalogCam
- Apollo modes now enable Ground Station NTSC Convert by default (this RC).
Presets & sharing
- Auto-generated machine-readable preset-schema.json with a drift-guard test.
- Preset look-file format spec + samples (groundwork for a community gallery).
2.6 Jul 4
What's new in 2.50
NASA Apollo television (new)
Television as it actually came back from space in 1968–72 — a complete, self-contained Apollo mode reconstructed entirely in the signal domain from the primary engineering record (NASA TN D-7476, NASA TN D-6723, and the RCA Ground-Commanded Television Assembly manual).
• Lunar SSTV - the lunar-surface monochrome camera: 320 lines, 10 fps progressive, ~500 kHz, with the real 409.6 kHz burst sync and a properly lockable serrated field-sync.
• Field-sequential colour - the command-module/Lunar Rover colour camera: colour from a 6-segment RGB wheel spinning at 9.99 rev/s in front of a single tube (no subcarrier), recombined on the ground, with the colour band-limited to the real ~2 MHz.
• Two real camera tubes - the Westinghouse SEC vidicon (sensitive, blooms, burns, with the fixed fiber-optic faceplate specks documented in TN D-7476) and the RCA SIT vidicon from the Rover (intensifier, burn-immune, cleaner, 600-line, 32 dB).
• RCA ground scan converter - the optical 10->30 fps re-scan that made the slow-scan picture broadcastable, with its contrast/brightness/resolution loss and the famous white spots - plus a raw/converted toggle.
• Earth–Moon distance - a distance slider that delays the live picture by the real one-way light-time (~1.28 s at the Moon) and, near lunar range, breaks into the impulsive FM-threshold "clicks" the 85-ft dishes produced below threshold (only Goldstone's 210-ft stayed above it). A "Send to the Moon" button jumps to mean distance.
Black-and-white standards fixed
• 405-line (System A) and 819-line now finally emit the correct broad field-sync pulse (CCIR Report 624-2, 1982).
• The 819-line standard is now correctly named "System E"
• 819-line horizontal sync width corrected to 2.5 µs.
D2-MAC is sharp again
D2-MAC now renders at full resolution, picture-identical to D-MAC. It had been sampled at half the picture rate by mistake; in reality only its sound/data is half-rate, not its picture (ETSI ETS 300 250).
MUSE / Hi-Vision
Static Hi-Vision scenes now reconstruct through NHK's reference-decoder filter (ITU-R BO.786) using true 4-field quincunx interleave, so still detail "focus-pumps" crisper (genuine super-resolution rather than a frame average) - while a motion detector keeps moving areas authentically soft.
Pay-TV & copy protection - broader and more accurate
• New: Discret 11 (Canal+) - the French terrestrial system's per-line horizontal delay, snapping to the real Canal+ sequence; sync untouched, so the picture stays locked and keeps its colour while tearing horizontally.
• New: Eurocrypt / D2-MAC - component cut-and-rotate on the MAC time slots (the first non-composite scrambler in the set).
• Nagravision (Syster) uses the real 32-line sliding-window shuffle (locally shredded, globally ordered) instead of a full-field scramble.
• Videocrypt cut-and-rotate snaps to the real 256-step grid.
• Macrovision pulse cycling is encoded into the signal with patent-verified geometry.
• Video inversion now decides per-field, as the real systems did.
Signal-derived audio
Intercarrier "buzz" now tracks picture brightness and sync energy - bright scenes buzz louder, just like a real set.
VCR
Dropouts are modelled as FM carrier loss with an authentic dropout compensator (previous-line substitution), toggleable.
More physics, fewer fudges
• Co-channel beat and fine-tuning derive from real frequency offsets.
• MAC/MUSE lines carry true duobinary/data-burst waveforms with the correct frame-sync words and clock run-in.
• Colour is band-limited before time-compression, cutting false-colour shimmer on fine detail.
• Portrait (rotated) camera input now band-limits along the scan line, matching landscape sharpness.
Bug fixes
• macOS Screen/video recording reliability fixed.
• macOS Doesn't grab Bluetooth and put into phone mode when loaded
• Many other little minor fixes
Find a bug? Use in-app feedback form to let us know.
2.5 Jun 20
We love feedback!
1) User 'Marker478' suggested adding Overscan, which we just did (check it out in the CRT section)
2) We've also added a feedback form to send anonymous (or not anonymous if you want a reply) feedback on bugs or feature requests
3) Fixed a very subtle bug to do with the magnet / degauss function which could cause a crash in rare circumstances
2.2 Jun 15
Fix Audio/Video sync problems under certain circumstances
Fix Video Export quality and stalling on very large videos
Fix Import presets file from earlier version of AnalogTV
Fix SECAM CPU-mode V-Hold sync issue
Fix Full-screen mode layout issues in certain circumstances
Add ability to manually key in values next to the sliders, add quick "reset to default" button next to each slider
Add Audio Sync +/- 150ms adjustment to fine-tune sync
Resolve many small bugs, code quality issues and technical debt
2.11 Jun 4
Re-write of video export feature to fix several critical bugs
Cleaned up excessive use of disk usage in some instances
Improved mechanical TV mode fidelity
Baird 30 should default to vertical scanning
2.1 May 28
Mechanical TV now added to the simulation - Going back to the 1920s with a fully simulated signal chain
Critical NDI fix for App Store version, improved performance with iOS connections via NDI
Expanded File Picker to allow loading of .mkv, .mov and many other popular file formats
Tons of bug fixes and performance improvements.
2.0 May 12
* Fix NDI missing (broken in 1.92)
* Add PayTV scrambling
* Improve image quality in signal domain
* UI improvements
* Massive bug fixing effort, too many to mention
1.93 May 9
Add Screen Capture source mode to App Store version (previously only available on non-App Store version).
1.92 Apr 28
Audio bug fix for imported video that has an audio track.
1.91 Apr 27
1. NDI® Input/Output - It's a $0.00 in-app purchase for now during soft launch. Get it now before the price goes up and you'll have it forever.
2. Colour Decoder Mismatch - What happens if you use an NTSC TV in Europe? Now you can see what would happen. Mismatch NTSC, PAL or SECAM in the Tuner menu
3. Presets - Remember last settings, create multiple presets, share them with others, load them from others
4. Teletext: Allows any RSS feed to be the News Feed. Default to TechCrunch
5. Soviet KBH-49 TV Lens Simulation
6. Fujitsu MB88303 Title Generator - go to Camera Mode, then Camcorder section at the bottom
7. UI Improvements
8. Improved signal fidelity with more comprehensive test suite for edge cases
1.8 Apr 24
RTMP Export! - Check out the NETWORK section and click on the (?) for all the details and instructions
Moved D-MAC/MUSE formats to GPU, much better performance now
Tons of bug fixes
Tons of small UI improvements
Lots more to come soon.
1.7 Apr 18
Tons of bug fixes, UI fixes, Full Screen mode +
D-MAC, D2-MAC, MUSE, and HD-MAC
Four new standards covering late-1980s/early-1990s satellite and HD broadcasting. D-MAC and D2-MAC were used by BSB and European DBS services;
MUSE was Japan's Hi-Vision HDTV standard; HD-MAC was the European HDTV proposal. All four render in 16:9 widescreen with accurate time-division
multiplexed encoding.
SECAM-L (System L)
The French terrestrial variant of SECAM used on UHF channels in France until analogue switch-off. Distinct from standard SECAM in two ways:
positive AM modulation (picture polarity inverted) and a wider 6 MHz luma bandwidth, which is now genuinely applied at the encode level — making
SECAM-L visibly sharper than SECAM even with all processing options at their defaults.
Newvicon Camera Tube
A new camera tube emulation based on the Matsushita Newvicon — a ZnSe/ZnCdTe target used in 1980s consumer camcorders. It produces the
characteristic comet-tail lag on bright moving objects, with earlier highlight compression and a more linear gamma response than the Vidicon.
And more to come soon...
1.6 Apr 17
Teletext
- Full Teletext system with 8 live pages: Index (P100), News Headlines (P150), Weather/Hourly/5-Day via WeatherKit (P400–402), Calendar (P500), System Info/clock (P900)
- Fastext colour-key navigation (red/green/yellow/blue) on both iOS overlay and macOS sidebar
- Level 1 character renderer with full G0 Latin charset, double-height rows, flashing text, mosaic graphics
New TV Standards
- NTSC-4.43 (NTSC signal at PAL subcarrier frequency — used in Middle East VCRs)
- PAL-60 (PAL colour at 60 Hz field rate — common on early LCD displays)
VHS Colour-Under Model
- Replaced the old approximation with a true FM luma / heterodyne colour-under model matching real VHS head circuitry
Scope
- Full-field waveform monitor, vectorscope, and RGB parade
- Contextual Filter and Parade sub-pickers on iOS
- Non-modal floating scope window on macOS
Lunar Lander (new arcade game)
- Added to the games source alongside Pong, Space Invaders, Breakout, Snake, Asteroids, Missile Command, Centipede
macOS Settings Sidebar
- All settings migrated from a sheet to a persistent sidebar panel
Tons of bug fixes and UI imrpvements
Lots more to come!
1.5 Apr 15
New: play video from an SFTP (SSH) server
Play Stream URL now accepts sftp:// addresses alongside the existing http and rtsp support, so you can play a file straight off a NAS or server reachable over SSH.
New: Audio Effect toggle
A new switch turns the full analog audio processing (bandwidth limit, hum, buzz, tape wow and flutter) on or off independently of the picture, for clean program audio when you want it.
Fixed: MAC, D2-MAC, MUSE and HD-MAC video exported through Convert Video was squeezed into a 4 by 3 frame instead of its real 16 by 9 shape. Now correct.
Fixed a bug where the Apollo Field-Sequential Colour and SIT camera modes lost their colour when exported through Convert Video.
Fixed: Teletext weather pages now show Fahrenheit and miles per hour for US viewers, instead of always using Celsius and km/h.
Fixed a macOS playback stall and choppiness while moving the mouse during video playback.
macOS also gets a new Toggle Bypass Mode command (Command-B).
Plus a more accurate Image Orthicon camera halo effect and other small fixes.
more Version 2.9.4 Sep 7
Data Not Linked to You The following data may be collected but it is not linked to your identity:
Contact Info User Content