maemo.org - Talk

maemo.org - Talk (https://talk.maemo.org/index.php)
-   Maemo 5 / Fremantle (https://talk.maemo.org/forumdisplay.php?f=40)
-   -   [HOWTO]Watch 720p videos on n900 [09.12.2011 VIDEOCALL WORKS] (https://talk.maemo.org/showthread.php?t=77695)

pawelstryju 2012-03-31 14:24

Re: [HOWTO]Watch 720p videos on n900 [09.12.2011 VIDEOCALL WORKS]
 
Quote:

Originally Posted by yrannadx (Post 1186456)
blessn900 works fine with hd codecs (and kp50 if matters). Only abettercamera seems to have problems due to a different (faster than bless) way of processing images.

Somebody already told it but seems that I should repeat.
BlessN900 uses CPU to process taken photos, A better Camera for the same processing uses DSP - it's just faster in operations like that.
IMO it's not gonna be easy to repair it without Better Camera sources.

karam 2012-04-01 17:45

Re: [HOWTO]Watch 720p videos on n900 [09.12.2011 VIDEOCALL WORKS]
 
//EDIT
a few posts below
freemangordon did another fix for abc
so this patch is not needed unless you want to remove an installed abc-patch
or if you want to use quality tweaked libgstdsp.so


_____-____-_____

Hello everybody

i have just finished a script that fixes abettercamera issues with 720p

HOWTO:

1- Download the script from here :
http://db.tt/eGCqXzVK
or
http://www.4shared.com/archive/1-XKf...cpatchtar.html

2- place at MyDocs
Code:

sudo gainroot
tar xzvf MyDocs/abcpatch.tar.gz
./karam/patcher.sh

---------------
usages :
patcher.sh pathit : will fix abettercamera by making it launched after replacing the proper codex. and after closing it 720p ones will be replaced instead

patcher.sh patchit100 : the same as the above one but it activates the 100 quality trick with libgstdsp.so with both abettercamera and stock camera

pather.sh unpatchit : will reverse everything and restore to the previous old status (unpatched)
---------------
so
Code:

./karam/patcher.sh patchit
#or
./karam/patcher.sh patchit100
#or
./karam/patcher.sh unpatchit

---------------
NOTE : THAT THIS SCRIPT WILL REPLACE ALL THE NEEDED FILES
IN A RESULT :
DON'T WORRY ABOUT UNINSTALLING ABETTERCAMERA WITHOUT REMOVING THE PATCH
IT WILL TRIGGER THE PROPER COMMANDS TO /var/lib/dpkg/info/abettercamera.prerm SO IT REMOVES IT WHILE REMOVING ABETTERCAMERA
also will restore the default one if you used unpatchit

plus if you used patchit then patchit100 (wanted to switch) there would be no problems as the script will remove that one and install the new one

for those who want to see the script before downloading it's required files
Code:

#!/bin/sh
# a script to patch abettercamera application for making it compatible with 720p patch
# Created by karam.baki <karam.baki@gmail.com>

if [ "$(id -u)" != "0" ]; then
  echo -e "\033[31mYou need to run this script as root.\nPlease become root (e.g. \"sudo gainroot\") before launching this script\033[m"
  exit
fi

if dpkg -l | grep -w abettercamera 1>/dev/null;then

case "$1" in
patchit)
if [ -f /opt/abettercamera/abettercamera_720p ];then
  echo "A Better Camera application is already patched"
else
if [ -f /opt/abettercamera/abettercamera_720p.100 ];then
  echo "Removing 100 quality tuned patch first"
  mv /usr/share/applications/hildon/abettercamera.desktop.bak /usr/share/applications/hildon/abettercamera.desktop
  rm -r /opt/abettercamera/dsp
  rm /opt/abettercamera/abettercamera_720p.100
  rm /etc/sudoers.d/abettercamera.sudoers
  update-sudoers
  mv /opt/abettercamera/backup-dsp/lib/dsp/* /lib/dsp/
  mv /opt/abettercamera/backup-dsp/usr/lib/gstreamer-0.10/libgstdsp.so /usr/lib/gstreamer-0.10/
  mv /opt/abettercamera/backup-dsp/var/lib/dpkg/info/abettercamera.prerm /var/lib/dpkg/info/
  rm -r /opt/abettercamera/backup-dsp
fi
  echo "Installing"
  mkdir -p /opt/abettercamera/backup-dsp/usr/lib/gstreamer-0.10
  cp /usr/lib/gstreamer-0.10/libgstdsp.so /opt/abettercamera/backup-dsp/usr/lib/gstreamer-0.10/
  mkdir -p /opt/abettercamera/backup-dsp/lib/dsp
  cp /lib/dsp/* /opt/abettercamera/backup-dsp/lib/dsp/
  mkdir -p /opt/abettercamera/backup-dsp/var/lib/dpkg/info
  cp /var/lib/dpkg/info/abettercamera.prerm /opt/abettercamera/backup-dsp/var/lib/dpkg/info/
  cp -r abcpatch/dsp /opt/abettercamera/
  cp /usr/share/applications/hildon/abettercamera.desktop /usr/share/applications/hildon/abettercamera.desktop.bak
  cp abcpatch/abettercamera.desktop /usr/share/applications/hildon/
  cp abcpatch/abettercamera.sudoers /etc/sudoers.d/
  cp abcpatch/abettercamera_720p /opt/abettercamera/
  cp abcpatch/abettercamera.prerm /var/lib/dpkg/info/
  update-sudoers
  echo "A Better Camera application is now patched"
fi
;;

patchit100)
if [ -f /opt/abettercamera/abettercamera_720p.100 ];then
  echo "A Better Camera application is already patched"
else
if [ -f /opt/abettercamera/abettercamera_720p ];then
  echo "Removing the normal quality patch first"
  mv /usr/share/applications/hildon/abettercamera.desktop.bak /usr/share/applications/hildon/abettercamera.desktop
  rm -r /opt/abettercamera/dsp
  rm /opt/abettercamera/abettercamera_720p
  rm /etc/sudoers.d/abettercamera.sudoers
  update-sudoers
  mv /opt/abettercamera/backup-dsp/lib/dsp/* /lib/dsp/
  mv /opt/abettercamera/backup-dsp/usr/lib/gstreamer-0.10/libgstdsp.so /usr/lib/gstreamer-0.10/
  mv /opt/abettercamera/backup-dsp/var/lib/dpkg/info/abettercamera.prerm /var/lib/dpkg/info/
  rm -r /opt/abettercamera/backup-dsp
fi
  echo "Installing"
  mkdir -p /opt/abettercamera/backup-dsp/usr/lib/gstreamer-0.10
  cp /usr/lib/gstreamer-0.10/libgstdsp.so /opt/abettercamera/backup-dsp/usr/lib/gstreamer-0.10/
  mkdir -p /opt/abettercamera/backup-dsp/lib/dsp
  cp /lib/dsp/* /opt/abettercamera/backup-dsp/lib/dsp/
  mkdir -p /opt/abettercamera/backup-dsp/var/lib/dpkg/info/
  cp /var/lib/dpkg/info/abettercamera.prerm /opt/abettercamera/backup-dsp/var/lib/dpkg/info/
  cp -r abcpatch/dsp /opt/abettercamera/
  cp abcpatch/libgstdsp.so.100.stock /opt/abettercamera/dsp/stock/usr/lib/gstreamer-0.10/libgstdsp.so
  cp abcpatch/libgstdsp.so.100.720p /opt/abettercamera/dsp/720p/usr/lib/gstreamer-0.10/libgstdsp.so
  cp /usr/share/applications/hildon/abettercamera.desktop /usr/share/applications/hildon/abettercamera.desktop.bak
  cp abcpatch/abettercamera.100.desktop /usr/share/applications/hildon/abettercamera.desktop
  cp abcpatch/abettercamera.100.sudoers /etc/sudoers.d/abettercamera.sudoers
  cp abcpatch/abettercamera_720p.100 /opt/abettercamera/
  cp abcpatch/abettercamera.prerm /var/lib/dpkg/info/
  update-sudoers
  echo "A Better Camera application is now patched with quality tuned to 100"
fi
;;

unpatchit)

if [ -f /opt/abettercamera/abettercamera_720p ];then
  echo "Uninstalling"
  mv /usr/share/applications/hildon/abettercamera.desktop.bak /usr/share/applications/hildon/abettercamera.desktop
  rm -r /opt/abettercamera/dsp
  rm /opt/abettercamera/abettercamera_720p
  rm /etc/sudoers.d/abettercamera.sudoers
  update-sudoers
  mv /opt/abettercamera/backup-dsp/lib/dsp/* /lib/dsp/
  mv /opt/abettercamera/backup-dsp/usr/lib/gstreamer-0.10/libgstdsp.so /usr/lib/gstreamer-0.10/
  mv /opt/abettercamera/backup-dsp/var/lib/dpkg/info/abettercamera.prerm /var/lib/dpkg/info/
  rm -r /opt/abettercamera/backup-dsp
  echo "A Better Camera Patch is no longer installed"
else
if [ -f /opt/abettercamera/abettercamera_720p.100 ];then
  echo "Uninstalling"
  mv /usr/share/applications/hildon/abettercamera.desktop.bak /usr/share/applications/hildon/abettercamera.desktop
  rm -r /opt/abettercamera/dsp
  rm /opt/abettercamera/abettercamera_720p.100
  rm /etc/sudoers.d/abettercamera.sudoers
  update-sudoers
  mv /opt/abettercamera/backup-dsp/lib/dsp/* /lib/dsp/
  mv /opt/abettercamera/backup-dsp/usr/lib/gstreamer-0.10/libgstdsp.so /usr/lib/gstreamer-0.10/
  mv /opt/abettercamera/backup-dsp/var/lib/dpkg/info/abettercamera.prerm /var/lib/dpkg/info/
  rm -r /opt/abettercamera/backup-dsp
  echo "A Better Camera application is no longer installed"
else
  echo "Nothing to do, A Better Camera patch is not installed"
  exit 0
fi
fi
;;

*)
  echo "Usage: patchit.sh {patchit | patchit100 | unpatchit}
This patch fixes A Better Camera application bug and makes it compatible with 720p patch
There is also an option to install a tweaked libgstdsp.so to improve the image quality to 100 instead of 90

patchit    : will patch abettercamera with stock quality
patchit100 : will patch abettercamera with 100 tweaked quality
unpatchit  : will uninstall this patch and restore your default status"
        exit 1
        ;;
esac

exit 0
else
  echo "A Better Camera Application is not installed"
exit 1
fi

Enjoy :)

thanks to :
freemangordon for the 720p patch
vi_ for bringing up the libgstdsp.so tweak

after doing that
launch abettercamera shortcut normally, and there should be no problems at all

as for libgstdsp tweak it will increase the image quality
also the image size will be increased from ~800 kb to ~1.5 mb

IMPORTANT :
DON'T INSTALL THIS PATCH IF YOU DON'T HAVE 720P PATCH PREINSTALLED
IF YOU DO THAT YOU WILL HAVE PROBLEMS UNTIL YOU REMOVE THE ABCPATCH

freemangordon 2012-04-01 20:05

Re: [HOWTO]Watch 720p videos on n900 [09.12.2011 VIDEOCALL WORKS]
 
1 Attachment(s)
Quote:

Originally Posted by ivgalvez (Post 1186066)
Unfortunately the application is closed source (one of the few with real quality for the N900).

I'll try to contact the developer.

Will you please try the attached libgstdsp.so, this is the latest upstream Harmattan version, backported as usual, there are some patches for jpeg codec, I really hope it will work with abc

So, make a backup of your existing libgstdsp.so which is in /usr/lib/gstreamer-0.10 and copy the attached library over existing one. Reboot your n900. Have in mind that attached .so is for 720p codecs. Please try and report.

BTW abc is payed application, isn't it? Any answer from the developer?

karam 2012-04-01 20:31

Re: [HOWTO]Watch 720p videos on n900 [09.12.2011 VIDEOCALL WORKS]
 
this one didn't fix abc :(

anyone can contact the dev on
info@blessn900.com

freemangordon 2012-04-01 20:40

Re: [HOWTO]Watch 720p videos on n900 [09.12.2011 VIDEOCALL WORKS]
 
Quote:

Originally Posted by karam (Post 1186933)
this one didn't fix abc :(

anyone can contact the dev on
info@blessn900.com

Any chance for syslog and dmesg log? Which exactly codec is failing?

karam 2012-04-01 21:18

Re: [HOWTO]Watch 720p videos on n900 [09.12.2011 VIDEOCALL WORKS]
 
1 Attachment(s)
i don't currently have my N900
however i have an old dmesg log

btw can someone upload the above script to somewhere else than 4shared ?

i seem to be having connection problems

/edit
forgot to say

****************LCML ERROR : DSP ************************
Error: Create the Node : Err Num = 80008040
****************LCML ERROR : DSP ************************

that's what abettercamera app does when capturing a photo
just keep processing it and never stop till you force it to

freemangordon 2012-04-02 06:36

Re: [HOWTO]Watch 720p videos on n900 [09.12.2011 VIDEOCALL WORKS]
 
Quote:

Originally Posted by karam (Post 1186949)
i don't currently have my N900
however i have an old dmesg log

btw can someone upload the above script to somewhere else than 4shared ?

i seem to be having connection problems

/edit
forgot to say

****************LCML ERROR : DSP ************************
Error: Create the Node : Err Num = 80008040
****************LCML ERROR : DSP ************************

that's what abettercamera app does when capturing a photo
just keep processing it and never stop till you force it to

well, well, is it possible abc to use libbridge.so? According to this error it seems so. The error is "node specific error 1" which means nothing to me without at least knowing which codec node abc is trying to start.

Please some of you PM me a link to abc.deb, so i can install it on my device and check what is going on.

alexms 2012-04-02 06:41

Re: [HOWTO]Watch 720p videos on n900 [09.12.2011 VIDEOCALL WORKS]
 
Quote:

Originally Posted by freemangordon (Post 1095763)
OK, I finally did it :D (big thanks to Nokia and TI for DSP codecs of course)

DO IT ON YOUR OWN RISK. I WILL NOT ACCEPT ANY CLAIMS FOR DATA/FUNCTIONALITY LOSS CAUSED BY FOLLOWING THE STEPS BELOW

In order to watch 720p videos on your n900 you will need:

- wget and kernel-power v49 installed on your n900
- your n900 connected to internet

1. Download attached .deb files on your n900 in a directory of your choice

2. from xterm as root cd to that directory and install .deb files
dpkg -i omap3-dsp-baseimage-ti_0.i3.6-15+0m6_armel.deb omap3-dsp-libraries-ti_0.i3.6-15+0m6_armel.deb omap3-dsp-hd-codecs_0.3.8-7+0m6_armel.deb

3. from attached libgstdsp.zip copy libgstdsp.so to your n900 /usr/lib/gstreamer-0.10/libgstdsp.so

4. uninstall gstreamer0.10-openmax from n900. As root:

apt-get remove gstreamer0.10-openmax

5. Reboot you n900 and enjoy :D

In order HD playback to be smooth you will need DSP overclock. There is kernel-power profile called "dsp" that could be used

Search appropriate threads for how to overclock DSP.

Not all 720p videos will be playable of course, n900 DSP is just not powerful enough for some profiles.

To remove 720p playback look here

For video recording in DVD/HD you should install latest CSSU-T

libgstdsp.so source code https://meego.gitorious.org/~freeman...rees/maemo5-hd


Changelog 28.09.2011

Instructions updated.
Camera is working now.
Much more videos will be playable in media player (and OMP hopefully),because of the new mafw-gst-renderer.


Changelog 01.10.2011

mafw-gst-...-renderer removed


Changelog 02.10.2011


kernel-power v49 is needed
bridgedriver.ko version for kp49 included in 720p.zip


Changelog 01.11.2011

modified bridgedriver.ko no longer needed as the one in kernel-power supports both new and old ioctl codes.


Changelog 21.11.2011

No more scripts needed. Added link to camera-ui for HD/DVD video recording.


Changelog 09.12.2011

libgstdsp.so build against FREMANTLE SDK.
Videocall functionality restored.


Changelog 15.12.2011

New libgstdsp.so - fixes broken playback for some videos.


Changelog 17.12.2011

New libgstdsp.so - fixes broken(by previous update) videocall.

I got a serious problem. I executed the steps exactly above, now after reboot my N900 goes reboot loop. I can only load nidroid. It was working good but meamo goes reboot loop. What can I do ??
How to fix it?
My important files are in there did'nt take the backup, but I take a phone backup on meamo.
Please anyone help me to fix it....
I have overclocked to 850mhz and kernel v46.

freemangordon 2012-04-02 06:47

Re: [HOWTO]Watch 720p videos on n900 [09.12.2011 VIDEOCALL WORKS]
 
Quote:

Originally Posted by alexms (Post 1187094)
I got a serious problem. I executed the steps exactly above, now after reboot my N900 goes reboot loop. I can only load nidroid. It was working good but meamo goes reboot loop. What can I do ??
How to fix it?
My important files are in there did'nt take the backup, but I take a phone backup on meamo.
Please anyone help me to fix it....
I have overclocked to 850mhz and kernel v46.

Seems you did not execute all the steps, as 720p to work you need KP version 49 at least . What you can try is to use flasher and flash only stock nokia kernel, so you will be able to boot to maemo. Anyway, AFAIK there were another user which device went into a reboot loop by similar reasons, search the forum for how did he fix his n900.

freemangordon 2012-04-02 16:59

Re: [HOWTO]Watch 720p videos on n900 [09.12.2011 VIDEOCALL WORKS]
 
1 Attachment(s)
Those who have problems with abettercamera, find attached a zip, containing some DSP codecs and OMX JPEG encoder. Extract the files in appropriate places :

contents of lib/dsp goes to /lib/dsp
contents of usr/lib goes to /usr/lib

You can make a backup of libOMX.TI.JPEG.encoder.so, but that is not really needed.
The codec nodes from the archive are those which come with PR1.3, just renamed with uppercase JPEG and USN. The library(again from PR1.3) is modified to use those codecs.


NOTE:
What I saw during my playtime with abc is that it is closed source. Which I am not saying is bad, as long as your closed source application does not use GPL-ed code. And that is what I saw in abc - it is using parts of gst-dsp code to load and execute its DSP processing algorithm (almashot.dll64P). The function names, which match 1 to 1 with those defined in dmmbuffer.h (part of gst-dsp) are:

dmm_buffer_new
dmm_buffer_allocate
dmm_buffer_map
dmm_buffer_unmap
dmm_buffer_free
dmm_buffer_flush
dmm_buffer_invalidate

dmm_buffer.h is licensed under LGPL v2.1 and copyright holders according to the file header are Felipe Contreras (felipec@TMO) and Nokia Corporation.

While I am not a lawyer, my understanding is that if you use parts of LGPL-ed code(as source, not external library), you should open-source your application.

I would advice those of you who has purchased abc (or have blessn900 installed, I suspect it is the same situation with it) to ask their author(s) for the source code with the above arguments.


All times are GMT. The time now is 06:44.

vBulletin® Version 3.8.8