[FFmpeg-trac] #3679(avformat:new): Some HTTP MJPEG streams are not recognized

FFmpeg trac at avcodec.org
Wed Jun 4 17:27:31 CEST 2014


#3679: Some HTTP MJPEG streams are not recognized
------------------------------------+------------------------------------
             Reporter:  Krieger     |                    Owner:
                 Type:  defect      |                   Status:  new
             Priority:  normal      |                Component:  avformat
              Version:  git-master  |               Resolution:
             Keywords:  mjpeg       |               Blocked By:
             Blocking:              |  Reproduced by developer:  0
Analyzed by developer:  0           |
------------------------------------+------------------------------------

Comment (by Krieger):

 Replying to [comment:1 cehoyos]:
 > Could you provide {{{ffmpeg -i}}} command line and output for the
 working Axis camera?

 {{{
  $ ffmpeg -loglevel debug -analyzeduration 0 -probesize 32 -i
 http://root:root@192.168.2.120/mjpg/video.mjpg
 ffmpeg version N-63755-gdeadcf5 Copyright (c) 2000-2014 the FFmpeg
 developers
   built on Jun  4 2014 18:23:45 with gcc 4.7.3 (Gentoo 4.7.3-r1 p1.4,
 pie-0.5.5)
   configuration: --enable-pic --disable-stripping --disable-doc --disable-
 everything --enable-protocol=file --enable-protocol=pipe --enable-
 protocol=http --enable-muxer=matroska --enable-muxer=mjpeg --enable-
 muxer=rtp --enable-demuxer=rtsp --enable-demuxer=matroska --enable-
 demuxer=mjpeg --enable-decoder=h264 --enable-decoder=mpeg4 --enable-
 decoder=mjpeg --enable-parser=h264 --enable-parser=mpeg4video --enable-
 parser=mjpeg --enable-encoder=mjpeg
   libavutil      52. 89.100 / 52. 89.100
   libavcodec     55. 66.100 / 55. 66.100
   libavformat    55. 42.101 / 55. 42.101
   libavdevice    55. 13.101 / 55. 13.101
   libavfilter     4.  5.100 /  4.  5.100
   libswscale      2.  6.100 /  2.  6.100
   libswresample   0. 19.100 /  0. 19.100
 Splitting the commandline.
 Reading option '-loglevel' ... matched as option 'loglevel' (set logging
 level) with argument 'debug'.
 Reading option '-analyzeduration' ... matched as AVOption
 'analyzeduration' with argument '0'.
 Reading option '-probesize' ... matched as AVOption 'probesize' with
 argument '32'.
 Reading option '-i' ... matched as input file with argument
 'http://root:root@192.168.2.120/mjpg/video.mjpg'.
 Finished splitting the commandline.
 Parsing a group of options: global .
 Applying option loglevel (set logging level) with argument debug.
 Successfully parsed a group of options.
 Parsing a group of options: input file
 http://root:root@192.168.2.120/mjpg/video.mjpg.
 Successfully parsed a group of options.
 Opening an input file: http://root:root@192.168.2.120/mjpg/video.mjpg.
 [http @ 0x1a68320] request: GET /mjpg/video.mjpg HTTP/1.1
 User-Agent: Lavf/55.42.101
 Accept: */*
 Range: bytes=0-
 Connection: close
 Host: 192.168.2.120


 [http @ 0x1a68320] header='HTTP/1.1 401 Unauthorized'
 [http @ 0x1a68320] http_code=401
 [http @ 0x1a68320] header='Date: Sun, 05 May 2013 17:39:16 GMT'
 [http @ 0x1a68320] header='Accept-Ranges: bytes'
 [http @ 0x1a68320] header='Connection: close'
 [http @ 0x1a68320] header='WWW-Authenticate: Digest
 realm="AXIS_00408CDBFDBA",
 nonce="0007fbcfY783707bc2820a745be9fb187c48dd005cd5a2", stale=FALSE,
 qop="auth"'
 [http @ 0x1a68320] header='WWW-Authenticate: Basic
 realm="AXIS_00408CDBFDBA"'
 [http @ 0x1a68320] header='Content-Length: 181'
 [http @ 0x1a68320] header='Content-Type: text/html; charset=ISO-8859-1'
 [http @ 0x1a68320] header=''
 [http @ 0x1a68320] request: GET /mjpg/video.mjpg HTTP/1.1
 User-Agent: Lavf/55.42.101
 Accept: */*
 Range: bytes=0-
 Connection: close
 Host: 192.168.2.120
 Authorization: Digest
 username="root",realm="AXIS_00408CDBFDBA",nonce="0007fbcfY783707bc2820a745be9fb187c48dd005cd5a2",uri="/mjpg/video.mjpg",response="1126f53bf9df43ff0e8ee937994295da",qop="auth",cnonce="8b0e9d3d5980b00c",nc=00000001


 [http @ 0x1a68320] header='HTTP/1.0 200 OK'
 [http @ 0x1a68320] http_code=200
 [http @ 0x1a68320] header='Cache-Control: no-cache'
 [http @ 0x1a68320] header='Pragma: no-cache'
 [http @ 0x1a68320] header='Expires: Thu, 01 Dec 1994 16:00:00 GMT'
 [http @ 0x1a68320] header='Connection: close'
 [http @ 0x1a68320] header='Content-Type: multipart/x-mixed-replace;
 boundary=myboundary'
 [http @ 0x1a68320] header=''
 [mjpeg @ 0x1a68960] Format mjpeg probed with size=2048 and score=50
 [mjpeg @ 0x1a68960] Before avformat_find_stream_info() pos: 0 bytes
 read:2697 seeks:0
 [mjpeg @ 0x1a6abc0] marker=d8 avail_size_in_buf=6781
 [mjpeg @ 0x1a6abc0] marker parser used 0 bytes (0 bits)
 [mjpeg @ 0x1a6abc0] marker=e0 avail_size_in_buf=6779
 [mjpeg @ 0x1a6abc0] marker parser used 16 bytes (128 bits)
 [mjpeg @ 0x1a6abc0] marker=fe avail_size_in_buf=6761
 [mjpeg @ 0x1a6abc0] marker parser used 15 bytes (120 bits)
 [mjpeg @ 0x1a6abc0] marker=fe avail_size_in_buf=6744
 [mjpeg @ 0x1a6abc0] marker parser used 15 bytes (120 bits)
 [mjpeg @ 0x1a6abc0] marker=db avail_size_in_buf=6727
 [mjpeg @ 0x1a6abc0] index=0
 [mjpeg @ 0x1a6abc0] qscale[0]: 4
 [mjpeg @ 0x1a6abc0] marker parser used 67 bytes (536 bits)
 [mjpeg @ 0x1a6abc0] marker=db avail_size_in_buf=6658
 [mjpeg @ 0x1a6abc0] index=1
 [mjpeg @ 0x1a6abc0] qscale[1]: 8
 [mjpeg @ 0x1a6abc0] marker parser used 67 bytes (536 bits)
 [mjpeg @ 0x1a6abc0] marker=c0 avail_size_in_buf=6589
 [mjpeg @ 0x1a6abc0] sof0: picture: 320x240
 [mjpeg @ 0x1a6abc0] component 0 2:2 id: 0 quant:0
 [mjpeg @ 0x1a6abc0] component 1 1:1 id: 1 quant:1
 [mjpeg @ 0x1a6abc0] component 2 1:1 id: 2 quant:1
 [mjpeg @ 0x1a6abc0] pix fmt id 22111100
 [mjpeg @ 0x1a6abc0] marker parser used 17 bytes (136 bits)
 [mjpeg @ 0x1a6abc0] marker=c4 avail_size_in_buf=6570
 [mjpeg @ 0x1a6abc0] class=0 index=0 nb_codes=12
 [mjpeg @ 0x1a6abc0] marker parser used 31 bytes (248 bits)
 [mjpeg @ 0x1a6abc0] marker=c4 avail_size_in_buf=6537
 [mjpeg @ 0x1a6abc0] class=1 index=0 nb_codes=251
 [mjpeg @ 0x1a6abc0] marker parser used 181 bytes (1448 bits)
 [mjpeg @ 0x1a6abc0] marker=c4 avail_size_in_buf=6354
 [mjpeg @ 0x1a6abc0] class=0 index=1 nb_codes=12
 [mjpeg @ 0x1a6abc0] marker parser used 31 bytes (248 bits)
 [mjpeg @ 0x1a6abc0] marker=c4 avail_size_in_buf=6321
 [mjpeg @ 0x1a6abc0] class=1 index=1 nb_codes=251
 [mjpeg @ 0x1a6abc0] marker parser used 181 bytes (1448 bits)
 [mjpeg @ 0x1a6abc0] escaping removed 102 bytes
 [mjpeg @ 0x1a6abc0] marker=da avail_size_in_buf=6138
 [mjpeg @ 0x1a6abc0] component: 0
 [mjpeg @ 0x1a6abc0] component: 1
 [mjpeg @ 0x1a6abc0] component: 2
 [mjpeg @ 0x1a6abc0] marker parser used 6035 bytes (48278 bits)
 [mjpeg @ 0x1a6abc0] marker=d9 avail_size_in_buf=66
 [mjpeg @ 0x1a6abc0] decode frame unused 66 bytes
 [mjpeg @ 0x1a68960] Probe buffer size limit of 32 bytes reached
 [mjpeg @ 0x1a68960] Stream #0: not enough frames to estimate rate;
 consider increasing probesize
 [mjpeg @ 0x1a68960] After avformat_find_stream_info() pos: 7805 bytes
 read:8221 seeks:0 frames:1
 Input #0, mjpeg, from 'http://root:root@192.168.2.120/mjpg/video.mjpg':
   Duration: N/A, bitrate: N/A
     Stream #0:0, 1, 1/1200000: Video: mjpeg, yuvj420p(pc), 320x240 [SAR
 1:1 DAR 4:3], 1/25, 25 tbr, 1200k tbn, 25 tbc
 Successfully opened the file.
 At least one output file must be specified
 [AVIOContext @ 0x1a67da0] Statistics: 8221 bytes read, 0 seeks
 }}}

--
Ticket URL: <https://trac.ffmpeg.org/ticket/3679#comment:3>
FFmpeg <https://ffmpeg.org>
FFmpeg issue tracker


More information about the FFmpeg-trac mailing list