           video.currentTime = time;
                    
                    // Wait for video to seek to exact frame
                    await new Promise(resolve => {
                        const onSeeked = () => {
                            video.removeEventListener('seeked', onSeeked);
                            resolve();
                        };
                        video.addEventListener('seeked', onSeeked);
                        
                        // Fallback timeout to prevent hang