torte lehmann | 25 Jul 11:49 2016
Picon
Picon

Question to the "new" libav api

Hello libav users,
 
I have recently started using the libav api for decoding audio files. For playing them I used the ao api. It just woked fine.
After updating to the newest version I got some warning for deprecated functions namely: avcodec_decode_audio4().
 
After checking the web, I tried to update my code using avcodec_send_packet() and avcodec_receive_frame().
But however it isnt working. Sometimes I got a failure called: could not update timestamps and somtimes it seems as if no frames are received.
 
I found a short mail (https://ffmpeg.org/pipermail/ffmpeg-devel/2016-March/190525.html) in which it seems to say the new api is not working yet.
 
Is this true or is something wrong in my code?
_______________________________________________
Libav-user mailing list
Libav-user <at> ffmpeg.org
http://ffmpeg.org/mailman/listinfo/libav-user
Puneet Kapoor | 20 Jul 22:46 2016
Picon

Fast parsing of H.264 video stream using libavcodec

Hi,

I am using Libav* libraries to decode the frames from the byte stream data I am receiving from another thread.

I have been able to successfully parse the byte stream and render video correctly using the OpenCV API. Basic flow in my code using libav is like:
init() { 
avcodec_find_decoder(AV_CODEC_ID_H264) ;
avcodec_alloc_context3(codec);
avcodec_open2(codec_context, codec, NULL)
picture = av_frame_alloc();
pictureBGR = av_frame_alloc();
parser = av_parser_init(AV_CODEC_ID_H264);
codec_context->thread_count = 2; // tried to increase threads
}

readFrame() {
int len = av_parser_parse2(parser, codec_context, &data, &size,
                             &buffer[0], buffer.size(), 0, 0, AV_NOPTS_VALUE); 
...
int len_dec = avcodec_decode_video2(codec_context, picture, &got_picture, &pkt); 
// takes most time (~77%)

...
iResult = sws_scale(...)
}

The problem I am facing is related to performance of my decoding code. My program manages to do 10 frames per second (fps) for a 720p video. When I save the same video stream as a file and use OpenCV code to parse it, it is able to parse the same video at around 24 fps.

I did basic profiling of my code and found that most of the time is going in decoding call "avcodec_decode_video2()" (~77% time) and SWS rescaling call "sws_scale()" (~18% time).

I haven't profiled the OpenCV code, but one difference I noticed is that OpenCV code uses multiple cores from top and time command statistics(shared below). And, my code runs single threaded.
My question here is: How can I improve the performance of my code ? By making it multithreaded ? Are there any library specific tweaks that can help ?

Time command statistics
For OpenCV code:
real 0m17.496s
user 0m48.030s
sys 0m2.410s

For My code using Libav library:
real 0m39.478s
user 0m39.380s
sys 0m0.100s


Thanks
Puneet

_______________________________________________
Libav-user mailing list
Libav-user <at> ffmpeg.org
http://ffmpeg.org/mailman/listinfo/libav-user
ssshukla26 | 20 Jul 12:55 2016
Picon

decoding for stream 0 failed ?

Hi,

I am implementing a custom decoder of qualcomm chipset into ffmpeg, have a
working linux application for the same. I am able to run decoder, but its
closing with aN error as show below.

Note: The output format is nv12 tiled, we have already added support for
nv12 tile to yuv420p conversion in libswscale.

0001-NV12-Tile-pixel-format-support-added.patch
<http://libav-users.943685.n4.nabble.com/file/n4662340/0001-NV12-Tile-pixel-format-support-added.patch>

# *ffmpeg -f h264 -c:v h264_qhw -i no_mans_sky_1080p_10sec.h264 -pix_fmt
nv12_tiled -s 1920x1080 -r 30 out_1080p.yuv*
ffmpeg version N-80917-gc5096bc Copyright (c) 2000-2016 the FFmpeg
developers
  built with gcc 4.9.2 (crosstool-NG linaro-1.13.1-4.9-2014.09 - Linaro GCC
4.9-2014.09) 20140904 (prerelease)
  configuration: --prefix=comark_SBC_ffmpeg/ --enable-shared
--enable-nonfree --enable-pic --enable-gpl --enable-cross-compile
--cross-prefix=arm-linux-gnueabihf- --arch=arm --target-os=linux
--extra-cflags=-I../sdl/source/SDL-1.2.15/comark_SBC_SDL//include/SDL/
--extra-ldflags='-L../sdl/source/SDL-1.2.15/comark_SBC_SDL//lib/ -lSDL'
  libavutil      55. 28.100 / 55. 28.100
  libavcodec     57. 48.101 / 57. 48.101
  libavformat    57. 41.100 / 57. 41.100
  libavdevice    57.  0.102 / 57.  0.102
  libavfilter     6. 47.100 /  6. 47.100
  libswscale      4.  1.100 /  4.  1.100
  libswresample   2.  1.100 /  2.  1.100
  libpostproc    54.  0.100 / 54.  0.100
Initialized Params
 <at>  328 in init_params : width = 1920 & height = 1080
Initialized Decoder
 <at>  680 in vdec_set_buffer_requirement : Input Buffer mincount=1
maxcount=32
actualcount=3
,buffer_size=2097152
,alignment=2048
 <at>  703 in vdec_set_buffer_requirement : Output Buffer mincount=6
maxcount=32
actualcount=10
,buffer_size=3137536
,alignment=8192
 <at>  910 in vdec_alloc_h264_mv : Entered vdec_alloc_h264_mv act_width: 1920,
act_height: 1080, size: 5570560, alignment 8192
Start Decoder
Buffers freed for reconfiguration
 <at>  910 in vdec_alloc_h264_mv : Entered vdec_alloc_h264_mv act_width: 1920,
act_height: 1080, size: 5570560, alignment 8192
Buffers allocated for reconfiguration
*[h264  <at>  0x4a260] decoding for stream 0 failed*

Stop Decoder
De-Initialized Decoder
De-Initialized Params
*[h264  <at>  0x4a260] Could not find codec parameters for stream 0 (Video: h264
(High), none, 1920x1080): unspecified pixel format
*Consider increasing the value for the 'analyzeduration' and 'probesize'
options
Input #0, h264, from 'no_mans_sky_1080p_10sec.h264':
  Duration: N/A, bitrate: N/A
    Stream #0:0: Video: h264 (High), none, 1920x1080, 12.50 fps, 25 tbr,
1200k tbn, 25 tbc
File 'out_1080p.yuv' already exists. Overwrite ? [y/N] n
Not overwriting - exiting

Please help.

--
View this message in context: http://libav-users.943685.n4.nabble.com/Libav-user-decoding-for-stream-0-failed-tp4662372.html
Sent from the libav-users mailing list archive at Nabble.com.
_______________________________________________
Libav-user mailing list
Libav-user <at> ffmpeg.org
http://ffmpeg.org/mailman/listinfo/libav-user
qw | 20 Jul 13:32 2016

one question about network blocking issue

Hi,

I'm making program to read and write rtmp av stream. If network is bad, some ffmpeg functions will block indefinitely.

The rtmp application will use the following functions, including avformat_open_input(), avformat_find_stream_info(), avformat_alloc_output_context2(), avio_open(), avformat_write_header(), av_read_frame(), av_interleaved_write_frame(), av_write_trailer(), avformat_close_input(), and avformat_free_context().

The above functions are used in ffmpeg and transcoding binary programs.

Which function has indefinite-block issue? How to avoid indefinite-block issue?

Thanks!

Regards

Andrew


 

_______________________________________________
Libav-user mailing list
Libav-user <at> ffmpeg.org
http://ffmpeg.org/mailman/listinfo/libav-user
qw | 20 Jul 13:11 2016

how to deal with network timeout

Hi,

I'm making program to read and write rtmp stream to server. Many ffmpeg functions are related in network operation, such as connection, read and write:

avformat_open_input(), avformat_find_stream_info(), av_read_frame(), and av_interleaved_write_frame().

If network is not good, avformat_open_input() and av_read_frame() will wait indefinitely. How to deal with indefinite-waiting issue?

Thanks!

Regards

Andrew


 

_______________________________________________
Libav-user mailing list
Libav-user <at> ffmpeg.org
http://ffmpeg.org/mailman/listinfo/libav-user
qw | 20 Jul 11:57 2016

One question about timeout in rtmp

Hi,

I use native rtmp in ffmpeg 3.1.1 to demuxer rtmp stream from nginx server. avformat_open_input() is used to open input rtmp stream. Native rtmp plugin supports 'timeout' option as shown below:

  -timeout           <int>        .D...... Maximum timeout (in seconds) to wait for incoming connections. -1 is infinite. Implies -rtmp_listen 1 (from INT_MIN to INT_MAX) (default -1)

I add timeout of 10 seconds to rtmp option set, and call avformat_open_input().

    AVDictionary *format_opts = NULL;
    av_dict_set(&format_opts, "timeout", "10", 0);
    avformat_open_input(fmt-ctx, rtmp-url, NULL, &format_opts);

But avformat_open_input() will return immediately with error messages as follows:

[rtmp <at> 0x8ff9a0] Cannot open connection tcp://localhost:1935?listen&listen_timeout=10000
Cannot open input rtmp url:
    rtmp://localhost:1935/live1/abc!
Fail to call openInputLiveStream()!

nginx server didn't provide live streaming service. It was expected that avformat_open_input() would return in 10 seconds with error mesage. But why did the function return immediately?

Thanks!

Regards

Andrew




 

_______________________________________________
Libav-user mailing list
Libav-user <at> ffmpeg.org
http://ffmpeg.org/mailman/listinfo/libav-user
Josef Vosyka | 19 Jul 22:16 2016
Picon
Gravatar

ffmpeg command line for video rendered from set of image snapshots

What is the correct parameter for ffmpeg cmd line with libopenh264 to
make a video from image snapshots.

I used for example this:

    ffmpeg -start_number 1 -framerate 2 -i img_%d.jpg -c:v h264
-profile:v baseline -r 25 -s 208:160 movie.mp4

I've tried:
- various jpeg, png sets of images
- many other variants of cmd with/without -profile, -r, -s, ...
-preset is not recognized ...

LOG shows that proper encoder libopenh264 is recognized.

The error message is:

    Error while opening encoder for output stream #0:0 - maybe
incorrect parameters such as bit_rate, rate, width or height

Always this same error for all possible parameter variations.

Appreciate your help,
--Josef Vosyka
_______________________________________________
Libav-user mailing list
Libav-user <at> ffmpeg.org
http://ffmpeg.org/mailman/listinfo/libav-user
rizvan.kuliev | 18 Jul 16:24 2016

swr_convert_frame returns -1 while converting u8 to s16 audio format

Hi all!

I'm trying to use swresample library to resample audio format from AV_SAMPLE_FMT_U8 to AV_SAMPLE_FMT_S16.

My file is:

>ffmpeg -i D:\cam_md_start_1.wav

ffmpeg version 0.11.5 Copyright (c) 2000-2014 the FFmpeg developers
  built on Sep 26 2014 01:10:12 with gcc 4.9-win32 (GCC)
  configuration: --enable-memalign-hack --arch=x86_64 --target-os=mingw32 --cross-prefix=x86_64-w64-mingw32- --disable-ffprobe --disable-ffplay --build-suffix=-ovs-3.1 --enable-shared --disable-static --enable-libass --prefix=/home/gzh/sdk/mingw-x86_64/ffmpeg-ovs-3.1
  libavutil      54.  7.100 / 54.  7.100
  libavcodec     56.  1.100 / 56.  1.100
  libavformat    56.  4.101 / 56.  4.101
  libavdevice    56.  0.100 / 56.  0.100
  libavfilter     5.  1.100 /  5.  1.100
  libswscale      3.  0.100 /  3.  0.100
  libswresample   1.  1.100 /  1.  1.100
Guessed Channel Layout for  Input Stream #0.0 : mono
Input #0, wav, from 'D:\cam_md_start_1.wav':
  Duration: 00:00:01.49, bitrate: 176 kb/s
    Stream #0:0: Audio: pcm_u8 ([1][0][0][0] / 0x0001), 22050 Hz, 1 channels, u8, 176 kb/s
At least one output file must be specified

d:\ngp.sdk64\ffmpeg-ovs-3.1\bin>

The code looks like this:

std::unique_ptr<SwrContext, SwrContextDtor> m_swr;
            m_swr.reset(swr_alloc());
            av_opt_set_int(m_swr.get(), "in_channel_layout", frame->channel_layout, 0);
            av_opt_set_int(m_swr.get(), "out_channel_layout", frame->channel_layout, 0);
            av_opt_set_int(m_swr.get(), "in_sample_rate", frame->sample_rate, 0);
            av_opt_set_int(m_swr.get(), "out_sample_rate", frame->sample_rate, 0);
            av_opt_set_sample_fmt(m_swr.get(), "in_sample_fmt", (AVSampleFormat)frame->format, 0);
            av_opt_set_sample_fmt(m_swr.get(), "out_sample_fmt", AV_SAMPLE_FMT_S16, 0);
            swr_init(m_swr.get());
std::unique_ptr<AVFrame, AVFrameDtor> converted(av_frame_alloc());
        converted->channel_layout = frame->channel_layout;
        converted->sample_rate = frame->sample_rate;
        converted->format = AV_SAMPLE_FMT_S16;
        int err = swr_convert_frame(m_swr.get(), converted.get(), frame.get());

The problem is that swr_convert_frame returns value -1 and doesn't convert the frame.
I have attached input frame as frame.txt and output as converted.txt.

Please, could someone help me to understand why swr_convert_frame fails to convert format?

--

 
AxxonSoft

Rizvan Kuliev

Programmer

rizvan.kuliev-bPb0IJF3sVXby3iVrkZq2A@public.gmane.org

 
          CONFIDENTIALITY NOTICE
-		frame	unique_ptr {data=0x00000256dc92d260 {0x00000256dc938c60
"}~~~~~~}}}~~~~~~~~~~~~~~~~~~ЂЂЂЂ~~~~~~~~~~~~~~}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~}~~~~~}~~~~~~~~~~~~~ЂЂЂЂЂЂ...,
...} ...}	std::unique_ptr<AVFrame,NMMSS::AVFrameDtor> &
-		[ptr]	0x00000256dc92d260 {data=0x00000256dc92d260 {0x00000256dc938c60
"}~~~~~~}}}~~~~~~~~~~~~~~~~~~ЂЂЂЂ~~~~~~~~~~~~~~}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~}~~~~~}~~~~~~~~~~~~~ЂЂЂЂЂЂ...,
...} ...}	AVFrame *
+		data	0x00000256dc92d260 {0x00000256dc938c60
"}~~~~~~}}}~~~~~~~~~~~~~~~~~~ЂЂЂЂ~~~~~~~~~~~~~~}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~}~~~~~}~~~~~~~~~~~~~ЂЂЂЂЂЂ...,
...}	unsigned char *[8]
+		linesize	0x00000256dc92d2a0 {4096, 0, 0, 0, 0, 0, 0, 0}	int[8]
+		extended_data	0x00000256dc92d260 {0x00000256dc938c60
"}~~~~~~}}}~~~~~~~~~~~~~~~~~~ЂЂЂЂ~~~~~~~~~~~~~~}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~}~~~~~}~~~~~~~~~~~~~ЂЂЂЂЂЂ...}	unsigned
char * *
		width	0	int
		height	0	int
		nb_samples	4096	int
		format	0	int
		key_frame	1	int
		pict_type	AV_PICTURE_TYPE_NONE (0)	AVPictureType
+		base	0x00000256dc92d2e0 {0x0000000000000000 <NULL>, 0x0000000000000000 <NULL>,
0x0000000000000000 <NULL>, ...}	unsigned char *[8]
+		sample_aspect_ratio	{num=0 den=1 }	AVRational
		pts	-9223372036854775808	__int64
		pkt_pts	0	__int64
		pkt_dts	0	__int64
		coded_picture_number	0	int
		display_picture_number	0	int
		quality	0	int
		reference	0	int
+		qscale_table	0x0000000000000000 <NULL>	char *
		qstride	0	int
		qscale_type	0	int
+		mbskip_table	0x0000000000000000 <NULL>	unsigned char *
+		motion_val	0x00000256dc92d368 {0x0000000000000000 {???, ???}, 0x0000000000000000 {???,
???}}	short[2] *[2]
+		mb_type	0x0000000000000000 {???}	unsigned int *
+		dct_coeff	0x0000000000000000 {???}	short *
+		ref_index	0x00000256dc92d388 {0x0000000000000000 <NULL>, 0x0000000000000000 <NULL>}	char *[2]
		opaque	0x0000000000000000	void *
+		error	0x00000256dc92d3a0 {0, 0, 0, 0, 0, 0, 0, 0}	unsigned __int64[8]
		type	1	int
		repeat_pict	0	int
		interlaced_frame	0	int
		top_field_first	0	int
		palette_has_changed	0	int
		buffer_hints	0	int
+		pan_scan	0x0000000000000000 <NULL>	AVPanScan *
		reordered_opaque	-9223372036854775808	__int64
		hwaccel_picture_private	0x0000000000000000	void *
+		owner	0x0000000000000000 <NULL>	AVCodecContext *
		thread_opaque	0x0000000000000000	void *
		motion_subsample_log2	0 '\0'	unsigned char
		sample_rate	22050	int
		channel_layout	0	unsigned __int64
+		buf	0x00000256dc92d430 {0x0000000000000000 <NULL>, 0x0000000000000000 <NULL>,
0x0000000000000000 <NULL>, ...}	AVBufferRef *[8]
+		extended_buf	0x0000000000000000 {???}	AVBufferRef * *
		nb_extended_buf	0	int
+		side_data	0x0000000000000000 {???}	AVFrameSideData * *
		nb_side_data	0	int
		flags	0	int
		color_range	AVCOL_RANGE_UNSPECIFIED (0)	AVColorRange
		color_primaries	AVCOL_PRI_UNSPECIFIED (2)	AVColorPrimaries
		color_trc	AVCOL_TRC_UNSPECIFIED (2)	AVColorTransferCharacteristic
		colorspace	AVCOL_SPC_UNSPECIFIED (2)	AVColorSpace
		chroma_location	AVCHROMA_LOC_UNSPECIFIED (0)	AVChromaLocation
		best_effort_timestamp	0	__int64
		pkt_pos	-1	__int64
		pkt_duration	0	__int64
		metadata	0x0000000000000000 <NULL>	AVDictionary *
		decode_error_flags	0	int
		channels	1	int
		pkt_size	4096	int
+		qp_table_buf	0x0000000000000000 <NULL>	AVBufferRef *

+		frame	unique_ptr {data=0x00000256dc92d260 {0x00000256dc92aec0
"}~~~~~~}}}~~~~~~~~~~~~~~~~~~ЂЂЂЂ~~~~~~~~~~~~~~}}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~}~~~~~}~~~~~~~~~~~~~ЂЂЂЂЂЂ...,
...} ...}	std::unique_ptr<AVFrame,NMMSS::AVFrameDtor> &
		formatContext	identifier "formatContext" is undefined	
		codecContext	identifier "codecContext" is undefined	
		m_codecContext	identifier "m_codecContext" is undefined	
-		converted	unique_ptr {data=0x00000256dc939c80 {0x0000000000000000 <NULL>,
0x0000000000000000 <NULL>, 0x0000000000000000 <NULL>, ...} ...}	std::unique_ptr<AVFrame,NMMSS::AVFrameDtor>
-		[ptr]	0x00000256dc939c80 {data=0x00000256dc939c80 {0x0000000000000000 <NULL>,
0x0000000000000000 <NULL>, 0x0000000000000000 <NULL>, ...} ...}	AVFrame *
+		data	0x00000256dc939c80 {0x0000000000000000 <NULL>, 0x0000000000000000 <NULL>,
0x0000000000000000 <NULL>, ...}	unsigned char *[8]
+		linesize	0x00000256dc939cc0 {0, 0, 0, 0, 0, 0, 0, 0}	int[8]
+		extended_data	0x00000256dc939c80 {0x0000000000000000 <NULL>}	unsigned char * *
		width	0	int
		height	0	int
		nb_samples	0	int
		format	1	int
		key_frame	1	int
		pict_type	AV_PICTURE_TYPE_NONE (0)	AVPictureType
+		base	0x00000256dc939d00 {0x0000000000000000 <NULL>, 0x0000000000000000 <NULL>,
0x0000000000000000 <NULL>, ...}	unsigned char *[8]
+		sample_aspect_ratio	{num=0 den=1 }	AVRational
		pts	-9223372036854775808	__int64
		pkt_pts	-9223372036854775808	__int64
		pkt_dts	-9223372036854775808	__int64
		coded_picture_number	0	int
		display_picture_number	0	int
		quality	0	int
		reference	0	int
+		qscale_table	0x0000000000000000 <NULL>	char *
		qstride	0	int
		qscale_type	0	int
+		mbskip_table	0x0000000000000000 <NULL>	unsigned char *
+		motion_val	0x00000256dc939d88 {0x0000000000000000 {???, ???}, 0x0000000000000000 {???,
???}}	short[2] *[2]
+		mb_type	0x0000000000000000 {???}	unsigned int *
+		dct_coeff	0x0000000000000000 {???}	short *
+		ref_index	0x00000256dc939da8 {0x0000000000000000 <NULL>, 0x0000000000000000 <NULL>}	char *[2]
		opaque	0x0000000000000000	void *
+		error	0x00000256dc939dc0 {0, 0, 0, 0, 0, 0, 0, 0}	unsigned __int64[8]
		type	0	int
		repeat_pict	0	int
		interlaced_frame	0	int
		top_field_first	0	int
		palette_has_changed	0	int
		buffer_hints	0	int
+		pan_scan	0x0000000000000000 <NULL>	AVPanScan *
		reordered_opaque	0	__int64
		hwaccel_picture_private	0x0000000000000000	void *
+		owner	0x0000000000000000 <NULL>	AVCodecContext *
		thread_opaque	0x0000000000000000	void *
		motion_subsample_log2	0 '\0'	unsigned char
		sample_rate	22050	int
		channel_layout	0	unsigned __int64
+		buf	0x00000256dc939e50 {0x0000000000000000 <NULL>, 0x0000000000000000 <NULL>,
0x0000000000000000 <NULL>, ...}	AVBufferRef *[8]
+		extended_buf	0x0000000000000000 {???}	AVBufferRef * *
		nb_extended_buf	0	int
+		side_data	0x0000000000000000 {???}	AVFrameSideData * *
		nb_side_data	0	int
		flags	0	int
		color_range	AVCOL_RANGE_UNSPECIFIED (0)	AVColorRange
		color_primaries	AVCOL_PRI_UNSPECIFIED (2)	AVColorPrimaries
		color_trc	AVCOL_TRC_UNSPECIFIED (2)	AVColorTransferCharacteristic
		colorspace	AVCOL_SPC_UNSPECIFIED (2)	AVColorSpace
		chroma_location	AVCHROMA_LOC_UNSPECIFIED (0)	AVChromaLocation
		best_effort_timestamp	-9223372036854775808	__int64
		pkt_pos	-1	__int64
		pkt_duration	0	__int64
		metadata	0x0000000000000000 <NULL>	AVDictionary *
		decode_error_flags	0	int
		channels	0	int
		pkt_size	-1	int
+		qp_table_buf	0x0000000000000000 <NULL>	AVBufferRef *

_______________________________________________
Libav-user mailing list
Libav-user <at> ffmpeg.org
http://ffmpeg.org/mailman/listinfo/libav-user
qw | 17 Jul 12:24 2016

how to build ffmpeg lib for android and ios platform

Hi,

I know the steps of building ffmpeg lib on linux. However, how to build ffmpeg lib for android and ios platform?

Thanks!

Regards

andrew


 

_______________________________________________
Libav-user mailing list
Libav-user <at> ffmpeg.org
http://ffmpeg.org/mailman/listinfo/libav-user
straycodemonkey | 17 Jul 09:36 2016
Picon

av_buffersink_get_frame incompatible with sws_scale

I'm using av_buffersink_get_frame to perform deinterlacing of video frames
using the yadif filter. I then pass the resulting filtered onto a further
process to composite various elements together to create a final frame.
During this process sws_scale is used to resize / convert the filtered
frame, but in this case the sws_scale function is complaining about a bad
src pointer because the data in the deinterlaced, filtered frame is not 16
byte aligned.

I guess my question is, is this problem avoidable in any way? And if not, is
it a known problem that may be addressed in the future?

I'm using ffmpeg 3.1.1 taken from 11th July, 2016.

--
View this message in context: http://libav-users.943685.n4.nabble.com/av-buffersink-get-frame-incompatible-with-sws-scale-tp4662359.html
Sent from the libav-users mailing list archive at Nabble.com.
_______________________________________________
Libav-user mailing list
Libav-user <at> ffmpeg.org
http://ffmpeg.org/mailman/listinfo/libav-user
qw | 17 Jul 08:10 2016

what's the general setting for network reading and writing?

Hi,

If input or output is set to file, it's easy to set AVFormatContext. But for network application, there are many issues that should be considered, such as network delay, no network connection, and corrupted data. How to set AVFormatContext to deal with those general network issues?

Thanks!

Regards

Andrew


 

_______________________________________________
Libav-user mailing list
Libav-user <at> ffmpeg.org
http://ffmpeg.org/mailman/listinfo/libav-user

Gmane