source: roaraudio/libroaryiff/playback.c @ 1660:99bfd21f00ef

Last change on this file since 1660:99bfd21f00ef was 1660:99bfd21f00ef, checked in by phi, 15 years ago

changed name of fh in con struct to fh, this should all apps requiring the private member to fail to build, added function to get fh, change code to use them both everythere

File size: 1.9 KB
Line 
1//playback.c:
2
3/*
4 *      Copyright (C) Philipp 'ph3-der-loewe' Schafft - August 2008
5 *
6 *  This file is part of libroaryiff a part of RoarAudio,
7 *  a cross-platform sound system for both, home and professional use.
8 *  See README for details.
9 *
10 *  This file is free software; you can redistribute it and/or modify
11 *  it under the terms of the GNU General Public License version 3
12 *  as published by the Free Software Foundation.
13 *
14 *  libroaryiff is distributed in the hope that it will be useful,
15 *  but WITHOUT ANY WARRANTY; without even the implied warranty of
16 *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
17 *  GNU General Public License for more details.
18 *
19 *  You should have received a copy of the GNU General Public License
20 *  along with this software; see the file COPYING.  If not, write to
21 *  the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.
22 *
23 */
24
25#include <libroaryiff.h>
26
27YID YStartPlaySoundObjectSimple (YConnection *con, const char *path) {
28 return YStartPlaySoundObject(con, path, NULL);
29}
30
31YID YStartPlaySoundObject (YConnection *con, const char *path, YEventSoundPlay *value) {
32 struct roar_connection rcon;
33 struct roar_stream     stream[1];
34
35 if ( !con )
36  return YIDNULL;
37
38 if ( !path )
39  return YIDNULL;
40
41 roar_connect_fh(&rcon, con->fd);
42
43 // hm,... find out how to do this.
44 // need to start ssize_t roar_file_play (struct roar_connection * con, char * file, int exec)
45 // in background
46
47 if ( roar_file_play_full(&rcon, (char*)path, 0, 1, stream) == -1 ) {
48  ROAR_ERR("Can not start playback");
49  return YIDNULL;
50 }
51
52 return con->prev_generated_yid = ROARYIFF_ROAR2YID(stream->id);
53}
54
55void YDestroyPlaySoundObject(YConnection *con, YID yid) {
56 struct roar_connection rcon;
57
58 if ( !con )
59  return ;
60
61 if ( yid == YIDNULL )
62  return;
63
64 roar_connect_fh(&rcon, con->fd);
65
66 roar_kick(&rcon, ROAR_OT_STREAM, ROARYIFF_YID2ROAR(yid));
67}
68
69//ll
Note: See TracBrowser for help on using the repository browser.