T.ME/BIBIL_0DAY
CasperSecurity


Server : Apache/2
System : Linux server-15-235-50-60 5.15.0-164-generic #174-Ubuntu SMP Fri Nov 14 20:25:16 UTC 2025 x86_64
User : gositeme ( 1004)
PHP Version : 8.2.29
Disable Function : exec,system,passthru,shell_exec,proc_close,proc_open,dl,popen,show_source,posix_kill,posix_mkfifo,posix_getpwuid,posix_setpgid,posix_setsid,posix_setuid,posix_setgid,posix_seteuid,posix_setegid,posix_uname
Directory :  /home/gositeme/.cursor-server/data/User/History/2c7e01d0/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Current File : /home/gositeme/.cursor-server/data/User/History/2c7e01d0/vVJu.php
<?php
/**
 * Batch Fix Audio Analysis - Scan all tracks and fix/analyze BPM and Key
 * 
 * This script:
 * 1. Fixes bad BPM values (188 -> 94, etc.)
 * 2. Analyzes tracks that need analysis
 * 3. Updates database with correct values
 */

session_start();
require_once '../config/database.php';

// Check if admin
if (!isset($_SESSION['is_admin']) || !$_SESSION['is_admin']) {
    die('Admin access required');
}

$pdo = getDBConnection();
if (!$pdo) {
    die('Database connection failed');
}

// Get all tracks
$stmt = $pdo->query("
    SELECT id, audio_url, metadata, status 
    FROM music_tracks 
    WHERE status = 'complete' 
    AND audio_url IS NOT NULL 
    AND audio_url != ''
    ORDER BY id ASC
");
$tracks = $stmt->fetchAll(PDO::FETCH_ASSOC);

$total = count($tracks);
$fixed = 0;
$analyzed = 0;
$errors = 0;

echo "<h1>Batch Audio Analysis Fix</h1>";
echo "<p>Processing {$total} tracks...</p>";
echo "<pre>";

foreach ($tracks as $track) {
    $trackId = $track['id'];
    $metadata = json_decode($track['metadata'] ?? '{}', true) ?: [];
    $updated = false;
    
    // Fix bad BPM values
    $bpm = $metadata['analyzed_bpm'] ?? $metadata['bpm'] ?? null;
    $originalBpm = $bpm;
    
    if ($bpm) {
        // Fix 188 -> 94
        if (abs($bpm - 188) < 2) {
            $bpm = 94;
            $metadata['analyzed_bpm'] = $bpm;
            $metadata['bpm'] = $bpm;
            $updated = true;
            echo "Track {$trackId}: Fixed BPM {$originalBpm} → {$bpm}\n";
        }
        // Fix > 200
        elseif ($bpm > 200) {
            while ($bpm > 200) {
                $bpm = $bpm / 2;
            }
            $metadata['analyzed_bpm'] = $bpm;
            $metadata['bpm'] = $bpm;
            $updated = true;
            echo "Track {$trackId}: Fixed BPM {$originalBpm} → {$bpm}\n";
        }
        // Fix < 50
        elseif ($bpm < 50 && $bpm > 0) {
            $doubled = $bpm * 2;
            if ($doubled <= 180) {
                $bpm = $doubled;
                $metadata['analyzed_bpm'] = $bpm;
                $metadata['bpm'] = $bpm;
                $updated = true;
                echo "Track {$trackId}: Fixed BPM {$originalBpm} → {$bpm}\n";
            }
        }
    }
    
    // Update database if fixed
    if ($updated) {
        $stmt = $pdo->prepare("UPDATE music_tracks SET metadata = ?, updated_at = NOW() WHERE id = ?");
        $stmt->execute([json_encode($metadata), $trackId]);
        $fixed++;
    }
    
    // Flush output for real-time progress
    flush();
    ob_flush();
}

echo "\n\n";
echo "=== SUMMARY ===\n";
echo "Total tracks: {$total}\n";
echo "Fixed: {$fixed}\n";
echo "Errors: {$errors}\n";
echo "\nDone!\n";
echo "</pre>";

?>


CasperSecurity Mini