]> git.sesse.net Git - vlc/log
vlc
16 years agoAdded closed captions decoding for tivo files.
Laurent Aimar [Wed, 17 Oct 2007 20:34:53 +0000 (20:34 +0000)]
Added closed captions decoding for tivo files.
Please reports broken CC decoding (with a sample to test).

16 years ago Added cc data extraction support for mpeg 1/2 when the mpeg packetizer
Laurent Aimar [Wed, 17 Oct 2007 19:56:26 +0000 (19:56 +0000)]
 Added cc data extraction support for mpeg 1/2 when the mpeg packetizer
is used. (Only dvb/atsc CC support is working)

16 years agoBuild CC module.
Laurent Aimar [Wed, 17 Oct 2007 19:52:41 +0000 (19:52 +0000)]
Build CC module.

16 years ago Added closed captions decoding/extracting from ES data. The CC tracks
Laurent Aimar [Wed, 17 Oct 2007 19:51:25 +0000 (19:51 +0000)]
 Added closed captions decoding/extracting from ES data. The CC tracks
are dynamically added when detected.
(Decoder/Packetizer support not yet commited)

16 years agoClosed captions decoder.
Laurent Aimar [Wed, 17 Oct 2007 19:48:16 +0000 (19:48 +0000)]
Closed captions decoder.
The rollup and paint on mode is not really good (a lot of flicker) but
I don't see how to fix it (the subtitle is updated as soon as a new
character is added).

