]> git.sesse.net Git - x264/blob - gtk/x264_gtk_encode_private.h
Update file headers throughout x264
[x264] / gtk / x264_gtk_encode_private.h
1 /*****************************************************************************
2  * x264_gtk_encode_private.h: h264 gtk encoder frontend
3  *****************************************************************************
4  * Copyright (C) 2006 Vincent Torri
5  *
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.
10  *
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.
15  *
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
18  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02111, USA.
19  *****************************************************************************/
20
21 #ifndef X264_GTK_ENCODE_PRIVATE_H
22 #define X264_GTK_ENCODE_PRIVATE_H
23
24
25 #include <common/osdep.h>
26
27 #include "x264_gtk_demuxers.h"
28
29 typedef struct X264_Thread_Data_ X264_Thread_Data;
30 typedef struct X264_Pipe_Data_ X264_Pipe_Data;
31
32 struct X264_Thread_Data_
33 {
34   GtkWidget         *current_video_frame;
35   GtkWidget         *video_data;
36   GtkWidget         *video_rendering_rate;
37   GtkWidget         *time_elapsed;
38   GtkWidget         *time_remaining;
39   GtkWidget         *progress;
40
41   GtkWidget         *dialog;
42   GtkWidget         *button;
43   GtkWidget         *end_button;
44
45   x264_param_t      *param;
46   gchar             *file_input;
47   X264_Demuxer_Type  in_container;
48
49   gchar             *file_output;
50   gint               out_container;
51
52   /* file descriptors */
53   GIOChannel        *io_read;  /* use it with read */
54   GIOChannel        *io_write; /* use it with write */
55 };
56
57 struct X264_Pipe_Data_ 
58 {
59   int     frame;
60   int     frame_total;
61   int     file;
62   int64_t elapsed;
63 };
64
65
66 #endif /* X264_GTK_ENCODE_PRIVATE_H */