FORUMS
Remove All Ads from XDA

[ROM][p6800][p6810][i815]LineageOS CM-13.0 [UNOFFICIAL]

19 posts
Thanks Meter: 18
 
By frami2, Junior Member on 29th June 2017, 06:26 PM
Post Reply Email Thread

This is an unofficial port of LineageOS cm-13.0. I'm a beginner in building custom roms, so please be patient with me. This rom is based on the device tree of DanielHK with small modifications to run smooth with its low memory.
Code:
#include <std_disclaimer.h>

/*
 * Your warranty is now void.
 *
 * We are not responsible for bricked devices, dead SD cards,
 * thermonuclear war, or you getting fired because the alarm app failed. Please
 * do some research if you have any concerns about features included in this ROM
 * before flashing it! YOU are choosing to make these modifications, and if
 * you point the finger at us for messing up your device, we will laugh at you.
 *
 */
Release Notes
  • 2017-09-12: Finally, I managed to compile a version for i815 but telephony/mobile data does not work
  • 2017-08-23: Stabilized the new Browser, alias Gello - it formerly crashed, e.g. when opening our XDA page; Deactivated bluetooth again, since it is not done and crashed. It is still a long way: I assume I have to adopt the current Lineageos bluetooth app like Daniel did before: https://github.com/danielhk/android_packages_apps_Bluetooth. Daniels is outdated, unfortunately, cannot be used right away.
  • 2017-07-27: Optimizations ZRAM, ISM and read_ahead also for P6810. Tried to activate bluetooth following danielhks guide. Succeeded with 3.1 in the guide - testing on command line. But in ROM it crashes when I try to activate BT via Settings.
  • 2017-07-24: Video streaming and playback fixed with help from Bauner - native media codecs work now - meaning Youtube in preinstalled browser works now and also playing local mp4 files. I found that some optimizations (e.g. ZRAM) are not yet applied in P6810, because of a separate init.rc (-wifi) -> will be fixed in next release
  • 2017-07-15: Auto-rotation fixed! And GPS works again, too. (got lost again in last build)
  • 2017-07-13: Changed default orientation to Portrait. Deactivated DRM again on P6800, since mediaserver crashed in libwvdrmengine.so - and by that Youtube also broke in playing - now Youtube runs fine, but Play Movies does still not. On P6810 hopefully both works (Could not find a difference yet). Still the rotation issue is there, not from the beginning but during usage the orientation freezes somewhen...
  • 2017-07-10: Further speed improvements, deactivating swipe in AOSP keyboard, what crashed
  • 2017-07-09: GPS fixed, thanks to p3dboard - I was able to add a NON_PIE_SUPPORT
  • 2017-07-07: Add several tweaks for memory usage and disk r/w speed, changed dpi to 202
  • 2017-06-28: first release

Installation
  • Download the ROM and optionally GApps (ARM-6.0-pico) onto your device
  • Wipe data, cache, dalvik/art-cache and system. Coming from stock rom, also wipe internal sd.
  • Flash ROM and GApps.
  • Reboot System. (First boot takes 5-6 minutes. Be patient.)

Root
Download SuperSU version BETA-SuperSU-v2.52.zip and install via TWRP recovery, newer releases will not work.


Not working
  • Bluetooth - crash when activating via Settings
  • DRM playback (google play movies) crashes. But after the crash starts playing on P6810!?! Currently, playback on P6810 is not smooth anymore, caused by the new codecs setup. Will investigate further.
  • Recent Amazon Kindle app crashes -> use an older one 4.24.0.27 or just delete libunwind.so in /data/app/...kindle directory
  • Internal mount of sd-card does not work -> use portable mode

Source
See source information on androidfilehost, too

XDA:DevDB Information
LineageOS CM-13.0, ROM for the Samsung Galaxy Tab 7.7

Contributors
frami2, danielhk, p3dboard, bauner
ROM OS Version: 6.0.x Marshmallow

Version Information
Status: Beta

Created 2017-06-29
Last Updated 2017-09-13
The Following 8 Users Say Thank You to frami2 For This Useful Post: [ View ] Gift frami2 Ad-Free
 
 
1st July 2017, 12:36 PM |#2  
Junior Member
Thanks Meter: 0
 
More
thank you, downloaded & now it is under testing.
1st July 2017, 11:58 PM |#3  
Senior Member
Thanks Meter: 353
 
More
Great job, i will check back on my notes, i definitely have information on a drm playback fix, and should have notes on Bluetooth from what Daniel told me, you have to use an external Bluetooth library, and remove one of the built-in Bluetooth apks from memory via the manifest.xml...i might have a chance later today to dig out the information. I think i had the notes in the build notes on my androidfilehost area.

Actually for Drm we needed newer blob files from memory. If you know the files that need updating from my notes, grab newer copies of the files from the Galaxy s2 lineageos builds, as i think we got the l3 drm Widevine library from the android one google devices

Edit:
Just looking back at old posts to do with the Galaxy s2 phone, this is the url where they got updated widevine L3 blobs for drm Google play movies to work.

Nougat / cm 14.1
https://github.com/RonGokhale/propri...e/nougat/nicki
Cm 13
https://github.com/RonGokhale/propri.../cm-13.0/nicki
Look under the /proprietary/vendor/lib area for the files

Original Source for the WideVine blobs
https://github.com/TheMuppets/propri...ary/vendor/lib
3rd July 2017, 06:05 AM |#4  
Senior Member
Thanks Meter: 353
 
More
Just flashed it on my P6810, its feeling quite smooth. So far apart from the bugs noted above, I noticed that the Recent Apps view isn't showing a little image of the application, but that's not a major issue, you can still see the applications to swap between via the title bar it shows.

I've attached the Widevine L3 files from the cm13 repository link, from the Muppets github, if we replace the ones in your current build with these, that should fix the DRM playback

Edit: I just tested Google Play Movies with the existing Widevine L3 files in your build, and the Flash Season 3 played fine, the film Independance Day also played fine, so I think your Rom is fine as far as DRM playback goes.

Edit: Removed the .ZIP file, as that wasn't actually the .SO files, but html files (so if anyone downloaded the .ZIP - don't use those files). Anyway, it looks like it isn't needed
Edit: Re-uploaded ZIP with the real .SO files - Just incase you need them for testing.
Attached Files
File Type: zip WidevineL3cm13.zip - [Click for QR Code] (2.12 MB, 24 views)
3rd July 2017, 09:01 PM |#5  
OP Junior Member
Thanks Meter: 18
 
Donate to Me
More
Quote:
Originally Posted by p3dboard

Just flashed it on my P6810, its feeling quite smooth. So far apart from the bugs noted above, I noticed that the Recent Apps view isn't showing a little image of the application, but that's not a major issue, you can still see the applications to swap between via the title bar it shows.

I've attached the Widevine L3 files from the cm13 repository link, from the Muppets github, if we replace the ones in your current build with these, that should fix the DRM playback

Edit: I just tested Google Play Movies with the existing Widevine L3 files in your build, and the Flash Season 3 played fine, the film Independance Day also played fine, so I think your Rom is fine as far as DRM playback goes.

Edit: Removed the .ZIP file, as that wasn't actually the .SO files, but html files (so if anyone downloaded the .ZIP - don't use those files). Anyway, it looks like it isn't needed
Edit: Re-uploaded ZIP with the real .SO files - Just incase you need them for testing.

Many thanks Peter! Just wanted to ask you regarding DRM since you are the expert
I already tried different approaches - media/drm always crashed...will try to integrate your suggestions once I have time to.

Currently, I still struggle with lagging once all Google apps are installed and switching between those - playing around with all these low-ram optimization hints.
4th July 2017, 07:11 PM |#6  
OP Junior Member
Thanks Meter: 18
 
Donate to Me
More
Hi Peter,

just tried to integrate the DRM blobs (libMc* would'nt be needed really, right?):
Code:
# drm blobs
PRODUCT_COPY_FILES += \
    vendor/samsung/smdk4210-tab/props/system/lib/libMcClient.so:system/lib/libMcClient.so \
    vendor/samsung/smdk4210-tab/props/system/lib/libMcRegistry.so:system/lib/libMcRegistry.so \
    vendor/samsung/smdk4210-tab/props/system/lib/libMcVersion.so:system/lib/libMcVersion.so \
    vendor/samsung/smdk4210-tab/props/system/vendor/lib/libdrmdecrypt.so:system/lib/libdrmdecrypt.so \
    vendor/samsung/smdk4210-tab/props/system/vendor/lib/libwvm.so:system/vendor/lib/libwvm.so \
    vendor/samsung/smdk4210-tab/props/system/vendor/lib/drm/libdrmwvmplugin.so:system/vendor/lib/drm/libdrmwvmplugin.so \
    vendor/samsung/smdk4210-tab/props/system/vendor/lib/libwvdrm_L3.so:system/vendor/lib/libwvdrm_L3.so \
    vendor/samsung/smdk4210-tab/props/system/vendor/lib/libWVStreamControlAPI_L3.so:system/vendor/lib/libWVStreamControlAPI_L3.so \
    vendor/samsung/smdk4210-tab/props/system/vendor/lib/mediadrm/libwvdrmengine.so:system/vendor/lib/mediadrm/libwvdrmengine.so \
additionally, I already had in the init.smdk4210.rc:
# for DRM
symlink -s /vendor /system/vendor

Again, it fails when I try to play any movie in Google Play Movies:

Code:
07-04 20:04:22.675 14454 14487 F libc    : Fatal signal 4 (SIGILL), code 1, fault addr 0x434038a4 in tid 14487 (Binder_1)
07-04 20:04:22.692  3398  3410 I art     : Background partial concurrent mark sweep GC freed 5950(463KB) AllocSpace objects, 10(1528KB) LOS objects, 19% free, 13MB/16MB, paused 2.001ms total 116.753ms
07-04 20:04:22.720  1830  1830 I DEBUG   : property debug.db.uid not set; NOT waiting for gdb.
07-04 20:04:22.720  1830  1830 I DEBUG   : HINT: adb shell setprop debug.db.uid 100000
07-04 20:04:22.720  1830  1830 I DEBUG   : HINT: adb forward tcp:5039 tcp:5039
07-04 20:04:22.866  3398  5723 D WifiService: New client listening to asynchronous messages
07-04 20:04:22.878  1830  1830 F DEBUG   : *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***
07-04 20:04:22.878  1830  1830 F DEBUG   : LineageOS Version: '13.0-20170703-UNOFFICIAL-p6800'
07-04 20:04:22.878  1830  1830 F DEBUG   : Build fingerprint: 'samsung/GalaxyTab/GT-P6800:6.0.0/MDB08M:userdebug/release-keys'
07-04 20:04:22.878  1830  1830 F DEBUG   : Revision: '0'
07-04 20:04:22.878  1830  1830 F DEBUG   : ABI: 'arm'
07-04 20:04:22.878  3398  5818 W NativeCrashListener: Couldn't find ProcessRecord for pid 14454
07-04 20:04:22.878  1830  1830 F DEBUG   : pid: 14454, tid: 14487, name: Binder_1  >>> /system/bin/mediaserver <<<
07-04 20:04:22.878  1830  1830 E DEBUG   : AM write failed: Broken pipe
07-04 20:04:22.878  1830  1830 F DEBUG   : signal 4 (SIGILL), code 1 (ILL_ILLOPC), fault addr 0x434038a4
07-04 20:04:22.880 14423 14491 W ResourceType: No package identifier when getting value for resource number 0x00000000
07-04 20:04:22.925  3398  5731 E AudioService: Media server started.
07-04 20:04:22.935  1830  1830 F DEBUG   :     r0 00000056  r1 00000034  r2 00000020  r3 434038a5
07-04 20:04:22.935  1830  1830 F DEBUG   :     r4 4349ebe8  r5 40133000  r6 406e384c  r7 4013301e
07-04 20:04:22.935  1830  1830 F DEBUG   :     r8 40133000  r9 434532af  sl 00008e64  fp 0019660d
07-04 20:04:22.935  1830  1830 F DEBUG   :     ip 43446020  sp 43143fb8  lr 40113045  pc 434038a4  cpsr 200f0030
07-04 20:04:22.938  1830  1830 F DEBUG   : 
07-04 20:04:22.938  1830  1830 F DEBUG   : backtrace:
07-04 20:04:22.938  1830  1830 F DEBUG   :     #00 pc 000c78a4  /system/vendor/lib/mediadrm/libwvdrmengine.so
07-04 20:04:22.938  1830  1830 F DEBUG   :     #01 pc 00000043  <unknown>
Is there anything I'm missing?

Best regards,
Frank
5th July 2017, 01:44 AM |#7  
Senior Member
Thanks Meter: 353
 
More
Quote:
Originally Posted by frami2

Hi Peter,

just tried to integrate the DRM blobs (libMc* would'nt be needed really, right?):

additionally, I already had in the init.smdk4210.rc:
# for DRM
symlink -s /vendor /system/vendor

Again, it fails when I try to play any movie in Google Play Movies:

Is there anything I'm missing?

Best regards,
Frank

Hi Frank,

Your line for the libdrmdecrypt.so was sending it to the /system/lib folder, it should go to /system/vendor/lib, and I don't think the libMc* files are needed as you say, as I have never needed them before. I've attached a flashable version of the Widevine L3 blobs for CM13, which works fine on my p6810.

so your code should read as

Code:
# drm blobs
PRODUCT_COPY_FILES += \
    vendor/samsung/smdk4210-tab/props/system/vendor/lib/libdrmdecrypt.so:system/vendor/lib/libdrmdecrypt.so \
    vendor/samsung/smdk4210-tab/props/system/vendor/lib/libwvm.so:system/vendor/lib/libwvm.so \
    vendor/samsung/smdk4210-tab/props/system/vendor/lib/drm/libdrmwvmplugin.so:system/vendor/lib/drm/libdrmwvmplugin.so \
    vendor/samsung/smdk4210-tab/props/system/vendor/lib/libwvdrm_L3.so:system/vendor/lib/libwvdrm_L3.so \
    vendor/samsung/smdk4210-tab/props/system/vendor/lib/libWVStreamControlAPI_L3.so:system/vendor/lib/libWVStreamControlAPI_L3.so \
    vendor/samsung/smdk4210-tab/props/system/vendor/lib/mediadrm/libwvdrmengine.so:system/vendor/lib/mediadrm/libwvdrmengine.so \
Regards,

Peter
Attached Files
File Type: zip WidevineL3-cm13.zip - [Click for QR Code] (2.60 MB, 12 views)
5th July 2017, 07:25 PM |#8  
OP Junior Member
Thanks Meter: 18
 
Donate to Me
More
Quote:
Originally Posted by p3dboard

Hi Frank,

Your line for the libdrmdecrypt.so was sending it to the /system/lib folder, it should go to /system/vendor/lib, and I don't think the libMc* files are needed as you say, as I have never needed them before. I've attached a flashable version of the Widevine L3 blobs for CM13, which works fine on my p6810.

so your code should read as

Code:
# drm blobs
PRODUCT_COPY_FILES += \
    vendor/samsung/smdk4210-tab/props/system/vendor/lib/libdrmdecrypt.so:system/vendor/lib/libdrmdecrypt.so \
    vendor/samsung/smdk4210-tab/props/system/vendor/lib/libwvm.so:system/vendor/lib/libwvm.so \
    vendor/samsung/smdk4210-tab/props/system/vendor/lib/drm/libdrmwvmplugin.so:system/vendor/lib/drm/libdrmwvmplugin.so \
    vendor/samsung/smdk4210-tab/props/system/vendor/lib/libwvdrm_L3.so:system/vendor/lib/libwvdrm_L3.so \
    vendor/samsung/smdk4210-tab/props/system/vendor/lib/libWVStreamControlAPI_L3.so:system/vendor/lib/libWVStreamControlAPI_L3.so \
    vendor/samsung/smdk4210-tab/props/system/vendor/lib/mediadrm/libwvdrmengine.so:system/vendor/lib/mediadrm/libwvdrmengine.so \
Regards,

Peter

I again put the files from your zip into the device tree and updated the /vendor/samsung/smdk4210-tab/blobs.mk accordingly. Building, flashing - still it crashes when trying to play any movie with the above logcat. Any idea? Is p6800 any different in these terms to p6810? Or is it depending on the media I try to play? I have some free movies like "BIG" or "BLANK" in my collection which I test with.
6th July 2017, 12:44 AM |#9  
Senior Member
Thanks Meter: 353
 
More
Quote:
Originally Posted by frami2

I again put the files from your zip into the device tree and updated the /vendor/samsung/smdk4210-tab/blobs.mk accordingly. Building, flashing - still it crashes when trying to play any movie with the above logcat. Any idea? Is p6800 any different in these terms to p6810? Or is it depending on the media I try to play? I have some free movies like "BIG" or "BLANK" in my collection which I test with.

Hi Frank,

I also have those free movies, big and blank, and on my P6810 they play fine. Your original Widevine L3 blobs in your p6810 rom also worked fine for me under LineageOS 13, so I think your original files were fine.

I can see from my original Slim Rom build notes, that I had put libdrmdecrypt.so in the /system/lib folder, so I think it can work from either location.

Did you try just flashing the flashable version of the Blob's I attached in the previous post after flashing your Rom? It would be interesting to see if that makes any difference, it sets the permissions on the blob files as well to 644, which they need to be to work.

There's an app called "DRM Info" that I use from the play store to confirm that it can load the Widevine DRM libraries fine.

What changes do you make between the two Rom builds (for P6810 and P6800)?

Is it just this change?
Code:
FILE: /device/samsung/smdk4210-tab/device.mk
# **************************************
# * modify file and add these contents *
# **************************************
#adjust to wifi only for p6810 - modify according to device type, p6800, i815 - same as CM 12.1 build format - check CM 12.1 library for references

# common_full_tablet_wifionly.mk - p6810
# common_full_tablet_lte.mk - p6800
Btw, I believe (but haven't tested it), that you can flash the p6810 rom on a p6800 (but you won't have Mobile Data support), and you can probably test to see if the Google Play movies works over Wifi with your p6810 build, as the original build you made for me works without the updated Widevine L3 package.

Edit: Just looked over Daniels Repository - https://github.com/danielhk/propriet...ops/system/lib

Looks like he has two files in the /system/lib, libdrmdecrypt.so and libwvm.so - so change the code to update these two files, as it could be that you have a duplicate file, one old and one new, and this is causing the issue.
6th July 2017, 11:20 PM |#10  
Junior Member
Thanks Meter: 0
 
More
Hi,

Just installed your ROM for tests. Looks promising
I have only issue with GPS. I don't see any NMEA messages.

Regards,
7th July 2017, 02:19 PM |#11  
Senior Member
Thanks Meter: 353
 
More
Quote:
Originally Posted by test_user7

Hi,

Just installed your ROM for tests. Looks promising
I have only issue with GPS. I don't see any NMEA messages.

Regards,

I just tried the gps on my p6810 and see its not working. It's probably because the non-pie blob support hasn't been enabled in the linker library as the gps blob/driver is old and needs this enabled.

Frank, there's notes in my slim rom compile notes on how to do this in linker.cpp from memory, the line numbers will probably be slightly different, but the code additions should help you locate the bits that need updating.
Post Reply Subscribe to Thread

Guest Quick Reply (no urls or BBcode)
Message:
Previous Thread Next Thread
Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes