comment
IRC Chat
play_arrow
Este sitio utiliza cookies propias y de terceros. Si continúa navegando consideramos que acepta el uso de cookies. OK Más Información.

Error con ffmpeg en android con android studio

  • 6 Respuestas
  • 2469 Vistas

0 Usuarios y 2 Visitantes están viendo este tema.

Desconectado $francisco

  • *
  • Underc0der
  • Mensajes: 191
  • Actividad:
    0%
  • Reputación 0
    • Ver Perfil
    • Email
  • Skype: hackloper
« en: Mayo 13, 2015, 07:55:03 pm »
Muy buens, estoy utilizando la libreria jave de java,  la he probado en eclipse y funciona, en android studio la incluyo y cuando la pruebo me lanza elbsiguiente error.

Código: [Seleccionar]
Working Directory: null Environment: null
Y tambien

Código: [Seleccionar]
Caused by: java.io.IOException: Permission denied
El caso es que le doi permisos de escritura y lectura en la sd pero segun he estado leyendo podria ser que no tenga permisos root o que no tenga instalado ffmpeg pero no lo tengo nada claro ya que jave viene con ffmpeg ¿cual es el error? ¿Como puedo hacerlo funcionar?
« Última modificación: Mayo 13, 2015, 08:08:20 pm por Gabriela »

Conectado ANTRAX

  • *
  • Administrator
  • Mensajes: 5409
  • Actividad:
    20%
  • Reputación 33
  • ANTRAX
    • Ver Perfil
    • Underc0de
    • Email
  • Skype: underc0de.org
  • Twitter: @Underc0de
« Respuesta #1 en: Mayo 13, 2015, 08:13:06 pm »
@$francisco
Porque usar Android Studio si puedes programar para moviles desde eclipse?
Viene una version para Android developers

De igual forma, estoy seguro de que @Gus Garsaky se pasará y sabrá la solución!

Saludos!
ANTRAX
« Última modificación: Mayo 13, 2015, 10:20:09 pm por Expermicid »


Desconectado $francisco

  • *
  • Underc0der
  • Mensajes: 191
  • Actividad:
    0%
  • Reputación 0
    • Ver Perfil
    • Email
  • Skype: hackloper
« Respuesta #2 en: Mayo 13, 2015, 08:34:37 pm »
La verdad estuve antes con eclipse, pero me fije que android studio es la "oficial" para crear aplicaciones android

Desconectado Gus Garsaky

  • *
  • Underc0der
  • Mensajes: 93
  • Actividad:
    0%
  • Reputación -1
    • Ver Perfil
  • Skype: gus.garsaky
« Respuesta #3 en: Mayo 13, 2015, 11:57:32 pm »
Eclipse ya no es lo recomendado para desarrollo Android, Android Studio es todo lo que necesitas, además de ser el oficial, está basado en el mejor IDE que puedes encontrar para Java: IntelliJ IDEA.

Generalmente, ese tipo de error suele ser porque efectivamente no tienes permisos root o puede ser porque ffmpeg no tiene los permisos adecuados. Si es ésto último, lo solucionas dándole los permisos a través de exec de Runtime:

Código: Java
  1. String[] command = new String[]{"/system/bin/chmod", "744",
  2.                                 "/ruta/a/ffmpeg" };
  3. Process process = Runtime.getRuntime().exec(command);

Si es lo primero puedes darle permisos root a tu app por tu root manager, como por ejemplo SuperSU.

Por último y poco probable es que hayas olvidado darle permisos en el manifest de tu aplicación para escribir en la SD:

Código: XML
  1. android.permission.WRITE_EXTERNAL_STORAGE


Saludos.
« Última modificación: Mayo 14, 2015, 12:05:37 am por Gus Garsaky »

Desconectado $francisco

  • *
  • Underc0der
  • Mensajes: 191
  • Actividad:
    0%
  • Reputación 0
    • Ver Perfil
    • Email
  • Skype: hackloper
« Respuesta #4 en: Mayo 14, 2015, 07:45:45 pm »
Al parecer son permisos que le falta a ffmpeg pero no me deja darselos.

Código: Java
  1. view.addJavascriptInterface(new Object()
  2.             {
  3.                 @JavascriptInterface
  4.                 public void performClick() throws Exception
  5.                 {
  6.                     File source = new File("/sdcard/cancion.mp4");
  7.                     File target = new File("target.mp3");
  8.                     AudioAttributes audio = new AudioAttributes();
  9.                     audio.setCodec("libmp3lame");
  10.                     audio.setBitRate(new Integer(128000));
  11.                     audio.setChannels(new Integer(2));
  12.                     audio.setSamplingRate(new Integer(44100));
  13.                     EncodingAttributes attrs = new EncodingAttributes();
  14.                     attrs.setFormat("mp3");
  15.                     attrs.setAudioAttributes(audio);
  16.                     Encoder encoder = new Encoder();
  17.                     encoder.encode(source, target, attrs);
  18.                 }
  19.             },"Android");
  20.             return true;
  21.             }
  22.         }


