Files
recycled-ni-libstb-hal/libtriple/record_td.h
max_10 ecb8ec42ee all: clean up cDemux headers
Origin commit data
------------------
Branch: master
Commit: 1dd4f50452
Author: max_10 <max_10@gmx.de>
Date: 2018-03-21 (Wed, 21 Mar 2018)


------------------
No further description and justification available within origin commit message!

------------------
This commit was generated by Migit
2018-03-23 21:26:29 +01:00

44 lines
955 B
C++

#ifndef __RECORD_TD_H
#define __RECORD_TD_H
#include <pthread.h>
#include "dmx_hal.h"
#define REC_STATUS_OK 0
#define REC_STATUS_SLOW 1
#define REC_STATUS_OVERFLOW 2
typedef enum {
RECORD_RUNNING,
RECORD_STOPPED,
RECORD_FAILED_READ, /* failed to read from DMX */
RECORD_FAILED_OVERFLOW, /* cannot write fast enough */
RECORD_FAILED_FILE, /* cannot write to file */
RECORD_FAILED_MEMORY /* out of memory */
} record_state_t;
class cRecord
{
private:
int file_fd;
cDemux *dmx;
pthread_t record_thread;
bool record_thread_running;
record_state_t exit_flag;
int state;
public:
cRecord(int num = 0);
~cRecord();
bool Open();
bool Start(int fd, unsigned short vpid, unsigned short *apids, int numapids, uint64_t ch = 0);
bool Stop(void);
bool AddPid(unsigned short pid);
int GetStatus();
void ResetStatus();
bool ChangePids(unsigned short vpid, unsigned short *apids, int numapids);
void RecordThread();
};
#endif