* Added package-win32-base-exe-cygwin Makefile target, for Cygwin/msys users who don't need wine. (This should really be folded into the package-win32-base-exe target, but I'm not sure what the best way to detect a Cygwin/msys build environment is ...)
* Each module can declare a "human-readable short name" with set_name
* Modules are sorted by category (set_category, set_subcategory).
Modules configs can be separated by set_section()
* Separated audio-filter and audio-visual
* Separated extraintf and control
* New command and widget : add_module_list() for comma-separated modules
* Vfilters now use "," as separator
* include/vlc_xml.h, src/misc/xml.c: core wrapper for XML modules.
* modules/misc/xml/xtag.c: trivial XML parser module.
* modules/misc/xml/libxml.c: XML parser module using libxml2.
* modules/gui/skins2/parser/*: removed dependancy on libxml2 and use an XML module.
+ extras/contrib/src/*: build libmpeg2 w/o mmxext and 3dnow on BeOS
(buggy compiler)
+ modules/gui/beos/*: quick compile fixes
+ modules/video_filter/deinterlace.c: require mmxext instead of mmx
+ Makefile.am: on BeOS, build a VLC bundle a la OS X
- The VLCApplication is now launched at the vlc.c level instead of at the module level. Allows VLC to be a more valid Mac application, also removes the vout intf dependancy (use ncurses to disp. video :).
This wasn't done at the libvlc level, because a mozilla plugin would no longer be able to function properly.
- Some functionality of the macosx vout may not work without the OS X GUI, and not all of this is checked yet.
- There is a symlink in VLC.app/Contents/Mac called clivlc that will force it back to a fullblown cli app when you want, so it can still be run by a user who isn't logged in via GUI.
- there are some autorelease leaks which need to be tackled.
- moved a lot of the VLCApplication func. to the VLCMain class.
- VLCMain is a +sharedInstance now.
- the complete OS X interface is still badly broken because of the many API changes lately. any volunteers?
Examples:
VLC.app/Contents/MacOS/VLC [-I macosx]
launches VLC as before (requires you to be logged in via GUI)
VLC.app/Contents/MacOS/VLC -I ncurses
launch vlc with a ncurses intf and display video on your mac
(requires you to be logged in via GUI)
VLC.app/Contents/MacOS/clivlc -I telnet -d
launch vlm remotely trough ssh in daemon mode, on a GUI'less server for instance, and stream your vids
Now how is that for combining GUI and cli in one application on the mac?!!? :)
jlj? I finally understand now how the OS X interface works !
- will now determine desired image size by itself
- the hdid mount command mounted the image as root if no user is logged in via GUI.
this is very undesirable for nightly builds.
now uses the mount command and a local mountpoint.
- fix goom location
- some small url improvements. please test the contrib system.
* modules/gui/macosx/*
- autodetect Quartz Extreme. Use OpenGL vout if present.
- --macosx-vout auto|quartz|opengl to force a vout.
* Makefile.am: add share/http/vlm to target.
* NEWS: small updates
* AUTHORS: updated my email address.
- The SAP handler now runs in a separate thread.
- RTP sessions can be announced with sap (sdp=sap://,name=...)
TODO: Make this more configurable
- Better SDP generation (the timestamp problem is not resolved)
About this, there is a problem : as, for a RTP session, the URI
is the complete SDP, if the session is recreated, as the URI has
changed, a new item is added to the playlist
- Experimental flow control algorithm :
It does not follow the "Recommended" implementation, as it needs
to count the sessions (to achieve this, we should make this work
together with the SAP listener)
It is disabled by default (use --sap-flow-control to enable).
When it is disabled, sap announcement interval is set by --sap-interval
* src/misc/net.c : created net_ReadNonBlock
* sap.c : Fixed memory problem
* src/input/input.c:
+ introduced input_item_t that is shared between the playlist/vlm and the input thread (contains input name, options, infos, etc...).
+ changed prototype of input_CreateThread() to input_thread_t *input_CreateThread( vlc_object_t *, input_item_t * ).
* ALL: use input_item_t and INPUT_ADD_INFO when necessary.
+ new input_Control() function (doesn't do much for now).
+ started bookmarks support through input_Control().
+ new --bookmarks={name=foo,bytes=foo,time=foo},{...} config option.
* src/video_output/*:
+ started support for embeddable vouts (vout_RequestWindow()/vout_ReleaseWindow())
+ new --video-x/y config options
* src/playlist/item.c
src/playlist/info.c
src/playlist/item-ext.c
src/playlist/group.c
src/playlist/sort.c
src/playlist/loadsave.c
include/vlc_playlist.h
- New playlist_info structures and accessors
It works pretty like the old input_info (with categories)
It provides modularity to the playlist
- Removed ppsz_options and i_options from playlist_item
(we use the special category Options)
- Added a unique id to each playlist_item to be able to track the
items accross playlist reorders
- Simplified adding of items.
- playlist_AddExt is removed
- playlist_AddItem is still here and exported but should not be used
- use playlist_Add( p_playlist, uri, name, duration, mode, pos )
and use the accessors for all other things
- Added setters for fields of the playlist_item structure
- Introduced "item-change" and "playlist-current" playlist variables
to give more flexibility than only intf-change
At the moment, duration is still in the structure (easier to use, IMHO)
* src/input/input.c
src/libvlc.c :
playlist item options parsing changed
* include/vlc_common.h : added playlist_info structures
fix support of audio channel mixers, like the headphone channel mixer
for instance, which was broken since the introduction of user audio
filters; if specified by the user and compatible with the audio
pipeline, we add the channel mixer after the user filters.
-> unfortunately, this fix removed two strings and introduced 4 new
ones
-> TODO: allow the user to choose only amongst channel mixers, not
all available audio filters
* vlc.exe.manifest Makefile.am install-win32 :
add a manifest file to allow the win32 gui to use Windows XP visual
styles when available.
* modules/LIST: updated
* Makefile.am: include new OS X art in the dist.
* NEWS: updated
* */.cvsignore: added and improved some of these.
* modules/gui/macosx/prefs_widgets.?:
- new config controls much like in the wxwindows module. not yet in use.
- beware not tested irl. but it compiles :)
download a precompiled binary package, or to build all the packages
from the sources, at the user's option. It is currently written for
Mac OS X, but could easily be ported to other platforms.
* ALL: bring the project files to XCode.
10.2 users should revert the change in Makefile.am or they won't be able to
build VLC on their machine. Editing the project files will probably also not
be possible for them.
- splitted the enormous playlist.c file
- implemented a better item group system: groups have a name
and must be created before use by
playlist_CreateGroup( p_playlist, "newgroupname")
* modules/misc/sap.c
- Create our own playlist group ("SAP") and use it
* modules/access/slp.c
- Create our own playlist group ("SLP") and use it
* modules/demux/util/id3tag.c
- Trigger playlist update when we have parsed our tag
* modules/gui/wxwindows/interface.cpp
- Fixed the about box by using vlc_wraptext
- Added the simple open and the streaming wizard icons
*** Icons need to be changed ! ***
- Added the visualization to the extended gui
* modules/gui/wxwindows/preferences.cpp && include/vlc_help.h
- Enlarged the window to fit the wrapped text
- Added help for audio encoders
* modules/gui/wxwindows/stream.cpp & open.cpp & include/vlc_interface.h
- Created a "streaming wizard" window (3-step streaming)
* modules/gui/wxwindows/iteminfo.cpp:
- Group change is now based on the name
* modules/gui/wxwindows/playlist.cpp
- Added author and group columns to the listview
- Redesigned the window
- Added the Sort menu with several criteria (title, author, group)
- Added up/down buttons to move an item in the playlist
- Added the group menu to enable/disable a group in an understandable way
TODO:
-----
* playlist core :
- Implement advanced sort capabilities (multi-criteria)
- File format to save the new features
- export playlist (to M3U, eg)
- more robust group creation (duplicates check, ...)
* wxWindows playlist:
The idea of a treeview seems impossible, because of wxWindow's treeview,
that don't allow multi-selection, and, as far as I know, multi-columns.
- Provide a frontend to advanced sort (when it's done :-) )
- Allow moving items by drag & drop (well, if possible, haven't checked yet)
- Allow moving several items at once
- Customizable listview (ability to remove/move columns)
- Find a solution to the focus problem
(when you change track, the selected one scrolls at the
bottom of the visible screen)
* wxWindows interface:
- New icons, our icons begin to get old and not so pretty
- Find a solution for the volume bar (nobody understands what it is)
* include/vlc_video.h: new video_frame_format_t structure which defines the properties of a video frame.
* include/vlc/decoder.h: include vlc_codec.h
* src/misc/objects.c: added VLC_OBJECT_PACKETIZER and VLC_OBJECT_ENCODER object types.
* modules/stream_out/transcode.c, modules/codec/theora.c: experimental theora video encoder.
* src/input/*: some cleanup.
* modules/gui/macosx/output.m: updated part of the Stream output dialog
* modules/demux/util/sub.c: removed sub_detect() and moved the sub-file and
sub-autodetect file options to src/input/input.c
* src/input/input.c: added the moved options and use them to add subtitle
tracks.
* src/libvlc.h: description strings etc for sub-file and sub-autodetect-file
* src/input/subtitles.c: new subtitles_Detect() largely based on the
code used by MPlayer. Adapted for coding style and structure differences.
The autodetect routine can now detect multiple subtitle files and assigns scores
based on their names. if they much well enough they are sorted based on their
score. It will then return this set, and they will all be added as SPU tracks
to the current stream. The (un)selecting of these tracks will need to be fixed
because they all get assigned the es id 0xFF currently.
. cleanups, use of top_builddir where possible, just to feel safer
. fixed VLC.app inclusion of AUTHORS, COPYING etc.
. propagated previous changes to package-osx
. checked both build methods
special goom tree source as I was unable to use standard goom library.
(I will provide it once mmx/ppc included)
* modules/visualization/Modules.am: added goom
* include/vlc_block.h src/misc/block.c: introduce a new data block
api (not yet tested, ported from my local new input work).
in use by the OS. It's pretty nifty. if available it uses nl_langinfo. Then
it falls back to trying setlocale (exept on OSX, where this funtion is useless)
and then falls back to LC_ALL, LC_TYPE and LANG environment variables.
If only the LANG variable is available (like on osx) it tries a countrycode
to charset mapping (making an educated guess ).
On windows it retrieves the charset with GetACP().
It also has an aliases system to transform incompatible charset description
strings to libiconv compatible charset descriptions. If you want you can even
retrieve the charset on OS/2.
* modules/codec/subsdec/subsdec.c: By default we try to open a subtitle file in
the systems charset (or language mapped to charset). It's no more than a guess,
and if you open Latin1 subs on your Japanese system you will still need to
specify the encoding by hand, but it's better then nothing.
* src/playlist/playlist.c: spelling error in a comment.
* ninput.h : extracted duplicated stream functions from a lot of
demuxers and do a nice (?) API.
* stream.c: implement basic streams manipulation. It is just a wrapper
but it is useful.
* all: added a i_ttl field in network_socket_t to allow per connection ttl
setting (in fact only used by access_out/udp.c.
defined symbols and libmp3lame
* Makefile.am: Build po before . because we need the po files to build
VLC.app
* po/fr.po: French translation courtesy of Jean-Pierre Kuypers
* OS X interface: cosmetics
+ Removed a useless use of cut.
+ Do not fail in the "clean" rule if no targets were built.
* Makefile.am:
+ Propagate $(srcdir) to toolbox.
* toolbox:
+ Do not include .moc files in POTFILES.in.
+ Fixed the generation of MSVC project files (untested).
share/vlc_win32_rc.rc: provide some version info in the vlc binary
If all is well, this should not break msvc build, but binaries built
with msvc will have version 0.0.0
woody package build.
* bootstrap:
+ Remove config.h.in and config.h before running autoheader.
+ Added "set -e" for better error tracking.
+ Call autoheader and automake after autoconf so that the first build does
not need to call autoheader.
* debian/woody-buildpackage:
+ Removed that script and put the code in toolbox.
* debian/control:
+ Added a build-dependency on libmatroska-dev.
* debian/rules:
+ Activated Matroska support.
+ Re-enabled dh_installchangelogs.
+ Removed the Modules.am generation. To build module/foo/libfoo.so, you
now need to cd modules/foo and make libfoo.so.
+ Workaround for Solaris sed. Which sucks. Did I mention that before?
+ Forward AM_MAKEFLAGS through recursive makefiles.
+ Removed the plugins and builtins rules. This causes libintl to be built
before the plugins.
* bootstrap:
+ Enabled recursive builds of plugins and builtins.
* vlc-config.in.in:
+ Fixed a typo.
* debian/changelog:
+ Next upload will fix bug #199427.
+ Call $(srcdir)/toolbox from $(builddir) instead of $(srcdir).
+ Call $(builddir)/vlc-config instead of $(srcdir)/vlc-config, because
generated files end in $(builddir).
+ Added -Imozilla to the mozilla plugin link flags.
+ Look for mozilla/vlcintf.idl in $(srcdir).
* configure.ac:
+ Set VLC_CONFIG to $(builddir)/vlc-config instead of $(srcdir)/vlc-config.
* toolbox:
+ Look for Makefile.am in ${srcdir}, and Makefile in ${builddir}.
+ Prepend ${srcdir} to header files we handle.
* m4/vlc.m4:
+ Look for vlc-config.in.in in ${srcdir} but generate vlc-config.in in
${builddir}.
* modules/gui/skins/src/dialogs.cpp, modules/gui/wxwindows/interface.cpp:
+ Include the pixmap with a path relative to the current directory.
This commit should fix builds that use --srcdir (Closes: #319).
+ Updated to the latest Debian unstable upload.
* debian/rules:
+ Moved the skins interface into the wxvlc package.
+ Cosmetic fixes.
* debian/control:
+ Updated the description of the wxvlc package.
* bootstrap:
+ Put subdirectories of modules/ in SUBDIRS, not DIST_SUBDIRS.
* Makefile.am:
+ Put modules in SUBDIRS, not DIST_SUBDIRS.
* .cvsignore:
+ Ignore vlc-config.in.
+ New build system, using recursive makefiles. Due to the amount of code
in VLC, this had become unavoidable.
+ Removed the check for OS X's stack size, since our automake targets are
a lot less hungry now.
+ Ditto for Solaris's sed.
+ Since automake-1.6 is faster than 1.7, use it first if both are present.
* m4/vlc.m4:
+ New AX_ADD_CPPFLAGS, AX_ADD_CFLAGS, AX_ADD_CXXFLAGS, AX_ADD_OBJCFLAGS
and AX_ADD_LDFLAGS macros that do all the magic to detect possible
modules and register their flags.
+ New AX_ADD_BUILTINS and AX_ADD_PLUGINS macros.
+ Some magic to generate vlc-config.
* configure.ac:
+ Moved most code to the AX_ADD_* macros.
+ Explicitely added all target Makefiles.
* modules/**/Modules.am:
+ Path to sources are now relative to Modules.am's directory level.
* modules/gui/beos/*: added _()s so the whole interface is translated
* src/libvlc.c: ask gettext for UTF-8 strings (under BeOS only for now)
FIXME: currently, untranslated strings are not converted to UTF-8
we might have an additional target one day, such as vlcplugin :)
* ./mozilla/vlc.r: OS X specific resource file for an OS X plugin.
* ./mozilla/vlcshell.cpp: added required OS X functions.
* modules/gui/wxwindows/open.cpp: fixed a string
* src/misc/configuration.c: don't yell when a config variable disappears
* po/de.po po/it.po: new translations by maintainers
render text on the video
include/osd.h: some constants useful when interfacing with the osd module
configure.ac.in: check for freetype2, enabled the osdtext module by default
Makefile.am: added osd.h, please check that this is correct
lirc.c: modified to provide feedback when buttons are pressed.
Look at the Feedback() function in lirc.c to see how this module can be used
* toolbox, msvc/*: few fixes to the msvc project files generation.
(compiling plugins won't work yet because there are a few hacks that
need to be done in order to compile dlls that use the c-runtime)
* modules/gui/macosx/prefs.m: Wrap tool tips to 60 characters,
* src/input/input.c: Correctly parse MRL of the type
/Volumes/toto:titi/coincoin.mpg (closes#238 & #186)
* modules/access/*: Changed some msg_Warn into msg_Err
* po/fr.po: Updated French translation,
* configure.ac.in: Re-enabled Swedish translation,
* Makefile.am: Do not recompile everything everytime someone changes a .h
* Makefile.am: fixed FAQ, THANKS and NEWS handling in package* rules
* src/misc/darwin_specific.m: more generic language detection
* NEWS: summarized changes from 0.4.6 to 0.5.0