fix merge

This commit is contained in:
Isaac Connor
2018-03-03 13:31:55 -08:00
parent 03d3f5e665
commit 646f0dd65e
2 changed files with 6 additions and 367 deletions

View File

@@ -135,77 +135,21 @@ AVFrame *FFmpeg_Input::get_frame( int stream_id, int frame_number ) {
// Check for Connection failure.
(ret == -110)
) {
Info( "av_read_frame returned %s.", av_make_error_string(ret).c_str() );
Info("av_read_frame returned %s.", av_make_error_string(ret).c_str());
} else {
Error( "Unable to read packet from stream %d: error %d \"%s\".", packet.stream_index, ret,
av_make_error_string(ret).c_str() );
Error("Unable to read packet from stream %d: error %d \"%s\".", packet.stream_index, ret,
av_make_error_string(ret).c_str());
}
return NULL;
}
<<<<<<< HEAD
if ( ( stream_id < 0 ) || ( packet.stream_index != stream_id ) ) {
Warning("Packet is not for our stream (%d)", packet.stream_index);
return NULL;
=======
if ( (stream_id < 0 ) || ( packet.stream_index == stream_id ) ) {
Debug(3,"Packet is for our stream (%d)", packet.stream_index );
AVCodecContext *context = streams[packet.stream_index].context;
#if LIBAVCODEC_VERSION_CHECK(57, 64, 0, 64, 0)
ret = avcodec_send_packet( context, &packet );
if ( ret < 0 ) {
av_strerror( ret, errbuf, AV_ERROR_MAX_STRING_SIZE );
Error( "Unable to send packet at frame %d: %s, continuing", streams[packet.stream_index].frame_count, errbuf );
zm_av_packet_unref( &packet );
continue;
} else {
Debug(1, "Success getting a packet");
}
#if HAVE_AVUTIL_HWCONTEXT_H
if ( hwaccel ) {
ret = avcodec_receive_frame( context, hwFrame );
if ( ret < 0 ) {
av_strerror( ret, errbuf, AV_ERROR_MAX_STRING_SIZE );
Error( "Unable to receive frame %d: %s, continuing", streams[packet.stream_index].frame_count, errbuf );
zm_av_packet_unref( &packet );
continue;
}
ret = av_hwframe_transfer_data(frame, hwFrame, 0);
if (ret < 0) {
av_strerror( ret, errbuf, AV_ERROR_MAX_STRING_SIZE );
Error( "Unable to transfer frame at frame %d: %s, continuing", streams[packet.stream_index].frame_count, errbuf );
zm_av_packet_unref( &packet );
continue;
}
} else {
#endif
Debug(1,"Getting a frame?");
ret = avcodec_receive_frame( context, frame );
if ( ret < 0 ) {
av_strerror( ret, errbuf, AV_ERROR_MAX_STRING_SIZE );
Error( "Unable to send packet at frame %d: %s, continuing", streams[packet.stream_index].frame_count, errbuf );
zm_av_packet_unref( &packet );
continue;
}
#if HAVE_AVUTIL_HWCONTEXT_H
>>>>>>> storageareas
}
<<<<<<< HEAD
if ( ! zm_receive_frame( streams[packet.stream_index].context, frame, packet ) ) {
if ( ! zm_receive_frame(streams[packet.stream_index].context, frame, packet) ) {
Error("Unable to get frame %d, continuing", streams[packet.stream_index].frame_count);
=======
frameComplete = 1;
# else
ret = zm_avcodec_decode_video(context, frame, &frameComplete, &packet);
if ( ret < 0 ) {
av_strerror(ret, errbuf, AV_ERROR_MAX_STRING_SIZE);
Error( "Unable to decode frame at frame %d: %s, continuing", streams[packet.stream_index].frame_count, errbuf );
>>>>>>> storageareas
zm_av_packet_unref( &packet );
continue;
} else {
@@ -213,12 +157,10 @@ AVFrame *FFmpeg_Input::get_frame( int stream_id, int frame_number ) {
streams[packet.stream_index].frame_count += 1;
}
zm_av_packet_unref( &packet );
zm_av_packet_unref(&packet);
if ( frame_number == -1 )
break;
} // end while frame_number > streams.frame_count
return frame;
} // end AVFrame *FFmpeg_Input::get_frame
} // end AVFrame *FFmpeg_Input::get_frame