← Back to team overview

sslug-teknik team mailing list archive

Re: Hvordan bruges named pipe?

 

Jørgen Heesche wrote:

> Med følgende script kan jeg se tv og samtidig lagre tv-udsendelsen på
> disk.
> 
> ptune.pl $1  && rm -f /MPG/test.mpg && cat /dev/video > /MPG/test.mpg &
> sleep 10
> xine /MPG/test.mpg
> ps x | grep /dev/video
> pkill -f "cat /dev/video"
> 
> Nu er jeg i en anden tråd blevet spurgt om det ikke var mere logisk at
> bruge named pipe. Det er det måske, men hvordan bruges en named pipe?.

Jeg var ikke sikker på at du ville gemme udsendelsen samtidig. Så kan du
ikke bruge en named pipe. (men ellers burde det virke, ja)

> På http://learnlinux.tsf.org.za/courses/build/fundamentals/ch04s07.html
> kam man læse om File Redirection, Named and un-named pipes.
> Jeg har med mkfifo dannet pipen
>    prw-r--r--    1 jph      jph             0 Aug 10 19:39 mpgfifo|
> og har efter anvisning på ovennævnte webside testet ved at echo'e noget
> til pipen. Men den øvelse kræver, at man arbejder i to konsoller
> (x-terminaler), det er da ikke smart. Den metode duer ikke. Jeg kan fint
> afgive kommandoen cat /dev/video > mpgfifo og i en anden terminal taste
> xine < mpgfifo, men xine står bare og venter. 

Det er lidt mærkeligt, for det burde virke. Måske sker der noget specielt
med "stort" output, eller med xine når den skal læse fra en pipe. Har du
prøvet mplayer i den situation?

> Forsøg med xine mpgfifo, giver fejlmeldimng fra xine: no demuxer plugin to
> handle mgpfifo 

Igen tyder det på at xine er lidt forkert skruet sammen m.h.t. at kunne
bruge pipes.

> Kommandoen cat mpgfifo | xine giver også en tavs xine.

Det tyder til gengæld på at der er noget andet galt. Sært. Mærkeligt endda.
Anyone?

> Så hvordan kan man bruge named pipe i stedet for mit script?.

Jeg troede jeg vidste det ;-)

Men ellers, hvad med følgende kommandoer?

$ xine /dev/video

$ cat /dev/video | xine (eller praktiske ækvivalente "xine < /dev/video")

$ cat /dev/video | tee dump | xine (burde kunne gemme og vise på samme tid)

Og prøv i øvrigt alle kommandoerne med "mplayer" i stedet for xine.

-- 
Mvh
Christian Iversen


Follow ups

References