Commit Graph

595 Commits

Author SHA1 Message Date
Christophe Massiot
ea94227edd * Tuned up optimization flags. 2001-01-22 15:49:55 +00:00
Stéphane Borel
419eb2fe24 *Check for the needed headers for DVD ioctls
I have only tested it on my computer ; so I don't know if it work
elsewhere, particularly on BSD and BeOS.
2001-01-22 05:20:44 +00:00
Stéphane Borel
32e82c6938 *Some cleaning in the dvd authentification code
Now it generates a valid title key, but there is no sector descrambler
yet.
2001-01-21 09:20:27 +00:00
Christophe Massiot
7b3ed3ad9d * Various miscellaneous minor optimizations of the video parser. 2001-01-21 01:36:26 +00:00
Stéphane Borel
95ef185aad * Beginning of support for encrypted DVDs.
* It only tests encryption and authenticates disc.

The decryption does not work now et it is very ugly but I'm working on it.
2001-01-20 20:59:44 +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
Sam Hocevar
7590bd9b3c . changed program version to 0.2.5 (preparing 0.3.0 release).
. changed codename to Urumov
 . cleaned a lot of stuff in the Debian package generation.

  If anyone objects with the versioning scheme, let's fight in the
  dirt and sort that out. Or change it yourself.

  Debian packages can be tried here: http://armitage.via.ecp.fr/~sam/vlc/
