Sie sind nicht angemeldet.

1

Dienstag, 7. Juli 2009, 13:19

Download-Langsamkeit simulieren?

Ich experimentiere gerade mit der Verhalten von Multiresolution und auch der Kachelgrößen. Leider läßt sich das Verhalten mit dem localhost unter XAMPP nicht testen, da ja die "Verbindungsgeschwindigkeit" naturgegeben hoch ist. Gibt es eine Möglichkeit, die Verbindung zu verlangsamen, um nämlich das Verhalten des Viewers zu studieren? Zur Zeit muß ich die Daten immer auf meinen realen Web Server ftp-en, um zu beobachten, wie sich verschiedene Auflösungen und Kachelgrößen verhalten.

Michael

2

Mittwoch, 8. Juli 2009, 14:46

Hi,

ja, das ginge mit einem kleinen dazwischengeschaltetem PHP Skript welches die Daten Blockweise überträgt und dazwischen immer etwas wartet,
hier ein solches Skript:

slowdl.php

Quellcode

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
<?php

    ini_set('zlib.output_compression', '0');

    // local file that should be send to the client
    $local_file = $_GET["file"];

    // filename that the user gets as default
    $download_file = $local_file;

    // set the download rate limit (e.g. 50,0 kb/s)
    $download_rate = 50.0;

    if(file_exists($local_file) && is_file($local_file))
    {
        // send headers
        header('Cache-control: private',false);
        header('Content-Type: application/octet-stream');
        header('Content-Length: '.filesize($local_file));
        header('Content-Disposition: filename='.$download_file);
        header("Content-Transfer-Encoding: binary");

        // flush content
        flush();

        // open file stream
        $file = fopen($local_file, "r");
        while(!feof($file))
        {
            // send the current file part to the browser
            print fread($file, round($download_rate * 1024));

            // flush the content to the browser
            flush();

            // sleep one second
            sleep(1);
        }

        // close file stream
        fclose($file);
    }
    else
    {
        die('Error: The file '.$local_file.' does not exist!');
    }

?>


dann im XML dieses bei den "url" attributen eintragen (die Pfade natürlich entsprechend anpassen)
z.B.

Quellcode

1
<sphere url="slowdl.php?file=pano.jpg" />


Schöne Grüße,
Klaus

3

Freitag, 10. Juli 2009, 07:05

Schau dir mal NetLimiter an für Windows.

Gruss Daniel
mein Blog VRpix.ch / VRpix.de

4

Freitag, 10. Juli 2009, 09:30

Danke für eure Tips.

Michael

Ähnliche Themen