single coefficient elimination
prequantization
more readable malloc & check if NULL
error concealment / error resilience
b_quant_offset (unfinished, should be 0 for now)
data partitioning
Originally committed as revision 642 to svn://svn.ffmpeg.org/ffmpeg/trunk
Fabrice Bellard [Sat, 1 Jun 2002 14:34:29 +0000 (14:34 +0000)]
fixed layer1/2 overflow if very loud sound - fixed broken free format decoding to pass all mpeg audio standard decoding tests (please avoid patching the parser without having all test streams available - contact me if necessary)
Originally committed as revision 634 to svn://svn.ffmpeg.org/ffmpeg/trunk
Zdenek Kabelac [Thu, 30 May 2002 15:14:56 +0000 (15:14 +0000)]
* removed MANGLE from macros for setting constants
* using MOVQ_WONE/MOVQ_BFE as two instruction instead of static memory value access
as its always faster
* PAVGB_MMX macro is using now mm6 -> mm7 is unmodified
* replaced original pixels_xy2_mmx with new faster and equal implementation
* replaced usage of mm7 for other then ZERO contstant in _rnd & _avg file with mm6
Originally committed as revision 632 to svn://svn.ffmpeg.org/ffmpeg/trunk
Philip Gladstone [Thu, 30 May 2002 02:49:07 +0000 (02:49 +0000)]
* New stuff and bug fixes:
* Change to dynamically allocated buffers. Should reduce memory footprint significantly
as well as eliminate a call to av_abort!
* Better version of WMP rate switching infrastructure. Currently turned off till
the PTS fixes are in.
* Added a Redirect type feature. This allows URLs served by ffserver to just
redirect to somewhere else. You might want to do this. Really this needs to
be enhanced -- say to handle all 404 pages.
* Add mechanism to automatically fire up ffmpeg on ffserver start. This is turned
on by adding the Launch keyword to the <feed> definition.
* Add logic to take care of non-wmp user agents requesting .asf files. They now get
a [reference] file with an appropriate mime type. This fixes the mplayer problem.
* Make sure that we have a large buffer for the stats page.
* Add a FaviconURL keyword to the status stream definition. If set, then it
generates the appropriate HTML so that IE and Mozilla will display the favicon
as appropriate. OK -- this is a pretty random feature.
* If the ffmpeg is running as a child of ffserver, then report it's CPU usage
on the status page. [This is linux only -- maybe somebody could do the work for
another OS. The tricky thing is getting the 'ps' command right.]
Originally committed as revision 630 to svn://svn.ffmpeg.org/ffmpeg/trunk
Philip Gladstone [Thu, 30 May 2002 02:38:57 +0000 (02:38 +0000)]
* Go faster stripes: don't check to see if the user presses 'q' if stdin
returns EOF -- e.g. it is connected to /dev/null
* Make the 1MB video buffer only allocated once rather than on each frame.
The allocation and deallocation causes significant performance loss as the
kernel remaps the address space each time.
Originally committed as revision 629 to svn://svn.ffmpeg.org/ffmpeg/trunk
Zdenek Kabelac [Wed, 29 May 2002 20:00:10 +0000 (20:00 +0000)]
* using unrolled loops seems to help to MMX Celerons
* calculating average in parallel to use two MMX units
* disabled xy2 put code - it's producing rouding errors
Originally committed as revision 626 to svn://svn.ffmpeg.org/ffmpeg/trunk
Zdenek Kabelac [Wed, 29 May 2002 19:57:21 +0000 (19:57 +0000)]
* reenabled original xy2 put routine - rounding error is really bad with
the new code
* added PAVGP macros for parallel processing to safe few more cycles on
celerons
Originally committed as revision 625 to svn://svn.ffmpeg.org/ffmpeg/trunk
Zdenek Kabelac [Wed, 29 May 2002 17:16:22 +0000 (17:16 +0000)]
* code with new PAVGB for MMX only CPU splited into separate file
and being compiled in the same way as _avg.h
* PAVG_MMX macros accept also output parameter
* implemented faster put_pixels_xy2, but it has slightly smaller precission.
But there is not visible difference in the image quality - might be eventualy
easily switched back (#if 0 #endif)- please check
Originally committed as revision 624 to svn://svn.ffmpeg.org/ffmpeg/trunk
Philip Gladstone [Wed, 29 May 2002 01:55:12 +0000 (01:55 +0000)]
* Make video grabbing work again (if you are grabbing multiple streams
at different frame rates).
* Do the av_abort() change that is not otherwise worth checking in.
Originally committed as revision 620 to svn://svn.ffmpeg.org/ffmpeg/trunk
Zdenek Kabelac [Mon, 27 May 2002 09:17:21 +0000 (09:17 +0000)]
* for this moment bswap.h included ahead of HAVE_AV_CONFIG_H check
as its functionality is used even in those parts which are being
compiled without this flag
- generaly this would require more complicated cleanup patch
- for now leaving for the main author
Originally committed as revision 614 to svn://svn.ffmpeg.org/ffmpeg/trunk
Philip Gladstone [Sun, 26 May 2002 03:36:34 +0000 (03:36 +0000)]
* Add first cut of code to handle Windows Media Player rate switching
requests. The current state is that at startup, WMP will get the
best stream that it can handle. However, subsequent rate switching
only puts a message in the log saying what the new stream ought to
be. Solving this will be tricky. I guess that we would have to wait for
key frames to appear in the new stream, and then switch over to it.
Some care would be needed to deal with the PTS of the new stream
versus the old stream.
Originally committed as revision 602 to svn://svn.ffmpeg.org/ffmpeg/trunk
Philip Gladstone [Fri, 24 May 2002 02:09:40 +0000 (02:09 +0000)]
Change order of extensions and read_probe checking. This gives the read_probe
a higher priority than extensions. This gives FFM a chance of working. Note
that some of the other probe functions are bit optimistic, and can be
confused by binary data (such as 0x00 0x00 0x01 0xzz) for some values of zz.
This set of changes makes ffserver work again, and fixes the cannot open
video grab device message.
Originally committed as revision 581 to svn://svn.ffmpeg.org/ffmpeg/trunk
Philip Gladstone [Fri, 24 May 2002 01:19:27 +0000 (01:19 +0000)]
* Fix a problem caused by a duplicate free of priv_data -- now uses av_freep
* Make sure that the read buffer for the ffm file is allocated in the priv_data.
Originally committed as revision 578 to svn://svn.ffmpeg.org/ffmpeg/trunk
Philip Gladstone [Fri, 24 May 2002 01:18:19 +0000 (01:18 +0000)]
* Add support for time-limiting a live stream. (Some guy streamed one of
my pondcam streams for 24 hours! I'll bet he wasn't watching.
* Add code to allocate the priv_data so that the ffm header can be
parsed again. [Fix crash]
Originally committed as revision 577 to svn://svn.ffmpeg.org/ffmpeg/trunk