Kodi Community Forum
Patch for rtmpdump/librtmp - Printable Version

+- Kodi Community Forum (https://forum.kodi.tv)
+-- Forum: Development (https://forum.kodi.tv/forumdisplay.php?fid=32)
+--- Forum: Kodi Application (https://forum.kodi.tv/forumdisplay.php?fid=93)
+--- Thread: Patch for rtmpdump/librtmp (/showthread.php?tid=70512)

Pages: 1 2 3 4 5 6


- highlandsun - 2010-06-13

right


- kricker - 2010-06-13

I am getting these errors when I try to build:
Code:
DVDInputStreamMMS.cpp
e:\downloads\sourcecode\xbmc\xbmc\cores\dvdplayer\dvdinputstreams\DVDInputStreamRTMP.h(47) : error C2146: syntax error : missing ';' before identifier 'm_rtmp'
e:\downloads\sourcecode\xbmc\xbmc\cores\dvdplayer\dvdinputstreams\DVDInputStreamRTMP.h(47) : error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
e:\downloads\sourcecode\xbmc\xbmc\cores\dvdplayer\dvdinputstreams\DVDInputStreamRTMP.h(47) : error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
..\..\xbmc\cores\dvdplayer\DVDInputStreams\DVDInputStreamRTMP.cpp(29) : fatal error C1083: Cannot open include file: 'lib/libRTMP/log.h': No such file or directory
DVDInputStreamMemory.cpp
DVDInputStreamHttp.cpp
DVDInputStreamHTSP.cpp
DVDInputStreamFile.cpp
DVDInputStreamFFmpeg.cpp
DVDInputStream.cpp
DVDFactoryInputStream.cpp
DVDFactoryDemuxer.cpp
DVDDemuxUtils.cpp
DVDDemuxShoutcast.cpp
DVDDemuxHTSP.cpp
e:\downloads\sourcecode\xbmc\xbmc\cores\dvdplayer\dvdinputstreams\DVDInputStreamRTMP.h(47) : error C2146: syntax error : missing ';' before identifier 'm_rtmp'
e:\downloads\sourcecode\xbmc\xbmc\cores\dvdplayer\dvdinputstreams\DVDInputStreamRTMP.h(47) : error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
e:\downloads\sourcecode\xbmc\xbmc\cores\dvdplayer\dvdinputstreams\DVDInputStreamRTMP.h(47) : error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
DVDDemuxFFmpeg.cpp
DVDDemux.cpp
cc_decoder.c
DVDOverlayCodecText.cpp
DVDOverlayCodecSSA.cpp
DVDOverlayCodecFFmpeg.cpp
..\..\xbmc\cores\dvdplayer\DVDInputStreams/DVDInputStreamRTMP.h(47) : error C2146: syntax error : missing ';' before identifier 'm_rtmp'
..\..\xbmc\cores\dvdplayer\DVDInputStreams/DVDInputStreamRTMP.h(47) : error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
..\..\xbmc\cores\dvdplayer\DVDInputStreams/DVDInputStreamRTMP.h(47) : error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
DVDOverlayCodecCC.cpp
nal.c
h264_parser.c
..\..\xbmc\cores\dvdplayer\DVDCodecs\Video\CrystalHD\h264_parser.c(247) : warning C4146: unary minus operator applied to unsigned type, result still unsigned
..\..\xbmc\cores\dvdplayer\DVDCodecs\Video\CrystalHD\h264_parser.c(350) : warning C4146: unary minus operator applied to unsigned type, result still unsigned
..\..\xbmc\cores\dvdplayer\DVDCodecs\Video\CrystalHD\h264_parser.c(929) : warning C4244: 'argument' : conversion from 'double' to 'int', possible loss of data
CrystalHD.cpp
cpb.c
DXVA.cpp

I updated to the latest SVN, then renamed the xbmc\lib\libRTMP to xbmc\lib\libRTMP.svn. I placed the librtmp folder from rtmpdump-2.2e into xbmc\lib\. I then applied your patch file dif3.txt using TortoiseSVN. TortoiseSVN wants a .dff or .patch file, but I tell it all files and choose the dif2.txt file. I tell it to patch all, which makes TortoiseSVN download the files you patched against and then patch and save those. Does that sound correct?


- maruchan - 2010-06-14

I'm trying to build a Win32 version of this as well an am encountering similar issues. Steps taken:

1.) Download and install OpenSSL binary/lib.
2.) Grab latest xbmc trunk from SVN.
3.) Grab latest rtmpdump trunk from SVN
4.) Place the librtmp files from rtmpdump into xbmc/lib/libRTMP, renaming the old directory to libRTMP.old
5.) Patch the trunk files with the dif3.txt patch from the trac
6.) Open the "XBMC for Windows.sln" file in /project/VS2008Express/
7.) In the list of projects on the left side, I go into XBMC, find libRTMP and replace the old libRTMP files with the new ones from the updated libRTMP
8.) Build the solution. Everything seems to build properly until it gets to the libRTMP files, where it gives a bunch of syntax errors before finally failing due to the number of errors (greater than 100)

