Page 4 of 13

Re: Play RAR files without extract them on SMB/NFS (RARFS?)

Posted: Wed Feb 15, 2012 10:40 am
by hasse69
Ok, the MediaPlayer actually reads 16k of data from the file. So access is probably ok.
The reader thread is terminated since the MediaPlayer close the file. But this should not cause a crash.
Actually this is happening almost for all MediaPlayers that I have encountered since they usually do some header read first to determine the file type.
Must be something specific on this platform that I have missed :(
Also, judging from this log the RAR file is compressed! Do you have some uncompressed RARs archives laying around that you can try?
Just want to see if access is ok and that the MediaPlayer works as it should.
You can easily check if the file is compressed by doing ls -l on the .avi file. The output from that will tell in the hard link count field. If it is 1 it is uncompressed, greater than 1 means compressed in some degree.

EDIT: How are you compiling this? Are you cross-compiling using some tool-chain or are you compiling on target ?
./configure should detect if your gcc supports -Wno-unused-result! Wonder why it did not...

EDIT2: Can you attach the config.log file ? I would like to see it.

Re: Play RAR files without extract them on SMB/NFS (RARFS?)

Posted: Wed Feb 15, 2012 10:48 am
by juusso
I use native compiler for my NAS armv5tel. If needed i can use native toolchain as well.
compilled binary works on NAS and B/D series. If you have ready binary, i would happy to execute it.

Code: Select all

configure:12512: checking if compiler supports -Wno-unused-result
configure:12537: gcc -std=gnu99 -c -g -O2 -DSVNREV=282 -fno-omit-frame-pointer -Wno-unused-result  -DNDEBUG conftest.c >&5
configure:12543: $? = 0
configure:12548: result: yes
configure:12589: checking if linker supports -rdynamic
configure:12612: gcc -std=gnu99 -o conftest -g -O2 -DSVNREV=282 -fno-omit-frame-pointer -Wno-unused-result  -DNDEBUG  -rdynamic conftest.c  >&5
configure:12618: $? = 0
configure:12624: result: yes 

Re: Play RAR files without extract them on SMB/NFS (RARFS?)

Posted: Wed Feb 15, 2012 10:51 am
by hasse69
Ok. I misunderstood this.
So you are compiling this for your NAS and then you export the mount point through SMB to your MediaPlayer is that it ?
That should work just fine, that is how I do it in my setup. So it is your NAS that fails to run rar2fs...hmm...

Re: Play RAR files without extract them on SMB/NFS (RARFS?)

Posted: Wed Feb 15, 2012 10:52 am
by juusso
Nono, you misunderstood.
I`m compiling this on my NAS and use right on TV (mount everything from Tv`s console, because i noticed this is compatible).
I also tried to compile it with native TV`s toolchain, but NAS is much easier and quicker.
Later i do everything wit native toolchain to don`t confuse you and myself.

Re: Play RAR files without extract them on SMB/NFS (RARFS?)

Posted: Wed Feb 15, 2012 10:57 am
by hasse69
I would not recommend doing it that way! There is no guarantee that all the runtime libraries are compatible between your NAS and the TV.
It is architecture compatible yes, but *everything* else must be compatible too, such a libc, threads libraries etc.
If you can I would like to check this with a rar2fs binary that was compiled using a tool-chain for your device using ./configure --host=???
Sorry :(

Re: Play RAR files without extract them on SMB/NFS (RARFS?)

Posted: Wed Feb 15, 2012 10:58 am
by juusso
ok. Sure.

Re: Play RAR files without extract them on SMB/NFS (RARFS?)

Posted: Wed Feb 15, 2012 11:10 am
by hasse69
Did you do it this way also for FUSE libraries and libunrar ?
I will fix the compile warning about unused variable. That was a really stupid mistake, funny I have not seen this before ;)
The problem with -Wno-unused-result is very odd. Autoconf obviously detected support for it but still gcc complained !
Well, well. gcc is not one of the world wonders when it comes to expected and compatible behavior :P I will see if I can find what is the problem.
None of them are serious so no problem there really.

Re: Play RAR files without extract them on SMB/NFS (RARFS?)

