comparison dvdnav.h @ 388:90ca650854e0 src

Remove all trailing whitespace, patch by Erik Hovland *erik$hovland dot org%
author rathann
date Sat, 06 Sep 2008 21:55:51 +0000
parents 579a3538d284
children d3c273ced49c
comparison
equal deleted inserted replaced
387:4e28052eb201 388:90ca650854e0
1 /* 1 /*
2 * Copyright (C) 2001 Rich Wareham <richwareham@users.sourceforge.net> 2 * Copyright (C) 2001 Rich Wareham <richwareham@users.sourceforge.net>
3 * 3 *
4 * This file is part of libdvdnav, a DVD navigation library. 4 * This file is part of libdvdnav, a DVD navigation library.
5 * 5 *
6 * libdvdnav is free software; you can redistribute it and/or modify 6 * libdvdnav is free software; you can redistribute it and/or modify
7 * it under the terms of the GNU General Public License as published by 7 * it under the terms of the GNU General Public License as published by
8 * the Free Software Foundation; either version 2 of the License, or 8 * the Free Software Foundation; either version 2 of the License, or
9 * (at your option) any later version. 9 * (at your option) any later version.
10 * 10 *
11 * libdvdnav is distributed in the hope that it will be useful, 11 * libdvdnav is distributed in the hope that it will be useful,
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 * GNU General Public License for more details. 14 * GNU General Public License for more details.
15 * 15 *
16 * You should have received a copy of the GNU General Public License 16 * You should have received a copy of the GNU General Public License
17 * along with this program; if not, write to the Free Software 17 * along with this program; if not, write to the Free Software
18 * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA 18 * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
19 * 19 *
20 * $Id$ 20 * $Id$
93 * The resulting dvdnav_t handle will be written to *dest. 93 * The resulting dvdnav_t handle will be written to *dest.
94 */ 94 */
95 dvdnav_status_t dvdnav_open(dvdnav_t **dest, const char *path); 95 dvdnav_status_t dvdnav_open(dvdnav_t **dest, const char *path);
96 96
97 /* 97 /*
98 * Closes a dvdnav_t previously opened with dvdnav_open(), freeing any 98 * Closes a dvdnav_t previously opened with dvdnav_open(), freeing any
99 * memory associated with it. 99 * memory associated with it.
100 */ 100 */
101 dvdnav_status_t dvdnav_close(dvdnav_t *self); 101 dvdnav_status_t dvdnav_close(dvdnav_t *self);
102 102
103 /* 103 /*
129 129
130 /* 130 /*
131 * Sets the region mask (bit 0 set implies region 1, bit 1 set implies 131 * Sets the region mask (bit 0 set implies region 1, bit 1 set implies
132 * region 2, etc) of the virtual machine. Generally you will only need to set 132 * region 2, etc) of the virtual machine. Generally you will only need to set
133 * this if you are playing RCE discs which query the virtual machine as to its 133 * this if you are playing RCE discs which query the virtual machine as to its
134 * region setting. 134 * region setting.
135 * 135 *
136 * This has _nothing_ to do with the region setting of the DVD drive. 136 * This has _nothing_ to do with the region setting of the DVD drive.
137 */ 137 */
138 dvdnav_status_t dvdnav_set_region_mask(dvdnav_t *self, int32_t region_mask); 138 dvdnav_status_t dvdnav_set_region_mask(dvdnav_t *self, int32_t region_mask);
139 139
183 /********************************************************************* 183 /*********************************************************************
184 * reading data * 184 * reading data *
185 *********************************************************************/ 185 *********************************************************************/
186 186
187 /* 187 /*
188 * These functions are used to poll the playback enginge and actually get data 188 * These functions are used to poll the playback enginge and actually get data
189 * off the DVD. 189 * off the DVD.
190 */ 190 */
191 191
192 /* 192 /*
193 * Attempts to get the next block off the DVD and copies it into the buffer 'buf'. 193 * Attempts to get the next block off the DVD and copies it into the buffer 'buf'.
194 * If there is any special actions that may need to be performed, the value 194 * If there is any special actions that may need to be performed, the value
195 * pointed to by 'event' gets set accordingly. 195 * pointed to by 'event' gets set accordingly.
196 * 196 *
197 * If 'event' is DVDNAV_BLOCK_OK then 'buf' is filled with the next block 197 * If 'event' is DVDNAV_BLOCK_OK then 'buf' is filled with the next block
198 * (note that means it has to be at /least/ 2048 bytes big). 'len' is 198 * (note that means it has to be at /least/ 2048 bytes big). 'len' is
325 int32_t *part); 325 int32_t *part);
326 326
327 /* 327 /*
328 * Return the current position (in blocks) within the current 328 * Return the current position (in blocks) within the current
329 * title and the length (in blocks) of said title. 329 * title and the length (in blocks) of said title.
330 * 330 *
331 * Current implementation is wrong and likely to behave unpredictably! 331 * Current implementation is wrong and likely to behave unpredictably!
332 * Use is discouraged! 332 * Use is discouraged!
333 */ 333 */
334 dvdnav_status_t dvdnav_get_position_in_title(dvdnav_t *self, 334 dvdnav_status_t dvdnav_get_position_in_title(dvdnav_t *self,
335 uint32_t *pos, 335 uint32_t *pos,
360 * sector inside the current program chain. 360 * sector inside the current program chain.
361 * 361 *
362 * 'origin' can be one of SEEK_SET, SEEK_CUR, SEEK_END as defined in 362 * 'origin' can be one of SEEK_SET, SEEK_CUR, SEEK_END as defined in
363 * fcntl.h. 363 * fcntl.h.
364 */ 364 */
365 dvdnav_status_t dvdnav_sector_search(dvdnav_t *self, 365 dvdnav_status_t dvdnav_sector_search(dvdnav_t *self,
366 uint64_t offset, int32_t origin); 366 uint64_t offset, int32_t origin);
367 367
368 /* 368 /*
369 returns the current stream time in PTS ticks as reported by the IFO structures 369 returns the current stream time in PTS ticks as reported by the IFO structures
370 divide it by 90000 to get the current play time in seconds 370 divide it by 90000 to get the current play time in seconds
375 * Stop playing the current position and start playback of the title 375 * Stop playing the current position and start playback of the title
376 * from the specified timecode. 376 * from the specified timecode.
377 * 377 *
378 * Currently unimplemented! 378 * Currently unimplemented!
379 */ 379 */
380 dvdnav_status_t dvdnav_time_search(dvdnav_t *self, 380 dvdnav_status_t dvdnav_time_search(dvdnav_t *self,
381 uint64_t time); 381 uint64_t time);
382 382
383 /* 383 /*
384 * Stop playing current position and play the "GoUp"-program chain. 384 * Stop playing current position and play the "GoUp"-program chain.
385 * (which generally leads to the title menu or a higer-level menu). 385 * (which generally leads to the title menu or a higer-level menu).
429 * better in sync with the actual playback should always pass this one to these 429 * better in sync with the actual playback should always pass this one to these
430 * functions. 430 * functions.
431 */ 431 */
432 432
433 /* 433 /*
434 * Get the currently highlighted button 434 * Get the currently highlighted button
435 * number (1..36) or 0 if no button is highlighted. 435 * number (1..36) or 0 if no button is highlighted.
436 */ 436 */
437 dvdnav_status_t dvdnav_get_current_highlight(dvdnav_t *self, int32_t *button); 437 dvdnav_status_t dvdnav_get_current_highlight(dvdnav_t *self, int32_t *button);
438 438
439 /* 439 /*
501 501
502 /********************************************************************* 502 /*********************************************************************
503 * languages * 503 * languages *
504 *********************************************************************/ 504 *********************************************************************/
505 505
506 /* 506 /*
507 * The language codes expected by these functions are two character 507 * The language codes expected by these functions are two character
508 * codes as defined in ISO639. 508 * codes as defined in ISO639.
509 */ 509 */
510 510
511 /* 511 /*
543 543
544 /* 544 /*
545 * Get video aspect code. 545 * Get video aspect code.
546 * The aspect code does only change on VTS boundaries. 546 * The aspect code does only change on VTS boundaries.
547 * See the DVDNAV_VTS_CHANGE event. 547 * See the DVDNAV_VTS_CHANGE event.
548 * 548 *
549 * 0 -- 4:3, 2 -- 16:9 549 * 0 -- 4:3, 2 -- 16:9
550 */ 550 */
551 uint8_t dvdnav_get_video_aspect(dvdnav_t *self); 551 uint8_t dvdnav_get_video_aspect(dvdnav_t *self);
552 552
553 /* 553 /*
576 * (returns 0xffff if no such stream). 576 * (returns 0xffff if no such stream).
577 */ 577 */
578 uint16_t dvdnav_audio_stream_channels(dvdnav_t *self, uint8_t stream); 578 uint16_t dvdnav_audio_stream_channels(dvdnav_t *self, uint8_t stream);
579 579
580 /* 580 /*
581 * Converts a *logical* subpicture stream id into country code 581 * Converts a *logical* subpicture stream id into country code
582 * (returns 0xffff if no such stream). 582 * (returns 0xffff if no such stream).
583 */ 583 */
584 uint16_t dvdnav_spu_stream_to_lang(dvdnav_t *self, uint8_t stream); 584 uint16_t dvdnav_spu_stream_to_lang(dvdnav_t *self, uint8_t stream);
585 585
586 /* 586 /*
613 /* 613 /*
614 * Get active spu stream. 614 * Get active spu stream.
615 */ 615 */
616 int8_t dvdnav_get_active_spu_stream(dvdnav_t *self); 616 int8_t dvdnav_get_active_spu_stream(dvdnav_t *self);
617 617
618 /* 618 /*
619 * Get the set of user operations that are currently prohibited. 619 * Get the set of user operations that are currently prohibited.
620 * There are potentially new restrictions right after 620 * There are potentially new restrictions right after
621 * DVDNAV_CHANNEL_HOP and DVDNAV_NAV_PACKET. 621 * DVDNAV_CHANNEL_HOP and DVDNAV_NAV_PACKET.
622 */ 622 */
623 user_ops_t dvdnav_get_restrictions(dvdnav_t *self); 623 user_ops_t dvdnav_get_restrictions(dvdnav_t *self);
624 624
625 625