mirror of
https://github.com/tuxbox-neutrino/libstb-hal.git
synced 2025-08-26 15:02:58 +02:00
libeplayer3: code format
This commit is contained in:
@@ -544,7 +544,7 @@ bool Input::UpdateTracks()
|
||||
}
|
||||
|
||||
track.pid = use_index_as_pid ? n + 1: stream->id;
|
||||
track.ac3flags = 0;
|
||||
track.ac3flags = 0;
|
||||
|
||||
switch (stream->codec->codec_type) {
|
||||
case AVMEDIA_TYPE_VIDEO:
|
||||
@@ -554,43 +554,43 @@ bool Input::UpdateTracks()
|
||||
break;
|
||||
case AVMEDIA_TYPE_AUDIO:
|
||||
switch(stream->codec->codec_id) {
|
||||
case AV_CODEC_ID_MP2:
|
||||
track.ac3flags = 1;
|
||||
break;
|
||||
case AV_CODEC_ID_MP3:
|
||||
track.ac3flags = 2;
|
||||
break;
|
||||
case AV_CODEC_ID_AC3:
|
||||
track.ac3flags = 3;
|
||||
break;
|
||||
case AV_CODEC_ID_DTS:
|
||||
track.ac3flags = 4;
|
||||
break;
|
||||
case AV_CODEC_ID_AAC: {
|
||||
unsigned int extradata_size = stream->codec->extradata_size;
|
||||
unsigned int object_type = 2;
|
||||
if(extradata_size >= 2)
|
||||
object_type = stream->codec->extradata[0] >> 3;
|
||||
if (extradata_size <= 1 || object_type == 1 || object_type == 5) {
|
||||
fprintf(stderr, "use resampling for AAC\n");
|
||||
track.ac3flags = 6;
|
||||
}
|
||||
else
|
||||
track.ac3flags = 5;
|
||||
break;
|
||||
}
|
||||
case AV_CODEC_ID_FLAC:
|
||||
track.ac3flags = 8;
|
||||
break;
|
||||
case AV_CODEC_ID_WMAV1:
|
||||
case AV_CODEC_ID_WMAV2:
|
||||
case AV_CODEC_ID_WMAVOICE:
|
||||
case AV_CODEC_ID_WMAPRO:
|
||||
case AV_CODEC_ID_WMALOSSLESS:
|
||||
track.ac3flags = 9;
|
||||
break;
|
||||
case AV_CODEC_ID_MP2:
|
||||
track.ac3flags = 1;
|
||||
break;
|
||||
case AV_CODEC_ID_MP3:
|
||||
track.ac3flags = 2;
|
||||
break;
|
||||
case AV_CODEC_ID_AC3:
|
||||
track.ac3flags = 3;
|
||||
break;
|
||||
case AV_CODEC_ID_DTS:
|
||||
track.ac3flags = 4;
|
||||
break;
|
||||
case AV_CODEC_ID_AAC: {
|
||||
unsigned int extradata_size = stream->codec->extradata_size;
|
||||
unsigned int object_type = 2;
|
||||
if(extradata_size >= 2)
|
||||
object_type = stream->codec->extradata[0] >> 3;
|
||||
if (extradata_size <= 1 || object_type == 1 || object_type == 5) {
|
||||
fprintf(stderr, "use resampling for AAC\n");
|
||||
track.ac3flags = 6;
|
||||
}
|
||||
else
|
||||
track.ac3flags = 5;
|
||||
break;
|
||||
}
|
||||
case AV_CODEC_ID_FLAC:
|
||||
track.ac3flags = 8;
|
||||
break;
|
||||
case AV_CODEC_ID_WMAV1:
|
||||
case AV_CODEC_ID_WMAV2:
|
||||
case AV_CODEC_ID_WMAVOICE:
|
||||
case AV_CODEC_ID_WMAPRO:
|
||||
case AV_CODEC_ID_WMALOSSLESS:
|
||||
track.ac3flags = 9;
|
||||
break;
|
||||
default:
|
||||
track.ac3flags = 0;
|
||||
track.ac3flags = 0;
|
||||
}
|
||||
player->manager.addAudioTrack(track);
|
||||
if (!audioTrack)
|
||||
|
@@ -311,7 +311,7 @@ bool Output::SwitchAudio(Track *track)
|
||||
}
|
||||
audioTrack = track;
|
||||
if (track->stream) {
|
||||
AVCodecContext *avcc = track->stream->codec;
|
||||
AVCodecContext *avcc = track->stream->codec;
|
||||
if (!avcc)
|
||||
return false;
|
||||
audioWriter = Writer::GetWriter(avcc->codec_id, avcc->codec_type, audioTrack->ac3flags);
|
||||
|
@@ -242,24 +242,24 @@ bool WriterPCM::Write(AVPacket *packet, int64_t pts)
|
||||
restart_audio_resampling = false;
|
||||
initialHeader = true;
|
||||
|
||||
if (swr) {
|
||||
swr_free(&swr);
|
||||
swr = NULL;
|
||||
if (swr) {
|
||||
swr_free(&swr);
|
||||
swr = NULL;
|
||||
}
|
||||
if (decoded_frame) {
|
||||
av_frame_free(&decoded_frame);
|
||||
decoded_frame = NULL;
|
||||
if (decoded_frame) {
|
||||
av_frame_free(&decoded_frame);
|
||||
decoded_frame = NULL;
|
||||
}
|
||||
|
||||
AVCodec *codec = avcodec_find_decoder(c->codec_id);
|
||||
if (!codec) {
|
||||
fprintf(stderr, "%s %d: avcodec_find_decoder(%llx)\n", __func__, __LINE__, (unsigned long long) c->codec_id);
|
||||
return false;
|
||||
if (!codec) {
|
||||
fprintf(stderr, "%s %d: avcodec_find_decoder(%llx)\n", __func__, __LINE__, (unsigned long long) c->codec_id);
|
||||
return false;
|
||||
}
|
||||
avcodec_close(c);
|
||||
if (avcodec_open2(c, codec, NULL)) {
|
||||
fprintf(stderr, "%s %d: avcodec_open2 failed\n", __func__, __LINE__);
|
||||
return false;
|
||||
if (avcodec_open2(c, codec, NULL)) {
|
||||
fprintf(stderr, "%s %d: avcodec_open2 failed\n", __func__, __LINE__);
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -315,13 +315,13 @@ bool WriterPCM::Write(AVPacket *packet, int64_t pts)
|
||||
while (packet_size > 0 || (!packet_size && !packet->data)) {
|
||||
int got_frame = 0;
|
||||
|
||||
if (!decoded_frame) {
|
||||
if (!(decoded_frame = av_frame_alloc())) {
|
||||
fprintf(stderr, "out of memory\n");
|
||||
exit(1);
|
||||
}
|
||||
} else
|
||||
av_frame_unref(decoded_frame);
|
||||
if (!decoded_frame) {
|
||||
if (!(decoded_frame = av_frame_alloc())) {
|
||||
fprintf(stderr, "out of memory\n");
|
||||
exit(1);
|
||||
}
|
||||
} else
|
||||
av_frame_unref(decoded_frame);
|
||||
|
||||
int len = avcodec_decode_audio4(c, decoded_frame, &got_frame, packet);
|
||||
if (len < 0) {
|
||||
|
@@ -68,21 +68,21 @@ static Writer writer __attribute__ ((init_priority (300)));
|
||||
|
||||
Writer *Writer::GetWriter(enum AVCodecID id, enum AVMediaType codec_type, int track_type)
|
||||
{
|
||||
fprintf(stderr, "GETWRITER %d %d %d", id, codec_type, track_type);
|
||||
fprintf(stderr, "GETWRITER %d %d %d", id, codec_type, track_type);
|
||||
if (track_type != 6) { // hack for ACC resampling
|
||||
std::map<enum AVCodecID,Writer*>::iterator it = writers.find(id);
|
||||
if (it != writers.end())
|
||||
return it->second;
|
||||
if (it != writers.end())
|
||||
return it->second;
|
||||
}
|
||||
switch (codec_type) {
|
||||
case AVMEDIA_TYPE_AUDIO:
|
||||
if (id == AV_CODEC_ID_INJECTPCM) // should not happen
|
||||
break;
|
||||
return GetWriter(AV_CODEC_ID_INJECTPCM, codec_type, 100);
|
||||
return GetWriter(AV_CODEC_ID_INJECTPCM, codec_type, 100);
|
||||
case AVMEDIA_TYPE_VIDEO:
|
||||
if (id == AV_CODEC_ID_MPEG2TS) // should not happen
|
||||
break;
|
||||
return GetWriter(AV_CODEC_ID_MPEG2TS, codec_type, 100);
|
||||
return GetWriter(AV_CODEC_ID_MPEG2TS, codec_type, 100);
|
||||
default:
|
||||
break;
|
||||
}
|
||||
|
Reference in New Issue
Block a user