LiVES 2.4.6

- Main Page
- Namespaces
- Data Structures
- Files

- File List
- Globals

All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros
stream.h
Go to the documentation of this file.
1 // stream.h
2 // LiVES
3 // (c) G. Finch 2008 - 2013 <salsaman@gmail.com>
4 // released under the GNU GPL 3 or later
5 // see file ../COPYING for licensing details
6
7 #ifndef HAS_LIVES_STREAM_H
8 #define HAS_LIVES_STREAM_H
9
10
11 typedef struct {
12 uint32_t stream_id;
13 uint32_t flags;
14
15 int64_t timecode;
16 int hsize;
17 int vsize;
18 double fps;
19 int palette;
20 int YUV_sampling;
21 int YUV_clamping;
22 int YUV_subspace;
23 int compression_type;
24
25 // TODO - use lives_stream_control_t for these
26 size_t dsize;
27 boolean data_ready;
28 void *handle;
29
30 volatile boolean reading;
31 void *buffer;
32 volatile size_t bufoffs;
33 } lives_vstream_t;
34
35 // stream packet tpyes
36 #define LIVES_STREAM_TYPE_VIDEO 1
37
38 // video stream flags
39 #define LIVES_VSTREAM_FLAGS_IS_CONTINUATION 1<<0
40
41 // video compression types
42 #define LIVES_VSTREAM_COMPRESSION_NONE 0
43
44
45 void lives2lives_read_stream(const char *host, int port);
46 void weed_layer_set_from_lives2lives(weed_plant_t *layer, int clip, lives_vstream_t *lstream);
47 void on_open_lives2lives_activate(LiVESMenuItem *, livespointer);
48 void on_send_lives2lives_activate(LiVESMenuItem *, livespointer);
49
50 typedef struct {
51 LiVESWidget *dialog;
52 LiVESWidget *entry1;
53 LiVESWidget *entry2;
54 LiVESWidget *entry3;
55 LiVESWidget *entry4;
56 LiVESWidget *port_spin;
57 LiVESWidget *rb_anyhost;
58 } lives_pandh_w;
59
60 lives_pandh_w *create_pandh_dialog(int type);
61
62
63
64
65 #endif // HAS_LIVES_STREAM_H
lives_vstream_t::reading
volatile boolean reading
Definition: stream.h:30
lives_vstream_t::stream_id
uint32_t stream_id
Definition: stream.h:12
lives_vstream_t::vsize
int vsize
Definition: stream.h:17
lives_vstream_t::YUV_clamping
int YUV_clamping
Definition: stream.h:21
lives_vstream_t::YUV_subspace
int YUV_subspace
Definition: stream.h:22
lives_pandh_w::rb_anyhost
LiVESWidget * rb_anyhost
Definition: stream.h:57
lives_vstream_t::bufoffs
volatile size_t bufoffs
Definition: stream.h:32
lives_vstream_t::data_ready
boolean data_ready
Definition: stream.h:27
lives_vstream_t::handle
void * handle
Definition: stream.h:28
lives_pandh_w::port_spin
LiVESWidget * port_spin
Definition: stream.h:56
lives_vstream_t::dsize
size_t dsize
Definition: stream.h:26
lives_vstream_t::YUV_sampling
int YUV_sampling
Definition: stream.h:20
lives_pandh_w::entry2
LiVESWidget * entry2
Definition: stream.h:53
lives_vstream_t
Definition: stream.h:11
lives_pandh_w::entry1
LiVESWidget * entry1
Definition: stream.h:52
lives_vstream_t::buffer
void * buffer
Definition: stream.h:31
lives_vstream_t::compression_type
int compression_type
Definition: stream.h:23
lives_vstream_t::fps
double fps
Definition: stream.h:18
create_pandh_dialog
lives_pandh_w * create_pandh_dialog(int type)
Definition: stream.c:1085
lives2lives_read_stream
void lives2lives_read_stream(const char *host, int port)
Definition: stream.c:427
lives_vstream_t::timecode
int64_t timecode
Definition: stream.h:15
lives_pandh_w
Definition: stream.h:50
lives_vstream_t::hsize
int hsize
Definition: stream.h:16
lives_pandh_w::entry4
LiVESWidget * entry4
Definition: stream.h:55
lives_vstream_t::palette
int palette
Definition: stream.h:19
on_open_lives2lives_activate
void on_open_lives2lives_activate(LiVESMenuItem *menuitem, livespointer user_data)
Definition: stream.c:1034
lives_vstream_t::flags
uint32_t flags
Definition: stream.h:13
lives_pandh_w::entry3
LiVESWidget * entry3
Definition: stream.h:54
weed_layer_set_from_lives2lives
void weed_layer_set_from_lives2lives(weed_plant_t *layer, int clip, lives_vstream_t *lstream)
Definition: stream.c:679
on_send_lives2lives_activate
void on_send_lives2lives_activate(LiVESMenuItem *menuitem, livespointer user_data)
Definition: stream.c:995
lives_pandh_w::dialog
LiVESWidget * dialog
Definition: stream.h:51