Código: [Seleccionar]
05-15 00:30:24.848    6348-6362/com.hackloper.probando W/System.err﹕ java.io.IOException: Error running exec(). Command: [/bin/chmod, 755, /data/data/com.hackloper.probando/cache/jave-1/ffmpeg] Working Directory: null Environment: null
05-15 00:30:24.860    6348-6362/com.hackloper.probando W/System.err﹕ at java.lang.ProcessManager.exec(ProcessManager.java:211)
05-15 00:30:24.861    6348-6362/com.hackloper.probando W/System.err﹕ at java.lang.Runtime.exec(Runtime.java:169)
05-15 00:30:24.862    6348-6362/com.hackloper.probando W/System.err﹕ at java.lang.Runtime.exec(Runtime.java:124)
05-15 00:30:24.863    6348-6362/com.hackloper.probando W/System.err﹕ at it.sauronsoftware.jave.DefaultFFMPEGLocator.<init>(DefaultFFMPEGLocator.java:85)
05-15 00:30:24.864    6348-6362/com.hackloper.probando W/System.err﹕ at it.sauronsoftware.jave.Encoder.<init>(Encoder.java:111)
05-15 00:30:24.865    6348-6362/com.hackloper.probando W/System.err﹕ at com.hackloper.probando.MainActivity$myWebClient$1.performClick(MainActivity.java:54)
05-15 00:30:24.865    6348-6362/com.hackloper.probando W/System.err﹕ at android.webkit.JWebCoreJavaBridge.nativeServiceFuncPtrQueue(Native Method)
05-15 00:30:24.865    6348-6362/com.hackloper.probando W/System.err﹕ at android.webkit.JWebCoreJavaBridge.nativeServiceFuncPtrQueue(Native Method)
05-15 00:30:24.865    6348-6362/com.hackloper.probando W/System.err﹕ at android.webkit.JWebCoreJavaBridge.handleMessage(JWebCoreJavaBridge.java:113)
05-15 00:30:24.866    6348-6362/com.hackloper.probando W/System.err﹕ at android.os.Handler.dispatchMessage(Handler.java:107)
05-15 00:30:24.866    6348-6362/com.hackloper.probando W/System.err﹕ at android.os.Looper.loop(Looper.java:194)
05-15 00:30:24.866    6348-6362/com.hackloper.probando W/System.err﹕ at android.webkit.WebViewCore$WebCoreThread.run(WebViewCore.java:930)
05-15 00:30:24.866    6348-6362/com.hackloper.probando W/System.err﹕ at java.lang.Thread.run(Thread.java:838)
05-15 00:30:24.867    6348-6362/com.hackloper.probando W/System.err﹕ Caused by: java.io.IOException: No such file or directory
05-15 00:30:24.867    6348-6362/com.hackloper.probando W/System.err﹕ at java.lang.ProcessManager.exec(Native Method)
05-15 00:30:24.868    6348-6362/com.hackloper.probando W/System.err﹕ at java.lang.ProcessManager.exec(ProcessManager.java:209)
05-15 00:30:24.868    6348-6362/com.hackloper.probando W/System.err﹕ ... 12 more

Código: [Seleccionar]
shell@android:/ $ chmod 777 /data/data/com.hackloper.probando/cache/jave-1/ff
mpeg

me deja acceder hasta cache, a partir de cache no me deja en "jave-1" me dice acceso denegado.

¿como podría darle permisos de ejecución? a ser posible que no haga falta rootear el móvil, sería algo molesto que una aplicación para pasar a mp3 necesite un movil rooteado o ¿saben alguna otra alternativa para convertir videos y audios?.

Desconectado Gus Garsaky

  • *
  • Underc0der
  • Mensajes: 93
  • Actividad:
    0%
  • Reputación -1
    • Ver Perfil
  • Skype: gus.garsaky
« Respuesta #5 en: Mayo 15, 2015, 09:28:27 am »
¿Estás seguro que es la ruta correcta? Fíjate lo que dice el rastreo de pila:

Citar
W/System.err﹕ java.io.IOException: Error running exec(). Command: [/bin/chmod, 755, /data/data/com.hackloper.probando/cache/jave-1/ffmpeg]
W/System.err﹕ Caused by: java.io.IOException: No such file or directory

He aquí la importancia de saber interpretar las excepciones y el rastreo de pila.

Si no tienes permisos root, creo que poco vas a poder hacer. He encontrado una forma de hacerlo funcionar sin permisos root que se describe en StackOverFlow: FFMPEG on Android


Saludos.


Desconectado $francisco

  • *
  • Underc0der
  • Mensajes: 191
  • Actividad:
    0%
  • Reputación 0
    • Ver Perfil
    • Email
  • Skype: hackloper
« Respuesta #6 en: Mayo 16, 2015, 12:52:46 pm »
Muchas gracias por la respuesta, no entiendo mucho, pero creo que lo que dice es que tengo que guardarlo en la sd y ejecutarlo desde hay, intentaré buscar mas información sobre esto.

 

¿Te gustó el post? COMPARTILO!



Error "modo Monitor" TL-WN722N

Iniciado por L€XN0

Respuestas: 10
Vistas: 1714
Último mensaje Mayo 31, 2018, 08:36:34 pm
por K A I L
Error al abrir cualquier sistema operativo dese usb: "Failed to find cpu0 node"

Iniciado por thecloudff7

Respuestas: 12
Vistas: 4360
Último mensaje Febrero 14, 2016, 05:10:47 pm
por thecloudff7
¡AYUDA! Error al instalar cualquier aplicacion vía "Apt-Get"

Iniciado por iGreentick

Respuestas: 5
Vistas: 1708
Último mensaje Octubre 13, 2016, 01:44:28 am
por puntoCL
No me funciona el exploit por error de sintaxis (DirtyCow u otro exploit.c)

Iniciado por banderas20

Respuestas: 5
Vistas: 601
Último mensaje Septiembre 13, 2018, 03:30:01 pm
por banderas20
[SOLUCIONADO]Error en Ajax:"falta la cabecera CORS 'Access-Control-Allow-Origin"

Iniciado por $francisco

Respuestas: 3
Vistas: 17113
Último mensaje Febrero 18, 2016, 11:23:16 am
por $francisco