Opened 11 years ago

Closed 11 years ago

Last modified 9 years ago

#2583 closed defect (fixed)

libmodplug: probe function needed

Reported by: Carl Eugen Hoyos Owned by:
Priority: important Component: avformat
Version: git-master Keywords: mpegps libmodplug regression
Cc: Blocked By:
Blocking: Reproduced by developer: no
Analyzed by developer: no

Description

http://thread.gmane.org/gmane.comp.video.ffmpeg.user/45774
I will attach a program stream that gets misdetected if --enable-libmodplug is used.

$ ffmpeg -loglevel debug -i test.mod
ffmpeg version N-53176-g5bc892c Copyright (c) 2000-2013 the FFmpeg developers
  built on May 17 2013 16:27:00 with gcc 4.7 (SUSE Linux)
  configuration: --enable-gpl --disable-indev=jack --enable-libmodplug
  libavutil      52. 32.100 / 52. 32.100
  libavcodec     55. 10.100 / 55. 10.100
  libavformat    55.  7.100 / 55.  7.100
  libavdevice    55.  0.100 / 55.  0.100
  libavfilter     3. 68.101 /  3. 68.101
  libswscale      2.  3.100 /  2.  3.100
  libswresample   0. 17.102 /  0. 17.102
  libpostproc    52.  3.100 / 52.  3.100
Splitting the commandline.
Reading option '-loglevel' ... matched as option 'loglevel' (set logging level) with argument 'debug'.
Reading option '-i' ... matched as input file with argument 'test.mod'.
Finished splitting the commandline.
Parsing a group of options: global .
Applying option loglevel (set logging level) with argument debug.
Successfully parsed a group of options.
Parsing a group of options: input file test.mod.
Successfully parsed a group of options.
Opening an input file: test.mod.
[libmodplug @ 0x2aa1020] Format libmodplug probed with size=2048 and score=50
[libmodplug @ 0x2aa1020] File position before avformat_find_stream_info() is 2560000
[libmodplug @ 0x2aa1020] max_analyze_duration 5000000 reached at 5000000 microseconds
[libmodplug @ 0x2aa1020] File position after avformat_find_stream_info() is 2560000
Guessed Channel Layout for  Input Stream #0.0 : stereo
Input #0, libmodplug, from 'test.mod':
  Metadata:
    name            :    �D
    sample          :    �D
                    : ��� ������ ��:
                    : 0panasonic0120201U01
                    :          S   dvdvrx010
                    : c0120201U01    SN Mdvd
                    : nasonic0120201U01    M
                    :   Y�           '
                    :   dvdvrx010panasonic01
                    :     SI
    extra info      : 1 pattern, 4 channels, 9/15 samples
  Duration: 00:00:08.00, bitrate: 2560 kb/s
    Stream #0:0, 2502, 1/1000: Audio: pcm_s16le, 44100 Hz, stereo, s16, 1411 kb/s
Successfully opened the file.
At least one output file must be specified
[AVIOContext @ 0x2aa9720] Statistics: 2560000 bytes read, 0 seeks
$ ffmpeg -loglevel debug -i test.mod
ffmpeg version N-53176-g5bc892c Copyright (c) 2000-2013 the FFmpeg developers
  built on May 17 2013 16:35:43 with gcc 4.7 (SUSE Linux)
  configuration: --enable-gpl --disable-indev=jack
  libavutil      52. 32.100 / 52. 32.100
  libavcodec     55. 10.100 / 55. 10.100
  libavformat    55.  7.100 / 55.  7.100
  libavdevice    55.  0.100 / 55.  0.100
  libavfilter     3. 68.101 /  3. 68.101
  libswscale      2.  3.100 /  2.  3.100
  libswresample   0. 17.102 /  0. 17.102
  libpostproc    52.  3.100 / 52.  3.100
