|
|
@ -416,7 +416,10 @@ static int handle_eac3(MOVMuxContext *mov, AVPacket *pkt, MOVTrack *track) |
|
|
|
if (!info->pkt && !(info->pkt = av_packet_alloc())) |
|
|
|
if (!info->pkt && !(info->pkt = av_packet_alloc())) |
|
|
|
return AVERROR(ENOMEM); |
|
|
|
return AVERROR(ENOMEM); |
|
|
|
|
|
|
|
|
|
|
|
if (avpriv_ac3_parse_header(&hdr, pkt->data, pkt->size) < 0) { |
|
|
|
if ((ret = avpriv_ac3_parse_header(&hdr, pkt->data, pkt->size) < 0)) { |
|
|
|
|
|
|
|
if (ret == AVERROR(ENOMEM)) |
|
|
|
|
|
|
|
goto end; |
|
|
|
|
|
|
|
|
|
|
|
/* drop the packets until we see a good one */ |
|
|
|
/* drop the packets until we see a good one */ |
|
|
|
if (!track->entry) { |
|
|
|
if (!track->entry) { |
|
|
|
av_log(mov->fc, AV_LOG_WARNING, "Dropping invalid packet from start of the stream\n"); |
|
|
|
av_log(mov->fc, AV_LOG_WARNING, "Dropping invalid packet from start of the stream\n"); |
|
|
|