Did I miss a step? I can compile the trunk just fine, it's just once I add in the updated libRTMP files and try to compile with them. They're .c files and not .cpp, so I've tried setting the "Compile As" option to both "Default" and "C code (/TC)", thinking the syntax errors may be a result of that. When using the rtmpdump 2.2e tarball and not the latest SVN, the compiler will throw an error looking for "stdbool.h"

I tried checking out your VS project files, exobuzz, but I don't have the XDK installed, so it was a no-go.


- exobuzz - 2010-06-14

you could reference the xml of the project file to work out the needed build options perhaps or modify them to work. It's not going to be as easy as a few simple steps here I'm afraid unless you understand the errors, and know how to fix them etc. You need to build libRTMP as a static link library and then make it a dependency of the main project. and then work around any issues in regards to paths/includes/etc.

I would start by building libRTMP as its own project, rather than a sub folder of files under the main xbmc, and once you have it building. look at linking etc.

and tot he previous poster. librtmp is C not C++. build a separate lib, and link. and you dont have paths set correctly in the main project for the new librtmp.


- highlandsun - 2010-06-14

I'm a bit puzzled about the path-related problems. Since we're just replacing the old libRTMP with the new one, all of the include paths should be identical.


- ingrimsch - 2010-06-19

Would one of you guys be so kid kind to put a quick tutorial for ubuntu together? I totally lost after checking the latest svn out... cant even find a path to librtmp. Sad

any help would be really appreciated.
ingrimsch


- davilla - 2010-06-19

easy pleasy,

cd into xbmc trunk dir

cd lib/librtmp
make
sudo make install

then do the standard

./bootstrap
./configure

check that librtmp was picked up by configure

make
sudo make install


- ingrimsch - 2010-06-19

so no more patching source files? just a little make and thats it? nice! thanks for the heads up mate! Smile

one last question: what about patching the mplayer to support seeking the stream? is it still needed?


- davilla - 2010-06-20

ingrimsch Wrote:so no more patching source files? just a little make and thats it? nice! thanks for the heads up mate! Smile

one last question: what about patching the mplayer to support seeking the stream? is it still needed?

you would have to ask mplayer devs, only deal with XBMC here.


- exobuzz - 2010-06-20

Thanks btw davilla/spiff for you implementation. mines a static link currently, but I will I think move to your shared library on xbox. good for us anyway to have a more consistent codebase in some areas.


- highlandsun - 2010-06-20

mplayer seeking with rtmp was fixed in mplayer svn r31218 on 2010-05-25. If you've picked up code newer than that you should be good to go.


- Djape - 2010-06-21

Dudes, how should we install librtmp on xbmc-live with permanent storage?
As far as I know, xbmc-live will break if I compile anything.
So, if xbmc comes without librtmp on live system, what to do?

Cheers Wink


- Djape - 2010-06-22

I've tried to compile, but my 4gig usb stick gets full before svn checkout finishes.
rtmp enabled precompiled package would be awesome to have.
Cheers...


- Djape - 2010-07-03

davilla Wrote:easy pleasy,

cd into xbmc trunk dir

cd lib/librtmp
make
sudo make install

then do the standard

./bootstrap
./configure

check that librtmp was picked up by configure

make
sudo make install

Do we still had to follow this to get rtmp support or it is supported now in svn ppa?

Thx.


- highlandsun - 2010-07-03

What ppa are you talking about?

XBMC svn should Just Work at this point. Works fine for me, r31541.