#!/usr/bin/env python3
"""Minimal HTTP server for the YCbCr REPEAT-mode POC.

Serves poc.html and test.mp4 on 0.0.0.0:8080 so an Android device on the
same network can load it. Sends Range responses for the mp4 so MediaCodec
HW decode is exercised.
"""
import http.server
import os
import socketserver

PORT = 8080
ROOT = os.path.dirname(os.path.abspath(__file__))


class Handler(http.server.SimpleHTTPRequestHandler):
    def __init__(self, *a, **kw):
        super().__init__(*a, directory=ROOT, **kw)

    def end_headers(self):
        self.send_header("Cross-Origin-Opener-Policy", "same-origin")
        self.send_header("Access-Control-Allow-Origin", "*")
        self.send_header("Accept-Ranges", "bytes")
        super().end_headers()


socketserver.TCPServer.allow_reuse_address = True
with socketserver.TCPServer(("0.0.0.0", PORT), Handler) as httpd:
    print(f"serving {ROOT} on http://0.0.0.0:{PORT}/poc.html")
    httpd.serve_forever()
