使用Axis P1347的ffmpeg返回400 Bad Request,但Axis 1357工作

时间:2016-05-03 04:01:56

标签: ffmpeg rtsp

我有两个摄像头:Axis P1347和Axis P1357。 ffmpeg在P1347上获得400 Bad Request,但P1357的一切正常。

我可以使用以下网址成功使用 vlc vlc 流式传输rtsp视频:

rtsp://10.8.3.85:554/axis-media/media.amp?videocodec=h264&audio=1 

但是, ffmpeg 中的相同网址为 Axis P1347相机提供以下内容:

root@ubuntu4-virtual-machine:/home/ubuntu4# ffmpeg -re -v verbose  -i "rtsp://10.8.3.85:554/axis-media/media.amp?videocodec=h264&audio=1"
ffmpeg version git-2016-05-02-9fcb59c Copyright (c) 2000-2016 the FFmpeg developers
  built with gcc 4.8 (Ubuntu 4.8.4-2ubuntu1~14.04.1)
  configuration: --enable-gpl --enable-libfaac --enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-librtmp --enable-libtheora --enable-libvorbis --enable-libvpx --enable-libx264 --enable-nonfree --enable-version3
  libavutil      55. 23.100 / 55. 23.100
  libavcodec     57. 38.100 / 57. 38.100
  libavformat    57. 35.100 / 57. 35.100
  libavdevice    57.  0.101 / 57.  0.101
  libavfilter     6. 44.100 /  6. 44.100
  libswscale      4.  1.100 /  4.  1.100
  libswresample   2.  0.101 /  2.  0.101
  libpostproc    54.  0.100 / 54.  0.100
rtsp://10.8.3.85:554/axis-media/media.amp?videocodec=h264&audio=1: Server returned 400 Bad Request

相同的 ffmpeg 命令与几乎相同的 Axis P1357相机非常相似:

root@ubuntu4-virtual-machine:/home/ubuntu4# ffmpeg -re -rtsp_transport tcp -i "rtsp://10.8.3.90:554/axis-media/media.amp?videocodec=h264&audio=1"
ffmpeg version git-2016-05-02-9fcb59c Copyright (c) 2000-2016 the FFmpeg developers
  built with gcc 4.8 (Ubuntu 4.8.4-2ubuntu1~14.04.1)
  configuration: --enable-gpl --enable-libfaac --enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-librtmp --enable-libtheora --enable-libvorbis --enable-libvpx --enable-libx264 --enable-nonfree --enable-version3
  libavutil      55. 23.100 / 55. 23.100
  libavcodec     57. 38.100 / 57. 38.100
  libavformat    57. 35.100 / 57. 35.100
  libavdevice    57.  0.101 / 57.  0.101
  libavfilter     6. 44.100 /  6. 44.100
  libswscale      4.  1.100 /  4.  1.100
  libswresample   2.  0.101 /  2.  0.101
  libpostproc    54.  0.100 / 54.  0.100
Input #0, rtsp, from 'rtsp://10.8.3.90:554/axis-media/media.amp?videocodec=h264&audio=1':
  Metadata:
    title           : Media Presentation
  Duration: N/A, start: 0.083300, bitrate: N/A
    Stream #0:0: Video: h264 (Main), yuvj420p(pc, bt709), 2592x1944 [SAR 1:1 DAR 4:3], 12 tbr, 90k tbn
    Stream #0:1: Audio: aac (LC), 16000 Hz, mono, fltp

显然,如果vlc可以显示视频,rtsp已打开并正常工作,对吗?那么为什么VLC可以使用相机,但不能使用ffmpeg?注意ffmpeg已安装并且可以使用类似的相机正常工作。

1 个答案:

答案 0 :(得分:0)

事实证明P1347输出的是64位编解码器,ffmpeg没有摄像头来摄取。 VLC安装了64位编解码器。

我将研究如何安装64位编解码器并将其用于P1347相机。