Splitting the commandline.
Reading option '-loglevel' ... matched as option 'loglevel' (set logging level) with argument 'debug'.
Reading option '-i' ... matched as input file with argument 'test.mod'.
Finished splitting the commandline.
Parsing a group of options: global .
Applying option loglevel (set logging level) with argument debug.
Successfully parsed a group of options.
Parsing a group of options: input file test.mod.
Successfully parsed a group of options.
Opening an input file: test.mod.
[mpeg @ 0x21d1020] Format mpeg probed with size=8192 and score=52
[mpeg @ 0x21d1020] File position before avformat_find_stream_info() is 0
[mpeg @ 0x21d1020] probing stream 0 pp:2500
[mpeg @ 0x21d1020] Probe with size=2012, packets=1 detected mpegvideo with score=25
[mpeg @ 0x21d1020] probing stream 0 pp:2499
[mpeg @ 0x21d1020] Probe with size=4037, packets=2 detected mpegvideo with score=25
[mpeg @ 0x21d1020] probing stream 0 pp:2498
[mpeg @ 0x21d1020] Probe with size=6062, packets=3 detected mpegvideo with score=25
[mpeg @ 0x21d1020] probing stream 0 pp:2497
[mpeg @ 0x21d1020] probing stream 0 pp:2496
[mpeg @ 0x21d1020] Probe with size=10112, packets=5 detected mpegvideo with score=25
[mpeg @ 0x21d1020] probing stream 0 pp:2495
[mpeg @ 0x21d1020] probing stream 0 pp:2494
[mpeg @ 0x21d1020] probing stream 0 pp:2493
[mpeg @ 0x21d1020] probing stream 0 pp:2492
[mpeg @ 0x21d1020] Probe with size=18212, packets=9 detected mpegvideo with score=25
[mpeg @ 0x21d1020] probing stream 0 pp:2491
[mpeg @ 0x21d1020] probing stream 0 pp:2490
[mpeg @ 0x21d1020] probing stream 0 pp:2489
[mpeg @ 0x21d1020] probing stream 0 pp:2488
[mpeg @ 0x21d1020] probing stream 0 pp:2487
[mpeg @ 0x21d1020] probing stream 0 pp:2486
[mpeg @ 0x21d1020] probing stream 0 pp:2485
[mpeg @ 0x21d1020] probing stream 0 pp:2484
[mpeg @ 0x21d1020] Probe with size=34407, packets=17 detected mpegvideo with score=51
[mpeg @ 0x21d1020] probed stream 0
[mpeg @ 0x21d1020] first_dts 23003 not matching first dts 31643 in the queue
[mpeg @ 0x21d1020] first_dts 23003 not matching first dts 37403 in the queue
[mpeg @ 0x21d1020] first_dts 23003 not matching first dts 43163 in the queue
[mpeg @ 0x21d1020] first_dts 23003 not matching first dts 48923 in the queue
[mpeg @ 0x21d1020] first_dts 23003 not matching first dts 54683 in the queue
[mpeg @ 0x21d1020] first_dts 23003 not matching first dts 60443 in the queue
[mpeg @ 0x21d1020] first_dts 23003 not matching first dts 66203 in the queue
[mpeg @ 0x21d1020] first_dts 23003 not matching first dts 77723 in the queue
[mpeg @ 0x21d1020] first_dts 23003 not matching first dts 83483 in the queue
[mpeg @ 0x21d1020] first_dts 23003 not matching first dts 89243 in the queue
[mpeg @ 0x21d1020] first_dts 23003 not matching first dts 95003 in the queue
[mpeg @ 0x21d1020] first_dts 23003 not matching first dts 100763 in the queue
[mpeg @ 0x21d1020] first_dts 23003 not matching first dts 106523 in the queue
[mpeg @ 0x21d1020] first_dts 23003 not matching first dts 112283 in the queue
[mpeg @ 0x21d1020] first_dts 23003 not matching first dts 118043 in the queue
[mpeg @ 0x21d1020] first_dts 23003 not matching first dts 129563 in the queue
[mpeg @ 0x21d1020] first_dts 23003 not matching first dts 135323 in the queue
[mpeg @ 0x21d1020] first_dts 23003 not matching first dts 141083 in the queue
[mpeg @ 0x21d1020] first_dts 23003 not matching first dts 146843 in the queue
[mpeg @ 0x21d1020] first_dts 23003 not matching first dts 152603 in the queue
[mpeg @ 0x21d1020] first_dts 23003 not matching first dts 158363 in the queue
[mpeg @ 0x21d1020] first_dts 23003 not matching first dts 164123 in the queue
[mpeg @ 0x21d1020] first_dts 23003 not matching first dts 175643 in the queue
[mpeg @ 0x21d1020] first_dts 23003 not matching first dts 181403 in the queue
[mpeg @ 0x21d1020] first_dts 23003 not matching first dts 187163 in the queue
[mpeg @ 0x21d1020] first_dts 23003 not matching first dts 192923 in the queue
[mpeg @ 0x21d1020] first_dts 23003 not matching first dts 198683 in the queue
[mpeg @ 0x21d1020] first_dts 23003 not matching first dts 204443 in the queue
[mpeg @ 0x21d1020] first_dts 23003 not matching first dts 215963 in the queue
[mpeg @ 0x21d1020] first_dts 23003 not matching first dts 221723 in the queue
[mpeg @ 0x21d1020] first_dts 23003 not matching first dts 227483 in the queue
[mpeg @ 0x21d1020] first_dts 23003 not matching first dts 233243 in the queue
[mpeg @ 0x21d1020] first_dts 23003 not matching first dts 239003 in the queue
[mpeg @ 0x21d1020] first_dts 23003 not matching first dts 244763 in the queue
[mpeg @ 0x21d1020] first_dts 23003 not matching first dts 256283 in the queue
[mpeg @ 0x21d1020] first_dts 23003 not matching first dts 262043 in the queue
[mpeg @ 0x21d1020] first_dts 23003 not matching first dts 267803 in the queue
[mpeg @ 0x21d1020] first_dts 23003 not matching first dts 273563 in the queue
[mpeg @ 0x21d1020] first_dts 23003 not matching first dts 279323 in the queue
[mpeg @ 0x21d1020] first_dts 23003 not matching first dts 285083 in the queue
[mpeg @ 0x21d1020] first_dts 23003 not matching first dts 290843 in the queue
[mpeg @ 0x21d1020] first_dts 23003 not matching first dts 302363 in the queue
[mpeg @ 0x21d1020] first_dts 23003 not matching first dts 308123 in the queue
[mpeg @ 0x21d1020] first_dts 23003 not matching first dts 313883 in the queue
[mpeg @ 0x21d1020] first_dts 23003 not matching first dts 319643 in the queue
[mpeg @ 0x21d1020] first_dts 23003 not matching first dts 325403 in the queue
[mpeg @ 0x21d1020] first_dts 23003 not matching first dts 331163 in the queue
[mpeg @ 0x21d1020] first_dts 23003 not matching first dts 336923 in the queue
[mpeg @ 0x21d1020] first_dts 23003 not matching first dts 348443 in the queue
[mpeg @ 0x21d1020] first_dts 23003 not matching first dts 354203 in the queue
[mpeg @ 0x21d1020] first_dts 23003 not matching first dts 359963 in the queue
[mpeg @ 0x21d1020] first_dts 23003 not matching first dts 365723 in the queue
[mpeg @ 0x21d1020] first_dts 23003 not matching first dts 371483 in the queue
[mpeg @ 0x21d1020] File position after avformat_find_stream_info() is 0
Input #0, mpeg, from 'test.mod':
  Duration: 00:00:04.37, start: 0.255589, bitrate: 4685 kb/s
    Stream #0:0[0x1e0], 132, 1/90000: Video: mpeg2video (Main), yuv420p, 704x480 [SAR 10:11 DAR 4:3], 1001/60000, 29.97 fps, 29.97 tbr, 90k tbn, 59.94 tbc
    Stream #0:1[0x80], 124, 1/90000: Audio: ac3, 48000 Hz, stereo, fltp, 256 kb/s
