Получение изображения от веб-камеры в Java?

Пока функция, которую вы хотите заменить, находится в общей библиотеке, вы можете перенаправлять вызовы этой функции во время выполнения (во время отладки), нажимая PLT. Вот статья, которая может быть полезна:

Перенаправление вызовов из общей библиотеки с использованием ELF PLT-инфекции

Она написана с точки зрения вредоносной программы, модифицирующей программу, но намного проще Процедура адаптируется для живого использования в отладчике. По сути, вам просто нужно найти запись функции в PLT и перезаписать адрес адресом функции, которой вы хотите заменить ее.

Поиск в формате «PLT» вместе с такими терминами, как «ELF», «разделяемая библиотека», «динамическое связывание», «PIC» и т. Д. Может найти для вас более подробную информацию по этому вопросу.

82
задан Divide By Zero 9 November 2008 в 18:42
поделиться

2 ответа

http://grack.com/downloads/school/enel619.10/report/java_media_framework.html

Использование проигрывателя с Swing

Проигрыватель можно легко использовать в Приложение Swing тоже. Следующий код создает программу захвата ТВ-сигнала на основе Swing с выводом видео, отображаемым во всем окне:

import javax.media.*;
import javax.swing.*;
import java.awt.*;
import java.net.*;
import java.awt.event.*;
import javax.swing.event.*;

public class JMFTest extends JFrame {
    Player _player;
    JMFTest() {
        addWindowListener( new WindowAdapter() {
            public void windowClosing( WindowEvent e ) {
                _player.stop();
                _player.deallocate();
                _player.close();
                System.exit( 0 );
            }
        });
          setExtent( 0, 0, 320, 260 );
        JPanel panel = (JPanel)getContentPane();
        panel.setLayout( new BorderLayout() );
        String mediaFile = "vfw://1";
        try {
            MediaLocator mlr = new MediaLocator( mediaFile );
            _player = Manager.createRealizedPlayer( mlr );
            if (_player.getVisualComponent() != null)
            panel.add("Center", _player.getVisualComponent());
            if (_player.getControlPanelComponent() != null)
            panel.add("South", _player.getControlPanelComponent());
        }
        catch (Exception e) {
            System.err.println( "Got exception " + e );
        }
    }

    public static void main(String[] args) {
        JMFTest jmfTest = new JMFTest();
        jmfTest.show();
    }
}
2
ответ дан 24 November 2019 в 09:19
поделиться

Рекомендуем использовать FMJ для мультимедийного относительного Java-приложения.

0
ответ дан 24 November 2019 в 09:19
поделиться
Другие вопросы по тегам:

Похожие вопросы: