-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 I'm attempting to add flac playback to my app, and would like a couple of pointers. First of all, I'm very much a "learn by seeing other people doing" sort of programmer, and would love a pointer to an open-source app that uses libFLAC++, so I could see how they do it. Second, I'm having problems with my simple test app (i.e. this isn't how I will use it in my app, I just want to get a feel for programming with the flac api). I've inherited from FLAC::Decoder:File, and am now implementing a "::Play" function, that will eventually take a file name as a parameter and play it. I've stub-implemented all the required functions (meta,error, and write_callback). However, when I do the following, it prints 7, which appears to be FLAC__FILE_DECODER_INVALID_CALLBACK, meaning I haven't set up one of the callbacks that I need to. bool FlacDecoder::play(const char *filename) { FLAC__FileDecoderState fstate; set_filename(filename); fstate = FLAC__file_decoder_init(decoder_); cout << fstate << endl; return true; } Now, I thought the main difference between libFLAC and libFLAC++ was that in c++ you didn't have to manually set the callbacks, just inherit and they would be set for you. Am I miss reading the docs there? Of course, probably the #1 problem here is that I'm pretty lost in C-land, and am almost undoubtably doing something stupid. But hey! Helping newbies gives good karma ;-) Thanks for any advice/pointers you can give. Full source-code (not that much more than this) available upon request. D.A.Bishop -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.2.1 (GNU/Linux) iD8DBQE+TubUEHLN/FXAbC0RAsRYAJ9ec8Pe5Z0nUnxhbra9MmZXQ2QxngCfawtl IBuBN+O5b2MBxjmCgNecmQM=0v8v -----END PGP SIGNATURE-----
On Sun, Feb 16, 2003 at 01:05:06PM +0100, Miroslav Lichvar wrote:> On Sat, Feb 15, 2003 at 06:18:12PM -0700, David Bishop wrote: > > I'm attempting to add flac playback to my app, and would like a couple of > > pointers. First of all, I'm very much a "learn by seeing other people doing" > > sort of programmer, and would love a pointer to an open-source app that uses > > libFLAC++, so I could see how they do it. > > In flac sources there is an example: src/test_libFLAC++/decoders.cppI found that a little while after sending the email. Very good (readable) code! Thanks! D.A.Bishop
On Sat, Feb 15, 2003 at 06:18:12PM -0700, David Bishop wrote:> I'm attempting to add flac playback to my app, and would like a couple of > pointers. First of all, I'm very much a "learn by seeing other people doing" > sort of programmer, and would love a pointer to an open-source app that uses > libFLAC++, so I could see how they do it.In flac sources there is an example: src/test_libFLAC++/decoders.cpp> Second, I'm having problems with > my simple test app (i.e. this isn't how I will use it in my app, I just want > to get a feel for programming with the flac api). I've inherited from > FLAC::Decoder:File, and am now implementing a "::Play" function, that will > eventually take a file name as a parameter and play it. I've > stub-implemented all the required functions (meta,error, and write_callback). > However, when I do the following, it prints 7, which appears to be > FLAC__FILE_DECODER_INVALID_CALLBACK, meaning I haven't set up one of the > callbacks that I need to. > > bool FlacDecoder::play(const char *filename) > { > FLAC__FileDecoderState fstate; > set_filename(filename); > > fstate = FLAC__file_decoder_init(decoder_);This is wrong. It should be: fstate = init();> cout << fstate << endl; > > return true; > } >[...] -- Miroslav Lichvar