Opened 11 years ago

Last modified 11 years ago

#2594 open defect

ffmpeg stalls when accessing a live Windows Media stream with multiple audio and video streams

Reported by: Pan. Owned by:
Priority: normal Component: undetermined
Version: git-master Keywords: mms
Cc: Blocked By:
Blocking: Reproduced by developer: yes
Analyzed by developer: no

Description

Summary of the bug:

ffmpeg stalls when accessing a live Windows Media stream with multiple audio and video streams.

How to reproduce:

% ffmpeg -i mmsh://livewms.europarl.europa.eu/reflector:52819 -c copy -map 0:0 -map 0:23 -f matroska output.mkv

ffmpeg version N-52045-g694fa00 Copyright (c) 2000-2013 the FFmpeg developers
  built on Apr 12 2013 16:54:51 with gcc 4.8.0 (GCC)
  configuration: --enable-gpl --enable-version3 --disable-w32threads --enable-avisynth --enable-bzlib --enable-fontconfig --enable-frei0r --enable-gnutls --enable-iconv --enable-l
bass --enable-libbluray --enable-libcaca --enable-libfreetype --enable-libgsm --enable-libilbc --enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-l
bopenjpeg --enable-libopus --enable-librtmp --enable-libschroedinger --enable-libsoxr --enable-libspeex --enable-libtheora --enable-libtwolame --enable-libvo-aacenc --enable-libvo
amrwbenc --enable-libvorbis --enable-libvpx --enable-libx264 --enable-libxavs --enable-libxvid --enable-zlib
  libavutil      52. 26.100 / 52. 26.100
  libavcodec     55.  2.100 / 55.  2.100
  libavformat    55.  2.100 / 55.  2.100
  libavdevice    55.  0.100 / 55.  0.100
  libavfilter     3. 53.101 /  3. 53.101
  libswscale      2.  2.100 /  2.  2.100
  libswresample   0. 17.102 /  0. 17.102
  libpostproc    52.  3.100 / 52.  3.100
