From 6b35a83214f1bc3fb38c9ea9c2cd3676f28709fa Mon Sep 17 00:00:00 2001 From: Rostislav Pehlivanov Date: Sat, 21 Oct 2017 19:31:44 +0100 Subject: Remove the ffserver program Signed-off-by: Rostislav Pehlivanov --- fftools/ffserver_config.h | 155 ---------------------------------------------- 1 file changed, 155 deletions(-) delete mode 100644 fftools/ffserver_config.h (limited to 'fftools/ffserver_config.h') diff --git a/fftools/ffserver_config.h b/fftools/ffserver_config.h deleted file mode 100644 index 089b8484da..0000000000 --- a/fftools/ffserver_config.h +++ /dev/null @@ -1,155 +0,0 @@ -/* - * Copyright (c) 2000, 2001, 2002 Fabrice Bellard - * - * This file is part of FFmpeg. - * - * FFmpeg is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 2.1 of the License, or (at your option) any later version. - * - * FFmpeg is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with FFmpeg; if not, write to the Free Software - * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA - */ - -#ifndef FFTOOLS_FFSERVER_CONFIG_H -#define FFTOOLS_FFSERVER_CONFIG_H - -#define FFM_PACKET_SIZE 4096 - -#include "libavutil/dict.h" -#include "libavformat/avformat.h" -#include "libavformat/network.h" - -#define FFSERVER_MAX_STREAMS 20 - -/* each generated stream is described here */ -enum FFServerStreamType { - STREAM_TYPE_LIVE, - STREAM_TYPE_STATUS, - STREAM_TYPE_REDIRECT, -}; - -enum FFServerIPAddressAction { - IP_ALLOW = 1, - IP_DENY, -}; - -typedef struct FFServerIPAddressACL { - struct FFServerIPAddressACL *next; - enum FFServerIPAddressAction action; - /* These are in host order */ - struct in_addr first; - struct in_addr last; -} FFServerIPAddressACL; - -/** - * This holds the stream parameters for an AVStream, it cannot be a AVStream - * because AVStreams cannot be instanciated without a AVFormatContext, especially - * not outside libavformat. - * - * The fields of this struct have the same semantics as the fields of an AVStream. - */ -typedef struct LayeredAVStream { - int index; - int id; - AVCodecParameters *codecpar; - AVCodecContext *codec; - AVRational time_base; - int pts_wrap_bits; - AVRational sample_aspect_ratio; - char *recommended_encoder_configuration; -} LayeredAVStream; - -/* description of each stream of the ffserver.conf file */ -typedef struct FFServerStream { - enum FFServerStreamType stream_type; - char filename[1024]; /* stream filename */ - struct FFServerStream *feed; /* feed we are using (can be null if coming from file) */ - AVDictionary *in_opts; /* input parameters */ - AVDictionary *metadata; /* metadata to set on the stream */ - AVInputFormat *ifmt; /* if non NULL, force input format */ - AVOutputFormat *fmt; - FFServerIPAddressACL *acl; - char dynamic_acl[1024]; - int nb_streams; - int prebuffer; /* Number of milliseconds early to start */ - int64_t max_time; /* Number of milliseconds to run */ - int send_on_key; - LayeredAVStream *streams[FFSERVER_MAX_STREAMS]; - int feed_streams[FFSERVER_MAX_STREAMS]; /* index of streams in the feed */ - char feed_filename[1024]; /* file name of the feed storage, or - input file name for a stream */ - pid_t pid; /* Of ffmpeg process */ - time_t pid_start; /* Of ffmpeg process */ - char **child_argv; - struct FFServerStream *next; - unsigned bandwidth; /* bandwidth, in kbits/s */ - /* RTSP options */ - char *rtsp_option; - /* multicast specific */ - int is_multicast; - struct in_addr multicast_ip; - int multicast_port; /* first port used for multicast */ - int multicast_ttl; - int loop; /* if true, send the stream in loops (only meaningful if file) */ - char single_frame; /* only single frame */ - - /* feed specific */ - int feed_opened; /* true if someone is writing to the feed */ - int is_feed; /* true if it is a feed */ - int readonly; /* True if writing is prohibited to the file */ - int truncate; /* True if feeder connection truncate the feed file */ - int conns_served; - int64_t bytes_served; - int64_t feed_max_size; /* maximum storage size, zero means unlimited */ - int64_t feed_write_index; /* current write position in feed (it wraps around) */ - int64_t feed_size; /* current size of feed */ - struct FFServerStream *next_feed; -} FFServerStream; - -typedef struct FFServerConfig { - char *filename; - FFServerStream *first_feed; /* contains only feeds */ - FFServerStream *first_stream; /* contains all streams, including feeds */ - unsigned int nb_max_http_connections; - unsigned int nb_max_connections; - uint64_t max_bandwidth; - int debug; - int bitexact; - char logfilename[1024]; - struct sockaddr_in http_addr; - struct sockaddr_in rtsp_addr; - int errors; - int warnings; - int use_defaults; - // Following variables MUST NOT be used outside configuration parsing code. - enum AVCodecID guessed_audio_codec_id; - enum AVCodecID guessed_video_codec_id; - AVDictionary *video_opts; /* AVOptions for video encoder */ - AVDictionary *audio_opts; /* AVOptions for audio encoder */ - AVCodecContext *dummy_actx; /* Used internally to test audio AVOptions. */ - AVCodecContext *dummy_vctx; /* Used internally to test video AVOptions. */ - int no_audio; - int no_video; - int line_num; - int stream_use_defaults; -} FFServerConfig; - -void ffserver_get_arg(char *buf, int buf_size, const char **pp); - -void ffserver_parse_acl_row(FFServerStream *stream, FFServerStream* feed, - FFServerIPAddressACL *ext_acl, - const char *p, const char *filename, int line_num); - -int ffserver_parse_ffconfig(const char *filename, FFServerConfig *config); - -void ffserver_free_child_args(void *argsp); - -#endif /* FFTOOLS_FFSERVER_CONFIG_H */ -- cgit v1.2.3