Мне нужно отправить некоторые данные в программу C из моего приложения в Android, и я думаю об использовании каналов. Я читал, что Java может получить доступ к существующим каналам (и открывать их как если это обычный файл), но я не могу этого сделать в своем приложении. Когда я пытаюсь, приложение просто блокируется до тех пор, пока не появится сообщение, ожидая закрытия, не записывая ничего особенного в logcat.
Я нашел ветку в списках рассылки Android по этой теме, но это было не очень ясно, и это относится к папке, которой нет на моем телефоне.
Кроме того, я знаю, что невозможно создать каналы на SD-карте, но когда я пытаюсь сделать это in/data
, я думаю, что у меня проблемы с корнем ... Вы знаете, можно ли получить доступ к этому каналу (я пытаюсь войти и выйти из папку приложения без успеха)?
Я создал канал с mkfifo
, и кажется, что разрешения могут быть открыты любым пользователем.
prw-rw-rw- root root 2010-11-18 04:53 video_pipe
Я попытался добавить разрешение X (кто знает ...) Вот что у меня есть:
# chmod u+x video_pipe
Bad mode
Блокирующий код - это инициализация камеры (PATH
- это просто путь к трубе):
recorder.setOutputFile(PATH);
Вот весь источник: https://github.com/rbochet/Simple-Camera-App/commit/piped (commit 22dba257f6 )
ffmpeg
кросс-скомпилирована для Android. Я хочу использовать его для транскодирования видео в прямом эфире через канал. Я думаю, не должно быть слишком сложно сделать его дочерним процессом (ведь он запускается только изRuntime.exec()
, не так ли?). Кстати, спасибо за восьмеричное ... Я должен был увидеть это сам. - person Rob   schedule 17.05.2011