2023.5.17 第二阶段冲刺日报(三)

Arkiya / 2023-05-18 / 原文

今天是冲刺第三天,在昨天进行了开发后,在今日的站立会议中,我们进行了内容和问题的总结

首先,我们明确了昨天的开发进度:

1.找到了开发方向,即对webrtc技术的运用和尝试

2.对安卓端采取了如下代码进行尝试

import com.github.sarxos.webcam.Webcam;
import java.awt.*;
import java.awt.image.BufferedImage;
public class Client extends javax.swing.JFrame{
    //获取客户端画布
    Graphics g;
    public void setUI() throws Exception {
        this.setTitle("视频");
        this.setSize(new Dimension(600,600));
        this.setVisible(true);
        this.setDefaultCloseOperation(3);
        g = this.getGraphics();
        //打开网络连接模块
        ClientConn clientconn = new ClientConn(9999,"127.0.0.1");
        clientconn.conn();
        setWebcam(clientconn);

    }

    //获取摄像头权限并获得图片
    public void setWebcam(ClientConn clientconn) throws Exception {
        // get default webcam and open it获取网络摄像头设置并打开
        Webcam webcam = Webcam.getDefault();
        webcam.open();
        while(true) {
            // get image获取图片
            BufferedImage image = webcam.getImage();
            drawImage(g,image);
            clientconn.trans(image);
        }
    }

    public void drawImage(Graphics g,BufferedImage image) {
        g.drawImage(image,10,10,null);
    }

    public static void main(String[] args) throws Exception {
        Client c = new Client();
        c.setUI();
    }
}
import javax.imageio.ImageIO;
import java.awt.image.BufferedImage;
import java.io.ByteArrayOutputStream;
import java.io.DataOutputStream;
import java.io.IOException;
import java.net.Socket;

public class ClientConn {
    private DataOutputStream out;
    private int port;
    private String host;

    public ClientConn(int port,String host){
        this.port = port;
        this.host = host;
    }
    public void conn() {
        try {
            //创建客户端对象并连接服务器
            Socket client = new Socket(host,port);
            //初始化输入输出流
            out = new DataOutputStream(client.getOutputStream());
        } catch (IOException e) {
            e.printStackTrace();
            System.out.println("程序出错了");    
        }
        
        
    }
    public void trans(BufferedImage image) throws Exception {
        ByteArrayOutputStream baos = new ByteArrayOutputStream();
        ImageIO.write(image,"jpeg",baos);
        //这里进行拆包发送,防止对方读取错误
        byte[] array = baos.toByteArray();
        out.writeInt(array.length);//告诉服务器这个给包的大小
        out.write(array);
        out.flush();
    }


}

王嵘飞今日工作总结:

今天继续进行了webrtc内容的学习

胡硕阳今日工作总结:

今天尝试对安卓端的代码进行使用,初步实现了一个到服务器端的架构,起码连接是成功了

常金洋今日工作总结:

今日对原有的页面进行了优化,原来的页面无法实现当前页面显示上传文件的名称,导致用户使用体验不够直观