[FFmpeg-trac] #986(avutil:new): windows named pipe seek

FFmpeg trac at avcodec.org
Wed Feb 8 16:08:50 CET 2012

#986: windows named pipe seek
               Reporter:  setosha    |                  Owner:  michael
                   Type:  defect     |                 Status:  new
               Priority:  normal     |              Component:  avutil
                Version:             |               Keywords:  windows
  unspecified                        |  named pipe seek
             Blocked By:             |               Blocking:
Reproduced by developer:  0          |  Analyzed by developer:  0
 I trying to use ffmpeg as fast video codec under windows. But windows
 standard input is very slow. So I switched to named pipes. It's up to 10x
 faster then standart input (pipe:). Don't ask me why...

 Using windows [http://msdn.microsoft.com/en-
 us/library/windows/desktop/aa365780(v=vs.85).aspx named pipes] its
 possible to crate pipe with [http://msdn.microsoft.com/en-
 us/library/windows/desktop/aa365150(v=vs.85).aspx CreateNamedPipe] in
 server side. Then using [http://msdn.microsoft.com/en-
 us/library/windows/desktop/aa363858(v=vs.85).aspx CreateFile] in client
 side open pipe exactly as usual file.

 So it's works just fine

 {{{ffmpeg -y -vcodec rawvideo -f rawvideo -pix_fmt rgb32 -r 60 -s 800x600
 -i \\.\pipe\pipename out.mkv}}}

 But when I try to use it like this

 {{{ffmpeg -i \\.\pipe\pipename out.mkv}}}

 on some input formats ffmpeg says about bad input. Same binary stream
 transfered as

 {{{ffmpeg -i pipe: out.mkv}}}

 works just fine (not so fast, but works). Seems ffmpeg trying to seek, but

 Is it possible to disable file seeking?

 You can use file name to check pipe it or not {{{\\.\pipe\*}}}
 Or use [http://msdn.microsoft.com/en-
 us/library/windows/desktop/aa364960(v=vs.85).aspx GetFileType] function.
 Or test file seeking abilities with [http://msdn.microsoft.com/en-
 us/library/windows/desktop/aa365542(v=vs.85).aspx SetFilePointer]
 Or just add command line argument -noseek or something
 Or somthing like {{{pipe:\\.\pipe\pipename}}} (now not working now) or
 like {{{pipe:pipename}}} (not working too)

Ticket URL: <https://ffmpeg.org/trac/ffmpeg/ticket/986>
FFmpeg <http://ffmpeg.org>
FFmpeg issue tracker

More information about the FFmpeg-trac mailing list