mirror of
https://github.com/xenia-project/FFmpeg.git
synced 2024-11-24 20:19:55 +00:00
special mpeg2 handling is no more needed
Originally committed as revision 12685 to svn://svn.ffmpeg.org/ffmpeg/trunk
This commit is contained in:
parent
39e9e6d940
commit
b64518e91b
@ -616,8 +616,7 @@ static int mov_write_video_tag(ByteIOContext *pb, MOVTrack* track)
|
|||||||
mov_write_avcc_tag(pb, track);
|
mov_write_avcc_tag(pb, track);
|
||||||
if(track->mode == MODE_IPOD)
|
if(track->mode == MODE_IPOD)
|
||||||
mov_write_uuid_tag_ipod(pb);
|
mov_write_uuid_tag_ipod(pb);
|
||||||
} else if(track->vosLen > 0 &&
|
} else if(track->vosLen > 0)
|
||||||
track->enc->codec_id != CODEC_ID_MPEG2VIDEO)
|
|
||||||
mov_write_glbl_tag(pb, track);
|
mov_write_glbl_tag(pb, track);
|
||||||
|
|
||||||
return updateSize (pb, pos);
|
return updateSize (pb, pos);
|
||||||
@ -1537,7 +1536,6 @@ static int mov_write_packet(AVFormatContext *s, AVPacket *pkt)
|
|||||||
AVCodecContext *enc = trk->enc;
|
AVCodecContext *enc = trk->enc;
|
||||||
unsigned int samplesInChunk = 0;
|
unsigned int samplesInChunk = 0;
|
||||||
int size= pkt->size;
|
int size= pkt->size;
|
||||||
int dump_extradata = 0;
|
|
||||||
|
|
||||||
if (url_is_streamed(s->pb)) return 0; /* Can't handle that */
|
if (url_is_streamed(s->pb)) return 0; /* Can't handle that */
|
||||||
if (!size) return 0; /* Discard 0 sized packets */
|
if (!size) return 0; /* Discard 0 sized packets */
|
||||||
@ -1583,11 +1581,6 @@ static int mov_write_packet(AVFormatContext *s, AVPacket *pkt)
|
|||||||
trk->vosLen = 640;
|
trk->vosLen = 640;
|
||||||
trk->vosData = av_malloc(trk->vosLen);
|
trk->vosData = av_malloc(trk->vosLen);
|
||||||
memcpy(trk->vosData, pkt->data, 640);
|
memcpy(trk->vosData, pkt->data, 640);
|
||||||
} else if (enc->codec_id == CODEC_ID_MPEG2VIDEO && trk->vosLen > 4 &&
|
|
||||||
AV_RB32(trk->vosData) == 0x000001b3 && pkt->flags & PKT_FLAG_KEY &&
|
|
||||||
pkt->size > 4 && AV_RB32(pkt->data) != 0x000001b3) {
|
|
||||||
size += trk->vosLen;
|
|
||||||
dump_extradata = 1;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!(trk->entry % MOV_INDEX_CLUSTER_SIZE)) {
|
if (!(trk->entry % MOV_INDEX_CLUSTER_SIZE)) {
|
||||||
@ -1615,10 +1608,6 @@ static int mov_write_packet(AVFormatContext *s, AVPacket *pkt)
|
|||||||
trk->sampleCount += samplesInChunk;
|
trk->sampleCount += samplesInChunk;
|
||||||
mov->mdat_size += size;
|
mov->mdat_size += size;
|
||||||
|
|
||||||
if (dump_extradata) {
|
|
||||||
put_buffer(pb, trk->vosData, trk->vosLen);
|
|
||||||
size -= trk->vosLen;
|
|
||||||
}
|
|
||||||
put_buffer(pb, pkt->data, size);
|
put_buffer(pb, pkt->data, size);
|
||||||
|
|
||||||
put_flush_packet(pb);
|
put_flush_packet(pb);
|
||||||
|
Loading…
Reference in New Issue
Block a user