2
// C++ Interface: op_ogsave
7
// Author: mean <fixounet@free.fr>, (C) 2004
9
// Copyright: See COPYING file that comes with this distribution
15
#include "ADM_dialog/DIA_encoding.h"
16
#include "oplug_ogm/op_ogpage.h"
17
#include "ADM_encoder/adm_encoder.h"
18
// Some little / big endian stuff
19
extern void memcpyswap(uint8_t *dest, uint8_t *src, uint32_t size);
21
#define MEMCPY(a,b,c) memcpyswap((uint8_t *)a, (uint8_t *)b,c)
31
uint32_t _audioTarget,_audioCurrent;
38
uint8_t *_audioBuffer;
39
uint8_t *_videoBuffer;
40
DIA_encoding *encoding_gui;
41
ogm_page *videoStream;
42
ogm_page *audioStream;
44
uint8_t initAudio(void);
45
uint8_t writeAudio(uint32_t j);
46
uint8_t endAudio( void);
47
uint32_t putAC3( uint32_t j );
48
uint32_t putMP3( uint32_t j );
50
AVDMGenericAudioStream *audioFilter;
52
virtual uint8_t initVideo(const char *name);
53
virtual uint8_t writeVideo(uint32_t frame);
58
uint8_t save(const char *name);
61
class ADM_ogmWriteCopy : public ADM_ogmWrite
65
virtual uint8_t initVideo(const char *name);
66
virtual uint8_t writeVideo(uint32_t frame);
67
uint32_t searchForward(uint32_t startframe);
68
uint32_t _lastIPFrameSent;
70
ADM_ogmWriteCopy(void);
71
~ADM_ogmWriteCopy(void);
74
class ADM_ogmWriteProcess : public ADM_ogmWrite
77
AVDMGenericVideoStream *_incoming;
79
virtual uint8_t initVideo(const char *name);
80
virtual uint8_t writeVideo(uint32_t frame);
82
ADM_ogmWriteProcess(void);
83
~ADM_ogmWriteProcess(void);