[wmv3 @ 02770c80] Extra data: 8 bits left, value: 0
[wmv3 @ 027717c0] Extra data: 8 bits left, value: 0
[wmv3 @ 02772e80] Extra data: 8 bits left, value: 0
[asf @ 026579a0] max_analyze_duration 5000000 reached at 5180000 microseconds
Guessed Channel Layout for  Input Stream #0.0 : stereo
Guessed Channel Layout for  Input Stream #0.1 : stereo
Guessed Channel Layout for  Input Stream #0.2 : stereo
Guessed Channel Layout for  Input Stream #0.3 : stereo
Guessed Channel Layout for  Input Stream #0.4 : stereo
Guessed Channel Layout for  Input Stream #0.5 : stereo
Guessed Channel Layout for  Input Stream #0.6 : stereo
Guessed Channel Layout for  Input Stream #0.7 : stereo
Guessed Channel Layout for  Input Stream #0.8 : stereo
Guessed Channel Layout for  Input Stream #0.9 : stereo
Guessed Channel Layout for  Input Stream #0.10 : stereo
Guessed Channel Layout for  Input Stream #0.11 : stereo
Guessed Channel Layout for  Input Stream #0.12 : stereo
Guessed Channel Layout for  Input Stream #0.13 : stereo
Guessed Channel Layout for  Input Stream #0.14 : stereo
Guessed Channel Layout for  Input Stream #0.15 : stereo
Guessed Channel Layout for  Input Stream #0.16 : stereo
Guessed Channel Layout for  Input Stream #0.17 : stereo
Guessed Channel Layout for  Input Stream #0.18 : stereo
Guessed Channel Layout for  Input Stream #0.19 : stereo
Guessed Channel Layout for  Input Stream #0.20 : stereo
Guessed Channel Layout for  Input Stream #0.21 : stereo
Guessed Channel Layout for  Input Stream #0.22 : stereo
Guessed Channel Layout for  Input Stream #0.25 : stereo
Input #0, asf, from 'mmsh://livewms.europarl.europa.eu/reflector:52819':
  Metadata:
    WMFSDKVersion   : 11.0.5721.5145
    WMFSDKNeeded    : 0.0.0.0000
    IsVBR           : 0
    DeviceConformanceTemplate: MP@LL
  Duration: N/A, start: 70625.818000, bitrate: 1663 kb/s
    Stream #0:0(eng): Audio: wmav2 (a[1][0][0] / 0x0161), 44100 Hz, stereo, fltp, 31 kb/s
    Stream #0:1(fre): Audio: wmav2 (a[1][0][0] / 0x0161), 44100 Hz, stereo, fltp, 31 kb/s
    Stream #0:2(ger): Audio: wmav2 (a[1][0][0] / 0x0161), 44100 Hz, stereo, fltp, 31 kb/s
    Stream #0:3(ita): Audio: wmav2 (a[1][0][0] / 0x0161), 44100 Hz, stereo, fltp, 31 kb/s
    Stream #0:4(spa): Audio: wmav2 (a[1][0][0] / 0x0161), 44100 Hz, stereo, fltp, 31 kb/s
    Stream #0:5(gre): Audio: wmav2 (a[1][0][0] / 0x0161), 44100 Hz, stereo, fltp, 31 kb/s
    Stream #0:6(por): Audio: wmav2 (a[1][0][0] / 0x0161), 44100 Hz, stereo, fltp, 31 kb/s
    Stream #0:7(dut): Audio: wmav2 (a[1][0][0] / 0x0161), 44100 Hz, stereo, fltp, 31 kb/s
    Stream #0:8(dan): Audio: wmav2 (a[1][0][0] / 0x0161), 44100 Hz, stereo, fltp, 31 kb/s
    Stream #0:9(fin): Audio: wmav2 (a[1][0][0] / 0x0161), 44100 Hz, stereo, fltp, 31 kb/s
    Stream #0:10(swe): Audio: wmav2 (a[1][0][0] / 0x0161), 44100 Hz, stereo, fltp, 31 kb/s
    Stream #0:11(cze): Audio: wmav2 (a[1][0][0] / 0x0161), 44100 Hz, stereo, fltp, 31 kb/s
    Stream #0:12(est): Audio: wmav2 (a[1][0][0] / 0x0161), 44100 Hz, stereo, fltp, 31 kb/s
    Stream #0:13(lav): Audio: wmav2 (a[1][0][0] / 0x0161), 44100 Hz, stereo, fltp, 31 kb/s
    Stream #0:14(lit): Audio: wmav2 (a[1][0][0] / 0x0161), 44100 Hz, stereo, fltp, 31 kb/s
    Stream #0:15(hun): Audio: wmav2 (a[1][0][0] / 0x0161), 44100 Hz, stereo, fltp, 31 kb/s
    Stream #0:16(mlt): Audio: wmav2 (a[1][0][0] / 0x0161), 44100 Hz, stereo, fltp, 31 kb/s
    Stream #0:17(pol): Audio: wmav2 (a[1][0][0] / 0x0161), 44100 Hz, stereo, fltp, 31 kb/s
    Stream #0:18(slo): Audio: wmav2 (a[1][0][0] / 0x0161), 44100 Hz, stereo, fltp, 31 kb/s
    Stream #0:19(slv): Audio: wmav2 (a[1][0][0] / 0x0161), 44100 Hz, stereo, fltp, 31 kb/s
    Stream #0:20(bul): Audio: wmav2 (a[1][0][0] / 0x0161), 44100 Hz, stereo, fltp, 31 kb/s
    Stream #0:21(rum): Audio: wmav2 (a[1][0][0] / 0x0161), 44100 Hz, stereo, fltp, 31 kb/s
    Stream #0:22(hrv): Audio: wmav2 (a[1][0][0] / 0x0161), 44100 Hz, stereo, fltp, 31 kb/s
    Stream #0:23(eng): Video: wmv3 (Main) (WMV3 / 0x33564D57), yuv420p, 384x288, 512 kb/s, 1k tbr, 1k tbn, 1k tbc
    Stream #0:24(eng): Video: wmv3 (Main) (WMV3 / 0x33564D57), yuv420p, 384x288, 256 kb/s, 1k tbr, 1k tbn, 1k tbc
    Stream #0:25(zul): Audio: wmav2 (a[1][0][0] / 0x0161), 44100 Hz, stereo, fltp, 31 kb/s
    Stream #0:26(eng): Video: wmv3 (Main) (WMV3 / 0x33564D57), yuv420p, 192x144, 128 kb/s, 25 tbr, 1k tbn, 1k tbc
Output #0, matroska, to 'output.mkv':
  Metadata:
    WMFSDKVersion   : 11.0.5721.5145
    WMFSDKNeeded    : 0.0.0.0000
    IsVBR           : 0
    DeviceConformanceTemplate: MP@LL
    encoder         : Lavf55.2.100
    Stream #0:0(eng): Audio: wmav2 (a[1][0][0] / 0x0161), 44100 Hz, stereo, 31 kb/s
    Stream #0:1(eng): Video: wmv3 (WMV3 / 0x33564D57), yuv420p, 384x288, q=2-31, 512 kb/s, 1k tbn, 1k tbc
Stream mapping:
  Stream #0:0 -> #0:0 (copy)
  Stream #0:23 -> #0:1 (copy)
Press [q] to stop, [?] for help
^C
Received signal 2: terminating.

Normally after the "press [q] to stop" ffmpeg outputs capture statistics. Here nothing happens and ffmpeg just stalls (I used "Ctrl+C" to exit). No rise in CPU either.

"mplayer -dumpstream" can save the file, albeit with some problems previously discussed in the closed bug #2572

Change History (9)

comment:1 by Pan., 11 years ago

