]> git.ipfire.org Git - thirdparty/freeswitch.git/commitdiff
FS-7508: seems to work better restarting on error
authorAnthony Minessale <anthm@freeswitch.org>
Mon, 24 Nov 2014 16:18:19 +0000 (11:18 -0500)
committerMichael Jerris <mike@jerris.com>
Thu, 28 May 2015 17:46:48 +0000 (12:46 -0500)
src/mod/codecs/mod_vpx/mod_vpx.c

index 8c7bbecc7eed0216d254fad5c42caec1989ff3b2..e86ea7ff66e0502328afadaddc8b54681f928962 100644 (file)
@@ -517,7 +517,7 @@ static switch_status_t switch_vpx_decode(switch_codec_t *codec, switch_frame_t *
                (!frame->m) && (!context->last_received_complete_picture)) {
                // possible packet loss
                switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_WARNING, "Packet Loss, skip previous received frame (to avoid crash?)\n");
-               switch_goto_status(SWITCH_STATUS_NOTFOUND, end);
+               switch_goto_status(SWITCH_STATUS_RESTART, end);
        }
 
        context->last_received_timestamp = frame->timestamp;
@@ -552,7 +552,7 @@ static switch_status_t switch_vpx_decode(switch_codec_t *codec, switch_frame_t *
 
                if (err != VPX_CODEC_OK) {
                        switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_ERROR, "Error decoding %" SWITCH_SIZE_T_FMT " bytes, [%d:%d:%s]\n", len, err, decoder->err, decoder->err_detail);
-                       switch_goto_status(SWITCH_STATUS_NOTFOUND, end);
+                       switch_goto_status(SWITCH_STATUS_RESTART, end);
                }
 
                if (vpx_codec_control(decoder, VP8D_GET_FRAME_CORRUPTED, &corrupted) != VPX_CODEC_OK) {
@@ -564,7 +564,7 @@ static switch_status_t switch_vpx_decode(switch_codec_t *codec, switch_frame_t *
 
                if (!(frame->img) || corrupted) {
                        switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_WARNING, "VPX invalid packet\n");
-                       switch_goto_status(SWITCH_STATUS_NOTFOUND, end);
+                       switch_goto_status(SWITCH_STATUS_RESTART, end);
                }
 
                switch_buffer_zero(context->vpx_packet_buffer);