2001-01-19 18:17:36 +00:00
Christophe Massiot
18188c2497 * 32-bit aligned bitstream (not that fast). 2001-01-18 17:40:06 +00:00
Sam Hocevar
647cca0ebb The motion compensation routines are now modules as well ; choose your
implementation with `--motion motion', `--motion motionmmx' or
  `--motion motionmmxext'. Of course, the best implementation is chosen
  if you don't ask for any. There doesn't seem to be any performance hit
  due to the move to shared libs, which is a good thing. Please test
  actively if you have time, though.

    Updated --help result, manpage, INSTALL document, and a few files.

    I moved vdec_motion.h and vpar_blocks.h back to /include because they
  will be needed to build motion compensation modules, but perhaps we don't
  need to export everything which is in these files.

    /src/video_decoder/ now has only one .c file, perhaps it could now be
  merged with video_parser ?
2001-01-18 05:13:23 +00:00
Christophe Massiot
cf0b7cf953 * Borrowed LiViD's MMX and MMX EXT IDCT.
This might break things. Expect a performance increase.
2001-01-17 18:17:31 +00:00
Sam Hocevar
fd1220a285 . removed a few useless malloc() and unused variables in the audio SDL stuff
. prepared the work for built-in modules (not yet finished)
2001-01-17 17:25:13 +00:00
Stéphane Borel
627633ae2b * Minor changes 2001-01-17 00:52:22 +00:00
Pierre Baillet
0a267fd4a9 - small tweak in the copy handling, reduce CPU usage. 2001-01-16 21:26:43 +00:00
Sam Hocevar
4743982b13 . --aout sdl now works 2001-01-16 21:13:02 +00:00
Pierre Baillet
63757407cb - minor cosmetic changes :P
- modified alsa and sdl default level to 50.
2001-01-16 21:00:20 +00:00
Pierre Baillet
4cff691635 - Added SDL sound support. Sounds a bit laggy sometimes but my streams are ill.
please try.
- modified configure.in and all that stuff. Re-run configure
- SDL audio, video and interface are all part of the same .so now.
- remove YUV old files :->
2001-01-16 18:35:54 +00:00
Christophe Massiot
3a8481df75 * Reverted something that wasn't supposed to go into the cvs :p
* Removed -fargument-noalias-global which causes problems with as (???).
2001-01-16 18:06:01 +00:00
Christophe Massiot
91bf1a917f * Borrowed livid's latest libmmx and MMXEXT MC. Not in the Makefile => to
test it, replace vdec_motion_inner_mmx.c by vdec_motion_inner_mmxext.c.

I'm interested in performance feedback.
2001-01-16 17:59:23 +00:00
Sam Hocevar
ba59eb048e . a few changes in the CPU extensions detection code, borrowed from the
kernel and from mpeg2dec. I still don't know how to detect if code
   compiled with -mcpu=pentiumpro will run, since the cpuid arcanes are
   quite obtuse to me. Perhaps we should also have a way not to load modules
   if they have been compiled with a different CPU to avoid segfaults.
2001-01-16 16:09:52 +00:00
Sam Hocevar
5464102fa7 . add check for MMX EXT extensions, which doesn't work, which is a good
thing since there is no MMX EXT IDCT yet :)
2001-01-16 14:05:38 +00:00
Christophe Massiot
c760db3810 * Change for the forthcoming fast forward and slow motion support. 2001-01-16 13:27:14 +00:00
Sam Hocevar
6eb707884c . added files for the SSE (MMX on steroids) IDCT. Meuuh, you should just
need to touch plugins/idct/idct_mmxext.c (ok, the filenames suck).
2001-01-16 13:26:46 +00:00
Sam Hocevar
619061c25c [ include/config.h.in has changed, don't forget tu run ./configure ]
. fixed the --aout, --idct and --yuv flags
 . updated manpage and --(long)help output to reflect that change
 . removed a few unneeded #includes here and there
 . cosmetic changes in error messages in input.c

   Currently available flags are now :

     --aout dummy
            esd
            dsp
            alsa

     --idct idct
            idctclassic
            idctmmx

     --yuv yuv
           yuvmmx

  --vout works like before, but still uses the old plugin system for now.
2001-01-16 05:04:25 +00:00
Stéphane Borel
1cd850a856 . Now use of 64 bits offsets to parse the whole DVD. So we have all the
available information
. Fixed a bug in parsing of VTS attributes
. Fixed a bug in input.c that made input plugin initialize even though
no stream is reachable (thanks Sam)

I hope I'll be able to get the position of the movie soon.

Meuuh : the seek function of the plugin now take off_t as argument which
could be a problem later. Maybe it should take off64_t or time argument.
2001-01-16 04:41:20 +00:00
Sam Hocevar
f56c4db12e . merged the YUV plugins in the same directory to avoid too much code
duplication
 . YUV transformations now use the new module API ; now only the vout
   and interface still depend on the old plugin API
 . changed TestMMX to TestCPU because we will be able to test for other
   specific extensions (3DNow, SSE) for the forthcoming IDCT we'll
   borrow to mpeg2dec (as usual :P)
 . don't show "hiding module" messages anymore except in debug mode
 . swapped C IDCT and Classic IDCT scores since the classic one seems
   to be faster ; anyway you should use the MMX one
 . fixed a Makefile bug under BeOS
 . tried to fix the cpuid code so that it compiles under BeOS (Polux, can
   you test it when you have time ?)
2001-01-16 02:16:38 +00:00
Christophe Massiot
2f64eb2998 * Fixed a bug in the frame rate handling ;
* Fixed a bug in the DTS/PTS ordering.
Our pts are _at last_ accurate.
2001-01-15 19:54:34 +00:00
Christophe Massiot
3a3f1725ce * Finally fixed repeat_first_field and co. (pas encore tout compris...) 2001-01-15 18:02:49 +00:00
Christophe Massiot
4bcf1baec5 * Implemented video_parser bitstream callback for PTS/DTS. 2001-01-15 13:25:09 +00:00
Renaud Dartus
420ec3aac3 * Fixed close button support in SDL
* Fixed --width and --height support in SDL
2001-01-15 12:42:58 +00:00
Sam Hocevar
b8899c0c16 OK, so I foired input.h once again. But this one works. For real. 2001-01-15 08:07:31 +00:00
Sam Hocevar
54eb1d5f51 . correction d'un poliotage de copier-coller 2001-01-15 06:56:30 +00:00
Sam Hocevar
c0211e9a50 . fixed the bug-that-made-the-vlc-segfault-on-exit, which means that
more than ever, � le client ne segfaulte pas �.

 . there was still a problem upon quitting: sometimes the null packet
   wasn't big enough to reach a decoder breakpoint, so I now create 10
   of them (since I can't make it bigger) to be sure. Meuuh, what do
   you think ?

 . fixed the Makefile to spare a few variables here and there.

 . reduced module hide delay, removed loading of the audio output
   plugins since they are now modules.

 . changed a few intf_Msg to intf_DbgMsg, and added "vout:", "intf:",
   and so on in a few other messages.

 . removed unused includes in the idct modules.
2001-01-15 06:18:23 +00:00
Stéphane Borel
bba082093f . Correction of bugs in ifo parsing. Now the structures should be well
initialized. It remains some segfaults but it globally works.
. DVD mode is enabled with option --dvd. For the moment, it only read
the first vts and find the movie if it is at the beginning of the title
set.

Coming soon:
. udf filesystem management to access over 2Gb zones.
. detection of the offset to the movie inside a vts when it is not at
the beginning.

Is there a chance that using fopen/fseek function instead of open/lseek
system calls solve the 2Gb issue ?
2001-01-15 03:26:56 +00:00
Stéphane Borel
a9729877b7 . Beginning of dvd_input.
. Parsing of ifo file almost completed.
. Still does not work well.
2001-01-14 07:08:00 +00:00
Sam Hocevar
e360e2a431 . second part of the commit 2001-01-13 12:57:47 +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
Sam Hocevar
ebfaed9be9 . destroy fifo mutex and cond variables _after_ they are used for
the last time. henri, that'll be one binouze.
2001-01-12 14:49:55 +00:00
Sam Hocevar
c393ff60e9 . Attempt to port the BeOS audio plugin to the new module API. Will
probably need a few fixes to work or even compile.
2001-01-12 13:15:42 +00:00
Henri Fallon
4af9ab12a5 Done :
- ported the alsa plugin to the news vlc module API
- cosmetic changes

To do :
- check if it works with the latest alsa release
- add features ... prepare for 4 or more speakers
2001-01-12 12:48:24 +00:00
Christophe Massiot
a85534e5b5 * Fixed 32 bits bitstream bugs. 2001-01-12 11:36:49 +00:00
Sam Hocevar
e3636eb15f . moved the MPEG audio decoder to the new bitstream
I wasn't sure whether the bits counting method was effective to
  skip ancillary data at the end of a frame, but I kept it for
  safety. There is still a lot to optimize in the bit counting, like
  unrolling the first iteration of some loops, but I don't know if
  it would be worth it. The other solution would have been to look for
  a startcode after eache frame, without caring about the ancillary bits.

  . cleaning in the SPU decoder.
2001-01-11 17:44:48 +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
Sam Hocevar
bf10480df4 . fixed a missing #ifdef STATS
*grin*
2001-01-10 19:48:26 +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
9f553534b0 . complete commenting of modules_core.h and small modifications
. separated MODULE_CONFIG_START and ADD_WINDOW (Henri, beware)
 . fixed a very, very old bug that caused namespace collision between
   plugins (Henri, beware: call your aout_getplugin function like this,
   not alsa_aout_getplugin)
 . removed the Debian specific clean rules from the Makefile, since they
   are already handled by the debian/rules script.
 . tidied a few compilation rules (-lfoo should always be at the end)
2001-01-10 02:33:59 +00:00
Sam Hocevar
9451c9b90e . just removed a forgotten debug message in the setpalette code 2001-01-09 23:29:15 +00:00
Pierre Baillet
cbb9cfbfdf .Added 8bits palette SDL support.
.Tried to add it to stable, failed, probably because of the initialisation codes which are differents...
2001-01-09 22:30:26 +00:00