Opened 2 years ago

Closed 9 days ago

#5148 closed defect (invalid)

connection is refused when using ffserver

Reported by: illumilore Owned by:
Priority: normal Component: undetermined
Version: unspecified Keywords:
Cc: Blocked By:
Blocking: Reproduced by developer: no
Analyzed by developer: no

Description

Summary of the bug:
How to reproduce:

% ffmpeg -i input ... output
ffmpeg version
built on ...

Patches should be submitted to the ffmpeg-devel mailing list and not this bug tracker.
ffmpeg version 2.7.2-1build1 Copyright (c) 2000-2015 the FFmpeg developers

built with gcc 5.2.1 (Ubuntu 5.2.1-12ubuntu2) 20150729
configuration: --prefix=/usr --extra-version=1build1 --build-suffix=-ffmpeg --toolchain=hardened --libdir=/usr/lib/x86_64-linux-gnu --incdir=/usr/include/x86_64-linux-gnu --enable-gpl --enable-shared --disable-stripping --enable-avresample --enable-avisynth --enable-frei0r --enable-gnutls --enable-ladspa --enable-libass --enable-libbluray --enable-libbs2b --enable-libcaca --enable-libcdio --enable-libflite --enable-libfontconfig --enable-libfreetype --enable-libfribidi --enable-libgme --enable-libgsm --enable-libmodplug --enable-libmp3lame --enable-libopenjpeg --enable-openal --enable-libopus --enable-libpulse --enable-librtmp --enable-libschroedinger --enable-libshine --enable-libspeex --enable-libtheora --enable-libtwolame --enable-libvorbis --enable-libvpx --enable-libwavpack --enable-libwebp --enable-libxvid --enable-libzvbi --enable-opengl --enable-x11grab --enable-libdc1394 --enable-libiec61883 --enable-libzmq --enable-libssh --enable-libsoxr --enable-libx264 --enable-libopencv --enable-libx265
libavutil 54. 27.100 / 54. 27.100
libavcodec 56. 41.100 / 56. 41.100
libavformat 56. 36.100 / 56. 36.100
libavdevice 56. 4.100 / 56. 4.100
libavfilter 5. 16.101 / 5. 16.101
libavresample 2. 1. 0 / 2. 1. 0
libswscale 3. 1.101 / 3. 1.101
libswresample 1. 2.100 / 1. 2.100
libpostproc 53. 3.100 / 53. 3.100

Input #0, video4linux2,v4l2, from '/dev/video0':

Duration: N/A, start: 5418.343914, bitrate: N/A

Stream #0:0: Video: mjpeg, yuvj422p(pc, bt470bg/unknown/unknown), 960x720, -1 kb/s, 10 fps, 10 tbr, 1000k tbn, 1000k tbc

[tcp @ 0x229f900] Connection to tcp://192.168.1.4:8090 failed: Connection refused
http://192.168.1.4:8090/feed1.ffm: Connection refused

# Port on which the server is listening. You must select a different
# port from your standard HTTP web server if it is running on the same
# computer.
HTTPPort 8090

# Address on which the server is bound. Only useful if you have
# several network interfaces.
HTTPBindAddress 0.0.0.0
BindAddress? 0.0.0.0
# Number of simultaneous HTTP connections that can be handled. It has
# to be defined *before* the MaxClients? parameter, since it defines the
# MaxClients? maximum limit.
MaxHTTPConnections 20

# Number of simultaneous requests that can be handled. Since FFServer
# is very fast, it is more likely that you will want to leave this high
# and use MaxBandwidth?, below.
MaxClients? 10

# This the maximum amount of kbit/sec that you are prepared to
# consume when streaming to clients.
MaxBandwidth? 8000

# Access log file (uses standard Apache log file format)
# '-' is the standard output.
CustomLog? -

##################################################################
# Definition of the live feeds. Each live feed contains one video
# and/or audio sequence coming from an ffmpeg encoder or another
# ffserver. This sequence may be encoded simultaneously with several
# codecs at several resolutions.

<Feed feed1.ffm>

# You must use 'ffmpeg' to send a live feed to ffserver. In this
# example, you can type:
#
# ffmpeg http://localhost:8090/feed1.ffm

