Skip to content

Commit c986108

Browse files
author
Valentin Noel
committed
Change StreamDefinitions type definition and Transcoder add methods
1 parent 9f9dc1a commit c986108

File tree

3 files changed

+47
-14
lines changed

3 files changed

+47
-14
lines changed

app/genericProcessor/genericProcessor.cpp

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@
99
#include <cstdlib>
1010

1111

12-
void parseConfigFile( const std::string& configFilename, avtranscoder::Transcoder::StreamsDefinition& streams )
12+
void parseConfigFile( const std::string& configFilename, avtranscoder::Transcoder::StreamDefinitions& streams )
1313
{
1414
std::ifstream configFile( configFilename.c_str(), std::ifstream::in );
1515

@@ -24,7 +24,7 @@ void parseConfigFile( const std::string& configFilename, avtranscoder::Transcode
2424
if( std::getline( is_line, streamId ) )
2525
{
2626
std::cout << filename << " ( " << streamId << " )" << std::endl;
27-
streams.push_back( std::pair< std::string, int >( filename, atoi( streamId.c_str() ) ) );
27+
streams.push_back( avtranscoder::Transcoder::InputStreamDesc( atoi( streamId.c_str() ), filename, "" ) );
2828
}
2929
}
3030
}
@@ -49,7 +49,7 @@ int main( int argc, char** argv )
4949
std::string inputConfigFile( argv[1] );
5050
avtranscoder::OutputFile outputFile( argv[2] );
5151

52-
avtranscoder::Transcoder::StreamsDefinition streams;
52+
avtranscoder::Transcoder::StreamDefinitions streams;
5353

5454
parseConfigFile( inputConfigFile, streams );
5555

src/AvTranscoder/Transcoder.hpp

Lines changed: 21 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,8 @@
77
#include <AvTranscoder/ProgressListener.hpp>
88
#include <AvTranscoder/DummyInputStream.hpp>
99

10+
// #include <AvTranscoder/StreamTranscoder.hpp>
11+
1012
#include <string>
1113
#include <vector>
1214

@@ -15,23 +17,37 @@ namespace avtranscoder
1517

1618
class Transcoder
1719
{
20+
1821
public:
19-
typedef std::vector< std::pair< std::string, size_t > > StreamsDefinition;
22+
struct InputStreamDesc {
23+
size_t streamId;
24+
std::string filename;
25+
std::string transcodeProfile;
2026

21-
Transcoder( OutputFile& outputFile );
27+
InputStreamDesc( const size_t& sId, const std::string& filename, const std::string& profile )
28+
: streamId( sId )
29+
, filename( filename )
30+
, transcodeProfile( profile )
31+
{
32+
}
33+
};
2234

23-
~Transcoder();
35+
typedef std::vector< InputStreamDesc > StreamDefinitions;
2436

25-
void add( const std::string& filename, const size_t streamIndex );
37+
Transcoder( OutputFile& outputFile );
38+
~Transcoder();
2639

27-
void add( const StreamsDefinition& streams );
40+
void add( const std::string& filename, const size_t streamIndex, const std::string& profile );
41+
void add( const StreamDefinitions& streamDefs );
2842

2943
void process( ProgressListener& progress );
3044

3145
private:
3246
OutputFile& _outputFile;
3347
std::vector< InputFile* > _inputFiles;
48+
3449
std::vector< InputStream* > _inputStreams;
50+
// std::vector< StreamTranscoder* > _streamTranscoders;
3551

3652
std::vector< DummyInputStream* > _dummyInputStreams;
3753
};

src/AvTranscoder/Transcoder.tcc

Lines changed: 23 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,4 @@
11

2-
#include <AvTranscoder/InputFile.hpp>
3-
42
#include <AvTranscoder/AvInputStream.hpp>
53

64
namespace avtranscoder
@@ -25,8 +23,9 @@ Transcoder::~Transcoder()
2523
}
2624
}
2725

28-
void Transcoder::add( const std::string& filename, const size_t streamIndex )
26+
void Transcoder::add( const std::string& filename, const size_t streamIndex, const std::string& profile )
2927
{
28+
std::cout << "[Transcoder::add] " << filename << " / " << streamIndex << " / " << profile << std::endl;
3029
if( ! filename.length() )
3130
{
3231
_dummyInputStreams.push_back( new DummyInputStream() );
@@ -67,13 +66,21 @@ void Transcoder::add( const std::string& filename, const size_t streamIndex )
6766
{
6867
case AVMEDIA_TYPE_VIDEO:
6968
{
69+
std::cout << "[Transcoder::add] AVMEDIA_TYPE_VIDEO" << std::endl;
7070
_inputStreams.push_back( & referenceFile->getStream( streamIndex ) );
71+
// StreamTranscoder streamTranscoder( referenceFile->getStream( streamIndex ), true );
72+
// streamTranscoder.init( profile );
73+
// _streamTranscoders.push_back( & streamTranscoder );
7174
_outputFile.addVideoStream( _inputStreams.back()->getVideoDesc() );
7275
break;
7376
}
7477
case AVMEDIA_TYPE_AUDIO:
7578
{
79+
std::cout << "[Transcoder::add] AVMEDIA_TYPE_AUDIO" << std::endl;
7680
_inputStreams.push_back( & referenceFile->getStream( streamIndex ) );
81+
// StreamTranscoder streamTranscoder( referenceFile->getStream( streamIndex ), false );
82+
// streamTranscoder.init( profile );
83+
// _streamTranscoders.push_back( & streamTranscoder );
7784
_outputFile.addAudioStream( _inputStreams.back()->getAudioDesc() );
7885
break;
7986
}
@@ -88,12 +95,22 @@ void Transcoder::add( const std::string& filename, const size_t streamIndex )
8895
return;
8996
}
9097

91-
void Transcoder::add( const StreamsDefinition& streams )
98+
void Transcoder::add( const StreamDefinitions& streamDefs )
9299
{
93-
for( size_t streamIndex = 0; streamIndex < streams.size(); ++streamIndex )
100+
for( size_t streamDest = 0; streamDest < streamDefs.size(); ++streamDest )
94101
{
95-
add( streams.at( streamIndex ).first, streams.at( streamIndex ).second );
102+
std::cout << "[Transcoder::add] ";
103+
std::cout << streamDest << " | ";
104+
std::cout << streamDefs.at( streamDest ).streamId << " | ";
105+
std::cout << streamDefs.at( streamDest ).filename << " | ";
106+
std::cout << streamDefs.at( streamDest ).transcodeProfile << std::endl;
107+
108+
add( streamDefs.at( streamDest ).filename,
109+
streamDefs.at( streamDest ).streamId,
110+
streamDefs.at( streamDest ).transcodeProfile );
96111
}
112+
std::cout << "[Transcoder::add] _inputStreams: " << _inputStreams.size() << std::endl;
113+
// std::cout << "[Transcoder::add] _streamTranscoders: " << _streamTranscoders.size() << std::endl;
97114
return;
98115
}
99116

0 commit comments

Comments
 (0)