Skip to content

Instantly share code, notes, and snippets.

View mikedawson's full-sized avatar

Mike Dawson mikedawson

View GitHub Profile
package com.ustadmobile.core.domain.compress.video
import com.ustadmobile.core.domain.compress.CompressParams
import com.ustadmobile.core.domain.compress.CompressProgressUpdate
import com.ustadmobile.core.domain.compress.CompressResult
import com.ustadmobile.core.domain.compress.CompressUseCase
import com.ustadmobile.core.domain.compress.CompressionLevel
import com.ustadmobile.core.domain.extractmediametadata.ExtractMediaMetadataUseCase
import com.ustadmobile.core.ext.requireExtension
import com.ustadmobile.core.util.UMFileUtil
@mikedawson
mikedawson / h264-vlc-encode
Created April 5, 2024 19:56
Use VLC command line to transcode file to h264 video
/usr/bin/vlc -I dummy --no-repeat --no-loop -vv inputfile.extension --sout='#transcode{vcodec=h264,acodec=mp4a,vb=500,ab=96,deinterlace}:standard{mux=mp4,access=file,dst=output.mp4}' vlc://quit
@mikedawson
mikedawson / UnhiddenSoftApConfigurationBuilder.kt
Created July 6, 2023 13:41
Android 13+ LocalOnlyHotspot custom config
/**
* Reflection workaround to access hidden SoftApConfiguration.Builder so it can be used to set
* LocalOnlyHotspot on Android 13+
*
* LocalOnlyHotspotConfig is generated here by Android:
* https://cs.android.com/android/platform/superproject/+/refs/heads/master:packages/modules/Wifi/service/java/com/android/server/wifi/WifiApConfigStore.java;drc=7bb4243a97d53af6cbd4de21bcc61556a758898b;l=423
*/
@RequiresApi(30)
class UnhiddenSoftApConfigurationBuilder {
@mikedawson
mikedawson / DateField
Created April 21, 2023 19:15
DateField for Jetpack compose using VisualTransformation with the option to open a calendar picker.
package com.ustadmobile.port.android.view.composable
import android.annotation.SuppressLint
import androidx.appcompat.app.AppCompatActivity
import androidx.compose.foundation.text.KeyboardOptions
import androidx.compose.material.Icon
import androidx.compose.material.IconButton
import androidx.compose.material.OutlinedTextField
import androidx.compose.material.Text
import androidx.compose.material.icons.Icons
@mikedawson
mikedawson / EasySortExample.kt
Last active December 23, 2022 14:43
Kotlin/JS wrapper for React-Easy-Sort
@file:JsModule("react-easy-sort")
@file:JsNonModule
/*
* Kotlin-JS wrapper for React Easy Sort https://github.com/ValentinH/react-easy-sort
*/
package com.ustadmobile.wrappers.reacteasysort
import dom.html.HTMLElement
@mikedawson
mikedawson / makecodec2samples.sh
Last active February 23, 2019 07:49
Script to generate a variety of samples of different codec2 files
#!/bin/bash
C2_HOME=/home/mike/src/codec2-svn/build_linux/src
VERSIONARGS=("--rate 2400"
"--rate 2400 --lpc 10 --lpcpf"
"--rate 3200")
INDIR=$1
OUTDIR=$2
@mikedawson
mikedawson / ConnectWithoutInternetGist.java
Last active July 21, 2019 12:24
Android connect to WiFi with no Internet
package com.ustadmobile.port.android.netwokmanager;
import android.annotation.TargetApi;
import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
import android.content.IntentFilter;
import android.net.ConnectivityManager;
import android.net.Network;
import android.net.NetworkCapabilities;