haiku/build/jam
Stephan Aßmus e9a09f6670 * Enabled the mp2/mp3 decoder in the ffmpeg plug-in (CodecTable.h).
* Removed the mp3_reader and mp3_decoder from the image and from
   the source tree even. The mpeg123lib based decoder was crashy,
   since the lib didn't cope with bad input data too well, whatever
   the reason, but bad input can also be a specially crafted file.
   I didn't see the value in keeping two decoders around that use
   a third party library as backend. While reading in the mp3_decoder
   code, I even saw that it used global variables in the mpeg123 lib
   to figure out framerate and channel count, after decoding a bit of
   input. Obviously this has concurrency issues.
 * Removed the mp4_reader from the image. It is native code, and should
   perhaps be preferred over imported code, but I don't have the
   resources to look into it, and David doesn't seem to have the time
   either. There are basically three types of problems with the
   native mp4 reader: 1) It is way too CPU intensive. I have many HD
   files that don't play at all, since there is not enough time left
   for actual decoding. 2) Seeking leaves a lot of visual artifacts
   (with the very same decoder plug-in), since there seems something
   wrong either with finding true keyframes, or with flushing buffers
   correctly. And 3) very often audio stops working at all after
   seeking. Sometimes a keyframe is returned for audio which is very
   far away from the wanted frame, which currently triggers bad
   behavior in the audio producer node in MediaPlayer and can even
   crash the media_addon_server. With the ffmpeg based mp4 reader,
   none of these problems exist: Seeking is perfect, no artifacts,
   CPU load is low enough for pretty much all HD clips I tested with,
   and audio always works and is always in perfect sync with the video
   after seeking.

If there are regressions after this commit at all (I tested a lot of
files), then I anticipate only that the ffmpeg plugin does not advertise
support for files it could actually handle (i.e. easily fixable). In
those cases hopefully a test stream can be made available. If the
native mp4 reader is improved to the point that it works as well as
the ffmpeg mp4 demuxer, we can easily switch it back, but for now, users
will prefer reliable playback.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38403 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-08-27 17:16:00 +00:00
..
board Patch by "notzed" (ticket #5368) (modified): Add bootloader support for BeagleBoard. 2010-06-30 17:24:11 +00:00
AlternativeGCCArchive * Use the new Add{Files,Symlink}ToHaikuHybridImage rules in HaikuImage and 2009-05-27 01:12:34 +00:00
AnybootImage Create "anyboot-image" and define build profile rules to utilize it. 2010-03-15 23:51:45 +00:00
BeOSRules * broke out locale-related jam rules into their own file, LocaleRules 2010-07-23 19:56:24 +00:00
BuildSetup * The arp module gives warnings in GCC4, so the typo was actually needed; this 2010-08-27 12:09:47 +00:00
CDBootImage Rules and targets to build a boot CD iso... use: 2008-03-02 04:38:29 +00:00
CDBootPPCImage Add COFF loader to ppc ISO. 2008-11-11 19:22:16 +00:00
CDRules Unified build_haiku_[cd|image] scripts. Fixes #5490. 2010-04-10 23:14:42 +00:00
CommandLineArguments There's no "disk" default build profile, since picking a random partition 2010-05-05 18:20:43 +00:00
ConfigRules * Added JAMFILE to the config variables. 2008-03-30 15:34:30 +00:00
DocumentationRules Replace spaces with tabs. 2008-04-08 15:18:19 +00:00
FileRules Patch by Andreas Färber: 2010-03-21 17:02:14 +00:00
FloppyBootImage * Prefixed the INCLUDE_GPL_ADDONS variable by "HAIKU_". configure needs to 2009-12-20 13:55:45 +00:00
FreetypeRules updated freetype to 2.2.1, tested ok, please forgive me for possible left issues :) 2006-06-27 11:34:35 +00:00
HaikuCD Enhance InstallOptionalHaikuImagePackage to accept a new parameter, which 2010-04-24 19:52:36 +00:00
HaikuImage * Enabled the mp2/mp3 decoder in the ffmpeg plug-in (CodecTable.h). 2010-08-27 17:16:00 +00:00
HeadersRules * reintegrated gsoc-locale-kit branch into trunk - there's more 2009-09-18 22:23:34 +00:00
HelperRules * Remove now unneeded (hopefully) timezone data 2010-07-27 09:48:36 +00:00
ImageRules Allow to suppress individual Optional Packages 2010-08-14 16:43:55 +00:00
KernelRules Added rule SetVersionScript to set the version script for a target and adjusted 2009-05-22 14:51:16 +00:00
LocaleRules * Allow to put the different catalogs for the bin/ directory in spearate places in the generated folder. 2010-08-03 14:10:15 +00:00
MainBuildRules * reverted the part of r35362 that introduced support for minor ABI versioning - my evil twin made 2010-01-31 23:41:44 +00:00
MathRules Added rules for performing basic integer arithmetics (+, -, *). The rules 2007-04-06 02:37:12 +00:00
MiscRules Added some documentation about the anyboot images. Verification appreciated. 2010-05-03 21:51:58 +00:00
NetBootArchive Fixed the haiku-netboot-archive, as ipv4_datagram was removed in r37794. 2010-07-28 20:12:49 +00:00
OptionalBuildFeatures Fetch ICU PPC optional package from the default optional packages dir. 2010-08-18 23:22:42 +00:00
OptionalPackageDependencies Updated cdrtools optional package rebuilt by Chris Roberts due to some errors that crept into the earlier one. Added iconv as dependency. 2010-08-25 20:49:21 +00:00
OptionalPackages * Updated the GCC2 package to version -100818. This will soon be needed to be 2010-08-26 14:31:52 +00:00
OptionalTestPackages Removed PosixTestSuite optional package. 2010-04-05 13:06:17 +00:00
OverriddenJamRules Added rule SetVersionScript to set the version script for a target and adjusted 2009-05-22 14:51:16 +00:00
PackageRules The Copy rule respects an already set SEARCH path now. 2006-02-06 23:04:01 +00:00
ReleaseBuildProfiles Increased the size of the nightly and alpha profiles, as the limited space 2010-07-14 07:01:41 +00:00
TestsRules * Made the libbe_test environment basically working under Haiku - to actually 2009-08-19 14:17:13 +00:00
UserBuildConfig.ReadMe Allow to suppress individual Optional Packages 2010-08-14 16:43:55 +00:00
UserBuildConfig.sample * Remove references to the timezone files in userbuildconfig jamfiles. We would need another AddSymlinkToHaikuImage 2010-07-27 10:46:02 +00:00