[STABLE] MP4 boxes finished, started on the interface, big part of the constructor and destructer are finished
This commit is contained in:
parent
c633734d07
commit
86fd8c59e8
7 changed files with 153 additions and 18 deletions
|
@ -1,4 +1,4 @@
|
|||
SRC = box_avcC.cpp box.cpp box_dinf.cpp box_dref.cpp box_esds.cpp box_ftyp.cpp box_hdlr.cpp box_hmhd.cpp box_mdhd.cpp box_mdia.cpp box_minf.cpp box_moov.cpp box_mvhd.cpp box_nmhd.cpp box_smhd.cpp box_stbl.cpp box_stco.cpp box_stsc.cpp box_stsd.cpp box_stts.cpp box_tkhd.cpp box_trak.cpp box_url.cpp box_vmhd.cpp main.cpp
|
||||
SRC = box_avcC.cpp box.cpp box_dinf.cpp box_dref.cpp box_esds.cpp box_ftyp.cpp box_hdlr.cpp box_hmhd.cpp box_mdhd.cpp box_mdia.cpp box_minf.cpp box_moov.cpp box_mvhd.cpp box_nmhd.cpp box_smhd.cpp box_stbl.cpp box_stco.cpp box_stsc.cpp box_stsd.cpp box_stts.cpp box_tkhd.cpp box_trak.cpp box_url.cpp box_vmhd.cpp main.cpp interface.cpp
|
||||
OBJ = $(SRC:.cpp=.o)
|
||||
OUT = Boxtest
|
||||
INCLUDES =
|
||||
|
|
|
@ -12,7 +12,7 @@ Box * Box_dinf::GetBox() {
|
|||
return Container;
|
||||
}
|
||||
|
||||
void Box_dinf::AddContent( Box * newcontent, uint32_t offset ) {
|
||||
void Box_dinf::AddContent( Box * newcontent ) {
|
||||
if(Content) {
|
||||
delete Content;
|
||||
Content = NULL;
|
||||
|
|
|
@ -7,7 +7,7 @@ class Box_dinf {
|
|||
Box_dinf();
|
||||
~Box_dinf();
|
||||
Box * GetBox();
|
||||
void AddContent( Box * newcontent, uint32_t offset = 0 );
|
||||
void AddContent( Box * newcontent );
|
||||
private:
|
||||
Box * Container;
|
||||
|
||||
|
|
23
MP4/box_includes.h
Normal file
23
MP4/box_includes.h
Normal file
|
@ -0,0 +1,23 @@
|
|||
#include "box_avcC.h"
|
||||
#include "box_dinf.h"
|
||||
#include "box_dref.h"
|
||||
#include "box_esds.h"
|
||||
#include "box_ftyp.h"
|
||||
#include "box_hdlr.h"
|
||||
#include "box_hmhd.h"
|
||||
#include "box_mdhd.h"
|
||||
#include "box_mdia.h"
|
||||
#include "box_minf.h"
|
||||
#include "box_moov.h"
|
||||
#include "box_mvhd.h"
|
||||
#include "box_nmhd.h"
|
||||
#include "box_smhd.h"
|
||||
#include "box_stbl.h"
|
||||
#include "box_stco.h"
|
||||
#include "box_stsc.h"
|
||||
#include "box_stsd.h"
|
||||
#include "box_stts.h"
|
||||
#include "box_tkhd.h"
|
||||
#include "box_trak.h"
|
||||
#include "box_url.h"
|
||||
#include "box_vmhd.h"
|
73
MP4/interface.cpp
Normal file
73
MP4/interface.cpp
Normal file
|
@ -0,0 +1,73 @@
|
|||
#include "interface.h"
|
||||
|
||||
Interface::Interface() {
|
||||
ftyp = new Box_ftyp();
|
||||
moov = new Box_moov();
|
||||
mvhd = new Box_mvhd();
|
||||
trak_vide = new Box_trak();
|
||||
tkhd_vide = new Box_tkhd();
|
||||
mdia_vide = new Box_mdia();
|
||||
mdhd_vide = new Box_mdhd();
|
||||
hdlr_vide = new Box_hdlr();
|
||||
minf_vide = new Box_minf();
|
||||
dinf_vide = new Box_dinf();
|
||||
dref_vide = new Box_dref();
|
||||
url_vide = new Box_url();
|
||||
stbl_vide = new Box_stbl();
|
||||
stts_vide = new Box_stts();
|
||||
stsc_vide = new Box_stsc();
|
||||
stco_vide = new Box_stco();
|
||||
stsd_vide = new Box_stsd();
|
||||
avcC_vide = new Box_avcC();
|
||||
trak_soun = new Box_trak();
|
||||
tkhd_soun = new Box_tkhd();
|
||||
mdia_soun = new Box_mdia();
|
||||
mdhd_soun = new Box_mdhd();
|
||||
hdlr_soun = new Box_hdlr();
|
||||
minf_soun = new Box_minf();
|
||||
dinf_soun = new Box_dinf();
|
||||
dref_soun = new Box_dref();
|
||||
url_soun = new Box_url();
|
||||
stbl_soun = new Box_stbl();
|
||||
stts_soun = new Box_stts();
|
||||
stsc_soun = new Box_stsc();
|
||||
stco_soun = new Box_stco();
|
||||
stsd_soun = new Box_stsd();
|
||||
esds_soun = new Box_esds();
|
||||
}
|
||||
|
||||
Interface::~Interface() {
|
||||
if( esds_soun ) { delete esds_soun; esds_soun = NULL; }
|
||||
if( stsd_soun ) { delete stsd_soun; stsd_soun = NULL; }
|
||||
if( stco_soun ) { delete stco_soun; stco_soun = NULL; }
|
||||
if( stsc_soun ) { delete stsc_soun; stsc_soun = NULL; }
|
||||
if( stts_soun ) { delete stts_soun; stts_soun = NULL; }
|
||||
if( stbl_soun ) { delete stbl_soun; stbl_soun = NULL; }
|
||||
if( url_soun ) { delete url_soun; url_soun = NULL; }
|
||||
if( dref_soun ) { delete dref_soun; dref_soun = NULL; }
|
||||
if( dinf_soun ) { delete dinf_soun; dinf_soun = NULL; }
|
||||
if( minf_soun ) { delete minf_soun; minf_soun = NULL; }
|
||||
if( hdlr_soun ) { delete hdlr_soun; hdlr_soun = NULL; }
|
||||
if( mdhd_soun ) { delete mdhd_soun; mdhd_soun = NULL; }
|
||||
if( mdia_soun ) { delete mdia_soun; mdia_soun = NULL; }
|
||||
if( tkhd_soun ) { delete tkhd_soun; tkhd_soun = NULL; }
|
||||
if( trak_soun ) { delete trak_soun; trak_soun = NULL; }
|
||||
if( avcC_vide ) { delete avcC_vide; avcC_vide = NULL; }
|
||||
if( stsd_vide ) { delete stsd_vide; stsd_vide = NULL; }
|
||||
if( stco_vide ) { delete stco_vide; stco_vide = NULL; }
|
||||
if( stsc_vide ) { delete stsc_vide; stsc_vide = NULL; }
|
||||
if( stts_vide ) { delete stts_vide; stts_vide = NULL; }
|
||||
if( stbl_vide ) { delete stbl_vide; stbl_vide = NULL; }
|
||||
if( url_vide ) { delete url_vide; url_vide = NULL; }
|
||||
if( dref_vide ) { delete dref_vide; dref_vide = NULL; }
|
||||
if( dinf_vide ) { delete dinf_vide; dinf_vide = NULL; }
|
||||
if( minf_vide ) { delete minf_vide; minf_vide = NULL; }
|
||||
if( hdlr_vide ) { delete hdlr_vide; hdlr_vide = NULL; }
|
||||
if( mdhd_vide ) { delete mdhd_vide; mdhd_vide = NULL; }
|
||||
if( mdia_vide ) { delete mdia_vide; mdia_vide = NULL; }
|
||||
if( tkhd_vide ) { delete tkhd_vide; tkhd_vide = NULL; }
|
||||
if( trak_vide ) { delete trak_vide; trak_vide = NULL; }
|
||||
if( mvhd ) { delete mvhd; mvhd = NULL; }
|
||||
if( moov ) { delete moov; moov = NULL; }
|
||||
if( ftyp ) { delete ftyp; ftyp = NULL; }
|
||||
}
|
47
MP4/interface.h
Normal file
47
MP4/interface.h
Normal file
|
@ -0,0 +1,47 @@
|
|||
#include "box_includes.h"
|
||||
|
||||
class Interface {
|
||||
public:
|
||||
Interface();
|
||||
~Interface();
|
||||
void link();
|
||||
private:
|
||||
Box_ftyp * ftyp;
|
||||
Box_moov * moov;
|
||||
Box_mvhd * mvhd;
|
||||
|
||||
Box_trak * trak_vide;
|
||||
Box_tkhd * tkhd_vide;
|
||||
Box_mdia * mdia_vide;
|
||||
Box_mdhd * mdhd_vide;
|
||||
Box_hdlr * hdlr_vide;
|
||||
Box_minf * minf_vide;
|
||||
Box_vmhd * vmhd_vide;
|
||||
Box_dinf * dinf_vide;
|
||||
Box_dref * dref_vide;
|
||||
Box_url * url_vide;
|
||||
Box_stbl * stbl_vide;
|
||||
Box_stts * stts_vide;
|
||||
Box_stsc * stsc_vide;
|
||||
Box_stco * stco_vide;
|
||||
Box_stsd * stsd_vide;
|
||||
Box_avcC * avcC_vide;
|
||||
|
||||
Box_trak * trak_soun;
|
||||
Box_tkhd * tkhd_soun;
|
||||
Box_mdia * mdia_soun;
|
||||
Box_mdhd * mdhd_soun;
|
||||
Box_hdlr * hdlr_soun;
|
||||
Box_minf * minf_soun;
|
||||
Box_smhd * smhd_soun;
|
||||
Box_dinf * dinf_soun;
|
||||
Box_dref * dref_soun;
|
||||
Box_url * url_soun;
|
||||
Box_stbl * stbl_soun;
|
||||
Box_stts * stts_soun;
|
||||
Box_stsc * stsc_soun;
|
||||
Box_stco * stco_soun;
|
||||
Box_stsd * stsd_soun;
|
||||
Box_esds * esds_soun;
|
||||
};//Interface class
|
||||
|
20
MP4/main.cpp
20
MP4/main.cpp
|
@ -1,19 +1,11 @@
|
|||
#include <iostream>
|
||||
#include "box_avcC.h"
|
||||
#include "box_stsd.h"
|
||||
#include <string>
|
||||
#include "interface.h"
|
||||
|
||||
int main( ) {
|
||||
Box_avcC * Testing = new Box_avcC();
|
||||
Testing->SetCompressorName( "Test123" );
|
||||
std::cout << "H264::Size: " << Testing->GetBox()->GetHeader().TotalSize << "\n";
|
||||
Box_stsd * Testsample = new Box_stsd();
|
||||
std::cout << "STSD::Before Content: " << Testsample->GetBox()->GetHeader().TotalSize << "\n";
|
||||
Testsample->AddContent( Testing->GetBox() );
|
||||
std::cout << "STSD::After 1 Content: " << Testsample->GetBox()->GetHeader().TotalSize << "\n";
|
||||
Testsample->AddContent( Testing->GetBox(), 1 );
|
||||
std::cout << "STSD::After 2 Content: " << Testsample->GetBox()->GetHeader().TotalSize << "\n";
|
||||
delete Testsample;
|
||||
delete Testing;
|
||||
std::cout << "Creating Interface\n";
|
||||
Interface * file = new Interface();
|
||||
std::cout << "Interface created, deleting it again\n";
|
||||
delete file;
|
||||
std::cout << "Interface deleted\n";
|
||||
return 0;
|
||||
}
|
||||
|
|
Loading…
Add table
Reference in a new issue