Posted: Wed Feb 15, 2012 7:13 pm
by hasse69
Here are two patched files. Try to do autoreconf -f -i;./configure with these instead. Should resolve your strange build problems on the NAS.
If these work I will push them to the trunk.

Edit: Oops, the extensions were not allowed for upload :(

Re: Play RAR files without extract them on SMB/NFS (RARFS?)

Posted: Wed Feb 15, 2012 8:03 pm
by juusso
I had troubles today by compiling rar2fs on native toolchain (strange error with missing libraries, which i haven`t got before).

Now about patched files - replaced existing ones, configure was fluent, but make gives same error.
SpoilerShow

Code: Select all

# make -o --enable-debug
make  all-am
make[1]: Entering directory `/mnt/disk1/tmp/compile/rar2fs'
g++ -DHAVE_CONFIG_H -I.  -I./unrar -D_FILE_OFFSET_BITS=64 -DFUSE_USE_VERSION=26 -DNDEBUG -DRARDLL -Wall  -g -O2 -pthread -MT dllext.o -MD -MP -MF .deps/dllext.Tpo -c -o dllext.o dllext.cpp
mv -f .deps/dllext.Tpo .deps/dllext.Po
gcc -std=gnu99 -DHAVE_CONFIG_H -I.  -I./unrar -D_FILE_OFFSET_BITS=64 -DFUSE_USE_VERSION=26 -DNDEBUG -Wall -g -O2 -DSVNREV=282 -fno-omit-frame-pointer -Wno-unused-result -pthread -MT configdb.o -MD -MP -MF .deps/configdb.Tpo -c -o configdb.o configdb.c
mv -f .deps/configdb.Tpo .deps/configdb.Po
gcc -std=gnu99 -DHAVE_CONFIG_H -I.  -I./unrar -D_FILE_OFFSET_BITS=64 -DFUSE_USE_VERSION=26 -DNDEBUG -Wall -g -O2 -DSVNREV=282 -fno-omit-frame-pointer -Wno-unused-result -pthread -MT filecache.o -MD -MP -MF .deps/filecache.Tpo -c -o filecache.o filecache.c
mv -f .deps/filecache.Tpo .deps/filecache.Po
gcc -std=gnu99 -DHAVE_CONFIG_H -I.  -I./unrar -D_FILE_OFFSET_BITS=64 -DFUSE_USE_VERSION=26 -DNDEBUG -Wall -g -O2 -DSVNREV=282 -fno-omit-frame-pointer -Wno-unused-result -pthread -MT iobuffer.o -MD -MP -MF .deps/iobuffer.Tpo -c -o iobuffer.o iobuffer.c
mv -f .deps/iobuffer.Tpo .deps/iobuffer.Po
gcc -std=gnu99 -DHAVE_CONFIG_H -I.  -I./unrar -D_FILE_OFFSET_BITS=64 -DFUSE_USE_VERSION=26 -DNDEBUG -Wall -g -O2 -DSVNREV=282 -fno-omit-frame-pointer -Wno-unused-result -pthread -MT sighandler.o -MD -MP -MF .deps/sighandler.Tpo -c -o sighandler.o sighandler.c
sighandler.c: In function 'stack_trace':
sighandler.c:58: warning: unused variable 'uc'
At top level:
cc1: error: unrecognized command line option "-Wno-unused-result"
make[1]: *** [sighandler.o] Error 1
make[1]: Leaving directory `/mnt/disk1/tmp/compile/rar2fs'
make: *** [all] Error 2
#

Re: Play RAR files without extract them on SMB/NFS (RARFS?)

Posted: Wed Feb 15, 2012 8:31 pm
by hasse69
Hold on, did you really replace the files ?? These are the same errors as you got before!
Did you replace configure.ac and reran 'autoreconf -f -i' before you did ./configure?
Also, the warning in sighandler.c should not be possible to get any more !? :(

How does the line 58 (and some around it) look like in your version of sighandler.c ?
This is my code (which I think I sent you):

Code: Select all

58: #ifdef REG_PC
59:        ucontext_t *uc = (ucontext_t *)secret;
60: #endif
Edit: Btw, you can not provide the option --enable-debug to make, this is an option to ./configure ;)