summaryrefslogtreecommitdiffstats
path: root/ext/mplex/systems.hh
diff options
context:
space:
mode:
Diffstat (limited to 'ext/mplex/systems.hh')
-rw-r--r--ext/mplex/systems.hh131
1 files changed, 0 insertions, 131 deletions
diff --git a/ext/mplex/systems.hh b/ext/mplex/systems.hh
deleted file mode 100644
index bbad92f5..00000000
--- a/ext/mplex/systems.hh
+++ /dev/null
@@ -1,131 +0,0 @@
-#ifndef __SYSTEMS_HH__
-#define __SYSTEMS_HH__
-
-#include "inputstrm.hh"
-
-#include <vector>
-
-using std::vector;
-
-/* Buffer size parameters */
-
-#define MAX_SECTOR_SIZE 16384
-#define MAX_PACK_HEADER_SIZE 255
-#define MAX_SYS_HEADER_SIZE 255
-
-
-typedef class PS_Stream _PS_Stream;
-
-typedef size_t (*WriteCallback) (_PS_Stream *str, uint8_t *data, size_t size, void *user_data);
-
-
-typedef struct sector_struc /* Ein Sektor, kann Pack, Sys Header */
-/* und Packet enthalten. */
-{
- unsigned char buf[MAX_SECTOR_SIZE];
- unsigned int length_of_packet_data;
- //clockticks TS ;
-}
-Sector_struc;
-
-typedef struct pack_struc /* Pack Info */
-{
- unsigned char buf[MAX_PACK_HEADER_SIZE];
- int length;
- clockticks SCR;
-}
-Pack_struc;
-
-typedef struct sys_header_struc /* System Header Info */
-{
- unsigned char buf[MAX_SYS_HEADER_SIZE];
- int length;
-}
-Sys_header_struc;
-
-
-class PS_Stream {
-public:
- PS_Stream (WriteCallback _callback, void *_user_data):
- callback (_callback),
- user_data (_user_data)
- {
- }
-
- void Init (unsigned _mpeg, unsigned int _sector_sizen, off_t max_segment_size); // 0 = No Limit
-
- bool FileLimReached ();
- void NextFile ();
- unsigned int PacketPayload (MuxStream & strm,
- Sys_header_struc * sys_header,
- Pack_struc * pack_header, int buffers, int PTSstamp, int DTSstamp);
-
- unsigned int CreateSector (Pack_struc * pack,
- Sys_header_struc * sys_header,
- unsigned int max_packet_data_size,
- MuxStream & strm,
- bool buffers, bool end_marker, clockticks PTS, clockticks DTS, uint8_t timestamps);
- void RawWrite (uint8_t * data, unsigned int len);
- static void BufferSectorHeader (uint8_t * buf,
- Pack_struc * pack, Sys_header_struc * sys_header, uint8_t * &header_end);
- static void BufferPacketHeader (uint8_t * buf,
- uint8_t type,
- unsigned int mpeg_version,
- bool buffers,
- unsigned int buffer_size,
- uint8_t buffer_scale,
- clockticks PTS,
- clockticks DTS,
- uint8_t timestamps, uint8_t * &size_field, uint8_t * &header_end);
-
- static inline void BufferPacketSize (uint8_t * size_field, uint8_t * packet_end)
- {
- unsigned int
- packet_size =
- packet_end -
- size_field -
- 2;
-
- size_field[0] = static_cast < uint8_t > (packet_size >> 8);
- size_field[1] = static_cast < uint8_t > (packet_size & 0xff);
-
- }
-
- void CreatePack (Pack_struc * pack, clockticks SCR, unsigned int mux_rate);
- void CreateSysHeader (Sys_header_struc * sys_header,
- unsigned int rate_bound,
- bool fixed,
- int CSPS, bool audio_lock, bool video_lock, vector < MuxStream * >&streams);
-
- void Close ()
- {
- }
-
-private:
-
- /* TODO: Replace **'s with *&'s */
- static void BufferDtsPtsMpeg1ScrTimecode (clockticks timecode, uint8_t marker, uint8_t ** buffer);
- static void BufferMpeg2ScrTimecode (clockticks timecode, uint8_t ** buffer);
- void BufferPaddingPacket (int padding, uint8_t * &buffer);
-
-private:
- unsigned int mpeg_version;
- unsigned int sector_size;
- int segment_num;
-
- off_t max_segment_size;
- uint8_t * sector_buf;
- WriteCallback callback;
- void *user_data;
- off_t written;
-};
-#endif // __SYSTEMS_HH__
-
-
-/*
- * Local variables:
- * c-file-style: "stroustrup"
- * tab-width: 4
- * indent-tabs-mode: nil
- * End:
- */