Hello. I have succeffully open a memory buffer from a url-opus-file with (from Pascal fpc): HandleOP := op_test_memory(BufferURL[0],PipeBufferSize, Err); op_test_open(StreamIn[x].Data.HandleOP); I can retrieve the tags infos, all seems ok. But for reading, using this gives 0 outframes: outframes := op_read_float(Data.HandleOP, at Buffer[0], Wantframesm, nil); I suspect that some callback must be defined. In opusfile library there is: OP_WARN_UNUSED_RESULT OggOpusFile *op_test_callbacks(void *_source, const OpusFileCallbacks *_cb,const unsigned char *_initial_data, size_t _initial_bytes,int *_error) OP_ARG_NONNULL(2); Maybe it is what I need in place of op_test_memory(). But I do not understand what is _source and initial_data. Also how to use OpusFileCallbacks. Some example will be highly appreciated how to use op_test_callbacks() with the memory buffer (or how to use op_read_float() with op_test_memory()) . (In C or Pascal). Many thanks. Fre;D -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.xiph.org/pipermail/opus/attachments/20170128/726351e9/attachment.html>
Fred van Stappen wrote:> I have succeffully open a memory buffer from a url-opus-file with (from > Pascal fpc): > > HandleOP := op_test_memory(BufferURL[0],PipeBufferSize, Err); > op_test_open(StreamIn[x].Data.HandleOP); > > I can retrieve the tags infos, all seems ok. > > But for reading, using this gives 0 outframes: > > outframes := op_read_float(Data.HandleOP, at Buffer[0], Wantframesm, nil);Have you tried using op_open_memory() instead of op_test_memory()?
De : opus <opus-bounces at xiph.org> de la part de Timothy B. Terriberry <tterribe at xiph.org> Envoyé : samedi 28 janvier 2017 17:41 À : opus at xiph.org Objet : Re: [opus] How to use op_test_callbacks ? Fred van Stappen wrote:> I have succeffully open a memory buffer from a url-opus-file with (from > Pascal fpc): > > HandleOP := op_test_memory(BufferURL[0],PipeBufferSize, Err); > op_test_open(StreamIn[x].Data.HandleOP); > > I can retrieve the tags infos, all seems ok. > > But for reading, using this gives 0 outframes: > > outframes := op_read_float(Data.HandleOP, at Buffer[0], Wantframesm, nil);_______________________________________________ Hello Timothy. Many thanks for answer.> Have you tried using op_open_memory() instead of op_test_memory()?Yes, same result, outframes = 0. ;-( The buffer was re-filled before op_read_float() so I am thinking that no callback is needed. Using op_test_file works like charm with op_read_float(). I do not understand why result is always = 0 with op_open_memory(). Thanks. -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.xiph.org/pipermail/opus/attachments/20170128/b8d50055/attachment-0001.html>