summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--DOCS/tech/patches.txt4
-rw-r--r--DOCS/xml/cs/mencoder.xml6
-rw-r--r--DOCS/xml/de/mencoder.xml2
-rw-r--r--DOCS/xml/en/mencoder.xml8
-rw-r--r--DOCS/xml/fr/mencoder.xml6
-rw-r--r--DOCS/xml/hu/mencoder.xml6
-rw-r--r--DOCS/xml/it/encoding-guide.xml72
-rw-r--r--DOCS/xml/it/mencoder.xml6
-rw-r--r--DOCS/xml/pl/mencoder.xml6
-rw-r--r--DOCS/xml/ru/mencoder.xml6
-rw-r--r--DOCS/xml/zh_CN/mencoder.xml6
-rw-r--r--cfg-mencoder.h24
-rw-r--r--cfg-mplayer.h2
-rwxr-xr-xconfigure9
-rw-r--r--etc/codecs.conf4
-rw-r--r--libmenu/menu_chapsel.c2
-rw-r--r--libmenu/menu_cmdlist.c2
-rw-r--r--libmenu/menu_console.c2
-rw-r--r--libmenu/menu_dvbin.c2
-rw-r--r--libmenu/menu_filesel.c2
-rw-r--r--libmenu/menu_param.c2
-rw-r--r--libmenu/menu_pt.c2
-rw-r--r--libmenu/menu_txt.c2
-rw-r--r--libmpcodecs/ae_faac.c2
-rw-r--r--libmpcodecs/ae_lame.c2
-rw-r--r--libmpcodecs/ae_toolame.c2
-rw-r--r--libmpcodecs/ae_twolame.c2
-rw-r--r--libmpcodecs/ve_lavc.c4
-rw-r--r--libmpcodecs/ve_nuv.c2
-rw-r--r--libmpcodecs/ve_vfw.c2
-rw-r--r--libmpcodecs/ve_x264.c1
-rw-r--r--libmpcodecs/ve_x264.h26
-rw-r--r--libmpcodecs/ve_xvid4.c2
-rw-r--r--libmpdemux/demux_avi.c2
-rw-r--r--libmpdemux/muxer_lavf.c2
-rw-r--r--libmpdemux/muxer_mpeg.c2
-rw-r--r--libvo/gl_common.c618
-rw-r--r--libvo/gl_common.h163
-rw-r--r--libvo/matrixview.c156
-rw-r--r--libvo/vo_dxr2.c2
-rw-r--r--libvo/vo_gl.c284
-rw-r--r--libvo/vo_gl2.c38
-rw-r--r--libvo/vo_xvmc.c2
-rw-r--r--loader/wine/msacm.h2
-rw-r--r--stream/http.c7
-rw-r--r--stream/stream.c2
46 files changed, 825 insertions, 683 deletions
diff --git a/DOCS/tech/patches.txt b/DOCS/tech/patches.txt
index 692666d1a8..dfff16bf85 100644
--- a/DOCS/tech/patches.txt
+++ b/DOCS/tech/patches.txt
@@ -56,8 +56,8 @@ that your patch will be included.
and committed separately. Logical units should stay together, though,
i.e. do not send a patch for every file or directory you change.
- 9. Send your patch to the mplayer-dev-eng mailing list as a base64-encoded
- attachment with the subject line:
+ 9. Send your patch to the mplayer-dev-eng mailing list as attachment with
+ the subject line:
'[PATCH] very short description of the patch'.
In the mail, describe in a few sentences what you change and why.
The subject line is very important if you do not want your patch to get
diff --git a/DOCS/xml/cs/mencoder.xml b/DOCS/xml/cs/mencoder.xml
index 19c289d137..3b3ff87f3c 100644
--- a/DOCS/xml/cs/mencoder.xml
+++ b/DOCS/xml/cs/mencoder.xml
@@ -402,9 +402,9 @@ Budete-li respektovat následující omezení, neměli byste narazit na potíže
<title>Enkódování do PSP</title>
<para>
<screen>
-mencoder -ofps 30000/1001 -af lavcresample=24000 -vf harddup -of lavf \
- -oac lavc -ovc lavc -lavcopts aglobal=1:vglobal=1:vcodec=mpeg4:acodec=aac \
- -lavfopts format=psp \
+mencoder -ofps 30000/1001 -af lavcresample=24000 -vf harddup -oac lavc \
+ -ovc lavc -lavcopts aglobal=1:vglobal=1:vcodec=mpeg4:acodec=libfaac \
+ -of lavf -lavfopts format=psp \
<replaceable>vstupní.video</replaceable> -o <replaceable>výstupní.psp</replaceable>
</screen>
Poznamenejme, že můžete nastavit jméno videa pomocí
diff --git a/DOCS/xml/de/mencoder.xml b/DOCS/xml/de/mencoder.xml
index 299aa9f907..90afe5b91b 100644
--- a/DOCS/xml/de/mencoder.xml
+++ b/DOCS/xml/de/mencoder.xml
@@ -344,7 +344,7 @@
<para>
<screen>
mencoder -ofps 30000/1001 -af lavcresample=24000 -vf harddup -of lavf \
- -oac lavc -ovc lavc -lavcopts aglobal=1:vglobal=1:vcodec=mpeg4:acodec=aac \
+ -oac lavc -ovc lavc -lavcopts aglobal=1:vglobal=1:vcodec=mpeg4:acodec=libfaac \
-lavfopts format=psp \
<replaceable>input.video</replaceable> -o <replaceable>output.psp</replaceable>
</screen>
diff --git a/DOCS/xml/en/mencoder.xml b/DOCS/xml/en/mencoder.xml
index 8914d229d1..e866016740 100644
--- a/DOCS/xml/en/mencoder.xml
+++ b/DOCS/xml/en/mencoder.xml
@@ -401,9 +401,9 @@ You should be safe if you respect the following constraints:
<title>encode for PSP</title>
<para>
<screen>
-mencoder -ofps 30000/1001 -af lavcresample=24000 -vf harddup -of lavf \
- -oac lavc -ovc lavc -lavcopts aglobal=1:vglobal=1:vcodec=mpeg4:acodec=aac \
- -lavfopts format=psp \
+mencoder -ofps 30000/1001 -af lavcresample=24000 -vf harddup -oac lavc \
+ -ovc lavc -lavcopts aglobal=1:vglobal=1:vcodec=mpeg4:acodec=libfaac \
+ -of lavf -lavfopts format=psp \
<replaceable>input.video</replaceable> -o <replaceable>output.psp</replaceable>
</screen>
Note that you can set the title of the video with
@@ -615,7 +615,7 @@ mencoder mf://<replaceable>@list.txt</replaceable> -mf w=800:h=600:fps=25:type=j
</informalexample>
You can mix different types of images, regardless of the method you use
-&mdash; individual filenames, wildcard or file with list &mdash; provided of
+t &mdash; individual filenames, wildcard or file with list &mdash; provided of
course they have the same dimensions.
So you can e.g. take title frame from PNG file,
and then put a slideshow of your JPEG photos.
diff --git a/DOCS/xml/fr/mencoder.xml b/DOCS/xml/fr/mencoder.xml
index f147cd1de7..a10ad2101f 100644
--- a/DOCS/xml/fr/mencoder.xml
+++ b/DOCS/xml/fr/mencoder.xml
@@ -417,9 +417,9 @@ mencoder dvd://2 -ovc lavc -lavcopts vcodec=mpeg4:mbd=2:trell:vpass=2 \
<title>Encodage pour PSP</title>
<para>
<screen>
-mencoder -ofps 30000/1001 -af lavcresample=24000 -vf harddup -of lavf \
- -oac lavc -ovc lavc -lavcopts aglobal=1:vglobal=1:vcodec=mpeg4:acodec=aac \
- -lavfopts format=psp \
+mencoder -ofps 30000/1001 -af lavcresample=24000 -vf harddup -oac lavc \
+ -ovc lavc -lavcopts aglobal=1:vglobal=1:vcodec=mpeg4:acodec=libfaac \
+ -of lavf -lavfopts format=psp \
<replaceable>entree.video</replaceable> -o <replaceable>sortie.psp</replaceable>
</screen>
Vous pouvez définir le titre de la vidéo avec
diff --git a/DOCS/xml/hu/mencoder.xml b/DOCS/xml/hu/mencoder.xml
index 8ab02d7a54..aa44999324 100644
--- a/DOCS/xml/hu/mencoder.xml
+++ b/DOCS/xml/hu/mencoder.xml
@@ -400,9 +400,9 @@ Nyugodt lehetsz, ha a következő korlátokat figyelembe veszed:
<title>kódolás PSP-be</title>
<para>
<screen>
-mencoder -ofps 30000/1001 -af resample=24000 -vf harddup -of lavf \
- -oac lavc -ovc lavc -lavcopts aglobal=1:vglobal=1:vcodec=mpeg4:acodec=aac \
- -lavfopts format=psp \
+mencoder -ofps 30000/1001 -af lavcresample=24000 -vf harddup -oac lavc \
+ -ovc lavc -lavcopts aglobal=1:vglobal=1:vcodec=mpeg4:acodec=libfaac \
+ -of lavf -lavfopts format=psp \
<replaceable>bemenet.video</replaceable> -o <replaceable>kimenet.psp</replaceable>
</screen>
Figyelj rá, hogy beállíthatod a videó címét a
diff --git a/DOCS/xml/it/encoding-guide.xml b/DOCS/xml/it/encoding-guide.xml
index e0f1f4da07..dd326c2fa4 100644
--- a/DOCS/xml/it/encoding-guide.xml
+++ b/DOCS/xml/it/encoding-guide.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
-<!-- 44% synced with r22753 (row 2361) -->
+<!-- 44% synced with r22753 (row 2377) -->
<chapter id="encoding-guide">
<title>La codifica con <application>MEncoder</application></title>
@@ -2360,18 +2360,18 @@ tipi.
</listitem>
<listitem><formalpara>
- <title>About encoding parameters and quality:</title>
+ <title>Riguardo i parameti di codifica e la qualità:</title>
<para>
- Just because I recommend <option>mbd=2</option> here does not mean it
- should not be used elsewhere. Along with <option>trell</option>,
- <option>mbd=2</option> is one of the two
- <systemitem class="library">libavcodec</systemitem> options that
- increases quality the most, and you should always use at least those
- two unless the drop in encoding speed is prohibitive (e.g. realtime
- encoding). There are many other options to
- <systemitem class="library">libavcodec</systemitem> that increase
- encoding quality (and decrease encoding speed) but that is beyond
- the scope of this document.
+ Il fatto che qui venga cosigliata <option>mbd=2</option> non significa che
+ non si debba usare altrimenti. Insieme con <option>trell</option>,
+ <option>mbd=2</option> è una delle due opzioni di
+ <systemitem class="library">libavcodec</systemitem> che ottimizzano al
+ meglio la qualità e sarebbero sempre da utilizzare entrambe a meno che
+ l'aumento della velocità di codifica sua proibitivo (ad es. per la codifica
+ in tempo reale (realtime)). Ci sono molte altre opzioni di
+ <systemitem class="library">libavcodec</systemitem> che aumentano la
+ qualità (e rallentano la codifica), ma questo non è l'obiettivo di
+ questa documentaziione.
</para>
</formalpara></listitem>
@@ -2570,16 +2570,48 @@ mencoder dvd://2 -o <replaceable>title2.avi</replaceable> -ovc lavc -lavcopts vc
</thead>
<tbody>
<row>
+ <entry>ac3</entry>
+ <entry>Dolby Digital (AC-3)</entry>
+</row>
+<row>
+ <entry>adpcm_*</entry>
+ <entry>Adaptive PCM formats - see supplementary table</entry>
+</row>
+<row>
+ <entry>flac</entry>
+ <entry>Free Lossless Audio Codec (FLAC)</entry>
+</row>
+<row>
+ <entry>g726</entry>
+ <entry>G.726 ADPCM</entry>
+</row>
+<row>
+ <entry>libfaac</entry>
+ <entry>Advanced Audio Coding (AAC) - using FAAC</entry>
+</row>
+<row>
+ <entry>libgsm</entry>
+ <entry>ETSI GSM 06.10 full rate</entry>
+</row>
+<row>
+ <entry>libgsm_ms</entry>
+ <entry>Microsoft GSM</entry>
+</row>
+<row>
+ <entry>libmp3lame</entry>
+ <entry>MPEG-1 audio layer 3 (MP3) - using LAME</entry>
+</row>
+<row>
<entry>mp2</entry>
- <entry>MPEG Layer 2</entry>
+ <entry>MPEG-1 audio layer 2 (MP2)</entry>
</row>
<row>
- <entry>ac3</entry>
- <entry>AC-3, AKA Dolby Digital</entry>
+ <entry>pcm_*</entry>
+ <entry>PCM formats - see supplementary table</entry>
</row>
<row>
- <entry>adpcm_ima_wav</entry>
- <entry>IMA adaptive PCM (4 bits per sample, 4:1 compression)</entry>
+ <entry>roq_dpcm</entry>
+ <entry>Id Software RoQ DPCM</entry>
</row>
<row>
<entry>sonic</entry>
@@ -2591,15 +2623,15 @@ mencoder dvd://2 -o <replaceable>title2.avi</replaceable> -ovc lavc -lavcopts vc
</row>
<row>
<entry>vorbis</entry>
- <entry>Xiph Ogg Vorbis codec</entry>
+ <entry>Vorbis</entry>
</row>
<row>
<entry>wmav1</entry>
- <entry>Windows Media Audio v1 codec</entry>
+ <entry>Windows Media Audio v1</entry>
</row>
<row>
<entry>wmav2</entry>
- <entry>Windows Media Audio v2 codec</entry>
+ <entry>Windows Media Audio v2</entry>
</row>
</tbody>
</tgroup>
diff --git a/DOCS/xml/it/mencoder.xml b/DOCS/xml/it/mencoder.xml
index 35745d8413..dedd53c31f 100644
--- a/DOCS/xml/it/mencoder.xml
+++ b/DOCS/xml/it/mencoder.xml
@@ -401,9 +401,9 @@ Dovresti accertarti di rispettare i seguenti vincoli:
<title>codificare per PSP</title>
<para>
<screen>
-mencoder -ofps 30000/1001 -af lavcresample=24000 -vf harddup -of lavf \
- -oac lavc -ovc lavc -lavcopts aglobal=1:vglobal=1:vcodec=mpeg4:acodec=aac \
- -lavfopts format=psp \
+mencoder -ofps 30000/1001 -af lavcresample=24000 -vf harddup -oac lavc \
+ -ovc lavc -lavcopts aglobal=1:vglobal=1:vcodec=mpeg4:acodec=libfaac \
+ -of lavf -lavfopts format=psp \
<replaceable>input.video</replaceable> -o <replaceable>output.psp</replaceable>
</screen>
Nota che puoi impostare il titolo del video con
diff --git a/DOCS/xml/pl/mencoder.xml b/DOCS/xml/pl/mencoder.xml
index 3ad695a522..f14583bf38 100644
--- a/DOCS/xml/pl/mencoder.xml
+++ b/DOCS/xml/pl/mencoder.xml
@@ -387,9 +387,9 @@ Powinieneś byś bezpieczny, jeśli respektujesz poniższe ograniczenia:
<title>kodowanie dla PSP</title>
<para>
<screen>
-mencoder -ofps 30000/1001 -af lavcresample=24000 -vf harddup -of lavf \
- -oac lavc -ovc lavc -lavcopts aglobal=1:vglobal=1:vcodec=mpeg4:acodec=aac \
- -lavfopts format=psp:i_certify_that_my_video_stream_does_not_use_b_frames \
+mencoder -ofps 30000/1001 -af lavcresample=24000 -vf harddup -oac lavc \
+ -ovc lavc -lavcopts aglobal=1:vglobal=1:vcodec=mpeg4:acodec=libfaac \
+ -of lavf -lavfopts format=psp \
<replaceable>wejściowe.video</replaceable> -o <replaceable>wyjście.psp</replaceable>
</screen>
Możesz też ustawić tytuł filmu dzięki
diff --git a/DOCS/xml/ru/mencoder.xml b/DOCS/xml/ru/mencoder.xml
index d5376e4e33..e45ee509f1 100644
--- a/DOCS/xml/ru/mencoder.xml
+++ b/DOCS/xml/ru/mencoder.xml
@@ -394,9 +394,9 @@ Sony PSP, но, в зависимости от ревизии программн
<title>Кодирование для PSP</title>
<para>
<screen>
-mencoder -ofps 30000/1001 -af lavcresample=24000 -vf harddup -of lavf \
- -oac lavc -ovc lavc -lavcopts aglobal=1:vglobal=1:vcodec=mpeg4:acodec=aac \
- -lavfopts format=psp \
+mencoder -ofps 30000/1001 -af lavcresample=24000 -vf harddup -oac lavc \
+ -ovc lavc -lavcopts aglobal=1:vglobal=1:vcodec=mpeg4:acodec=libfaac \
+ -of lavf -lavfopts format=psp \
<replaceable>input.video</replaceable> -o <replaceable>output.psp</replaceable>
</screen>
Заметьте, что можно задать заголовок видео опцией
diff --git a/DOCS/xml/zh_CN/mencoder.xml b/DOCS/xml/zh_CN/mencoder.xml
index 81ab1170dc..878e2f4bec 100644
--- a/DOCS/xml/zh_CN/mencoder.xml
+++ b/DOCS/xml/zh_CN/mencoder.xml
@@ -364,9 +364,9 @@ PSP软件修改,对不同软件限制也许会有不同。
<title>编码到PSP</title>
<para>
<screen>
-mencoder -ofps 30000/1001 -af lavcresample=24000 -vf harddup -of lavf \
- -oac lavc -ovc lavc -lavcopts aglobal=1:vglobal=1:vcodec=mpeg4:acodec=aac \
- -lavfopts format=psp:i_certify_that_my_video_stream_does_not_use_b_frames \
+mencoder -ofps 30000/1001 -af lavcresample=24000 -vf harddup -oac lavc \
+ -ovc lavc -lavcopts aglobal=1:vglobal=1:vcodec=mpeg4:acodec=libfaac \
+ -of lavf -lavfopts format=psp \
<replaceable>input.video</replaceable> -o <replaceable>output.psp</replaceable>
</screen>
注意你可以通过
diff --git a/cfg-mencoder.h b/cfg-mencoder.h
index ac2ffd8e10..c067bcc8d7 100644
--- a/cfg-mencoder.h
+++ b/cfg-mencoder.h
@@ -23,24 +23,22 @@
* config for cfgparser
*/
+#include "libmpcodecs/ve_x264.h"
#include "cfg-common.h"
extern int sws_flags;
extern char *pp_help;
-extern m_option_t lameopts_conf[];
-extern m_option_t lavcopts_conf[];
-extern m_option_t toolameopts_conf[];
-extern m_option_t twolameopts_conf[];
-extern m_option_t faacopts_conf[];
-extern m_option_t vfwopts_conf[];
-extern m_option_t xvidencopts_conf[];
-
-void x264enc_set_param(const m_option_t* opt, char* arg);
-
-extern m_option_t nuvopts_conf[];
-extern m_option_t mpegopts_conf[];
-extern m_option_t lavfopts_conf[];
+extern const m_option_t faacopts_conf[];
+extern const m_option_t lameopts_conf[];
+extern const m_option_t lavcopts_conf[];
+extern const m_option_t lavfopts_conf[];
+extern const m_option_t mpegopts_conf[];
+extern const m_option_t nuvopts_conf[];
+extern const m_option_t toolameopts_conf[];
+extern const m_option_t twolameopts_conf[];
+extern const m_option_t vfwopts_conf[];
+extern const m_option_t xvidencopts_conf[];
const m_option_t ovc_conf[]={
{"copy", &out_video_codec, CONF_TYPE_FLAG, 0, 0, VCODEC_COPY, NULL},
diff --git a/cfg-mplayer.h b/cfg-mplayer.h
index a622c5c0b6..dd4f08a8f6 100644
--- a/cfg-mplayer.h
+++ b/cfg-mplayer.h
@@ -53,7 +53,7 @@ extern int menu_fribidi_flip_commas;
extern char *unrar_executable;
-extern m_option_t dxr2_opts[];
+extern const m_option_t dxr2_opts[];
extern int sws_flags;
extern char* pp_help;
diff --git a/configure b/configure
index b61a212c7e..681a6b983c 100755
--- a/configure
+++ b/configure
@@ -1815,7 +1815,9 @@ cat > $TMPC << EOF
int main(void) { return 0; }
EOF
if test "$_runtime_cpudetection" = no ; then
- cc_check -march=native && proc=native
+ if test $cc_vendor != "intel" ; then
+ cc_check -march=native && proc=native
+ fi
if test "$proc" = "k8"; then
cc_check -march=$proc $cpuopt=$proc || proc=athlon-xp
fi
@@ -1963,7 +1965,9 @@ int main(void) { return 0; }
EOF
# This is a stripped-down version of the i386 fallback.
if test "$_runtime_cpudetection" = no ; then
- cc_check -march=native && proc=native
+ if test $cc_vendor != "intel" ; then
+ cc_check -march=native && proc=native
+ fi
# --- AMD processors ---
if test "$proc" = "k8"; then
cc_check -march=$proc $cpuopt=$proc || proc=athlon-xp
@@ -8492,7 +8496,6 @@ $def_yasm
#define CONFIG_LIBVORBIS 0
#define CONFIG_POWERPC_PERF 0
#define CONFIG_SMALL 0
-#define CONFIG_SWSCALE 1
#define CONFIG_SWSCALE_ALPHA 1
#define HAVE_ATTRIBUTE_PACKED 1
diff --git a/etc/codecs.conf b/etc/codecs.conf
index 808f1e3335..a8fc871bd7 100644
--- a/etc/codecs.conf
+++ b/etc/codecs.conf
@@ -3044,7 +3044,7 @@ videocodec ffc93
dll c93
out BGR8
-videocodec eatgv
+videocodec ffeatgv
info "FFmpeg Electronic Arts TGV"
status working
fourcc fVGT
@@ -4242,7 +4242,7 @@ audiocodec dvdpcm
format 0x10001
driver dvdpcm
-audiocodec lpcm
+audiocodec fflpcm
info "Bluray LPCM"
status working
fourcc BPCM ; internal MPlayer FourCC
diff --git a/libmenu/menu_chapsel.c b/libmenu/menu_chapsel.c
index f350655311..fb159eaeee 100644
--- a/libmenu/menu_chapsel.c
+++ b/libmenu/menu_chapsel.c
@@ -61,7 +61,7 @@ static struct menu_priv_s cfg_dflt = {
#define ST_OFF(m) M_ST_OFF(struct menu_priv_s,m)
-static m_option_t cfg_fields[] = {
+static const m_option_t cfg_fields[] = {
MENU_LIST_PRIV_FIELDS,
{ "title", ST_OFF (title), CONF_TYPE_STRING, 0, 0, 0, NULL },
{ "auto-close", ST_OFF (auto_close), CONF_TYPE_FLAG, 0, 0, 1, NULL },
diff --git a/libmenu/menu_cmdlist.c b/libmenu/menu_cmdlist.c
index 4d29fa14fe..d09c45fc8d 100644
--- a/libmenu/menu_cmdlist.c
+++ b/libmenu/menu_cmdlist.c
@@ -58,7 +58,7 @@ static struct menu_priv_s cfg_dflt = {
MENU_LIST_PRIV_DFLT,
};
-static m_option_t cfg_fields[] = {
+static const m_option_t cfg_fields[] = {
MENU_LIST_PRIV_FIELDS,
{ "title",M_ST_OFF(struct menu_priv_s,p.title), CONF_TYPE_STRING, 0, 0, 0, NULL },
{ NULL, NULL, NULL, 0,0,0,NULL }
diff --git a/libmenu/menu_console.c b/libmenu/menu_console.c
index f0bb029e91..8e82412327 100644
--- a/libmenu/menu_console.c
+++ b/libmenu/menu_console.c
@@ -109,7 +109,7 @@ static struct menu_priv_s cfg_dflt = {
#define ST_OFF(m) M_ST_OFF(struct menu_priv_s,m)
-static m_option_t cfg_fields[] = {
+static const m_option_t cfg_fields[] = {
{ "prompt", ST_OFF(mp_prompt), CONF_TYPE_STRING, M_OPT_MIN, 1, 0, NULL },
{ "child-prompt", ST_OFF(child_prompt), CONF_TYPE_STRING, M_OPT_MIN, 1, 0, NULL },
{ "buffer-lines", ST_OFF(buf_lines), CONF_TYPE_INT, M_OPT_MIN, 5, 0, NULL },
diff --git a/libmenu/menu_dvbin.c b/libmenu/menu_dvbin.c
index e2b99a0f07..35ce114687 100644
--- a/libmenu/menu_dvbin.c
+++ b/libmenu/menu_dvbin.c
@@ -64,7 +64,7 @@ struct menu_priv_s {
#define ST_OFF(m) M_ST_OFF(struct menu_priv_s, m)
#define mpriv (menu->priv)
-static m_option_t cfg_fields[] = {
+static const m_option_t cfg_fields[] = {
MENU_LIST_PRIV_FIELDS,
{ "title", ST_OFF(title), CONF_TYPE_STRING, 0, 0, 0, NULL },
{ "auto-close", ST_OFF(auto_close), CONF_TYPE_FLAG, 0, 0, 1, NULL },
diff --git a/libmenu/menu_filesel.c b/libmenu/menu_filesel.c
index fd16642ddf..aa15cc0147 100644
--- a/libmenu/menu_filesel.c
+++ b/libmenu/menu_filesel.c
@@ -79,7 +79,7 @@ static struct menu_priv_s cfg_dflt = {
#define ST_OFF(m) M_ST_OFF(struct menu_priv_s,m)
-static m_option_t cfg_fields[] = {
+static const m_option_t cfg_fields[] = {
MENU_LIST_PRIV_FIELDS,
{ "path", ST_OFF(path), CONF_TYPE_STRING, 0, 0, 0, NULL },
{ "title", ST_OFF(title), CONF_TYPE_STRING, 0, 0, 0, NULL },
diff --git a/libmenu/menu_param.c b/libmenu/menu_param.c
index f1836dffe0..135761b3d0 100644
--- a/libmenu/menu_param.c
+++ b/libmenu/menu_param.c
@@ -68,7 +68,7 @@ static struct menu_priv_s cfg_dflt = {
1
};
-static m_option_t cfg_fields[] = {
+static const m_option_t cfg_fields[] = {
MENU_LIST_PRIV_FIELDS,
{ "title", M_ST_OFF(menu_list_priv_t,title), CONF_TYPE_STRING, 0, 0, 0, NULL },
{ "na", M_ST_OFF(struct menu_priv_s,na), CONF_TYPE_STRING, 0, 0, 0, NULL },
diff --git a/libmenu/menu_pt.c b/libmenu/menu_pt.c
index ceba4de41a..7008db2896 100644
--- a/libmenu/menu_pt.c
+++ b/libmenu/menu_pt.c
@@ -59,7 +59,7 @@ static struct menu_priv_s cfg_dflt = {
#define ST_OFF(m) M_ST_OFF(struct menu_priv_s,m)
-static m_option_t cfg_fields[] = {
+static const m_option_t cfg_fields[] = {
MENU_LIST_PRIV_FIELDS,
{ "title", ST_OFF(title), CONF_TYPE_STRING, 0, 0, 0, NULL },
{ "auto-close", ST_OFF(auto_close), CONF_TYPE_FLAG, 0, 0, 1, NULL },
diff --git a/libmenu/menu_txt.c b/libmenu/menu_txt.c
index 7064167b67..308d9547c0 100644
--- a/libmenu/menu_txt.c
+++ b/libmenu/menu_txt.c
@@ -55,7 +55,7 @@ static struct menu_priv_s cfg_dflt = {
#define ST_OFF(m) M_ST_OFF(struct menu_priv_s,m)
-static m_option_t cfg_fields[] = {
+static const m_option_t cfg_fields[] = {
{ "minbor", ST_OFF(minb), CONF_TYPE_INT, M_OPT_MIN, 0, 0, NULL },
{ "hspace", ST_OFF(hspace), CONF_TYPE_INT, M_OPT_MIN, 0, 0, NULL },
{ "file", ST_OFF(file), CONF_TYPE_STRING, 0, 0, 0, NULL },
diff --git a/libmpcodecs/ae_faac.c b/libmpcodecs/ae_faac.c
index 33c994757d..63c716378d 100644
--- a/libmpcodecs/ae_faac.c
+++ b/libmpcodecs/ae_faac.c
@@ -52,7 +52,7 @@ static unsigned long samples_input, max_bytes_output;
static unsigned char *decoder_specific_buffer = NULL;
static unsigned long decoder_specific_len = 0;
-m_option_t faacopts_conf[] = {
+const m_option_t faacopts_conf[] = {
{"br", &param_bitrate, CONF_TYPE_INT, 0, 0, 0, NULL},
{"quality", &param_quality, CONF_TYPE_INT, CONF_RANGE, 0, 1000, NULL},
{"object", &param_object_type, CONF_TYPE_INT, CONF_RANGE, 1, 4, NULL},
diff --git a/libmpcodecs/ae_lame.c b/libmpcodecs/ae_lame.c
index ec748d77c5..90ed31dfe7 100644
--- a/libmpcodecs/ae_lame.c
+++ b/libmpcodecs/ae_lame.c
@@ -106,7 +106,7 @@ static int lame_presets_set( lame_t gfp, int fast, int cbr, const char* preset_
-m_option_t lameopts_conf[]={
+const m_option_t lameopts_conf[] = {
{"q", &lame_param_quality, CONF_TYPE_INT, CONF_RANGE, 0, 9, NULL},
{"aq", &lame_param_algqual, CONF_TYPE_INT, CONF_RANGE, 0, 9, NULL},
{"vbr", &lame_param_vbr, CONF_TYPE_INT, CONF_RANGE, 0, vbr_max_indicator, NULL},
diff --git a/libmpcodecs/ae_toolame.c b/libmpcodecs/ae_toolame.c
index 851fa845f9..077b83d740 100644
--- a/libmpcodecs/ae_toolame.c
+++ b/libmpcodecs/ae_toolame.c
@@ -43,7 +43,7 @@ static int
static float param_vbr = 0;
static char *param_mode = "stereo";
-m_option_t toolameopts_conf[] = {
+const m_option_t toolameopts_conf[] = {
{"br", &param_bitrate, CONF_TYPE_INT, 0, 0, 0, NULL},
{"mode", &param_mode, CONF_TYPE_STRING, 0, 0, 0, NULL},
{"psy", &param_psy, CONF_TYPE_INT, CONF_RANGE, -1, 4, NULL},
diff --git a/libmpcodecs/ae_twolame.c b/libmpcodecs/ae_twolame.c
index e15206dee6..52e6ea8417 100644
--- a/libmpcodecs/ae_twolame.c
+++ b/libmpcodecs/ae_twolame.c
@@ -43,7 +43,7 @@ static int
static float param_vbr = 0;
static char *param_mode = "stereo";
-m_option_t twolameopts_conf[] = {
+const m_option_t twolameopts_conf[] = {
{"br", &param_bitrate, CONF_TYPE_INT, 0, 0, 0, NULL},
{"mode", &param_mode, CONF_TYPE_STRING, 0, 0, 0, NULL},
{"psy", &param_psy, CONF_TYPE_INT, CONF_RANGE, -1, 4, NULL},
diff --git a/libmpcodecs/ve_lavc.c b/libmpcodecs/ve_lavc.c
index 064d34b5f0..febfa04a45 100644
--- a/libmpcodecs/ve_lavc.c
+++ b/libmpcodecs/ve_lavc.c
@@ -182,8 +182,7 @@ static char *lavc_param_avopt = NULL;
#include "m_option.h"
-#ifdef CONFIG_LIBAVCODEC
-m_option_t lavcopts_conf[]={
+const m_option_t lavcopts_conf[]={
{"acodec", &lavc_param_acodec, CONF_TYPE_STRING, 0, 0, 0, NULL},
{"abitrate", &lavc_param_abitrate, CONF_TYPE_INT, CONF_RANGE, 1, 1000000, NULL},
{"atag", &lavc_param_atag, CONF_TY