1/*
2 *
3 *  BlueZ - Bluetooth protocol stack for Linux
4 *
5 *  Copyright (C) 2004-2010  Marcel Holtmann <marcel@holtmann.org>
6 *
7 *
8 *  This library is free software; you can redistribute it and/or
9 *  modify it under the terms of the GNU Lesser General Public
10 *  License as published by the Free Software Foundation; either
11 *  version 2.1 of the License, or (at your option) any later version.
12 *
13 *  This library is distributed in the hope that it will be useful,
14 *  but WITHOUT ANY WARRANTY; without even the implied warranty of
15 *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
16 *  Lesser General Public License for more details.
17 *
18 *  You should have received a copy of the GNU Lesser General Public
19 *  License along with this library; if not, write to the Free Software
20 *  Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
21 *
22 */
23
24#include <gst/gst.h>
25#include <gst/rtp/gstbasertppayload.h>
26#include <gst/base/gstadapter.h>
27#include <gst/rtp/gstrtpbuffer.h>
28
29G_BEGIN_DECLS
30
31#define GST_TYPE_RTP_SBC_PAY \
32	(gst_rtp_sbc_pay_get_type())
33#define GST_RTP_SBC_PAY(obj) \
34	(G_TYPE_CHECK_INSTANCE_CAST((obj),GST_TYPE_RTP_SBC_PAY,\
35		GstRtpSBCPay))
36#define GST_RTP_SBC_PAY_CLASS(klass) \
37	(G_TYPE_CHECK_CLASS_CAST((klass),GST_TYPE_RTP_SBC_PAY,\
38		GstRtpSBCPayClass))
39#define GST_IS_RTP_SBC_PAY(obj) \
40	(G_TYPE_CHECK_INSTANCE_TYPE((obj),GST_TYPE_RTP_SBC_PAY))
41#define GST_IS_RTP_SBC_PAY_CLASS(obj) \
42	(G_TYPE_CHECK_CLASS_TYPE((klass),GST_TYPE_RTP_SBC_PAY))
43
44typedef struct _GstRtpSBCPay GstRtpSBCPay;
45typedef struct _GstRtpSBCPayClass GstRtpSBCPayClass;
46
47struct _GstRtpSBCPay {
48	GstBaseRTPPayload base;
49
50	GstAdapter *adapter;
51	GstClockTime timestamp;
52
53	guint frame_length;
54
55	guint min_frames;
56};
57
58struct _GstRtpSBCPayClass {
59	GstBaseRTPPayloadClass parent_class;
60};
61
62GType gst_rtp_sbc_pay_get_type(void);
63
64gboolean gst_rtp_sbc_pay_plugin_init (GstPlugin * plugin);
65
66G_END_DECLS
67