Successfully opened the file.
At least one output file must be specified
[AVIOContext @ 0x21d9720] Statistics: 2810000 bytes read, 2 seeks

Attachments (1)

test.mod (2.4 MB ) - added by Carl Eugen Hoyos 11 years ago.

Change History (5)

by Carl Eugen Hoyos, 11 years ago

Attachment: test.mod added

comment:1 by Michael Niedermayer, 11 years ago

Probing for libmodplug supported formats belongs into libmodplug. Thus this is a feature req for libmodplug itself and once its supported/clarified how to do this with libmodplug, then its a bug in ffmpeg if we dont use that functionality.
Also this of course does not mean its unwelcome if someone implements probing of "mod" files in ffmpeg but its not the optimal place.

comment:2 by Michael Niedermayer, 11 years ago

Resolution: fixed
Status: newclosed

probing improved, specific issue fixed

comment:3 by Đonny, 9 years ago

This fix didn't fix #4153.
What's the correct place to report such requests to libmodplug?
I reported it here: https://github.com/Konstanty/libmodplug/issues/22 but I dunno if that's the place where FFmpeg is taking libmodplug from.

comment:4 by gjdfgh, 9 years ago

Well, is that repo official, or is it just a random fork/mirror?

Note: See TracTickets for help on using tickets.