0

我正在将一个音频播放器项目从 Vitamio 移植到 ExoPlayer。我已经能够让它工作,除了我有两个无法播放的音频源。它们与其他可以完美播放的样本之间没有明显的区别。问题不在于样本长度,因为运行时间很长的样本也会播放。以下是示例文件的链接:

http://s3.amazonaws.com/instarad_audio/20/208888/index.m3u8 http://s3.amazonaws.com/instarad_audio/20/208237/index.m3u8

这是错误-->

java.lang.IllegalStateException 在 com.google.android.exoplayer.MediaCodecTrackRenderer.drainOutputBuffer(MediaCodecTrackRenderer.java:720) 在 com.google.android.exoplayer.MediaCodecTrackRenderer.doSomeWork(MediaCodecTrackRenderer) 的 android.media.MediaCodec.dequeueOutputBuffer(Native Method) .java:420) 在 com.google.android.exoplayer.ExoPlayerImplInternal.doSomeWork(ExoPlayerImplInternal.java:398) 在 com.google.android.exoplayer.ExoPlayerImplInternal.handleMessage(ExoPlayerImplInternal.java:203) 在 android.os.Handler。 dispatchMessage(Handler.java:98) at android.os.Looper.loop(Looper.java:157) at android.os.HandlerThread.run(HandlerThread.java:61) at com.google.android.exoplayer.util.PriorityHandlerThread .run(PriorityHandlerThread.java:40)

11-27 17:50:05.423 28529-28571/com.google.android.exoplayer.demo E/OMXNodeInstance﹕缓冲区 h 的 OMX_FreeBuffer

我将这些样本创建为 TYPE_HLS_MEDIA,使用 AUDIO_AAC 编码或 VIDEO_H264。

我最好的猜测是这些样本是以不寻常的采样率记录的,或者它们以某种方式损坏。

所有样本都将通过 .m3u8 格式编码为 AAC 流。还有其他我应该查看的渲染器/编码器吗?

谢谢你,大卫

4

1 回答 1

2

此链接包含aac音频,但aac配置文件是LTP,google AAC软件解码器不支持。这意味着此链接也不适用于任何旧版 android 设备。所以这不是您的应用程序的缺陷。

General
ID                                       : 1 (0x1)
Complete name                            : a.ts
Format                                   : MPEG-TS
File size                                : 2.00 MiB
Duration                                 : 1mn 33s
Overall bit rate mode                    : Variable
Overall bit rate                         : 180 Kbps

Audio
ID                                       : 256 (0x100)
Menu ID                                  : 1 (0x1)
Format                                   : AAC
Format/Info                              : Advanced Audio Codec
Format version                           : Version 4
Format profile                           : LTP
Muxing mode                              : ADTS
Codec ID                                 : 15
Duration                                 : 1mn 33s
Bit rate mode                            : Variable
Channel(s)                               : 1 channel
Channel positions                        : Front: C
Sampling rate                            : 44.1 KHz
Compression mode                         : Lossy

Menu
ID                                       : 4096 (0x1000)
Menu ID                                  : 1 (0x1)
Duration                                 : 1mn 33s
List                                     : 256 (0x100) (AAC)
Service name                             : Service01
Service provider                         : Libav
Service type                             : digital television
于 2014-12-01T19:48:06.420 回答