- 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)