Я пытаюсь добавить текст водяного знака в видео во время записи с использованием API Overlayeffect Camerax. />
Вместо этого я выбрал API Effect Camerax, потому что он обеспечивает большую гибкость, позволяя рендеринг в реальном времени непосредственно на предварительный просмотр и записанное видео. /> [*] Водяной знак появляется неправильно вращается .
Я применяю sensortobuffertransform , но, похоже, это не правильно выравнивает текст. Нужны ли мне дополнительные преобразования? < /Li>
< /ol>
// Simple CameraX Effect implementation
private val handler = Handler(Looper.getMainLooper())
private val overlayEffect = OverlayEffect(
VIDEO_CAPTURE or PREVIEW,
0,
handler
) {
Log.e("Error", "overlayEffect error")
}.apply {
val textPaint = Paint().apply {
color = Color.RED
textSize = 50f
}
clearOnDrawListener()
// Rendering the text on the overlay
setOnDrawListener {
it.overlayCanvas.drawColor(Color.TRANSPARENT, PorterDuff.Mode.CLEAR) // Clear previous frame
it.overlayCanvas.setMatrix(it.sensorToBufferTransform) // Apply transformation to align with the camera sensor
val text = "Watermark 12345"
val centerX = it.overlayCanvas.width / 2f
val centerY = it.overlayCanvas.height / 2f
it.overlayCanvas.drawText(text, centerX, centerY, textPaint) // Draw text at the center
true
}
}
private val useCaseGroupBuilder = UseCaseGroup.Builder()
.addUseCase(cameraPreviewUseCase)
.addUseCase(videoCapture)
.addEffect(overlayEffect) // Attach overlay effect to the camera pipeline
// Initialize and update the camera preview surface
private val cameraPreviewUseCase = Preview.Builder()
.setTargetRotation(Surface.ROTATION_0)
.build()
.apply {
setSurfaceProvider { newSurfaceRequest ->
_state.update { it.copy(surfaceRequest = newSurfaceRequest) }
}
}
// Compose UI: Rendering surface with CameraXViewfinder
state.surfaceRequest?.let { request ->
CameraXViewfinder(
surfaceRequest = request,
modifier = modifier,
implementationMode = ImplementationMode.EMBEDDED,
)
}
< /code>
скриншоты: < /strong>
Back Camera
Front Camera < /p>
Что я ищу:
Как я могу правильно поместить и ориентироваться как на передней, так и на спине?>
Подробнее здесь: https://stackoverflow.com/questions/795 ... effect-api
Как добавить текст/водяной знак в видео с использованием API Overlayeffect Camerax? ⇐ Android
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение
-
-
Как добавить водяной знак при экспорте HTML в файл документа с помощью html и css?
Anonymous » » в форуме CSS - 0 Ответы
- 14 Просмотры
-
Последнее сообщение Anonymous
-
-
-
Как добавить текстовый фоновый водяной знак в старый файл .doc с помощью Apache POI в Java
Anonymous » » в форуме JAVA - 0 Ответы
- 11 Просмотры
-
Последнее сообщение Anonymous
-