Skip to content

[HELP WANTED]: QNN testing request on compatible Snapdragon device (cannot test locally) #48

@XDcobra

Description

@XDcobra

Request Category

Performance Improvement

Problem

Hi! I implemented QNN support and prepared the app flow, but I cannot validate it end-to-end because I do not have a compatible Snapdragon device.

I would really appreciate help from someone with a QNN-capable Android phone to run a quick verification.

What I need tested

  1. Check if QNN is available on the device.
  2. Run STT with provider: "qnn".
  3. Confirm whether initialization and transcription succeed.
  4. Share logs/output + device details.

1) QNN availability check snippet

import {
  getQnnSupport,
  getDeviceQnnSoc,
  getAvailableProviders,
} from 'react-native-sherpa-onnx';
export async function debugQnnAvailability() {
  const [qnn, soc, providers] = await Promise.all([
    getQnnSupport(),
    getDeviceQnnSoc(),
    getAvailableProviders(),
  ]);
  console.log('QNN support:', qnn);
  // qnn shape: { providerCompiled, hasAccelerator, canInit }
  console.log('Device SoC:', soc);
  // soc shape: { soc: string | null, isSupported: boolean }
  console.log('Available ORT providers:', providers);
  // Example: ["CPU", "NNAPI", "QNN", "XNNPACK"]
}

Expected for a good QNN device:

qnn.canInit === true
providers contains "QNN"
soc.isSupported === true (SM8xxx)

2) STT with QNN snippet

import { createSTT } from 'react-native-sherpa-onnx/stt';
export async function testSttQnn() {
  // Replace these paths with your local model/audio paths.
  const modelPath = '/data/user/0/<your.app.id>/files/sherpa-onnx/models/qnn/<your-model-folder>';
  const audioPath = '/data/user/0/<your.app.id>/files/test_audio_16k.wav';
  const stt = await createSTT({
    modelPath: { type: 'file', path: modelPath },
    provider: 'qnn',
    numThreads: 1,
    debug: true,
  });
  try {
    const result = await stt.transcribeFile(audioPath);
    console.log('QNN STT result:', result?.text);
  } finally {
    await stt.destroy();
  }
}

Please include in your reply

  • Device model and Android version
  • Output of debugQnnAvailability()
  • Whether STT init with provider: "qnn" succeeds
  • Whether transcription succeeds and sample output text
  • Any crash/error stack traces

Proposed Solution

No response

Alternatives

No response

Metadata

Metadata

Assignees

No one assigned

    Labels

    help wantedExtra attention is needed

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions