Здравствуйте, не могу корректно читать данные с stdin под виндой!
Я пробрасую потоки так:
ffmpeg -i c:/users/alex/videos/test.avi -vcodec rawvideo -f rawvideo - | myApp.exe -i -
код myApp.exe (VS):
C
size_t bytes_read = fread(m_pVideoFrame, 1, m_nVideoFrameSize, stdin);
printf("m_nVideoFrameSize = %d\n",(size_t)m_nVideoFrameSize);
printf("ReadNextFrame() bytes_read = %d\n",bytes_read);
if (bytes_read != m_nVideoFrameSize)
{
printf("ReadNextFrame() bytes_read = %d mismatches with VideoFrameSize = %d\n", bytes_read, m_nVideoFrameSize);
return -1;
}
В принципе прога читает где-то 20 кадров с входящего потока, но потом количество прочитанных данных =0 !
Что я не так делаю, подскажите пожалуйста?