MPlayer-DOCS
Threads by month
- ----- 2026 -----
- April
- March
- February
- January
- ----- 2025 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2024 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2023 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2022 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2021 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2020 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2019 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2018 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2017 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2016 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2015 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2014 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2013 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2012 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2011 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2010 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2009 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2008 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2007 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2006 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2005 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2004 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2003 -----
- December
- November
- October
May 2004
- 10 participants
- 121 discussions
CVS change done by Diego Biurrun CVS
Update of /cvsroot/mplayer/homepage/src
In directory mail:/var2/tmp/cvs-serv26071
Modified Files:
dload.src.en
Log Message:
USA1 --> USA consistent mirror naming
goom patch does not apply anymore
Sascha's Windows packages
Index: dload.src.en
===================================================================
RCS file: /cvsroot/mplayer/homepage/src/dload.src.en,v
retrieving revision 1.70
retrieving revision 1.71
diff -u -r1.70 -r1.71
--- dload.src.en 23 May 2004 23:27:31 -0000 1.70
+++ dload.src.en 24 May 2004 00:11:03 -0000 1.71
@@ -21,7 +21,7 @@
|
<a href="http://www2.mplayerhq.hu/MPlayer/releases/MPlayer-1.0pre4.tar.bz2">HUN2</a>
|
- <a href="http://ftp3.mplayerhq.hu/MPlayer/releases/MPlayer-1.0pre4.tar.bz2">USA1</a>
+ <a href="http://ftp3.mplayerhq.hu/MPlayer/releases/MPlayer-1.0pre4.tar.bz2">USA</a>
]
</td>
<td class="mirror">
@@ -30,7 +30,7 @@
|
<a href="ftp://ftp2.mplayerhq.hu/MPlayer/releases/MPlayer-1.0pre4.tar.bz2">HUN2</a>
|
- <a href="ftp://ftp3.mplayerhq.hu/MPlayer/releases/MPlayer-1.0pre4.tar.bz2">USA1</a>
+ <a href="ftp://ftp3.mplayerhq.hu/MPlayer/releases/MPlayer-1.0pre4.tar.bz2">USA</a>
]
</td>
</tr>
@@ -42,7 +42,7 @@
|
<a href="http://www2.mplayerhq.hu/MPlayer/releases/MPlayer-0.92.1.tar.bz2">HUN2</a>
|
- <a href="http://ftp3.mplayerhq.hu/MPlayer/releases/MPlayer-0.92.1.tar.bz2">USA1</a>
+ <a href="http://ftp3.mplayerhq.hu/MPlayer/releases/MPlayer-0.92.1.tar.bz2">USA</a>
]
</td>
<td class="mirror">
@@ -51,7 +51,7 @@
|
<a href="ftp://ftp2.mplayerhq.hu/MPlayer/releases/MPlayer-0.92.1.tar.bz2">HUN2</a>
|
- <a href="ftp://ftp3.mplayerhq.hu/MPlayer/releases/MPlayer-0.92.1.tar.bz2">USA1</a>
+ <a href="ftp://ftp3.mplayerhq.hu/MPlayer/releases/MPlayer-0.92.1.tar.bz2">USA</a>
]
</td>
</tr>
@@ -63,7 +63,7 @@
|
<a href="http://www2.mplayerhq.hu/MPlayer/cvs/MPlayer-current.tar.bz2">HUN2</a>
|
- <a href="http://ftp3.mplayerhq.hu/MPlayer/cvs/MPlayer-current.tar.bz2">USA1</a>
+ <a href="http://ftp3.mplayerhq.hu/MPlayer/cvs/MPlayer-current.tar.bz2">USA</a>
]
</td>
<td class="mirror">
@@ -72,47 +72,47 @@
|
<a href="ftp://ftp2.mplayerhq.hu/MPlayer/cvs/MPlayer-current.tar.bz2">HUN2</a>
|
- <a href="ftp://ftp3.mplayerhq.hu/MPlayer/cvs/MPlayer-current.tar.bz2">USA1</a>
+ <a href="ftp://ftp3.mplayerhq.hu/MPlayer/cvs/MPlayer-current.tar.bz2">USA</a>
]
</td>
</tr>
<tr>
- <td class="text">MPlayer RPM packages for Red Hat</td>
+ <td class="text">MPlayer beta releases for Windows</td>
<td class="mirror">
[
- <a href="http://ftp.falsehope.com/home/rathann/mplayer.html">USA</a>
+ <a href="http://www1.mplayerhq.hu/MPlayer/releases/win32-beta/">HUN1</a>
|
- <a href="http://ftp.icm.edu.pl/pub/linux/mplayer-rpms/mplayer.html">POL1</a>
+ <a href="http://www2.mplayerhq.hu/MPlayer/releases/win32-beta/">HUN2</a>
|
- <a href="http://greysector.rangers.eu.org/mplayer.html">POL2</a>
+ <a href="http://ftp3.mplayerhq.hu/MPlayer/releases/win32-beta/">USA</a>
]
</td>
<td class="mirror">
[
- <a href="ftp://ftp.falsehope.com/home/rathann/mplayer/apt/">USA</a>
+ <a href="ftp://ftp1.mplayerhq.hu/MPlayer/releases/win32-beta/">HUN1</a>
|
- <a href="ftp://ftp.icm.edu.pl/pub/linux/mplayer-rpms/apt/">POL1</a>
+ <a href="ftp://ftp2.mplayerhq.hu/MPlayer/releases/win32-beta/">HUN2</a>
+ |
+ <a href="ftp://ftp3.mplayerhq.hu/MPlayer/releases/win32-beta/">USA</a>
]
</td>
</tr>
<tr>
- <td class="text">GOOM support for MPlayer (source patch)</td>
+ <td class="text">MPlayer RPM packages for Red Hat</td>
<td class="mirror">
[
- <a href="http://www1.mplayerhq.hu/MPlayer/patches/goom.diff.gz">HUN1</a>
+ <a href="http://ftp.falsehope.com/home/rathann/mplayer.html">USA</a>
|
- <a href="http://www2.mplayerhq.hu/MPlayer/patches/goom.diff.gz">HUN2</a>
+ <a href="http://ftp.icm.edu.pl/pub/linux/mplayer-rpms/mplayer.html">POL1</a>
|
- <a href="http://ftp3.mplayerhq.hu/MPlayer/patches/goom.diff.gz">USA1</a>
+ <a href="http://greysector.rangers.eu.org/mplayer.html">POL2</a>
]
</td>
<td class="mirror">
[
- <a href="ftp://ftp1.mplayerhq.hu/MPlayer/patches/goom.diff.gz">HUN1</a>
- |
- <a href="ftp://ftp2.mplayerhq.hu/MPlayer/patches/goom.diff.gz">HUN2</a>
+ <a href="ftp://ftp.falsehope.com/home/rathann/mplayer/apt/">USA</a>
|
- <a href="ftp://ftp3.mplayerhq.hu/MPlayer/patches/goom.diff.gz">USA1</a>
+ <a href="ftp://ftp.icm.edu.pl/pub/linux/mplayer-rpms/apt/">POL1</a>
]
</td>
</tr>
1
0
CVS: homepage/src projects.src.en, 1.48, 1.49 projects.src.hu, 1.29, 1.30
by syncmail@mplayerhq.hu 24 May '04
by syncmail@mplayerhq.hu 24 May '04
24 May '04
CVS change done by Diego Biurrun CVS
Update of /cvsroot/mplayer/homepage/src
In directory mail:/var2/tmp/cvs-serv4992
Modified Files:
projects.src.en projects.src.hu
Log Message:
binary packages, typos
Index: projects.src.en
===================================================================
RCS file: /cvsroot/mplayer/homepage/src/projects.src.en,v
retrieving revision 1.48
retrieving revision 1.49
diff -u -r1.48 -r1.49
--- projects.src.en 16 May 2004 23:14:21 -0000 1.48
+++ projects.src.en 24 May 2004 00:09:40 -0000 1.49
@@ -14,6 +14,17 @@
<a href="mailto:mplayer-dev-eng@mplayerhq.hu">drop us a line</a>.
</p>
+<p class="bigheader"><a name="binaries">Unofficial Binary Packages</a></p>
+
+<ul>
+ <li><a href="http://marillat.free.fr/">Debian</a><br>
+ MPlayer, MEncoder, fonts, codecs by Christian Marillat</li>
+ <li><a href="http://plf.zarb.org/">Mandrake</a><br>
+ urpmi packages by the Penguin Liberation Front</li>
+ <li><a href="http://packman.links2linux.de/?action=128">SuSE</a><br>
+ packages for several SuSE versions by Henne Vogelsang</li>
+</ul>
+
<p class="bigheader"><a name="mplayer_frontends">MPlayer Frontends</a></p>
<ul>
@@ -33,9 +44,9 @@
GNOME frontend</li>
<li><a href="http://mplayerosx.sourceforge.net/">MPlayer OS </a><br>
Mac OS X binary distribution with GUI</li>
- <li><a href="http://www.mplayertv.tk/">mplayerT</a><br>
+ <li><a href="http://www.mplayertv.tk/">mplayerTV</a><br>
TV-watching MPlayer frontend</li>
- <li><a href="http://mplay.sf.net/">mpla</a><br>
+ <li><a href="http://mplay.sf.net/">mplay</a><br>
console based MPlayer frontend</li>
</ul>
Index: projects.src.hu
===================================================================
RCS file: /cvsroot/mplayer/homepage/src/projects.src.hu,v
retrieving revision 1.29
retrieving revision 1.30
diff -u -r1.29 -r1.30
--- projects.src.hu 16 May 2004 23:15:23 -0000 1.29
+++ projects.src.hu 24 May 2004 00:09:41 -0000 1.30
@@ -12,6 +12,17 @@
<a href="mailto:mplayer-dev-eng@mplayerhq.hu">drop us a line</a>.
</p>
+<p class="bigheader"><a name="binaries">Unofficial Binary Packages</a></p>
+
+<ul>
+ <li><a href="http://marillat.free.fr/">Debian</a><br>
+ MPlayer, MEncoder, fonts, codecs by Christian Marillat</li>
+ <li><a href="http://plf.zarb.org/">Mandrake</a><br>
+ urpmi packages by the Penguin Liberation Front</li>
+ <li><a href="http://packman.links2linux.de/?action=128">SuSE</a><br>
+ packages for several SuSE versions by Henne Vogelsang</li>
+</ul>
+
<p class="bigheader"><a name="mplayer_frontends">MPlayer Frontends</a></p>
<ul>
@@ -31,9 +42,9 @@
GNOME frontend</li>
<li><a href="http://mplayerosx.sourceforge.net/">MPlayer OS </a><br>
Mac OS X binary distribution with GUI</li>
- <li><a href="http://www.mplayertv.tk/">mplayerT</a><br>
+ <li><a href="http://www.mplayertv.tk/">mplayerTV</a><br>
TV-watching MPlayer frontend</li>
- <li><a href="http://mplay.sf.net/">mpla</a><br>
+ <li><a href="http://mplay.sf.net/">mplay</a><br>
console based MPlayer frontend</li>
</ul>
1
0
CVS: homepage/src dload.src.en, 1.69, 1.70 dload.src.es, 1.10, 1.11 dload.src.hu, 1.42, 1.43
by syncmail@mplayerhq.hu 23 May '04
by syncmail@mplayerhq.hu 23 May '04
23 May '04
CVS change done by Diego Biurrun CVS
Update of /cvsroot/mplayer/homepage/src
In directory mail:/var2/tmp/cvs-serv7041
Modified Files:
dload.src.en dload.src.es dload.src.hu
Log Message:
skin version bump
Index: dload.src.en
===================================================================
RCS file: /cvsroot/mplayer/homepage/src/dload.src.en,v
retrieving revision 1.69
retrieving revision 1.70
diff -u -r1.69 -r1.70
--- dload.src.en 21 May 2004 22:05:43 -0000 1.69
+++ dload.src.en 23 May 2004 23:27:31 -0000 1.70
@@ -499,7 +499,7 @@
</tr>
<tr>
<td class="text"><a href="../images/skin-slim-shot01.jpg">slim</a></td>
- <td class="text">1.1</td>
+ <td class="text">1.2</td>
<td class="text">FRD (Viktor Bekesi)</td>
<td class="text">small and cute</td>
<td class="mirror">
@@ -719,7 +719,7 @@
</tr>
<tr>
<td class="text"><a href="../images/skin-wmp6-shot01.jpg">WindowsMediaPlayer6</a></td>
- <td class="text">1.3</td>
+ <td class="text">2.0</td>
<td class="text">Gabucino</td>
<td class="text">no comment :)</td>
<td class="mirror">
Index: dload.src.es
===================================================================
RCS file: /cvsroot/mplayer/homepage/src/dload.src.es,v
retrieving revision 1.10
retrieving revision 1.11
diff -u -r1.10 -r1.11
--- dload.src.es 21 May 2004 22:05:43 -0000 1.10
+++ dload.src.es 23 May 2004 23:27:31 -0000 1.11
@@ -586,7 +586,7 @@
<font class="menusubheader"><A HREF="../images/skin-slim-shot01.jpg">Slim</A>
</TD>
<TD><font class="text">
- 1.1
+ 1.2
</TD>
<TD><font class="text">
FRD (Viktor Bekesi)
@@ -894,7 +894,7 @@
<font class="menusubheader"><A HREF="../images/skin-wmp6-shot01.jpg">Windows Media Player 6</A>
</TD>
<TD><font class="text">
- 1.3
+ 2.0
</TD>
<TD><font class="text">
Gabucino
Index: dload.src.hu
===================================================================
RCS file: /cvsroot/mplayer/homepage/src/dload.src.hu,v
retrieving revision 1.42
retrieving revision 1.43
diff -u -r1.42 -r1.43
--- dload.src.hu 14 May 2004 02:25:29 -0000 1.42
+++ dload.src.hu 23 May 2004 23:27:31 -0000 1.43
@@ -512,7 +512,7 @@
<A HREF="../images/skin-slim-shot01.jpg">Slim</A>
</TD>
<TD><font class="text">
- 1.1
+ 1.2
</TD>
<TD><font class="text">
FRD (Viktor Bekesi)
@@ -820,7 +820,7 @@
<A HREF="../images/skin-wmp6-shot01.jpg">Windows Media Player 6</A>
</TD>
<TD><font class="text">
- 1.3
+ 2.0
</TD>
<TD><font class="text">
Gabucino
1
0
It was brought to may attention that polish manpage on mplayerhq.hu
doesn't display correctly, even after manualy changing encoding to
iso8859-2 (and utf8, same effect)
What can be done about that?
frogu.
--
...:FABRICATI DIEM, PVNC :http://frogu.emdej.com:...
..::GG: 1015221 .:::. JID: frogu(a)jabber.atman.pl::..
::MPlayerPL Team -- http://mplayerpl.emdej.com::
4
4
I'm going through the source and doing two things: first, changing any
non-commented printf to an mp_msg (using MSGL_FIXME and MSGT_FIXME in
almost every case), and second (per request), moving any translatable
printed text from the source files themselves to help_mp-en.h so the
translators can find it. The attached patches, to Monday afternoon's CVS
but identical to patches against today's (and hopefully in the correct
form), do this for mencoder.c; patches for other files will follow as I
complete them.
I may have gone overboard somewhat with the latter type of change; some
of the things I've moved may not need translating. Please do object to
any change you think doesn't make sense; please also speak up if any of
the MSGTR names I've used aren't appropriate. I should probably have
separated the two sets of changes into different patches, but that
didn't occur to me until I was more than halfway through. I can do it if
necessary, but it would require essentially starting from scratch.
The first patch adds the necessary #defines to mp_msg.h.
The second patch defines the new MSGTRs in help_mp-en.h.
The third patch removes all functional printfs from mencoder.c.
The fourth patch keeps mplayer.c from breaking on a syntax change in
MSGTR_Exiting.
Added from later "attention?" post: are there any files, aside from
obvious ones like mp_msg.c, in which printf should *not* be changed to
mp_msg? If so, which ones?
--
The Wanderer
Warning: Simply because I argue an issue does not mean I agree with any
side of it.
A government exists to serve its citizens, not to control them.
--- main/mp_msg.h 2004-02-08 13:21:31.000000000 -0500
+++ working/mp_msg.h 2004-05-17 15:26:00.000000000 -0400
@@ -19,6 +19,9 @@
#define MSGL_DBG3 8 // v=3
#define MSGL_DBG4 9 // v=4
+#define MSGL_FIXME 1 // for conversions from printf where the appropriate MSGL is not known; set equal to ERR for obtrusiveness
+#define MSGT_FIXME 0 // for conversions from printf where the appropriate MSGT is not known; set equal to GLOBAL for obtrusiveness
+
// code/module:
#define MSGT_GLOBAL 0 // common player stuff errors
--- main/help/help_mp-en.h 2004-04-28 05:24:18.000000000 -0400
+++ working/help/help_mp-en.h 2004-05-17 17:21:27.000000000 -0400
@@ -57,7 +57,8 @@
// mplayer.c:
-#define MSGTR_Exiting "\nExiting... (%s)\n"
+#define MSGTR_Exiting "\nExiting...\n"
+#define MSGTR_ExitingHow "\nExiting... (%s)\n"
#define MSGTR_Exit_quit "Quit"
#define MSGTR_Exit_eof "End of file"
#define MSGTR_Exit_error "Fatal error"
@@ -182,6 +183,136 @@
#define MSGTR_RecommendedVideoBitrate "Recommended video bitrate for %s CD: %d\n"
#define MSGTR_VideoStreamResult "\nVideo stream: %8.3f kbit/s (%d bps) size: %d bytes %5.3f secs %d frames\n"
#define MSGTR_AudioStreamResult "\nAudio stream: %8.3f kbit/s (%d bps) size: %d bytes %5.3f secs\n"
+#define MSGTR_OpenedStream "success: format: %d data: 0x%X - 0x%x\n"
+#define MSGTR_VCodecFramecopy "videocodec: framecopy (%dx%d %dbpp fourcc=%x)\n"
+#define MSGTR_ACodecFramecopy "audiocodec: framecopy (format=%x chans=%d rate=%ld bits=%d bps=%ld sample-%ld)\n"
+#define MSGTR_CBRPCMAudioSelected "CBR PCM audio selected\n"
+#define MSGTR_MP3AudioSelected "MP3 audio selected\n"
+#define MSGTR_CannotAllocateBytes "Couldn't allocate %d bytes\n"
+#define MSGTR_SettingAudioDelay "Setting AUDIO DELAY to %5.3f\n"
+#define MSGTR_SettingAudioInputGain "Setting audio input gain to %f\n"
+#define MSGTR_LamePresetEquals "\npreset=%s\n\n"
+#define MSGTR_LimitingAudioPreload "Limiting audio preload to 0.4s\n"
+#define MSGTR_IncreasingAudioDensity "Increasing audio density to 4\n"
+#define MSGTR_ZeroingAudioPreloadAndMaxPtsCorrection "Forcing audio preload to 0, max pts correction to 0\n"
+#define MSGTR_CBRAudioByterate "\n\nCBR audio: %ld bytes/sec, %d bytes/block\n"
+#define MSGTR_LameVersion "LAME version %s (%s)\n\n"
+#define MSGTR_InvalidBitrateForLamePreset "Error: The bitrate specified is out of the valid range for this preset\n"\
+"\n"\
+"When using this mode you must enter a value between \"8\" and \"320\"\n"\
+"\n"\
+"For further information try: \"-lameopts preset=help\"\n"
+#define MSGTR_InvalidLamePresetOptions "Error: You did not enter a valid profile and/or options with preset\n"\
+"\n"\
+"Available profiles are:\n"\
+"\n"\
+" <fast> standard\n"\
+" <fast> extreme\n"\
+" insane\n"\
+" <cbr> (ABR Mode) - The ABR Mode is implied. To use it,\n"\
+" simply specify a bitrate. For example:\n"\
+" \"preset=185\" activates this\n"\
+" preset and uses 185 as an average kbps.\n"\
+"\n"\
+" Some examples:\n"\
+"\n"\
+" \"-lameopts fast:preset=standard \"\n"\
+" or \"-lameopts cbr:preset=192 \"\n"\
+" or \"-lameopts preset=172 \"\n"\
+" or \"-lameopts preset=extreme \"\n"\
+"\n"\
+"For further information try: \"-lameopts preset=help\"\n"
+#define MSGTR_LamePresetsLongInfo "\n"\
+"The preset switches are designed to provide the highest possible quality.\n"\
+"\n"\
+"They have for the most part been subject to and tuned via rigorous double blind\n"\
+"listening tests to verify and achieve this objective.\n"\
+"\n"\
+"These are continually updated to coincide with the latest developments that\n"\
+"occur and as a result should provide you with nearly the best quality\n"\
+"currently possible from LAME.\n"\
+"\n"\
+"To activate these presets:\n"\
+"\n"\
+" For VBR modes (generally highest quality):\n"\
+"\n"\
+" \"preset=standard\" This preset should generally be transparent\n"\
+" to most people on most music and is already\n"\
+" quite high in quality.\n"\
+"\n"\
+" \"preset=extreme\" If you have extremely good hearing and similar\n"\
+" equipment, this preset will generally provide\n"\
+" slightly higher quality than the \"standard\"\n"\
+" mode.\n"\
+"\n"\
+" For CBR 320kbps (highest quality possible from the preset switches):\n"\
+"\n"\
+" \"preset=insane\" This preset will usually be overkill for most\n"\
+" people and most situations, but if you must\n"\
+" have the absolute highest quality with no\n"\
+" regard to filesize, this is the way to go.\n"\
+"\n"\
+" For ABR modes (high quality per given bitrate but not as high as VBR):\n"\
+"\n"\
+" \"preset=<kbps>\" Using this preset will usually give you good\n"\
+" quality at a specified bitrate. Depending on the\n"\
+" bitrate entered, this preset will determine the\n"\
+" optimal settings for that particular situation.\n"\
+" While this approach works, it is not nearly as\n"\
+" flexible as VBR, and usually will not attain the\n"\
+" same level of quality as VBR at higher bitrates.\n"\
+"\n"\
+"The following options are also available for the corresponding profiles:\n"\
+"\n"\
+" <fast> standard\n"\
+" <fast> extreme\n"\
+" insane\n"\
+" <cbr> (ABR Mode) - The ABR Mode is implied. To use it,\n"\
+" simply specify a bitrate. For example:\n"\
+" \"preset=185\" activates this\n"\
+" preset and uses 185 as an average kbps.\n"\
+"\n"\
+" \"fast\" - Enables the new fast VBR for a particular profile. The\n"\
+" disadvantage to the speed switch is that often times the\n"\
+" bitrate will be slightly higher than with the normal mode\n"\
+" and quality may be slightly lower also.\n"\
+" Warning: with the current version fast presets might result in too\n"\
+" high bitrate compared to regular presets.\n"\
+"\n"\
+" \"cbr\" - If you use the ABR mode (read above) with a significant\n"\
+" bitrate such as 80, 96, 112, 128, 160, 192, 224, 256, 320,\n"\
+" you can use the \"cbr\" option to force CBR mode encoding\n"\
+" instead of the standard abr mode. ABR does provide higher\n"\
+" quality but CBR may be useful in situations such as when\n"\
+" streaming an mp3 over the internet may be important.\n"\
+"\n"\
+" For example:\n"\
+"\n"\
+" \"-lameopts fast:preset=standard \"\n"\
+" or \"-lameopts cbr:preset=192 \"\n"\
+" or \"-lameopts preset=172 \"\n"\
+" or \"-lameopts preset=extreme \"\n"\
+"\n"\
+"\n"\
+"A few aliases are available for ABR mode:\n"\
+"phone => 16kbps/mono phon+/lw/mw-eu/sw => 24kbps/mono\n"\
+"mw-us => 40kbps/mono voice => 56kbps/mono\n"\
+"fm/radio/tape => 112kbps hifi => 160kbps\n"\
+"cd => 192kbps studio => 256kbps"
+#define MSGTR_ConfigfileError "configfile error"
+#define MSGTR_ErrorParsingCommandLine "error parsing cmdline"
+#define MSGTR_VideoStreamRequired "Video stream is mandatory!\n"
+#define MSGTR_ForcingInputFPS "input fps will be interpreted as %5.2f instead\n"
+#define MSGTR_RawvideoDoesNotSupportAudio "Output file format RAWVIDEO does not support audio - disabling audio\n"
+#define MSGTR_DemuxerDoesntSupportNosound "This demuxer doesn't support -nosound yet.\n"
+#define MSGTR_MemAllocFailed "memory allocation failed"
+#define MSGTR_NoMatchingFilter "Couldn't find matching filter/ao format!\n"
+#define MSGTR_MP3WaveFormatSizeNot30 "sizeof(MPEGLAYER3WAVEFORMAT)==%d!=30, maybe broken C compiler?\n"
+#define MSGTR_NoLavcAudioCodecName "Audio LAVC, Missing codec name!\n"
+#define MSGTR_LavcAudioCodecNotFound "Audio LAVC, couldn't find encoder for codec %s\n"
+#define MSGTR_CouldntAllocateLavcContext "Audio LAVC, couldn't allocate context!\n"
+#define MSGTR_CouldntOpenCodec "Couldn't open codec %s, br=%d\n"
+#define MSGTR_FramesizeBufsizeTag "FRAME_SIZE: %d, BUFFER_SIZE: %d, TAG: 0x%x\n"
// cfg-mencoder.h:
--- main/mencoder.c 2004-04-30 16:42:26.000000000 -0400
+++ working/mencoder.c 2004-05-17 17:17:40.000000000 -0400
@@ -267,9 +267,9 @@
static void mencoder_exit(int level, char *how)
{
if (how)
- printf("Exiting... (%s)\n", how);
+ mp_msg(MSGT_FIXME, MSGL_FIXME, MSGTR_ExitingHow, mp_gettext(how));
else
- printf("Exiting...\n");
+ mp_msg(MSGT_FIXME, MSGL_FIXME, MSGTR_Exiting);
exit(level);
}
@@ -281,7 +281,7 @@
mp_msg(MSGT_CPLAYER,MSGL_ERR,MSGTR_GetpathProblem);
} else {
if (m_config_parse_config_file(conf, conffile) < 0)
- mencoder_exit(1,"configfile error");
+ mencoder_exit(1,MSGTR_ConfigfileError);
free(conffile);
}
}
@@ -431,7 +431,7 @@
stream2=open_stream(frameno_filename,0,&i);
if(stream2){
demuxer2=demux_open(stream2,DEMUXER_TYPE_AVI,-1,-1,-2,NULL);
- if(demuxer2) printf(MSGTR_UsingPass3ControllFile,frameno_filename);
+ if(demuxer2) mp_msg(MSGT_FIXME, MSGL_FIXME, MSGTR_UsingPass3ControllFile, frameno_filename);
else mp_msg(MSGT_DEMUXER,MSGL_ERR,MSGTR_FormatNotRecognized);
}
@@ -439,12 +439,12 @@
m_config_register_options(mconfig,mencoder_opts);
parse_cfgfiles(mconfig);
filelist = m_config_parse_me_command_line(mconfig, argc, argv);
- if(!filelist) mencoder_exit(1, "error parsing cmdline");
+ if(!filelist) mencoder_exit(1, MSGTR_ErrorParsingCommandLine);
m_entry_set_options(mconfig,&filelist[0]);
filename = filelist[0].name;
if(!filename){
- printf(MSGTR_MissingFilename);
+ mp_msg(MSGT_FIXME, MSGL_ERR, MSGTR_MissingFilename);
mencoder_exit(1,NULL);
}
@@ -478,11 +478,11 @@
stream=open_stream(filename,0,&file_format);
if(!stream){
- printf(MSGTR_CannotOpenFile_Device);
+ mp_msg(MSGT_FIXME, MSGL_ERR, MSGTR_CannotOpenFile_Device);
mencoder_exit(1,NULL);
}
- printf("success: format: %d data: 0x%X - 0x%X\n",file_format, (int)(stream->start_pos),(int)(stream->end_pos));
+ mp_msg(MSGT_FIXME, MSGL_FIXME, MSGTR_OpenedStream, file_format, (int)(stream->start_pos), (int)(stream->end_pos));
#ifdef USE_DVDREAD
if(stream->type==STREAMTYPE_DVD){
@@ -501,7 +501,7 @@
demuxer=demux_open(stream,file_format,audio_id,video_id,dvdsub_id,filename);
if(!demuxer){
mp_msg(MSGT_DEMUXER,MSGL_ERR,MSGTR_FormatNotRecognized);
- printf(MSGTR_CannotOpenDemuxer);
+ mp_msg(MSGT_DEMUXER, MSGL_ERR, MSGTR_CannotOpenDemuxer); //correct target/level? FIXME?
mencoder_exit(1,NULL);
}
@@ -513,12 +513,12 @@
if(!sh_video)
{
- mp_msg(MSGT_CPLAYER,MSGL_FATAL,"Video stream is mandatory!\n");
+ mp_msg(MSGT_CPLAYER,MSGL_FATAL,MSGTR_VideoStreamRequired);
mencoder_exit(1,NULL);
}
if(!video_read_properties(sh_video)){
- printf(MSGTR_CannotReadVideoProperties);
+ mp_msg(MSGT_FIXME, MSGL_ERR, MSGTR_CannotReadVideoProperties);
mencoder_exit(1,NULL);
}
@@ -530,16 +530,16 @@
if(force_fps){
sh_video->fps=force_fps;
sh_video->frametime=1.0f/sh_video->fps;
- mp_msg(MSGT_MENCODER,MSGL_INFO,"input fps will be interpreted as %5.2f instead\n", sh_video->fps);
+ mp_msg(MSGT_MENCODER,MSGL_INFO,MSGTR_ForcingInputFPS, sh_video->fps);
}
if(sh_audio && out_file_format==MUXER_TYPE_RAWVIDEO){
- mp_msg(MSGT_MENCODER,MSGL_ERR,"Output file format RAWVIDEO does not support audio - disabling audio\n");
+ mp_msg(MSGT_MENCODER,MSGL_ERR,MSGTR_RawvideoDoesNotSupportAudio);
sh_audio=NULL;
}
if(sh_audio && out_audio_codec<0){
if(audio_id==-2)
- mp_msg(MSGT_MENCODER,MSGL_ERR,"This demuxer doesn't support -nosound yet.\n");
+ mp_msg(MSGT_MENCODER,MSGL_ERR,MSGTR_DemuxerDoesntSupportNosound);
mp_msg(MSGT_MENCODER,MSGL_FATAL,MSGTR_NoAudioEncoderSelected);
mencoder_exit(1,NULL);
}
@@ -620,7 +620,7 @@
// set up output file:
muxer_f=fopen(out_filename,"wb");
if(!muxer_f) {
- printf(MSGTR_CannotOpenOutputFile, out_filename);
+ mp_msg(MSGT_FIXME, MSGL_ERR, MSGTR_CannotOpenOutputFile, out_filename);
mencoder_exit(1,NULL);
}
@@ -669,7 +669,7 @@
mux_v->bih->biBitCount=24; // FIXME!!!
mux_v->bih->biSizeImage=mux_v->bih->biWidth*mux_v->bih->biHeight*(mux_v->bih->biBitCount/8);
}
- printf("videocodec: framecopy (%dx%d %dbpp fourcc=%x)\n",
+ mp_msg(MSGT_FIXME, MSGL_FIXME, MSGTR_VCodecFramecopy,
mux_v->bih->biWidth, mux_v->bih->biHeight,
mux_v->bih->biBitCount, mux_v->bih->biCompression);
break;
@@ -727,7 +727,7 @@
{
mux_v->bih->biCompression = mmioFOURCC(force_fourcc[0], force_fourcc[1],
force_fourcc[2], force_fourcc[3]);
- printf(MSGTR_ForcingOutputFourcc,
+ mp_msg(MSGT_FIXME, MSGL_FIXME, MSGTR_ForcingOutputFourcc,
mux_v->bih->biCompression, (char *)&mux_v->bih->biCompression);
}
@@ -741,7 +741,7 @@
mux_a->buffer_size=0x100000; //16384;
mux_a->buffer=malloc(mux_a->buffer_size);
if (!mux_a->buffer)
- mencoder_exit(1,"memory allocation failed");
+ mencoder_exit(1,MSGTR_MemAllocFailed);
mux_a->source=sh_audio;
@@ -772,12 +772,12 @@
mux_a->h.dwScale=mux_a->h.dwSampleSize;
mux_a->h.dwRate=mux_a->wf->nAvgBytesPerSec;
}
- printf("audiocodec: framecopy (format=%x chans=%d rate=%ld bits=%d bps=%ld sample=%ld)\n",
+ mp_msg(MSGT_FIXME, MSGL_FIXME, MSGTR_ACodecFramecopy,
mux_a->wf->wFormatTag, mux_a->wf->nChannels, mux_a->wf->nSamplesPerSec,
mux_a->wf->wBitsPerSample, mux_a->wf->nAvgBytesPerSec, mux_a->h.dwSampleSize);
break;
case ACODEC_PCM:
- printf("CBR PCM audio selected\n");
+ mp_msg(MSGT_FIXME, MSGL_FIXME, MSGTR_CBRPCMAudioSelected);
mux_a->h.dwScale=1;
mux_a->h.dwRate=force_srate?force_srate:sh_audio->samplerate;
mux_a->wf=malloc(sizeof(WAVEFORMATEX));
@@ -797,16 +797,16 @@
(mux_a->wf->wBitsPerSample==8)? AFMT_U8:AFMT_S16_LE,
mux_a->wf->wBitsPerSample/8,
16384, mux_a->wf->nAvgBytesPerSec)){
- mp_msg(MSGT_CPLAYER,MSGL_ERR,"Couldn't find matching filter / ao format!\n");
+ mp_msg(MSGT_CPLAYER,MSGL_ERR,MSGTR_NoMatchingFilter);
}
break;
#ifdef HAVE_MP3LAME
case ACODEC_VBRMP3:
- printf("MP3 audio selected\n");
+ mp_msg(MSGT_FIXME, MSGL_FIXME, MSGTR_MP3AudioSelected);
mux_a->h.dwSampleSize=0; // VBR
mux_a->h.dwRate=force_srate?force_srate:sh_audio->samplerate;
mux_a->h.dwScale=(mux_a->h.dwRate<32000)?576:1152; // samples/frame
- if(sizeof(MPEGLAYER3WAVEFORMAT)!=30) mp_msg(MSGT_MENCODER,MSGL_WARN,"sizeof(MPEGLAYER3WAVEFORMAT)==%d!=30, maybe broken C compiler?\n",sizeof(MPEGLAYER3WAVEFORMAT));
+ if(sizeof(MPEGLAYER3WAVEFORMAT)!=30) mp_msg(MSGT_MENCODER,MSGL_WARN,MSGTR_MP3WaveFormatSizeNot30,sizeof(MPEGLAYER3WAVEFORMAT));
mux_a->wf=malloc(sizeof(MPEGLAYER3WAVEFORMAT)); // should be 30
mux_a->wf->wFormatTag=0x55; // MP3
mux_a->wf->nChannels= (lame_param_mode<0) ? sh_audio->channels :
@@ -833,7 +833,7 @@
AFMT_S16_LE, 2,
#endif
4608, mux_a->h.dwRate*mux_a->wf->nChannels*2)){
- mp_msg(MSGT_CPLAYER,MSGL_ERR,"Couldn't find matching filter / ao format!\n");
+ mp_msg(MSGT_CPLAYER,MSGL_ERR,MSGTR_NoMatchingFilter);
}
break;
#endif
@@ -841,7 +841,7 @@
case ACODEC_LAVC:
if(!lavc_param_acodec)
{
- mp_msg(MSGT_MENCODER, MSGL_FATAL, "Audio LAVC, Missing codec name!\n");
+ mp_msg(MSGT_MENCODER, MSGL_FATAL, MSGTR_NoLavcAudioCodecName);
exit(1);
}
@@ -854,14 +854,14 @@
lavc_acodec = avcodec_find_encoder_by_name(lavc_param_acodec);
if (!lavc_acodec)
{
- mp_msg(MSGT_MENCODER, MSGL_FATAL, "Audio LAVC, couldn't find encoder for codec %s\n", lavc_param_acodec);
+ mp_msg(MSGT_MENCODER, MSGL_FATAL, MSGTR_LavcAudioCodecNotFound, lavc_param_acodec);
exit(1);
}
lavc_actx = avcodec_alloc_context();
if(lavc_actx == NULL)
{
- mp_msg(MSGT_MENCODER, MSGL_FATAL, "Audio LAVC, couldn't allocate context!\n");
+ mp_msg(MSGT_MENCODER, MSGL_FATAL, MSGTR_CouldntAllocateLavcContext);
exit(1);
}
@@ -890,7 +890,7 @@
if(avcodec_open(lavc_actx, lavc_acodec) < 0)
{
- mp_msg(MSGT_MENCODER, MSGL_FATAL, "Couldn't open codec %s, br=%d\n", lavc_param_acodec, lavc_param_abitrate);
+ mp_msg(MSGT_MENCODER, MSGL_FATAL, MSGTR_CouldntOpenCodec, lavc_param_acodec, lavc_param_abitrate);
exit(1);
}
@@ -902,7 +902,7 @@
lavc_abuf = malloc(lavc_actx->frame_size * 2 * lavc_actx->channels);
if(lavc_abuf == NULL)
{
- fprintf(stderr, "Couldn't allocate %d bytes\n", lavc_actx->frame_size * 2 * lavc_actx->channels);
+ mp_msg(MSGT_FIXME, MSGL_ERR, MSGTR_CannotAllocateBytes, lavc_actx->frame_size * 2 * lavc_actx->channels); // Converted from fprintf(stderr, ...);
exit(1);
}
@@ -971,11 +971,11 @@
AFMT_S16_NE, 2,
mux_a->h.dwSuggestedBufferSize,
mux_a->h.dwSuggestedBufferSize*2)) {
- mp_msg(MSGT_CPLAYER, MSGL_ERR, "Couldn't find matching filter / ao format!\n");
+ mp_msg(MSGT_CPLAYER, MSGL_ERR, MSGTR_NoMatchingFilter);
exit(1);
}
- mp_msg(MSGT_MENCODER, MSGL_V, "FRAME_SIZE: %d, BUFFER_SIZE: %d, TAG: 0x%x\n", lavc_actx->frame_size, lavc_actx->frame_size * 2 * lavc_actx->channels, mux_a->wf->wFormatTag);
+ mp_msg(MSGT_MENCODER, MSGL_V, MSGTR_FramesizeBufsizeTag, lavc_actx->frame_size, lavc_actx->frame_size * 2 * lavc_actx->channels, mux_a->wf->wFormatTag);
break;
#endif
@@ -985,12 +985,12 @@
if(audio_delay!=0.0){
mux_a->h.dwStart=audio_delay*mux_a->h.dwRate/mux_a->h.dwScale;
- printf("Setting AUDIO DELAY to %5.3f\n",mux_a->h.dwStart*mux_a->h.dwScale/(float)mux_a->h.dwRate);
+ mp_msg(MSGT_FIXME, MSGL_FIXME, MSGTR_SettingAudioDelay,mux_a->h.dwStart*mux_a->h.dwScale/(float)mux_a->h.dwRate);
}
} // if(sh_audio)
-printf(MSGTR_WritingAVIHeader);
+mp_msg(MSGT_FIXME, MSGL_FIXME, MSGTR_WritingAVIHeader);
if (muxer->cont_write_header) muxer_write_header(muxer);
decoded_frameno=0;
@@ -1017,14 +1017,14 @@
if(lame_param_mode>=0) lame_set_mode(lame,lame_param_mode); // j-st
if(lame_param_ratio>0) lame_set_compression_ratio(lame,lame_param_ratio);
if(lame_param_scale>0) {
- printf("Setting audio input gain to %f\n", lame_param_scale);
+ mp_msg(MSGT_FIXME, MSGL_FIXME, MSGTR_SettingAudioInputGain, lame_param_scale);
lame_set_scale(lame,lame_param_scale);
}
if(lame_param_lowpassfreq>=-1) lame_set_lowpassfreq(lame,lame_param_lowpassfreq);
if(lame_param_highpassfreq>=-1) lame_set_highpassfreq(lame,lame_param_highpassfreq);
#if HAVE_MP3LAME >= 392
if(lame_param_preset != NULL){
- printf ("\npreset=%s\n\n",lame_param_preset);
+ mp_msg(MSGT_FIXME, MSGL_FIXME, MSGTR_LamePresetEquals,lame_param_preset);
lame_presets_set(lame,lame_param_fast, (lame_param_vbr==0), lame_param_preset);
}
#endif
@@ -1064,18 +1064,18 @@
if (out_file_format == MUXER_TYPE_MPEG)
{
if (audio_preload > 0.4) {
- fprintf(stderr,"Limiting audio preload to 0.4s\n");
+ mp_msg(MSGT_FIXME, MSGL_ERR, MSGTR_LimitingAudioPreload);
audio_preload = 0.4;
}
if (audio_density < 4) {
- fprintf(stderr,"Increasing audio density to 4\n");
+ mp_msg(MSGT_FIXME, MSGL_ERR, MSGTR_IncreasingAudioDensity);
audio_density = 4;
}
}
if(file_format == DEMUXER_TYPE_TV)
{
- fprintf(stderr,"Forcing audio preload to 0, max pts correction to 0\n");
+ mp_msg(MSGT_FIXME, MSGL_ERR, MSGTR_ZeroingAudioPreloadAndMaxPtsCorrection);
audio_preload = 0.0;
default_max_pts_correction = 0;
}
@@ -1317,7 +1317,7 @@
if(skip_flag<0){
// duplicate frame
- if(file_format != DEMUXER_TYPE_TV && !verbose) printf(MSGTR_DuplicateFrames,-skip_flag);
+ if(file_format != DEMUXER_TYPE_TV && !verbose) mp_msg(MSGT_FIXME, MSGL_FIXME, MSGTR_DuplicateFrames,-skip_flag);
while(skip_flag<0){
duplicatedframes++;
if (!encode_duplicates || ((vf_instance_t *)sh_video->vfilter)->control(sh_video->vfilter, VFCTRL_DUPLICATE_FRAME, 0) != CONTROL_TRUE)
@@ -1327,7 +1327,7 @@
} else
if(skip_flag>0){
// skip frame
- if(file_format != DEMUXER_TYPE_TV && !verbose) printf(MSGTR_SkipFrame);
+ if(file_format != DEMUXER_TYPE_TV && !verbose) mp_msg(MSGT_FIXME, MSGL_FIXME, MSGTR_SkipFrame);
skippedframes++;
--skip_flag;
}
@@ -1478,15 +1478,15 @@
mux_a->h.dwRate=mux_a->wf->nAvgBytesPerSec;
mux_a->h.dwScale=1;
mux_a->wf->nBlockAlign=1;
- printf("\n\nCBR audio: %ld bytes/sec, %d bytes/block\n",
+ mp_msg(MSGT_FIXME, MSGL_FIXME, MSGTR_CBRAudioByterate,
mux_a->h.dwRate,((MPEGLAYER3WAVEFORMAT*)(mux_a->wf))->nBlockSize);
}
#endif
-printf(MSGTR_WritingAVIIndex);
+mp_msg(MSGT_FIXME, MSGL_FIXME, MSGTR_WritingAVIIndex);
if (muxer->cont_write_index) muxer_write_index(muxer);
muxer_f_size=ftello(muxer_f);
-printf(MSGTR_FixupAVIHeader);
+mp_msg(MSGT_FIXME, MSGL_FIXME, MSGTR_FixupAVIHeader);
fseek(muxer_f,0,SEEK_SET);
if (muxer->cont_write_header) muxer_write_header(muxer); // update header
if(ferror(muxer_f) || fclose(muxer_f) != 0) {
@@ -1497,18 +1497,18 @@
vobsub_out_close(vobsub_writer);
if(out_video_codec==VCODEC_FRAMENO && mux_v->timer>100){
- printf(MSGTR_RecommendedVideoBitrate,"650MB",(int)((650*1024*1024-muxer_f_size)/mux_v->timer/125));
- printf(MSGTR_RecommendedVideoBitrate,"700MB",(int)((700*1024*1024-muxer_f_size)/mux_v->timer/125));
- printf(MSGTR_RecommendedVideoBitrate,"800MB",(int)((800*1024*1024-muxer_f_size)/mux_v->timer/125));
- printf(MSGTR_RecommendedVideoBitrate,"2 x 650MB",(int)((2*650*1024*1024-muxer_f_size)/mux_v->timer/125));
- printf(MSGTR_RecommendedVideoBitrate,"2 x 700MB",(int)((2*700*1024*1024-muxer_f_size)/mux_v->timer/125));
- printf(MSGTR_RecommendedVideoBitrate,"2 x 800MB",(int)((2*800*1024*1024-muxer_f_size)/mux_v->timer/125));
+ mp_msg(MSGT_FIXME, MSGL_FIXME, MSGTR_RecommendedVideoBitrate,"650MB",(int)((650*1024*1024-muxer_f_size)/mux_v->timer/125));
+ mp_msg(MSGT_FIXME, MSGL_FIXME, MSGTR_RecommendedVideoBitrate,"700MB",(int)((700*1024*1024-muxer_f_size)/mux_v->timer/125));
+ mp_msg(MSGT_FIXME, MSGL_FIXME, MSGTR_RecommendedVideoBitrate,"800MB",(int)((800*1024*1024-muxer_f_size)/mux_v->timer/125));
+ mp_msg(MSGT_FIXME, MSGL_FIXME, MSGTR_RecommendedVideoBitrate,"2 x 650MB",(int)((2*650*1024*1024-muxer_f_size)/mux_v->timer/125));
+ mp_msg(MSGT_FIXME, MSGL_FIXME, MSGTR_RecommendedVideoBitrate,"2 x 700MB",(int)((2*700*1024*1024-muxer_f_size)/mux_v->timer/125));
+ mp_msg(MSGT_FIXME, MSGL_FIXME, MSGTR_RecommendedVideoBitrate,"2 x 800MB",(int)((2*800*1024*1024-muxer_f_size)/mux_v->timer/125));
}
-printf(MSGTR_VideoStreamResult,
+mp_msg(MSGT_FIXME, MSGL_FIXME, MSGTR_VideoStreamResult,
(float)(mux_v->size/mux_v->timer*8.0f/1000.0f), (int)(mux_v->size/mux_v->timer), (int)mux_v->size, (float)mux_v->timer, decoded_frameno);
if(sh_audio)
-printf(MSGTR_AudioStreamResult,
+mp_msg(MSGT_FIXME, MSGL_FIXME, MSGTR_AudioStreamResult,
(float)(mux_a->size/mux_a->timer*8.0f/1000.0f), (int)(mux_a->size/mux_a->timer), (int)mux_a->size, (float)mux_a->timer);
if(sh_video){ uninit_video(sh_video);sh_video=NULL; }
@@ -1600,7 +1600,7 @@
int mono = 0;
if (strcmp(preset_name, "help") == 0) {
- fprintf(stdout, "LAME version %s (%s)\n\n", get_lame_version(), get_lame_url());
+ mp_msg(MSGT_FIXME, MSGL_FIXME, MSGTR_LameVersion, get_lame_version(), get_lame_url());
lame_presets_longinfo_dm( stdout );
return -1;
}
@@ -1701,42 +1701,17 @@
}
else {
- fprintf(stderr, "LAME version %s (%s)\n\n", get_lame_version(), get_lame_url());
- fprintf(stderr,"Error: The bitrate specified is out of the valid range for this preset\n"
- "\n"
- "When using this mode you must enter a value between \"8\" and \"320\"\n"
- "\n"
- "For further information try: \"-lameopts preset=help\"\n"
- );
+ mp_msg(MSGT_FIXME, MSGL_ERR, MSGTR_LameVersion, get_lame_version(), get_lame_url());
+ mp_msg(MSGT_FIXME, MSGL_ERR, MSGTR_InvalidBitrateForLamePreset);
return -1;
}
}
- fprintf(stderr, "LAME version %s (%s)\n\n", get_lame_version(), get_lame_url());
- fprintf(stderr,"Error: You did not enter a valid profile and/or options with preset\n"
- "\n"
- "Available profiles are:\n"
- "\n"
- " <fast> standard\n"
- " <fast> extreme\n"
- " insane\n"
- " <cbr> (ABR Mode) - The ABR Mode is implied. To use it,\n"
- " simply specify a bitrate. For example:\n"
- " \"preset=185\" activates this\n"
- " preset and uses 185 as an average kbps.\n"
- "\n"
- " Some examples:\n"
- "\n"
- " \"-lameopts fast:preset=standard \"\n"
- " or \"-lameopts cbr:preset=192 \"\n"
- " or \"-lameopts preset=172 \"\n"
- " or \"-lameopts preset=extreme \"\n"
- "\n"
- "For further information try: \"-lameopts preset=help\"\n"
- );
- mencoder_exit(1, "error parsing cmdline");
+ mp_msg(MSGT_FIXME, MSGL_ERR, MSGTR_LameVersion, get_lame_version(), get_lame_url());
+ mp_msg(MSGT_FIXME, MSGL_ERR, MSGTR_InvalidLamePresetOptions);
+ mencoder_exit(1, MSGTR_ErrorParsingCommandLine);
}
#endif
@@ -1745,84 +1720,7 @@
taken out of presets_longinfo_dm in lame-3.93.1/frontend/parse.c and modified */
static void lame_presets_longinfo_dm ( FILE* msgfp )
{
- fprintf ( msgfp,
- "\n"
- "The preset switches are designed to provide the highest possible quality.\n"
- "\n"
- "They have for the most part been subject to and tuned via rigorous double blind\n"
- "listening tests to verify and achieve this objective.\n"
- "\n"
- "These are continually updated to coincide with the latest developments that\n"
- "occur and as a result should provide you with nearly the best quality\n"
- "currently possible from LAME.\n"
- "\n"
- "To activate these presets:\n"
- "\n"
- " For VBR modes (generally highest quality):\n"
- "\n"
- " \"preset=standard\" This preset should generally be transparent\n"
- " to most people on most music and is already\n"
- " quite high in quality.\n"
- "\n"
- " \"preset=extreme\" If you have extremely good hearing and similar\n"
- " equipment, this preset will generally provide\n"
- " slightly higher quality than the \"standard\"\n"
- " mode.\n"
- "\n"
- " For CBR 320kbps (highest quality possible from the preset switches):\n"
- "\n"
- " \"preset=insane\" This preset will usually be overkill for most\n"
- " people and most situations, but if you must\n"
- " have the absolute highest quality with no\n"
- " regard to filesize, this is the way to go.\n"
- "\n"
- " For ABR modes (high quality per given bitrate but not as high as VBR):\n"
- "\n"
- " \"preset=<kbps>\" Using this preset will usually give you good\n"
- " quality at a specified bitrate. Depending on the\n"
- " bitrate entered, this preset will determine the\n"
- " optimal settings for that particular situation.\n"
- " While this approach works, it is not nearly as\n"
- " flexible as VBR, and usually will not attain the\n"
- " same level of quality as VBR at higher bitrates.\n"
- "\n"
- "The following options are also available for the corresponding profiles:\n"
- "\n"
- " <fast> standard\n"
- " <fast> extreme\n"
- " insane\n"
- " <cbr> (ABR Mode) - The ABR Mode is implied. To use it,\n"
- " simply specify a bitrate. For example:\n"
- " \"preset=185\" activates this\n"
- " preset and uses 185 as an average kbps.\n"
- "\n"
- " \"fast\" - Enables the new fast VBR for a particular profile. The\n"
- " disadvantage to the speed switch is that often times the\n"
- " bitrate will be slightly higher than with the normal mode\n"
- " and quality may be slightly lower also.\n"
- " Warning: with the current version fast presets might result in too\n"
- " high bitrate compared to regular presets.\n"
- "\n"
- " \"cbr\" - If you use the ABR mode (read above) with a significant\n"
- " bitrate such as 80, 96, 112, 128, 160, 192, 224, 256, 320,\n"
- " you can use the \"cbr\" option to force CBR mode encoding\n"
- " instead of the standard abr mode. ABR does provide higher\n"
- " quality but CBR may be useful in situations such as when\n"
- " streaming an mp3 over the internet may be important.\n"
- "\n"
- " For example:\n"
- "\n"
- " \"-lameopts fast:preset=standard \"\n"
- " or \"-lameopts cbr:preset=192 \"\n"
- " or \"-lameopts preset=172 \"\n"
- " or \"-lameopts preset=extreme \"\n"
- "\n"
- "\n"
- "A few aliases are available for ABR mode:\n"
- "phone => 16kbps/mono phon+/lw/mw-eu/sw => 24kbps/mono\n"
- "mw-us => 40kbps/mono voice => 56kbps/mono\n"
- "fm/radio/tape => 112kbps hifi => 160kbps\n"
- "cd => 192kbps studio => 256kbps");
+ mp_msg(MSGT_FIXME, MSGL_FIXME, MSGTR_LamePresetsLongInfo);
mencoder_exit(0, NULL);
}
#endif
--- main/mplayer.c 2004-04-30 16:42:26.000000000 -0400
+++ working/mplayer.c 2004-05-17 17:22:11.000000000 -0400
@@ -474,7 +474,7 @@
current_module="exit_player";
- if(how) mp_msg(MSGT_CPLAYER,MSGL_INFO,MSGTR_Exiting,mp_gettext(how));
+ if(how) mp_msg(MSGT_CPLAYER,MSGL_INFO,MSGTR_ExitingHow,mp_gettext(how));
mp_msg(MSGT_CPLAYER,MSGL_DBG2,"max framesize was %d bytes\n",max_framesize);
exit(rc);
1
1
I'm going through the source and doing two things: first, changing any
non-commented printf to an mp_msg (using MSGL_FIXME and MSGT_FIXME in
almost every case), and second (per request), moving any translatable
printed text from the source files themselves to help_mp-en.h so the
translators can find it. The attached patches, to this afternoon's CVS
(and hopefully in the correct form), do this for mencoder.c; patches for
other files will follow as I complete them.
I may have gone overboard somewhat with the latter type of change; some
of the things I've moved may not need translating. Please do object to
any change you think doesn't make sense; please also speak up if any of
the MSGTR names I've used aren't appropriate. I should probably have
separated the two sets of changes into different patches, but that
didn't occur to me until I was more than halfway through. I can do it if
necessary, but it would require essentially starting from scratch.
The first patch adds the necessary #defines to mp_msg.h.
The second patch defines the new MSGTRs in help_mp-en.h.
The third patch removes all functional printfs from mencoder.c.
The fourth patch keeps mplayer.c from breaking on a syntax change in
MSGTR_Exiting.
--
The Wanderer
Warning: Simply because I argue an issue does not mean I agree with any
side of it.
A government exists to serve its citizens, not to control them.
--- main/mp_msg.h 2004-02-08 13:21:31.000000000 -0500
+++ working/mp_msg.h 2004-05-17 15:26:00.000000000 -0400
@@ -19,6 +19,9 @@
#define MSGL_DBG3 8 // v=3
#define MSGL_DBG4 9 // v=4
+#define MSGL_FIXME 1 // for conversions from printf where the appropriate MSGL is not known; set equal to ERR for obtrusiveness
+#define MSGT_FIXME 0 // for conversions from printf where the appropriate MSGT is not known; set equal to GLOBAL for obtrusiveness
+
// code/module:
#define MSGT_GLOBAL 0 // common player stuff errors
--- main/help/help_mp-en.h 2004-04-28 05:24:18.000000000 -0400
+++ working/help/help_mp-en.h 2004-05-17 17:21:27.000000000 -0400
@@ -57,7 +57,8 @@
// mplayer.c:
-#define MSGTR_Exiting "\nExiting... (%s)\n"
+#define MSGTR_Exiting "\nExiting...\n"
+#define MSGTR_ExitingHow "\nExiting... (%s)\n"
#define MSGTR_Exit_quit "Quit"
#define MSGTR_Exit_eof "End of file"
#define MSGTR_Exit_error "Fatal error"
@@ -182,6 +183,136 @@
#define MSGTR_RecommendedVideoBitrate "Recommended video bitrate for %s CD: %d\n"
#define MSGTR_VideoStreamResult "\nVideo stream: %8.3f kbit/s (%d bps) size: %d bytes %5.3f secs %d frames\n"
#define MSGTR_AudioStreamResult "\nAudio stream: %8.3f kbit/s (%d bps) size: %d bytes %5.3f secs\n"
+#define MSGTR_OpenedStream "success: format: %d data: 0x%X - 0x%x\n"
+#define MSGTR_VCodecFramecopy "videocodec: framecopy (%dx%d %dbpp fourcc=%x)\n"
+#define MSGTR_ACodecFramecopy "audiocodec: framecopy (format=%x chans=%d rate=%ld bits=%d bps=%ld sample-%ld)\n"
+#define MSGTR_CBRPCMAudioSelected "CBR PCM audio selected\n"
+#define MSGTR_MP3AudioSelected "MP3 audio selected\n"
+#define MSGTR_CannotAllocateBytes "Couldn't allocate %d bytes\n"
+#define MSGTR_SettingAudioDelay "Setting AUDIO DELAY to %5.3f\n"
+#define MSGTR_SettingAudioInputGain "Setting audio input gain to %f\n"
+#define MSGTR_LamePresetEquals "\npreset=%s\n\n"
+#define MSGTR_LimitingAudioPreload "Limiting audio preload to 0.4s\n"
+#define MSGTR_IncreasingAudioDensity "Increasing audio density to 4\n"
+#define MSGTR_ZeroingAudioPreloadAndMaxPtsCorrection "Forcing audio preload to 0, max pts correction to 0\n"
+#define MSGTR_CBRAudioByterate "\n\nCBR audio: %ld bytes/sec, %d bytes/block\n"
+#define MSGTR_LameVersion "LAME version %s (%s)\n\n"
+#define MSGTR_InvalidBitrateForLamePreset "Error: The bitrate specified is out of the valid range for this preset\n"\
+"\n"\
+"When using this mode you must enter a value between \"8\" and \"320\"\n"\
+"\n"\
+"For further information try: \"-lameopts preset=help\"\n"
+#define MSGTR_InvalidLamePresetOptions "Error: You did not enter a valid profile and/or options with preset\n"\
+"\n"\
+"Available profiles are:\n"\
+"\n"\
+" <fast> standard\n"\
+" <fast> extreme\n"\
+" insane\n"\
+" <cbr> (ABR Mode) - The ABR Mode is implied. To use it,\n"\
+" simply specify a bitrate. For example:\n"\
+" \"preset=185\" activates this\n"\
+" preset and uses 185 as an average kbps.\n"\
+"\n"\
+" Some examples:\n"\
+"\n"\
+" \"-lameopts fast:preset=standard \"\n"\
+" or \"-lameopts cbr:preset=192 \"\n"\
+" or \"-lameopts preset=172 \"\n"\
+" or \"-lameopts preset=extreme \"\n"\
+"\n"\
+"For further information try: \"-lameopts preset=help\"\n"
+#define MSGTR_LamePresetsLongInfo "\n"\
+"The preset switches are designed to provide the highest possible quality.\n"\
+"\n"\
+"They have for the most part been subject to and tuned via rigorous double blind\n"\
+"listening tests to verify and achieve this objective.\n"\
+"\n"\
+"These are continually updated to coincide with the latest developments that\n"\
+"occur and as a result should provide you with nearly the best quality\n"\
+"currently possible from LAME.\n"\
+"\n"\
+"To activate these presets:\n"\
+"\n"\
+" For VBR modes (generally highest quality):\n"\
+"\n"\
+" \"preset=standard\" This preset should generally be transparent\n"\
+" to most people on most music and is already\n"\
+" quite high in quality.\n"\
+"\n"\
+" \"preset=extreme\" If you have extremely good hearing and similar\n"\
+" equipment, this preset will generally provide\n"\
+" slightly higher quality than the \"standard\"\n"\
+" mode.\n"\
+"\n"\
+" For CBR 320kbps (highest quality possible from the preset switches):\n"\
+"\n"\
+" \"preset=insane\" This preset will usually be overkill for most\n"\
+" people and most situations, but if you must\n"\
+" have the absolute highest quality with no\n"\
+" regard to filesize, this is the way to go.\n"\
+"\n"\
+" For ABR modes (high quality per given bitrate but not as high as VBR):\n"\
+"\n"\
+" \"preset=<kbps>\" Using this preset will usually give you good\n"\
+" quality at a specified bitrate. Depending on the\n"\
+" bitrate entered, this preset will determine the\n"\
+" optimal settings for that particular situation.\n"\
+" While this approach works, it is not nearly as\n"\
+" flexible as VBR, and usually will not attain the\n"\
+" same level of quality as VBR at higher bitrates.\n"\
+"\n"\
+"The following options are also available for the corresponding profiles:\n"\
+"\n"\
+" <fast> standard\n"\
+" <fast> extreme\n"\
+" insane\n"\
+" <cbr> (ABR Mode) - The ABR Mode is implied. To use it,\n"\
+" simply specify a bitrate. For example:\n"\
+" \"preset=185\" activates this\n"\
+" preset and uses 185 as an average kbps.\n"\
+"\n"\
+" \"fast\" - Enables the new fast VBR for a particular profile. The\n"\
+" disadvantage to the speed switch is that often times the\n"\
+" bitrate will be slightly higher than with the normal mode\n"\
+" and quality may be slightly lower also.\n"\
+" Warning: with the current version fast presets might result in too\n"\
+" high bitrate compared to regular presets.\n"\
+"\n"\
+" \"cbr\" - If you use the ABR mode (read above) with a significant\n"\
+" bitrate such as 80, 96, 112, 128, 160, 192, 224, 256, 320,\n"\
+" you can use the \"cbr\" option to force CBR mode encoding\n"\
+" instead of the standard abr mode. ABR does provide higher\n"\
+" quality but CBR may be useful in situations such as when\n"\
+" streaming an mp3 over the internet may be important.\n"\
+"\n"\
+" For example:\n"\
+"\n"\
+" \"-lameopts fast:preset=standard \"\n"\
+" or \"-lameopts cbr:preset=192 \"\n"\
+" or \"-lameopts preset=172 \"\n"\
+" or \"-lameopts preset=extreme \"\n"\
+"\n"\
+"\n"\
+"A few aliases are available for ABR mode:\n"\
+"phone => 16kbps/mono phon+/lw/mw-eu/sw => 24kbps/mono\n"\
+"mw-us => 40kbps/mono voice => 56kbps/mono\n"\
+"fm/radio/tape => 112kbps hifi => 160kbps\n"\
+"cd => 192kbps studio => 256kbps"
+#define MSGTR_ConfigfileError "configfile error"
+#define MSGTR_ErrorParsingCommandLine "error parsing cmdline"
+#define MSGTR_VideoStreamRequired "Video stream is mandatory!\n"
+#define MSGTR_ForcingInputFPS "input fps will be interpreted as %5.2f instead\n"
+#define MSGTR_RawvideoDoesNotSupportAudio "Output file format RAWVIDEO does not support audio - disabling audio\n"
+#define MSGTR_DemuxerDoesntSupportNosound "This demuxer doesn't support -nosound yet.\n"
+#define MSGTR_MemAllocFailed "memory allocation failed"
+#define MSGTR_NoMatchingFilter "Couldn't find matching filter/ao format!\n"
+#define MSGTR_MP3WaveFormatSizeNot30 "sizeof(MPEGLAYER3WAVEFORMAT)==%d!=30, maybe broken C compiler?\n"
+#define MSGTR_NoLavcAudioCodecName "Audio LAVC, Missing codec name!\n"
+#define MSGTR_LavcAudioCodecNotFound "Audio LAVC, couldn't find encoder for codec %s\n"
+#define MSGTR_CouldntAllocateLavcContext "Audio LAVC, couldn't allocate context!\n"
+#define MSGTR_CouldntOpenCodec "Couldn't open codec %s, br=%d\n"
+#define MSGTR_FramesizeBufsizeTag "FRAME_SIZE: %d, BUFFER_SIZE: %d, TAG: 0x%x\n"
// cfg-mencoder.h:
--- main/mencoder.c 2004-04-30 16:42:26.000000000 -0400
+++ working/mencoder.c 2004-05-17 17:17:40.000000000 -0400
@@ -267,9 +267,9 @@
static void mencoder_exit(int level, char *how)
{
if (how)
- printf("Exiting... (%s)\n", how);
+ mp_msg(MSGT_FIXME, MSGL_FIXME, MSGTR_ExitingHow, mp_gettext(how));
else
- printf("Exiting...\n");
+ mp_msg(MSGT_FIXME, MSGL_FIXME, MSGTR_Exiting);
exit(level);
}
@@ -281,7 +281,7 @@
mp_msg(MSGT_CPLAYER,MSGL_ERR,MSGTR_GetpathProblem);
} else {
if (m_config_parse_config_file(conf, conffile) < 0)
- mencoder_exit(1,"configfile error");
+ mencoder_exit(1,MSGTR_ConfigfileError);
free(conffile);
}
}
@@ -431,7 +431,7 @@
stream2=open_stream(frameno_filename,0,&i);
if(stream2){
demuxer2=demux_open(stream2,DEMUXER_TYPE_AVI,-1,-1,-2,NULL);
- if(demuxer2) printf(MSGTR_UsingPass3ControllFile,frameno_filename);
+ if(demuxer2) mp_msg(MSGT_FIXME, MSGL_FIXME, MSGTR_UsingPass3ControllFile, frameno_filename);
else mp_msg(MSGT_DEMUXER,MSGL_ERR,MSGTR_FormatNotRecognized);
}
@@ -439,12 +439,12 @@
m_config_register_options(mconfig,mencoder_opts);
parse_cfgfiles(mconfig);
filelist = m_config_parse_me_command_line(mconfig, argc, argv);
- if(!filelist) mencoder_exit(1, "error parsing cmdline");
+ if(!filelist) mencoder_exit(1, MSGTR_ErrorParsingCommandLine);
m_entry_set_options(mconfig,&filelist[0]);
filename = filelist[0].name;
if(!filename){
- printf(MSGTR_MissingFilename);
+ mp_msg(MSGT_FIXME, MSGL_ERR, MSGTR_MissingFilename);
mencoder_exit(1,NULL);
}
@@ -478,11 +478,11 @@
stream=open_stream(filename,0,&file_format);
if(!stream){
- printf(MSGTR_CannotOpenFile_Device);
+ mp_msg(MSGT_FIXME, MSGL_ERR, MSGTR_CannotOpenFile_Device);
mencoder_exit(1,NULL);
}
- printf("success: format: %d data: 0x%X - 0x%X\n",file_format, (int)(stream->start_pos),(int)(stream->end_pos));
+ mp_msg(MSGT_FIXME, MSGL_FIXME, MSGTR_OpenedStream, file_format, (int)(stream->start_pos), (int)(stream->end_pos));
#ifdef USE_DVDREAD
if(stream->type==STREAMTYPE_DVD){
@@ -501,7 +501,7 @@
demuxer=demux_open(stream,file_format,audio_id,video_id,dvdsub_id,filename);
if(!demuxer){
mp_msg(MSGT_DEMUXER,MSGL_ERR,MSGTR_FormatNotRecognized);
- printf(MSGTR_CannotOpenDemuxer);
+ mp_msg(MSGT_DEMUXER, MSGL_ERR, MSGTR_CannotOpenDemuxer); //correct target/level? FIXME?
mencoder_exit(1,NULL);
}
@@ -513,12 +513,12 @@
if(!sh_video)
{
- mp_msg(MSGT_CPLAYER,MSGL_FATAL,"Video stream is mandatory!\n");
+ mp_msg(MSGT_CPLAYER,MSGL_FATAL,MSGTR_VideoStreamRequired);
mencoder_exit(1,NULL);
}
if(!video_read_properties(sh_video)){
- printf(MSGTR_CannotReadVideoProperties);
+ mp_msg(MSGT_FIXME, MSGL_ERR, MSGTR_CannotReadVideoProperties);
mencoder_exit(1,NULL);
}
@@ -530,16 +530,16 @@
if(force_fps){
sh_video->fps=force_fps;
sh_video->frametime=1.0f/sh_video->fps;
- mp_msg(MSGT_MENCODER,MSGL_INFO,"input fps will be interpreted as %5.2f instead\n", sh_video->fps);
+ mp_msg(MSGT_MENCODER,MSGL_INFO,MSGTR_ForcingInputFPS, sh_video->fps);
}
if(sh_audio && out_file_format==MUXER_TYPE_RAWVIDEO){
- mp_msg(MSGT_MENCODER,MSGL_ERR,"Output file format RAWVIDEO does not support audio - disabling audio\n");
+ mp_msg(MSGT_MENCODER,MSGL_ERR,MSGTR_RawvideoDoesNotSupportAudio);
sh_audio=NULL;
}
if(sh_audio && out_audio_codec<0){
if(audio_id==-2)
- mp_msg(MSGT_MENCODER,MSGL_ERR,"This demuxer doesn't support -nosound yet.\n");
+ mp_msg(MSGT_MENCODER,MSGL_ERR,MSGTR_DemuxerDoesntSupportNosound);
mp_msg(MSGT_MENCODER,MSGL_FATAL,MSGTR_NoAudioEncoderSelected);
mencoder_exit(1,NULL);
}
@@ -620,7 +620,7 @@
// set up output file:
muxer_f=fopen(out_filename,"wb");
if(!muxer_f) {
- printf(MSGTR_CannotOpenOutputFile, out_filename);
+ mp_msg(MSGT_FIXME, MSGL_ERR, MSGTR_CannotOpenOutputFile, out_filename);
mencoder_exit(1,NULL);
}
@@ -669,7 +669,7 @@
mux_v->bih->biBitCount=24; // FIXME!!!
mux_v->bih->biSizeImage=mux_v->bih->biWidth*mux_v->bih->biHeight*(mux_v->bih->biBitCount/8);
}
- printf("videocodec: framecopy (%dx%d %dbpp fourcc=%x)\n",
+ mp_msg(MSGT_FIXME, MSGL_FIXME, MSGTR_VCodecFramecopy,
mux_v->bih->biWidth, mux_v->bih->biHeight,
mux_v->bih->biBitCount, mux_v->bih->biCompression);
break;
@@ -727,7 +727,7 @@
{
mux_v->bih->biCompression = mmioFOURCC(force_fourcc[0], force_fourcc[1],
force_fourcc[2], force_fourcc[3]);
- printf(MSGTR_ForcingOutputFourcc,
+ mp_msg(MSGT_FIXME, MSGL_FIXME, MSGTR_ForcingOutputFourcc,
mux_v->bih->biCompression, (char *)&mux_v->bih->biCompression);
}
@@ -741,7 +741,7 @@
mux_a->buffer_size=0x100000; //16384;
mux_a->buffer=malloc(mux_a->buffer_size);
if (!mux_a->buffer)
- mencoder_exit(1,"memory allocation failed");
+ mencoder_exit(1,MSGTR_MemAllocFailed);
mux_a->source=sh_audio;
@@ -772,12 +772,12 @@
mux_a->h.dwScale=mux_a->h.dwSampleSize;
mux_a->h.dwRate=mux_a->wf->nAvgBytesPerSec;
}
- printf("audiocodec: framecopy (format=%x chans=%d rate=%ld bits=%d bps=%ld sample=%ld)\n",
+ mp_msg(MSGT_FIXME, MSGL_FIXME, MSGTR_ACodecFramecopy,
mux_a->wf->wFormatTag, mux_a->wf->nChannels, mux_a->wf->nSamplesPerSec,
mux_a->wf->wBitsPerSample, mux_a->wf->nAvgBytesPerSec, mux_a->h.dwSampleSize);
break;
case ACODEC_PCM:
- printf("CBR PCM audio selected\n");
+ mp_msg(MSGT_FIXME, MSGL_FIXME, MSGTR_CBRPCMAudioSelected);
mux_a->h.dwScale=1;
mux_a->h.dwRate=force_srate?force_srate:sh_audio->samplerate;
mux_a->wf=malloc(sizeof(WAVEFORMATEX));
@@ -797,16 +797,16 @@
(mux_a->wf->wBitsPerSample==8)? AFMT_U8:AFMT_S16_LE,
mux_a->wf->wBitsPerSample/8,
16384, mux_a->wf->nAvgBytesPerSec)){
- mp_msg(MSGT_CPLAYER,MSGL_ERR,"Couldn't find matching filter / ao format!\n");
+ mp_msg(MSGT_CPLAYER,MSGL_ERR,MSGTR_NoMatchingFilter);
}
break;
#ifdef HAVE_MP3LAME
case ACODEC_VBRMP3:
- printf("MP3 audio selected\n");
+ mp_msg(MSGT_FIXME, MSGL_FIXME, MSGTR_MP3AudioSelected);
mux_a->h.dwSampleSize=0; // VBR
mux_a->h.dwRate=force_srate?force_srate:sh_audio->samplerate;
mux_a->h.dwScale=(mux_a->h.dwRate<32000)?576:1152; // samples/frame
- if(sizeof(MPEGLAYER3WAVEFORMAT)!=30) mp_msg(MSGT_MENCODER,MSGL_WARN,"sizeof(MPEGLAYER3WAVEFORMAT)==%d!=30, maybe broken C compiler?\n",sizeof(MPEGLAYER3WAVEFORMAT));
+ if(sizeof(MPEGLAYER3WAVEFORMAT)!=30) mp_msg(MSGT_MENCODER,MSGL_WARN,MSGTR_MP3WaveFormatSizeNot30,sizeof(MPEGLAYER3WAVEFORMAT));
mux_a->wf=malloc(sizeof(MPEGLAYER3WAVEFORMAT)); // should be 30
mux_a->wf->wFormatTag=0x55; // MP3
mux_a->wf->nChannels= (lame_param_mode<0) ? sh_audio->channels :
@@ -833,7 +833,7 @@
AFMT_S16_LE, 2,
#endif
4608, mux_a->h.dwRate*mux_a->wf->nChannels*2)){
- mp_msg(MSGT_CPLAYER,MSGL_ERR,"Couldn't find matching filter / ao format!\n");
+ mp_msg(MSGT_CPLAYER,MSGL_ERR,MSGTR_NoMatchingFilter);
}
break;
#endif
@@ -841,7 +841,7 @@
case ACODEC_LAVC:
if(!lavc_param_acodec)
{
- mp_msg(MSGT_MENCODER, MSGL_FATAL, "Audio LAVC, Missing codec name!\n");
+ mp_msg(MSGT_MENCODER, MSGL_FATAL, MSGTR_NoLavcAudioCodecName);
exit(1);
}
@@ -854,14 +854,14 @@
lavc_acodec = avcodec_find_encoder_by_name(lavc_param_acodec);
if (!lavc_acodec)
{
- mp_msg(MSGT_MENCODER, MSGL_FATAL, "Audio LAVC, couldn't find encoder for codec %s\n", lavc_param_acodec);
+ mp_msg(MSGT_MENCODER, MSGL_FATAL, MSGTR_LavcAudioCodecNotFound, lavc_param_acodec);
exit(1);
}
lavc_actx = avcodec_alloc_context();
if(lavc_actx == NULL)
{
- mp_msg(MSGT_MENCODER, MSGL_FATAL, "Audio LAVC, couldn't allocate context!\n");
+ mp_msg(MSGT_MENCODER, MSGL_FATAL, MSGTR_CouldntAllocateLavcContext);
exit(1);
}
@@ -890,7 +890,7 @@
if(avcodec_open(lavc_actx, lavc_acodec) < 0)
{
- mp_msg(MSGT_MENCODER, MSGL_FATAL, "Couldn't open codec %s, br=%d\n", lavc_param_acodec, lavc_param_abitrate);
+ mp_msg(MSGT_MENCODER, MSGL_FATAL, MSGTR_CouldntOpenCodec, lavc_param_acodec, lavc_param_abitrate);
exit(1);
}
@@ -902,7 +902,7 @@
lavc_abuf = malloc(lavc_actx->frame_size * 2 * lavc_actx->channels);
if(lavc_abuf == NULL)
{
- fprintf(stderr, "Couldn't allocate %d bytes\n", lavc_actx->frame_size * 2 * lavc_actx->channels);
+ mp_msg(MSGT_FIXME, MSGL_ERR, MSGTR_CannotAllocateBytes, lavc_actx->frame_size * 2 * lavc_actx->channels); // Converted from fprintf(stderr, ...);
exit(1);
}
@@ -971,11 +971,11 @@
AFMT_S16_NE, 2,
mux_a->h.dwSuggestedBufferSize,
mux_a->h.dwSuggestedBufferSize*2)) {
- mp_msg(MSGT_CPLAYER, MSGL_ERR, "Couldn't find matching filter / ao format!\n");
+ mp_msg(MSGT_CPLAYER, MSGL_ERR, MSGTR_NoMatchingFilter);
exit(1);
}
- mp_msg(MSGT_MENCODER, MSGL_V, "FRAME_SIZE: %d, BUFFER_SIZE: %d, TAG: 0x%x\n", lavc_actx->frame_size, lavc_actx->frame_size * 2 * lavc_actx->channels, mux_a->wf->wFormatTag);
+ mp_msg(MSGT_MENCODER, MSGL_V, MSGTR_FramesizeBufsizeTag, lavc_actx->frame_size, lavc_actx->frame_size * 2 * lavc_actx->channels, mux_a->wf->wFormatTag);
break;
#endif
@@ -985,12 +985,12 @@
if(audio_delay!=0.0){
mux_a->h.dwStart=audio_delay*mux_a->h.dwRate/mux_a->h.dwScale;
- printf("Setting AUDIO DELAY to %5.3f\n",mux_a->h.dwStart*mux_a->h.dwScale/(float)mux_a->h.dwRate);
+ mp_msg(MSGT_FIXME, MSGL_FIXME, MSGTR_SettingAudioDelay,mux_a->h.dwStart*mux_a->h.dwScale/(float)mux_a->h.dwRate);
}
} // if(sh_audio)
-printf(MSGTR_WritingAVIHeader);
+mp_msg(MSGT_FIXME, MSGL_FIXME, MSGTR_WritingAVIHeader);
if (muxer->cont_write_header) muxer_write_header(muxer);
decoded_frameno=0;
@@ -1017,14 +1017,14 @@
if(lame_param_mode>=0) lame_set_mode(lame,lame_param_mode); // j-st
if(lame_param_ratio>0) lame_set_compression_ratio(lame,lame_param_ratio);
if(lame_param_scale>0) {
- printf("Setting audio input gain to %f\n", lame_param_scale);
+ mp_msg(MSGT_FIXME, MSGL_FIXME, MSGTR_SettingAudioInputGain, lame_param_scale);
lame_set_scale(lame,lame_param_scale);
}
if(lame_param_lowpassfreq>=-1) lame_set_lowpassfreq(lame,lame_param_lowpassfreq);
if(lame_param_highpassfreq>=-1) lame_set_highpassfreq(lame,lame_param_highpassfreq);
#if HAVE_MP3LAME >= 392
if(lame_param_preset != NULL){
- printf ("\npreset=%s\n\n",lame_param_preset);
+ mp_msg(MSGT_FIXME, MSGL_FIXME, MSGTR_LamePresetEquals,lame_param_preset);
lame_presets_set(lame,lame_param_fast, (lame_param_vbr==0), lame_param_preset);
}
#endif
@@ -1064,18 +1064,18 @@
if (out_file_format == MUXER_TYPE_MPEG)
{
if (audio_preload > 0.4) {
- fprintf(stderr,"Limiting audio preload to 0.4s\n");
+ mp_msg(MSGT_FIXME, MSGL_ERR, MSGTR_LimitingAudioPreload);
audio_preload = 0.4;
}
if (audio_density < 4) {
- fprintf(stderr,"Increasing audio density to 4\n");
+ mp_msg(MSGT_FIXME, MSGL_ERR, MSGTR_IncreasingAudioDensity);
audio_density = 4;
}
}
if(file_format == DEMUXER_TYPE_TV)
{
- fprintf(stderr,"Forcing audio preload to 0, max pts correction to 0\n");
+ mp_msg(MSGT_FIXME, MSGL_ERR, MSGTR_ZeroingAudioPreloadAndMaxPtsCorrection);
audio_preload = 0.0;
default_max_pts_correction = 0;
}
@@ -1317,7 +1317,7 @@
if(skip_flag<0){
// duplicate frame
- if(file_format != DEMUXER_TYPE_TV && !verbose) printf(MSGTR_DuplicateFrames,-skip_flag);
+ if(file_format != DEMUXER_TYPE_TV && !verbose) mp_msg(MSGT_FIXME, MSGL_FIXME, MSGTR_DuplicateFrames,-skip_flag);
while(skip_flag<0){
duplicatedframes++;
if (!encode_duplicates || ((vf_instance_t *)sh_video->vfilter)->control(sh_video->vfilter, VFCTRL_DUPLICATE_FRAME, 0) != CONTROL_TRUE)
@@ -1327,7 +1327,7 @@
} else
if(skip_flag>0){
// skip frame
- if(file_format != DEMUXER_TYPE_TV && !verbose) printf(MSGTR_SkipFrame);
+ if(file_format != DEMUXER_TYPE_TV && !verbose) mp_msg(MSGT_FIXME, MSGL_FIXME, MSGTR_SkipFrame);
skippedframes++;
--skip_flag;
}
@@ -1478,15 +1478,15 @@
mux_a->h.dwRate=mux_a->wf->nAvgBytesPerSec;
mux_a->h.dwScale=1;
mux_a->wf->nBlockAlign=1;
- printf("\n\nCBR audio: %ld bytes/sec, %d bytes/block\n",
+ mp_msg(MSGT_FIXME, MSGL_FIXME, MSGTR_CBRAudioByterate,
mux_a->h.dwRate,((MPEGLAYER3WAVEFORMAT*)(mux_a->wf))->nBlockSize);
}
#endif
-printf(MSGTR_WritingAVIIndex);
+mp_msg(MSGT_FIXME, MSGL_FIXME, MSGTR_WritingAVIIndex);
if (muxer->cont_write_index) muxer_write_index(muxer);
muxer_f_size=ftello(muxer_f);
-printf(MSGTR_FixupAVIHeader);
+mp_msg(MSGT_FIXME, MSGL_FIXME, MSGTR_FixupAVIHeader);
fseek(muxer_f,0,SEEK_SET);
if (muxer->cont_write_header) muxer_write_header(muxer); // update header
if(ferror(muxer_f) || fclose(muxer_f) != 0) {
@@ -1497,18 +1497,18 @@
vobsub_out_close(vobsub_writer);
if(out_video_codec==VCODEC_FRAMENO && mux_v->timer>100){
- printf(MSGTR_RecommendedVideoBitrate,"650MB",(int)((650*1024*1024-muxer_f_size)/mux_v->timer/125));
- printf(MSGTR_RecommendedVideoBitrate,"700MB",(int)((700*1024*1024-muxer_f_size)/mux_v->timer/125));
- printf(MSGTR_RecommendedVideoBitrate,"800MB",(int)((800*1024*1024-muxer_f_size)/mux_v->timer/125));
- printf(MSGTR_RecommendedVideoBitrate,"2 x 650MB",(int)((2*650*1024*1024-muxer_f_size)/mux_v->timer/125));
- printf(MSGTR_RecommendedVideoBitrate,"2 x 700MB",(int)((2*700*1024*1024-muxer_f_size)/mux_v->timer/125));
- printf(MSGTR_RecommendedVideoBitrate,"2 x 800MB",(int)((2*800*1024*1024-muxer_f_size)/mux_v->timer/125));
+ mp_msg(MSGT_FIXME, MSGL_FIXME, MSGTR_RecommendedVideoBitrate,"650MB",(int)((650*1024*1024-muxer_f_size)/mux_v->timer/125));
+ mp_msg(MSGT_FIXME, MSGL_FIXME, MSGTR_RecommendedVideoBitrate,"700MB",(int)((700*1024*1024-muxer_f_size)/mux_v->timer/125));
+ mp_msg(MSGT_FIXME, MSGL_FIXME, MSGTR_RecommendedVideoBitrate,"800MB",(int)((800*1024*1024-muxer_f_size)/mux_v->timer/125));
+ mp_msg(MSGT_FIXME, MSGL_FIXME, MSGTR_RecommendedVideoBitrate,"2 x 650MB",(int)((2*650*1024*1024-muxer_f_size)/mux_v->timer/125));
+ mp_msg(MSGT_FIXME, MSGL_FIXME, MSGTR_RecommendedVideoBitrate,"2 x 700MB",(int)((2*700*1024*1024-muxer_f_size)/mux_v->timer/125));
+ mp_msg(MSGT_FIXME, MSGL_FIXME, MSGTR_RecommendedVideoBitrate,"2 x 800MB",(int)((2*800*1024*1024-muxer_f_size)/mux_v->timer/125));
}
-printf(MSGTR_VideoStreamResult,
+mp_msg(MSGT_FIXME, MSGL_FIXME, MSGTR_VideoStreamResult,
(float)(mux_v->size/mux_v->timer*8.0f/1000.0f), (int)(mux_v->size/mux_v->timer), (int)mux_v->size, (float)mux_v->timer, decoded_frameno);
if(sh_audio)
-printf(MSGTR_AudioStreamResult,
+mp_msg(MSGT_FIXME, MSGL_FIXME, MSGTR_AudioStreamResult,
(float)(mux_a->size/mux_a->timer*8.0f/1000.0f), (int)(mux_a->size/mux_a->timer), (int)mux_a->size, (float)mux_a->timer);
if(sh_video){ uninit_video(sh_video);sh_video=NULL; }
@@ -1600,7 +1600,7 @@
int mono = 0;
if (strcmp(preset_name, "help") == 0) {
- fprintf(stdout, "LAME version %s (%s)\n\n", get_lame_version(), get_lame_url());
+ mp_msg(MSGT_FIXME, MSGL_FIXME, MSGTR_LameVersion, get_lame_version(), get_lame_url());
lame_presets_longinfo_dm( stdout );
return -1;
}
@@ -1701,42 +1701,17 @@
}
else {
- fprintf(stderr, "LAME version %s (%s)\n\n", get_lame_version(), get_lame_url());
- fprintf(stderr,"Error: The bitrate specified is out of the valid range for this preset\n"
- "\n"
- "When using this mode you must enter a value between \"8\" and \"320\"\n"
- "\n"
- "For further information try: \"-lameopts preset=help\"\n"
- );
+ mp_msg(MSGT_FIXME, MSGL_ERR, MSGTR_LameVersion, get_lame_version(), get_lame_url());
+ mp_msg(MSGT_FIXME, MSGL_ERR, MSGTR_InvalidBitrateForLamePreset);
return -1;
}
}
- fprintf(stderr, "LAME version %s (%s)\n\n", get_lame_version(), get_lame_url());
- fprintf(stderr,"Error: You did not enter a valid profile and/or options with preset\n"
- "\n"
- "Available profiles are:\n"
- "\n"
- " <fast> standard\n"
- " <fast> extreme\n"
- " insane\n"
- " <cbr> (ABR Mode) - The ABR Mode is implied. To use it,\n"
- " simply specify a bitrate. For example:\n"
- " \"preset=185\" activates this\n"
- " preset and uses 185 as an average kbps.\n"
- "\n"
- " Some examples:\n"
- "\n"
- " \"-lameopts fast:preset=standard \"\n"
- " or \"-lameopts cbr:preset=192 \"\n"
- " or \"-lameopts preset=172 \"\n"
- " or \"-lameopts preset=extreme \"\n"
- "\n"
- "For further information try: \"-lameopts preset=help\"\n"
- );
- mencoder_exit(1, "error parsing cmdline");
+ mp_msg(MSGT_FIXME, MSGL_ERR, MSGTR_LameVersion, get_lame_version(), get_lame_url());
+ mp_msg(MSGT_FIXME, MSGL_ERR, MSGTR_InvalidLamePresetOptions);
+ mencoder_exit(1, MSGTR_ErrorParsingCommandLine);
}
#endif
@@ -1745,84 +1720,7 @@
taken out of presets_longinfo_dm in lame-3.93.1/frontend/parse.c and modified */
static void lame_presets_longinfo_dm ( FILE* msgfp )
{
- fprintf ( msgfp,
- "\n"
- "The preset switches are designed to provide the highest possible quality.\n"
- "\n"
- "They have for the most part been subject to and tuned via rigorous double blind\n"
- "listening tests to verify and achieve this objective.\n"
- "\n"
- "These are continually updated to coincide with the latest developments that\n"
- "occur and as a result should provide you with nearly the best quality\n"
- "currently possible from LAME.\n"
- "\n"
- "To activate these presets:\n"
- "\n"
- " For VBR modes (generally highest quality):\n"
- "\n"
- " \"preset=standard\" This preset should generally be transparent\n"
- " to most people on most music and is already\n"
- " quite high in quality.\n"
- "\n"
- " \"preset=extreme\" If you have extremely good hearing and similar\n"
- " equipment, this preset will generally provide\n"
- " slightly higher quality than the \"standard\"\n"
- " mode.\n"
- "\n"
- " For CBR 320kbps (highest quality possible from the preset switches):\n"
- "\n"
- " \"preset=insane\" This preset will usually be overkill for most\n"
- " people and most situations, but if you must\n"
- " have the absolute highest quality with no\n"
- " regard to filesize, this is the way to go.\n"
- "\n"
- " For ABR modes (high quality per given bitrate but not as high as VBR):\n"
- "\n"
- " \"preset=<kbps>\" Using this preset will usually give you good\n"
- " quality at a specified bitrate. Depending on the\n"
- " bitrate entered, this preset will determine the\n"
- " optimal settings for that particular situation.\n"
- " While this approach works, it is not nearly as\n"
- " flexible as VBR, and usually will not attain the\n"
- " same level of quality as VBR at higher bitrates.\n"
- "\n"
- "The following options are also available for the corresponding profiles:\n"
- "\n"
- " <fast> standard\n"
- " <fast> extreme\n"
- " insane\n"
- " <cbr> (ABR Mode) - The ABR Mode is implied. To use it,\n"
- " simply specify a bitrate. For example:\n"
- " \"preset=185\" activates this\n"
- " preset and uses 185 as an average kbps.\n"
- "\n"
- " \"fast\" - Enables the new fast VBR for a particular profile. The\n"
- " disadvantage to the speed switch is that often times the\n"
- " bitrate will be slightly higher than with the normal mode\n"
- " and quality may be slightly lower also.\n"
- " Warning: with the current version fast presets might result in too\n"
- " high bitrate compared to regular presets.\n"
- "\n"
- " \"cbr\" - If you use the ABR mode (read above) with a significant\n"
- " bitrate such as 80, 96, 112, 128, 160, 192, 224, 256, 320,\n"
- " you can use the \"cbr\" option to force CBR mode encoding\n"
- " instead of the standard abr mode. ABR does provide higher\n"
- " quality but CBR may be useful in situations such as when\n"
- " streaming an mp3 over the internet may be important.\n"
- "\n"
- " For example:\n"
- "\n"
- " \"-lameopts fast:preset=standard \"\n"
- " or \"-lameopts cbr:preset=192 \"\n"
- " or \"-lameopts preset=172 \"\n"
- " or \"-lameopts preset=extreme \"\n"
- "\n"
- "\n"
- "A few aliases are available for ABR mode:\n"
- "phone => 16kbps/mono phon+/lw/mw-eu/sw => 24kbps/mono\n"
- "mw-us => 40kbps/mono voice => 56kbps/mono\n"
- "fm/radio/tape => 112kbps hifi => 160kbps\n"
- "cd => 192kbps studio => 256kbps");
+ mp_msg(MSGT_FIXME, MSGL_FIXME, MSGTR_LamePresetsLongInfo);
mencoder_exit(0, NULL);
}
#endif
--- main/mplayer.c 2004-04-30 16:42:26.000000000 -0400
+++ working/mplayer.c 2004-05-17 17:22:11.000000000 -0400
@@ -474,7 +474,7 @@
current_module="exit_player";
- if(how) mp_msg(MSGT_CPLAYER,MSGL_INFO,MSGTR_Exiting,mp_gettext(how));
+ if(how) mp_msg(MSGT_CPLAYER,MSGL_INFO,MSGTR_ExitingHow,mp_gettext(how));
mp_msg(MSGT_CPLAYER,MSGL_DBG2,"max framesize was %d bytes\n",max_framesize);
exit(rc);
1
2
CVS change done by Diego Biurrun CVS
Update of /cvsroot/mplayer/homepage/src
In directory mail:/var2/tmp/cvs-serv27075/src
Modified Files:
donations.src.en
Log Message:
Michael's wishes
Index: donations.src.en
===================================================================
RCS file: /cvsroot/mplayer/homepage/src/donations.src.en,v
retrieving revision 1.48
retrieving revision 1.49
diff -u -r1.48 -r1.49
--- donations.src.en 15 May 2004 11:01:42 -0000 1.48
+++ donations.src.en 22 May 2004 01:38:45 -0000 1.49
@@ -106,6 +106,14 @@
</ul>
+<b>Michael Niedermayer</b><br><br>
+Wishes:
+<ul>
+<li>40GB+ notebook harddisk</li>
+<li>faster notebook (1GHz+, 256MB+, 80GB+, 1024x768+ would be nice)</li>
+</ul>
+
+
<b>Sascha Sommer</b><br><br>
Wishes:
<ul>
1
0
CVS change done by Diego Biurrun CVS
Update of /cvsroot/mplayer/main/DOCS/xml/en
In directory mail:/var2/tmp/cvs-serv589/en
Modified Files:
ports.xml
Log Message:
MinGW comes without zlib (necessary for compressed MOV headers).
Index: ports.xml
===================================================================
RCS file: /cvsroot/mplayer/main/DOCS/xml/en/ports.xml,v
retrieving revision 1.41
retrieving revision 1.42
diff -u -r1.41 -r1.42
--- ports.xml 7 May 2004 13:13:11 -0000 1.41
+++ ports.xml 22 May 2004 00:47:49 -0000 1.42
@@ -402,6 +402,12 @@
<para>Extract DirectX header files to <filename class="directory">/mingw/include/</filename>.</para>
+<para>MOV compressed header support requires
+ <ulink url="http://www.gzip.org/zlib/">zlib</ulink>, which
+ <application>MinGW</application> does not provide by default.
+ Configure it with <option>--prefix=/mingw</option> and install
+ it before compiling <application>MPlayer</application>.</para>
+
</sect2>
1
0
CVS: homepage/src dload.src.en, 1.68, 1.69 dload.src.es, 1.9, 1.10
by syncmail@mplayerhq.hu 21 May '04
by syncmail@mplayerhq.hu 21 May '04
21 May '04
CVS change done by Diego Biurrun CVS
Update of /cvsroot/mplayer/homepage/src
In directory mail:/var2/tmp/cvs-serv1402
Modified Files:
dload.src.en dload.src.es
Log Message:
skin version bump
Index: dload.src.en
===================================================================
RCS file: /cvsroot/mplayer/homepage/src/dload.src.en,v
retrieving revision 1.68
retrieving revision 1.69
diff -u -r1.68 -r1.69
--- dload.src.en 16 May 2004 22:58:07 -0000 1.68
+++ dload.src.en 21 May 2004 22:05:43 -0000 1.69
@@ -859,7 +859,7 @@
</tr>
<tr>
<td class="text"><a href="../images/skin-softgrip-shot01.jpg">softgrip</a></td>
- <td class="text">1.0</td>
+ <td class="text">1.1</td>
<td class="text">Sudrien</td>
<td class="text">-</td>
<td class="mirror">
Index: dload.src.es
===================================================================
RCS file: /cvsroot/mplayer/homepage/src/dload.src.es,v
retrieving revision 1.9
retrieving revision 1.10
diff -u -r1.9 -r1.10
--- dload.src.es 14 May 2004 02:25:29 -0000 1.9
+++ dload.src.es 21 May 2004 22:05:43 -0000 1.10
@@ -1090,7 +1090,7 @@
<font class="menusubheader"><A HREF="../images/skin-softgrip-shot01.jpg">softgrip</A>
</TD>
<TD><font class="text">
- 1.0
+ 1.1
</TD>
<TD><font class="text">
Sudrien
1
0
CVS change done by Diego Biurrun CVS
Update of /cvsroot/mplayer/main/DOCS/xml/en
In directory mail:/var2/tmp/cvs-serv28967/en
Modified Files:
mencoder.xml
Log Message:
Remove 3-pass encoding guide (can break A/V sync), rescaling is not
necessarily bad, typo.
Index: mencoder.xml
===================================================================
RCS file: /cvsroot/mplayer/main/DOCS/xml/en/mencoder.xml,v
retrieving revision 1.21
retrieving revision 1.22
diff -u -r1.21 -r1.22
--- mencoder.xml 3 May 2004 01:15:15 -0000 1.21
+++ mencoder.xml 17 May 2004 23:35:36 -0000 1.22
@@ -15,10 +15,8 @@
</para>
<sect1 id="menc-feat-mpeg4">
-<title>Encoding 2 or 3-pass MPEG4 ("DivX")</title>
+<title>Encoding 2-pass MPEG4 ("DivX")</title>
-<formalpara>
-<title>2-pass encoding</title>
<para>
The name comes from the fact that this method encodes the file <emphasis>twice</emphasis>.
The first encoding (dubbed pass) creates some temporary files
@@ -27,79 +25,29 @@
file is created, using the bitrate data from the temporary files. The
resulting file will have much better image quality. If this is the first
time you heard about this, you should consult some guides available on the
-Net.
+net.
</para>
-</formalpara>
+<example>
+<title>copy audio track</title>
<para>
-This example shows how to encode a DVD to a 2-pass MPEG4 ("DivX") AVI.
-Just two commands are needed:
-<screen>rm frameno.avi</screen>
-remove this file, which can come from a previous 3-pass encoding (it interferes
-with current one)
+2-pass encode of a DVD to an MPEG4 ("DivX") AVI while copying
+the audio track.
<screen>
mencoder dvd://2 -ovc lavc -lavcopts vcodec=mpeg4:vpass=1 -oac copy -o <replaceable>movie.avi</replaceable>
mencoder dvd://2 -ovc lavc -lavcopts vcodec=mpeg4:vpass=2 -oac copy -o <replaceable>movie.avi</replaceable>
</screen>
</para>
-
-<formalpara>
-<title>3-pass encoding</title>
-<para>
-This is an extension of 2-pass encoding, where the audio encoding takes
-place in a separate pass. This method enables estimation of recommended
-video bitrate in order to fit on a CD. Also, the audio is encoded only
-once, unlike in 2-pass mode. The schematics:
-</para>
-</formalpara>
-
-<procedure>
-<step><para>
- Remove conflicting temporary file:
- <screen>rm frameno.avi</screen>
- </para></step>
-<step><para>
- <emphasis>First pass:</emphasis>
-
- <screen>mencoder <replaceable>file/DVD</replaceable> -ovc frameno -oac mp3lame -lameopts vbr=3 -o frameno.avi</screen>
-
- An audio-only avi file will be created, containing
- <emphasis role="bold">only</emphasis> the requested audio stream. Don't forget
- <option>-lameopts</option>, if you need to set it. If you were encoding a
- long movie, <application>MEncoder</application> prints the recommended
- bitrate values for 650Mb, 700Mb, and 800Mb destination sizes, after this
- pass finishes.
- </para></step>
-<step><para>
- <emphasis>Second pass:</emphasis>
- <screen>
-mencoder <replaceable>file/DVD</replaceable> -oac copy -ovc lavc -lavcopts vcodec=mpeg4:vpass=1:vbitrate=<replaceable>bitrate</replaceable><!--
---></screen>
-This is the first pass of video encoding. Optionally specify the video
-bitrate <application>MEncoder</application> printed at the end of the previous pass.
- </para></step>
-<step><para>
- <emphasis>Third pass:</emphasis>
-<screen>
-mencoder <replaceable>file/DVD</replaceable> -oac copy -ovc lavc -lavcopts vcodec=mpeg4:vpass=2:vbitrate=<replaceable>bitrate</replaceable>
-</screen>
-This is the second pass of video encoding. Specify the same bitrate
-as in the previous pass unless you really know what you are doing.
-In this pass, audio from <filename>frameno.avi</filename> will be
-inserted into the destination file...and it's all ready!
-</para></step>
-</procedure>
+</example>
<example>
-<title>Example of 3-pass encoding</title>
+<title>encode audio track</title>
<para>
-<screen>rm frameno.avi</screen>
-remove this file, which can come from a previous 3-pass encoding
-(it interferes with current one)
+2-pass encode of a DVD to an MPEG4 ("DivX") AVI while encoding
+the audio track to MP3.
<screen>
-mencoder dvd://2 -ovc frameno -o frameno.avi -oac mp3lame -lameopts vbr=3
-mencoder dvd://2 -ovc lavc -lavcopts vcodec=mpeg4:vpass=1 -oac copy -o <replaceable>movie.avi</replaceable>
-mencoder dvd://2 -ovc lavc -lavcopts vcodec=mpeg4:vpass=2 -oac copy -o <replaceable>movie.avi</replaceable>
+mencoder dvd://2 -ovc lavc -lavcopts vcodec=mpeg4:vpass=1 -oac mp3lame -lameopts vbr=3 -o <replaceable>movie.avi</replaceable>
+mencoder dvd://2 -ovc lavc -lavcopts vcodec=mpeg4:vpass=2 -oac mp3lame -lameopts vbr=3 -o <replaceable>movie.avi</replaceable>
</screen>
</para>
</example>
@@ -142,9 +90,8 @@
<para>
Often the need to resize movie images' size emerges. Its reasons can be
many: decreasing file size, network bandwidth,etc. Most people even do
-rescaling when converting DVDs or SVCDs to DivX AVI. This is <emphasis role="bold">bad</emphasis>.
-Instead of even you doing so, read the <link linkend="aspect">Preserving aspect ratio</link>
-section.
+rescaling when converting DVDs or SVCDs to DivX AVI. If you wish to rescale,
+read the <link linkend="aspect">Preserving aspect ratio</link> section.
</para>
<para>
@@ -158,7 +105,7 @@
<para>
Usage:
<screen>
-mencoder <replaceable>input.mpg</replaceable> -ovc lavc -lavcopts vcodec=mpeg4 -vf scale=640:480-o <replaceable>output.avi</replaceable>
+mencoder <replaceable>input.mpg</replaceable> -ovc lavc -lavcopts vcodec=mpeg4 -vf scale=640:480 -o <replaceable>output.avi</replaceable>
</screen>
</para>
</sect1>
1
0