16 years agoMacOSX/Framework: Move private headers to Headers/Internal (To follow Enrique Osuna...
Pierre d'Herbemont [Wed, 17 Oct 2007 19:44:19 +0000 (19:44 +0000)]
MacOSX/Framework: Move private headers to Headers/Internal (To follow Enrique Osuna's effort).

16 years agoAdd Icecast support to profiles.
Jean-Paul Saman [Wed, 17 Oct 2007 18:36:22 +0000 (18:36 +0000)]
Add Icecast support to profiles.

16 years agoAlways check the certificates chain - it does not make any sense, is counter-intuitiv...
Rémi Denis-Courmont [Wed, 17 Oct 2007 17:14:30 +0000 (17:14 +0000)]
Always check the certificates chain - it does not make any sense, is counter-intuitive and insecure to use x509 but not validate certs.
The whole security and point of TLS rely on this...

16 years agoError out if hostname not specified
Rémi Denis-Courmont [Wed, 17 Oct 2007 17:05:36 +0000 (17:05 +0000)]
Error out if hostname not specified
(this would be a bug in whatever is using the TLS object anyway)

16 years agoplaylist_NodeDelete(): we want to delete a specific playlist_item_t*, not a playlist_...
Rafaël Carré [Wed, 17 Oct 2007 15:51:00 +0000 (15:51 +0000)]
playlist_NodeDelete(): we want to delete a specific playlist_item_t*, not a playlist_item_t* associated to a specific input_item_t*

16 years agoFix detection of a52 in configure.ac
Jean-Paul Saman [Wed, 17 Oct 2007 15:42:14 +0000 (15:42 +0000)]
Fix detection of a52 in configure.ac

16 years agosvn: contrib/ffmpeg: Work around the fact that there is not enough register available...
Pierre d'Herbemont [Wed, 17 Oct 2007 14:45:02 +0000 (14:45 +0000)]
svn: contrib/ffmpeg: Work around the fact that there is not enough register available on Mac OS X/x86 for certain optimization (most likely a gcc bug).

16 years agopython bindings: svn:keywords set to Id
Rafaël Carré [Wed, 17 Oct 2007 13:30:02 +0000 (13:30 +0000)]
python bindings: svn:keywords set to Id

16 years agosap: do not release an object we did't yield
Rafaël Carré [Wed, 17 Oct 2007 13:09:40 +0000 (13:09 +0000)]
sap: do not release an object we did't yield

16 years agoabs_ variable removed from Makefile
Filippo Carone [Tue, 16 Oct 2007 20:47:35 +0000 (20:47 +0000)]
abs_ variable removed from Makefile

16 years agoplaylist_PreparseLoop(): oneliner fix for psz_arturl checking
Rafaël Carré [Tue, 16 Oct 2007 19:43:23 +0000 (19:43 +0000)]
playlist_PreparseLoop(): oneliner fix for psz_arturl checking
We will get the art if either:
    psz_arturl is NULL
    psz_arturl doesn't begin with "file://"

16 years agoQt 4.2: compatibility... btw, just switch to QT 4.3.2.... :D
Jean-Baptiste Kempf [Tue, 16 Oct 2007 17:43:31 +0000 (17:43 +0000)]
Qt 4.2: compatibility... btw, just switch to QT 4.3.2.... :D

16 years agocontribs - theora bumps to beta2, updates in the specs and a few bugfixes...
Jean-Baptiste Kempf [Tue, 16 Oct 2007 17:41:28 +0000 (17:41 +0000)]
contribs - theora  bumps to beta2, updates in the specs and a few bugfixes...

Has anyone been able to encode TO theora with VLC lately ?

16 years agoQt4 - Open: - remove a few kludges, clean and do it a better way.
Jean-Baptiste Kempf [Tue, 16 Oct 2007 17:19:27 +0000 (17:19 +0000)]
Qt4 - Open: - remove a few kludges, clean and do it a better way.
            - Use a QDirModel to provide completion, this is cool for geeks, but may increase the size of the object, since we didn't use that class before... Any thoughts on that? Remove it for Windows ?
            - Clean the layouts, and simplify and fix some signals.
            - layout fixes for capture.

16 years agooneliner to fix psz_arturl check in album_art stuff
Ilkka Ollakka [Tue, 16 Oct 2007 16:44:55 +0000 (16:44 +0000)]
oneliner to fix psz_arturl check in album_art stuff

16 years agolibvlc: fix a memory leak
Rafaël Carré [Tue, 16 Oct 2007 15:42:15 +0000 (15:42 +0000)]
libvlc: fix a memory leak

16 years agoqt4: fix a segfault
Rafaël Carré [Tue, 16 Oct 2007 14:18:21 +0000 (14:18 +0000)]
qt4: fix a segfault

16 years agofix [22632]: check psz_arturl before using it
Rafaël Carré [Tue, 16 Oct 2007 12:44:47 +0000 (12:44 +0000)]
fix [22632]: check psz_arturl before using it

16 years agoalbum art: the corrects picture URLs begin with "file://" else, we have to download...
Rafaël Carré [Tue, 16 Oct 2007 12:27:24 +0000 (12:27 +0000)]
album art: the corrects picture URLs begin with "file://" else, we have to download/extract/look in the cache
sets the ArtworkURL to the file in cache also when it had been extracted previously

16 years agoqt4 configure: Use proper escaping.
Rafaël Carré [Tue, 16 Oct 2007 00:30:14 +0000 (00:30 +0000)]
qt4 configure: Use proper escaping.
\\\\ will become \ and \\\" will become "

16 years agoUgly quoting fix.
Christophe Mutricy [Mon, 15 Oct 2007 23:39:10 +0000 (23:39 +0000)]
Ugly quoting fix.

16 years agoSome files were renamed
Christophe Mutricy [Mon, 15 Oct 2007 22:32:53 +0000 (22:32 +0000)]
Some files were renamed

16 years agoForgotten in [22627]
Christophe Mutricy [Mon, 15 Oct 2007 21:49:45 +0000 (21:49 +0000)]
Forgotten in [22627]

16 years agoi18n for the Qt dialogs
Christophe Mutricy [Mon, 15 Oct 2007 21:43:40 +0000 (21:43 +0000)]
i18n for the Qt dialogs

16 years agocompile the libfaad test with -lm
Rafaël Carré [Mon, 15 Oct 2007 21:39:50 +0000 (21:39 +0000)]
compile the libfaad test with -lm

16 years agofix the -A shortcut
Sigmund Augdal Helberg [Mon, 15 Oct 2007 21:35:28 +0000 (21:35 +0000)]
fix the -A shortcut

16 years agoExport a function to get the install dir of VLC from the plugins
Christophe Mutricy [Mon, 15 Oct 2007 21:30:53 +0000 (21:30 +0000)]
Export a function to get the install dir of VLC from the plugins

16 years agoqt4 preferences: combo is mandatory in StringListConfigControl constructor
Rafaël Carré [Mon, 15 Oct 2007 21:17:12 +0000 (21:17 +0000)]
qt4 preferences: combo is mandatory in StringListConfigControl constructor

16 years agoAvoid automake getting confused by the ../..
Christophe Mutricy [Mon, 15 Oct 2007 21:10:57 +0000 (21:10 +0000)]
Avoid automake getting confused by the ../..

16 years agoqt4 simple preferences: only show the options of the selected audio output module
Rafaël Carré [Mon, 15 Oct 2007 21:09:40 +0000 (21:09 +0000)]
qt4 simple preferences: only show the options of the selected audio output module

16 years agoqt4 preferences: the label is not mandatory in object constructor
Rafaël Carré [Mon, 15 Oct 2007 21:09:03 +0000 (21:09 +0000)]
qt4 preferences: the label is not mandatory in object constructor

16 years agovlc_arrays.h: Use item_at_index istead of object_at_index.
Pierre d'Herbemont [Mon, 15 Oct 2007 17:51:11 +0000 (17:51 +0000)]
vlc_arrays.h: Use item_at_index istead of object_at_index.

16 years agoFix vlc-config
Rémi Denis-Courmont [Mon, 15 Oct 2007 17:07:33 +0000 (17:07 +0000)]
Fix vlc-config

16 years agoUse VLC_ADD_LIBS where seemingly appropriate
Rémi Denis-Courmont [Mon, 15 Oct 2007 16:50:54 +0000 (16:50 +0000)]
Use VLC_ADD_LIBS where seemingly appropriate

16 years agosrc/Makefile.am: Move flat_media_list.c->flat_media_list_view.c.
Pierre d'Herbemont [Mon, 15 Oct 2007 16:34:29 +0000 (16:34 +0000)]
src/Makefile.am: Move flat_media_list.c->flat_media_list_view.c.

16 years agoSeparate LDFLAGS from LIBS for real.
Rémi Denis-Courmont [Mon, 15 Oct 2007 16:29:17 +0000 (16:29 +0000)]
Separate LDFLAGS from LIBS for real.
Should fix problems with building libvlc.so.1 when libvlc.so.0 is installed.
Cannot test since the tree is currently broken.

16 years agocontrol/flat_media_list_view.c: Use the new media_list_view object. (Plus minor heade...
Pierre d'Herbemont [Mon, 15 Oct 2007 16:25:28 +0000 (16:25 +0000)]
control/flat_media_list_view.c: Use the new media_list_view object. (Plus minor header cleanup).

16 years agolibvlc_internal.h: Forgotten part of previous commit.
Pierre d'Herbemont [Mon, 15 Oct 2007 15:47:39 +0000 (15:47 +0000)]
libvlc_internal.h: Forgotten part of previous commit.

16 years agos/libvlc_media_list_view_release/libvlc_media_list_view_retain/ in previous commit.
Pierre d'Herbemont [Mon, 15 Oct 2007 15:26:55 +0000 (15:26 +0000)]
s/libvlc_media_list_view_release/libvlc_media_list_view_retain/ in previous commit.

16 years agocontrol/media_list_view.c: Implement unimplemented retain/release function.
Pierre d'Herbemont [Mon, 15 Oct 2007 15:23:44 +0000 (15:23 +0000)]
control/media_list_view.c: Implement unimplemented retain/release function.

16 years agoDon't duplicate entries... :D
Jean-Baptiste Kempf [Mon, 15 Oct 2007 13:43:30 +0000 (13:43 +0000)]
Don't duplicate entries... :D

16 years agoUse $HOME before anything else to determine the home directory. Patch by Benjamin...
Rafaël Carré [Mon, 15 Oct 2007 13:09:47 +0000 (13:09 +0000)]
Use $HOME before anything else to determine the home directory. Patch by Benjamin Cama

16 years agosmall codingstyle fix
Jean-Paul Saman [Mon, 15 Oct 2007 09:39:17 +0000 (09:39 +0000)]
small codingstyle fix

16 years agoWhitespace cleanup
Jean-Paul Saman [Mon, 15 Oct 2007 09:39:16 +0000 (09:39 +0000)]
Whitespace cleanup

16 years agoRemove excess whiteline.
Jean-Paul Saman [Mon, 15 Oct 2007 09:39:15 +0000 (09:39 +0000)]
Remove excess whiteline.

16 years agoIndentation.
Jean-Paul Saman [Mon, 15 Oct 2007 09:39:13 +0000 (09:39 +0000)]
Indentation.

16 years agoRemove excess trainling newlines at end of file.
Jean-Paul Saman [Mon, 15 Oct 2007 09:39:12 +0000 (09:39 +0000)]
Remove excess trainling newlines at end of file.

16 years agoQt4 - compil fix.
Jean-Baptiste Kempf [Mon, 15 Oct 2007 09:24:58 +0000 (09:24 +0000)]
Qt4 - compil fix.

16 years agoQt4 - threads assertions fixes, docking playlist and size of main interfaces fixes.
Jean-Baptiste Kempf [Mon, 15 Oct 2007 08:47:27 +0000 (08:47 +0000)]
Qt4 - threads assertions fixes, docking playlist and size of main interfaces fixes.

16 years agoQt4 - Prepare for get FPS.
Jean-Baptiste Kempf [Mon, 15 Oct 2007 08:46:33 +0000 (08:46 +0000)]
Qt4 - Prepare for get FPS.

16 years agoQt4 - Various comments and unimportant fixes.
Jean-Baptiste Kempf [Mon, 15 Oct 2007 08:29:53 +0000 (08:29 +0000)]
Qt4 - Various comments and unimportant fixes.

16 years agoaudioscrobbler: submits songs when the input end, not when the playlist current input...
Rafaël Carré [Sun, 14 Oct 2007 23:15:47 +0000 (23:15 +0000)]
audioscrobbler: submits songs when the input end, not when the playlist current input changes.
The last song in playlist was not being submitted, since the current input would never change.

16 years agoupnp intel: reverts [22521] to make it compile. The module should be rewritten to...
Rafaël Carré [Sun, 14 Oct 2007 22:52:53 +0000 (22:52 +0000)]
upnp intel: reverts [22521] to make it compile. The module should be rewritten to not use any playlist code

16 years agoaudioscrobbler: read the metadata when it has been extracted.
Rafaël Carré [Sun, 14 Oct 2007 22:27:45 +0000 (22:27 +0000)]
audioscrobbler: read the metadata when it has been extracted.

16 years agoplaylist.c: removed potential deadlock and duplicate signalling
Damien Fouilleul [Sun, 14 Oct 2007 20:21:56 +0000 (20:21 +0000)]
playlist.c: removed potential deadlock and duplicate signalling

16 years agoAdd partial infrastructure for libs/ldflags segregation
Rémi Denis-Courmont [Sun, 14 Oct 2007 20:02:18 +0000 (20:02 +0000)]
Add partial infrastructure for libs/ldflags segregation

16 years agoClean up + fixed a few memleaks.
Laurent Aimar [Sun, 14 Oct 2007 12:18:39 +0000 (12:18 +0000)]
Clean up + fixed a few memleaks.

16 years agoRemoved meta-preparsed.
Laurent Aimar [Sun, 14 Oct 2007 12:18:17 +0000 (12:18 +0000)]
Removed meta-preparsed.

16 years agoRemoved meta-preparsed variable.
Laurent Aimar [Sun, 14 Oct 2007 12:17:37 +0000 (12:17 +0000)]
Removed meta-preparsed variable.
Audioscrobbler is not fixed but I let a comment explaining how to do it.

16 years agoFixed segfault with --minimize-threads
Laurent Aimar [Sun, 14 Oct 2007 12:14:03 +0000 (12:14 +0000)]
Fixed segfault with --minimize-threads

16 years agoRestore extension detection (ty and ty+)
Laurent Aimar [Sat, 13 Oct 2007 20:30:22 +0000 (20:30 +0000)]
Restore extension detection (ty and ty+)

16 years agocontrol/media_list_view.c: Rework the media_list_view. Make it unmutable.
Pierre d'Herbemont [Sat, 13 Oct 2007 13:53:45 +0000 (13:53 +0000)]
control/media_list_view.c: Rework the media_list_view. Make it unmutable.

16 years agoTony Anecito suggestions to make java bindings compile in cygwin integrated - needs...
Filippo Carone [Sat, 13 Oct 2007 12:03:06 +0000 (12:03 +0000)]
Tony Anecito suggestions to make java bindings compile in cygwin integrated - needs testing

16 years agoRelease shared objects when not debugging, not the other way around
Rémi Denis-Courmont [Sat, 13 Oct 2007 11:14:17 +0000 (11:14 +0000)]
Release shared objects when not debugging, not the other way around

16 years agoLink with the in-tree libvlc
Rémi Denis-Courmont [Sat, 13 Oct 2007 08:25:59 +0000 (08:25 +0000)]
Link with the in-tree libvlc

16 years agoAdded sout-mux-caching option. It allow to set the initial muxer cache value
Laurent Aimar [Fri, 12 Oct 2007 23:41:31 +0000 (23:41 +0000)]
Added sout-mux-caching option. It allow to set the initial muxer cache value
in millisecond.
 Original patch created by Jeff Hansen.

16 years agoImport new http://tivo-vlc.sf.net tivo demuxer version. (The author
Laurent Aimar [Fri, 12 Oct 2007 22:55:19 +0000 (22:55 +0000)]
Import new http://tivo-vlc.sf.net tivo demuxer version. (The author
is Neal Symms, patch made by Dave Still)
Changelog is
* v2.0.0 - 21-Mar-2005 - Series 2 support!  No AC-3 on S2 DTivo yet.
* v2.1.0 - 22-Mar-2005 - Support for AC-3 on S2 DTivo (long ac3 packets)
* v3.0.0 - 14-Jul-2005 - Support for skipping fwd/back via VLC hotkeys
Please test and report any regression. (The patch is too big to be
correctly reviewed)

16 years agovlc_threads: document gibalou's comment, and fix a small bug in win32 vlc_cond_timedw...
Damien Fouilleul [Fri, 12 Oct 2007 21:42:30 +0000 (21:42 +0000)]
vlc_threads: document gibalou's comment, and fix a small bug in win32 vlc_cond_timedwait()

16 years agomacosx: cosmetic, avoid pthread_join() on self
Damien Fouilleul [Fri, 12 Oct 2007 21:37:56 +0000 (21:37 +0000)]
macosx: cosmetic, avoid pthread_join() on self

16 years agoSkip APE tags at the start (like for id3)
Laurent Aimar [Fri, 12 Oct 2007 20:33:39 +0000 (20:33 +0000)]
Skip APE tags at the start (like for id3)

16 years agoUse field order (top/bottom) for correct bob/linear deinterlacing.
Laurent Aimar [Fri, 12 Oct 2007 19:49:44 +0000 (19:49 +0000)]
Use field order (top/bottom) for correct bob/linear deinterlacing.
(Decoder that does not set this info should be fixed)

16 years agoplaylistinfo.m: MacOS X GUI, fixed crash where meta psz_value is NULL (usn't be the...
Damien Fouilleul [Fri, 12 Oct 2007 19:26:39 +0000 (19:26 +0000)]
playlistinfo.m: MacOS X GUI, fixed crash where meta psz_value is NULL (usn't be the case before), crash happens in shoutcast service discovery

16 years agoqt4: do not access a widget from another thread
Rafaël Carré [Fri, 12 Oct 2007 18:43:02 +0000 (18:43 +0000)]
qt4: do not access a widget from another thread

16 years agologo filter: fail early if the logo hasn't been specified (rather than segfaulting)
Rafaël Carré [Fri, 12 Oct 2007 18:32:39 +0000 (18:32 +0000)]
logo filter: fail early if the logo hasn't been specified (rather than segfaulting)

16 years agoPatch by Richard Hosking: Userptr IO buffers need to be aligned according to the...
Jean-Paul Saman [Fri, 12 Oct 2007 16:50:53 +0000 (16:50 +0000)]
Patch by Richard Hosking: Userptr IO buffers need to be aligned according to the V4L2 reference capture c example (which has been updated with this recently). Also, the reference program has the device close operations after the 'free' calls so they have been moved. This fixes the issue I was having with my device crashing vlc on close. Also fixed a typo in an error message and renamed a local function which was badly named by me.

16 years agostandardpanel: Add some tooltips
Christophe Mutricy [Fri, 12 Oct 2007 16:46:29 +0000 (16:46 +0000)]
standardpanel: Add some tooltips
vlc_intf_strings.h: with the current intf having changing icons on the button (and not activated/desactivated state), tool tips can be confusing. So reword a strings slightly. Also "No repeat" may need to be improve

16 years agoplaylist: use a valid extension for Media Library ("xspf")
Rafaël Carré [Fri, 12 Oct 2007 16:42:50 +0000 (16:42 +0000)]
playlist: use a valid extension for Media Library ("xspf")

16 years agotypo
Rafaël Carré [Fri, 12 Oct 2007 16:39:58 +0000 (16:39 +0000)]
typo

16 years agotypo
Rafaël Carré [Fri, 12 Oct 2007 16:25:08 +0000 (16:25 +0000)]
typo

16 years agoOups
Christophe Mutricy [Fri, 12 Oct 2007 16:02:29 +0000 (16:02 +0000)]
Oups

16 years agoDistribute pixmaps/menus_info_16px.png and sort the file lists
Christophe Mutricy [Fri, 12 Oct 2007 15:46:02 +0000 (15:46 +0000)]
Distribute pixmaps/menus_info_16px.png and sort the file lists

16 years agoxspf: try to produce valid XSPF files (there's still a problem with URI %-encoding)
Rafaël Carré [Fri, 12 Oct 2007 14:20:48 +0000 (14:20 +0000)]
xspf: try to produce valid XSPF files (there's still a problem with URI %-encoding)

16 years agoQt4 - fix the assert bug on releasing the Video. There are other to do, but I don...
Jean-Baptiste Kempf [Fri, 12 Oct 2007 11:41:55 +0000 (11:41 +0000)]
Qt4 - fix the assert bug on releasing the Video. There are other to do, but I don't have time this WE, but here is the way to do it correctly.
funman ? :D

16 years agoContribs - faac updated to 1.26, no patch needed.
Jean-Baptiste Kempf [Thu, 11 Oct 2007 23:43:07 +0000 (23:43 +0000)]
Contribs - faac updated to 1.26, no patch needed.
btw, faad2.6 is out and they have supposedly changed their headers...

16 years agoDistribute header files
Christophe Mutricy [Thu, 11 Oct 2007 23:31:55 +0000 (23:31 +0000)]
Distribute header files

16 years agoFix make dist
Christophe Mutricy [Thu, 11 Oct 2007 20:58:58 +0000 (20:58 +0000)]
Fix make dist

16 years agoQt4 - Fix a Sout bug - spotted by humbleb on IRC
Jean-Baptiste Kempf [Thu, 11 Oct 2007 20:11:03 +0000 (20:11 +0000)]
Qt4 - Fix a Sout bug - spotted by humbleb on IRC

16 years agoQt4: close() slot problem fixed.
Jean-Baptiste Kempf [Thu, 11 Oct 2007 19:48:34 +0000 (19:48 +0000)]
Qt4: close() slot problem fixed.

16 years agoQt4 - Menus. small fix.
Jean-Baptiste Kempf [Thu, 11 Oct 2007 19:26:53 +0000 (19:26 +0000)]
Qt4 - Menus. small fix.

16 years agoQt4 - VLM improvements in the layout and in the function used.
Jean-Baptiste Kempf [Thu, 11 Oct 2007 19:26:21 +0000 (19:26 +0000)]
Qt4 - VLM improvements in the layout and in the function used.

16 years agoQt4 - fix compilation on QT4.2
Jean-Baptiste Kempf [Thu, 11 Oct 2007 17:51:45 +0000 (17:51 +0000)]
Qt4 - fix compilation on QT4.2

16 years agoAdded support for basic LOAS AAC stream.
Laurent Aimar [Thu, 11 Oct 2007 17:29:49 +0000 (17:29 +0000)]
Added support for basic LOAS AAC stream.

16 years agoIncrease upper tempo limit
Rémi Denis-Courmont [Thu, 11 Oct 2007 17:16:15 +0000 (17:16 +0000)]
Increase upper tempo limit

16 years agoEmulates MIDI tick real-time events
Rémi Denis-Courmont [Thu, 11 Oct 2007 17:10:19 +0000 (17:10 +0000)]
Emulates MIDI tick real-time events
Now, the synthetizer is "pinged" at regular interval.
This fixes the annoying stuttering when two consecutive notes where too distant

16 years agoIgnore key and time signatures - we don't have a metronome, and we don't print sheet...
Rémi Denis-Courmont [Thu, 11 Oct 2007 16:45:11 +0000 (16:45 +0000)]
Ignore key and time signatures - we don't have a metronome, and we don't print sheet music, so that's totally useless here (I think)