summaryrefslogtreecommitdiff
path: root/src/xine-engine/xine_internal.h
AgeCommit message (Collapse)Author
2004-08-02no objections so far: committing the fine speed control patchMiguel Freitas
(in case of major trouble just revert the patch i sent to xine-devel) CVS patchset: 6871 CVS date: 2004/08/02 12:51:07
2004-06-13implement steps 1, 2, 3 and 4 of the seeking proposal:Miguel Freitas
http://article.gmane.org/gmane.comp.video.xine.devel/9532 it is now up to demuxers to decide what the 0..65535 position means. demuxers tested: ogg, voc, flac, rm, asf, vqa, vob, avi, y4m, au, mov, ts, mp3, mpg, wav, ra, mve CVS patchset: 6686 CVS date: 2004/06/13 21:28:52
2004-05-29separate the two semantics of querying a port's status with a NULL stream;Michael Roitzsch
before, NULL could mean two things: no stream at all or a stream that does not want to be addressed; now the latter is represented by the new XINE_ANON_STREAM resulting changes: * the status() functions now behave differently for NULL and XINE_ANON_STREAM (as the commentary always implied, but this was not the case, so post plugin rewiring went wrong, because it relies on the status() function) * the NULL_STREAM defines in audio_out and video_out are obsolete * update the function comments in the headers * update the post plugin rewire functions to use the status() functions to check, if the old port was opened and handle the new one accordingly; this makes open_count obsolete * change all post plugins accordingly (mostly using XINE_ANON_STREAM instead of NULL) additional change: * the status() function of audio port now returns the bits/rate/mode values of the input and not the output; this is more likely to be what a post plugin wants * the reimplementation of status() in the upmix plugin is obsolete CVS patchset: 6603 CVS date: 2004/05/29 14:45:25
2004-04-16- flush the events queue before returning from an open() so that the front-endsBastien Nocera
can receive error events before the end of xine_open() CVS patchset: 6410 CVS date: 2004/04/16 16:34:22
2004-03-23Ignore speed change in nbc during xine_stop() to avid deadlocks.František Dvořák
CVS patchset: 6305 CVS date: 2004/03/23 22:54:31
2004-02-12big commit of the new ticket system to protect the rewiring and moreMichael Roitzsch
(as discussed on xine-devel, slightly improved to block acquires from different threads between atomic revoke and issue) * xine_ticket_t is declared in xine_internal.h and implemented in xine.c * the ticket is acquired for (hopefully) all port operations (no modifications to decoders needed, decoder loop does this) * the ticket is revoked on pausing and on rewiring * OSD does not store the port pointer any more (which was very dangerous, since the pointer can change on rewire) CVS patchset: 6137 CVS date: 2004/02/12 18:19:00
2004-01-11add _x_demux_read_send_dataJames Stembridge
CVS patchset: 6025 CVS date: 2004/01/11 15:54:23
2003-12-23- some more endianness fixes to ogg demuxerMiguel Freitas
- new helper function for demuxers (send data to fifo easily, provided it was already loaded to memory) CVS patchset: 5936 CVS date: 2003/12/23 21:22:38
2003-12-09update copyright year (and we have to do it again in 3 weeks... ;-) )Daniel Caujolle-Bert
CVS patchset: 5879 CVS date: 2003/12/09 00:02:28
2003-11-26xprintf clean pass. xprintf now log into new XINE_LOG_TRACE log buffer. ↵Daniel Caujolle-Bert
scratch buffer enhancement (thanks Thibaut for the malloc tips), enlarge log buffer from 25 lines (very useless), to 150 (better). CVS patchset: 5801 CVS date: 2003/11/26 23:44:08
2003-11-16New stream/meta info (safe) stuff.Daniel Caujolle-Bert
BIG NOTE: use helpers to access to these informations (get/set/reset): _x_{stream,meta}_info_{get,set,reset}() are for internal use, don't use *_public() ones from inside the beast ;-) Some wrongly names "xine_" fonction renaming. CVS patchset: 5757 CVS date: 2003/11/16 23:33:42
2003-11-15* making metronom xine_stream_t independentMichael Roitzsch
* using xprintf() and lprintf() inside metronom * prebuffer is now a metronom option * some small structure cleanup CVS patchset: 5737 CVS date: 2003/11/15 20:43:11
2003-11-15demux_action_pending privateMiguel Freitas
CVS patchset: 5734 CVS date: 2003/11/15 15:04:35
2003-11-15start xine_stream_t separation (public/private).Miguel Freitas
(we should finish this before rc3.) - stream_info and meta_info variables are private now. obs: everything must be recompiled due xine_stream_t changes CVS patchset: 5733 CVS date: 2003/11/15 14:54:30
2003-11-11rename internal API function (_x_<function>).Daniel Caujolle-Bert
CVS patchset: 5721 CVS date: 2003/11/11 18:44:50
2003-10-21adding members in the middle of an engine structure breaks plugin APIMichael Roitzsch
solutions: increase (in this case: ALL) plugin interface versions or add the new member at the end taking solution 2 for now and adding a TODO-item for later CVS patchset: 5562 CVS date: 2003/10/21 16:08:04
2003-10-20Clog the security hole in RIP input plugin. Streams may be saved only into ↵František Dvořák
onle directory. Note, this is patch only for xine-engine. It doesn't cover cfg:// MRLs used by xine-ui. CVS patchset: 5558 CVS date: 2003/10/20 08:36:56
2003-10-19Rename meta_helper info_helper.Thibaut Mattern
Add a function to set integer stream infos. CVS patchset: 5547 CVS date: 2003/10/19 19:45:03
2003-10-18Add io_helper and meta_helper.Thibaut Mattern
CVS patchset: 5535 CVS date: 2003/10/18 19:19:52
2003-09-25Correct/add comment about xine_demux_flush_engine.Rocky Bernstein
CVS patchset: 5412 CVS date: 2003/09/25 02:57:51
2003-08-21RIP Input PluginMiguel Freitas
CVS patchset: 5300 CVS date: 2003/08/21 00:37:26
2003-05-20public header cleanup:Michael Roitzsch
* regulate mutual inclusion based on XINE_COMPILE * src/xine-engine/spu_decoder.h was unused -> make it the spu decoder API header and remove src/libspudec/spu_decoder_api.h * mark some xine_stream_t members as unused for next cleanup CVS patchset: 4883 CVS date: 2003/05/20 13:50:55
2003-05-15add broadcasterMiguel Freitas
CVS patchset: 4857 CVS date: 2003/05/15 20:23:16
2003-04-21avoid implicit declarations. Less warnings.Daniel Caujolle-Bert
CVS patchset: 4646 CVS date: 2003/04/21 06:12:23
2003-04-17cleanup patch by Marco Z|hlke <M.Zuehlke@freenet.de>Miguel Freitas
CVS patchset: 4632 CVS date: 2003/04/17 19:01:23
2003-04-13add a small read() function that can be aborted by demux_action_pendingMiguel Freitas
useful for network input plugins... CVS patchset: 4600 CVS date: 2003/04/13 16:28:48
2003-04-05"perfect" time display for dvdsMiguel Freitas
(see thread on xine-devel for details) CVS patchset: 4540 CVS date: 2003/04/05 12:28:15
2003-04-04add initial async error/general message reporting to frontendMiguel Freitas
obs: more messages should be added CVS patchset: 4539 CVS date: 2003/04/04 19:20:46
2003-03-27- demux_avi: do not set input_pos/time on audio buffers. otherwise ↵Miguel Freitas
non-interlaved or bad interleaved files show slider problems - make metronom prebuffer configurable. see metronom.h for comments. CVS patchset: 4501 CVS date: 2003/03/27 18:56:54
2003-03-25- allow on-the-fly rewiring of streams outputMichael Roitzsch
- add missing destruction of some pthread structs - do not init streams_lock twice CVS patchset: 4479 CVS date: 2003/03/25 12:52:32
2003-03-08first step towards fixing the DVD menu highlighting problemsMichael Roitzsch
The problem arises because of inconsistent usage of libdvdread's functions regarding NAV packet reading: libspudec and the dxr3 spu decoder use some of these functions, but they used to have private copies of the relevant files of libdvdread. These do not work any more now, since the internal layout of NAV packets in libdvdread changed lately. So we should always use the functions from current libdvdread. Please note that highlights might not work yet. The next step will be to sync libdvdnav. Stay tuned. CVS patchset: 4371 CVS date: 2003/03/08 14:11:52
2003-02-22provide a way of invalidating extra infoMichael Roitzsch
CVS patchset: 4249 CVS date: 2003/02/22 14:18:55
2003-02-14introduce a new mrl key, example "stream.ext#lastdemuxprobe:demux_id"Miguel Freitas
- xine will try to open stream.ext using all demuxers _except_ demux_id. - then it will be finally probed by content for demux_id. why? this is the mechanism to catch buggy content probing demuxers. it's is not intended for end users, but rather to make possible some kind of script testing of xine-lib and QA before releases. CVS patchset: 4149 CVS date: 2003/02/14 00:35:29
2003-01-13match implemented behaviour better to the one documented in the public headerMichael Roitzsch
CVS patchset: 3900 CVS date: 2003/01/13 16:26:48
2003-01-13- add option to adjust spu sync (works for both dvd and external subtitles)Miguel Freitas
- implement some master/slave stuff - implement subtitle mrl: xine movie.mpg#subtitle:whatever.sub CVS patchset: 3887 CVS date: 2003/01/13 02:15:07
2003-01-11brand-new external subtitles support. (yes, it works!)Miguel Freitas
tested with asf, avi and mpeg but any media should work. todo: - clean up the master/slave stuff and public api. - implement seeking on demux_sputext.c (it must seek to closest subtitle) - general cleaning up and bugfixing CVS patchset: 3860 CVS date: 2003/01/11 03:47:01
2003-01-10protect update of current_extra_infoMiguel Freitas
CVS patchset: 3854 CVS date: 2003/01/10 19:15:16
2003-01-10internal input_time is miliseconds nowMiguel Freitas
CVS patchset: 3851 CVS date: 2003/01/10 11:57:15
2003-01-08fixes/cleanups of the handled/unhandled codecsMiguel Freitas
for more information see message on xine-devel CVS patchset: 3818 CVS date: 2003/01/08 01:02:27
2002-12-27Fix 'XINE_STREAM_INFO_MAX_SPU_CHANNEL' propertyEwald Snel
- Calculate number of spu channels in video_decoder_loop() - Use 'track_map' for spu channels, just like audio channels CVS patchset: 3700 CVS date: 2002/12/27 22:49:38
2002-12-27fix dvb eventsGuenter Bartsch
CVS patchset: 3692 CVS date: 2002/12/27 13:44:58
2002-12-27quite experimental changes on post plugin api to enable rewiringMiguel Freitas
of streams. Michael, please let me know if you have a better idea! :) CVS patchset: 3689 CVS date: 2002/12/27 03:40:07
2002-12-27small cleanup for extra_info_tMiguel Freitas
CVS patchset: 3688 CVS date: 2002/12/27 02:03:06
2002-12-21xine_get_pos_length should return zero if current position is unknown. thisMiguel Freitas
prevents the gui from drawing slider at wrong positions during seek. CVS patchset: 3609 CVS date: 2002/12/21 16:13:43
2002-12-21- add buf->decoder_info_ptr: portability for systems where pointer hasMiguel Freitas
different sizeof than integer. - add extra_info structure to pass informations from input/demuxers down to the output frame. this can be used, for example, to pass the frame number of a frame (when known by decoder). also, immediate benefict is that we now have a slider which really shows the current position of the playing stream. new fields can be added to extra_info keeping binary compatibility - bumpy everybody's api versions CVS patchset: 3603 CVS date: 2002/12/21 12:56:44
2002-12-06- add still frame hintMiguel Freitas
- improves playback on slower systems since we avoid false triggering of still frames and duplicating images CVS patchset: 3447 CVS date: 2002/12/06 18:38:35
2002-11-20engine modifications to allow post plugin layer:Michael Roitzsch
* new public output interface xine_{audio,video}_port_t instead of xine_{ao,vo}_driver_t, old names kept as aliases for compatibility * modified the engine to allow multiple streams per output * renaming of some internal structures according to public changes * moving SCR out of per-stream-metronom into a global metronom_clock_t residing in xine_t and therefore easily available to the output layer * adapting all available plugins (note to external projects: the compiler will help you a lot, if a plugin compiles, it is adapted, because all changes add new parameters to some functions) * bump up all interface versions because of xine_t and xine_stream_t changes CVS patchset: 3312 CVS date: 2002/11/20 11:57:38
2002-11-17bring eject back: always keep the last input plugin class that supports ejectingMichael Roitzsch
CVS patchset: 3280 CVS date: 2002/11/17 17:41:45
2002-10-31new syntax for MRLsMichael Roitzsch
basic changes: - MRLs are a subset of URIs - important new delimiter is # - everything before the # will be passed to the input plugin - after the # you can add several ;-separated stream parameters: novideo - video will be ignored noaudio - audio will be ignored nospu - spus will be ignored demux:... - specify the demuxer to use (e.g. demux:mpeg_block) entry:value - assign any config entry a new value CVS patchset: 3112 CVS date: 2002/10/31 16:58:12
2002-10-30- add mutex on seeking and avoid overuse of sched_yieldMiguel Freitas
CVS patchset: 3102 CVS date: 2002/10/30 17:51:13