bytedeco / sample-projects

Sample project files for JavaCPP, JavaCPP Presets, and JavaCV
218 stars 173 forks source link

FFmpegFrameRecorder not working with Wowza.GoCoder #46

Open ChiragPaneliya opened 5 years ago

ChiragPaneliya commented 5 years ago

I am working with code from https://github.com/bytedeco/sample-projects/blob/master/JavaCV-android-example/app/src/main/java/org/bytedeco/javacv_android_example/record/RecordActivity.java. Demo working fine

I want to use wowza.gocoder with FFmpeg so by only add wowza dependancy in app.gradle then demo application crash at run time as screenshot eXhrW

here is my app.gradle file

apply plugin: 'com.android.application'

android {
    compileSdkVersion 29
    buildToolsVersion "29.0.1"
    defaultConfig {
        applicationId "com.cygnus.ffmpegframerecorderexample"
        minSdkVersion 21
        targetSdkVersion 29
        multiDexEnabled true
        versionCode 1
        versionName "1.0"
    }
    compileOptions {
        sourceCompatibility JavaVersion.VERSION_1_8
        targetCompatibility JavaVersion.VERSION_1_8
    }
    buildTypes {
        release {
            lintOptions {
                disable 'MissingTranslation'
                checkReleaseBuilds false
                abortOnError false
            }
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
        }
    }
    packagingOptions {
        exclude 'AndroidManifest.xml'
        exclude 'LICENSE.txt'
        exclude 'META-INF/LICENSE.txt'
        exclude 'META-INF/NOTICE.txt'
    }
    sourceSets {
        androidTest {
            assets.srcDirs = ['src/androidTest/assets']
        }
    }
    applicationVariants.all { variant ->
        variant.outputs.all {
            outputFileName = "${variant.name}-${variant.versionName}.apk"
        }
    }
    productFlavors {
    }
}

repositories {
    jcenter()
    flatDir {
        dirs 'libs'
    }
}

dependencies {
    implementation fileTree(dir: 'libs', include: ['*.jar'])
    implementation 'androidx.appcompat:appcompat:1.0.2'
    implementation 'androidx.fragment:fragment:1.0.0'
    implementation 'com.google.android.material:material:1.0.0'
    implementation 'com.google.android.material:material:1.0.0'
    implementation 'androidx.recyclerview:recyclerview:1.0.0'

    implementation 'androidx.constraintlayout:constraintlayout:1.1.3'
    testImplementation 'junit:junit:4.12'

    implementation 'com.jakewharton:butterknife:10.1.0'
    annotationProcessor 'com.jakewharton:butterknife-compiler:10.1.0'

    implementation 'androidx.constraintlayout:constraintlayout:1.1.3'
    implementation 'com.google.firebase:firebase-auth:18.1.0'
    implementation 'com.googlecode.libphonenumber:libphonenumber:8.9.8'
    implementation 'org.greenrobot:eventbus:3.1.1'
    implementation 'com.squareup.okhttp3:okhttp:3.12.1'
    implementation 'com.squareup.retrofit2:retrofit:2.5.0'
    implementation 'com.squareup.retrofit2:converter-gson:2.5.0'
    implementation 'com.squareup.picasso:picasso:2.71828'

    implementation 'com.github.bumptech.glide:glide:4.9.0'
    annotationProcessor 'com.github.bumptech.glide:compiler:4.9.0'
    implementation 'org.apache.commons:commons-lang3:3.3.2'
    implementation 'se.emilsjolander:stickylistheaders:2.5.1'
    implementation 'joda-time:joda-time:2.5'
    implementation 'com.stripe:stripe-android:1.0.0'
    implementation 'com.facebook.android:facebook-android-sdk:4.42.0'
    implementation 'com.google.code.findbugs:jsr305:3.0.2'
    implementation 'com.pusher:pusher-java-client:1.6.0'
    androidTestImplementation 'androidx.test.espresso:espresso-core:3.2.0'
    androidTestImplementation 'com.android.support.test:testing-support-lib:0.1'
    androidTestImplementation 'info.cukes:cucumber-android:1.2.0@jar'
    androidTestImplementation 'info.cukes:cucumber-picocontainer:1.2.0'

    implementation(group: 'org.bytedeco', name: 'javacv-platform', version: '1.3') {
        exclude group: 'org.bytedeco.javacpp-presets'
    }

    implementation group: 'org.bytedeco', name: 'javacv', version: '1.3.1'
    implementation group: 'org.bytedeco.javacpp-presets', name: 'ffmpeg-platform', version: '3.2.1-1.3'

    //implementation 'com.wowza.gocoder.sdk.android:com.wowza.gocoder.sdk:2.0.0@aar'//sdf

    //implementation 'com.vxg.mediasdk:playersdk:2.0.140'//sdf
    implementation 'com.iceteck.silicompressorr:silicompressor:2.2.2'
}

above app Gradle working file except comment com.wowza.gocoder. if I uncomment file and as use recording I got error run time as define above even if I done write any code related to wowza.gocoder.

saudet commented 5 years ago

Try again with JavaCV 1.5.1. Maybe this is something that's been fixed.

ChiragPaneliya commented 5 years ago

Hey @saudet nice to your replay, I will check and post conclusion of latest lib.

ChiragPaneliya commented 5 years ago

Hey @saudet , I am able to make latest version

 implementation('org.bytedeco:javacv-platform:1.4.4') {
        exclude group: 'org.bytedeco.javacpp-presets'
    }
    // javacpp and ffmpeg
    implementation group: 'org.bytedeco.javacpp-presets', name: 'ffmpeg', version: '4.1-1.4.4'
    implementation group: 'org.bytedeco.javacpp-presets', name: 'ffmpeg', version: '4.1-1.4.4', classifier: 'android-arm'
    implementation group: 'org.bytedeco.javacpp-presets', name: 'ffmpeg', version: '4.1-1.4.4', classifier: 'android-x86'
    implementation group: 'org.bytedeco.javacpp-presets', name: 'opencv', version: '3.4.2-1.4.2'
    implementation group: 'org.bytedeco.javacpp-presets', name: 'opencv', version: '3.4.2-1.4.2', classifier: 'android-arm'
    implementation group: 'org.bytedeco.javacpp-presets', name: 'opencv', version: '3.4.2-1.4.2', classifier: 'android-x86'

but still same error

saudet commented 4 years ago

Please give it a try with the new platform plugin of Gradle JavaCPP: https://github.com/bytedeco/gradle-javacpp#the-platform-plugin