# ffserver can also do time shifting. It means that it can stream any
# previously recorded live stream. The request should contain:
# "http://xxxx?date=[YYYY-MM-DDT][[HH:]MM:]SS[.m...]".You must specify
# a path where the feed is stored on disk. You also specify the
# maximum size of the feed, where zero means unlimited. Default:
# File=/tmp/feed_name.ffm FileMaxSize?=5M
File /tmp/feed1.ffm
FileMaxSize? 400K

# You could specify
# ReadOnlyFile? /saved/specialvideo.ffm
# This marks the file as readonly and it will not be deleted or updated.

# Specify launch in order to start ffmpeg automatically.
# First ffmpeg must be defined with an appropriate path if needed,
# after that options can follow, but avoid adding the http:// field
#Launch ffmpeg

# Only allow connections from localhost to the feed.
ACL allow 127.0.0.1
ACL allow 192.168.1.2 192.168.1.49
</Feed>

##################################################################
# Now you can define each stream which will be generated from the
# original audio and video stream. Each format has a filename (here
# 'test1.mpg'). FFServer will send this stream when answering a
# request containing this filename.

<Stream test1.mpg>

# coming from live feed 'feed1'
Feed feed1.ffm

# Format of the stream : you can choose among:
# mpeg : MPEG-1 multiplexed video and audio
# mpegvideo : only MPEG-1 video
# mp2 : MPEG-2 audio (use AudioCodec? to select layer 2 and 3 codec)
# ogg : Ogg format (Vorbis audio codec)
# rm : RealNetworks?-compatible stream. Multiplexed audio and video.
# ra : RealNetworks?-compatible stream. Audio only.
# mpjpeg : Multipart JPEG (works with Netscape without any plugin)
# jpeg : Generate a single JPEG image.
# mjpeg : Generate a M-JPEG stream.
# asf : ASF compatible streaming (Windows Media Player format).
# swf : Macromedia Flash compatible stream
# avi : AVI format (MPEG-4 video, MPEG audio sound)
Format mpeg

# Bitrate for the audio stream. Codecs usually support only a few
# different bitrates.
AudioBitRate? 32

# Number of audio channels: 1 = mono, 2 = stereo
AudioChannels? 1

# Sampling frequency for audio. When using low bitrates, you should
# lower this frequency to 22050 or 11025. The supported frequencies
# depend on the selected audio codec.
AudioSampleRate? 44100

# Bitrate for the video stream
VideoBitRate? 64

# Ratecontrol buffer size
VideoBufferSize? 40

# Number of frames per second
VideoFrameRate? 3

# Size of the video frame: WxH (default: 160x128)
# The following abbreviations are defined: sqcif, qcif, cif, 4cif, qqvga,
# qvga, vga, svga, xga, uxga, qxga, sxga, qsxga, hsxga, wvga, wxga, wsxga,
# wuxga, woxga, wqsxga, wquxga, whsxga, whuxga, cga, ega, hd480, hd720,
# hd1080
VideoSize? 160x128

# Transmit only intra frames (useful for low bitrates, but kills frame rate).
#VideoIntraOnly?

# If non-intra only, an intra frame is transmitted every VideoGopSize?
# frames. Video synchronization can only begin at an intra frame.
VideoGopSize? 12

# More MPEG-4 parameters
# VideoHighQuality?
# Video4MotionVector

# Choose your codecs:
#AudioCodec? mp2
#VideoCodec? mpeg1video

# Suppress audio
#NoAudio?

# Suppress video
#NoVideo?

#VideoQMin 3
#VideoQMax 31

# Set this to the number of seconds backwards in time to start. Note that
# most players will buffer 5-10 seconds of video, and also you need to allow
# for a keyframe to appear in the data stream.
#Preroll 15

# ACL:

# You can allow ranges of addresses (or single addresses)
#ACL ALLOW <first address> <last address>

# You can deny ranges of addresses (or single addresses)
#ACL DENY <first address> <last address>

# You can repeat the ACL allow/deny as often as you like. It is on a per
# stream basis. The first match defines the action. If there are no matches,
# then the default is the inverse of the last ACL statement.
#
# Thus 'ACL allow localhost' only allows access from localhost.
# 'ACL deny 1.0.0.0 1.255.255.255' would deny the whole of network 1 and
# allow everybody else.

</Stream>

##################################################################
# Example streams

# Multipart JPEG

#<Stream test.mjpg>
#Feed feed1.ffm
#Format mpjpeg
#VideoFrameRate? 2
#VideoIntraOnly?
#NoAudio?
#Strict -1
#</Stream>

