1
0
Fork 0
mirror of https://github.com/ossrs/srs.git synced 2025-03-09 15:49:59 +00:00

For #299, refine the codec to format-frame-sample chain.

This commit is contained in:
winlin 2017-02-12 18:18:18 +08:00
parent c4a510b834
commit d7458c4e72
18 changed files with 990 additions and 1150 deletions

View file

@ -136,7 +136,7 @@ SrsRtpPacket::SrsRtpPacket()
ssrc = 0;
payload = new SrsSimpleStream();
audio_samples = new SrsCodecSample();
audio = new SrsAudioFrame();
chunked = false;
completed = false;
}
@ -144,7 +144,7 @@ SrsRtpPacket::SrsRtpPacket()
SrsRtpPacket::~SrsRtpPacket()
{
srs_freep(payload);
srs_freep(audio_samples);
srs_freep(audio);
}
void SrsRtpPacket::copy(SrsRtpPacket* src)
@ -161,7 +161,9 @@ void SrsRtpPacket::copy(SrsRtpPacket* src)
chunked = src->chunked;
completed = src->completed;
audio_samples = new SrsCodecSample();
srs_freep(audio);
audio = new SrsAudioFrame();
}
void SrsRtpPacket::reap(SrsRtpPacket* src)
@ -172,9 +174,9 @@ void SrsRtpPacket::reap(SrsRtpPacket* src)
payload = src->payload;
src->payload = NULL;
srs_freep(audio_samples);
audio_samples = src->audio_samples;
src->audio_samples = NULL;
srs_freep(audio);
audio = src->audio;
src->audio = NULL;
}
int SrsRtpPacket::decode(SrsBuffer* stream)
@ -263,7 +265,7 @@ int SrsRtpPacket::decode_97(SrsBuffer* stream)
return ret;
}
if ((ret = audio_samples->add_sample_unit(sample, sample_size)) != ERROR_SUCCESS) {
if ((ret = audio->add_sample(sample, sample_size)) != ERROR_SUCCESS) {
srs_error("rtsp: rtp type97 add sample failed. ret=%d", ret);
return ret;
}