1
mirror of https://code.videolan.org/videolan/vlc synced 2024-08-27 04:21:53 +02:00
Commit Graph

28 Commits

Author SHA1 Message Date
Cyril Deguet
adff2a8501 Re-added the new packet allocation method in PS input, using packet caches.
With warning level 1, you can see when a packet is allocated or freed; the
goal is to never call 'malloc' nor 'free', except at the beginning of the
stream.
The size of the different caches can be adjusted in plugins/mpeg/input_ps.h.
If 'free' is called too often, it means that a cache is too small, so try
to increase its size.
2001-04-16 12:34:28 +00:00
Cyril Deguet
f3f860ca5d switched back to the old packet allocation method for PS input, because
Sam does not want the new one ;)
2001-04-05 16:37:15 +00:00
Cyril Deguet
ed003a4a6d Added a new packet allocation method that punish one's mother in PS input.
I hope there won't be too many segfaults because of it ;)
A few parameters must be adjusted to optimize this method; I'll do it later
because Proba Stat sucks ;)
2001-04-05 14:00:28 +00:00
Christophe Massiot
c751bb667c * Fixed an alignment problem in UnalignedShowBits(). 2001-03-06 19:33:58 +00:00
Christophe Massiot
4ebb78ddad * Fixed miscellaneous alignment problems (alpha/sparc ports) ;
* Added a fps display when toggling 'i' ;
* Fixed a bug in the video parser where one picture buffer was not
released at quit time ;
* Broke the mux_rate calculation, but hey guys ! it was already broken and
nobody noticed it.
2001-03-02 13:20:29 +00:00
Stéphane Borel
917d257428 -New function for DVD reading, that is able to read multiple blocks
(I've chosen 32 now), that doesn't use any memcpy anymore and is also much
faster. It is ready now for cell positioning in multi-angle DVD (to come
soon).

-DVD specific netlist adapted to 2048 bytes long blocks that contain
several data_packets.

-Modification in mpeg_system.c to use p_payload_start instead of
p_buffer (necessary for DVD plugin). It does not break other plugins
since they set p_payload_start to p_buffer

-New field i_read_once in input_thread_s to be able to read more than
the TS related 7 packets ; i_read_once is set to INPUT_READ_ONCE by
defaults but plugins can change it during initialisation.

Please check that nothing is broken :)
2001-03-02 03:32:46 +00:00
Christophe Massiot
d21d510cbe * Portability : changed off64_t to off_t and activated appropriate
GNU/Linux options ;
* Changed fseek() to fseeko() for 64-bit offsets ;
* Reset frame predictors on a stream discontinuity.
2001-02-08 17:44:13 +00:00
Christophe Massiot
785049d7f6 * Implemented basic stream navigation function, and bound Jump forward
and jump Backward in the SDL intf. Enjoy !
2001-02-08 13:52:35 +00:00
Christophe Massiot
18aaaf306c * Hooks for fast forward and slow motion support. 2001-01-24 19:05:55 +00:00
Christophe Massiot
0eddfe9ce0 * Minor bitstream optimization. 2001-01-22 18:04:10 +00:00
Christophe Massiot
7b3ed3ad9d * Various miscellaneous minor optimizations of the video parser. 2001-01-21 01:36:26 +00:00
Sam Hocevar
2378ce90fa . really fixed GetChunk now. 2001-01-20 13:08:33 +00:00
Sam Hocevar
234d7300aa . the infamous Saturday morning mighty one-liner patch that fixes subtitles 2001-01-20 04:19:02 +00:00
Christophe Massiot
18188c2497 * 32-bit aligned bitstream (not that fast). 2001-01-18 17:40:06 +00:00
Sam Hocevar
26ee312a6f . the IDCT functions are now located in modules : the classic IDCT,
our optimized IDCT, and MMX IDCT.
 . cosmetic changes for modules (pf_* instead of p_*)
 . fixes to the BeOS and dummy modules

   WARNING: a new directory has been added, which means you have to
   use `cvs update -dP' to update ; files have been removed , which means
   you either have to run `make distclean' or remove the .deps directory,
   and the configure script has changed, which means you have to run it
   again. Don't complain before having checked this :)

   Note about the IDCT modules: there is no way to choose the one we
   use, but you may remove the module in lib/ to prevent it from being
   loaded. The preference order is : MMX, Optimized, Classic.
