更改源后,MediaPlayer HLS播放失败

时间:2014-02-11 12:36:45

标签: android video-streaming media-player android-mediaplayer hlsl

我正在为HLS流编写应用程序。我正在使用 3个MediaPlayers实例,它们同时播放不同的HLS 。 有时候运行良好,但是当我使用以下内容将任何不同的地址添加到其中一个mediaPlayer实例时<{1}}

mediaPlayerInstance1.setDataSource(adress)无法正常工作 - 它有时会显示黑屏,有时有无声音。 Wnen黑屏在MediaPlayer上,我重新加载其他mediaPlayerInstance(使用之前工作的相同地址)其他媒体播放器实例也可以显示黑屏(但并非总是如此)。

当我尝试启动只有1个mediaPlayer实例以前的地址不起作用(有3个MP实例)时,mediaPlayer工作正常,然后流似乎很好。

当黑屏显示没有声音时,我收到错误:
mediaPlayerInstance1

当黑屏发生声音时,没有任何错误。

我只从“所有邮件(无过滤器)”

中捕获了两种类型的错误

请注意,只有一个MediaPlayer实例时不会发生这些错误)

首先:

E/MediaPlayer(12312): error (1, -2147483648)

第二

02-11 12:27:38.980: E/NuPlayer(1972): Buffering Start
    02-11 12:27:38.980: V/MediaPlayerService(1972): [1246] notify (0x42c97da8, 200, 701, 0)
    02-11 12:27:38.980: V/NuPlayer(1972): scanning sources haveAudio=0, haveVideo=0
    02-11 12:27:38.985: V/MediaPlayer(14245): message received msg=200, ext1=701, ext2=0
    02-11 12:27:38.985: W/MediaPlayer(14245): info/warning (701, 0)
    02-11 12:27:38.985: V/MediaPlayer(14245): callback application
    02-11 12:27:38.985: V/MediaPlayer(14245): back from callback
    02-11 12:27:38.995: I/System.out(14245): onPrepared() 0
    02-11 12:27:38.995: I/MediaPlayer(14245): Info (701,0)
    02-11 12:27:38.995: I/MediaPlayer: 0(14245): (701, 0)
    02-11 12:27:39.085: V/NuPlayer(1972): scanning sources haveAudio=0, haveVideo=0
    02-11 12:27:39.085: I/ESQueue(1972): found AAC codec config (22050 Hz, 1 channels)
    02-11 12:27:39.085: I/avc_utils(1972): found AVC codec config (320 x 240, Baseline-profile level 1.3)
    02-11 12:27:39.085: I/AnotherPacketSource(1972): resize MAX Resolution[1280 x 960]
    02-11 12:27:39.190: V/NuPlayer(1972): scanning sources haveAudio=0, haveVideo=0
    02-11 12:27:39.190: D/NuPlayer(1972): set HLS for decoder
    02-11 12:27:39.190: D/NuPlayer(1972): set HLS for decoder
    02-11 12:27:39.195: D/OMX(1972): SendBroadCasting VIDEO_PLAYBACK_START
    02-11 12:27:39.200: E/NuPlayer(1972): kWhatComponentConfigured is =audio
    02-11 12:27:39.200: E/ACodec(1972): Before getExtensionIndex.
    02-11 12:27:39.200: E/ACodec(1972): Before setConfig.
    02-11 12:27:39.200: E/ACodec(1972): After finishing the DRC..
    02-11 12:27:39.200: I/OMX(1972): width (1280), height (960), fps (15)
    02-11 12:27:39.205: E/OMX(1972):  setParam  sum(3314688) > max resolution(3010560)
    02-11 12:27:39.205: E/ACodec(1972):  configureCodec multi window instance fail  appPid : 14245
    02-11 12:27:39.205: I/SEC_BASE_COMP(1972): SEC_OMX_ComponentStateSet: Cur(1) -> Dest(2)
    02-11 12:27:39.205: I/NuPlayer(1972): componentName = OMX.SEC.avc.dec
    02-11 12:27:39.210: E/Bundle(3814): readBundle: bad magic number
    02-11 12:27:39.210: E/Bundle(3814): readBundle: trace = java.lang.RuntimeException
    02-11 12:27:39.210: E/Bundle(3814):     at android.os.Bundle.readFromParcelInner(Bundle.java:1677)
    02-11 12:27:39.210: E/Bundle(3814):     at android.os.Bundle.<init>(Bundle.java:83)
    02-11 12:27:39.210: E/Bundle(3814):     at android.os.Parcel.readBundle(Parcel.java:1579)
    02-11 12:27:39.210: E/Bundle(3814):     at android.os.Parcel.readBundle(Parcel.java:1564)
    02-11 12:27:39.210: E/Bundle(3814):     at android.app.ActivityManagerNative.onTransact(ActivityManagerNative.java:371)
    02-11 12:27:39.210: E/Bundle(3814):     at com.android.server.am.ActivityManagerService.onTransact(ActivityManagerService.java:2125)
    02-11 12:27:39.210: E/Bundle(3814):     at android.os.Binder.execTransact(Binder.java:388)
    02-11 12:27:39.210: E/Bundle(3814):     at dalvik.system.NativeStart.run(Native Method)
    02-11 12:27:39.210: E/ACodec(1972): [OMX.SEC.avc.dec] configureCodec returning error -38
    02-11 12:27:39.210: E/NuPlayer(1972): Received error from video decoder, aborting playback.
    02-11 12:27:39.210: E/NuPlayer(1972): internalError -38

如何解决这些问题? 谢谢!

0 个答案:

没有答案