Re: Customized rtmpdump binaries with patch fileYes that's why I edited my post before to mean rtmpdump.
But yes I do mean the older rtmpdump usually downloads it with very little issue. Sometimes it does it on first try othertimes you gotta restart the stream maybe 3 times but it always downloads. |
Re: Customized rtmpdump binaries with patch fileQuote:
Quote:
|
Re: Customized rtmpdump binaries with patch fileQuote:
I know you can run rtmpdump manually but they change token each time. EDIT: Wait I think you can easily do it with RTMPExplorerX if you tell it run CMD instead of rtmpsrv, then you can manually run rtmpdump. |
Re: Customized rtmpdump binaries with patch filehttps://dl.dropboxusercontent.com/u/.../older-log.txt
https://dl.dropboxusercontent.com/u/.../newer-log.txt Ctrl-C was pressed after the first one downloaded for a few seconds and while the newer was hanging for about 15-20 or more seconds. Not sure if there was an easier way or not but I found if you quickly kill rtmpsrv from RTMPExplorer and run the command yourself you can easily add -z. |
Re: Customized rtmpdump binaries with patch fileonly odd thing i can find in your logs is that in case of newer rtmpdump server is sending onBWCheck twice. probably it didn't like our BWResponse. there is one commit made on 02/08/2011 which is just after the working rtmpdump date 11/7/2011. you can try after reverting the changes made by this commit.
Code:
commit 8880d1456b282ee79979adbe7b6a6eb8ad371081 |
Re: Customized rtmpdump binaries with patch fileReverted commit (then verified) and then compiled but still no go.
But yes I looked at both logs and they look nearly identical except of course the older one working. EDIT: Though I did see what happens if I revert the BW commit, put in only your AMF fixes and skip rest of patch, but then it just immediately goes to ERROR: Closing connection: NetStream.Play.StreamNotFound Debug Log for one without rest of patch https://dl.dropboxusercontent.com/u/5544258/test.log |
Re: Customized rtmpdump binaries with patch fileyour log shows NetStream.Failed not NetStream.Play.StreamNotFound error which generally means that auth token has expired. it would be easy to get the offending commit if you know how to use git bisect.
|
Re: Customized rtmpdump binaries with patch fileQuote:
But I will try and see what hapens with git bisect. EDIT: Looks like I found the issue. I didn't have extreme luck with git bisect but I did have luck checking out older versions of the code using git chekcout. It seems if I checkout anything older then Nov 9th it works perfectly but the minute I put on 19d36368f6c1ec6fa55df319173ca93048309f9a which is for PolarSSL 1.2.x compat, it breaks. Yet now, if I apply your latest patch file, it breaks again, it only works if I revert said commit and leave your patch off, yet obviously your patches are wanted. For some reason it only wants to work with PolarSSL 1.0.0 not 1.2.7 because obviously this revert causes it not to compile. I'm gonna see maybe I can use OpenSSL or something. |
Re: Customized rtmpdump binaries with patch fileso you are saying commit just before 19d36368f6c1ec6fa55df319173ca93048309f9a works while it doesn't work after you apply this specific commit. leave my patches out for the moment. that's pretty weird behaviour. that offending commit has only changes related to SSL which isn't even being used in this case.
|
Re: Customized rtmpdump binaries with patch fileQuote:
I created a new dir, did a "git clone git://git.ffmpeg.org/rtmpdump" then inside the rtmpdump dir did "git revert 19d36368f6c1ec6fa55df319173ca93048309f9a" then compiled and it works. |
Re: Customized rtmpdump binaries with patch filefor the time being try with openssl and fresh copy of repo without any modifications.
|
Re: Customized rtmpdump binaries with patch fileKSV, would you consider forking rtmpdump on github (or any other source code hosting service) and integrate your patches there? Or have you considered to push your changes upstream?
|
Re: Customized rtmpdump binaries with patch fileQuote:
|
Re: Customized rtmpdump binaries with patch filecan you add my latest patch file to the openssl mix and try. also try with fresh repo + polarssl only.
|
Re: Customized rtmpdump binaries with patch fileAdding your patch to openssl blend breaks and so does with polarssl no other changes.
EDIT: As a test I upgraded to PolarSSL 1.2.7 from 1.0.0 and with fresh code that actually does download but again the minute your patch is added, broken again :(. |
Re: Customized rtmpdump binaries with patch fileQuote:
1. first create two fresh repos and apply patch to only one of them. 2. copy rtmp.c, rtmp.h and rtmp_sys.h from patched repo to non-patched one. 3. compile it and check if problem reoccurs. if yes then we can leave out changes in other files as possible culprit. 4. now the hard part, if the problem is with changes of rtmp.c then you have to remove the code added by patch, block by block and figure out the offending code. |
Re: Customized rtmpdump binaries with patch fileWell so far it appears it's definitely those files but to even get rtmpdump to compile I had to copy over the patched rtmpdump.c but it still fails on rtmpgw but that's not needed right now.
I also tried with only rtmp_sys.h only so that looks like it's not the problem. Will update once I get further. |
Re: Customized rtmpdump binaries with patch fileI have found almost the exact problem, it is definitely changes to the rtmp.c that break it.
The code you place in at the very bottom is doing it: I can't seem to pinpoint the exact part of the code but once I removed all of this said code plus some small pieces above referencing it, it immediately worked. Code:
+static int |
Re: Customized rtmpdump binaries with patch fileQuote:
Code:
else if (AVMATCH(&method, &av__onbwcheck) || AVMATCH(&method, &av_onBWCheck)) Code:
else if (AVMATCH(&method, &av__onbwcheck)) |
Re: Customized rtmpdump binaries with patch fileQuote:
EDIT: Damn KSV are you good! I made this single change only and it worked immediately! Also just to double verify, I deleted the dir and reused git, made same change, and works again. :) Though as far as you know, this should not break anything else in the patch? |
Re: Customized rtmpdump binaries with patch fileQuote:
Code:
http://pastebin.com/nsrK1uXH |
Re: Customized rtmpdump binaries with patch fileQuote:
"patch unexpectedly ends in middle of line" but seemed to apply otherwise. |
Re: Customized rtmpdump binaries with patch fileQuote:
Code:
http://pastebin.com/Bgznqcrc |
Re: Customized rtmpdump binaries with patch fileQuote:
I tried getting a debug log but for some reason my method using rtmpexplorer to stop rtmpsrv real quick and run rtmpdump manually fails as it runs rtmpdump too fast thus invalidating said token. Is there some way to code rtmpsrv to always do -z or something to rtmpdump? I know rtmpsrv sometimes has a -i option but I can't seem to get RTMPExplorer(X) nor RTMPDumpHelper to pass said option to rtmpsrv though it appears your patch must not have -i anyway. Every now and then it will not start recording, but I noticed that before on the your 2011-07-11 version. It's like sometimes you had to restart the stream about 3 times before it starts recording, but most times it works on first try. |
Re: Customized rtmpdump binaries with patch fileQuote:
try the following one. it automatically adds -z switch to rtmpdump command. if stream doesn't work with this one i will remove the BWrespose. it's not worth spending any more time. it doesn't affect downloading anyway. Code:
http://pastebin.com/7va19cpt Code:
rtmpsrv 2>Debug.txt |
Re: Customized rtmpdump binaries with patch fileQuote:
http://lists.mplayerhq.hu/pipermail/...ber/002183.htm Quote:
|
Re: Customized rtmpdump binaries with patch fileCould anyone please compile it for mac? thanks!!
|
Re: Customized rtmpdump binaries with patch fileQuote:
Some folks over at XBMC seem to want librtmp for Apple TV 1 which is simply MacOS anyway. I am currently working on getting a cross-compiler going for MacOS and will just make the exectuables and librtmp for anybody who wants them. |
Re: Customized rtmpdump binaries with patch fileQuote:
After some testing. Unfortunately,latest release still overwrites live stream :( Every time it's saved with the same filename. I use RTMPDumpHelper+RTMPSuck Code:
WARNING: Trying different position for client digest! |
Re: Customized rtmpdump binaries with patch filei have fixed another rtmpdump bug in which flv header was set with wrong data type (audio/video marker) which is yet another regression due to those array types. though file may play normally in most players rtmpdump was looking for the wrong type of keyframes while resuming.
another enhancement included is that upon resuming it was looking for keyframes with timestamp 0 only but now it searches other non zero timestamps too (timestamps are adjusted accordingly for this resume drift). so it's able to resume in those cases also where our required keyframe has nonzero timestamp. Test case for both bugs: Code:
rtmpdump -r "rtmpt://h2a.rtp.pt/vodrtp" -y "nas2.share/videos/auto/planetamusica/planetamusica_1_20120317" -o planetamusica_1_201203171.flv your problem seems more like server configuration issue because the same response is accepted by other servers without any problem. anyway i have disabled it in my patches for compatibility reasons. @alexanderd it seems like you are using old binaries not the updated ones posted in first post. |
Re: Customized rtmpdump binaries with patch fileQuote:
|
Re: Customized rtmpdump binaries with patch fileCode:
RTMP Proxy Server v2.4 GIT-2012-12-30 (Compiled by KSV) |
Re: Customized rtmpdump binaries with patch fileGreat, that's just what needed!
Did you use the same binaries that have been uploaded to mediafire? (http://www.mediafire.com/file/5eep3w...mpdump-2.4.zip) I used them with rtmpdumphelper. Maybe that's the cause of the problem? |
Re: Customized rtmpdump binaries with patch fileQuote:
Code:
rtmpsuck MD5: 6A42BD5F06958EAE05BC7480BDD06199 Quote:
|
Re: Customized rtmpdump binaries with patch fileI've just downloaded both zips (rtmpdump-2.4.zip from mediafire, from first post and RTMPDumpHelper from Nir Sofer's site). Extracted them in new folder (both in one). BTW, rtmpsuck's MD5 equals to yours.
Then I start rtmpdumphelper from that folder (it starts the rtmpsuck) and open the same test page (http://live.samaa.tv/). RTMPSuck starts capturing the stream, but saves it as samaalive.flv, without timestamp :( I cannot understand it. Everybody, please, test that issue too. It can't be that i'm the only lucky who experiences the overwriting problem. |
Re: Customized rtmpdump binaries with patch file@KSV
Hi KSV, first thank you for your work. I was testing your patches and I think I found a bug: Steps to reproduce: - Try to dump one of the streams of Icasthd. Take into account that Icasthd works per sessions so you will need to get a valid one. icasthd.tv/?p=channeldetails&id=skysports1 For Example: http://pastebin.com/qEi703wk When dumping this kind of streams, from time to time I get a segfault. One of the times I was running with gdb and I got a backtrace: Code:
DEBUG: Parsed protocol: 0 Also happened with a compiled version in android with ffmpeg based player, backtrace in android shows: Code:
#00 pc 00018630 /system/lib/libc.so (memcpy+48) http://pastebin.com/EKxJvh23 It seems it's some problem handling redirects as sometimes ffmpeg outputs: Code:
04-23 18:55:33.949: A/ffmpeg(7739): Problem accessing the DNS. (addr: @4.102.63.22) What do you think? Regards |
Re: Customized rtmpdump binaries with patch fileexample
Code:
>rtmpdump -r "rtmp://178.18.23.112:1935/live" -a "live?f=skysports1&t=1366738882 |
Re: Customized rtmpdump binaries with patch fileQuote:
It doesn't crash every time. For me it crashes from time to time. Maybe once every 5 intents. Also don't use rtmp://edge.icasthd.com:1935/live instead force a redirect response rtmp://edge.icasthd.com:1935/redirect3 Example: http://pastebin.com/qEi703wk |
Re: Customized rtmpdump binaries with patch fileChecking if null pointer seems to solve the crash.
Code:
void EDITED: Doesn't Solve it. The culprit seems to be somewhere else |
Re: Customized rtmpdump binaries with patch fileI made some MacOS executables and librtmp test files using the x86 darwin compiler on Ubuntu 10.04 (older OS due to older code :))
I need ATV1 and MacOS users to try: http://forum.xbmc.org/showthread.php...592#pid1404592 |
All times are GMT -6. The time now is 02:04 PM. |