Subject: Re: [libsndfile-devel] Re: ogg flac and ogg vorbis support
From: Tobias Gehrig
To: Conrad Parker
Date: Tue, 19 Oct 2004 23:29:13 +0200

Hi,
I attached a patch to support flac in libfishsound. It is not really
finished. It works somehow, but when encoding, i get an error from oggz
(OGGZ_ERR_BAD_SERIALNO) when using the fishsound-encode example. But the
resulting file decoded sounds correct. I have not verified perfect match
though.
Another problem I have is that I don't know how to tell libfishsound that I have something that belongs to the beginning of the file, since I
get a metadata packet from libflac at the end of encoding that should be
placed in the files first page.
The other problem I have is when trying to include this in libsndfile.
Somehow seeking through oggz does not work for the oggflac files. And
thus decoding does not work. I have resolved that problem somehow by
using the sndfile seek function but that was just a quick hack. I will
look further at this problem to find the cause of the problem. That is
why I have not included that libsndfile patch in this mail, since it is
far from being what i want.
Perhaps you can help me in fixing the remaining problems;-).

MfG
        Tobias

libfishsound-flac-1.patch


Subject: Re: [libsndfile-devel] Re: ogg flac and ogg vorbis support
From: Tobias Gehrig
To: Conrad Parker
Date: Sat, 23 Oct 2004 12:09:28 +0200

Hi,
the seeking problem I have resolved currently in libsndfile, but I will
move that then to liboggz. Is there at some point in the code of liboggz
the data start offset set for vorbis and speex and so on. I didn't find
anything, but I had to set the data start for the flac codec to work
properly in libsndfile.

MfG
        Tobias

Subject: Re: [libsndfile-devel] Re: ogg flac and ogg vorbis support
From: Tobias Gehrig
To: Conrad Parker
Date: Sat, 23 Oct 2004 13:45:26 +0200

here is the patch against liboggz to support Metrics for FLAC.

PS: I still have to put
        if (!op->granulepos)
	          oggz_set_data_start(pogg->oggz, oggz_tell(pogg->oggz));
in pogg_read_header_packet() in libsndfile to get it working correctly.
I don't know how to move that part to oggz. Perhaps my flac
implementation in libfishsound is wrong and that is the problem. But we
can look into this when you are back home. I'll try to build an
multiplexer in the meantime, since we want to save the data of a 64
channel microphone array in oggflac and I don't know if something like
that could be placed inside libsndfile.
MfG
        Tobias

[patch applied in changeset:690 and released in liboggz-0.8.6, Feb 6 2005]


Subject: Re: [libsndfile-devel] Re: ogg flac and ogg vorbis support
From: Tobias Gehrig
To: Conrad Parker
Date: Fri, 05 Nov 2004 14:56:25 +0100

Hi,
the only modifications I made to libfishsound are in the attached diff
to flac.c against my last patch. But that are just some minor things
that did not change much of the functionality. I also did not much work
on this in the last time, since I worked on native flac support in
libsndfile.


MfG
        Tobias

libfishsound-flac-2.patch


Subject: Re: [libsndfile-devel] Re: ogg flac and ogg vorbis support
From: Tobias Gehrig
To: Conrad Parker
Date: Tue, 09 Nov 2004 01:33:40 +0100

Hi,
I am sorry, I forgot that I used the seekable_stream_encoder in
libsndfile that is not compatible between 1.1.0 and 1.1.1. But for
libfishsound I used the more simple stream_encoder that did not make any
problems when using 1.1.0 instead of 1.1.1. But I found an error in
configure.ac. Here is a diff for that:

libfishsound-flac-3.patch