2 * Dictix / recorder.vapi
4 * Copyright (C) Martin Blanchard 2011 <tinram@gmx.fr>
6 * This program is free software; you can redistribute it and/or modify
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
9 * (at your option) any later version.
11 * This program is distributed in the hope that it will be useful,
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 * GNU General Public License for more details.
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 Foundation,
18 * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA
27 [CCode (prefix = "Dix", lower_case_cprefix = "dix_", cheader_filename = "dix-player.h")]
30 [CCode (free_function = "gst_object_unref")]
31 public class Player : Pipeline {
32 [CCode (cname = "dix_player_new")]
35 [CCode (cname = "dix_player_start_playing")]
36 public void start_playing (string uri = 0, Error *error = null);
37 [CCode (cname = "dix_player_query_duration")]
38 public int64 query_duration ();
39 [CCode (cname = "dix_player_query_position")]
40 public int64 query_position ();
41 [CCode (cname = "dix_player_query_progress")]
42 public double query_progress (out int64 position);
43 [CCode (cname = "dix_player_move")]
44 public void move (double location);
45 [CCode (cname = "dix_player_pause")]
47 [CCode (cname = "dix_player_stop")]
50 [CCode (cname = "dix_player_set_volume")]
51 public void set_volume (double volume);
53 public signal void playback_started ();
54 public signal void playback_stopped (bool eos);
57 [CCode (prefix = "Dix", lower_case_cprefix = "dix_", cheader_filename = "dix-recorder.h")]
60 [CCode (free_function = "gst_object_unref")]
61 public class Recorder : Pipeline {
62 [CCode (cname = "dix_recorder_new")]
63 public Recorder (string directory);
65 [CCode (cname = "dix_recorder_start_recording")]
66 public void start_recording (Error *error = null);
67 [CCode (cname = "dix_recorder_stop_recording")]
68 public void stop_recording ();
70 public signal void record_started ();
71 public signal void record_stopped (string uri);
74 [CCode (prefix = "Dix", lower_case_cprefix = "dix_", cheader_filename = "dix-spectrograph.h")]
77 [CCode (free_function = "gtk_widget_destroy")]
78 public class Spectrograph : Widget {
79 [CCode (cname = "dix_spectrograph_new")]
80 public Spectrograph ();
82 [CCode (cname = "dix_spectrograph_set_magnitudes")]
83 public void set_magnitudes (uint bands, float[] magnitudes);
86 [CCode (prefix = "Dix", lower_case_cprefix = "dix_", cheader_filename = "dix-tag-reader.h")]
89 [CCode (free_function = "gst_object_unref")]
90 public class TagReader : Pipeline {
91 [CCode (cname = "dix_tag_reader_new")]
92 public TagReader (string uri);
94 [CCode (cname = "dix_tag_reader_load")]
97 [CCode (cname = "dix_tag_reader_get_title")]
98 public string get_title ();
99 [CCode (cname = "dix_tag_reader_get_codec")]
100 public string get_codec ();
101 [CCode (cname = "dix_tag_reader_get_size")]
102 public uint64 get_size ();
103 [CCode (cname = "dix_tag_reader_get_duration")]
104 public int64 get_duration ();
105 [CCode (cname = "dix_tag_reader_get_channels")]
106 public int get_channels ();
107 [CCode (cname = "dix_tag_reader_get_sample_rate")]
108 public int get_sample_rate ();
109 [CCode (cname = "dix_tag_reader_get_bit_rate")]
110 public int get_bit_rate ();
113 [CCode (prefix = "Dix", lower_case_cprefix = "dix_", cheader_filename = "dix-tag-writer.h")]
116 [CCode (free_function = "gst_object_unref")]
117 public class TagWriter : Pipeline {
118 [CCode (cname = "dix_tag_writer_new")]
119 public TagWriter (string uri);
121 [CCode (cname = "dix_tag_writer_save")]
124 [CCode (cname = "dix_tag_writer_set_title")]
125 public void set_title (string title);
128 [CCode (prefix = "Dix", lower_case_cprefix = "dix_", cheader_filename = "dix-transcoder.h")]
131 [CCode (free_function = "gst_object_unref")]
132 public class Transcoder {
133 [CCode (cname = "dix_transcoder_new")]
134 public Transcoder ();
136 [CCode (cname = "dix_transcoder_pre_load")]
137 public void pre_load (string uri);
138 [CCode (cname = "dix_transcoder_transcode")]
139 public void transcode (string uri);