Some extra tests:

At this exact moment:

  • VLC recognizes only the "zul" audio stream (#0:25) and identifies it as "Stream 1". Does not show video at all.
  • mplayer -dumpstream produces a dumpfile of whose only valid streams are the equivalent of "#0:0" (english audio) and "#0:23" (english video 512kbps).

comment:2 by Pan., 11 years ago

Even more tests:

  • VLC recognizes all the audio streams dumpfile from the above comment, although it plays just the "English" one. It recognizes all the video streams as well.
  • Running the first ffmpeg command on the dumpfile works as expected. However, this command still does not work on the live stream.

comment:3 by Carl Eugen Hoyos, 11 years ago

Please provide a backtrace when ffmpeg is stalled.

in reply to:  3 comment:4 by Pan., 11 years ago

Replying to cehoyos:

Please provide a backtrace when ffmpeg is stalled.

Could you please tell me how to do that? I tried running gdb as stated in this page (http://ffmpeg.org/bugreports.html) but the stalling of ffmpeg does not produce an error. If I press "Ctrl+C" ffmpeg stops and it throws me back to the gdb prompt. If I type "bt", it shows

(gdb) bt
#0  0x08ed0d66 in ?? ()
#1  0x0810f2bd in ?? ()
Backtrace stopped: previous frame inner to this frame (corrupt stack?)

Any help is appreciated. Note that I cannot install valgrind due to administrative priviledges missing. However, the URL in contest is still accessible if a developer wishes to check.

comment:5 by Carl Eugen Hoyos, 11 years ago

Please use ffmpeg_g instead of ffmpeg when running gdb.

in reply to:  5 comment:6 by Pan., 11 years ago

Replying to cehoyos:

Please use ffmpeg_g instead of ffmpeg when running gdb.

Oops, sorry for that. Unfortunately I do not have access to the ffmpeg_g file and due to administrative reasons I cannot install it either.

comment:7 by Carl Eugen Hoyos, 11 years ago

You don't have to install it (I absolutely never install FFmpeg), a default build runs fine from the build directory.

comment:8 by Pan., 11 years ago

OK, I managed to get access on another machine, installed ffmpeg_g and run gdb on the same URL.

Note that since the program stalls I have to type "Ctrl+C" at that place. GDB does not automatically throw me back at the prompt.

Here are "bt", "disass $pc-32,$pc+32" and "info all-registers" commands.

$ gdb ffmpeg_g
GNU gdb (GDB) 7.5-ubuntu
Copyright (C) 2012 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.  Type "show copying"
and "show warranty" for details.
This GDB was configured as "x86_64-linux-gnu".
For bug reporting instructions, please see:
<http://www.gnu.org/software/gdb/bugs/>...
Reading symbols from /tmp/ffmpeg-master/ffmpeg_g...done.
(gdb) r -i mmsh://livewms.europarl.europa.eu/reflector:52819 -c copy -y output.mkv
Starting program: /tmp/ffmpeg-master/ffmpeg_g -i mmsh://livewms.europarl.europa.eu/reflector:52819 -c copy -y output.mkv
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
ffmpeg version N-50153-g88b5598 Copyright (c) 2000-2013 the FFmpeg developers
  built on Mar  7 2013 17:30:51 with gcc 4.4.6 (GCC) 20110731 (Red Hat 4.4.6-3)
  configuration: --prefix=/home/monroy/ffmpeg --disable-yasm
  libavutil      52. 17.102 / 52. 17.102
  libavcodec     54. 92.100 / 54. 92.100
  libavformat    54. 63.100 / 54. 63.100
  libavdevice    54.  3.103 / 54.  3.103
  libavfilter     3. 38.106 /  3. 38.106
  libswscale      2.  2.100 /  2.  2.100
  libswresample   0. 17.102 /  0. 17.102
[asf @ 0x1572fc0] max_analyze_duration 5000000 reached at 5180000 microseconds
[asf @ 0x1572fc0] Could not find codec parameters for stream 23 (Video: wmv3 (WMV3 / 0x33564D57), 384x288, 512 kb/s): unspecified pixel format
Consider increasing the value for the 'analyzeduration' and 'probesize' options
[asf @ 0x1572fc0] Could not find codec parameters for stream 24 (Video: wmv3 (WMV3 / 0x33564D57), 384x288, 256 kb/s): unspecified pixel format
Consider increasing the value for the 'analyzeduration' and 'probesize' options
[asf @ 0x1572fc0] Estimating duration from bitrate, this may be inaccurate
Guessed Channel Layout for  Input Stream #0.0 : stereo
Guessed Channel Layout for  Input Stream #0.1 : stereo
Guessed Channel Layout for  Input Stream #0.2 : stereo
Guessed Channel Layout for  Input Stream #0.3 : stereo
Guessed Channel Layout for  Input Stream #0.4 : stereo
Guessed Channel Layout for  Input Stream #0.5 : stereo
Guessed Channel Layout for  Input Stream #0.6 : stereo
Guessed Channel Layout for  Input Stream #0.7 : stereo
Guessed Channel Layout for  Input Stream #0.8 : stereo
Guessed Channel Layout for  Input Stream #0.9 : stereo
Guessed Channel Layout for  Input Stream #0.10 : stereo
Guessed Channel Layout for  Input Stream #0.11 : stereo
Guessed Channel Layout for  Input Stream #0.12 : stereo
Guessed Channel Layout for  Input Stream #0.13 : stereo
Guessed Channel Layout for  Input Stream #0.14 : stereo
Guessed Channel Layout for  Input Stream #0.15 : stereo
Guessed Channel Layout for  Input Stream #0.16 : stereo
Guessed Channel Layout for  Input Stream #0.17 : stereo
Guessed Channel Layout for  Input Stream #0.18 : stereo
Guessed Channel Layout for  Input Stream #0.19 : stereo
Guessed Channel Layout for  Input Stream #0.20 : stereo
Guessed Channel Layout for  Input Stream #0.21 : stereo
Guessed Channel Layout for  Input Stream #0.22 : stereo
Guessed Channel Layout for  Input Stream #0.25 : stereo
Input #0, asf, from 'mmsh://livewms.europarl.europa.eu/reflector:52819':
  Metadata:
    WMFSDKVersion   : 11.0.5721.5145
    WMFSDKNeeded    : 0.0.0.0000
    IsVBR           : 0
    DeviceConformanceTemplate: MP@LL
  Duration: N/A, start: 155194.361000, bitrate: 1663 kb/s
    Stream #0:0(eng): Audio: wmav2 (a[1][0][0] / 0x0161), 44100 Hz, stereo, fltp, 31 kb/s
    Stream #0:1(fre): Audio: wmav2 (a[1][0][0] / 0x0161), 44100 Hz, stereo, fltp, 31 kb/s
    Stream #0:2(ger): Audio: wmav2 (a[1][0][0] / 0x0161), 44100 Hz, stereo, fltp, 31 kb/s
    Stream #0:3(ita): Audio: wmav2 (a[1][0][0] / 0x0161), 44100 Hz, stereo, fltp, 31 kb/s
    Stream #0:4(spa): Audio: wmav2 (a[1][0][0] / 0x0161), 44100 Hz, stereo, fltp, 31 kb/s
    Stream #0:5(gre): Audio: wmav2 (a[1][0][0] / 0x0161), 44100 Hz, stereo, fltp, 31 kb/s
    Stream #0:6(por): Audio: wmav2 (a[1][0][0] / 0x0161), 44100 Hz, stereo, fltp, 31 kb/s
    Stream #0:7(dut): Audio: wmav2 (a[1][0][0] / 0x0161), 44100 Hz, stereo, fltp, 31 kb/s
    Stream #0:8(dan): Audio: wmav2 (a[1][0][0] / 0x0161), 44100 Hz, stereo, fltp, 31 kb/s
    Stream #0:9(fin): Audio: wmav2 (a[1][0][0] / 0x0161), 44100 Hz, stereo, fltp, 31 kb/s
    Stream #0:10(swe): Audio: wmav2 (a[1][0][0] / 0x0161), 44100 Hz, stereo, fltp, 31 kb/s
    Stream #0:11(cze): Audio: wmav2 (a[1][0][0] / 0x0161), 44100 Hz, stereo, fltp, 31 kb/s
    Stream #0:12(est): Audio: wmav2 (a[1][0][0] / 0x0161), 44100 Hz, stereo, fltp, 31 kb/s
    Stream #0:13(lav): Audio: wmav2 (a[1][0][0] / 0x0161), 44100 Hz, stereo, fltp, 31 kb/s
    Stream #0:14(lit): Audio: wmav2 (a[1][0][0] / 0x0161), 44100 Hz, stereo, fltp, 31 kb/s
    Stream #0:15(hun): Audio: wmav2 (a[1][0][0] / 0x0161), 44100 Hz, stereo, fltp, 31 kb/s
    Stream #0:16(mlt): Audio: wmav2 (a[1][0][0] / 0x0161), 44100 Hz, stereo, fltp, 31 kb/s
    Stream #0:17(pol): Audio: wmav2 (a[1][0][0] / 0x0161), 44100 Hz, stereo, fltp, 31 kb/s
    Stream #0:18(slo): Audio: wmav2 (a[1][0][0] / 0x0161), 44100 Hz, stereo, fltp, 31 kb/s
    Stream #0:19(slv): Audio: wmav2 (a[1][0][0] / 0x0161), 44100 Hz, stereo, fltp, 31 kb/s
    Stream #0:20(bul): Audio: wmav2 (a[1][0][0] / 0x0161), 44100 Hz, stereo, fltp, 31 kb/s
    Stream #0:21(rum): Audio: wmav2 (a[1][0][0] / 0x0161), 44100 Hz, stereo, fltp, 31 kb/s
    Stream #0:22(hrv): Audio: wmav2 (a[1][0][0] / 0x0161), 44100 Hz, stereo, fltp, 31 kb/s
    Stream #0:23(eng): Video: wmv3 (WMV3 / 0x33564D57), 384x288, 512 kb/s, 1k tbr, 1k tbn, 1k tbc
    Stream #0:24(eng): Video: wmv3 (WMV3 / 0x33564D57), 384x288, 256 kb/s, 1k tbr, 1k tbn, 1k tbc
    Stream #0:25(zul): Audio: wmav2 (a[1][0][0] / 0x0161), 44100 Hz, stereo, fltp, 31 kb/s
    Stream #0:26(eng): Video: wmv3 (WMV3 / 0x33564D57), 192x144, 128 kb/s, 25 tbr, 1k tbn, 1k tbc
Output #0, matroska, to 'output.mkv':
  Metadata:
    WMFSDKVersion   : 11.0.5721.5145
    WMFSDKNeeded    : 0.0.0.0000
    IsVBR           : 0
    DeviceConformanceTemplate: MP@LL
    encoder         : Lavf54.63.100
    Stream #0:0(eng): Video: wmv3 (WMV3 / 0x33564D57), 384x288, q=2-31, 512 kb/s, 1k tbn, 1k tbc
    Stream #0:1(eng): Audio: wmav2 (a[1][0][0] / 0x0161), 44100 Hz, stereo, 31 kb/s
Stream mapping:
  Stream #0:23 -> #0:0 (copy)
  Stream #0:0 -> #0:1 (copy)
Press [q] to stop, [?] for help

Program received signal SIGINT, Interrupt.
0x00007ffff6c4a2d8 in poll () from /lib/x86_64-linux-gnu/libc.so.6
(gdb) bt
#0  0x00007ffff6c4a2d8 in poll () from /lib/x86_64-linux-gnu/libc.so.6
#1  0x0000000000508c03 in ff_network_wait_fd (write=0, fd=7) at libavformat/network.c:149
#2  ff_network_wait_fd_timeout (fd=7, write=0, timeout=0, int_cb=0x1586530) at libavformat/network.c:159
#3  0x0000000000551825 in tcp_read (h=<optimized out>, buf=0x7fffffffda10 "H\v", size=4) at libavformat/tcp.c:219
#4  0x000000000049c6a4 in retry_transfer_wrapper (transfer_func=0x5517f0 <tcp_read>, size_min=1, size=4, buf=0x7fffffffda10 "H\v", h=0x1586500)
    at libavformat/avio.c:262
#5  ffurl_read (h=0x1586500, buf=0x7fffffffda10 "H\v", size=4) at libavformat/avio.c:295
#6  0x00000000004bdb05 in http_buf_read (size=4, buf=0x7fffffffda10 "H\v", h=0x1588200) at libavformat/http.c:650
#7  http_read (h=0x1588200, buf=0x7fffffffda10 "H\v", size=4) at libavformat/http.c:695
#8  0x000000000049cd26 in retry_transfer_wrapper (transfer_func=0x4bd890 <http_read>, size_min=4, size=4, buf=0x7fffffffda10 "H\v", h=0x1588200)
    at libavformat/avio.c:262
#9  ffurl_read_complete (h=0x1588200, buf=0x7fffffffda10 "H\v", size=4) at libavformat/avio.c:302
#10 0x00000000004d4fb5 in get_chunk_header (mmsh=0x15735e0, len=0x7fffffffda5c) at libavformat/mmsh.c:83
#11 0x00000000004d5831 in handle_chunk_type (mmsh=0x15735e0) at libavformat/mmsh.c:327
#12 mmsh_read (h=<optimized out>, buf=0x159a6c5 "", size=12363) at libavformat/mmsh.c:360
#13 0x000000000049c6a4 in retry_transfer_wrapper (transfer_func=0x4d57d0 <mmsh_read>, size_min=1, size=12363, buf=0x159a6c5 "", h=0x1573520)
    at libavformat/avio.c:262
#14 ffurl_read (h=0x1573520, buf=0x159a6c5 "", size=12363) at libavformat/avio.c:295
#15 0x000000000049e3b1 in fill_buffer (s=0x158d1e0) at libavformat/aviobuf.c:425
#16 0x000000000049e4e5 in avio_r8 (s=0x158d1e0) at libavformat/aviobuf.c:471
#17 0x000000000048f7a7 in ff_asf_get_packet (pb=0x158d1e0, s=0x1572fc0) at libavformat/asfdec.c:903
#18 asf_read_packet (s=<optimized out>, pkt=0x7fffffffde50) at libavformat/asfdec.c:1328
#19 0x000000000055d3e6 in ff_read_packet (s=0x1572fc0, pkt=0x7fffffffde50) at libavformat/utils.c:746
#20 0x00000000005600cb in read_frame_internal (s=0x1572fc0, pkt=0x7fffffffe140) at libavformat/utils.c:1387
#21 0x0000000000560bfe in av_read_frame (s=0x1572fc0, pkt=0x7fffffffe140) at libavformat/utils.c:1489
#22 0x0000000000450d03 in get_input_packet (pkt=0x7fffffffe140, f=0x15e3a60) at ffmpeg.c:2802
#23 process_input (file_index=0) at ffmpeg.c:2839
#24 0x0000000000453011 in transcode_step () at ffmpeg.c:3089
#25 transcode () at ffmpeg.c:3141
#26 main (argc=<optimized out>, argv=<optimized out>) at ffmpeg.c:3316
(gdb) disass $pc-32,$pc+32
Dump of assembler code from 0x7ffff6c4a2b8 to 0x7ffff6c4a2f8:
   0x00007ffff6c4a2b8:  (bad)
   0x00007ffff6c4a2b9:  test   %al,(%rax)
   0x00007ffff6c4a2bb:  add    %al,(%rax)
   0x00007ffff6c4a2bd:  add    %al,(%rax)
   0x00007ffff6c4a2bf:  nop
   0x00007ffff6c4a2c0 <poll+0>: sub    $0x28,%rsp
   0x00007ffff6c4a2c4 <poll+4>: mov    0x2d5f2a(%rip),%eax        # 0x7ffff6f201f4
   0x00007ffff6c4a2ca <poll+10>:        test   %eax,%eax
   0x00007ffff6c4a2cc <poll+12>:        jne    0x7ffff6c4a2e5 <poll+37>
   0x00007ffff6c4a2ce <poll+14>:        movslq %edx,%rdx
   0x00007ffff6c4a2d1 <poll+17>:        mov    $0x7,%eax
   0x00007ffff6c4a2d6 <poll+22>:        syscall
=> 0x00007ffff6c4a2d8 <poll+24>:        cmp    $0xfffffffffffff000,%rax
   0x00007ffff6c4a2de <poll+30>:        ja     0x7ffff6c4a32d <poll+109>
   0x00007ffff6c4a2e0 <poll+32>:        add    $0x28,%rsp
   0x00007ffff6c4a2e4 <poll+36>:        retq
   0x00007ffff6c4a2e5 <poll+37>:        mov    %edx,0x8(%rsp)
   0x00007ffff6c4a2e9 <poll+41>:        mov    %rsi,0x10(%rsp)
   0x00007ffff6c4a2ee <poll+46>:        mov    %rdi,0x18(%rsp)
   0x00007ffff6c4a2f3 <poll+51>:        callq  0x7ffff6c63a00
End of assembler dump.
(gdb) info all-registers
rax            0xfffffffffffffdfc       -516
rbx            0x7      7
rcx            0xffffffffffffffff       -1
rdx            0x64     100
rsi            0x1      1
rdi            0x7fffffffd860   140737488345184
rbp            0x0      0x0
rsp            0x7fffffffd830   0x7fffffffd830
r8             0x1595710        22632208
r9             0x0      0
r10            0x0      0
r11            0x246    582
r12            0x0      0
r13            0x7fffffffda10   140737488345616
r14            0x1586530        22570288
r15            0x0      0
rip            0x7ffff6c4a2d8   0x7ffff6c4a2d8 <poll+24>
eflags         0x246    [ PF ZF IF ]
cs             0x33     51
ss             0x2b     43
ds             0x0      0
es             0x0      0
fs             0x0      0
gs             0x0      0
st0            0        (raw 0x00000000000000000000)
st1            0        (raw 0x00000000000000000000)
st2            0        (raw 0x00000000000000000000)
st3            0        (raw 0x00000000000000000000)
st4            0        (raw 0x00000000000000000000)
st5            0        (raw 0x00000000000000000000)
st6            0.021474080275469605952093528344892803   (raw 0x3ff9afea690fd5921228)
st7            0.9997694053512153195256012550018454     (raw 0x3ffefff0e343865bbaec)
fctrl          0x37f    895
fstat          0x20     32
ftag           0xffff   65535
fiseg          0x0      0
fioff          0x0      0
foseg          0x0      0
fooff          0x0      0
fop            0x0      0
xmm0           {v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {0x0, 0x0}, v16_int8 = {0x0 <repeats 16 times>}, v8_int16 = {0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
    0x0, 0x0}, v4_int32 = {0x0, 0x0, 0x0, 0x0}, v2_int64 = {0x0, 0x0}, uint128 = 0x00000000000000000000000000000000}
xmm1           {v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {0x8000000000000000, 0x8000000000000000}, v16_int8 = {0xff, 0x0, 0x0, 0x0, 0x0, 0x0, 0xff,
    0xff, 0xff, 0x0, 0x0, 0x0, 0x0, 0x0, 0xff, 0xff}, v8_int16 = {0xff, 0x0, 0x0, 0xffff, 0xff, 0x0, 0x0, 0xffff}, v4_int32 = {0xff, 0xffff0000, 0xff,
    0xffff0000}, v2_int64 = {0xffff0000000000ff, 0xffff0000000000ff}, uint128 = 0xffff0000000000ffffff0000000000ff}
xmm2           {v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {0x0, 0x0}, v16_int8 = {0x0 <repeats 16 times>}, v8_int16 = {0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
    0x0, 0x0}, v4_int32 = {0x0, 0x0, 0x0, 0x0}, v2_int64 = {0x0, 0x0}, uint128 = 0x00000000000000000000000000000000}
xmm3           {v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {0x0, 0x0}, v16_int8 = {0x0 <repeats 16 times>}, v8_int16 = {0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
    0x0, 0x0}, v4_int32 = {0x0, 0x0, 0x0, 0x0}, v2_int64 = {0x0, 0x0}, uint128 = 0x00000000000000000000000000000000}
xmm4           {v4_float = {0x0, 0x1, 0x0, 0x0}, v2_double = {0x1, 0x8000000000000000}, v16_int8 = {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf0, 0x3f, 0x68, 0x61,
    0x73, 0x65, 0x5f, 0x73, 0x68, 0x69}, v8_int16 = {0x0, 0x0, 0x0, 0x3ff0, 0x6168, 0x6573, 0x735f, 0x6968}, v4_int32 = {0x0, 0x3ff00000, 0x65736168,
    0x6968735f}, v2_int64 = {0x3ff0000000000000, 0x6968735f65736168}, uint128 = 0x6968735f657361683ff0000000000000}
xmm5           {v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {0x0, 0x8000000000000000}, v16_int8 = {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x68, 0x61,
    0x73, 0x65, 0x5f, 0x73, 0x68, 0x69}, v8_int16 = {0x0, 0x0, 0x0, 0x0, 0x6168, 0x6573, 0x735f, 0x6968}, v4_int32 = {0x0, 0x0, 0x65736168, 0x6968735f},
  v2_int64 = {0x0, 0x6968735f65736168}, uint128 = 0x6968735f657361680000000000000000}
xmm6           {v4_float = {0x0, 0xfffffffd, 0x0, 0x0}, v2_double = {0xffffffffffffffd2, 0x0}, v16_int8 = {0xe0, 0xe6, 0x35, 0x67, 0x9e, 0x6, 0x47, 0xc0,
    0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, v8_int16 = {0xe6e0, 0x6735, 0x69e, 0xc047, 0x0, 0x0, 0x0, 0x0}, v4_int32 = {0x6735e6e0, 0xc047069e, 0x0,
    0x0}, v2_int64 = {0xc047069e6735e6e0, 0x0}, uint128 = 0x0000000000000000c047069e6735e6e0}
xmm7           {v4_float = {0x0, 0xfffffffd, 0x0, 0x0}, v2_double = {0xffffffffffffffd2, 0x0}, v16_int8 = {0x5b, 0xaa, 0xa2, 0x2a, 0x9e, 0x6, 0x47, 0xc0,
---Type <return> to continue, or q <return> to quit---
    0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, v8_int16 = {0xaa5b, 0x2aa2, 0x69e, 0xc047, 0x0, 0x0, 0x0, 0x0}, v4_int32 = {0x2aa2aa5b, 0xc047069e, 0x0,
    0x0}, v2_int64 = {0xc047069e2aa2aa5b, 0x0}, uint128 = 0x0000000000000000c047069e2aa2aa5b}
xmm8           {v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {0x0, 0x0}, v16_int8 = {0x0, 0x0, 0x0, 0x0, 0x68, 0xc8, 0xbc, 0x3b, 0x0, 0x0, 0x0, 0x0, 0x0,
    0x0, 0x0, 0x0}, v8_int16 = {0x0, 0x0, 0xc868, 0x3bbc, 0x0, 0x0, 0x0, 0x0}, v4_int32 = {0x0, 0x3bbcc868, 0x0, 0x0}, v2_int64 = {0x3bbcc86800000000,
    0x0}, uint128 = 0x00000000000000003bbcc86800000000}
xmm9           {v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {0x0, 0x0}, v16_int8 = {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xc4, 0x3c, 0x0, 0x0, 0x0, 0x0, 0x0,
    0x0, 0x0, 0x0}, v8_int16 = {0x0, 0x0, 0x0, 0x3cc4, 0x0, 0x0, 0x0, 0x0}, v4_int32 = {0x0, 0x3cc40000, 0x0, 0x0}, v2_int64 = {0x3cc4000000000000, 0x0},
  uint128 = 0x00000000000000003cc4000000000000}
xmm10          {v4_float = {0x0, 0x1, 0x0, 0x0}, v2_double = {0x1, 0x0}, v16_int8 = {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf0, 0x3f, 0x0, 0x0, 0x0, 0x0, 0x0,
    0x0, 0x0, 0x0}, v8_int16 = {0x0, 0x0, 0x0, 0x3ff0, 0x0, 0x0, 0x0, 0x0}, v4_int32 = {0x0, 0x3ff00000, 0x0, 0x0}, v2_int64 = {0x3ff0000000000000, 0x0},
  uint128 = 0x00000000000000003ff0000000000000}
xmm11          {v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {0x0, 0x0}, v16_int8 = {0x0, 0x0, 0x46, 0x84, 0x24, 0x59, 0xd6, 0x3e, 0x0, 0x0, 0x0, 0x0,
    0x0, 0x0, 0x0, 0x0}, v8_int16 = {0x0, 0x8446, 0x5924, 0x3ed6, 0x0, 0x0, 0x0, 0x0}, v4_int32 = {0x84460000, 0x3ed65924, 0x0, 0x0}, v2_int64 = {
    0x3ed6592484460000, 0x0}, uint128 = 0x00000000000000003ed6592484460000}
xmm12          {v4_float = {0x9689a800, 0x0, 0x0, 0x0}, v2_double = {0x0, 0x0}, v16_int8 = {0x6a, 0xa2, 0x65, 0x50, 0xf2, 0xea, 0x8f, 0xbd, 0x0, 0x0, 0x0,
    0x0, 0x0, 0x0, 0x0, 0x0}, v8_int16 = {0xa26a, 0x5065, 0xeaf2, 0xbd8f, 0x0, 0x0, 0x0, 0x0}, v4_int32 = {0x5065a26a, 0xbd8feaf2, 0x0, 0x0}, v2_int64 = {
    0xbd8feaf25065a26a, 0x0}, uint128 = 0x0000000000000000bd8feaf25065a26a}
xmm13          {v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {0x0, 0x0}, v16_int8 = {0x0, 0x0, 0x0, 0x0, 0x0, 0x80, 0x59, 0xbc, 0x0, 0x0, 0x0, 0x0, 0x0,
    0x0, 0x0, 0x0}, v8_int16 = {0x0, 0x0, 0x8000, 0xbc59, 0x0, 0x0, 0x0, 0x0}, v4_int32 = {0x0, 0xbc598000, 0x0, 0x0}, v2_int64 = {0xbc59800000000000,
    0x0}, uint128 = 0x0000000000000000bc59800000000000}
xmm14          {v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {0x0, 0x0}, v16_int8 = {0x8e, 0x85, 0x83, 0xe8, 0xf0, 0x24, 0x53, 0x3c, 0x0, 0x0, 0x0, 0x0,
    0x0, 0x0, 0x0, 0x0}, v8_int16 = {0x858e, 0xe883, 0x24f0, 0x3c53, 0x0, 0x0, 0x0, 0x0}, v4_int32 = {0xe883858e, 0x3c5324f0, 0x0, 0x0}, v2_int64 = {
    0x3c5324f0e883858e, 0x0}, uint128 = 0x00000000000000003c5324f0e883858e}
xmm15          {v4_float = {0x0, 0x3, 0x0, 0x0}, v2_double = {0x2d, 0x0}, v16_int8 = {0xc0, 0x9, 0xf2, 0x16, 0xb5, 0xdf, 0x46, 0x40, 0x0, 0x0, 0x0, 0x0,
    0x0, 0x0, 0x0, 0x0}, v8_int16 = {0x9c0, 0x16f2, 0xdfb5, 0x4046, 0x0, 0x0, 0x0, 0x0}, v4_int32 = {0x16f209c0, 0x4046dfb5, 0x0, 0x0}, v2_int64 = {
    0x4046dfb516f209c0, 0x0}, uint128 = 0x00000000000000004046dfb516f209c0}
mxcsr          0x1fa0   [ PE IM DM ZM OM UM PM ]

comment:9 by Carl Eugen Hoyos, 11 years ago

Keywords: mms added; wmv multiple streams removed
Reproduced by developer: set
Status: newopen
Version: unspecifiedgit-master

Also reproducible with

$ ffmpeg -i mmsh://livewms.europarl.europa.eu/reflector:52819 -f null -

The only working command line is

$ ffmpeg -i mmsh://livewms.europarl.europa.eu/reflector:52819 -map 0:25 -map 0:26 -c copy out.mkv

The following commands work as expected:

$ ffplay -i mmsh://livewms.europarl.europa.eu/reflector:52819
$ ffplay -i mmsh://livewms.europarl.europa.eu/reflector:52819 -ast 25 -vst 26

Pressing "v" three times or pressing "a" 24 times while ffplay plackback also shows the problem.

Last edited 11 years ago by Carl Eugen Hoyos (previous) (diff)
Note: See TracTickets for help on using tickets.