Opened 10 years ago
Closed 10 years ago
#4071 closed defect (fixed)
Playing a live rtmp stream fails (regression)
Reported by: | pickles | Owned by: | |
---|---|---|---|
Priority: | important | Component: | avformat |
Version: | git-master | Keywords: | rtmp regression |
Cc: | Blocked By: | ||
Blocking: | Reproduced by developer: | yes | |
Analyzed by developer: | no |
Description
Summary of the bug:
The latest master ffmpeg (compiled without librtmp) doesn't automatically detect a live rtmp stream that is streamed from adobe media server, so it quits with the following error: Server error: Method not found (getStreamLength). This indicates that ffmpeg is treating it as a VOD stream, rather than a live stream.
How to reproduce:
ffmpeg -report -i rtmp://91.121.146.60/live/tone ffmpeg version N-67332-g70b7cf9 Copyright (c) 2000-2014 the FFmpeg developers built on Nov 2 2014 17:43:30 with Apple LLVM version 6.0 (clang-600.0.54) (based on LLVM 3.5svn) configuration: --prefix=/usr/local --enable-avfilter --enable-static --enable-pthreads --enable-gpl --enable-version3 --enable-nonfree --enable-hardcoded-tables --enable-avresample --enable-vda --cc=clang --host-cflags= --host-ldflags= --enable-libx264 --enable-libmp3lame --enable-libxvid --enable-ffplay --enable-libfdk-aac libavutil 54. 11.100 / 54. 11.100 libavcodec 56. 10.101 / 56. 10.101 libavformat 56. 12.100 / 56. 12.100 libavdevice 56. 2.100 / 56. 2.100 libavfilter 5. 2.101 / 5. 2.101 libavresample 2. 1. 0 / 2. 1. 0 libswscale 3. 1.101 / 3. 1.101 libswresample 1. 1.100 / 1. 1.100 libpostproc 53. 3.100 / 53. 3.100 Splitting the commandline. Reading option '-report' ... matched as option 'report' (generate a report) with argument '1'. Reading option '-i' ... matched as input file with argument 'rtmp://91.121.146.60/live/tone'. Finished splitting the commandline. Parsing a group of options: global . Applying option report (generate a report) with argument 1. Successfully parsed a group of options. Parsing a group of options: input file rtmp://91.121.146.60/live/tone. Successfully parsed a group of options. Opening an input file: rtmp://91.121.146.60/live/tone. [rtmp @ 0x7f8c3040dee0] Handshaking... [rtmp @ 0x7f8c3040dee0] Type answer 3 [rtmp @ 0x7f8c3040dee0] Server version 5.0.3.1 [rtmp @ 0x7f8c3040dee0] Proto = rtmp, path = /live/tone, app = live, fname = tone [rtmp @ 0x7f8c3040dee0] Server bandwidth = 2500000 [rtmp @ 0x7f8c3040dee0] Client bandwidth = 2500000 [rtmp @ 0x7f8c3040dee0] New incoming chunk size = 4096 [rtmp @ 0x7f8c3040dee0] Creating stream... [rtmp @ 0x7f8c3040dee0] Sending play command for 'tone' [rtmp @ 0x7f8c3040dee0] Server error: Method not found (getStreamLength). rtmp://91.121.146.60/live/tone: Unknown error occurred
This did previously work fine. Checking with git bisect yields that:
324b23dde1bc8638959eb32419c95a93906db272 is the first bad commit
So I assume this is a regression since 324b23d.
This rtmp server does work if you force
-f flv -rtmp_live live
but this was not necessary prior to 324b23d. My understanding is that the default 'any' autodetection behaviour for rtmp_live should automatically try a live stream, and then fall back to VOD if no live stream exists. It seems that the default 'any' autodetection setting for rtmp_live isn't working properly here.
Change History (2)
comment:1 by , 10 years ago
Component: | undetermined → avformat |
---|---|
Priority: | normal → important |
Reproduced by developer: | set |
Status: | new → open |
Version: | unspecified → git-master |
comment:2 by , 10 years ago
Resolution: | → fixed |
---|---|
Status: | open → closed |
Fixed in 09711545f5d256bd3ac77004d123dae36c5db8f9