Thanks, I'm sorry to have bothered you with the question.  I realized this was the case shortly after I sent the message.  I just had not thought about, for a long time, what the shell is actually doing with a redirect ("<"), and how that is fundamentally different than a pipe.


emil

At 01:11 PM 9/28/2004, you wrote:
On Sep 28, 2004, at 12:06 PM, Emil Rojas wrote:
If I run minimad like:
minimad < x.mp2 > x.pcm
it works fine, but if I run it like
cat x.mp2 | minimad > x.pcm

The state returns a zero size the minimad exits.

Does anyone have any idea why this might happen?

It happens because mmap() cannot map a pipe into memory. minimad requires that stdin be a regular file.

--
Rob Leslie
rob@mars.org