Что такое поврежденный поток MPEG?

Я читаю документация по avcodec и я пытаюсь понять, что означает повреждение потока MPEG. Это упоминает:

Конец буфера входного буфера должен быть установлен в 0, чтобы гарантировать, что не будет никакого перезаписи для поврежденных потоков MPEG.

Так что же произойдет, если конец входного буфера не будет установлен в 0? Будет ли это потенциальным способом введения коррупции?

0

Решение

Чтобы найти ответ на этот вопрос, вы можете посмотреть код, который читает буфер для такого кодека — здесь avcodec

Кажется, что буфер заполнен количеством кадров, и в конце каждого кадра данных есть счетчик байтов для следующего. Если это значение равно нулю, то декодер не будет продолжать чтение в неинициализированную память в случае какого-либо повреждения потока MPEG. Такие потоки могут быть повреждены из-за ошибок кодирования, ошибок передачи или (редко) сбоев на носителе данных. Это хороший пример защитного программирования.

1

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]