sakuramilk / sc06d_kernel_ics

SC-06D (Galaxy S3 JP) custom kernel for ICS
Other
9 stars 7 forks source link

ASOPでのワンセグ動作について #15

Closed sakuramilk closed 12 years ago

sakuramilk commented 12 years ago

AOSPでワンセグを動作させるための情報をまとめていきます。

まずは現状

ワンセグを動作させるために必要なシステムサービスは以下の2つ service nexplayer /system/bin/nexprocess service mobileTV /system/bin/broadcastProcessObserver

また必要と思われる実行binaryは以下3つ SDtvService OneSegTsDemux OneSegDsmcc

上記5つのbinaryを動作させるために必要なlibraryは以下 libSDtvService.so libBroadcastProcObs.so libonesegbmlpeer.so libonesegcprmapi.so libonesegdemux.so libonesegdmxdriver.so libonesegdsmcc.so libonesegsp.so libonesegutils.so libBroadcastProcObs.so libPGL.so libSDtvStack.so libsdtvcrypto.so libsdtvphmem.so libsdsmcc.so libnexplayerservice.so libnexcal.so libnexral.so libnexsalbody_sock.so libnexcalbody.so libnexralbody.so libnexsalbody_syncobj.so libnexcalbody_aac.so libnexsal.so libnexsalbody_task.so libnexcalbody_h264.so libnexsalbody_debug.so libnexsalbody_time.so libnexplayerjni.so libnexsalbody_file.so libnexplayerservice.so libnexsalbody_mem.so libmorpho_frame_interp2.so libProtocolProc.so libMciAtscMh.so lib_Samsung_Sound_Booster.so lib_SamsungSBPreAmp.so lib_Samsung_Listening_Mode.so lib_R2VS_ARM_GA_Library_for_Aries.so

上記すべてを入れれば実行binaryは動作可能になります。 ※他にあれば随時更新していきます

sakuramilk commented 12 years ago

必要ファイルをpushするscriptを置きました http://bit.ly/LJGyhh

virifi commented 12 years ago

SC-06Dの/system/appと/system/framework以下の全ファイルをdeodexするスクリプトを書きました。 (ただし、/system/appのExchange.odex,MobilePrint.odex,SecEmail.odex,SlideShow.odex,SMemo.odexを除く) https://gist.github.com/3168750

使い方 deodex_system_ans_framework.pl <SC06Dのsystemディレクトリ> <出力先ディレクトリ>

さっき完成したばっかで全くテストしてませんが、すぐに出かけないといけないので一応上げておきます。

sakuramilk commented 12 years ago

必要なファイル更新

Oneseg

bin/nexprocess bin/broadcastProcessObserver bin/SDtvService bin/OneSegTsDemux bin/OneSegDsmcc lib/libBroadcastProcObs.so lib/libOneSegfactorytest_jni.so lib/libPGL.so lib/libProtocolProc.so lib/libSDtvService.so lib/libSDtvStack.so lib/libMciAtscMh.so lib/libonesegbmlpeer.so lib/libonesegcprmapi.so lib/libonesegdemux.so lib/libonesegdmxdriver.so lib/libonesegdsmcc.so lib/libonesegsp.so lib/libonesegutils.so lib/libsdtvcrypto.so lib/libsdtvphmem.so lib/libsdsmcc.so lib/libnexcal.so lib/libnexcalbody.so lib/libnexcalbody_aac.so lib/libnexcalbody_h264.so lib/libnexplayerjni.so lib/libnexplayerservice.so lib/libnexral.so lib/libnexralbody.so lib/libnexsal.so lib/libnexsalbody_debug.so lib/libnexsalbody_file.so lib/libnexsalbody_mem.so lib/libnexsalbody_sock.so lib/libnexsalbody_syncobj.so lib/libnexsalbody_task.so lib/libnexsalbody_time.so lib/libmorpho_frame_interp2.so lib/lib_R2VS_ARM_GA_Library_for_Aries.so lib/lib_SamsungSBPreAmp.so lib/lib_Samsung_Listening_Mode.so lib/lib_Samsung_Sound_Booster.so etc/permissions/sec_hardware_library.xml etc/permissions/sec_broadcast_library.xml etc/permissions/com.sec.android.app.minimode.xml etc/permissions/com.sec.feature.minimode.xml etc/permissions/com_nextreaming_library.xml app/MobileTV_JPN.apk

