I have a problem playing mp4 video files on the Droid2 with android 2.2 (build VZW) . The app tries to play the videos from the sdcard and the it takes for ever and doesnt load the video.
I tried to debug the app on the phone with adb. When I play the video it give the below decoding error on the logcat:
TIOMX_CORE: dlopen libOMX.TI.720P.Decoder.so failed because Cannot load library: load_library[1083]: Library 'libOMX.TI.720P.Decoder.so' not found
1134 2189 D : error 0x80001003 in DoPrepare
1134 2189 V PlayerDriver: HandleInformationalEvent: PVMFInfoErrorHandlingStart
1134 2189 V PlayerDriver: HandleInformationalEvent: type=26 UNHANDLED
2103 2109 W MediaPlayer: info/warning (1, 26)
1134 2190 D OMX_AACDEC: AACDEC_ComponentThread():150 150 :: Comp Thrd Exiting here..
1134 2189 D OMX_AACDEC: ComponentDeInit():1726 :: Freeing: pComponentPrivate = 0x60af8
1134 2189 D TIOMX_CORE: Found matching pHandle(0x5db70) at index 7 with refCount 1
1134 2189 D : enter SharedLibraryLookup
1134 2189 D : enter GetFactoryAndMimeString
1134 2189 V PlayerDriver: CommandCompleted
1134 2189 V PlayerDriver: Completed command PLAYER_PREPARE status=PVMFErrResource
1134 2189 E PlayerDriver: Command PLAYER_PREPARE completed with an error or info PVMFErrResource
1134 2189 V PVPlayer: check_for_live_streaming s=-2147483648, cancelled=0
1134 2189 V PlayerDriver: HandleInformationalEvent: PVMFInfoErrorHandlingComplete
1134 2189 W PlayerDriver: PVMFInfoErrorHandlingComplete
2103 2108 E MediaPlayer: error (1, -17)
I assume that 2.2 has some decoder issues playing the mp4 files. Did any one run into this issue. I am not sure how to nail this one. Might be an option to upgrade the 2.2 to 2.2.1 or 2.2.2 or 2.3?
I would really appreciate if anyone can shed some light on this one.
Thanks,
Raja.
Actually, there is another reason.
Library 'libOMX.TI.720P.Decoder.so' not found
I.e. the file was removed from it's location, thanks to a patch that came sometime prior to November 2010.
The solution:
1.Download These files from the Liberty Rom Source repo:
in /system/lib:
libOMX.TI.720P.Decoder.so
libOMX.TI.720P.Encoder.so
libOMX.TI.mp4.splt.Encoder.so
in /system/lib/dsp/
720p_h264vdec_sn.dll64P
720p_mp4vdec_sn.dll64P
720p_mp4venc_sn.dll64P
2.Using Root Manager or any other file explorer mount system as R/W
Copy the six files into "/system/lib/" and "/system/lib/dsp/", respectively, on your phone,
3.change permissions to 644 (rw-r--r--)
4.Remount system back to R/O (Read Only)
5.Reset
6.Go play any 720p video on the stock video player and stop getting "Sorry this video cannot be played" errors!
Source
Related
I follow the instructions here to build Android. Everything works and I can launch the emulator successfully. However, whenever I reach a screen that contains a WebView, the app crashes with a message "WebView shell has stopped". Here is some of the output from logcat
04-19 19:31:29.694 2234 2234 I cr_BrowserStartup: Initializing chromium process, singleProcess=true
04-19 19:31:29.721 2234 2234 F chromium: [FATAL:gpu_info_collector_android.cc(193)] failed to create a pbuffer surface for fetching driver strings. EGL_SUCCESS (3000)
--------- beginning of crash
04-19 19:31:29.735 2254 2234 F google-breakpad: -----BEGIN BREAKPAD MICRODUMP-----
04-19 19:31:29.735 2254 2234 F google-breakpad: V WebView:52.0.2743.100
04-19 19:31:29.735 2254 2234 F google-breakpad: O A x86 01 i686 Android/aosp_x86/generic_x86:7.0/NBD92G/xxxx04191749:eng/test-keys
04-19 19:31:29.736 2254 2234 F google-breakpad: G UNKNOWN
04-19 19:31:29.736 2254 2234 F google-breakpad: H 12C00000 BF859000 0017 56AEE000 82D22000 0C:06 0D:07 0E:01 0F:02 10:01 11:02 12:01 1B:01 1C:01 1E:01
I built the Android source on a CentOS server. I built Android 7.0. The built system image should be correct because if I move it to my Macbook, everything works including WebView.
Can anyone tells me what I should do to make it behave correctly on the Server? Thanks!
I have resolved the problem by creating an SDK with sdkmanager. I manually download the emulator, platforms, platform-tools, and system-images that are the necessary parts of an SDK. Then I use the avdmanager to create an AVD with x86 system image for API level 24 (with Google APIs). Before launching the AVD, I replace the system.img and randisk.img with the images I built from the Android source. That's all.
I'm trying to build and deploy declarative-camera example on my android phone but I keep receiving this error and a white screen:
[SurfaceTexture-0-31406-1] bindTextureImage: clearing GL error: 0x502
Although when I touch the screen it appears for less than a second then turns to white screen again. I'm using Qt 5.14/ NDK Version 20/ SDK Version 26.1.1.
I use QuickWidget inside my .cpp file for displaying the .qml file by setSource(QUrl("qrc:/declarative-camera.qml")).
My current Kit is Android for armeabi-v7a,arm64-v8a,x86,x86_64 (Clang Qt 5.14.0 for Android). Same code used to compile successfully without any errors on the same phone with Qt 5.13 with Android for arm64-v8a (Clang Qt 5.13.1 for Android ARM64-v8a) Kit.
Any idea what is causing this behavior?
P.S This is my Application Output after I call setSource :
D ViewRootImpl#30773d6[QtActivity]: ViewPostIme pointer 1
D InputMethodManager: HSIFW - flag : 0 Pid : 15832
D InputMethodManager: HSIFW - flag : 0 Pid : 15832
D SensorManager: registerListener :: 1, K6DS3TR Acceleration Sensor,
200000, 0,
D SensorManager: unregisterListener ::
D Camera : app passed NULL surface
D Camera : app passed NULL surface
D SensorManager: registerListener :: 1, K6DS3TR Acceleration Sensor,
200000, 0,
W GLConsumer: [SurfaceTexture-0-15832-1] bindTextureImage: clearing GL
error: 0x502
W GLConsumer: [SurfaceTexture-0-15832-1] bindTextureImage: clearing GL
error: 0x502
It's a QT bug, although it's already fixed in 5.14.2 which is due in March.
https://bugreports.qt.io/browse/QTBUG-81006
I am trying to find memory leaks and corruptions in my native code, which is part of a sample java app. Since the procedure for using malloc debug has been updated from Nougat onwards (ref: Malloc Debug for Android N), I have followed the steps in that page to set the options of my interest.
Fortunately, I was able to get the mem corruption detection work (by use of guard option) for a simple buffer overflow in my native code. But, whatever option I use, I couldn't get the leaks detected.
I tried these options:
adb shell setprop libc.debug.malloc.options backtrace
adb shell setprop libc.debug.malloc.options leak_track
I also tried a combination of both options. I didnt see any mallocs or leaks present in my code being captured in logcat. In fact, for most devices I see that device is stuck in bootup when 'backtrace' option is set.
However, what I see is in the logs, is apparently false-positives for leaks in lot of other system programs:
12-16 13:05:51.908 8396 8396 E malloc_debug: +++ chmod leaked block of size 152 at 0x7f7de4b0e0 (leak 1 of 19)
...
12-16 13:05:52.156 8423 8423 E malloc_debug: +++ chown leaked block of size 152 at 0x7f8384b0e0 (leak 1 of 26)
...
12-16 13:05:56.533 8845 8845 E malloc_debug: +++ getprop leaked block of size 152 at 0x7fb684b0e0 (leak 1 of 17)
...
12-16 13:07:24.036 12393 12393 E malloc_debug: +++ /system/bin/dex2oat leaked block of size 131072 at 0xeb22c010 (leak 1 of 2452)
...
12-16 13:07:49.192 13734 13734 E malloc_debug: +++ logcat leaked block of size 5176 at 0x7f8dc5f020 (leak 1 of 21)
So, I have two questions in this context:
Does my apk need to be in a specific location for backtrace/leak_track to work? Was it ever tested for apks before, at least on N?
Do I need to set any other option for leak detection to work?
It looks like Malloc debug on Nougat is not explored much, so I didnt see any results on Google for any known issues or restrictions.
More details on my setup:
- Android Nougat 7.0
- 64 bit chipset
- Java sample app, with native code as shared lib
I installed the ApiDemos project, which can be found in <your-sdk-path>/sdk/samples (provided you installed samples with SDK manager). I tried the one for api17. I pushed a video file onto the sd card of my device (I tried a samsung tablet and a LG P990) with DDMS and set the Path of the video to:
path = Environment.getExternalStorageDirectory().getPath() + "/myvideo.mp4";
(That is the only part where I edited the ApiDemos example)
I checked that this path returns the actual path to the sdcard where I pushed to file to and it is, the video however is not played.
When I run the whole thing in a genymotion device, the video is played without a problem. Does anyone has an Idea whats wrong here?
Log
These are the lines that are logged when the video is tried to be loaded by the ApiDemo:
11-05 16:03:42.830 2305-2334/? E/Trace﹕ error opening trace file: No such file or directory (2)
11-05 16:03:42.838 2305-10023/? E/OMXCodec﹕ [LEGO] else flags = 0
11-05 16:03:42.955 2305-10023/? E/OMXCodec﹕ set buffer size variable to : 1572864
11-05 16:03:44.970 2305-10034/? E/OMXCodec﹕ [OMX.TI.DUCATI1.VIDEO.DECODER] ERROR(0x80001000, 0)
11-05 16:03:45.189 385-456/? E/WifiStateMachine﹕ set default RSSI: -200
11-05 16:03:46.986 2305-10023/? A/OMXCodec﹕ frameworks/av/media/libstagefright/OMXCodec.cpp:1821 CHECK_EQ( err,(status_t)OK) failed: -110 vs. 0
11-05 16:03:46.986 2305-10023/? A/libc﹕ Fatal signal 11 (SIGSEGV) at 0xdeadbaad (code=1), thread 10023 (TimedEventQueue)
If your Video is in the root of your sd Card then try:
videoView.setVideoPath("/sdcard/myvideo.mp4");
or try if you have a Directory named e.g "my_Videos"
path = Environment.getExternalStorageDirectory() + "//my_Videos//";
path += "myvideo.mp4";
I have a camera by Cisco and like to stream it's video stream to my android phone.
It's coded in MPEG4 so there should be no problem, but it's not working anymore (it worked with another camera a few weeks ago). Any idea what I might try ? I don't know what's wrong here.
I/ActivityManager( 79): Starting activity: Intent { cmp=com.Projekt1/.CameraView }
I/System.out(18792): SDPURL - rtsp://10.42.0.103:554/live.sdp
I/NotificationService( 79): enqueueToast pkg=com.Projekt1 callback=android.app.ITransientNotification$Stub$Proxy#44a22218 duration=0
D/MediaPlayer(18792): Couldn't open file on client side, trying server side
I/ActivityManager( 79): Displayed activity com.Projekt1/.CameraView: 270 ms (total 270 ms)
W/MediaPlayer(18792): info/warning (1, 26)
I/MediaPlayer(18792): Info (1,26)
E/PlayerDriver( 52): Command PLAYER_INIT completed with an error or info PVMFFailure
E/MediaPlayer(18792): error (1, -1)
E/MediaPlayer(18792): Error (1,-1)
D/VideoView(18792): Error: 1,-1
W/PlayerDriver( 52): PVMFInfoErrorHandlingComplete
Sorry Nils you have the right codec but Android supports only .3gp Streaming for video, i see you have
rtsp://10.42.0.103:554/live.sdp