# Single JPEG

#<Stream test.jpg>
#Feed feed1.ffm
#Format jpeg
#VideoFrameRate? 2
#VideoIntraOnly?
##VideoSize? 352x240
#NoAudio?
#Strict -1
#</Stream>

# Flash

#<Stream test.swf>
#Feed feed1.ffm
#Format swf
#VideoFrameRate? 2
#VideoIntraOnly?
#NoAudio?
#</Stream>

# ASF compatible
#
#<Stream test.asf>
#Feed feed1.ffm
#Format asf
#VideoFrameRate? 15
#VideoSize? 352x240
#VideoBitRate? 256
#VideoBufferSize? 40
#VideoGopSize? 30
#AudioBitRate? 64
#StartSendOnKey?
#</Stream>
#

# MP3 audio

#<Stream test.mp3>
#Feed feed1.ffm
#Format mp2
#AudioCodec? mp3
#AudioBitRate? 64
#AudioChannels? 1
#AudioSampleRate? 44100
#NoVideo?
#</Stream>

# Ogg Vorbis audio

#<Stream test.ogg>
#Feed feed1.ffm
#Metadata title "Stream title"
#AudioBitRate? 64
#AudioChannels? 2
#AudioSampleRate? 44100
#NoVideo?
#</Stream>

##################################################################
# A stream coming from a file: you only need to set the input
# filename and optionally a new format. Supported conversions:
# AVI -> ASF

#<Stream file.rm>
#File "/usr/local/httpd/htdocs/tlive.rm"
#NoAudio?
#</Stream>

#<Stream file.asf>
#File "/usr/local/httpd/htdocs/test.asf"
#NoAudio?
#Metadata author "Me"
#Metadata copyright "Super MegaCorp?"
#Metadata title "Test stream from disk"
#Metadata comment "Test comment"
#</Stream>

##################################################################
# RTSP examples
#
# You can access this stream with the RTSP URL:
# rtsp://localhost:5454/test1-rtsp.mpg
#
# A non-standard RTSP redirector is also created. Its URL is:
# http://localhost:8090/test1-rtsp.rtsp

#<Stream test1-rtsp.mpg>
#Format rtp
#File "/usr/local/httpd/htdocs/test1.mpg"
#</Stream>

# Transcode an incoming live feed to another live feed,
# using libx264 and video presets

<Stream live.h264>
Format rtp
Feed feed1.ffm
VideoCodec? libx264
VideoFrameRate? 24
VideoBitRate? 100
VideoSize? 480x272
#AVPresetVideo default
AVPresetVideo baseline
AVOptionVideo flags +global_header

AudioCodec? libfaac
AudioBitRate? 32
AudioChannels? 2
AudioSampleRate? 22050
AVOptionAudio flags +global_header
</Stream>

##################################################################
# SDP/multicast examples
#
# If you want to send your stream in multicast, you must set the
# multicast address with MulticastAddress?. The port and the TTL can
# also be set.
#
# An SDP file is automatically generated by ffserver by adding the
# 'sdp' extension to the stream name (here
# http://localhost:8090/test1-sdp.sdp). You should usually give this
# file to your player to play the stream.
#
# The 'NoLoop?' option can be used to avoid looping when the stream is
# terminated.

#<Stream test1-sdp.mpg>
#Format rtp
#File "/usr/local/httpd/htdocs/test1.mpg"
#MulticastAddress? 224.124.0.1
#MulticastPort? 5000
#MulticastTTL 16
#NoLoop?
#</Stream>

##################################################################
# Special streams

# Server status

<Stream stat.html>
Format status

# Only allow local people to get the status
ACL allow localhost
ACL allow 192.168.0.0 192.168.255.255

#FaviconURL http://pond1.gladstonefamily.net:8080/favicon.ico
</Stream>

# Redirect index.html to the appropriate site

<Redirect index.html>
URL http://192.168.1.4/stat.html
</Redirect>

Change History (2)

comment:1 Changed 2 years ago by illumilore

ffmpeg -f video4linux2 -input_format mjpeg -s 960x720 -r 10 -i /dev/video0 -vcodec copy http://192.168.1.4:8090/feed1.ffm

comment:2 Changed 9 days ago by llogan

  • Resolution set to invalid
  • Status changed from new to closed

ffserver was removed from git master, closing bug as invalid.

Note: See TracTickets for help on using tickets.