1b285192aSMauro Carvalho Chehab /* 2b285192aSMauro Carvalho Chehab init/start/stop/exit stream functions 3b285192aSMauro Carvalho Chehab Copyright (C) 2003-2004 Kevin Thayer <nufan_wfk at yahoo.com> 4b285192aSMauro Carvalho Chehab Copyright (C) 2005-2007 Hans Verkuil <hverkuil@xs4all.nl> 5b285192aSMauro Carvalho Chehab 6b285192aSMauro Carvalho Chehab This program is free software; you can redistribute it and/or modify 7b285192aSMauro Carvalho Chehab it under the terms of the GNU General Public License as published by 8b285192aSMauro Carvalho Chehab the Free Software Foundation; either version 2 of the License, or 9b285192aSMauro Carvalho Chehab (at your option) any later version. 10b285192aSMauro Carvalho Chehab 11b285192aSMauro Carvalho Chehab This program is distributed in the hope that it will be useful, 12b285192aSMauro Carvalho Chehab but WITHOUT ANY WARRANTY; without even the implied warranty of 13b285192aSMauro Carvalho Chehab MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14b285192aSMauro Carvalho Chehab GNU General Public License for more details. 15b285192aSMauro Carvalho Chehab 16b285192aSMauro Carvalho Chehab You should have received a copy of the GNU General Public License 17b285192aSMauro Carvalho Chehab along with this program; if not, write to the Free Software 18b285192aSMauro Carvalho Chehab Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 19b285192aSMauro Carvalho Chehab */ 20b285192aSMauro Carvalho Chehab 21b285192aSMauro Carvalho Chehab #ifndef IVTV_STREAMS_H 22b285192aSMauro Carvalho Chehab #define IVTV_STREAMS_H 23b285192aSMauro Carvalho Chehab 24b285192aSMauro Carvalho Chehab int ivtv_streams_setup(struct ivtv *itv); 25b285192aSMauro Carvalho Chehab int ivtv_streams_register(struct ivtv *itv); 26b285192aSMauro Carvalho Chehab void ivtv_streams_cleanup(struct ivtv *itv, int unregister); 27b285192aSMauro Carvalho Chehab 28b285192aSMauro Carvalho Chehab /* Capture related */ 29b285192aSMauro Carvalho Chehab int ivtv_start_v4l2_encode_stream(struct ivtv_stream *s); 30b285192aSMauro Carvalho Chehab int ivtv_stop_v4l2_encode_stream(struct ivtv_stream *s, int gop_end); 31b285192aSMauro Carvalho Chehab int ivtv_start_v4l2_decode_stream(struct ivtv_stream *s, int gop_offset); 32b285192aSMauro Carvalho Chehab int ivtv_stop_v4l2_decode_stream(struct ivtv_stream *s, int flags, u64 pts); 33b285192aSMauro Carvalho Chehab 34b285192aSMauro Carvalho Chehab void ivtv_stop_all_captures(struct ivtv *itv); 35b285192aSMauro Carvalho Chehab int ivtv_passthrough_mode(struct ivtv *itv, int enable); 36b285192aSMauro Carvalho Chehab 37b285192aSMauro Carvalho Chehab #endif 38