| 1175 | } // QuickTimeVideo::timeToSampleDecoder |
| 1176 | |
| 1177 | void QuickTimeVideo::sampleDesc(size_t size) { |
| 1178 | DataBuf buf(100); |
| 1179 | size_t cur_pos = io_->tell(); |
| 1180 | io_->readOrThrow(buf.data(), 4); |
| 1181 | io_->readOrThrow(buf.data(), 4); |
| 1182 | const uint32_t noOfEntries = buf.read_uint32(0, bigEndian); |
| 1183 | |
| 1184 | for (uint32_t i = 0; i < noOfEntries; i++) { |
| 1185 | if (currentStream_ == Video) |
| 1186 | imageDescDecoder(); |
| 1187 | else if (currentStream_ == Audio) |
| 1188 | audioDescDecoder(); |
| 1189 | else |
| 1190 | break; |
| 1191 | } |
| 1192 | io_->seek(Safe::add(cur_pos, size), BasicIo::beg); |
| 1193 | } // QuickTimeVideo::sampleDesc |
| 1194 | |
| 1195 | void QuickTimeVideo::audioDescDecoder() { |
| 1196 | DataBuf buf(40); |
nothing calls this directly
no test coverage detected