]> git.parisson.com Git - timeside.git/commitdiff
tests/api/test_enc_mp3_by_block.py: add transcode example by block
authorPaul Brossier <piem@piem.org>
Tue, 29 Jan 2013 03:20:23 +0000 (22:20 -0500)
committerPaul Brossier <piem@piem.org>
Tue, 29 Jan 2013 03:20:23 +0000 (22:20 -0500)
tests/api/test_enc_mp3_by_block.py [new file with mode: 0644]

diff --git a/tests/api/test_enc_mp3_by_block.py b/tests/api/test_enc_mp3_by_block.py
new file mode 100644 (file)
index 0000000..eb90b72
--- /dev/null
@@ -0,0 +1,33 @@
+from numpy import vstack, zeros
+
+from timeside.decoder import *
+from timeside.encoder import *
+
+import sys, os.path
+
+def transcode(source, target):
+    decoder = FileDecoder(source)
+    decoder.setup()
+
+    channels  = decoder.channels()
+    samplerate = decoder.samplerate()
+
+    print channels, samplerate
+
+    encoder = Mp3Encoder(target)
+    encoder.setup(channels = channels, samplerate = samplerate)
+
+    totalframes = 0
+    while True:
+        frames, eod = decoder.process()
+        encoder.process(frames, eod)
+        totalframes += frames.shape[0]
+        if eod or encoder.eod:
+            break
+
+if __name__ == '__main__':
+
+    if len(sys.argv) < 3:
+        print 'needs 2 args'
+        sys.exit(1)
+    transcode(sys.argv[1], sys.argv[2])