History

Merge commit 'bf5f46b4cc47b7a4568119f224057d4ff91b6cdd'

* commit 'bf5f46b4cc47b7a4568119f224057d4ff91b6cdd': APIChanges: add entry for av_read_packet deprecation mxfdec: fix typo in mxf_read_seek() avserver: use freopen to redirect stdin/out/err to /dev/null avserver: remove daemon mode configure: Check for -Werror parameters on clang doxygen: remove obsolete options from Doxyfile configure: Add option to disable all command line programs Conflicts: Changelog configure doc/APIchanges doc/ffserver.conf doc/ffserver.texi ffserver.c

Michael Niedermayer committed 14 years ago

Commit 3db32ec2 parents 9264810 bf5f46b7 files · +25 −80Browse files

Unified · Split

7 files
  1. Changelog +1 −0
  2. configure +12 −4
  3. doc/APIchanges +4 −0
  4. doc/Doxyfile +0 −17
  5. doc/ffserver.conf +0 −4
  6. doc/ffserver.texi +1 −7
  7. ffserver.c +7 −48
Changelog+1−0
@@ -23,6 +23,7 @@ version <next>: · 22 unmodified lines
23- field filter ported from libmpcodecs23- field filter ported from libmpcodecs
24- AVR demuxer24- AVR demuxer
25- geq filter ported from libmpcodecs25- geq filter ported from libmpcodecs
26- remove ffserver daemon mode
26 27
27 28
28version 1.0:29version 1.0:
configure+12−4
@@ -101,6 +101,13 @@ Configuration options: · 100 unmodified lines
101 --enable-gray enable full grayscale support (slower color)101 --enable-gray enable full grayscale support (slower color)
102 --disable-swscale-alpha disable alpha channel support in swscale102 --disable-swscale-alpha disable alpha channel support in swscale
103 103
104Program options:
105 --disable-programs do not build command line programs
106 --disable-ffmpeg disable ffmpeg build
107 --disable-ffplay disable ffplay build
108 --disable-ffprobe disable ffprobe build
109 --disable-ffserver disable ffserver build
110
104Documentation options:111Documentation options:
105 --disable-doc do not build documentation112 --disable-doc do not build documentation
106 --disable-htmlpages do not build HTML documentation pages113 --disable-htmlpages do not build HTML documentation pages
@@ -109,10 +116,6 @@ Documentation options: · 2 unmodified lines
109 --disable-txtpages do not build text documentation pages116 --disable-txtpages do not build text documentation pages
110 117
111Component options:118Component options:
112 --disable-ffmpeg disable ffmpeg build
113 --disable-ffplay disable ffplay build
114 --disable-ffprobe disable ffprobe build
115 --disable-ffserver disable ffserver build
116 --disable-avdevice disable libavdevice build119 --disable-avdevice disable libavdevice build
117 --disable-avcodec disable libavcodec build120 --disable-avcodec disable libavcodec build
118 --disable-avformat disable libavformat build121 --disable-avformat disable libavformat build
@@ -2200,6 +2203,9 @@ for opt do · 2081 unmodified lines
2200 ;;2203 ;;
2201 --enable-debug=*) debuglevel="$optval"2204 --enable-debug=*) debuglevel="$optval"
2202 ;;2205 ;;
2206 --disable-programs)
2207 disable $PROGRAM_LIST
2208 ;;
2203 --disable-everything)2209 --disable-everything)
2204 map 'eval unset \${$(toupper ${v%s})_LIST}' $COMPONENT_LIST2210 map 'eval unset \${$(toupper ${v%s})_LIST}' $COMPONENT_LIST
2205 ;;2211 ;;
@@ -3954,6 +3960,8 @@ elif enabled llvm_gcc; then · 1748 unmodified lines
3954elif enabled clang; then3960elif enabled clang; then
3955 check_cflags -mllvm -stack-alignment=163961 check_cflags -mllvm -stack-alignment=16
3956 check_cflags -Qunused-arguments3962 check_cflags -Qunused-arguments
3963 check_cflags -Werror=implicit-function-declaration
3964 check_cflags -Werror=missing-prototypes
3957elif enabled armcc; then3965elif enabled armcc; then
3958 # 2523: use of inline assembler is deprecated3966 # 2523: use of inline assembler is deprecated
3959 add_cflags -W${armcc_opt},--diag_suppress=25233967 add_cflags -W${armcc_opt},--diag_suppress=2523
doc/APIchanges+4−0
@@ -291,6 +291,10 @@ API changes, most recent first: · 290 unmodified lines
2912012-01-24 - 0c3577b - lavfi 2.60.1002912012-01-24 - 0c3577b - lavfi 2.60.100
292 Add avfilter_graph_dump.292 Add avfilter_graph_dump.
293 293
2942012-03-20 - 3c90cc2 - lavfo 54.2.0
295 Deprecate av_read_packet(), use av_read_frame() with
296 AVFMT_FLAG_NOPARSE | AVFMT_FLAG_NOFILLIN in AVFormatContext.flags
297
2942012-03-05 - lavc 54.8.02982012-03-05 - lavc 54.8.0
295 6699d07 Add av_get_exact_bits_per_sample()299 6699d07 Add av_get_exact_bits_per_sample()
296 9524cf7 Add av_get_audio_frame_duration()300 9524cf7 Add av_get_audio_frame_duration()
doc/Doxyfile+0−17
@@ -489,12 +489,6 @@ MAX_INITIALIZER_LINES = 30 · 488 unmodified lines
489 489
490SHOW_USED_FILES = YES490SHOW_USED_FILES = YES
491 491
492# If the sources in your project are distributed over multiple directories
493# then setting the SHOW_DIRECTORIES tag to YES will show the directory hierarchy
494# in the documentation. The default is NO.
495
496SHOW_DIRECTORIES = NO
497
498# Set the SHOW_FILES tag to NO to disable the generation of the Files page.492# Set the SHOW_FILES tag to NO to disable the generation of the Files page.
499# This will remove the Files entry from the Quick Index and from the493# This will remove the Files entry from the Quick Index and from the
500# Folder Tree View (if specified). The default is YES.494# Folder Tree View (if specified). The default is YES.
@@ -847,12 +841,6 @@ HTML_COLORSTYLE_GAMMA = 80 · 346 unmodified lines
847 841
848HTML_TIMESTAMP = YES842HTML_TIMESTAMP = YES
849 843
850# If the HTML_ALIGN_MEMBERS tag is set to YES, the members of classes,
851# files or namespaces will be aligned in HTML using tables. If set to
852# NO a bullet list will be used.
853
854HTML_ALIGN_MEMBERS = YES
855
856# If the HTML_DYNAMIC_SECTIONS tag is set to YES then the generated HTML844# If the HTML_DYNAMIC_SECTIONS tag is set to YES then the generated HTML
857# documentation will contain sections that can be hidden and shown after the845# documentation will contain sections that can be hidden and shown after the
858# page has loaded. For this to work a browser that supports846# page has loaded. For this to work a browser that supports
@@ -1033,11 +1021,6 @@ ENUM_VALUES_PER_LINE = 4 · 174 unmodified lines
1033 1021
1034GENERATE_TREEVIEW = NO1022GENERATE_TREEVIEW = NO
1035 1023
1036# By enabling USE_INLINE_TREES, doxygen will generate the Groups, Directories,
1037# and Class Hierarchy pages using a tree view instead of an ordered list.
1038
1039USE_INLINE_TREES = NO
1040
1041# If the treeview is enabled (see GENERATE_TREEVIEW) then this tag can be1024# If the treeview is enabled (see GENERATE_TREEVIEW) then this tag can be
1042# used to set the initial width (in pixels) of the frame in which the tree1025# used to set the initial width (in pixels) of the frame in which the tree
1043# is shown.1026# is shown.
doc/ffserver.conf+0−4
@@ -25,10 +25,6 @@ MaxBandwidth 1000 · 24 unmodified lines
25# '-' is the standard output.25# '-' is the standard output.
26CustomLog -26CustomLog -
27 27
28# Suppress that if you want to launch ffserver as a daemon.
29NoDaemon
30
31
32##################################################################28##################################################################
33# Definition of the live feeds. Each live feed contains one video29# Definition of the live feeds. Each live feed contains one video
34# and/or audio sequence coming from an ffmpeg encoder or another30# and/or audio sequence coming from an ffmpeg encoder or another
doc/ffserver.texi+1−7
@@ -28,11 +28,6 @@ several live feeds, streaming from files and time shifting on live feeds · 27 unmodified lines
28(you can seek to positions in the past on each live feed, provided you28(you can seek to positions in the past on each live feed, provided you
29specify a big enough feed storage in ffserver.conf).29specify a big enough feed storage in ffserver.conf).
30 30
31ffserver runs in daemon mode by default; that is, it puts itself in
32the background and detaches from its TTY, unless it is launched in
33debug mode or a NoDaemon option is specified in the configuration
34file.
35
36This documentation covers only the streaming aspects of ffserver /31This documentation covers only the streaming aspects of ffserver /
37ffmpeg. All questions about parameters for ffmpeg, codec questions,32ffmpeg. All questions about parameters for ffmpeg, codec questions,
38etc. are not covered here. Read @file{ffmpeg.html} for more33etc. are not covered here. Read @file{ffmpeg.html} for more
@@ -267,8 +262,7 @@ within the various <Stream> sections. Since ffserver will not launch · 228 unmodified lines
267any ffmpeg instances, you will have to launch them manually.262any ffmpeg instances, you will have to launch them manually.
268@item -d263@item -d
269Enable debug mode. This option increases log verbosity, directs log264Enable debug mode. This option increases log verbosity, directs log
270messages to stdout and causes ffserver to run in the foreground265messages to stdout.
271rather than as a daemon.
272@end table266@end table
273@c man end267@c man end
274 268
ffserver.c+7−48
@@ -29,6 +29,7 @@ · 28 unmodified lines
29#endif29#endif
30#include <string.h>30#include <string.h>
31#include <stdlib.h>31#include <stdlib.h>
32#include <stdio.h>
32#include "libavformat/avformat.h"33#include "libavformat/avformat.h"
33// FIXME those are internal headers, ffserver _really_ shouldn't use them34// FIXME those are internal headers, ffserver _really_ shouldn't use them
34#include "libavformat/ffm.h"35#include "libavformat/ffm.h"
@@ -306,12 +307,10 @@ static int rtp_new_av_stream(HTTPContext *c, · 271 unmodified lines
306 HTTPContext *rtsp_c);307 HTTPContext *rtsp_c);
307 308
308static const char *my_program_name;309static const char *my_program_name;
309static const char *my_program_dir;
310 310
311static const char *config_filename = "/etc/ffserver.conf";311static const char *config_filename = "/etc/ffserver.conf";
312 312
313static int ffserver_debug;313static int ffserver_debug;
314static int ffserver_daemon;
315static int no_launch;314static int no_launch;
316static int need_to_start_children;315static int need_to_start_children;
317 316
@@ -522,19 +521,12 @@ static void start_children(FFStream *feed) · 204 unmodified lines
522 close(i);521 close(i);
523 522
524 if (!ffserver_debug) {523 if (!ffserver_debug) {
525 i = open("/dev/null", O_RDWR);524 if (!freopen("/dev/null", "r", stdin))
526 if (i != -1) {525 http_log("failed to redirect STDIN to /dev/null\n;");
527 dup2(i, 0);526 if (!freopen("/dev/null", "w", stdout))
528 dup2(i, 1);527 http_log("failed to redirect STDOUT to /dev/null\n;");
529 dup2(i, 2);528 if (!freopen("/dev/null", "w", stderr))
530 close(i);529 http_log("failed to redirect STDERR to /dev/null\n;");
531 }
532 }
533
534 /* This is needed to make relative pathnames work */
535 if (chdir(my_program_dir) < 0) {
536 http_log("chdir failed\n");
537 exit(1);
538 }530 }
539 531
540 signal(SIGPIPE, SIG_DFL);532 signal(SIGPIPE, SIG_DFL);
@@ -4122,8 +4114,6 @@ static int parse_ffconfig(const char *filename) · 3581 unmodified lines
4122 if (resolve_host(&my_http_addr.sin_addr, arg) != 0) {4114 if (resolve_host(&my_http_addr.sin_addr, arg) != 0) {
4123 ERROR("%s:%d: Invalid host/IP address: %s\n", arg);4115 ERROR("%s:%d: Invalid host/IP address: %s\n", arg);
4124 }4116 }
4125 } else if (!av_strcasecmp(cmd, "NoDaemon")) {
4126 ffserver_daemon = 0;
4127 } else if (!av_strcasecmp(cmd, "RTSPPort")) {4117 } else if (!av_strcasecmp(cmd, "RTSPPort")) {
4128 get_arg(arg, sizeof(arg), &p);4118 get_arg(arg, sizeof(arg), &p);
4129 val = atoi(arg);4119 val = atoi(arg);
@@ -4694,7 +4684,6 @@ static void handle_child_exit(int sig) · 564 unmodified lines
4694static void opt_debug(void)4684static void opt_debug(void)
4695{4685{
4696 ffserver_debug = 1;4686 ffserver_debug = 1;
4697 ffserver_daemon = 0;
4698 logfilename[0] = '-';4687 logfilename[0] = '-';
4699}4688}
4700 4689
@@ -4725,8 +4714,6 @@ int main(int argc, char **argv) · 24 unmodified lines
4725 show_banner(argc, argv, options);4714 show_banner(argc, argv, options);
4726 4715
4727 my_program_name = argv[0];4716 my_program_name = argv[0];
4728 my_program_dir = getcwd(0, 0);
4729 ffserver_daemon = 1;
4730 4717
4731 parse_options(NULL, argc, argv, options, NULL);4718 parse_options(NULL, argc, argv, options, NULL);
4732 4719
@@ -4758,37 +4745,9 @@ int main(int argc, char **argv) · 25 unmodified lines
4758 4745
4759 compute_bandwidth();4746 compute_bandwidth();
4760 4747
4761 /* put the process in background and detach it from its TTY */
4762 if (ffserver_daemon) {
4763 int pid;
4764
4765 pid = fork();
4766 if (pid < 0) {
4767 perror("fork");
4768 exit(1);
4769 } else if (pid > 0) {
4770 /* parent : exit */
4771 exit(0);
4772 } else {
4773 /* child */
4774 setsid();
4775 close(0);
4776 open("/dev/null", O_RDWR);
4777 if (strcmp(logfilename, "-") != 0) {
4778 close(1);
4779 dup(0);
4780 }
4781 close(2);
4782 dup(0);
4783 }
4784 }
4785
4786 /* signal init */4748 /* signal init */
4787 signal(SIGPIPE, SIG_IGN);4749 signal(SIGPIPE, SIG_IGN);
4788 4750
4789 if (ffserver_daemon)
4790 chdir("/");
4791
4792 if (http_server() < 0) {4751 if (http_server() < 0) {
4793 http_log("Could not start server\n");4752 http_log("Could not start server\n");
4794 exit(1);4753 exit(1);

Keyboard shortcuts

General

Show keyboard shortcuts
?
Focus the current search
/

Issues and pull requests

Open filters
f

Issues, pull requests and Inbox

Select next item
j↓
Select previous item
k↑
Open selected item
Enter
Dismiss filters or clear selection
Esc

Repository code

Go to file
t