annotate mp_msg.c @ 17552:3469899beb42

Fix mpng to work correctly with 16 bit png's. don't have any files to test this on, but mpng still works correctly for files that worked fine before. patch by derf < tterribe BANG xiph POIT org >
author ods15
date Tue, 07 Feb 2006 18:17:12 +0000
parents de9a36b1082c
children f580a7755ac5
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
7200
9a123ba671fd - warnings enabled for GUI mode
arpi
parents: 7195
diff changeset
1
17108
f9a03e3c8e23 1000l, reverting 2 more unrelated changes with last commit
ods15
parents: 17106
diff changeset
2 //#define MSG_USE_COLORS
1562
2caba2f48026 new message printing system
arpi
parents:
diff changeset
3
2caba2f48026 new message printing system
arpi
parents:
diff changeset
4 #include <stdio.h>
2caba2f48026 new message printing system
arpi
parents:
diff changeset
5 #include <stdlib.h>
2caba2f48026 new message printing system
arpi
parents:
diff changeset
6 #include <stdarg.h>
2caba2f48026 new message printing system
arpi
parents:
diff changeset
7
1925
633a7f0d72a4 add gui error handling jol.
pontscho
parents: 1566
diff changeset
8 #include "config.h"
633a7f0d72a4 add gui error handling jol.
pontscho
parents: 1566
diff changeset
9
8573
b2e4f9dab7ad codec-cfg cannot be built when the gui is enabled - it fails to link with a
jkeil
parents: 7205
diff changeset
10 #if defined(FOR_MENCODER) || defined(CODECS2HTML)
16618
bad73cd81b23 mp_msg cleanup.
ods15
parents: 16379
diff changeset
11 #undef HAVE_NEW_GUI
8573
b2e4f9dab7ad codec-cfg cannot be built when the gui is enabled - it fails to link with a
jkeil
parents: 7205
diff changeset
12 #endif
b2e4f9dab7ad codec-cfg cannot be built when the gui is enabled - it fails to link with a
jkeil
parents: 7205
diff changeset
13
16618
bad73cd81b23 mp_msg cleanup.
ods15
parents: 16379
diff changeset
14 #ifdef HAVE_NEW_GUI
16374
e2e231134056 Remove many annoying GTK includes in every compile line and remove GTK
ods15
parents: 14542
diff changeset
15 #include "Gui/interface.h"
1925
633a7f0d72a4 add gui error handling jol.
pontscho
parents: 1566
diff changeset
16 extern int use_gui;
633a7f0d72a4 add gui error handling jol.
pontscho
parents: 1566
diff changeset
17 #endif
1562
2caba2f48026 new message printing system
arpi
parents:
diff changeset
18 #include "mp_msg.h"
2caba2f48026 new message printing system
arpi
parents:
diff changeset
19
6306
786ab42c10be Extend maximum mp_msg message size, some translations need it or help message will be cutted.
atmos4
parents: 6048
diff changeset
20 /* maximum message length of mp_msg */
786ab42c10be Extend maximum mp_msg message size, some translations need it or help message will be cutted.
atmos4
parents: 6048
diff changeset
21 #define MSGSIZE_MAX 3072
786ab42c10be Extend maximum mp_msg message size, some translations need it or help message will be cutted.
atmos4
parents: 6048
diff changeset
22
17120
637a2f4ff216 Some more cola for msglevel, codec-cfg can't even call mp_msg_init or it'll
ods15
parents: 17108
diff changeset
23 int mp_msg_levels[MSGT_MAX]; // verbose level of this module. inited to 2
637a2f4ff216 Some more cola for msglevel, codec-cfg can't even call mp_msg_init or it'll
ods15
parents: 17108
diff changeset
24 int mp_msg_level_all = MSGL_STATUS;
637a2f4ff216 Some more cola for msglevel, codec-cfg can't even call mp_msg_init or it'll
ods15
parents: 17108
diff changeset
25 int verbose = 0;
1562
2caba2f48026 new message printing system
arpi
parents:
diff changeset
26
5220
4afbe13150e6 splitted mp_msg_init and mp_msg_set_level and added i18n support to init
alex
parents: 5102
diff changeset
27 void mp_msg_init(){
17106
05af35012e4f new -msglevel option, constrols msg level for every msg module
ods15
parents: 16618
diff changeset
28 int i;
17440
de9a36b1082c MPLAYER_VERBOSE, new enviorment variable to control verbosity before init
ods15
parents: 17120
diff changeset
29 char *env = getenv("MPLAYER_VERBOSE");
de9a36b1082c MPLAYER_VERBOSE, new enviorment variable to control verbosity before init
ods15
parents: 17120
diff changeset
30 if (env)
de9a36b1082c MPLAYER_VERBOSE, new enviorment variable to control verbosity before init
ods15
parents: 17120
diff changeset
31 verbose = atoi(env);
5220
4afbe13150e6 splitted mp_msg_init and mp_msg_set_level and added i18n support to init
alex
parents: 5102
diff changeset
32 #ifdef USE_I18N
10415
c1247b33c424 moved some annonying messages to debug mode only
alex
parents: 8573
diff changeset
33 #ifdef MP_DEBUG
5220
4afbe13150e6 splitted mp_msg_init and mp_msg_set_level and added i18n support to init
alex
parents: 5102
diff changeset
34 fprintf(stdout, "Using GNU internationalization\n");
4afbe13150e6 splitted mp_msg_init and mp_msg_set_level and added i18n support to init
alex
parents: 5102
diff changeset
35 fprintf(stdout, "Original domain: %s\n", textdomain(NULL));
4afbe13150e6 splitted mp_msg_init and mp_msg_set_level and added i18n support to init
alex
parents: 5102
diff changeset
36 fprintf(stdout, "Original dirname: %s\n", bindtextdomain(textdomain(NULL),NULL));
10415
c1247b33c424 moved some annonying messages to debug mode only
alex
parents: 8573
diff changeset
37 #endif
5220
4afbe13150e6 splitted mp_msg_init and mp_msg_set_level and added i18n support to init
alex
parents: 5102
diff changeset
38 bindtextdomain("mplayer", PREFIX"/share/locale");
4afbe13150e6 splitted mp_msg_init and mp_msg_set_level and added i18n support to init
alex
parents: 5102
diff changeset
39 textdomain("mplayer");
10415
c1247b33c424 moved some annonying messages to debug mode only
alex
parents: 8573
diff changeset
40 #ifdef MP_DEBUG
5220
4afbe13150e6 splitted mp_msg_init and mp_msg_set_level and added i18n support to init
alex
parents: 5102
diff changeset
41 fprintf(stdout, "Current domain: %s\n", textdomain(NULL));
10415
c1247b33c424 moved some annonying messages to debug mode only
alex
parents: 8573
diff changeset
42 fprintf(stdout, "Current dirname: %s\n\n", bindtextdomain(textdomain(NULL),NULL));
c1247b33c424 moved some annonying messages to debug mode only
alex
parents: 8573
diff changeset
43 #endif
5220
4afbe13150e6 splitted mp_msg_init and mp_msg_set_level and added i18n support to init
alex
parents: 5102
diff changeset
44 #endif
17106
05af35012e4f new -msglevel option, constrols msg level for every msg module
ods15
parents: 16618
diff changeset
45 for(i=0;i<MSGT_MAX;i++) mp_msg_levels[i] = -2;
1562
2caba2f48026 new message printing system
arpi
parents:
diff changeset
46 }
2caba2f48026 new message printing system
arpi
parents:
diff changeset
47
7058
2e5c07262861 new v4l capture patch by Jindrich Makovicka <makovick@kmlinux.fjfi.cvut.cz>:
arpi
parents: 6306
diff changeset
48 int mp_msg_test(int mod, int lev)
2e5c07262861 new v4l capture patch by Jindrich Makovicka <makovick@kmlinux.fjfi.cvut.cz>:
arpi
parents: 6306
diff changeset
49 {
17106
05af35012e4f new -msglevel option, constrols msg level for every msg module
ods15
parents: 16618
diff changeset
50 return lev <= (mp_msg_levels[mod] == -2 ? mp_msg_level_all + verbose : mp_msg_levels[mod]);
7058
2e5c07262861 new v4l capture patch by Jindrich Makovicka <makovick@kmlinux.fjfi.cvut.cz>:
arpi
parents: 6306
diff changeset
51 }
2e5c07262861 new v4l capture patch by Jindrich Makovicka <makovick@kmlinux.fjfi.cvut.cz>:
arpi
parents: 6306
diff changeset
52
16618
bad73cd81b23 mp_msg cleanup.
ods15
parents: 16379
diff changeset
53 void mp_msg(int mod, int lev, const char *format, ... ){
5102
17f97ed8259e added i18n support
alex
parents: 4888
diff changeset
54 va_list va;
6306
786ab42c10be Extend maximum mp_msg message size, some translations need it or help message will be cutted.
atmos4
parents: 6048
diff changeset
55 char tmp[MSGSIZE_MAX];
5102
17f97ed8259e added i18n support
alex
parents: 4888
diff changeset
56
17106
05af35012e4f new -msglevel option, constrols msg level for every msg module
ods15
parents: 16618
diff changeset
57 if (!mp_msg_test(mod, lev)) return; // do not display
5286
30caf02c0eae 10l - va_start needs teh pointer to stack - not the translated message
arpi
parents: 5220
diff changeset
58 va_start(va, format);
6306
786ab42c10be Extend maximum mp_msg message size, some translations need it or help message will be cutted.
atmos4
parents: 6048
diff changeset
59 vsnprintf(tmp, MSGSIZE_MAX, mp_gettext(format), va);
7195
a5b2566f3c2b print only fatal/error/warning to stderr, others go to stdout
arpi
parents: 7058
diff changeset
60 va_end(va);
10853
1e04ac498440 force a new line if a message is very long
pl
parents: 10415
diff changeset
61 tmp[MSGSIZE_MAX-2] = '\n';
6306
786ab42c10be Extend maximum mp_msg message size, some translations need it or help message will be cutted.
atmos4
parents: 6048
diff changeset
62 tmp[MSGSIZE_MAX-1] = 0;
5102
17f97ed8259e added i18n support
alex
parents: 4888
diff changeset
63
16618
bad73cd81b23 mp_msg cleanup.
ods15
parents: 16379
diff changeset
64 #ifdef HAVE_NEW_GUI
5102
17f97ed8259e added i18n support
alex
parents: 4888
diff changeset
65 if(use_gui)
16618
bad73cd81b23 mp_msg cleanup.
ods15
parents: 16379
diff changeset
66 guiMessageBox(lev, tmp);
5102
17f97ed8259e added i18n support
alex
parents: 4888
diff changeset
67 #endif
17f97ed8259e added i18n support
alex
parents: 4888
diff changeset
68
7200
9a123ba671fd - warnings enabled for GUI mode
arpi
parents: 7195
diff changeset
69 #ifdef MSG_USE_COLORS
10415
c1247b33c424 moved some annonying messages to debug mode only
alex
parents: 8573
diff changeset
70 /* that's only a silly color test */
16379
cdd8c0dfc19b improve colorization
michael
parents: 16374
diff changeset
71 #ifdef MP_ANNOY_ME
7200
9a123ba671fd - warnings enabled for GUI mode
arpi
parents: 7195
diff changeset
72 { int c;
9a123ba671fd - warnings enabled for GUI mode
arpi
parents: 7195
diff changeset
73 static int flag=1;
9a123ba671fd - warnings enabled for GUI mode
arpi
parents: 7195
diff changeset
74 if(flag)
16379
cdd8c0dfc19b improve colorization
michael
parents: 16374
diff changeset
75 for(c=0;c<24;c++)
7200
9a123ba671fd - warnings enabled for GUI mode
arpi
parents: 7195
diff changeset
76 printf("\033[%d;3%dm*** COLOR TEST %d ***\n",(c>7),c&7,c);
9a123ba671fd - warnings enabled for GUI mode
arpi
parents: 7195
diff changeset
77 flag=0;
9a123ba671fd - warnings enabled for GUI mode
arpi
parents: 7195
diff changeset
78 }
9a123ba671fd - warnings enabled for GUI mode
arpi
parents: 7195
diff changeset
79 #endif
16379
cdd8c0dfc19b improve colorization
michael
parents: 16374
diff changeset
80 { unsigned char v_colors[10]={9,1,3,15,7,2,2,8,8,8};
cdd8c0dfc19b improve colorization
michael
parents: 16374
diff changeset
81 static const char *lev_text[]= {
cdd8c0dfc19b improve colorization
michael
parents: 16374
diff changeset
82 "FATAL",
cdd8c0dfc19b improve colorization
michael
parents: 16374
diff changeset
83 "ERROR",
cdd8c0dfc19b improve colorization
michael
parents: 16374
diff changeset
84 "WARN",
cdd8c0dfc19b improve colorization
michael
parents: 16374
diff changeset
85 "HINT",
cdd8c0dfc19b improve colorization
michael
parents: 16374
diff changeset
86 "INFO",
cdd8c0dfc19b improve colorization
michael
parents: 16374
diff changeset
87 "STATUS",
cdd8c0dfc19b improve colorization
michael
parents: 16374
diff changeset
88 "V",
cdd8c0dfc19b improve colorization
michael
parents: 16374
diff changeset
89 "DGB2",
cdd8c0dfc19b improve colorization
michael
parents: 16374
diff changeset
90 "DGB3",
cdd8c0dfc19b improve colorization
michael
parents: 16374
diff changeset
91 "DGB4"};
cdd8c0dfc19b improve colorization
michael
parents: 16374
diff changeset
92 static const char *mod_text[]= {
cdd8c0dfc19b improve colorization
michael
parents: 16374
diff changeset
93 "GLOBAL",
cdd8c0dfc19b improve colorization
michael
parents: 16374
diff changeset
94 "CPLAYER",
cdd8c0dfc19b improve colorization
michael
parents: 16374
diff changeset
95 "GPLAYER",
cdd8c0dfc19b improve colorization
michael
parents: 16374
diff changeset
96 "VIDEOOUT",
cdd8c0dfc19b improve colorization
michael
parents: 16374
diff changeset
97 "AUDIOOUT",
cdd8c0dfc19b improve colorization
michael
parents: 16374
diff changeset
98 "DEMUXER",
cdd8c0dfc19b improve colorization
michael
parents: 16374
diff changeset
99 "DS",
cdd8c0dfc19b improve colorization
michael
parents: 16374
diff changeset
100 "DEMUX",
cdd8c0dfc19b improve colorization
michael
parents: 16374
diff changeset
101 "HEADER",
cdd8c0dfc19b improve colorization
michael
parents: 16374
diff changeset
102 "AVSYNC",
cdd8c0dfc19b improve colorization
michael
parents: 16374
diff changeset
103 "AUTOQ",
cdd8c0dfc19b improve colorization
michael
parents: 16374
diff changeset
104 "CFGPARSER",
cdd8c0dfc19b improve colorization
michael
parents: 16374
diff changeset
105 "DECAUDIO",
cdd8c0dfc19b improve colorization
michael
parents: 16374
diff changeset
106 "DECVIDEO",
cdd8c0dfc19b improve colorization
michael
parents: 16374
diff changeset
107 "SEEK",
cdd8c0dfc19b improve colorization
michael
parents: 16374
diff changeset
108 "WIN32",
cdd8c0dfc19b improve colorization
michael
parents: 16374
diff changeset
109 "OPEN",
cdd8c0dfc19b improve colorization
michael
parents: 16374
diff changeset
110 "DVD",
cdd8c0dfc19b improve colorization
michael
parents: 16374
diff changeset
111 "PARSEES",
cdd8c0dfc19b improve colorization
michael
parents: 16374
diff changeset
112 "LIRC",
cdd8c0dfc19b improve colorization
michael
parents: 16374
diff changeset
113 "STREAM",
cdd8c0dfc19b improve colorization
michael
parents: 16374
diff changeset
114 "CACHE",
cdd8c0dfc19b improve colorization
michael
parents: 16374
diff changeset
115 "MENCODER",
cdd8c0dfc19b improve colorization
michael
parents: 16374
diff changeset
116 "XACODEC",
cdd8c0dfc19b improve colorization
michael
parents: 16374
diff changeset
117 "TV",
cdd8c0dfc19b improve colorization
michael
parents: 16374
diff changeset
118 "OSDEP",
cdd8c0dfc19b improve colorization
michael
parents: 16374
diff changeset
119 "SPUDEC",
cdd8c0dfc19b improve colorization
michael
parents: 16374
diff changeset
120 "PLAYTREE",
cdd8c0dfc19b improve colorization
michael
parents: 16374
diff changeset
121 "INPUT",
cdd8c0dfc19b improve colorization
michael
parents: 16374
diff changeset
122 "VFILTER",
cdd8c0dfc19b improve colorization
michael
parents: 16374
diff changeset
123 "OSD",
cdd8c0dfc19b improve colorization
michael
parents: 16374
diff changeset
124 "NETWORK",
cdd8c0dfc19b improve colorization
michael
parents: 16374
diff changeset
125 "CPUDETECT",
cdd8c0dfc19b improve colorization
michael
parents: 16374
diff changeset
126 "CODECCFG",
cdd8c0dfc19b improve colorization
michael
parents: 16374
diff changeset
127 "SWS",
cdd8c0dfc19b improve colorization
michael
parents: 16374
diff changeset
128 "VOBSUB",
cdd8c0dfc19b improve colorization
michael
parents: 16374
diff changeset
129 "SUBREADER",
cdd8c0dfc19b improve colorization
michael
parents: 16374
diff changeset
130 "AFILTER",
cdd8c0dfc19b improve colorization
michael
parents: 16374
diff changeset
131 "NETST",
cdd8c0dfc19b improve colorization
michael
parents: 16374
diff changeset
132 "MUXER"};
cdd8c0dfc19b improve colorization
michael
parents: 16374
diff changeset
133
16618
bad73cd81b23 mp_msg cleanup.
ods15
parents: 16379
diff changeset
134 int c=v_colors[lev];
bad73cd81b23 mp_msg cleanup.
ods15
parents: 16379
diff changeset
135 int c2=(mod+1)%15+1;
16379
cdd8c0dfc19b improve colorization
michael
parents: 16374
diff changeset
136 static int header=1;
16618
bad73cd81b23 mp_msg cleanup.
ods15
parents: 16379
diff changeset
137 FILE *stream= (lev) <= MSGL_WARN ? stderr : stdout;
16379
cdd8c0dfc19b improve colorization
michael
parents: 16374
diff changeset
138 if(header){
16618
bad73cd81b23 mp_msg cleanup.
ods15
parents: 16379
diff changeset
139 fprintf(stream, "\033[%d;3%dm%9s\033[0;37m: ",c2>>3,c2&7, mod_text[mod]);
16379
cdd8c0dfc19b improve colorization
michael
parents: 16374
diff changeset
140 }
cdd8c0dfc19b improve colorization
michael
parents: 16374
diff changeset
141 fprintf(stream, "\033[%d;3%dm",c>>3,c&7);
cdd8c0dfc19b improve colorization
michael
parents: 16374
diff changeset
142 header= tmp[strlen(tmp)-1] == '\n'
17108
f9a03e3c8e23 1000l, reverting 2 more unrelated changes with last commit
ods15
parents: 17106
diff changeset
143 /*||tmp[strlen(tmp)-1] == '\r'*/;
7200
9a123ba671fd - warnings enabled for GUI mode
arpi
parents: 7195
diff changeset
144 }
9a123ba671fd - warnings enabled for GUI mode
arpi
parents: 7195
diff changeset
145 #endif
16618
bad73cd81b23 mp_msg cleanup.
ods15
parents: 16379
diff changeset
146 if (lev <= MSGL_WARN){
7195
a5b2566f3c2b print only fatal/error/warning to stderr, others go to stdout
arpi
parents: 7058
diff changeset
147 fprintf(stderr, "%s", tmp);fflush(stderr);
a5b2566f3c2b print only fatal/error/warning to stderr, others go to stdout
arpi
parents: 7058
diff changeset
148 } else {
a5b2566f3c2b print only fatal/error/warning to stderr, others go to stdout
arpi
parents: 7058
diff changeset
149 printf("%s", tmp);fflush(stdout);
a5b2566f3c2b print only fatal/error/warning to stderr, others go to stdout
arpi
parents: 7058
diff changeset
150 }
1562
2caba2f48026 new message printing system
arpi
parents:
diff changeset
151 }