On Mon, Oct 13, 2014 at 10:29 AM, Taha Ansari <mtaha.ans...@gmail.com> wrote: > > On Sat, Oct 11, 2014 at 11:59 PM, Andy Shaules <bowljo...@gmail.com> wrote: >> >> On 10/11/2014 3:05 AM, Taha Ansari wrote: >> >> Hi, >> >> Is there anybody out there who has faced a similar issue? I'm sure there >> would be... any feedback would be highly appreciated... >> >> On Fri, Oct 10, 2014 at 2:47 PM, Taha Ansari <mtaha.ans...@gmail.com> wrote: >>> >>> >>> On Thu, Oct 9, 2014 at 6:02 PM, Taha Ansari <mtaha.ans...@gmail.com> wrote: >>>> >>>> Hi, >>>> >>>> I have a specific scenario: in a restricted network environment, I have >>>> discovered sometimes there is problem with live reception of data via RTSP >>>> protocol. Reading at mailing list and other locations got me to a point >>>> where I discovered I could use HTTP tunneling to bypass proxies etc. I >>>> have upcoming two streams: >>>> >>>> 1- RTSP live h264 stream >>>> 2- RTSP live AAC stream >>>> >>>> When I apply HTTP tunneling method with h264 data, it works without any >>>> problem. But, if I try it with AAC data, audio never gets through. >>>> >>>> Here is uncut console output when trying to fetch such AAC streams via >>>> RTSP protocol, while the server is at a remote location (some portions are >>>> changed to protect privacy): >>>> >>>> --------------*************--------------*************--------------************* >>>> D:\....\ffmpeg-20141009-git-f6777ce-win32-shared\bin>ffpla >>>> y -rtsp_transport http -loglevel debug rtsp://143.115.111.123:1943/a.aac >>>> ffplay version N-66742-gf6777ce Copyright (c) 2003-2014 the FFmpeg >>>> developers >>>> built on Oct 8 2014 22:05:56 with gcc 4.9.1 (GCC) >>>> configuration: --disable-static --enable-shared --enable-gpl >>>> --enable-version3 >>>> --disable-w32threads --enable-avisynth --enable-bzlib --enable-fontconfig >>>> --ena >>>> ble-frei0r --enable-gnutls --enable-iconv --enable-libass >>>> --enable-libbluray --e >>>> nable-libbs2b --enable-libcaca --enable-libfreetype --enable-libgme >>>> --enable-lib >>>> gsm --enable-libilbc --enable-libmodplug --enable-libmp3lame >>>> --enable-libopencor >>>> e-amrnb --enable-libopencore-amrwb --enable-libopenjpeg --enable-libopus >>>> --enabl >>>> e-librtmp --enable-libschroedinger --enable-libsoxr --enable-libspeex >>>> --enable-l >>>> ibtheora --enable-libtwolame --enable-libvidstab --enable-libvo-aacenc >>>> --enable- >>>> libvo-amrwbenc --enable-libvorbis --enable-libvpx --enable-libwavpack >>>> --enable-l >>>> ibwebp --enable-libx264 --enable-libx265 --enable-libxavs --enable-libxvid >>>> --ena >>>> ble-zlib >>>> libavutil 54. 10.100 / 54. 10.100 >>>> libavcodec 56. 4.101 / 56. 4.101 >>>> libavformat 56. 9.100 / 56. 9.100 >>>> libavdevice 56. 1.100 / 56. 1.100 >>>> libavfilter 5. 1.103 / 5. 1.103 >>>> libswscale 3. 1.100 / 3. 1.100 >>>> libswresample 1. 1.100 / 1. 1.100 >>>> libpostproc 53. 1.100 / 53. 1.100 >>>> [http @ 01d798e0] request: GET /a.aac HTTP/1.10KB sq= 0B f=0/0 >>>> User-Agent: Lavf/56.9.100 >>>> Range: bytes=0- >>>> Connection: close >>>> Host: 143.115.111.123:1943 >>>> Icy-MetaData: 1 >>>> x-sessioncookie: 85cc4e8bbbeffd24 >>>> Accept: application/x-rtsp-tunnelled >>>> Pragma: no-cache >>>> Cache-Control: no-cache >>>> >>>> >>>> [http @ 01d798e0] header='HTTP/1.1 200 OK' 0KB sq= 0B f=0/0 >>>> [http @ 01d798e0] http_code=200 >>>> [http @ 01d798e0] header='Date: Thu, 9 Oct 2014 12:46:10 GMT' >>>> [http @ 01d798e0] header='Server: [some server name]' >>>> [http @ 01d798e0] header='Connection: Close' >>>> [http @ 01d798e0] header='Content-Type: application/x-rtsp-tunnelled' >>>> [http @ 01d798e0] header='Expires: -1' >>>> [http @ 01d798e0] header='Cache-Control: private, max-age=0' >>>> [http @ 01d798e0] header='' >>>> [http @ 01d7e420] request: POST /a.aac HTTP/1.1KB sq= 0B f=0/0 >>>> User-Agent: Lavf/56.9.100 >>>> Accept: */* >>>> Connection: close >>>> Host: 143.115.111.123:1943 >>>> Icy-MetaData: 1 >>>> x-sessioncookie: 85cc4e8bbbeffd24 >>>> Content-Type: application/x-rtsp-tunnelled >>>> Pragma: no-cache >>>> Cache-Control: no-cache >>>> Content-Length: 32767 >>>> Expires: Sun, 9 Jan 1972 00:00:00 GMT >>>> >>>> >>>> [rtsp @ 01d79d00] SDP:= 0 aq= 0KB vq= 0KB sq= 0B f=0/0 >>>> v=0 >>>> o=- 1951159390 1412858771 IN IP4 143.115.111.123 >>>> s= >>>> c=IN IP4 0.0.0.0 >>>> t=0 0 >>>> m=audio 0 RTP/AVP 96 >>>> a=rtpmap:96 MPEG4-GENERIC/22050/2 >>>> a=fmtp:96 >>>> profile-level-id=1;mode=AAC-hbr;sizelength=13;indexlength=3;indexdelta >>>> length=3;config=1390; >>>> a=control:trackID=2 >>>> >>>> [rtsp @ 01d79d00] audio codec set to: aac >>>> [rtsp @ 01d79d00] audio samplerate set to: 22050 >>>> [rtsp @ 01d79d00] audio channels set to: 2 >>>> [rtsp @ 01d79d00] hello state=0 0KB vq= 0KB sq= 0B f=0/0 >>>> [rtsp @ 01d79d00] method PLAY failed: 500 SERVER ERROR 0B f=0/0 >>>> [rtsp @ 01d79d00] Server: [some server name] >>>> CSeq: 4 >>>> Cache-Control: no-cache >>>> Date: Thu, 9 Oct 2014 12:46:12 GMT >>>> Expires: Thu, 9 Oct 2014 12:46:12 GMT >>>> Session: 31565451546595;timeout=30 >>>> x-Error: Failed to create audio >>>> >>>> rtsp://143.115.111.123:1943/a.aac: Invalid data found when processing input >>>> >>>> >>>> D:\....\ffmpeg-20141009-git-f6777ce-win32-shared\bin> >>>> --------------*************--------------*************--------------************* >>>> >>>> As can be seen, it fails somewhere at " method PLAY failed: 500 SERVER >>>> ERROR". Searching online for this does not give me much help, except that >>>> 500 SERVER ERROR is a general kind of error (without any details). >>>> >>>> This is the latest version of FFmpeg I downloaded from zeranoe builds page >>>> today... >>>> >>>> Has anyone experienced anything this sort before? Is there any remedy? >>>> >>>> Thanks in advance for any guidance... >>> >>> >>> >>> Hi, >>> >>> I have made little progress: if I specify "-initial_pause 1 " at command >>> line, then after waiting for about 40 seconds, I am able to see new window >>> pop up (the FFplay black window that shows white stuff depending upon audio >>> signal), but this window is totally black, and even after waiting for some >>> time, audio is never audible. >>> >>> Do I need to signal initial_pause to 'off', somehow? >>> >>> Here is updated command line with debug output (again some stuff like >>> server IP changed intentionally): >>> >>> --------------*************--------------*************--------------************* >>> >>> D:\ffmpeg-20141009-git-f6777ce-win32-shared\bin>ffplay -loglevel debug >>> -rtsp_transport http -initial_pause 1 rtsp://144.122.222.22:2757/a.aac >>> ffplay version N-66742-gf6777ce Copyright (c) 2003-2014 the FFmpeg >>> developers >>> built on Oct 8 2014 22:05:56 with gcc 4.9.1 (GCC) >>> configuration: --disable-static --enable-shared --enable-gpl >>> --enable-version3 >>> --disable-w32threads --enable-avisynth --enable-bzlib --enable-fontconfig >>> --ena >>> ble-frei0r --enable-gnutls --enable-iconv --enable-libass >>> --enable-libbluray --e >>> nable-libbs2b --enable-libcaca --enable-libfreetype --enable-libgme >>> --enable-lib >>> gsm --enable-libilbc --enable-libmodplug --enable-libmp3lame >>> --enable-libopencor >>> e-amrnb --enable-libopencore-amrwb --enable-libopenjpeg --enable-libopus >>> --enabl >>> e-librtmp --enable-libschroedinger --enable-libsoxr --enable-libspeex >>> --enable-l >>> ibtheora --enable-libtwolame --enable-libvidstab --enable-libvo-aacenc >>> --enable- >>> libvo-amrwbenc --enable-libvorbis --enable-libvpx --enable-libwavpack >>> --enable-l >>> ibwebp --enable-libx264 --enable-libx265 --enable-libxavs --enable-libxvid >>> --ena >>> ble-zlib >>> libavutil 54. 10.100 / 54. 10.100 >>> libavcodec 56. 4.101 / 56. 4.101 >>> libavformat 56. 9.100 / 56. 9.100 >>> libavdevice 56. 1.100 / 56. 1.100 >>> libavfilter 5. 1.103 / 5. 1.103 >>> libswscale 3. 1.100 / 3. 1.100 >>> libswresample 1. 1.100 / 1. 1.100 >>> libpostproc 53. 1.100 / 53. 1.100 >>> [http @ 02239a20] request: GET /a.aac HTTP/1.10KB sq= 0B f=0/0 >>> User-Agent: Lavf/56.9.100 >>> Range: bytes=0- >>> Connection: close >>> Host: 144.122.222.22:2757 >>> Icy-MetaData: 1 >>> x-sessioncookie: 5210038d40d12611 >>> Accept: application/x-rtsp-tunnelled >>> Pragma: no-cache >>> Cache-Control: no-cache >>> >>> >>> [http @ 02239a20] header='HTTP/1.1 200 OK' 0KB sq= 0B f=0/0 >>> [http @ 02239a20] http_code=200 >>> [http @ 02239a20] header='Date: Fri, 10 Oct 2014 09:39:29 GMT' >>> [http @ 02239a20] header='Server: [some streaming server]' >>> [http @ 02239a20] header='Connection: Close' >>> [http @ 02239a20] header='Content-Type: application/x-rtsp-tunnelled' >>> [http @ 02239a20] header='Expires: -1' >>> [http @ 02239a20] header='Cache-Control: private, max-age=0' >>> [http @ 02239a20] header='' >>> [http @ 0223d560] request: POST /a.aac HTTP/1.1KB sq= 0B f=0/0 >>> User-Agent: Lavf/56.9.100 >>> Accept: */* >>> Connection: close >>> Host: 144.122.222.22:2757 >>> Icy-MetaData: 1 >>> x-sessioncookie: 5210038d40d12611 >>> Content-Type: application/x-rtsp-tunnelled >>> Pragma: no-cache >>> Cache-Control: no-cache >>> Content-Length: 32767 >>> Expires: Sun, 9 Jan 1972 00:00:00 GMT >>> >>> >>> [rtsp @ 02239e20] SDP:= 0 aq= 0KB vq= 0KB sq= 0B f=0/0 >>> v=0 >>> o=- 545483151 1412933970 IN IP4 144.122.222.22 >>> s= >>> c=IN IP4 0.0.0.0 >>> t=0 0 >>> m=audio 0 RTP/AVP 96 >>> a=rtpmap:96 MPEG4-GENERIC/22050/2 >>> a=fmtp:96 >>> profile-level-id=1;mode=AAC-hbr;sizelength=13;indexlength=3;indexdelta >>> length=3;config=1390; >>> a=control:trackID=2 >>> >>> [rtsp @ 02239e20] audio codec set to: aac >>> [rtsp @ 02239e20] audio samplerate set to: 22050 >>> [rtsp @ 02239e20] audio channels set to: 2 >>> Input #0, rtsp, from 'rtsp://144.122.222.22:2757/a.aac':0B f=0/0 >>> Metadata: >>> title : >>> Duration: N/A, bitrate: N/A >>> Stream #0:0, 0, 1/22050: Audio: aac, 22050 Hz, stereo, fltp >>> detected 4 logical cores >>> [ffplay_abuffer @ 022bb880] Setting 'sample_rate' to value '22050' >>> [ffplay_abuffer @ 022bb880] Setting 'sample_fmt' to value 'fltp' >>> [ffplay_abuffer @ 022bb880] Setting 'channels' to value '2' >>> [ffplay_abuffer @ 022bb880] Setting 'time_base' to value '1/22050' >>> [ffplay_abuffer @ 022bb880] Setting 'channel_layout' to value '0x3' >>> [ffplay_abuffer @ 022bb880] tb:1/22050 samplefmt:fltp samplerate:22050 >>> chlayout: >>> 0x3 >>> [ffplay_abuffersink @ 022d1100] auto-inserting filter 'auto-inserted >>> resampler 0 >>> ' between the filter 'ffplay_abuffer' and the filter 'ffplay_abuffersink' >>> [AVFilterGraph @ 0221e860] query_formats: 2 queried, 0 merged, 3 already >>> done, 0 >>> delayed >>> [auto-inserted resampler 0 @ 022d2d00] ch:2 chl:stereo fmt:fltp r:22050Hz >>> -> ch: >>> 2 chl:stereo fmt:s16 r:22050Hz >>> nan M-A: nan fd= 0 aq= 0KB vq= 0KB sq= 0B f=0/0 >>> >>> D:\ffmpeg-20141009-git-f6777ce-win32-shared\bin> >>> >>> --------------*************--------------*************--------------************* >> >> >> >> >> _______________________________________________ >> Libav-user mailing list >> Libav-user@ffmpeg.org >> http://ffmpeg.org/mailman/listinfo/libav-user >> >> AAC works for me, but we use transport -rtsp_transport tcp flag. Maybe your >> server is serving RTSP TCP over HTTP. >> > > Hi, > > Many thanks for the reply... I tried with -rtsp_transport tcp, but all i get > is: > > Invalid data found when processing input. > > So if the server is causing this to happen, then maybe I have to change my > server? That seems a lot of work...
Hi again, Thinking about what you said... It is quite possible the server I am using does not support HTTP tunneling at all. But if this were the case, I would never be able to get the other H264 stream from server, which is apparently coming out just fine (also a check with -loglevel debug shows there is no issue with it). So is it possible: server supports HTTP tunneling for H264 only, and does not support HTTP tunneling for AAC? Can someone please guide again? Sounds like I'm stuck! _______________________________________________ Libav-user mailing list Libav-user@ffmpeg.org http://ffmpeg.org/mailman/listinfo/libav-user