Merge branch 'master' of git.linphone.org:linphone-android
This commit is contained in:
commit
68a8c67add
18 changed files with 557 additions and 281 deletions
2
.gitmodules
vendored
2
.gitmodules
vendored
|
@ -39,4 +39,4 @@
|
|||
url = git://git.linphone.org/msamr
|
||||
[submodule "submodules/externals/libvpx"]
|
||||
path = submodules/externals/libvpx
|
||||
url = git://git.linphone.org/libvpx.git
|
||||
url = http://git.chromium.org/webm/libvpx.git
|
||||
|
|
|
@ -155,17 +155,19 @@
|
|||
</application>
|
||||
|
||||
|
||||
<uses-permission android:name="android.permission.INTERNET"></uses-permission>
|
||||
<uses-permission android:name="android.permission.RECORD_AUDIO"></uses-permission>
|
||||
<uses-permission android:name="android.permission.INTERNET"/>
|
||||
<uses-permission android:name="android.permission.RECORD_AUDIO"/>
|
||||
<uses-permission android:name="android.permission.READ_CONTACTS"/>
|
||||
<uses-permission android:name="android.permission.MODIFY_AUDIO_SETTINGS"/>
|
||||
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
|
||||
<uses-permission android:name="android.permission.WAKE_LOCK"/>
|
||||
<uses-permission android:name="android.permission.PROCESS_OUTGOING_CALLS"></uses-permission>
|
||||
<uses-permission android:name="android.permission.CALL_PHONE"></uses-permission>
|
||||
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED"></uses-permission>
|
||||
<uses-permission android:name="android.permission.VIBRATE"></uses-permission>
|
||||
<uses-permission android:name="android.permission.PROCESS_OUTGOING_CALLS"/>
|
||||
<uses-permission android:name="android.permission.CALL_PHONE"/>
|
||||
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED"/>
|
||||
<uses-permission android:name="android.permission.VIBRATE"/>
|
||||
<uses-permission android:name="android.permission.CAMERA" />
|
||||
<uses-permission android:name="android.permission.READ_LOGS" />
|
||||
|
||||
|
||||
<supports-screens android:smallScreens="true" android:normalScreens="true" android:largeScreens="true" android:anyDensity="true"/>
|
||||
</manifest>
|
||||
|
|
|
@ -9,4 +9,10 @@
|
|||
android:layout_height="wrap_content" android:text="@string/about_text"
|
||||
android:autoLink="web" android:gravity="center" android:paddingTop="50sp"
|
||||
android:textStyle="bold" android:id="@+id/AboutText"></TextView>
|
||||
<Button android:id="@+id/about_report_issue"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:text="@string/about_report_issue"
|
||||
android:visibility="gone"
|
||||
android:layout_marginTop="30sp"/>
|
||||
</LinearLayout>
|
||||
|
|
8
res/layout/wait_service_dialog.xml
Normal file
8
res/layout/wait_service_dialog.xml
Normal file
|
@ -0,0 +1,8 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<LinearLayout
|
||||
xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
android:layout_width="fill_parent"
|
||||
android:layout_height="fill_parent">
|
||||
<ProgressBar android:layout_height="wrap_content" android:layout_width="wrap_content"/>
|
||||
<TextView android:layout_height="wrap_content" android:layout_width="wrap_content" android:text="waiting"/>
|
||||
</LinearLayout>
|
|
@ -6,7 +6,6 @@
|
|||
<string name="default_domain">test.linphone.org</string>
|
||||
|
||||
<bool name="use_android_contact_picker">true</bool>
|
||||
<!-- <string name="merge_another_contact_provider">content://something</string>-->
|
||||
|
||||
<bool name="useFirstLoginActivity">false</bool>
|
||||
<bool name="useMenuSettings">true</bool>
|
||||
|
@ -19,5 +18,8 @@
|
|||
<bool name="allow_edit_in_dialer">true</bool>
|
||||
<string name="notification_registered">Registered to %s </string>
|
||||
<string name="notification_register_failure">Fails to register to %s</string>
|
||||
|
||||
<string name="about_text">Linphone %s SIP (rfc 3261) compatible phone under GNU Public License V2\n http://www.linphone.org\n\nInstructions\nhttp://www.linphone.org/m/help\n\n© 2011 Belledonne Communications</string>
|
||||
<string name="about_bugreport_email">linphone-android@belledonne-communications.com</string>
|
||||
</resources>
|
||||
|
|
@ -74,7 +74,12 @@
|
|||
<string name="pref_codecs">Codecs</string>
|
||||
<string name="place_call_chooser">Place a call</string>
|
||||
<string name="pref_debug">Debug</string>
|
||||
<string name="about_text">Linphone %s SIP (rfc 3261) compatible phone under GNU Public License V2\n http://www.linphone.org\n\nInstructions\nhttp://www.linphone.org/m/help\n\n© 2011 Belledonne Communications</string>
|
||||
<string name="about_report_issue">Report issue</string>
|
||||
<string name="about_bugreport_email_text">Describe problem here</string>
|
||||
<string name="about_error_generating_bugreport_attachement">Error generating bug report</string>
|
||||
<string name="about_logs_not_found">Logs not found.</string>
|
||||
<string name="about_reading_logs">Reading logs, may takes time...</string>
|
||||
<string name="about_mailer_chooser_text">Send bug report with...</string>
|
||||
<string name="menu_about">About</string>
|
||||
<string name="pref_audio">Audio</string>
|
||||
<string name="menu_exit">Exit</string>
|
||||
|
|
|
@ -18,26 +18,149 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
|
|||
*/
|
||||
package org.linphone;
|
||||
|
||||
import java.io.BufferedReader;
|
||||
import java.io.File;
|
||||
import java.io.FileWriter;
|
||||
import java.io.IOException;
|
||||
import java.io.InputStreamReader;
|
||||
|
||||
import org.linphone.core.Log;
|
||||
|
||||
import android.app.Activity;
|
||||
import android.content.Intent;
|
||||
import android.content.SharedPreferences;
|
||||
import android.content.pm.PackageManager.NameNotFoundException;
|
||||
import android.net.Uri;
|
||||
import android.os.Bundle;
|
||||
import android.os.Handler;
|
||||
import android.preference.PreferenceManager;
|
||||
import android.view.View;
|
||||
import android.view.View.OnClickListener;
|
||||
import android.widget.TextView;
|
||||
import android.widget.Toast;
|
||||
|
||||
|
||||
|
||||
public class AboutActivity extends Activity {
|
||||
TextView aboutText;
|
||||
public class AboutActivity extends Activity implements OnClickListener {
|
||||
|
||||
private Handler mHandler = new Handler();
|
||||
|
||||
public void onCreate(Bundle savedInstanceState) {
|
||||
super.onCreate(savedInstanceState);
|
||||
setContentView(R.layout.about);
|
||||
aboutText = (TextView) findViewById(R.id.AboutText);
|
||||
|
||||
TextView aboutText = (TextView) findViewById(R.id.AboutText);
|
||||
try {
|
||||
aboutText.setText(String.format(getString(R.string.about_text), getPackageManager().getPackageInfo(getPackageName(), 0).versionName));
|
||||
} catch (NameNotFoundException e) {
|
||||
Log.e(e, "cannot get version name");
|
||||
}
|
||||
|
||||
SharedPreferences pref = PreferenceManager.getDefaultSharedPreferences(this);
|
||||
if (pref.getBoolean(getString(R.string.pref_debug_key), false)) {
|
||||
View issue = findViewById(R.id.about_report_issue);
|
||||
issue.setOnClickListener(this);
|
||||
issue.setVisibility(View.VISIBLE);
|
||||
}
|
||||
}
|
||||
|
||||
private Thread thread;
|
||||
@Override
|
||||
public void onClick(View v) {
|
||||
if (thread != null) return;
|
||||
Toast.makeText(this, getString(R.string.about_reading_logs), Toast.LENGTH_LONG).show();
|
||||
thread = new ReadLogThread();
|
||||
thread.start();
|
||||
}
|
||||
|
||||
private void onLogsRead(String logs) {
|
||||
File tempFile;
|
||||
if (logs == null) {
|
||||
Toast.makeText(this, getString(R.string.about_logs_not_found), Toast.LENGTH_SHORT).show();
|
||||
} else {
|
||||
|
||||
try {
|
||||
tempFile = File.createTempFile("bugreport", ".txt");
|
||||
tempFile.deleteOnExit();
|
||||
FileWriter writer = new FileWriter(tempFile);
|
||||
writer.append(logs);
|
||||
} catch (IOException e) {
|
||||
Toast.makeText(this, getString(R.string.about_error_generating_bugreport_attachement), Toast.LENGTH_LONG).show();
|
||||
Log.e(e, "couldn't write to temporary file");
|
||||
return;
|
||||
} finally {
|
||||
thread = null;
|
||||
}
|
||||
|
||||
|
||||
Intent intent = new Intent(Intent.ACTION_SEND);
|
||||
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
|
||||
intent.setType("plain/text");
|
||||
intent.putExtra(Intent.EXTRA_EMAIL, new String[]{getString(R.string.about_bugreport_email)});
|
||||
intent.putExtra(Intent.EXTRA_SUBJECT,"Bug report " + getString(R.string.app_name) + "-android");
|
||||
intent.putExtra(Intent.EXTRA_TEXT, getString(R.string.about_bugreport_email_text));
|
||||
intent.putExtra(Intent.EXTRA_STREAM, Uri.fromFile(tempFile));
|
||||
intent = Intent.createChooser(intent,getString(R.string.about_mailer_chooser_text));
|
||||
startActivityForResult(intent, 0);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
private class ReadLogThread extends Thread {
|
||||
@Override
|
||||
public void run() {
|
||||
final String logs = readLogs();
|
||||
mHandler.post(new Runnable() {
|
||||
@Override
|
||||
public void run() {
|
||||
onLogsRead(logs);
|
||||
}
|
||||
});
|
||||
super.run();
|
||||
}
|
||||
}
|
||||
|
||||
private String readLogs() {
|
||||
StringBuilder sb1 = null;
|
||||
StringBuilder sb2 = null;
|
||||
BufferedReader br = null;
|
||||
Process p = null;
|
||||
|
||||
try {
|
||||
p = Runtime.getRuntime().exec(new String[] {"logcat", "-d"});
|
||||
br = new BufferedReader(new InputStreamReader(p.getInputStream()), 1024);
|
||||
|
||||
String line;
|
||||
while ((line = br.readLine()) != null) {
|
||||
if (line.contains(LinphoneService.START_LINPHONE_LOGS)) {
|
||||
if (sb1 != null) {
|
||||
sb2 = sb1;
|
||||
}
|
||||
sb1 = new StringBuilder();
|
||||
}
|
||||
if (sb1 != null) {
|
||||
sb1.append(line).append('\n');
|
||||
}
|
||||
}
|
||||
|
||||
if (sb1 == null) return null;
|
||||
if (sb2 != null) {
|
||||
sb1.append(sb2);
|
||||
}
|
||||
return sb1.toString();
|
||||
} catch (IOException e) {
|
||||
Log.e(e, "Error while reading logs");
|
||||
return null;
|
||||
} finally {
|
||||
if (br != null) {
|
||||
try {
|
||||
br.close();
|
||||
} catch (IOException e) {}
|
||||
}
|
||||
if (p != null) {
|
||||
p.destroy();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
@ -62,7 +62,7 @@ import android.widget.Toast;
|
|||
* </ul>
|
||||
*
|
||||
*/
|
||||
public class DialerActivity extends SoftVolumeActivity implements LinphoneGuiListener, NewOutgoingCallUiListener {
|
||||
public class DialerActivity extends LinphoneManagerWaitActivity implements LinphoneGuiListener, NewOutgoingCallUiListener {
|
||||
|
||||
private TextView mStatus;
|
||||
private View mHangup;
|
||||
|
@ -89,7 +89,7 @@ public class DialerActivity extends SoftVolumeActivity implements LinphoneGuiLis
|
|||
private static final String CURRENT_ADDRESS = "org.linphone.current-address";
|
||||
private static final String CURRENT_DISPLAYNAME = "org.linphone.current-displayname";
|
||||
|
||||
private static final int INCOMING_CALL_DIALOG_ID = 1;
|
||||
private static final int incomingCallDialogId = 1;
|
||||
|
||||
/**
|
||||
* @return null if not ready yet
|
||||
|
@ -146,7 +146,11 @@ public class DialerActivity extends SoftVolumeActivity implements LinphoneGuiLis
|
|||
|
||||
checkIfOutgoingCallIntentReceived();
|
||||
|
||||
if (LinphoneService.isReady()) {
|
||||
instance = this;
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void onLinphoneManagerAvailable(LinphoneManager m) {
|
||||
LinphoneCore lc = LinphoneManager.getLc();
|
||||
if (lc.isIncall()) {
|
||||
if(lc.isInComingInvitePending()) {
|
||||
|
@ -156,9 +160,6 @@ public class DialerActivity extends SoftVolumeActivity implements LinphoneGuiLis
|
|||
}
|
||||
}
|
||||
}
|
||||
instance = this;
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
@ -268,7 +269,7 @@ public class DialerActivity extends SoftVolumeActivity implements LinphoneGuiLis
|
|||
private void exitCallMode() {
|
||||
// Remove dialog if existing
|
||||
try {
|
||||
dismissDialog(INCOMING_CALL_DIALOG_ID);
|
||||
dismissDialog(incomingCallDialogId);
|
||||
} catch (Throwable e) {/* Exception if never created */}
|
||||
|
||||
if (useIncallActivity) {
|
||||
|
@ -301,19 +302,23 @@ public class DialerActivity extends SoftVolumeActivity implements LinphoneGuiLis
|
|||
|
||||
|
||||
private void callPending(final LinphoneCall call) {
|
||||
showDialog(INCOMING_CALL_DIALOG_ID);
|
||||
showDialog(incomingCallDialogId);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void onPrepareDialog(int id, Dialog dialog) {
|
||||
if (id == incomingCallDialogId) {
|
||||
String from = LinphoneManager.getInstance().extractIncomingRemoteName();
|
||||
String msg = String.format(getString(R.string.incoming_call_dialog_title), from);
|
||||
((AlertDialog) dialog).setMessage(msg);
|
||||
} else {
|
||||
super.onPrepareDialog(id, dialog);
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
protected Dialog onCreateDialog(int id) {
|
||||
if (id == incomingCallDialogId) {
|
||||
View incomingCallView = getLayoutInflater().inflate(R.layout.incoming_call, null);
|
||||
|
||||
final Dialog dialog = new AlertDialog.Builder(this)
|
||||
|
@ -343,6 +348,9 @@ public class DialerActivity extends SoftVolumeActivity implements LinphoneGuiLis
|
|||
});
|
||||
|
||||
return dialog;
|
||||
} else {
|
||||
return super.onCreateDialog(id);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
|
103
src/org/linphone/LinphoneManagerWaitActivity.java
Normal file
103
src/org/linphone/LinphoneManagerWaitActivity.java
Normal file
|
@ -0,0 +1,103 @@
|
|||
/*
|
||||
LinphoneManagerWaitActivity.java
|
||||
Copyright (C) 2011 Belledonne Communications, Grenoble, France
|
||||
|
||||
This program is free software; you can redistribute it and/or
|
||||
modify it under the terms of the GNU General Public License
|
||||
as published by the Free Software Foundation; either version 2
|
||||
of the License, or (at your option) any later version.
|
||||
|
||||
This program is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with this program; if not, write to the Free Software
|
||||
Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
|
||||
*/
|
||||
package org.linphone;
|
||||
|
||||
import org.linphone.core.Log;
|
||||
|
||||
import android.app.AlertDialog;
|
||||
import android.app.Dialog;
|
||||
import android.os.Bundle;
|
||||
import android.os.Handler;
|
||||
import android.view.View;
|
||||
|
||||
/**
|
||||
* Activity requiring access to LinphoneManager should inherit from this class.
|
||||
*
|
||||
* @author Guillaume Beraudo
|
||||
*
|
||||
*/
|
||||
public abstract class LinphoneManagerWaitActivity extends SoftVolumeActivity {
|
||||
|
||||
private final int waitServiceDialogId = 314159265;
|
||||
private Handler mHandler = new Handler();
|
||||
|
||||
@Override
|
||||
protected void onCreate(Bundle savedInstanceState) {
|
||||
super.onCreate(savedInstanceState);
|
||||
|
||||
if (LinphoneService.isReady()) {
|
||||
onLinphoneManagerAvailable(LinphoneManager.getInstance());
|
||||
} else {
|
||||
showDialog(waitServiceDialogId);
|
||||
thread = new ServiceWaitThread();
|
||||
thread.start();
|
||||
}
|
||||
}
|
||||
|
||||
private ServiceWaitThread thread;
|
||||
|
||||
@Override
|
||||
protected void onDestroy() {
|
||||
if (thread != null) thread.interrupt();
|
||||
super.onDestroy();
|
||||
}
|
||||
|
||||
@Override
|
||||
protected Dialog onCreateDialog(int id) {
|
||||
if (id == waitServiceDialogId) {
|
||||
View v = getLayoutInflater().inflate((R.layout.wait_service_dialog), null);
|
||||
return new AlertDialog.Builder(this).setView(v).setCancelable(false).create();
|
||||
}
|
||||
return super.onCreateDialog(id);
|
||||
}
|
||||
|
||||
protected abstract void onLinphoneManagerAvailable(LinphoneManager m);
|
||||
|
||||
private void dismissDialogFromThread(final int id) {
|
||||
mHandler.post(new Runnable() {
|
||||
@Override
|
||||
public void run() {
|
||||
try {
|
||||
dismissDialog(id);
|
||||
} catch (Throwable e) {
|
||||
// Discarding exception which may be thrown if the dialog wasn't showing.
|
||||
}
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
private class ServiceWaitThread extends Thread {
|
||||
@Override
|
||||
public void run() {
|
||||
while (!LinphoneService.isReady()) {
|
||||
try {
|
||||
sleep(30);
|
||||
} catch (InterruptedException e) {
|
||||
Log.e("waiting thread sleep() has been interrupted, exiting as requested");
|
||||
dismissDialogFromThread(waitServiceDialogId); // FIXME, may not be the best thing to do
|
||||
return;
|
||||
}
|
||||
}
|
||||
onLinphoneManagerAvailable(LinphoneManager.getInstance());
|
||||
dismissDialogFromThread(waitServiceDialogId);
|
||||
super.run();
|
||||
}
|
||||
}
|
||||
|
||||
}
|
|
@ -28,7 +28,6 @@ import org.linphone.core.LinphoneCall.State;
|
|||
import org.linphone.core.LinphoneCore.GlobalState;
|
||||
import org.linphone.core.LinphoneCore.RegistrationState;
|
||||
import org.linphone.mediastream.Version;
|
||||
import org.linphone.mediastream.video.capture.hwconf.Hacks;
|
||||
|
||||
import android.app.Notification;
|
||||
import android.app.NotificationManager;
|
||||
|
@ -41,6 +40,7 @@ import android.content.pm.PackageManager.NameNotFoundException;
|
|||
import android.media.MediaPlayer;
|
||||
import android.media.RingtoneManager;
|
||||
import android.net.Uri;
|
||||
import android.os.Build;
|
||||
import android.os.Handler;
|
||||
import android.os.IBinder;
|
||||
import android.preference.PreferenceManager;
|
||||
|
@ -99,7 +99,6 @@ public final class LinphoneService extends Service implements LinphoneServiceLis
|
|||
@Override
|
||||
public void onCreate() {
|
||||
super.onCreate();
|
||||
instance = this;
|
||||
|
||||
// In case restart after a crash. Main in LinphoneActivity
|
||||
LinphonePreferenceManager.getInstance(this);
|
||||
|
@ -111,7 +110,8 @@ public final class LinphoneService extends Service implements LinphoneServiceLis
|
|||
notificationTitle = getString(R.string.app_name);
|
||||
|
||||
// Dump some debugging information to the logs
|
||||
Hacks.dumpDeviceInformation();
|
||||
Log.i(START_LINPHONE_LOGS);
|
||||
dumpDeviceInformation();
|
||||
dumpInstalledLinphoneInformation();
|
||||
|
||||
mNotificationMgr = (NotificationManager) this.getSystemService(Context.NOTIFICATION_SERVICE);
|
||||
|
@ -126,10 +126,23 @@ public final class LinphoneService extends Service implements LinphoneServiceLis
|
|||
|
||||
|
||||
LinphoneManager.createAndStart(this, this);
|
||||
instance = this; // instance is ready once linphone manager has been created
|
||||
}
|
||||
|
||||
|
||||
|
||||
public static final String START_LINPHONE_LOGS = " ==== Phone information dump ====";
|
||||
private void dumpDeviceInformation() {
|
||||
StringBuilder sb = new StringBuilder();
|
||||
sb.append("DEVICE=").append(Build.DEVICE).append("\n");
|
||||
sb.append("MODEL=").append(Build.MODEL).append("\n");
|
||||
//MANUFACTURER doesn't exist in android 1.5.
|
||||
//sb.append("MANUFACTURER=").append(Build.MANUFACTURER).append("\n");
|
||||
sb.append("SDK=").append(Build.VERSION.SDK);
|
||||
Log.i(sb.toString());
|
||||
}
|
||||
|
||||
|
||||
|
||||
private void dumpInstalledLinphoneInformation() {
|
||||
PackageInfo info = null;
|
||||
|
|
|
@ -18,6 +18,7 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
|
|||
*/
|
||||
package org.linphone;
|
||||
|
||||
import org.linphone.core.Log;
|
||||
import org.linphone.mediastream.video.capture.hwconf.Hacks;
|
||||
|
||||
import android.app.Activity;
|
||||
|
@ -35,9 +36,12 @@ public class SoftVolumeActivity extends Activity {
|
|||
|
||||
public boolean onKeyDown(int keyCode, KeyEvent event) {
|
||||
if ((keyCode == KeyEvent.KEYCODE_VOLUME_UP || keyCode == KeyEvent.KEYCODE_VOLUME_DOWN)
|
||||
&& (Hacks.needSoftvolume() || LinphonePreferenceManager.getInstance().useSoftvolume())) {
|
||||
&& (Hacks.needSoftvolume() || LinphonePreferenceManager.getInstance(this).useSoftvolume())) {
|
||||
|
||||
if (keyCode == KeyEvent.KEYCODE_VOLUME_UP) {
|
||||
if (!LinphoneService.isReady()) {
|
||||
Log.i("Couldn't change softvolume has service is not running");
|
||||
return true;
|
||||
} else if (keyCode == KeyEvent.KEYCODE_VOLUME_UP) {
|
||||
LinphoneManager.getInstance().adjustSoftwareVolume(1);
|
||||
} else if (keyCode == KeyEvent.KEYCODE_VOLUME_DOWN) {
|
||||
LinphoneManager.getInstance().adjustSoftwareVolume(-1);
|
||||
|
|
|
@ -19,21 +19,7 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
|
|||
package org.linphone.core;
|
||||
|
||||
import java.io.File;
|
||||
import java.io.FileInputStream;
|
||||
import java.io.IOException;
|
||||
import java.security.InvalidAlgorithmParameterException;
|
||||
import java.security.KeyStore;
|
||||
import java.security.KeyStoreException;
|
||||
import java.security.NoSuchAlgorithmException;
|
||||
import java.security.cert.CertificateException;
|
||||
import java.security.cert.PKIXParameters;
|
||||
import java.security.cert.TrustAnchor;
|
||||
import java.security.cert.X509Certificate;
|
||||
import java.util.Iterator;
|
||||
|
||||
import javax.net.ssl.TrustManager;
|
||||
import javax.net.ssl.TrustManagerFactory;
|
||||
import javax.net.ssl.X509TrustManager;
|
||||
|
||||
import org.linphone.mediastream.Version;
|
||||
|
||||
|
|
|
@ -23,9 +23,6 @@ import java.io.IOException;
|
|||
import java.util.List;
|
||||
import java.util.Vector;
|
||||
|
||||
import org.linphone.LinphoneManager;
|
||||
import org.linphone.mediastream.video.AndroidVideoWindowImpl;
|
||||
|
||||
|
||||
class LinphoneCoreImpl implements LinphoneCore {
|
||||
|
||||
|
|
406
submodules/externals/build/libvpx/Android.mk
vendored
406
submodules/externals/build/libvpx/Android.mk
vendored
|
@ -4,215 +4,233 @@ include $(CLEAR_VARS)
|
|||
|
||||
LOCAL_MODULE := libvpx
|
||||
|
||||
LOCAL_CFLAGS := -O3 -fPIC -D_FORTIFY_SOURCE=0 -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -Wall -Wdeclaration-after-statement -Wdisabled-optimization -Wpointer-arith -Wtype-limits -Wcast-qual -Wno-unused-function
|
||||
|
||||
LOCAL_ARM_MODE := arm
|
||||
ASM := s
|
||||
ASM := .s
|
||||
|
||||
# vpx subfolder [vpx_codec.mk]
|
||||
LOCAL_SRC_FILES = \
|
||||
vpx/src/vpx_decoder.c \
|
||||
vpx/src/vpx_decoder_compat.c \
|
||||
vpx/src/vpx_encoder.c \
|
||||
vpx/src/vpx_codec.c \
|
||||
vpx/src/vpx_image.c
|
||||
|
||||
# vp8 subfolder [vp8_common.mk]
|
||||
LOCAL_SRC_FILES += \
|
||||
vp8/common/alloccommon.c \
|
||||
vp8/common/blockd.c \
|
||||
vp8/common/debugmodes.c \
|
||||
vp8/common/defaultcoefcounts.c \
|
||||
vp8/common/entropy.c \
|
||||
vp8/common/entropymode.c \
|
||||
vp8/common/entropymv.c \
|
||||
vp8/common/extend.c \
|
||||
vp8/common/filter.c \
|
||||
vp8/common/findnearmv.c \
|
||||
vp8/common/generic/systemdependent.c \
|
||||
vp8/common/idctllm.c \
|
||||
vp8/common/invtrans.c \
|
||||
vp8/common/loopfilter.c \
|
||||
vp8/common/loopfilter_filters.c \
|
||||
vp8/common/mbpitch.c \
|
||||
vp8/common/modecont.c \
|
||||
vp8/common/modecontext.c \
|
||||
vp8/common/quant_common.c \
|
||||
vp8/common/recon.c \
|
||||
vp8/common/reconinter.c \
|
||||
vp8/common/reconintra.c \
|
||||
vp8/common/reconintra4x4.c \
|
||||
vp8/common/setupintrarecon.c \
|
||||
vp8/common/swapyv12buffer.c \
|
||||
vp8/common/treecoder.c \
|
||||
vp8/common/asm_com_offsets.c \
|
||||
vp8/common/arm/arm_systemdependent.c \
|
||||
vp8/common/arm/bilinearfilter_arm.c \
|
||||
vp8/common/arm/filter_arm.c \
|
||||
vp8/common/arm/loopfilter_arm.c \
|
||||
vp8/common/arm/reconintra_arm.c \
|
||||
vp8/common/arm/neon/recon_neon.c.neon
|
||||
### vpx_mem.mk
|
||||
MEM_SRCS = vpx_mem/vpx_mem.c
|
||||
|
||||
ASM_FILES = \
|
||||
vp8/common/arm/armv6/bilinearfilter_v6.$(ASM) \
|
||||
vp8/common/arm/armv6/copymem8x4_v6.$(ASM) \
|
||||
vp8/common/arm/armv6/copymem8x8_v6.$(ASM) \
|
||||
vp8/common/arm/armv6/copymem16x16_v6.$(ASM) \
|
||||
vp8/common/arm/armv6/dc_only_idct_add_v6.$(ASM) \
|
||||
vp8/common/arm/armv6/iwalsh_v6.$(ASM) \
|
||||
vp8/common/arm/armv6/filter_v6.$(ASM) \
|
||||
vp8/common/arm/armv6/idct_v6.$(ASM) \
|
||||
vp8/common/arm/armv6/loopfilter_v6.$(ASM) \
|
||||
vp8/common/arm/armv6/recon_v6.$(ASM) \
|
||||
vp8/common/arm/armv6/simpleloopfilter_v6.$(ASM) \
|
||||
vp8/common/arm/armv6/sixtappredict8x4_v6.$(ASM) \
|
||||
vp8/common/arm/neon/bilinearpredict4x4_neon.$(ASM).neon \
|
||||
vp8/common/arm/neon/bilinearpredict8x4_neon.$(ASM).neon \
|
||||
vp8/common/arm/neon/bilinearpredict8x8_neon.$(ASM).neon \
|
||||
vp8/common/arm/neon/bilinearpredict16x16_neon.$(ASM).neon \
|
||||
vp8/common/arm/neon/copymem8x4_neon.$(ASM).neon \
|
||||
vp8/common/arm/neon/copymem8x8_neon.$(ASM).neon \
|
||||
vp8/common/arm/neon/copymem16x16_neon.$(ASM).neon \
|
||||
vp8/common/arm/neon/dc_only_idct_add_neon.$(ASM).neon \
|
||||
vp8/common/arm/neon/iwalsh_neon.$(ASM).neon \
|
||||
vp8/common/arm/neon/loopfilter_neon.$(ASM).neon \
|
||||
vp8/common/arm/neon/loopfiltersimplehorizontaledge_neon.$(ASM).neon \
|
||||
vp8/common/arm/neon/loopfiltersimpleverticaledge_neon.$(ASM).neon \
|
||||
vp8/common/arm/neon/mbloopfilter_neon.$(ASM).neon \
|
||||
vp8/common/arm/neon/recon2b_neon.$(ASM).neon \
|
||||
vp8/common/arm/neon/recon4b_neon.$(ASM).neon \
|
||||
vp8/common/arm/neon/reconb_neon.$(ASM).neon \
|
||||
vp8/common/arm/neon/shortidct4x4llm_1_neon.$(ASM).neon \
|
||||
vp8/common/arm/neon/shortidct4x4llm_neon.$(ASM).neon \
|
||||
vp8/common/arm/neon/sixtappredict4x4_neon.$(ASM).neon \
|
||||
vp8/common/arm/neon/sixtappredict8x4_neon.$(ASM).neon \
|
||||
vp8/common/arm/neon/sixtappredict8x8_neon.$(ASM).neon \
|
||||
vp8/common/arm/neon/sixtappredict16x16_neon.$(ASM).neon \
|
||||
vp8/common/arm/neon/recon16x16mb_neon.$(ASM).neon \
|
||||
vp8/common/arm/neon/buildintrapredictorsmby_neon.$(ASM).neon \
|
||||
vp8/common/arm/neon/save_neon_reg.$(ASM).neon \
|
||||
### vpx_scale
|
||||
SCALE_SRCS = vpx_scale/generic/vpxscale.c
|
||||
SCALE_SRCS += vpx_scale/generic/yv12config.c
|
||||
SCALE_SRCS += vpx_scale/generic/yv12extend.c
|
||||
SCALE_SRCS += vpx_scale/generic/gen_scalers.c
|
||||
|
||||
# vp8 subfolder [vp8cx.mk]
|
||||
LOCAL_SRC_FILES += \
|
||||
vp8/vp8_cx_iface.c \
|
||||
vp8/encoder/asm_enc_offsets.c \
|
||||
vp8/encoder/bitstream.c \
|
||||
vp8/encoder/dct.c \
|
||||
vp8/encoder/encodeframe.c \
|
||||
vp8/encoder/encodeintra.c \
|
||||
vp8/encoder/encodemb.c \
|
||||
vp8/encoder/encodemv.c \
|
||||
vp8/encoder/ethreading.c \
|
||||
vp8/encoder/generic/csystemdependent.c \
|
||||
vp8/encoder/lookahead.c \
|
||||
vp8/encoder/mcomp.c \
|
||||
vp8/encoder/modecosts.c \
|
||||
vp8/encoder/onyx_if.c \
|
||||
vp8/encoder/pickinter.c \
|
||||
vp8/encoder/picklpf.c \
|
||||
vp8/encoder/psnr.c \
|
||||
vp8/encoder/quantize.c \
|
||||
vp8/encoder/ratectrl.c \
|
||||
vp8/encoder/rdopt.c \
|
||||
vp8/encoder/sad_c.c \
|
||||
vp8/encoder/segmentation.c \
|
||||
vp8/encoder/tokenize.c \
|
||||
vp8/encoder/treewriter.c \
|
||||
vp8/encoder/variance_c.c
|
||||
#arm
|
||||
SCALE_SRCS += vpx_scale/arm/scalesystemdependent.c
|
||||
|
||||
# vp8 subfolder [vp8cx_arm.mk]
|
||||
LOCAL_SRC_FILES += \
|
||||
vp8/encoder/arm/arm_csystemdependent.c \
|
||||
vp8/encoder/arm/quantize_arm.c \
|
||||
vp8/encoder/arm/picklpf_arm.c \
|
||||
vp8/encoder/arm/dct_arm.c \
|
||||
vp8/encoder/arm/variance_arm.c \
|
||||
vp8/encoder/arm/boolhuff_arm.c
|
||||
#neon
|
||||
SCALE_SRCS += vpx_scale/arm/neon/vp8_vpxyv12_copyframe_func_neon$(ASM).neon
|
||||
SCALE_SRCS += vpx_scale/arm/neon/vp8_vpxyv12_copyframeyonly_neon$(ASM).neon
|
||||
SCALE_SRCS += vpx_scale/arm/neon/vp8_vpxyv12_copysrcframe_func_neon$(ASM).neon
|
||||
SCALE_SRCS += vpx_scale/arm/neon/vp8_vpxyv12_extendframeborders_neon$(ASM).neon
|
||||
SCALE_SRCS += vpx_scale/arm/neon/yv12extend_arm.c
|
||||
|
||||
ASM_FILES += \
|
||||
vp8/encoder/arm/armv5te/boolhuff_armv5te.$(ASM) \
|
||||
vp8/encoder/arm/armv5te/vp8_packtokens_armv5.$(ASM) \
|
||||
vp8/encoder/arm/armv5te/vp8_packtokens_mbrow_armv5.$(ASM) \
|
||||
vp8/encoder/arm/armv5te/vp8_packtokens_partitions_armv5.$(ASM) \
|
||||
vp8/encoder/arm/armv6/vp8_subtract_armv6.$(ASM) \
|
||||
vp8/encoder/arm/armv6/vp8_fast_fdct4x4_armv6.$(ASM) \
|
||||
vp8/encoder/arm/armv6/vp8_fast_quantize_b_armv6.$(ASM) \
|
||||
vp8/encoder/arm/armv6/vp8_sad16x16_armv6.$(ASM) \
|
||||
vp8/encoder/arm/armv6/vp8_variance16x16_armv6.$(ASM) \
|
||||
vp8/encoder/arm/armv6/vp8_variance_halfpixvar16x16_h_armv6.$(ASM) \
|
||||
vp8/encoder/arm/armv6/vp8_variance_halfpixvar16x16_v_armv6.$(ASM) \
|
||||
vp8/encoder/arm/armv6/vp8_variance_halfpixvar16x16_hv_armv6.$(ASM) \
|
||||
vp8/encoder/arm/armv6/vp8_mse16x16_armv6.$(ASM) \
|
||||
vp8/encoder/arm/armv6/vp8_variance8x8_armv6.$(ASM) \
|
||||
vp8/encoder/arm/armv6/walsh_v6.$(ASM) \
|
||||
vp8/encoder/arm/neon/fastfdct4x4_neon.$(ASM).neon \
|
||||
vp8/encoder/arm/neon/fastfdct8x4_neon.$(ASM).neon \
|
||||
vp8/encoder/arm/neon/fastquantizeb_neon.$(ASM).neon \
|
||||
vp8/encoder/arm/neon/sad8_neon.$(ASM).neon \
|
||||
vp8/encoder/arm/neon/sad16_neon.$(ASM).neon \
|
||||
vp8/encoder/arm/neon/shortfdct_neon.$(ASM).neon \
|
||||
vp8/encoder/arm/neon/subtract_neon.$(ASM).neon \
|
||||
vp8/encoder/arm/neon/variance_neon.$(ASM).neon \
|
||||
vp8/encoder/arm/neon/vp8_mse16x16_neon.$(ASM).neon \
|
||||
vp8/encoder/arm/neon/vp8_subpixelvariance8x8_neon.$(ASM).neon \
|
||||
vp8/encoder/arm/neon/vp8_subpixelvariance16x16_neon.$(ASM).neon \
|
||||
vp8/encoder/arm/neon/vp8_subpixelvariance16x16s_neon.$(ASM).neon \
|
||||
vp8/encoder/arm/neon/vp8_memcpy_neon.$(ASM).neon \
|
||||
vp8/encoder/arm/neon/vp8_shortwalsh4x4_neon.$(ASM).neon \
|
||||
### vp8cx_arm
|
||||
#File list for arm
|
||||
# encoder
|
||||
VP8_CX_SRCS = vp8/encoder/arm/arm_csystemdependent.c
|
||||
|
||||
# vp8 subfolder [vp8dx.mk]
|
||||
LOCAL_SRC_FILES += \
|
||||
vp8/vp8_dx_iface.c \
|
||||
vp8/decoder/dboolhuff.c \
|
||||
vp8/decoder/decodemv.c \
|
||||
vp8/decoder/decodframe.c \
|
||||
vp8/decoder/dequantize.c \
|
||||
vp8/decoder/detokenize.c \
|
||||
vp8/decoder/error_concealment.c \
|
||||
vp8/decoder/generic/dsystemdependent.c \
|
||||
vp8/decoder/onyxd_if.c \
|
||||
vp8/decoder/idct_blk.c \
|
||||
vp8/decoder/threading.c \
|
||||
vp8/decoder/reconintra_mt.c
|
||||
VP8_CX_SRCS += vp8/encoder/arm/dct_arm.c
|
||||
VP8_CX_SRCS += vp8/encoder/arm/quantize_arm.c
|
||||
VP8_CX_SRCS += vp8/encoder/arm/variance_arm.c
|
||||
|
||||
# vp8 subfolder [vp8dx_arm.mk]
|
||||
LOCAL_SRC_FILES += \
|
||||
vp8/decoder/arm/arm_dsystemdependent.c \
|
||||
vp8/decoder/asm_dec_offsets.c \
|
||||
vp8/decoder/arm/dequantize_arm.c \
|
||||
vp8/decoder/arm/neon/idct_blk_neon.c.neon \
|
||||
vp8/decoder/arm/armv6/idct_blk_v6.c
|
||||
#File list for armv5te
|
||||
# encoder
|
||||
VP8_CX_SRCS += vp8/encoder/arm/boolhuff_arm.c
|
||||
VP8_CX_SRCS += vp8/encoder/arm/armv5te/boolhuff_armv5te$(ASM)
|
||||
VP8_CX_SRCS += vp8/encoder/arm/armv5te/vp8_packtokens_armv5$(ASM)
|
||||
VP8_CX_SRCS += vp8/encoder/arm/armv5te/vp8_packtokens_mbrow_armv5$(ASM)
|
||||
VP8_CX_SRCS += vp8/encoder/arm/armv5te/vp8_packtokens_partitions_armv5$(ASM)
|
||||
|
||||
ASM_FILES += \
|
||||
vp8/decoder/arm/neon/idct_dequant_dc_full_2x_neon.$(ASM).neon \
|
||||
vp8/decoder/arm/neon/idct_dequant_dc_0_2x_neon.$(ASM).neon \
|
||||
vp8/decoder/arm/neon/dequant_idct_neon.$(ASM).neon \
|
||||
vp8/decoder/arm/neon/idct_dequant_full_2x_neon.$(ASM).neon \
|
||||
vp8/decoder/arm/neon/idct_dequant_0_2x_neon.$(ASM).neon \
|
||||
vp8/decoder/arm/neon/dequantizeb_neon.$(ASM).neon \
|
||||
vp8/decoder/arm/armv6/dequant_dc_idct_v6.$(ASM) \
|
||||
vp8/decoder/arm/armv6/dequant_idct_v6.$(ASM) \
|
||||
vp8/decoder/arm/armv6/dequantize_v6.$(ASM)
|
||||
#File list for armv6
|
||||
# encoder
|
||||
VP8_CX_SRCS += vp8/encoder/arm/armv6/vp8_subtract_armv6$(ASM)
|
||||
VP8_CX_SRCS += vp8/encoder/arm/armv6/vp8_short_fdct4x4_armv6$(ASM)
|
||||
VP8_CX_SRCS += vp8/encoder/arm/armv6/vp8_fast_quantize_b_armv6$(ASM)
|
||||
VP8_CX_SRCS += vp8/encoder/arm/armv6/vp8_sad16x16_armv6$(ASM)
|
||||
VP8_CX_SRCS += vp8/encoder/arm/armv6/vp8_variance16x16_armv6$(ASM)
|
||||
VP8_CX_SRCS += vp8/encoder/arm/armv6/vp8_variance_halfpixvar16x16_h_armv6$(ASM)
|
||||
VP8_CX_SRCS += vp8/encoder/arm/armv6/vp8_variance_halfpixvar16x16_v_armv6$(ASM)
|
||||
VP8_CX_SRCS += vp8/encoder/arm/armv6/vp8_variance_halfpixvar16x16_hv_armv6$(ASM)
|
||||
VP8_CX_SRCS += vp8/encoder/arm/armv6/vp8_mse16x16_armv6$(ASM)
|
||||
VP8_CX_SRCS += vp8/encoder/arm/armv6/vp8_variance8x8_armv6$(ASM)
|
||||
VP8_CX_SRCS += vp8/encoder/arm/armv6/walsh_v6$(ASM)
|
||||
|
||||
# vpx_mem subfolder [vpx_mem.mk]
|
||||
LOCAL_SRC_FILES += vpx_mem/vpx_mem.c
|
||||
#File list for neon
|
||||
# encoder
|
||||
VP8_CX_SRCS += vp8/encoder/arm/neon/fastquantizeb_neon$(ASM).neon
|
||||
VP8_CX_SRCS += vp8/encoder/arm/neon/picklpf_arm.c.neon
|
||||
VP8_CX_SRCS += vp8/encoder/arm/neon/sad8_neon$(ASM).neon
|
||||
VP8_CX_SRCS += vp8/encoder/arm/neon/sad16_neon$(ASM).neon
|
||||
VP8_CX_SRCS += vp8/encoder/arm/neon/shortfdct_neon$(ASM).neon
|
||||
VP8_CX_SRCS += vp8/encoder/arm/neon/subtract_neon$(ASM).neon
|
||||
VP8_CX_SRCS += vp8/encoder/arm/neon/variance_neon$(ASM).neon
|
||||
VP8_CX_SRCS += vp8/encoder/arm/neon/vp8_mse16x16_neon$(ASM).neon
|
||||
VP8_CX_SRCS += vp8/encoder/arm/neon/vp8_subpixelvariance8x8_neon$(ASM).neon
|
||||
VP8_CX_SRCS += vp8/encoder/arm/neon/vp8_subpixelvariance16x16_neon$(ASM).neon
|
||||
VP8_CX_SRCS += vp8/encoder/arm/neon/vp8_subpixelvariance16x16s_neon$(ASM).neon
|
||||
VP8_CX_SRCS += vp8/encoder/arm/neon/vp8_memcpy_neon$(ASM).neon
|
||||
VP8_CX_SRCS += vp8/encoder/arm/neon/vp8_shortwalsh4x4_neon$(ASM).neon
|
||||
|
||||
# vpx_scale subfolder [vpx_scale.mk]
|
||||
LOCAL_SRC_FILES += \
|
||||
vpx_scale/generic/vpxscale.c \
|
||||
vpx_scale/generic/yv12config.c \
|
||||
vpx_scale/generic/yv12extend.c \
|
||||
vpx_scale/arm/scalesystemdependent.c \
|
||||
vpx_scale/arm/yv12extend_arm.c \
|
||||
vpx_scale/generic/scalesystemdependent.c
|
||||
ASM_FILES += \
|
||||
vpx_scale/arm/neon/vp8_vpxyv12_copyframe_func_neon.$(ASM).neon \
|
||||
vpx_scale/arm/neon/vp8_vpxyv12_copyframeyonly_neon.$(ASM).neon \
|
||||
vpx_scale/arm/neon/vp8_vpxyv12_copysrcframe_func_neon.$(ASM).neon \
|
||||
vpx_scale/arm/neon/vp8_vpxyv12_extendframeborders_neon.$(ASM).neon \
|
||||
### vp8_cx
|
||||
VP8_CX_SRCS += vp8/vp8_cx_iface.c
|
||||
|
||||
VP8_CX_SRCS += vp8/encoder/asm_enc_offsets.c
|
||||
VP8_CX_SRCS += vp8/encoder/bitstream.c
|
||||
VP8_CX_SRCS += vp8/encoder/dct.c
|
||||
VP8_CX_SRCS += vp8/encoder/encodeframe.c
|
||||
VP8_CX_SRCS += vp8/encoder/encodeintra.c
|
||||
VP8_CX_SRCS += vp8/encoder/encodemb.c
|
||||
VP8_CX_SRCS += vp8/encoder/encodemv.c
|
||||
#VP8_CX_SRCS += vp8/encoder/ethreading.c
|
||||
VP8_CX_SRCS += vp8/encoder/generic/csystemdependent.c
|
||||
VP8_CX_SRCS += vp8/encoder/lookahead.c
|
||||
VP8_CX_SRCS += vp8/encoder/mcomp.c
|
||||
VP8_CX_SRCS += vp8/encoder/modecosts.c
|
||||
VP8_CX_SRCS += vp8/encoder/onyx_if.c
|
||||
VP8_CX_SRCS += vp8/encoder/pickinter.c
|
||||
VP8_CX_SRCS += vp8/encoder/picklpf.c
|
||||
VP8_CX_SRCS += vp8/encoder/psnr.c
|
||||
VP8_CX_SRCS += vp8/encoder/quantize.c
|
||||
VP8_CX_SRCS += vp8/encoder/ratectrl.c
|
||||
VP8_CX_SRCS += vp8/encoder/rdopt.c
|
||||
VP8_CX_SRCS += vp8/encoder/sad_c.c
|
||||
VP8_CX_SRCS += vp8/encoder/segmentation.c
|
||||
VP8_CX_SRCS += vp8/encoder/tokenize.c
|
||||
VP8_CX_SRCS += vp8/encoder/treewriter.c
|
||||
VP8_CX_SRCS += vp8/encoder/variance_c.c
|
||||
|
||||
### vp8_common
|
||||
VP8_COMMON_SRCS = vp8/common/alloccommon.c
|
||||
VP8_COMMON_SRCS += vp8/common/asm_com_offsets.c
|
||||
VP8_COMMON_SRCS += vp8/common/blockd.c
|
||||
VP8_COMMON_SRCS += vp8/common/debugmodes.c
|
||||
VP8_COMMON_SRCS += vp8/common/entropy.c
|
||||
VP8_COMMON_SRCS += vp8/common/entropymode.c
|
||||
VP8_COMMON_SRCS += vp8/common/entropymv.c
|
||||
VP8_COMMON_SRCS += vp8/common/extend.c
|
||||
VP8_COMMON_SRCS += vp8/common/filter.c
|
||||
VP8_COMMON_SRCS += vp8/common/findnearmv.c
|
||||
VP8_COMMON_SRCS += vp8/common/generic/systemdependent.c
|
||||
VP8_COMMON_SRCS += vp8/common/idctllm.c
|
||||
VP8_COMMON_SRCS += vp8/common/invtrans.c
|
||||
VP8_COMMON_SRCS += vp8/common/loopfilter.c
|
||||
VP8_COMMON_SRCS += vp8/common/loopfilter_filters.c
|
||||
VP8_COMMON_SRCS += vp8/common/mbpitch.c
|
||||
VP8_COMMON_SRCS += vp8/common/modecont.c
|
||||
VP8_COMMON_SRCS += vp8/common/modecontext.c
|
||||
VP8_COMMON_SRCS += vp8/common/quant_common.c
|
||||
VP8_COMMON_SRCS += vp8/common/recon.c
|
||||
VP8_COMMON_SRCS += vp8/common/reconinter.c
|
||||
VP8_COMMON_SRCS += vp8/common/reconintra.c
|
||||
VP8_COMMON_SRCS += vp8/common/reconintra4x4.c
|
||||
VP8_COMMON_SRCS += vp8/common/setupintrarecon.c
|
||||
VP8_COMMON_SRCS += vp8/common/swapyv12buffer.c
|
||||
VP8_COMMON_SRCS += vp8/common/treecoder.c
|
||||
|
||||
# common (c)
|
||||
VP8_COMMON_SRCS += vp8/common/arm/arm_systemdependent.c
|
||||
VP8_COMMON_SRCS += vp8/common/arm/bilinearfilter_arm.c
|
||||
VP8_COMMON_SRCS += vp8/common/arm/filter_arm.c
|
||||
VP8_COMMON_SRCS += vp8/common/arm/loopfilter_arm.c
|
||||
VP8_COMMON_SRCS += vp8/common/arm/reconintra_arm.c
|
||||
|
||||
# common (armv6)
|
||||
VP8_COMMON_SRCS += vp8/common/arm/armv6/bilinearfilter_v6$(ASM)
|
||||
VP8_COMMON_SRCS += vp8/common/arm/armv6/copymem8x4_v6$(ASM)
|
||||
VP8_COMMON_SRCS += vp8/common/arm/armv6/copymem8x8_v6$(ASM)
|
||||
VP8_COMMON_SRCS += vp8/common/arm/armv6/copymem16x16_v6$(ASM)
|
||||
VP8_COMMON_SRCS += vp8/common/arm/armv6/dc_only_idct_add_v6$(ASM)
|
||||
VP8_COMMON_SRCS += vp8/common/arm/armv6/iwalsh_v6$(ASM)
|
||||
VP8_COMMON_SRCS += vp8/common/arm/armv6/filter_v6$(ASM)
|
||||
VP8_COMMON_SRCS += vp8/common/arm/armv6/idct_v6$(ASM)
|
||||
VP8_COMMON_SRCS += vp8/common/arm/armv6/loopfilter_v6$(ASM)
|
||||
VP8_COMMON_SRCS += vp8/common/arm/armv6/recon_v6$(ASM)
|
||||
VP8_COMMON_SRCS += vp8/common/arm/armv6/simpleloopfilter_v6$(ASM)
|
||||
VP8_COMMON_SRCS += vp8/common/arm/armv6/sixtappredict8x4_v6$(ASM)
|
||||
|
||||
# common (neon)
|
||||
VP8_COMMON_SRCS += vp8/common/arm/neon/bilinearpredict4x4_neon$(ASM).neon
|
||||
VP8_COMMON_SRCS += vp8/common/arm/neon/bilinearpredict8x4_neon$(ASM).neon
|
||||
VP8_COMMON_SRCS += vp8/common/arm/neon/bilinearpredict8x8_neon$(ASM).neon
|
||||
VP8_COMMON_SRCS += vp8/common/arm/neon/bilinearpredict16x16_neon$(ASM).neon
|
||||
VP8_COMMON_SRCS += vp8/common/arm/neon/copymem8x4_neon$(ASM).neon
|
||||
VP8_COMMON_SRCS += vp8/common/arm/neon/copymem8x8_neon$(ASM).neon
|
||||
VP8_COMMON_SRCS += vp8/common/arm/neon/copymem16x16_neon$(ASM).neon
|
||||
VP8_COMMON_SRCS += vp8/common/arm/neon/dc_only_idct_add_neon$(ASM).neon
|
||||
VP8_COMMON_SRCS += vp8/common/arm/neon/iwalsh_neon$(ASM).neon
|
||||
VP8_COMMON_SRCS += vp8/common/arm/neon/loopfilter_neon$(ASM).neon
|
||||
VP8_COMMON_SRCS += vp8/common/arm/neon/loopfiltersimplehorizontaledge_neon$(ASM).neon
|
||||
VP8_COMMON_SRCS += vp8/common/arm/neon/loopfiltersimpleverticaledge_neon$(ASM).neon
|
||||
VP8_COMMON_SRCS += vp8/common/arm/neon/mbloopfilter_neon$(ASM).neon
|
||||
VP8_COMMON_SRCS += vp8/common/arm/neon/recon2b_neon$(ASM).neon
|
||||
VP8_COMMON_SRCS += vp8/common/arm/neon/recon4b_neon$(ASM).neon
|
||||
VP8_COMMON_SRCS += vp8/common/arm/neon/reconb_neon$(ASM).neon
|
||||
VP8_COMMON_SRCS += vp8/common/arm/neon/shortidct4x4llm_1_neon$(ASM).neon
|
||||
VP8_COMMON_SRCS += vp8/common/arm/neon/shortidct4x4llm_neon$(ASM).neon
|
||||
VP8_COMMON_SRCS += vp8/common/arm/neon/sixtappredict4x4_neon$(ASM).neon
|
||||
VP8_COMMON_SRCS += vp8/common/arm/neon/sixtappredict8x4_neon$(ASM).neon
|
||||
VP8_COMMON_SRCS += vp8/common/arm/neon/sixtappredict8x8_neon$(ASM).neon
|
||||
VP8_COMMON_SRCS += vp8/common/arm/neon/sixtappredict16x16_neon$(ASM).neon
|
||||
VP8_COMMON_SRCS += vp8/common/arm/neon/recon16x16mb_neon$(ASM).neon
|
||||
VP8_COMMON_SRCS += vp8/common/arm/neon/buildintrapredictorsmby_neon$(ASM).neon
|
||||
VP8_COMMON_SRCS += vp8/common/arm/neon/save_neon_reg$(ASM).neon
|
||||
VP8_COMMON_SRCS += vp8/common/arm/neon/recon_neon.c.neon
|
||||
|
||||
### vp8dx_arm
|
||||
VP8_DX_SRCS = vp8/decoder/arm/arm_dsystemdependent.c
|
||||
VP8_DX_SRCS += vp8/decoder/arm/dequantize_arm.c
|
||||
|
||||
#File list for armv6
|
||||
VP8_DX_SRCS += vp8/decoder/arm/armv6/dequant_dc_idct_v6$(ASM)
|
||||
VP8_DX_SRCS += vp8/decoder/arm/armv6/dequant_idct_v6$(ASM)
|
||||
VP8_DX_SRCS += vp8/decoder/arm/armv6/dequantize_v6$(ASM)
|
||||
VP8_DX_SRCS += vp8/decoder/arm/armv6/idct_blk_v6.c
|
||||
|
||||
#File list for neon
|
||||
VP8_DX_SRCS += vp8/decoder/arm/neon/idct_dequant_dc_full_2x_neon$(ASM).neon
|
||||
VP8_DX_SRCS += vp8/decoder/arm/neon/idct_dequant_dc_0_2x_neon$(ASM).neon
|
||||
VP8_DX_SRCS += vp8/decoder/arm/neon/dequant_idct_neon$(ASM).neon
|
||||
VP8_DX_SRCS += vp8/decoder/arm/neon/idct_dequant_full_2x_neon$(ASM).neon
|
||||
VP8_DX_SRCS += vp8/decoder/arm/neon/idct_dequant_0_2x_neon$(ASM).neon
|
||||
VP8_DX_SRCS += vp8/decoder/arm/neon/dequantizeb_neon$(ASM).neon
|
||||
VP8_DX_SRCS += vp8/decoder/arm/neon/idct_blk_neon.c.neon
|
||||
|
||||
### vp8dx
|
||||
VP8_DX_SRCS += vp8/vp8_dx_iface.c
|
||||
VP8_DX_SRCS += vp8/decoder/asm_dec_offsets.c
|
||||
VP8_DX_SRCS += vp8/decoder/dboolhuff.c
|
||||
VP8_DX_SRCS += vp8/decoder/decodemv.c
|
||||
VP8_DX_SRCS += vp8/decoder/decodframe.c
|
||||
VP8_DX_SRCS += vp8/decoder/dequantize.c
|
||||
VP8_DX_SRCS += vp8/decoder/detokenize.c
|
||||
VP8_DX_SRCS += vp8/decoder/error_concealment.c
|
||||
VP8_DX_SRCS += vp8/decoder/generic/dsystemdependent.c
|
||||
VP8_DX_SRCS += vp8/decoder/onyxd_if.c
|
||||
#VP8_DX_SRCS += vp8/decoder/threading.c
|
||||
VP8_DX_SRCS += vp8/decoder/idct_blk.c
|
||||
#VP8_DX_SRCS += vp8/decoder/reconintra_mt.c
|
||||
|
||||
### vpx_codec
|
||||
API_SRCS = vpx/src/vpx_decoder.c
|
||||
API_SRCS += vpx/src/vpx_decoder_compat.c
|
||||
API_SRCS += vpx/src/vpx_encoder.c
|
||||
API_SRCS += vpx/src/vpx_codec.c
|
||||
API_SRCS += vpx/src/vpx_image.c
|
||||
|
||||
LOCAL_SRC_FILES = $(MEM_SRCS)
|
||||
LOCAL_SRC_FILES += $(SCALE_SRCS)
|
||||
LOCAL_SRC_FILES += $(VP8_CX_SRCS)
|
||||
LOCAL_SRC_FILES += $(VP8_COMMON_SRCS)
|
||||
LOCAL_SRC_FILES += $(VP8_DX_SRCS)
|
||||
LOCAL_SRC_FILES += $(API_SRCS)
|
||||
|
||||
LOCAL_SRC_FILES += vpx_ports/arm_cpudetect.c
|
||||
|
||||
LOCAL_SRC_FILES += $(ASM_FILES)
|
||||
|
||||
LOCAL_MODULE_CLASS := STATIC_LIBRARIES
|
||||
|
||||
LOCAL_C_INCLUDES += \
|
||||
|
|
|
@ -51,7 +51,7 @@
|
|||
#define CONFIG_DC_RECON 0
|
||||
#define CONFIG_RUNTIME_CPU_DETECT 1
|
||||
#define CONFIG_POSTPROC 0
|
||||
#define CONFIG_MULTITHREAD 1
|
||||
#define CONFIG_MULTITHREAD 0
|
||||
#define CONFIG_INTERNAL_STATS 0
|
||||
#define CONFIG_VP8_ENCODER 1
|
||||
#define CONFIG_VP8_DECODER 1
|
||||
|
@ -63,6 +63,7 @@
|
|||
#define CONFIG_REALTIME_ONLY 1
|
||||
#define CONFIG_ERROR_CONCEALMENT 1
|
||||
#define CONFIG_SHARED 0
|
||||
#define CONFIG_STATIC 1
|
||||
#define CONFIG_SMALL 0
|
||||
#define CONFIG_POSTPROC_VISUALIZER 0
|
||||
#define CONFIG_OS_SUPPORT 1
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
#define VERSION_MAJOR 0
|
||||
#define VERSION_MINOR 9
|
||||
#define VERSION_PATCH 6
|
||||
#define VERSION_EXTRA ""
|
||||
#define VERSION_PATCH 7
|
||||
#define VERSION_EXTRA "p1-55-g6f9457e"
|
||||
#define VERSION_PACKED ((VERSION_MAJOR<<16)|(VERSION_MINOR<<8)|(VERSION_PATCH))
|
||||
#define VERSION_STRING_NOSP "v0.9.6"
|
||||
#define VERSION_STRING " v0.9.6"
|
||||
#define VERSION_STRING_NOSP "v0.9.7-p1-55-g6f9457e"
|
||||
#define VERSION_STRING " v0.9.7-p1-55-g6f9457e"
|
||||
|
|
2
submodules/externals/libvpx
vendored
2
submodules/externals/libvpx
vendored
|
@ -1 +1 @@
|
|||
Subproject commit b84e8f20c3aca0f2a65265cf704cc7c15a2c93d4
|
||||
Subproject commit 6f9457ec12a98b3aceefbcb79783c084268d0b36
|
|
@ -1 +1 @@
|
|||
Subproject commit 596efd16487e9e738a3d67e1f99dd4e4402d9aa8
|
||||
Subproject commit 9ea9dcadbd06bdc90cffc1e0e95d4e5d1c48fd8e
|
Loading…
Reference in a new issue