Форум программистов, компьютерный форум CyberForum.ru

Поиск FOURCC кода в AVI - файле - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ программа по созданию словаря http://www.cyberforum.ru/cpp-beginners/thread595036.html
Очень нужна помощь...Такое задание:Карточка иностранного слова представляет собой структуру, содержащую иностранное слово и его перевод. Для моделирования электронного словаря иностранных слов реализовать класс Dictionary. Данный класс имеет поле название словаря и содержит массив структур WordCard, представляющих собой карточки иностранного слова. Название словаря задается при создании нового...
C++ Нужны задания для начинающего Если кому не трудно , дайте интересные задания по с++ для начинающего. Но не надо давать задания типа найти мак эл. массива. итд. я бы хотел написать программы которые мне помогут освоить и закрепить с++, для будущей профессии. всем кто помог или поможет большое спасибо. http://www.cyberforum.ru/cpp-beginners/thread595033.html
C++ Оптимизация кода
Как можно оптимизировать\сократить данный код? #include <iostream> #include <conio.h> #include <iomanip> using namespace std; int main() { system("chcp 1251"); int *a, *b, *c;
Прокомментируйте пожалуйста C++
#include "iostream" #include <conio.h> #include <math.h> #include <stdio.h> void Yacoby(int** m, int* s, int it); int main(){ printf("Kirzaev. Yacobi.\n"); int i=0;
C++ Почему ошибка значения? http://www.cyberforum.ru/cpp-beginners/thread594946.html
при работе с односвязным списком: struct LIST { char stroka; LIST *next; }; во время сортировки строк s1=p1->stroka; p1->stroka=p2->stroka; p2->stroka=s1;
C++ Оператор if Записать на ЯП С++ логическое выражение, определяющие истинность высказывания 1) Хотя бы одно их двух чисел принадлежит . 2) Три заданных положительных числа являются углами равностороннего треугольника. Написать код на C++ 3) Среди трех заданных точек координатной прямой найти ту, которая ближе к точке 0. 4) Если заданное натуральное трехзначное число нечетное, то найти среднее... подробнее

Показать сообщение отдельно
igorrr37
 Аватар для igorrr37
1593 / 1221 / 118
Регистрация: 21.12.2010
Сообщений: 1,868
Записей в блоге: 7
04.06.2012, 20:51     Поиск FOURCC кода в AVI - файле
выводит искомый фрагмент и его позицию
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
#include <algorithm>
#include <cstdio>
#include <cstring>
 
int main()
{
    FILE* pf = fopen("video.avi", "rb");
    if(pf)
    {
        const std::size_t bsize(128);
        char buf[bsize], *pSearch("movi"); // что ищем
        std::size_t readLen, pSearchLen(std::strlen(pSearch)), bufLeft(0), totalRead(0);
        do // цикл чтения и поиска
        {
            totalRead += (readLen = fread(buf + bufLeft, sizeof(*buf), bsize - bufLeft, pf));
            auto pRes = std::search(buf, buf + bufLeft + readLen, pSearch, pSearch + pSearchLen);
            if(pRes != buf + bufLeft + readLen) // если pSearch найдена
            {
                memmove(buf, pRes, buf + bufLeft + readLen - pRes);// то перетаскиваем её в начало buf
                bufLeft = buf + bufLeft + readLen - pRes;
                totalRead += (readLen = fread(buf + bufLeft, sizeof(*buf), bsize - bufLeft, pf)); // а в освободившееся место дочитываем из файла
                fwrite(buf, sizeof(*buf), bufLeft + readLen, stdout); // и выводим buf в консоль
                printf("\n\nindex: %u\n", totalRead - (bufLeft + readLen)); // и позицию(индекс) искомой строки в файле
                break;
            }
            else                           // если pSearch не найдена
            {
                memmove(buf, buf + bufLeft + readLen - pSearchLen, pSearchLen); // то перетаскиваем pSearchLen символов с конца в начало buf и в освободившееся место дочитываем из файла ( в новом цикле )
                bufLeft = pSearchLen;
            }
        }while(!(feof(pf)));
        fclose(pf);
    }
    else perror("fopen failed");
    return 0;
}
 
Текущее время: 14:29. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru