def __init__(self, output):
<EOL>
Create a new encoder. output can either be a filename or a python callback
        function/method for streaming mode.

        The streaming callback prototype is: callback(data, eod)
        Where data is a block of binary data of an undetermined size, and eod
        True when end-of-data is reached.