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?
thanks, emil
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.
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