mirror of
https://github.com/FFmpeg/FFmpeg.git
synced 2024-12-23 12:43:46 +02:00
Implement common show version and banner.
Patch by Stefano Sabatini [stefano sabatini-lala poste it] Originally committed as revision 10600 to svn://svn.ffmpeg.org/ffmpeg/trunk
This commit is contained in:
parent
20693c85b2
commit
86074ed1b7
26
cmdutils.c
26
cmdutils.c
@ -26,6 +26,7 @@
|
||||
#include "avformat.h"
|
||||
#include "cmdutils.h"
|
||||
#include "avstring.h"
|
||||
#include "version.h"
|
||||
|
||||
#undef exit
|
||||
|
||||
@ -152,6 +153,31 @@ void print_error(const char *filename, int err)
|
||||
}
|
||||
}
|
||||
|
||||
void show_banner(const char *program_name, int program_birth_year)
|
||||
{
|
||||
fprintf(stderr, "%s version " FFMPEG_VERSION ", Copyright (c) %d-2007 Fabrice Bellard, et al.\n",
|
||||
program_name, program_birth_year);
|
||||
fprintf(stderr, " configuration: " FFMPEG_CONFIGURATION "\n");
|
||||
fprintf(stderr, " libavutil version: " AV_STRINGIFY(LIBAVUTIL_VERSION) "\n");
|
||||
fprintf(stderr, " libavcodec version: " AV_STRINGIFY(LIBAVCODEC_VERSION) "\n");
|
||||
fprintf(stderr, " libavformat version: " AV_STRINGIFY(LIBAVFORMAT_VERSION) "\n");
|
||||
fprintf(stderr, " built on " __DATE__ " " __TIME__);
|
||||
#ifdef __GNUC__
|
||||
fprintf(stderr, ", gcc: " __VERSION__ "\n");
|
||||
#else
|
||||
fprintf(stderr, ", using a non-gcc compiler\n");
|
||||
#endif
|
||||
}
|
||||
|
||||
void show_version(const char *program_name) {
|
||||
/* TODO: add function interface to avutil and avformat */
|
||||
printf("%s " FFMPEG_VERSION "\n", program_name);
|
||||
printf("libavutil %d\n"
|
||||
"libavcodec %d\n"
|
||||
"libavformat %d\n",
|
||||
LIBAVUTIL_BUILD, avcodec_build(), LIBAVFORMAT_BUILD);
|
||||
}
|
||||
|
||||
void show_license(void)
|
||||
{
|
||||
#ifdef CONFIG_GPL
|
||||
|
17
cmdutils.h
17
cmdutils.h
@ -64,6 +64,23 @@ void parse_options(int argc, char **argv, const OptionDef *options,
|
||||
|
||||
void print_error(const char *filename, int err);
|
||||
|
||||
/**
|
||||
* Prints the banner of the program on stderr. The banner message
|
||||
* depends on the current versions of the repository and of the libav*
|
||||
* libraries.
|
||||
* @param program_name Name of the program.
|
||||
* @param program_birth_year Year of birth of the program.
|
||||
*/
|
||||
void show_banner(const char *program_name, int program_birth_year);
|
||||
|
||||
/**
|
||||
* Prints the version of the program on stdout. The version message
|
||||
* depends on the current versions of the repository and of the libav*
|
||||
* libraries.
|
||||
* @param program_name Name of the program.
|
||||
*/
|
||||
void show_version(const char *program_name);
|
||||
|
||||
/**
|
||||
* Prints on stdout the license of the program, which depends on the license of
|
||||
* the compiled libav* libraries.
|
||||
|
27
ffmpeg.c
27
ffmpeg.c
@ -63,6 +63,9 @@
|
||||
|
||||
#undef exit
|
||||
|
||||
static const char program_name[] = "FFmpeg";
|
||||
static const int program_birth_year = 2000;
|
||||
|
||||
/* select an input stream for an output stream */
|
||||
typedef struct AVStreamMap {
|
||||
int file_index;
|
||||
@ -3564,12 +3567,7 @@ static void opt_audio_bsf(const char *arg)
|
||||
|
||||
static void opt_show_version(void)
|
||||
{
|
||||
/* TODO: add function interface to avutil and avformat */
|
||||
fprintf(stderr, "ffmpeg " FFMPEG_VERSION "\n"
|
||||
"libavutil %d\n"
|
||||
"libavcodec %d\n"
|
||||
"libavformat %d\n",
|
||||
LIBAVUTIL_BUILD, avcodec_build(), LIBAVFORMAT_BUILD);
|
||||
show_version(program_name);
|
||||
exit(0);
|
||||
}
|
||||
|
||||
@ -3736,21 +3734,6 @@ const OptionDef options[] = {
|
||||
{ NULL, },
|
||||
};
|
||||
|
||||
static void show_banner(void)
|
||||
{
|
||||
fprintf(stderr, "FFmpeg version " FFMPEG_VERSION ", Copyright (c) 2000-2007 Fabrice Bellard, et al.\n");
|
||||
fprintf(stderr, " configuration: " FFMPEG_CONFIGURATION "\n");
|
||||
fprintf(stderr, " libavutil version: " AV_STRINGIFY(LIBAVUTIL_VERSION) "\n");
|
||||
fprintf(stderr, " libavcodec version: " AV_STRINGIFY(LIBAVCODEC_VERSION) "\n");
|
||||
fprintf(stderr, " libavformat version: " AV_STRINGIFY(LIBAVFORMAT_VERSION) "\n");
|
||||
fprintf(stderr, " built on " __DATE__ " " __TIME__);
|
||||
#ifdef __GNUC__
|
||||
fprintf(stderr, ", gcc: " __VERSION__ "\n");
|
||||
#else
|
||||
fprintf(stderr, ", using a non-gcc compiler\n");
|
||||
#endif
|
||||
}
|
||||
|
||||
static void opt_show_license(void)
|
||||
{
|
||||
show_license();
|
||||
@ -3866,7 +3849,7 @@ int main(int argc, char **argv)
|
||||
avformat_opts = av_alloc_format_context();
|
||||
sws_opts = sws_getContext(16,16,0, 16,16,0, sws_flags, NULL,NULL,NULL);
|
||||
|
||||
show_banner();
|
||||
show_banner(program_name, program_birth_year);
|
||||
if (argc <= 1) {
|
||||
show_help();
|
||||
exit(1);
|
||||
|
12
ffserver.c
12
ffserver.c
@ -53,6 +53,9 @@
|
||||
|
||||
#undef exit
|
||||
|
||||
static const char program_name[] = "FFserver";
|
||||
static const int program_birth_year = 2000;
|
||||
|
||||
/* maximum number of simultaneous HTTP connections */
|
||||
#define HTTP_MAX_CONNECTIONS 2000
|
||||
|
||||
@ -4313,14 +4316,9 @@ static int parse_ffconfig(const char *filename)
|
||||
return 0;
|
||||
}
|
||||
|
||||
static void show_banner(void)
|
||||
{
|
||||
printf("ffserver version " FFMPEG_VERSION ", Copyright (c) 2000-2006 Fabrice Bellard, et al.\n");
|
||||
}
|
||||
|
||||
static void show_help(void)
|
||||
{
|
||||
show_banner();
|
||||
show_banner(program_name, program_birth_year);
|
||||
printf("usage: ffserver [-L] [-h] [-f configfile]\n"
|
||||
"Hyper fast multi format Audio/Video streaming server\n"
|
||||
"\n"
|
||||
@ -4375,7 +4373,7 @@ int main(int argc, char **argv)
|
||||
break;
|
||||
switch(c) {
|
||||
case 'L':
|
||||
show_banner();
|
||||
show_banner(program_name, program_birth_year);
|
||||
show_license();
|
||||
exit(0);
|
||||
case '?':
|
||||
|
Loading…
Reference in New Issue
Block a user