1. 04 Oct, 2002 1 commit
    • Sam Hocevar's avatar
      * ./configure.ac.in: removed now unnecessary --force-exe-suffix flag. · 89987e11
      Sam Hocevar authored
        * ./src/misc/objects.c: structure_lock is now local.
        * ./src/misc/threads.c: implemented named mutexes which provide a handy
          way to protect data across plugins which might be sharing the same
          resources. Thread-unsafe libraries come to mind, but we can imagine
          using a named mutex for configuration files, or special devices.
        * ./include/main.h: removed global_lock because of vlc_mutex_need, removed
          p_global_data because it was never used, removed structure_lock because
          it did not belong here.
      89987e11
  2. 03 Oct, 2002 2 commits
    • Sam Hocevar's avatar
      * ./configure.ac.in: duplicated arguments to AM_INIT_AUTOMAKE to fix · f501554a
      Sam Hocevar authored
          locales breakage.
        * ./src/libvlc.c: libvlc understands the VLC_VERBOSE environment variable,
          to be set between 0 and 4. Default value is 0 for a program using libvlc,
          but vlc sets it to 1 by default.
        * ./src/misc/configuration.c: -v now works the old way (-v, -vv, -vvv) as
          well as the new way (-v0, -v1, -v4). -v1 is the same as -v, and -v0 is
          the same as -q (quiet). Hope it's all understandable.
      f501554a
    • Sam Hocevar's avatar
      * ./src/libvlc.c, ./include/main.h: the root of all objects is now · 145b1961
      Sam Hocevar authored
          p_libvlc, and each p_vlc is a child of p_libvlc. Reasons for this are:
      
           o the module bank and the message bank only need to be initialized once,
             which gives faster loads when multiple instances of libvlc are used,
           o we allow the possibility of different p_vlc sharing objects, for
             instance the audio output,
           o the CPU detection is only done once.
      
          This patch is not polished yet, but I cannot do any intensive tests for
          the moment because of a bug somewhere that leaves audio output objects
          lying here and there which needs to be investigated first. The current
          major issue is that the module bank is no longer freed.
      145b1961
  3. 20 Aug, 2002 1 commit
    • Sam Hocevar's avatar
      * ./modules/misc/gtk_main.c: created the gtk_main module, which simply runs · f0ec49da
      Sam Hocevar authored
          gtk_main() in its own thread, and does nothing on subsequent calls. This
          ensures that gtk_main is only running once.
        * ./modules/gui/familiar/*, modules/gui/gtk/*: the familiar, gtk and gnome
          modules are now fully reentrant thanks to their use of the gtk_main module.
        * ./src/libvlc.c: implemented vlc_set(), a wrapper for config_Put* available
          to external programs.
        * ./src/libvlc.c: removed vlc_stop() and vlc_end(), everything is now done
          by vlc_destroy().
        * ./modules/control/rc/rc.c: implemented a few new functions. For instance,
          run "vlc -I rc" and then type "intf gtk" or "intf gnome". You can even
          launch several of them. "segfault" works, too.
      f0ec49da
  4. 12 Aug, 2002 1 commit
    • Sam Hocevar's avatar
      * ./src/misc/objects.c: two big changes in the object API: now objects can · 6e8f9504
      Sam Hocevar authored
          only have one parent, because I don't want to deal with cycles, and each
          created object is indexed in a global array. This feature is unused yet,
          but it will speed up vlc_object_find(FIND_ANYWHERE).
        * ./debian/rules: activated the faad codec.
        * ./doc/fortunes.txt: new fortune cookies.
        * ./modules/codec/mpeg_video/headers.c: reduced the use of attach/detach.
        * ./modules/audio_output/oss.c: fixed two compilation warnings.
      6e8f9504
  5. 09 Aug, 2002 1 commit
  6. 31 Jul, 2002 1 commit
  7. 29 Jul, 2002 1 commit
    • gbazin's avatar
      · 7152ccea
      gbazin authored
      * include/vlc_threads.h,include/main.h,src/misc/threads.c,src/misc/win32_specific.c:
      reverted Win32 pthread implementation to the old code. Fixed vlc_cond_broadcast() for
      WinNT/2K/XP. Additional vlc_cond_* implementations for Win9x.
      * src/libvlc.h: renamed --fast_pthread option into --fast-mutex. Added a
      --win9x-cv-method option to choose which vlc_cond_* implementation we want on Win9x.
      7152ccea
  8. 20 Jul, 2002 1 commit
  9. 27 Jun, 2002 1 commit
  10. 01 Jun, 2002 3 commits
    • Sam Hocevar's avatar
      * ./include/main.h, ./plugins/beos/intf_beos.cpp: BeOS compilation fixes. · f60d5d58
      Sam Hocevar authored
        * ./bootstrap.sh, ./src/libvlc.h, ./po/*: fixed bootstrap.sh so that it does
          not include CVS Id lines in automatically created files.
      f60d5d58
    • Sam Hocevar's avatar
      * ./src/misc/beos_specific.cpp: BeOS fixes, removed a static variable. · 2dad070c
      Sam Hocevar authored
        * ./include/main.h: replaced p_sys with explicit variables because it's
          really much simpler this way. Gildas, will you ever forgive me ? :-)
      2dad070c
    • Sam Hocevar's avatar
      * ALL: the first libvlc commit. · 9e3ab283
      Sam Hocevar authored
         As for video output 4, this breaks almost everything, but I'll slowly
        do what remains to be fixed during the weekend.
      
         Changes in vlc:
         ===============
      
        * vlc is now a very small program (20 lines) which uses the libvlc API;
         it is quite simple for the moment but can be extended in the future.
      
        * interfaces, decoders, video outputs, etc. are now almost the same
         objects (yes, I know, this is C++ redone in C) and are structured in
         a tree. More about this later, but basically it allows the following
         nice features:
          - several interfaces
          - several playlists with several outputs
          - input plugins spawning helper interfaces (will be used for DVD menus)
          - anything spawning anything; I swear there are useful uses for this!
      
        * libvlc can be used in other programs; I'm currently writing a Mozilla
         plugin for my employer.
      
         Things currently broken:
         ========================
      
        * most interfaces, most ports
        * the playlist handling (almost finished rewriting this though). This means
         no file can be played from the GUI, you need to use the commandline. This
         also means it segfaults at EOF, when exiting the program, and it sometimes
         refuses to open a file when asked to.
      9e3ab283
  11. 27 Apr, 2002 1 commit
    • gbazin's avatar
      · 9d6920b9
      gbazin authored
      * moved the function definitions from threads.h into threads_funcs.h. This
         allows us to move p_main_sys into p_main (p_main->p_sys).
      * fixed the --with-gtk-config-path and --with-sdl-config-path options in
         configure.in
      9d6920b9
  12. 24 Apr, 2002 1 commit
  13. 21 Mar, 2002 1 commit
    • gbazin's avatar
      · fb3f8ba5
      gbazin authored
      * moved GetConfigurationFromCmdLine() into configuration.c and renamed it
         into config_LoadCmdLine()
      * config_GetHomeDir doesn't use getpwuid_r anymore as this was creating
         some problems on solaris. This function now uses getpwuid and is called
         only once to store the home directory into the p_main structure.
      fb3f8ba5
  14. 16 Mar, 2002 1 commit
    • gbazin's avatar
      · 278bc72e
      gbazin authored
      * This the last piece of the new configuration module. You can now save your
      configuration options (only from the gtk/gnome interface for now). The config
      file will be saved as ~/.VideoLan/vlc
      
      It's not quite yet finished (well there are a few small details to sort out),
      but I'm going away for the week-end and I wanted to commit this before so you
      can all have a play with it :)
      278bc72e
  15. 12 Mar, 2002 1 commit
    • Stéphane Borel's avatar
      · 2ce7beda
      Stéphane Borel authored
      *New configuration option to choose audio output format at runtime.
      It allows to select spdif pass-through decoder with --ac3_adec and to
      remove the ugly b_ac3 in main.h
      
      As a consequence --spdif doesn't work anymore: you should use --ac3_adec pass
      
      *Fixed a typo in main.c
      
      *Return the option name in error message for unknown option intead of the
      argument.
      2ce7beda
  16. 24 Feb, 2002 1 commit
    • gbazin's avatar
      · c40571df
      gbazin authored
      This is the first part of the new configuration architecture for vlc.
      Two other parts will follow soon:
      - config file implementation
      - gtk configuration interface.
      
      This part won't change much for end-users as these changes are mostly
      internal, you will however notice that the command line interface has
      changed. It will maybe be less user-friendly as I almost removed the
      short options but it shouldn't a big problem when the config file is
      implemented.
      
      What as changed is that it is really easy now to add configuration
      options to vlc. Plugins can also implement configuration options. All
      you have to do is to declare a MODULE_CONFIG section in your plugin.
      If you want to know more about this look at configuration.h and for some
      example: main.c, dsp.c or xvideo.c
      
      It would be nice if every developper could now start using configuration
      options in there plugins and also enhance old plugins.
      
      That's it, now let's hope I didn't break too many things ;-)
      c40571df
  17. 15 Feb, 2002 1 commit
    • Sam Hocevar's avatar
      · 48cbd8f3
      Sam Hocevar authored
        * ALL: got rid of *_Probe functions because most of them were duplicates
          of the real _Init or _Create functions. That's 1000 lines of code gained.
        * ./src/misc/modules.c: we try not to keep the global lock in module_Need,
          which should speed up output spawning.
        * ./plugins/dummy/input_dummy.c: fixed vlc:quit command.
        * ./plugins/gtk/gtk_playlist.c: compilation fix.
        * ./plugins/macosx/*: preliminary fixes for the vout4 port.
      
         Notes on the *_Probe eradication:
        o I probably broke the DirectX video output, because of the "must init and
          run in the same thread" issue. I'll fix this ASAP.
        o Subtitles are broken (or at least, pretty ugly) in RGB mode.
        o The input plugins still have *_Probe functions. This will disappear when
          meuuh is finished with the access plugins.
        o The decoder plugins still have *_Probe functions. This is probably not
          going to change, it looks OK to me.
      48cbd8f3
  18. 13 Feb, 2002 1 commit
    • Sam Hocevar's avatar
      · e8bf7fa4
      Sam Hocevar authored
        * ./plugins/beos/*: BeOS fixes from Rudolf Cornelissen.
        * ./src/interface/main.c: --desync now really accepts a value in ms.
        * ./plugins/vcd/input_vcd.c: fixed a crash when not opening a VCD.
        * ./src/video_output/vout_subpictures.c: fixed subtitles under BeOS and
          other architectures which don't support overlay.
      e8bf7fa4
  19. 30 Dec, 2001 1 commit
    • Sam Hocevar's avatar
      · cc0f0bb6
      Sam Hocevar authored
      Some heavy changes today:
        * Removed duplicate function checks from configure.in.
        * Added extra magic to Makefile.modules so that the module Makefiles
          are now ridiculously simple. And I mean *simple*. Check it! This will
          make a possible switch to full autoconf/automake a lot easier.
        * Added the vlc version name to the plugin symbols, to be sure we only load
          plugins with the same version number. A nasty consequence is that you
          need to rebuild your tree after midnight if you are using a CVS tree :-)
        * Got rid of modules_export.h by #defining exported functions in the same
          header as their prototype.
        * Added modules_inner.h and other commonly used .h files to common.h so
          there are less and less files to include, and renamed common.h to
          <videolan/vlc.h>.
        * First modifications to the module handling system towards my ultimate
          goal to get rid of the *_Probe functions. Got rid of TestMethod and
          TestCPU, as well as src/misc/tests.c.
        * Wrote the chroma plugin handling functions. No YUV functions have been
          ported yet because it'ls a lot of work, but the core system works, I
          tried it with a naive yv12->rgb16 plugin (which will disappear when the
          real functions are ready).
        * Made a lot of functions in dvd_summary.c one-liners to avoid wasting
          too many output lines.
        * Fixed a segfault in input_dvd.c:DVDInit.
        * Added a fixfiles.sh script in plugins/gtk to be run after Glade has
          generated its C files.
        * Did some work on the KDE interface to make it suck a bit less. It still
          segfaults, but at least it runs and it looks less ugly.
        * RGB SDL rendering works again, though in 16bpp only.
        * Made plugins/vcd/linux_cdrom_tools.c independent of any vlc structure
          so that it'll be easily put in a library. Maybe libdvdcss?
        * Fixed VCD date display.
        * Merged vout_xvideo.c, vout_x11.c and vout_common.c into xcommon.c.
        * Wrote non-Shm XVideo output.
        * Made X11 output work again. Still pretty unstable, only works for 16bpp.
        * Additional french translation in po/fr.po. Any taker for the rest?
        * Fixed a segfault in video_output.c when the allocated pictures were
          not direct buffers.
        * If $DISPLAY isn't set, don't try to run the Gtk+ interface.
        * Replaced 48x48 .xpm images with 32x32 ones to conform to Debian policy
          (Closes Debian bug #126939).
        * Removed the automatic ./configure launch when running `make all' for
          the first time.
      
      Stuff currently more broken than it ought to be:
        * The wall filter. Being fixed.
        * x11 and sdl plugins for depth != 16bpp.
        * Software YUV.
        * gvlc, gnome-vlc, kvlc shortcuts. Use --intf instead for the moment.
      cc0f0bb6
  20. 10 Dec, 2001 1 commit
    • Sam Hocevar's avatar
      · 003c2ab3
      Sam Hocevar authored
        * Removed unused code (intf_channels.c, keystrokes.h).
        * Put common_win32.h back into common.h -- it wasn't that big and we
          should not multiply header files.
        * Added gettext support by Thomas Graf <reeler@reeler.org>, may be
          broken on other platforms but we'll only see it when I'm finished
          with vout 4 :-)
        * Fixed a segfault on exit when no fast_memcpy module was found.
      003c2ab3
  21. 07 Dec, 2001 1 commit
    • Sam Hocevar's avatar
      · 1b8d106c
      Sam Hocevar authored
        * Fixed a total breakage of decoder plugins introduced by fast_memcpy.
        * Got rid of #include "main.h", included it in common.h instead ; got
          rid of #include "config.h" in most files as well.
      1b8d106c
  22. 06 Dec, 2001 1 commit
  23. 03 Dec, 2001 1 commit
    • Sam Hocevar's avatar
      · 95a333bf
      Sam Hocevar authored
        * Borrowed MPlayer's fast memcpy() routines. Best is autodetected, choose
          "--memcpy <whatever>" to choose one from c, mmx, mmxext or 3dn.
          Please test! Especially Athlon users.
        * Added versioned build-dep to libasound2-dev (Closes Debian bug #121057).
        * Updated Gtk/GNOME interfaces to use "udpstream" instead of "ts".
        * Unrolled ChangeLog.
      95a333bf
  24. 01 Oct, 2001 1 commit
  25. 12 Jun, 2001 1 commit
    • Stéphane Borel's avatar
      *slight modification in input_dvd since Getiovec wasn't at the right · 106079bc
      Stéphane Borel authored
      place
      
      *send escape packet when changing title, not to be stuck in some
      decoder.
      
      *the position in the title is now resetted when we change title to
      prevent a title from being unavailable because we're stuck at the end
      
      *fixed a bug with 1-chapter-long title that displayed chapter 0.
      
      *added a _temporary_ field in p_main to know whether the audio stream is
      ac3 (ugly). It allows a vlc launched in spdif mode to play mpeg or lpcm
      audio.
      
      *cleaned the title property messages to get rid of the ugly stars.
      106079bc
  26. 30 May, 2001 2 commits
    • Stéphane Borel's avatar
      -Updated the gtk/gnome interface to work in network mode, · b465bcca
      Stéphane Borel authored
      -Fixed some bugs in interface (language menus in ts, misnamed fields)
      
      -Play/Stop work in network mode to start/stop decoding of the stream
      
      I have a segfault in imdct_3dn(93). But I can't underdand assembly.
      b465bcca
    • Sam Hocevar's avatar
      · 440f9992
      Sam Hocevar authored
        * Fixed the BeOS compile typo.
        * The ALSA plugin is back.
        * A gift for Gildas: plugins don't rely on backlinking any more. The
          drawback is the dirty magic in include/modules_export.h which has to
          be included whenever a module needs one of the functions in it. But
           a) we should less and less rely on those functions
           b) no plugin code modification was needed
      
         The BeOS and MacOS X modules may be broken when compiled as plugins,
         I'll check this later when I can reboot under BeOS.
      440f9992
  27. 06 May, 2001 1 commit
    • Sam Hocevar's avatar
      · c8c99b21
      Sam Hocevar authored
        * Fixed a few warnings with gcc 3.0.
        * aout and vout are now allocated in banks, making it possible to have
          several of them at the same time.
        * configure now checks for MMX and MMX EXT support in the assembler.
        * Removed all MMX code from the main program and moved it to the
          existing idct modules (Closes: Debian bug #96036).
      
          Don't forget to make distclean before building vlc again.
      c8c99b21
  28. 01 May, 2001 1 commit
    • Sam Hocevar's avatar
      · a70f8bb3
      Sam Hocevar authored
        * Mandatory step for video output IV and the audio output quality
          fix: the output threads are now spawned when a decoder needs one,
          so it can decide the audio frequency or the video window size. Still
          under heavy construction, so don't get too excited at finding bugs
          in it yet.
      
          Note: this change broke the XVideo module, so I made its score much
          lower than before. I suspect xvideo.so had a bug before which only
          appears now. Other video output plugins may be broken as well, but
          again this might be due to old existing bugs showing their ugly head.
      
        * Fixed a few buffer overflows in the Gnome interface.
        * The module bank is now a global variable. The video output bank and
          the audio output bank might follow (when they exist).
        * Coding style and organization fixes to the spdif decoder.
        * autoconf and Makefile changes by Arnaud Gomes-do-Vale
          <arnaud@carrosse.frmug.org>.
      a70f8bb3
  29. 29 Apr, 2001 1 commit
    • Stéphane Borel's avatar
      -new audio output using direct ac3 pass-through with some sound · e5c6a7af
      Stéphane Borel authored
      cards: it sends raw ac3 frames to an external ac3 decoder. It is very
      experimental yet, hasn't any synchro ... but it works well with my
      sblive and my dtt3500 speakers (note that you need a patched emu10k1
      driver for this to work).
      
      -bug fix in gnome intf thanks to Shane Harper.
      
      -bug fix in input_dvd for chapter change.
      e5c6a7af
  30. 11 Apr, 2001 1 commit
    • Henri Fallon's avatar
      · d69ab00d
      Henri Fallon authored
      - Ported the 0.2.0's channel changing functions
      - Cosmetic changes : the word 'vlan' is disappearing
      - network_ChannelJoin is still commented out as it's not in sync anymore
        with our channel server. Nitrox should fix this within a week.
      - X and Xv output : added autohide cursor as in SDL
      - X and Sv : keys 1 to 0 change channel
      - SDL : keys F1 to F10 change channel as I was not able to make 1..0 work
      d69ab00d
  31. 21 Mar, 2001 1 commit
    • Sam Hocevar's avatar
      · 4f551c2b
      Sam Hocevar authored
        * Header cleaning: filled all empty authors fields, added CVS $Id stuff.
        * Fixes to aout_darwin.c by Colin Delacroix <colin@zoy.org>.
        * Fixes to configure.in, Makefile.in and main.c (Altivec detection)
          by Eugenio Jarosiewicz <ej0@cise.ufl.edu>.
        * Added Colin and Eugenio to the AUTHORS file.
      4f551c2b
  32. 11 Feb, 2001 1 commit
    • Sam Hocevar's avatar
      · 95967459
      Sam Hocevar authored
        Beginning of Interface II
       ---------------------------
      
       * Plugins have completely disappeared, we now only use the new module API.
       * All intf and vout modules are now independant. So far, only the Gnome
         intf module and the SDL vout module have been ported. configure.in has
         been modified to reflect the changes (x11 and dummy aren't compiled by
         default anymore, while SDL and Gnome are).
      
        Note that this is _not_ Interface II, it's just a step forward. For
        instance, it lacks the whole message passing scheme.
      
        Things that should work:
      
       * Right-clicking on the SDL video output window brings the Gnome menu.
       * Pause, Play, Exit, About work from the menu or from the interface window.
       * The old SDL keys still work.
      
         Things that are broken or may be broken:
      
       * Xlib calls are not locked yet, which may lead to "Unexpected async reply"
         errors, and make the vlc segfault.
       * Sound only works for the first file.
       * The SDL vout_sdl.c file is absolutely ugly and kludgey.
       * The vlc immediately quits when no filename is given as an argument. Not
         a real bug, but still annoying.
       * The Gnome menu does not work in fullscreen mode.
      
         Things that will come soon, maybe tomorrow:
      
       * Complete navigation buttons (fast forward, slow, etc.).
       * File/Open menu to add files to the playlist.
       * Return of the X11 video output for those of us who do not have SDL.
       * Textmode interface for those of us who do not have Gnome.
       * aout and vout autospawn (maybe).
      95967459
  33. 16 Jan, 2001 1 commit
  34. 14 Jan, 2001 1 commit
  35. 05 Jan, 2001 1 commit
    • Sam Hocevar's avatar
      · 6eb6044c
      Sam Hocevar authored
       . src/misc/modules.c is in a workable state now.
      
        To test it, run ./configure with the --enable-null flag, which will
        compile the Null Module as a plugin. Watch the memory usage at the
        launch and when the plugin is released.
      6eb6044c
  36. 23 Aug, 2000 1 commit