MobileTV_JPNはtouchwizとの依存関係を切り再コンパイルしました 以下ワンセグ起動時のログ NoClassDefFoundErrorが発生しています。 https://gist.github.com/3168918

sakuramilk commented 12 years ago

virifiさん

サンクスです。利用させていただきます。 ignore指定のSMemoあとsmaliにいってエラー終了します パッチ作ってみました > https://gist.github.com/3169024

sakuramilk commented 12 years ago

jarを4つ追加 /system/framework/com.nextreaming.player.apps.jar /system/framework/minimode.jar /system/framework/secbroadcast.jar /system/framework/sechardware.jar

sakuramilk commented 12 years ago

aoktoolのwarningを取れば動く気がしてならないです... https://gist.github.com/3169199

kyapa commented 12 years ago

全く見れない状態が続いてました。かなり進んでますね^^あと一息って感じですね。頑張って~

kyapa commented 12 years ago

今からゆっくり見させていただきます!

kyapa commented 12 years ago

import android.broadcast.helper.MtvUtilDebug; してるからこいつのjarは/system/framework/secbroadcast.jar?

sakuramilk commented 12 years ago

ここまでをまとめました。 https://gist.github.com/3170061

sakuramilk commented 12 years ago

現在つまずいているところ

IWindowManager->requestSystemKeyEventを参照しているところをなんとかしないといけないので frameworkに変更を入れるが検討中

kyapa commented 12 years ago

私もFrameworkに手を入れるのは賛成です。今後も、その方が対応しやすそう。

sakuramilk commented 12 years ago

そもそもrequestSystemKeyEventが必要なのか? といったところです。

参照元: com/samsung/sec/mtv/ui/common/MtvUiRemoveList.smali com/samsung/sec/mtv/ui/fileplayer/MtvUiFilePlayer.smali com/samsung/sec/mtv/ui/liveplayer/MtvUiLivePlayer.smali

これなにしてるとおもいますか?

kyapa commented 12 years ago

com/samsung/sec/mtv/ui/common/MtvUiRemoveList.smali これ録画ファイルの削除みたい。

kyapa commented 12 years ago

com/samsung/sec/mtv/ui/fileplayer/MtvUiFilePlayer.smali これ録画再生

kyapa commented 12 years ago

com/samsung/sec/mtv/ui/liveplayer/MtvUiLivePlayer.smali そのとおりですw

kyapa commented 12 years ago

javaファイルが大いに役に立ってますwww

sakuramilk commented 12 years ago

requestSystemKeyEventをアプリ側でコメントアウトしたら 次はjava.lang.NoSuchMethodError: android.bluetooth.BluetoothAdapter.setAvStreamingが これは地道にコツコツ進めていくしかないっぽいですね。 今日はここまでにしますので、本日の成果物を上げておきます。 http://bit.ly/OeDZaZ

sakuramilk commented 12 years ago

requestSystemKeyEventはその3つからしか呼ばれていないのですが、 なんのために呼んでいるのでしょうね

sakuramilk commented 12 years ago

アプリは起動した。まだワンセグは写らないけど

kyapa commented 12 years ago

BTヘッドセットに転送ってあるから、音をBTからってやつじゃないのかな?

sakuramilk commented 12 years ago

動きましたので先程のまとめファイルを更新しました。 http://bit.ly/OeDZaZ

かなり普通にうごいてますが、まだ問題は残ってるのでとりあえずCloseせずに残しておきます。

sakuramilk commented 12 years ago

スクショとってもしっかりブランクスクリーンになるw

virifi commented 12 years ago

何かやること残ってるかなーと思って帰宅したら、既にワンセグは倒された後だったwww 皆さんお疲れ様です。

sakuramilk commented 12 years ago

ワンセグ動作に必要なものをまとめたのでまだ問題は残っていますが、 別issueとしてこちらをCloseします。 https://gist.github.com/3170061