Elecard
May 25, 2013, 05:16:08 am *
Welcome, Guest. Please login or register.
Did you miss your activation email?

Login with username, password and session length
 
   Home   Help Search Login Register  
Pages: [1]
  Print  
Author Topic: Indexing of MPEG files  (Read 4791 times)
Duke Nukem
Newbie
*
Posts: 8


View Profile WWW
« on: October 15, 2007, 10:55:18 pm »

Has anyone been able to use the indexing methods for MPEG files ?

In my own code, the process of indexing the MPEG proceeds as expected, but as soon as I try and tell the demuxer to use the resulting index file it refuses.

In my own code, I've managed to trace the probably root cause to the problem ... when CIndex is created, it tries to get the video filename from the index file but appears to be looking in the wrong place. The index file starts :-

01 01 01 00 45 00 3A 00 5C 00 52 00 65 00 66 00 65 00 72 00 65 00 6E 00 63 00 65 00 44 00 56 00

which is   '....E.:.\.R.e.f.e.r.e.n.c.e.D' etc.

The code appeares to assume the string starts at location 0 whereas it starts at location 4 !!! Surely this bug would mean indexing would _never_ work Huh

I assume the initial 01 01 01 00 is the stream type code ? In which case it is looking in the wrong place for that too.

The demo in the SDK (AdvPlayer) also fails. After indexing is complete it fails to build the graph, with a message saying the video file (that it previously opened prior to indexing) does not exist ! This seems to be consistent with the problem I have in my own code.

So, anybody know how to fix this bug ? Is a patch available ?

TTFN,
   Jon
Logged
Polyakov
Newbie
*
Posts: 77


View Profile WWW
« Reply #1 on: June 28, 2008, 12:07:59 am »

Hi Duke,

Is indexing issue still actual for you?

Elecard has released new version of Codec SDK based on the new generation of codecs (named G4). Now indexing features are buildin demultiplexer. Unfortunatly first version of Codec SDK hasn't sample which illustrate indexing. Parameters which force demultiplexer to create indexes are described in empgdmx.h:
 EMPGDMX_INDEX_MODE should be set in value 2.     

File empgdmx.h and headers for other filters are included in the full SDK.
Evaluation SDK is available for downloading from http://www.elecard.com/products/products-pc/sdk/codec-sdk/

> and tell the demuxer to use the resulting index file it refuses.
What about using previous indexing technology. You should tell filename not to demultiplexer, but to index_reader object. Index reader exports IMediaIndex and you need get pointer and set it using IIndexConfig to demultiplexer. You can find code how to do this in the  CPlayer::SetDemuxerIndexFile function, file: \Elecard Application SDK\Samples\PLAYER\AdvPlayer\Player.cpp.

regards,
Alexey
 
Logged

Regards,
Alexey Polyakov
http://www.elecard.com
Pages: [1]
  Print  
 
Jump to:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.16 | SMF © 2011, Simple Machines Valid XHTML 1.0! Valid CSS!