[FFmpeg-user] LXF decoder ! Need help !

Jerome Martinez jerome at mediaarea.net
Mon May 9 23:18:17 CEST 2011


Tuuls wrote:
> 
> MediaInfo well read this lxf , and well send metadata :

I apologize if I am out of topic (not focused on ffmpeg).

Actually, video part is missing (I adapted my code so DV PAL is now
displayed) + Windows version of MediaInfo has "trace" feature disabled for
binary size optimization (Dave is using the Linux/Mac version, with trace
feature activated, his command has not the same result than your test).

Trace of your file with the command from Dave + MediaInfo compiled with
trace feature is available at this URL:
http://pastebin.com/Z6wKx8ik
Example:
00000000 Header (355 bytes)
00000000  Header (72 bytes)
00000000   Signature:                               LEITCH
00000008   Version:                                 1 (0x00000001)
0000000C   Header size:                             72 (0x00000048)
00000010   Type:                                    2 (0x2)
00000014   Stream ID:                               0 (0x00000000)
00000018   ? (Always 0x00000000):                   0 (0x0)
00000020   ?:                                       21513600 (0x1484580)
00000028   ? (Always 0x00000001):                   1 (0x00000001)
0000002C   Block size:                              120 (0x78)
00000030   Block size:                              163 (0xA3)
00000034   ? (Always 0x00000000):                   0 (0x00000000)
00000038   ? (Always 0x00000000):                   0 (0x00000000)
0000003C   ? (Always 0x00000000):                   0 (0x00000000)
00000040   Reverse TimeStamp?:                      2859346826 (0xAA6E2B8A)
- 3971315.036 ms
00000048  Info? (120 bytes)
00000048   Unknown:                                 (120 bytes)
000000C0  Tags? (163 bytes)
000000C0   Size:                                    8 (0x08)
000000C1   ? (8 opaque bytes):                      (8 bytes)
000000C9   Size:                                    18 (0x12)
000000CA   Library?:                                NX3000VESX-16C/VR1
000000DC   Size:                                    0 (0x00)
000000DD   Size:                                    0 (0x00)
000000DE   Size:                                    16 (0x10)
000000DF   0x00000008:                              0 (0x00000000)
000000E3   0x00000000:                              4 (0x00000004)
000000E7   0x00000000:                              0 (0x00000000)
000000EB   0x00000092:                              146 (0x00000092)
000000EF   Size:                                    0 (0x00)
000000F0   Size:                                    0 (0x00)
000000F1   Size:                                    6 (0x06)
000000F2   Channel?:                                aeg
000000F8   Size:                                    0 (0x00)
000000F9   Size:                                    0 (0x00)
000000FA   Size:                                    0 (0x00)
000000FB   Size:                                    0 (0x00)
000000FC   Size:                                    56 (0x38)
000000FD   Title:                                   ???????????? ???????.
??????
00000135   Size:                                    14 (0x0E)
00000136   ? (in UTF-16):                           Arh New
00000144   Size:                                    8 (0x08)
00000145   Data:                                    (8 bytes)
0000014D   Size:                                    8 (0x08)
0000014E   Data:                                    (8 bytes)
00000156   Size:                                    0 (0x00)
00000157   Size:                                    0 (0x00)
00000158   Size:                                    0 (0x00)
00000159   Size:                                    0 (0x00)
0000015A   Size:                                    8 (0x08)
0000015B   ? (8 opaque bytes):                      (8 bytes)
00000163 Video (72 bytes)
00000163  Header (72 bytes)
00000163   Signature:                               LEITCH
0000016B   Version:                                 1 (0x00000001)
0000016F   Header size:                             72 (0x00000048)
00000173   Type:                                    0 (0x0)
00000177   Stream ID:                               0 (0x00000000)
0000017B   TimeStamp:                               0 (0x0) - 0.000 ms
00000183   Duration:                                28800 (0x7080) - 40.000
ms
0000018B   Format:                                  5 (0x05) - DV
0000018B   GOP (N):                                 1 (0x01)
0000018C   GOP (M):                                 1 (0x01)
0000018C   Bit rate:                                25 (0x19) - 25000000 bps
0000018D   Picture type:                            0 (0x00) - I
0000018E   Reserved:                                0 (0x00)
0000018F   Video data size:                         144000 (0x23280)
00000197   VBI data size:                           0 (0x0)
0000019F   ? (Always 0x00000000):                   0 (0x00000000)
000001A3   Reverse TimeStamp:                       2880276243 (0xABAD8713)
- 4000383.671 ms
000001AB  Stream (144000 bytes)
...

With all of this, you can adapt ffmpeg to handle your file (this should not
be complex, video stream is a basic DV PAL)
You can also check MediaInfo source code for LXF:
http://mediainfo.svn.sourceforge.net/viewvc/mediainfo/MediaInfoLib/trunk/Source/MediaInfo/Multiple/File_Lxf.cpp?view=markup

Note: LXF parsing in MediaInfo is 100% made by reverse engineering, so a lot
of bytes are still opaque and I may have done some mistakes, this is only
some help for you with unpacking LXF container.
Good luck for implementing a better ffmpeg LXF parser!

Note 2: your error is at offset [lxf @ 000000000035A920], this is inside the
DV data (I intentionaly removed the DV trace in my dump, but I also have
it), so maybe your problem is inside DV parsing, not at the LXF level.

Jerome, developer of MediaInfo

--
View this message in context: http://ffmpeg-users.933282.n4.nabble.com/LXF-decoder-Need-help-tp3507549p3510358.html
Sent from the FFmpeg-users mailing list archive at Nabble.com.


More information about the ffmpeg-user mailing list