liuxianwei / mp4parser

Automatically exported from code.google.com/p/mp4parser
0 stars 0 forks source link

Parsing of large files (> 2Gb) fail due to long to int conversions #2

Closed GoogleCodeExporter closed 9 years ago

GoogleCodeExporter commented 9 years ago
First: tank you for this contribution.

May I suggest avoiding long to int conversions, it blocks access to files 
larger than 2Gb.

i.e. in
- com.coremedia.iso.BoxFactory.parseBox()
- com.coremedia.iso.IsoInputStream.skip()

Best regards

Original issue reported on code.google.com by masson.s...@gmail.com on 19 Aug 2010 at 10:52

GoogleCodeExporter commented 9 years ago
I'll try to fix it in the next days. Thank you for your for reporting this bug. 
I really never tried file of this size.

Original comment by Sebastian.Annies on 19 Aug 2010 at 5:25

GoogleCodeExporter commented 9 years ago
I think the problem is gone. Can anyone point me to a really big MP4 file?

Original comment by Sebastian.Annies on 3 Jan 2011 at 7:27

GoogleCodeExporter commented 9 years ago
Thanks, 
Here is a 2.6Gb file:
http://vodluxpp.europarl.europa.eu/download/nas/nasvod01/vod0312/2009/isma_TO_KE
EP_vodindex_test/VODUnit_20091216_08115500_12125000_2d7b474212a61a45e79-7ff5.mp4

Original comment by masson.s...@gmail.com on 3 Jan 2011 at 7:54

GoogleCodeExporter commented 9 years ago
Ok, 1h to go! 2,6GB is really a lot for my connection.

Original comment by Sebastian.Annies on 3 Jan 2011 at 10:32

GoogleCodeExporter commented 9 years ago
The boxes in that 2,6GB file can now be parsed without any problems on 64Bit 
systems. It seems need memory mapped files need equal room in the address-space 
as in filesystem so there might be problems getting that much continuous memory 
from a 32 Bit OS. 
There are still difficulties parsing chunks and samples since they are just too 
many to have an object representation each. 

Original comment by Sebastian.Annies on 3 Jan 2011 at 7:16

GoogleCodeExporter commented 9 years ago
Thanks a lot, 

For information, in my case, I was only interested in getting and parsing Movie 
Header Box (mvhd) to extract meta data such as duration.

The fact that the full parsing a such large file can be very long and difficult 
does not hurt me.

Original comment by masson.s...@gmail.com on 4 Jan 2011 at 8:18