3 # Images of various sizes.
4 == jpg-size-1x1.jpg jpg-size-1x1.png
5 == jpg-size-2x2.jpg jpg-size-2x2.png
6 == jpg-size-3x3.jpg jpg-size-3x3.png
7 == jpg-size-4x4.jpg jpg-size-4x4.png
8 == jpg-size-5x5.jpg jpg-size-5x5.png
9 == jpg-size-6x6.jpg jpg-size-6x6.png
10 == jpg-size-7x7.jpg jpg-size-7x7.png
11 == jpg-size-8x8.jpg jpg-size-8x8.png
12 == jpg-size-9x9.jpg jpg-size-9x9.png
13 == jpg-size-15x15.jpg jpg-size-15x15.png
14 == jpg-size-16x16.jpg jpg-size-16x16.png
15 == jpg-size-17x17.jpg jpg-size-17x17.png
16 == jpg-size-31x31.jpg jpg-size-31x31.png
17 == jpg-size-32x32.jpg jpg-size-32x32.png
18 == jpg-size-33x33.jpg jpg-size-33x33.png
19 # Progressive encoding
20 == jpg-progressive.jpg jpg-progressive.png
21 # Grayscale colorspace
22 == jpg-gray.jpg jpg-gray.png
24 == jpg-cmyk-1.jpg jpg-cmyk-1.png
25 == jpg-cmyk-2.jpg jpg-cmyk-2.png
26 == jpg-srgb-icc.jpg jpg-srgb-icc.png
28 # webcam-simulacrum.mjpg is a hand-edited file containing red.jpg and blue.jpg,
29 # concatenated together with the relevant headers for
30 # multipart/x-mixed-replace. Specifically, with the headers in
31 # webcam-simulacrum.mjpg^headers^, the web browser will get the following:
34 # Content-Type: multipart/x-mixed-replace;boundary=BOUNDARYOMG
37 # Content-Type: image/jpeg\r\n
39 # <contents of red.jpg> (no newline)
41 # Content-Type: image/jpeg\r\n
43 # <contents of blue.jpg> (no newline)
46 # (The boundary is arbitrary, and just has to be defined as something that
47 # won't be in the text of the contents themselves. --$(boundary)\r\n means
48 # "Here is the beginning of a boundary," and --$(boundary)-- means "All done
49 # sending you parts.")
50 HTTP == webcam-simulacrum.mjpg blue.jpg