diff options
65 files changed, 756 insertions, 686 deletions
diff --git a/DOCS/man/en/mplayer.1 b/DOCS/man/en/mplayer.1 index e9065e941b..01e48d33d9 100644 --- a/DOCS/man/en/mplayer.1 +++ b/DOCS/man/en/mplayer.1 @@ -267,7 +267,7 @@ Toggle frame dropping states: none / skip display / skip decoding (see \-framedrop and \-hardframedrop). .IPs "v\ \ \ \ " Toggle subtitle visibility. -.IPs "j\ \ \ \ " +.IPs "j and J" Cycle through the available subtitles. .IPs "y and g" Step forward/backward in the subtitle list. @@ -2009,7 +2009,7 @@ tv://1, tv://TV1, tv_set_channel 1, tv_set_channel TV1 .IPs [brightness|contrast|hue|saturation]=<\-100\-100> Set the image equalizer on the card. .IPs audiorate=<value> -Set audio capture bitrate. +Set input audio sample rate. .IPs forceaudio Capture audio even if there are no audio sources reported by v4l. .IPs "alsa\ " @@ -4935,8 +4935,12 @@ This degrades quality a lot of in almost all cases Skips decoding of frames completely. Big speedup, but jerky motion and sometimes bad artifacts (see skiploopfilter for available skip values). -.IPs "threads=<1\-8> (MPEG-1/2 and H.264 only)" -number of threads to use for decoding (default: 1) +.IPs "threads=<0\-16>" +Number of threads to use for decoding. +Whether threading is actually supported depends on codec. +0 means autodetect number of cores on the machine and use that, up to the +maximum of 16. +(default: 0) .IPs vismv=<value> Visualize motion vectors. .RSss diff --git a/DOCS/man/zh_CN/mplayer.1 b/DOCS/man/zh_CN/mplayer.1 index fce0482906..e0b17028af 100644 --- a/DOCS/man/zh_CN/mplayer.1 +++ b/DOCS/man/zh_CN/mplayer.1 @@ -1,4 +1,4 @@ -.\" sync with en/mplayer.1 rev. 32566 +.\" sync with en/mplayer.1 rev. 32661 .\" Encoding: UTF-8 .\" .\" MPlayer (C) 2000-2010 MPlayer 团队 @@ -2402,8 +2402,8 @@ MPlayer 在 verbose (\-v) 模式下会打印可用的语言。 .PD 1 . .TP -.B "\-subcc \ " -显示 DVD 的隐藏式(CC)字幕。 +.B "\-subcc <1\-4>\ " +显示来自指定频道的 DVD 外挂字幕。 它们 .B 不 是 VOB 字幕, 它们是为听力有障碍的人准备的特殊的 ASCII 字幕, @@ -9609,7 +9609,7 @@ MPlayer与其它一些播放器能正确播放这些文件,除此之外的播 . .PP .sp 1 -以下选项只存在于Xvid 1.1.x中。 +以下选项只适用于 Xvid 1.1.x 以及之后的版本。 . .TP .B bvhq=<0|1> @@ -9617,9 +9617,29 @@ MPlayer与其它一些播放器能正确播放这些文件,除此之外的播 选运动矢量,对于P帧这种方式是通过vhq选项实现的。 该方式产生的B帧看上去较好,而同时也几乎不影响性能(默认值:1)。 . +.TP +.B vbv_bufsize=<0...>(仅用于二阶段编码模式) +以比特为单位指定视频缓冲校验器(VBV)的缓冲大小(默认值:0 \- 禁用 VBV 校 +验)。 +VBV 提供限制峰值比特率的功能,以使视频能在硬件播放器上正常播放。 +例如,Home 配置集使用 vbv_bufsize=3145728。 +如果设置了 vbv_bufsize,则应当同时设置 vbv_maxrate。 +注意,没有所谓 vbv_peakrate 的选项,因为 Xvid 实际上并不使用这种选项控制比 +特率;其它的 VBV 选项足以限制峰值比特率。 +. +.TP +.B vbv_initial=<0...vbv_bufsize>(仅用于二阶段编码模式) +以比特为单位指定 VBV 缓冲初始填充的大小(默认值:vbv_bufsize 的 75%)。 +默认值通常是你所需的值。 +. +.TP +.B vbv_maxrate=<0...>(仅用于二阶段编码模式) +以比特/秒为单位指定最大处理的比特率(默认值:0)。 +例如,Home 配置集使用 vbv_maxrate=4854000。 +. .PP .sp 1 -以下选项只存在于1.2.x版的Xvid中。 +以下选项只适用于 Xvid 1.2.x 以及之后的版本。 . .TP .B threads=<0\-n> diff --git a/DOCS/tech/slave.txt b/DOCS/tech/slave.txt index 6187affab5..d95ef41d84 100644 --- a/DOCS/tech/slave.txt +++ b/DOCS/tech/slave.txt @@ -20,6 +20,10 @@ Most slave mode commands are equivalent to command line options, though not necessarily under the same name. Detailed descriptions can be found in the man page. +NOTE: the following paragraph is mostly obsolete; tricky pause handling +was required in old MPlayer versions where all commands unpaused by default. +Now running commands does not require leaving pause state any more, and +the prefixes described here should not be required in normal use. All commands can be prefixed with one of "pausing ", "pausing_keep ", or "pausing_toggle ". "pausing " tells MPlayer to pause as soon as possible after processing the command. "pausing_keep " tells MPlayer to do so only if @@ -36,11 +40,6 @@ since other values do not make much sense for them. Various tips and tricks (please help expand it!): -- Try using something like - pausing_keep_force pt_step 1 - get_property pause - to switch to the next file. It avoids audio playback starting to play - the old file for a short time before switching to the new one. - To ensure the user can't control MPlayer "behind your back" use something like -input nodefault-bindings -noconfig all @@ -183,9 +182,6 @@ screenshot <value> 0 Take a single screenshot. 1 Start/stop taking screenshot of each frame. -gui_[about|loadfile|loadsubtitle|play|playlist|preferences|skinbrowser|stop] - GUI actions - key_down_event <value> Inject <value> key code event into MPlayer. @@ -241,7 +237,8 @@ panscan <-1.0 - 1.0> | <0.0 - 1.0> <abs> absolute range. pause - Pause/unpause the playback. + Pause/unpause the playback (use "set_property pause X" to set a particular + value regardless of whether the player is already paused or not). frame_step Play one frame, then pause again. @@ -355,7 +352,8 @@ sub_select [value] Display subtitle with index [value]. Turn subtitle display off if [value] is -1 or greater than the highest available subtitle index. Cycle through the available subtitles if [value] is omitted or less - than -1. Supported subtitle sources are -sub options on the command + than -1 (forward or backward respectively). + Supported subtitle sources are -sub options on the command line, VOBsubs, DVD subtitles, and Ogg and Matroska text streams. This command is mainly for cycling all subtitles, if you want to set a specific subtitle, use sub_file, sub_vob, or sub_demux. @@ -365,26 +363,30 @@ sub_source [source] SUB_SOURCE_SUBS (0) for file subs SUB_SOURCE_VOBSUB (1) for VOBsub files SUB_SOURCE_DEMUX (2) for subtitle embedded in the media file or DVD subs. - If [source] is -1, will turn off subtitle display. If [source] less than -1, - will cycle between the first subtitle of each currently available sources. + If [source] is -1, will turn off subtitle display. + If [value] is omitted or less than -1, will cycle between the first subtitle + of each currently available source (forward or backward respectively). sub_file [value] Display subtitle specifid by [value] for file subs. The [value] is corresponding to ID_FILE_SUB_ID values reported by '-identify'. - If [value] is -1, will turn off subtitle display. If [value] less than -1, - will cycle all file subs. + If [value] is -1, will turn off subtitle display. + If [value] is omitted or less than -1, will cycle all file subs + (forward or backward respectively). sub_vob [value] Display subtitle specifid by [value] for vobsubs. The [value] is corresponding to ID_VOBSUB_ID values reported by '-identify'. - If [value] is -1, will turn off subtitle display. If [value] less than -1, - will cycle all vobsubs. + If [value] is -1, will turn off subtitle display. + If [value] is omitted or less than -1, will cycle all vobsubs + (forward or backward respectively). sub_demux [value] Display subtitle specifid by [value] for subtitles from DVD or embedded in media file. The [value] is corresponding to ID_SUBTITLE_ID values reported by '-identify'. If [value] is -1, will turn off subtitle display. - If [value] less than -1, will cycle all DVD subs or embedded subs. + If [value] is omitted or less than -1, will cycle all DVD subs or embedded subs + (forward or backward respectively). sub_scale <value> [abs] Adjust the subtitle size by +/- <value> or set it to <value> when [abs] @@ -520,7 +522,7 @@ speed float 0.01 100 X X X as -speed loop int -1 X X X as -loop hr_seek string X X X as -hr-seek pts_association_mode string X X X as -pts-association-mode -pause flag 0 1 X 1 if paused, use with pausing_keep_force +pause flag 0 1 X 1 if paused filename string X file playing wo path path string X file playing demuxer string X demuxer used diff --git a/DOCS/xml/cs/video.xml b/DOCS/xml/cs/video.xml index f8c1fd5ca9..03aec6dc08 100644 --- a/DOCS/xml/cs/video.xml +++ b/DOCS/xml/cs/video.xml @@ -1753,7 +1753,7 @@ Configure by měl detekovat vaši DVB kartu. Pokud ne, vynuťte detekci pomocí <screen>./configure --enable-dvb</screen> Pokud máte ost hlavičky na nestandardním místě, nastavte cestu pomocí <screen> -./configure --with-extraincdir=<replaceable>zdrojový adresář DVB</replaceable>/ost/include +./configure --extra-cflags=<replaceable>zdrojový adresář DVB</replaceable>/ost/include </screen> Pak kompilujte a instalujte obvyklým způsobem.</para> diff --git a/DOCS/xml/de/video.xml b/DOCS/xml/de/video.xml index ed0783df11..e6902b2922 100644 --- a/DOCS/xml/de/video.xml +++ b/DOCS/xml/de/video.xml @@ -1815,7 +1815,7 @@ make</screen> </para> <para> -<screen>./configure --with-extraincdir=<replaceable>DVB-Source-Verzeichnis</replaceable>/ost/include +<screen>./configure --extra-cflags=<replaceable>DVB-Source-Verzeichnis</replaceable>/ost/include </screen> </para> diff --git a/DOCS/xml/en/video.xml b/DOCS/xml/en/video.xml index 0c17340a0f..ffeef6d6c6 100644 --- a/DOCS/xml/en/video.xml +++ b/DOCS/xml/en/video.xml @@ -1274,7 +1274,7 @@ Alternatively, you can use a special kernel module, like this: <step><para> Then run <filename>configure</filename> again and pass the parameter <option>--enable-svgalib_helper</option> as well as - <option>--with-extraincdir=<replaceable>/path/to/svgalib_helper/sources/</replaceable>kernel/svgalib_helper</option>, + <option>--extra-cflags=<replaceable>/path/to/svgalib_helper/sources/</replaceable>kernel/svgalib_helper</option>, where <replaceable>/path/to/svgalib_helper/sources/</replaceable> has to be adjusted to wherever you extracted svgalib_helper sources. </para></step> diff --git a/DOCS/xml/es/video.xml b/DOCS/xml/es/video.xml index 21fd299ad4..4695319f4f 100644 --- a/DOCS/xml/es/video.xml +++ b/DOCS/xml/es/video.xml @@ -1823,7 +1823,7 @@ fuerce la detección con <para>Si tiene cabeceras ost en una ruta no estándar, establezca la ruta con</para> -<para><screen>./configure --with-extraincdir=<replaceable>directorio de fuentes de DVB</replaceable>/ost/include +<para><screen>./configure --extra-cflags=<replaceable>directorio de fuentes de DVB</replaceable>/ost/include </screen></para> <para>Y luego compile e instale del modo habitual.</para> diff --git a/DOCS/xml/fr/video.xml b/DOCS/xml/fr/video.xml index 2467c68e4d..6a1da6de5f 100644 --- a/DOCS/xml/fr/video.xml +++ b/DOCS/xml/fr/video.xml @@ -1800,7 +1800,7 @@ téléchargé <step><para> Puis lancez de nouveau <filename>configure</filename> en passant les paramètres <option>--enable-svgalib_helper</option> et - <option>--with-extraincdir=/path/to/svgalib_helper/sources</option>, + <option>--extra-cflags=/path/to/svgalib_helper/sources</option>, ajustés à l'emplacement où vous avez décompressé les sources. </para></step> <step><para> @@ -1996,7 +1996,7 @@ avec Si vous avez des entêtes ost dans un chemin non-standard, corrigez ce chemin avec <screen> -./configure --with-extraincdir= +./configure --extra-cflags= <replaceable>répertoire source DVB</replaceable>/ost/include </screen> Ensuite compilez et installez comme d'habitude.</para> diff --git a/DOCS/xml/hu/video.xml b/DOCS/xml/hu/video.xml index ee7ef9e4f9..e736dfa4de 100644 --- a/DOCS/xml/hu/video.xml +++ b/DOCS/xml/hu/video.xml @@ -1274,7 +1274,7 @@ Alternatívaként használhatsz egy speciális kernel modult, így: <step><para> Ezután futtasd le a <filename>configure</filename>-t újra és add meg neki a <option>--enable-svgalib_helper</option> és a - <option>--with-extraincdir=<replaceable>/eleresi/ut/svgalib_helper/forrasahoz/</replaceable>kernel/svgalib_helper</option> + <option>--extra-cflags=<replaceable>/eleresi/ut/svgalib_helper/forrasahoz/</replaceable>kernel/svgalib_helper</option> paramétereket, ahol a <replaceable>/eleresi/ut/svgalib_helper/forrasahoz/</replaceable> könyvtárat az svgalib_helper kicsomagolt forrását tartalmazó könyvtárnak megfelelően kell beállítani. </para></step> diff --git a/DOCS/xml/it/video.xml b/DOCS/xml/it/video.xml index f431829b95..cf980b0df2 100644 --- a/DOCS/xml/it/video.xml +++ b/DOCS/xml/it/video.xml @@ -1630,7 +1630,7 @@ Alternativamente puoi usare uno modulo del kernel speciale, come questo: <step><para> Poi esegui di nuovo <filename>configure</filename> passando i parametri <option>--enable-svgalib_helper</option> e - <option>--with-extraincdir=<replaceable>/percorso/dei/sorgenti/di/svgalib_helper</replaceable>kernel/svgalib_helper</option>, + <option>--extra-cflags=<replaceable>/percorso/dei/sorgenti/di/svgalib_helper</replaceable>kernel/svgalib_helper</option>, dove <replaceable>/percorso/dei/sorgenti/di/svgalib_helper</replaceable> deve puntare al percorso dove hai estratto i sorgenti di svgalib_helper. </para></step> @@ -1816,7 +1816,7 @@ Configure dovrebbe rilevare la tua scheda DVB. Se non lo fa, forzalo con <screen>./configure --enable-dvb</screen> Se hai gli header ost in un percorso non standard, imposta il percorso con <screen> -./configure --with-extraincdir=<replaceable>directory sorgenti DVB</replaceable>/ost/include +./configure --extra-cflags=<replaceable>directory sorgenti DVB</replaceable>/ost/include </screen> Poi compila ed installa come al solito.</para> diff --git a/DOCS/xml/pl/video.xml b/DOCS/xml/pl/video.xml index e9b97e438a..37cf6c8787 100644 --- a/DOCS/xml/pl/video.xml +++ b/DOCS/xml/pl/video.xml @@ -1762,7 +1762,7 @@ możesz wymusić obsługę DVB używając <para>Jeżeli Twoje nagłówki 'ost' znajdują się w niestandardowym miejscu, ustaw ścieżkę przy pomocy</para> -<para><screen>./configure --with-extraincdir=<replaceable>katalog ze źródłami DVB</replaceable>/ost/include</screen></para> +<para><screen>./configure --extra-cflags=<replaceable>katalog ze źródłami DVB</replaceable>/ost/include</screen></para> <para>Po czym skompiluj i zainstaluj jak zwykle.</para> diff --git a/DOCS/xml/ru/video.xml b/DOCS/xml/ru/video.xml index 8f94a461b5..409308a774 100644 --- a/DOCS/xml/ru/video.xml +++ b/DOCS/xml/ru/video.xml @@ -1766,7 +1766,7 @@ Ville Syrjala имеет <screen>./configure --enable-dvb</screen> Если заголовочные файлы ost находятся не в стандартных каталогах, укажите путь с <screen> -./configure --with-extraincdir=<replaceable>каталог исходников DVB</replaceable>/ost/include +./configure --extra-cflags=<replaceable>каталог исходников DVB</replaceable>/ost/include </screen> Затем компилируйте и устанавливайте как обычно. </para> @@ -505,6 +505,7 @@ SRCS_COMMON = asxparser.c \ libvo/osd.c \ libvo/sub.c \ osdep/findfiles.c \ + osdep/numcores.c \ osdep/$(GETCH) \ osdep/$(TIMER) \ stream/open.c \ @@ -83,6 +83,8 @@ int decode_avsub(struct sh_sub *sh, uint8_t **data, int *size, *endpts = *pts + sub.end_display_time / 1000.0; *pts += sub.start_display_time / 1000.0; } + if (got_sub && vo_spudec && sub.num_rects == 0) + spudec_set_paletted(vo_spudec, NULL, 0, NULL, 0, 0, 0, 0, *pts, *endpts); if (got_sub && sub.num_rects > 0) { switch (sub.rects[0]->type) { case SUBTITLE_BITMAP: @@ -297,14 +297,14 @@ static int mp_property_playback_speed(m_option_t *prop, int action, return M_PROPERTY_ERROR; M_PROPERTY_CLAMP(prop, *(float *) arg); opts->playback_speed = *(float *) arg; - build_afilter_chain(mpctx, mpctx->sh_audio, &ao_data); + reinit_audio_chain(mpctx); return M_PROPERTY_OK; case M_PROPERTY_STEP_UP: case M_PROPERTY_STEP_DOWN: opts->playback_speed += (arg ? *(float *) arg : 0.1) * (action == M_PROPERTY_STEP_DOWN ? -1 : 1); M_PROPERTY_CLAMP(prop, opts->playback_speed); - build_afilter_chain(mpctx, mpctx->sh_audio, &ao_data); + reinit_audio_chain(mpctx); return M_PROPERTY_OK; } return m_property_float_range(prop, action, arg, &opts->playback_speed); @@ -324,10 +324,8 @@ static int mp_property_filename(m_option_t *prop, int action, void *arg, char *f; if (!mpctx->filename) return M_PROPERTY_UNAVAILABLE; - if (((f = strrchr(mpctx->filename, '/')) - || (f = strrchr(mpctx->filename, '\\'))) && f[1]) - f++; - else + f = (char *)mp_basename(mpctx->filename); + if (!*f) f = mpctx->filename; return m_property_string_ro(prop, action, arg, f); } @@ -1551,10 +1549,7 @@ static int mp_property_sub(m_option_t *prop, int action, void *arg, sub_name = ass_track->name; #endif if (sub_name) { - char *tmp, *tmp2; - tmp = sub_name; - if ((tmp2 = strrchr(tmp, '/'))) - tmp = tmp2 + 1; + const char *tmp = mp_basename(sub_name); snprintf(*(char **) arg, 63, "(%d) %s%s", mpctx->set_of_sub_pos + 1, @@ -2502,8 +2497,8 @@ |