Re: [MP3 ENCODER] Problems decoding an Mp3 file...

2003-01-11 Thread Martin Hairer
M When I call lame --decode Chris.mp3 Chris.wav

M where Chris.mp3 is the file available at
M http://mpej.unige.ch/~hairer/Downloads/Chris.mp3, I get the
M following output:

	:

M Segmentation fault

It because Chris.mp3 seems have an ID3 tag and lame does not support 
it.

Same thing happens if I remove the ID3 tag first...

Martin

___
mp3encoder mailing list
[EMAIL PROTECTED]
http://minnie.tuhs.org/mailman/listinfo/mp3encoder



[MP3 ENCODER] Problems decoding an Mp3 file...

2003-01-08 Thread Martin Hairer
Hi,

When I call

lame --decode Chris.mp3 Chris.wav

where Chris.mp3 is the file available at 
http://mpej.unige.ch/~hairer/Downloads/Chris.mp3,
I get the following output:

input:  /Users/hairer/Desktop/Chris.mp3
(32 kHz, 1 channel, MPEG-1 Layer III)
output: /Users/hairer/Desktop/Chris.wav  (16 bit, Microsoft WAVE)
skipping initial 1105 samples (encoder+decoder delay)
Frame# 1/16263   99 kbps bitstream problem: resyncing...
Frame# 2/16263  291 kbps bitstream problem: resyncing...
Frame# 3/16263   67 kbps bitstream problem: resyncing...
Frame# 4/16263  416 kbps bitstream problem: resyncing...
Frame# 5/16263  192 kbps bitstream problem: resyncing...
Error: sample frequency has changed in MP3 file - not supported
Frame# 6/16263  161 kbps bitstream problem: resyncing...
Error: sample frequency has changed in MP3 file - not supported
Frame# 7/16263  177 kbps bitstream problem: resyncing...
Error: sample frequency has changed in MP3 file - not supported
Frame# 8/16263   57 kbps bitstream problem: resyncing...
Error: sample frequency has changed in MP3 file - not supported
Frame# 9/16263  256 kbps bitstream problem: resyncing...
Error: number of channels has changed in MP3 file - not supported
Error: sample frequency has changed in MP3 file - not supported
Frame#10/16263   66 kbps  L  R  ibitstream problem: resyncing...
Error: number of channels has changed in MP3 file - not supported
Error: sample frequency has changed in MP3 file - not supported
Frame#11/16263  258 kbps  LMSR  Ibitstream problem: resyncing...
Error: number of channels has changed in MP3 file - not supported
Error: sample frequency has changed in MP3 file - not supported
Frame#12/16263   96 kbps   MS   Ibitstream problem: resyncing...
Error: number of channels has changed in MP3 file - not supported
Error: sample frequency has changed in MP3 file - not supported

[A few lines of similar output are skipped here...]

Error: number of channels has changed in MP3 file - not supported
Error: sample frequency has changed in MP3 file - not supported
Frame#32/16263  599 kbps fatal error.  MAXFRAMESIZE not 
large enough.
Segmentation fault

Then, lame crashes... The funny thing is that this Mp3 files plays fine 
on iTunes
and on Mint, two players on MacOS X. Does anyone have an idea of what's 
happening?
Thanks,

Martin

PS: The same thing happens whether I use version 3.91 or 3.93.1.

___
mp3encoder mailing list
[EMAIL PROTECTED]
http://minnie.tuhs.org/mailman/listinfo/mp3encoder


Re: [MP3 ENCODER] for Mac

2002-07-30 Thread Martin Hairer

 Is there any effort to make lame available for Macs? for PowerPC ?

Just recompile it... I've implemented it for my shareware Amadeus II.

Martin

___
mp3encoder mailing list
[EMAIL PROTECTED]
http://minnie.tuhs.org/mailman/listinfo/mp3encoder



Re: [MP3 ENCODER] mpglib decoding interface

2002-02-05 Thread Martin Hairer

Hi Martin,

 extern mpg_id mpg_open(int next_byte(mpg_id self),
int tag_handler(mpg_id self,
int tag,
int next_byte(mpg_id self),
size_t size),
mpg_options *p);
 
 /* Opens an mpg decoding stream.
On failure it returns -1.
The return value can be used in successive mpg_read and
mpg_close calls.
 
The parameters:
 
next_byte is a function that will deliver the next unsigned char
(0-255) cast to an int from the mp3 stream. It may return -1 on end
of file or error. The parameter self can be used to identify the
stream in case there are multiple open streams at the same time.
In the simplest case this might, for example, be the
function int next_byte(mpg_id self) { return getchar(); }.

Wouldn't it be better to replace next_byte by something like

int next_chunk(mpg_id self, int buffersize, unsigned char* buffer)

(returning of course the number of bytes actually written to the buffer)?
It seems to me that calling a function for every byte of data
is rather bad for the performance. Best,

Martin


Département de Physique Théorique
24, Ernest Ansermet Homepage: http://mpej.unige.ch/~hairer/
CH-1211 Genève 4EMail: [EMAIL PROTECTED]
Switzerland Tel.: ++41 22 702 63 84


___
mp3encoder mailing list
[EMAIL PROTECTED]
http://minnie.tuhs.org/mailman/listinfo/mp3encoder