summaryrefslogtreecommitdiff
path: root/postproc.h
diff options
context:
space:
mode:
Diffstat (limited to 'postproc.h')
-rw-r--r--postproc.h48
1 files changed, 48 insertions, 0 deletions
diff --git a/postproc.h b/postproc.h
new file mode 100644
index 0000000..44d9242
--- /dev/null
+++ b/postproc.h
@@ -0,0 +1,48 @@
+/*
+ * postproc.h
+ */
+
+#ifndef __POSTPROC_H
+#define __POSTPROC_H
+
+#include "postdata.h"
+#include "convert.h"
+#include "mpa-frame.h"
+#include "a-tools.h"
+
+#include <vdr/thread.h>
+
+#include <list>
+
+
+class cPostproc : public cThread {
+private:
+ bool active;
+
+ static std::list<cPostData> postlist;
+ static cMutex mutex;
+ std::list<cPostData>::iterator postdata;
+
+ abuffer file_buf;
+ mpeg_audio_frame mpa_frame;
+ cConvert *convert;
+
+ bool reencode(void);
+ void fade_in(void);
+ void fade_out(void);
+ float get_volume(int _frame, int _frames);
+ void set_tag(void);
+ void rename_file(void);
+ int test_and_create(const char *dirname);
+protected:
+ virtual void Action(void);
+ virtual void Activate(bool on);
+public:
+ cPostproc(void);
+ ~cPostproc();
+
+ static void add_track(const cPostData *track);
+ static int get_num_queued(void);
+};
+
+#endif /* __POSTPROC_H */