2001-01-13 12:57:21 +00:00
Christophe Massiot
a558a9bb47 * Changed default values :
INPUT_PTS_DELAY down to 200 ms ;
video heap down from 10 to 5 pictures ;
decoder fifo size from 1023 to 511 PES ;
* Fixed various bugs in 32 bit-versions of input_ext-dec.h ;
* Fixed a bug in GetChunk() ;
* Renamed GetByte, GetWord, ShowWord to _GetByte, _GetWord, _ShowWord ;
* Moved decoder_fifo-specific code from programs.c to dec.c ;
* Fixed bugs in program.c that prevented vlc to close all decoders ;
* Gave sam a lesson for the use of the bitstream in spu_decoder.c :ppp ;
* Made the video parser unlock the reference pictures before quitting
(still one left, yaknow why ?)
2001-01-12 17:33:18 +00:00
Christophe Massiot
a85534e5b5 * Fixed 32 bits bitstream bugs. 2001-01-12 11:36:49 +00:00
Sam Hocevar
993381a227 . moved swab32 from input_ext-dec.h to common.h. We probably won't need
it anymore really soon, since ntohl() and htonl() seem to be properly
   optimized when gcc is passed the right optimization flags.

 . fixed GetBits32 and RemoveBits32. I know the #ifdefs are useless since
   we only support u32 words, but it's a safe reminder. Comments appreciated
   on this fix since I may have b0rked something -- it runs well here though.
2001-01-11 15:35:35 +00:00
Christophe Massiot
ecff1e713f * Changed code for handling b_die in bitstream ;
* Move input_ext-dec.h to input.h ;
* New input_NullPacket function ;
* Fixed init bugs in input and vpar ;
2001-01-10 19:22:11 +00:00
Christophe Massiot
0b625864d4 * Placed a callback to the decoder in the bitstream structure ;
* Fixed a purify bug in input_ps.c ;
* Added -mcpu=pentiumpro in the Makefile.
2001-01-10 16:24:11 +00:00
Sam Hocevar
ef05e7761e . fixed a warning under FreeBSD (dlerror() is a const char*, not a char*).
. made configure script look for the bswap assembly instruction (using
   AC_TRY_COMPILE makes sure the compiler will really accept it).
2001-01-09 21:03:47 +00:00
Christophe Massiot
2535b235d0 We now read the DTS (but we don't use it for the moment).
NB : b_has_pts has disappeared for brevity reasons, use i_pts != 0 instead.
2000-12-27 18:35:45 +00:00
Christophe Massiot
9589dcb78b * Use of ptrdiff_t whenever necessary (IA-64 port) ;
* Changed behaviour of preparsing code, faster startup ;
* Fixed DecodePSM(), cannot test ;
* Cleaned up ParsePES(), fixed a bug which could reject very small but
  valid PES packets ;
* Fixed cosmetic bugs in vpar_synchro frame_rate display.
2000-12-26 19:14:47 +00:00
Christophe Massiot
be1eb4bbf3 * Using i_id instead of i_stream_id whenever possible ;
* Fixed a bug in -c and -s options.
2000-12-22 17:53:30 +00:00
Christophe Massiot
91bc3eb7c4 * New decoder spawning API input_dec.c ;
* Moved p_input->pp_es -> p_input->stream.pp_es and clean up of
  input_programs.c & co ;
* Fixed memory leaks.
2000-12-21 19:24:27 +00:00
Christophe Massiot
cc50abf770 * Removed b_die and b_error from all decoders (obsoleted by decoder_fifo_t).
All decoders should now exit cleanly (if it's not the case, it should be
referenced as a bug).
2000-12-21 13:25:51 +00:00
Christophe Massiot
0661d2e7de GetChunk() : reads n bytes from the elementary stream and places them
in a big buffer (a gift for Sam).
2000-12-19 19:55:35 +00:00
Christophe Massiot
dc804fe5e1 The input-II. (more info by mail in about an hour) 2000-12-05 19:36:58 +00:00