Лучший способ отправить видео через сокет TCP на C

Я пытаюсь придумать, как лучше всего отправить видеофайл через TCP-сокет. Я сделал стандартную программу для сокетов, но после команды read я не знаю, как мне ее сохранить.

Пример кода

//bind server socketfd
if (bind(sfdServer, (struct sockaddr*)&adrServer, ServerAddrLen) < 0)
    error("ERROR binding");
listen(sfdServer, 5);
while(1){
    printf("Waiting for connections...\n");
    sfdClient = accept(sfdServer, (struct sockaddr*)&adrClient, &ClientAddrLen);
    if(sfdClient < 0)
        error("ERROR accepting");

    printf("Connection Established.\n");
    //set buffer to zero        
    bzero(buff, 2048);
    printf("Reading from client.\n");
    numChar = read(sfdClient, buff, 2048);

    //What should go here?

    close(sfdClient);
    close(sfdServer);

}

Могу ли я просто сохранить буфер как файл movie.mp4 или что-то в этом роде? Я понимаю, что мне может потребоваться изменить размер буфера или, возможно, отправить его по частям. Но я не могу найти хорошей информации о том, как это лучше всего сделать. Приветствуется любая помощь или указание в правильном направлении!

5
задан Bryan G. 31 January 2011 в 02:00
поделиться