Android MediaPlayer проблема воспроизведения MP4 - PullRequest
1 голос
/ 08 ноября 2010

Я пытаюсь воспроизвести видео в формате mp4 в разрабатываемом приложении, однако каждый раз, когда я запускаю приложение в эмуляторе, и на некоторых устройствах я получаю эту ошибку:

ОШИБКА / MemoryHeapBase (34): ошибка открытия / dev / pmem_adsp: такого файла или каталога нет

Я понятия не имею, что это значит, и когда я погуглил, все эти ответы возникли, связанные с пользовательской сборкой ОС и тому подобными вещами, которые я не пытаюсь делать или вообще не хочу делать. Я просто хочу воспроизвести MP4-видео в моем приложении, какие-либо предложения? Кстати, на Nexus он работает нормально.

Вот код:

try {
        AssetFileDescriptor fileDesc = getVideoFileDescriptor();
        if (fileDesc != null) {
            player.setDataSource(fileDesc.getFileDescriptor(), fileDesc.getStartOffset(), fileDesc.getLength());

            fileDesc.close();

            player.prepare();

            player.setDisplay( holder );
            player.setOnCompletionListener( this );
            player.start();
        }

    }
    catch (Exception e) {
        Log.e( Constants.TAG, "Unable to play intro movie", e );
    }

1 Ответ

1 голос
/ 08 ноября 2010

AFACT ищет файловую систему для отображения драйвера в физическую память устройства (/ dev / pmem_), которая управляет усовершенствованным процессором цифровых сигналов (adsp).Я полагаю, что один из используемых вами кодеков передается в этот аппаратный компонент для декодирования, но он не существует в файловой системе, поскольку производитель не написал для него драйвер.

MyСоветуем найти наименьший возможный файл MP4, который воспроизводит эту проблему, и сообщить об этом на баг-трекере AOSP, а также пример файла, не забудьте назвать устройства, которые имеют эту проблему.Также сообщите об этом производителю.

Если вместо этого есть возможность использовать программный декодер, то это, скорее всего, обеспечит приемлемый обходной путь.

...