More functions
[audio-opusfile.git] / Opusfile.xs
index 6a5f55da6f2148f3303cc97fe552abcd71cb5ecd..43ab5a608fe34a6a016fc38d98cbaea41d433452 100644 (file)
@@ -21,19 +21,55 @@ op_open_file(path)
        const char *path;
 PREINIT:
        int err;
-CODE:
-       RETVAL = op_open_file(path, &err);
+C_ARGS:
+       path, &err
+POSTCALL:
        if(err)
                croak("op_open_file returned error %d\n", err);
+
+OggOpusFile*
+op_open_memory(const char *data, size_t length(data))
+PREINIT:
+       int err;
+C_ARGS:
+       data, XSauto_length_of_data, &err
+POSTCALL:
+       if(err)
+               croak("op_open_memory returned error %d\n", err);
+
+bool
+op_test(const char *data, size_t length(data))
+PROTOTYPE: $
+PREINIT:
+       int ret;
+CODE:
+       ret = op_test (NULL, data, XSauto_length_of_data);
+       if(ret < 0 && ret != OP_ENOTFORMAT && ret != OP_EBADHEADER)
+               croak("op_test returned error %d\n", RETVAL);
+       RETVAL = !ret;
 OUTPUT:
        RETVAL
 
+
 void
 DESTROY(of)
        OggOpusFile *of;
 CODE:
        op_free(of);
 
+bool
+op_seekable(of)
+       OggOpusFile* of;
+
+int
+op_link_count(of)
+       OggOpusFile* of;
+
+int
+op_serialno(of, li = -1)
+       OggOpusFile* of;
+       int li;
+
 const OpusHead*
 op_head(of, li = -1)
        OggOpusFile *of;
This page took 0.009593 seconds and 4 git commands to generate.