Commit Graph

279 Commits

Author SHA1 Message Date
Clément Bœsch
a8ac2a1530 doc/examples: make fill_samples static.
This is required to build with FFmpeg compilation options.
2013-11-28 13:54:44 +01:00
Clément Bœsch
e5102feb6b doc/examples: add transcode_aac to local Makefile. 2013-11-28 13:19:50 +01:00
Michael Niedermayer
ba728c1a25 doc/examples/transcode_aac: remove non converted codepath
This codepath is not implemented and just crashes, also its simpler
without special cases, which makes sense for an example

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-11-27 11:22:19 +01:00
Michael Niedermayer
7497c894cd doc/examples/transcode_aac: switch to swresample
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-11-27 11:15:48 +01:00
Michael Niedermayer
02abc905cd doc/examples/transcode_aac: fix project name
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-11-27 10:52:05 +01:00
Michael Niedermayer
715f3623f8 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  Add an audio transcoding example.

Conflicts:
	configure
	doc/Makefile

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-11-27 10:31:08 +01:00
Andreas Unterweger
10421bcf0a Add an audio transcoding example.
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2013-11-27 09:20:05 +01:00
Diego Biurrun
ab81f24ad4 build: Integrate multilibrary examples into the build system
This includes moving libavformat/output-example to doc/examples/output.
2013-11-25 11:57:29 -08:00
Stefano Sabatini
50a28b1393 doc/examples: do not check NULL values for avcodec_close()
avcodec_close() does nothing in case the argument is NULL. Simplify.
2013-11-21 23:29:56 +01:00
Clément Bœsch
1f7b7d5447 doc/examples: fix mem issues in filtering_video. 2013-11-19 10:31:39 +01:00
Michael Niedermayer
0ee905e243 Merge commit '5b9c3b4505206143d85398c1410949319fa1180f'
* commit '5b9c3b4505206143d85398c1410949319fa1180f':
  Replace all instances of avcodec_alloc_frame() with av_frame_alloc().

Conflicts:
	doc/examples/decoding_encoding.c
	doc/examples/muxing.c
	ffmpeg.c
	libavcodec/alacenc.c
	libavcodec/libopenjpegenc.c
	libavcodec/libvpxenc.c
	libavcodec/pcm.c
	libavcodec/xbmenc.c
	libavcodec/xwdenc.c
	libavformat/utils.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-11-16 23:54:10 +01:00
Clément Bœsch
fb10b43fc4 doc/examples: rename demuxing to demuxing_decoding.
That example shows how the decoding process works, not only the
demuxing.
2013-11-04 12:53:06 +01:00
Clément Bœsch
d10b1a200d doc/examples/demuxing: show how to use the reference counting system. 2013-11-04 12:53:06 +01:00
Clément Bœsch
0c6bb53bb2 doc/examples/demuxing: reset got_frame.
Fix infinite loop at flushing.
2013-10-30 14:37:58 +01:00
Clément Bœsch
dc8f732292 doc/examples: fix lib math dep for resampling_audio.
It uses at least sin()
2013-09-04 15:49:18 +02:00
Clément Bœsch
98b9bbb787 doc/examples: remove extra "the".
"into the doc/examples directory" vs "into doc/examples".
2013-09-04 15:46:31 +02:00
Michael Niedermayer
f187390907 doc/examples/filtering_audio: make const arrays also static
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-08-03 22:22:03 +02:00
wm4
72f5a6d067 examples: demuxing: print ffplay command even if sample format is planar
Adjust the code so that a working ffplay command is printed in the
planar audio case.
2013-07-19 12:14:54 +02:00
wm4
9f31c1608c examples: demuxing: simplify audio output
There is no reason why this should copy the audio data in a very
complicated way. Also, strictly write the first plane, instead of
writing the whole buffer. This is more helpful in context of the
example. This way a user can clearly confirm that it works by playing
the written data as raw audio.
2013-07-19 12:14:46 +02:00
wm4
06b269dacb examples: demuxing: do partial audio packet decoding
This assumes one audio packet is decoded one time. This is not true:
packets can be partially decoded. Then you have to "adjust" the packet
and pass the undecoded part of the packet to the decode function again.
2013-07-19 12:14:23 +02:00
Stefano Sabatini
2aa2b4ac65 examples/muxing: add support to audio resampling
Allows to encode to output in case the destination sample format is
different from AV_SAMPLE_FMT_S16.
2013-07-06 12:31:16 +02:00
Stefano Sabatini
838bd73139 lavfi: create Libav-API compatibility layer for avfilter_graph_parse() at the next bump
Add function avfilter_graph_parse_ptr() and favor it in place of
avfilter_graph_parse(), which will be restored with the old/Libav
signature at the next bump.

If HAVE_INCOMPATIBLE_LIBAV_API is enabled it will use the
Libav-compatible signature for avfilter_graph_parse().

At the next major bump the current implementation of
avfilter_graph_parse() should be dropped in favor of the Libav/old
implementation.

Should address trac ticket #2672.
2013-07-03 13:21:42 +02:00
Stefano Sabatini
759dfd5684 examples/muxing: make more compact audio/video_time computation 2013-07-03 11:31:34 +02:00
Stefano Sabatini
80b56a7bdd examples/muxing: rename audio/video_pts to audio/video_time
The new name is less confusing, since the variables represent times
rather than timestamps.
2013-06-26 23:38:42 +02:00
Stefano Sabatini
c58d535b2f examples/Makefile: disable -O2 optimizations
There is no much point in optimizing example code, and the -O2 flag is
annoying when debugging.
2013-06-26 23:21:39 +02:00
Stefano Sabatini
3aa57e1582 examples/muxing: remove useless instruction
Simpler and less confusing.
2013-06-26 23:21:06 +02:00
Stefano Sabatini
4b6cf1ce0e examples/muxing: vertically align 2013-06-25 21:36:53 +02:00
Nicolas George
300ca0763b examples/filtering_audio: fix frame leak.
The frame is not used after being added to the filter
graph, there is no need to keep the reference.
2013-04-18 17:03:01 +02:00
Pavel Koshevoy
e5644313c5 examples/filtering_audio: get rid of AVABufferSinkParams
AVABufferSinkParams are ignored by avfilter_graph_create_filter,
therefore the example is misleading.  Use av_opt_set_int_list to
configure abuffersink directly.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-04-17 11:11:57 +02:00
Michael Niedermayer
f2619cbd61 examples/filtering_audio: enable ref counted frames
Fixes accessing freed memory

Signe-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-04-17 11:11:57 +02:00
Clément Bœsch
9ab221f8d8 lavfi: deprecate aconvert.
This filter is not required anymore with aformat. Drop it at next bump.
2013-04-11 22:13:45 +02:00
Michael Niedermayer
e7389ed5d0 Merge commit 'bcc94328980e6c56546792ab08b0756abdce310b'
* commit 'bcc94328980e6c56546792ab08b0756abdce310b':
  opt: check the return values of av_get_token for ENOMEM.
  doc: Fix best_nb_channells typo
  matroska: pass the lace size to the matroska_parse_rm_audio

Conflicts:
	libavformat/matroskadec.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-04-04 13:00:59 +02:00
Stefano Sabatini
66c92a1575 examples/resampling_audio: make use of av_samples_alloc_array_and_samples()
Simplify.
2013-03-31 18:00:45 +02:00
Stefano Sabatini
9bb25dbd13 examples/filtering_*: constify AVFrame * for print_frame() and display_frame() functions 2013-03-14 21:39:15 +01:00
Stefano Sabatini
9076a6a943 examples/filtering_audio: update to new API
In particular, fix crash.
2013-03-14 21:39:09 +01:00
Stefano Sabatini
f0da370a52 examples/filtering_video: update to new API
In particular, fix crash.
2013-03-14 21:39:01 +01:00
Nicolas George
ceac5c54dd Remove references to the "ff" variant of buffersink. 2013-03-12 23:31:07 +01:00
Michael Niedermayer
5743095ca9 Merge commit '9d3009c6c4b9b6734f07df7c88f6a42ded6cdf38'
* commit '9d3009c6c4b9b6734f07df7c88f6a42ded6cdf38':
  avconv: print an error on applying options of the wrong type.
  atomic: Check for __sync_val_compare_and_swap instead of __sync_synchronize
  output-example: Update to use encode_video2 instead of the now dropped encode_video

Conflicts:
	doc/examples/muxing.c
	ffmpeg_opt.c
	libavutil/atomic.h

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-12 18:10:35 +01:00
Clément Bœsch
5e4bc96415 doc: fix examples. 2013-03-10 01:41:53 +01:00
Nicolas George
9b211c43dc examples/muxing: fix memory leak.
Do not re-call avcodec_get_context_defaults3(), it is already
called by avformat_new_stream() and it leaks the codec
priv_data that was already allocated.

Use avformat_free_context() instead of freeing (not)
everything manually.

Fix trac ticket #2322.
2013-03-05 15:43:32 +01:00
Michael Niedermayer
5ade6bfb03 doc/examples/demuxing: use AVFrame accessor functions
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-01 22:40:50 +01:00
Nicolas George
dcc73aaaa9 doc/examples: do not allocate AVFrame directly.
The size of the AVFrame structure is not part of the ABI;
it can grow with later versions. Therefore, applications
are not supposed to allocate AVFrame directly, they are
supposed to use avcodec_alloc_frame() instead.
2013-02-17 15:51:50 +01:00
Stefano Sabatini
772b949d8e examples/scaling_video: fix typo 2013-02-15 00:28:53 +01:00
Angelo Haller
e7a39e163d examples/demuxing: free AVPacket after usage
Fix leak.
2013-01-15 23:37:30 +01:00
Michael Niedermayer
48a7981e6f doc/examples: fix assignments in if()
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-01-14 05:05:20 +01:00
Nicolas George
e4f14c32b9 examples/muxing: improve error messages.
Illustrate the use of return values, av_err2str and
avcodec_get_name.
2013-01-02 17:42:00 +01:00
Michael Niedermayer
55b243cade doc/examples/resampling_audio.c: fix path
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-12-16 21:37:23 +01:00
Stefano Sabatini
89920387da examples: add resampling_audio.c file 2012-12-06 10:09:37 +01:00
Michael Niedermayer
03b078721c Merge commit '97bf7c03b1338a867da52c159a2afecbdedcfa88'
* commit '97bf7c03b1338a867da52c159a2afecbdedcfa88':
  doc: git-howto: Leave reviewers time to react before pushing patches
  Include libavutil/channel_layout.h instead of libavutil/audioconvert.h
  lavu: rename audioconvert.* to channel_layout.* and deprecate audioconvert.h

Conflicts:
	doc/APIchanges
	doc/examples/decoding_encoding.c
	doc/git-howto.texi
	ffmpeg_filter.c
	libavcodec/flacdec.c
	libavcodec/imc.c
	libavcodec/mpegaudiodec.c
	libavcodec/utils.c
	libavfilter/asrc_anullsrc.c
	libavfilter/audio.c
	libavfilter/avfilter.c
	libavfilter/avfilter.h
	libavfilter/avfiltergraph.c
	libavfilter/buffer.c
	libavutil/Makefile
	libavutil/audioconvert.h
	libavutil/channel_layout.c
	libavutil/version.h

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-11-12 11:32:11 +01:00
Stefano Sabatini
e8c0b6710c examples/muxing: fix typo: allocated -> allocate 2012-11-06 11:28:28 +01:00
Stefano Sabatini
7f6f8f642c examples/demuxing: fix braino
s/video/audio/ in a log message.
2012-11-06 01:10:12 +01:00
Stefano Sabatini
794cea588c examples/demuxing: dump input information *after* trying to open audio stream
Implement more logical code flow.
2012-11-06 01:10:12 +01:00
Michael Niedermayer
ca28cb5f83 examples: fix doxy so they appear on the example page
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-10-26 16:32:32 +02:00
Stefano Sabatini
33c4535db7 examples/decoding_encoding: add and use the decode_write_frame function
Allow to factorize code in video_decode_example(), simplify.
2012-10-24 00:29:37 +02:00
Stefano Sabatini
d3b8d56e06 examples/decoding_encoding: prefer 'frame' over 'picture' for an AVFrame
Decrease confusion.
2012-10-20 19:42:55 +02:00
Stefano Sabatini
935ecfb002 examples/scaling_video: remove unnecessary intermediary variable in fill_yuv_frame() 2012-10-20 12:06:45 +02:00
Stefano Sabatini
7b116a94af examples/decoding_encoding: fix misc typos in the usage text 2012-10-20 11:30:13 +02:00
Stefano Sabatini
8c4753f7f5 examples/decoding_encoding: remove misplaced and confusing comment 2012-10-20 11:30:13 +02:00
Stefano Sabatini
6d6ccbae4c examples/decoding_encoding: add missing checks on avcodec_alloc_context3() 2012-10-20 11:30:13 +02:00
Stefano Sabatini
eebde404bc examples/muxing: merge add_audio_stream() and add_video_stream()
Factorize.
2012-10-17 21:39:13 +02:00
Stefano Sabatini
eda0a52bf1 examples/muxing: check on frame
Fix crash in case frame is not defined (e.g. with muxing out.wav).
2012-10-17 21:39:13 +02:00
Stefano Sabatini
d6196d9421 examples/muxing: fix bogus setting of st->id 2012-10-17 21:39:12 +02:00
Stefano Sabatini
5ca298df2d examples/muxing: remove misleading comment about pending API change
The API was never changed since 2003. Replace with a comment about the
performed operation.
2012-10-17 21:39:12 +02:00
Stefano Sabatini
1f7962625c examples/muxing: remove video_outbuf unused and useless code 2012-10-17 21:39:12 +02:00
Michael Niedermayer
7b8fd29816 examples/muxing: fix video pts
Fixes Ticket1801
Based on suggestion from AztecC
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-10-17 02:40:00 +02:00
Stefano Sabatini
7ca102a7d7 examples: add README file with simple compilation instructions 2012-10-16 13:34:48 +02:00
Stefano Sabatini
a726ac9a11 examples/muxing: extend usage notice 2012-10-15 21:36:14 +02:00
Stefano Sabatini
59e31aa2ca examples/muxing: provide more information in case of avcodec_open2 failure 2012-10-15 15:35:50 +02:00
Stefano Sabatini
6133149e0c examples/muxing: add missing error checks 2012-10-15 15:35:50 +02:00
Stefano Sabatini
e56b3a5ebb examples/muxing: fix case inconsistency in message 2012-10-15 15:35:49 +02:00
Michael Niedermayer
ac627b3d38 Merge commit '716d413c13981da15323c7a3821860536eefdbbb'
* commit '716d413c13981da15323c7a3821860536eefdbbb':
  Replace PIX_FMT_* -> AV_PIX_FMT_*, PixelFormat -> AVPixelFormat

Conflicts:
	doc/examples/muxing.c
	ffmpeg.h
	ffmpeg_filter.c
	ffmpeg_opt.c
	ffplay.c
	ffprobe.c
	libavcodec/8bps.c
	libavcodec/aasc.c
	libavcodec/aura.c
	libavcodec/avcodec.h
	libavcodec/avs.c
	libavcodec/bfi.c
	libavcodec/bmp.c
	libavcodec/bmpenc.c
	libavcodec/c93.c
	libavcodec/cscd.c
	libavcodec/cyuv.c
	libavcodec/dpx.c
	libavcodec/dpxenc.c
	libavcodec/eatgv.c
	libavcodec/escape124.c
	libavcodec/ffv1.c
	libavcodec/flashsv.c
	libavcodec/fraps.c
	libavcodec/h264.c
	libavcodec/huffyuv.c
	libavcodec/iff.c
	libavcodec/imgconvert.c
	libavcodec/indeo3.c
	libavcodec/kmvc.c
	libavcodec/libopenjpegdec.c
	libavcodec/libopenjpegenc.c
	libavcodec/libx264.c
	libavcodec/ljpegenc.c
	libavcodec/mjpegdec.c
	libavcodec/mjpegenc.c
	libavcodec/motionpixels.c
	libavcodec/mpeg12.c
	libavcodec/mpeg12enc.c
	libavcodec/mpeg4videodec.c
	libavcodec/mpegvideo_enc.c
	libavcodec/pamenc.c
	libavcodec/pcxenc.c
	libavcodec/pgssubdec.c
	libavcodec/pngdec.c
	libavcodec/pngenc.c
	libavcodec/pnm.c
	libavcodec/pnmdec.c
	libavcodec/pnmenc.c
	libavcodec/ptx.c
	libavcodec/qdrw.c
	libavcodec/qpeg.c
	libavcodec/qtrleenc.c
	libavcodec/raw.c
	libavcodec/rawdec.c
	libavcodec/rl2.c
	libavcodec/sgidec.c
	libavcodec/sgienc.c
	libavcodec/snowdec.c
	libavcodec/snowenc.c
	libavcodec/sunrast.c
	libavcodec/targa.c
	libavcodec/targaenc.c
	libavcodec/tiff.c
	libavcodec/tiffenc.c
	libavcodec/tmv.c
	libavcodec/truemotion2.c
	libavcodec/utils.c
	libavcodec/vb.c
	libavcodec/vp3.c
	libavcodec/wnv1.c
	libavcodec/xl.c
	libavcodec/xwddec.c
	libavcodec/xwdenc.c
	libavcodec/yop.c
	libavdevice/v4l2.c
	libavdevice/x11grab.c
	libavfilter/avfilter.c
	libavfilter/avfilter.h
	libavfilter/buffersrc.c
	libavfilter/drawutils.c
	libavfilter/formats.c
	libavfilter/src_movie.c
	libavfilter/vf_ass.c
	libavfilter/vf_drawtext.c
	libavfilter/vf_fade.c
	libavfilter/vf_format.c
	libavfilter/vf_hflip.c
	libavfilter/vf_lut.c
	libavfilter/vf_overlay.c
	libavfilter/vf_pad.c
	libavfilter/vf_scale.c
	libavfilter/vf_transpose.c
	libavfilter/vf_yadif.c
	libavfilter/video.c
	libavfilter/vsrc_testsrc.c
	libavformat/movenc.c
	libavformat/mxf.h
	libavformat/utils.c
	libavformat/yuv4mpeg.c
	libavutil/imgutils.c
	libavutil/pixdesc.c
	libswscale/input.c
	libswscale/output.c
	libswscale/swscale_internal.h
	libswscale/swscale_unscaled.c
	libswscale/utils.c
	libswscale/x86/swscale_template.c
	libswscale/x86/yuv2rgb.c
	libswscale/x86/yuv2rgb_template.c
	libswscale/yuv2rgb.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-10-08 21:06:57 +02:00
Michael Niedermayer
46a35959d8 Merge commit '7751e4693dd10ec98c20fbd9887233b575034272'
* commit '7751e4693dd10ec98c20fbd9887233b575034272':
  ogg: check that the expected number of headers had been parsed
  libx264: change default to closed gop to match x264cli
  Use avcodec_free_frame() to free AVFrames.
  lavf: use a malloced AVFrame in try_decode_frame().
  lavc: add avcodec_free_frame().
  lavc: ensure extended_data is set properly on decoding
  lavc: initialize AVFrame.extended_data in avcodec_get_frame_defaults()
  lavc: use av_mallocz to allocate AVFrames.
  lavc: rename the argument of avcodec_alloc_frame/get_frame_defaults

Conflicts:
	doc/APIchanges
	doc/examples/decoding_encoding.c
	libavcodec/utils.c
	libavcodec/version.h
	libavfilter/src_movie.c
	libavformat/oggdec.c
	libavformat/oggdec.h
	libavformat/oggparsetheora.c
	libavformat/utils.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-09-25 15:15:16 +02:00
Stefano Sabatini
51fa653829 examples/decoding_encoding: clarify operations in the usage message 2012-09-13 22:19:45 +02:00
Stefano Sabatini
bcf93f78a5 examples/decoding_encoding: replace "picture" with "frame" in encode_example()
The use of "picture" in place of "frame" is confusing.
2012-09-13 20:49:59 +02:00
Stefano Sabatini
70b671a283 examples/decoding_encoding: apply various message log fixes 2012-09-13 20:49:59 +02:00
Stefano Sabatini
34b5b735f9 examples/muxing: add check on avformat_write_header() result 2012-09-11 21:43:27 +02:00
Stefano Sabatini
b3e2975ab3 examples/muxing: apply misc fixes to log messages 2012-09-11 21:43:27 +02:00
Stefano Sabatini
1d0048cfe3 examples/muxing: rename img_convert_ctx to sws_ctx
The new name is more consistent with the codebase, and more
self-consistent with the libswscale API.
2012-09-11 21:43:18 +02:00
Stefano Sabatini
976bb42aca examples/muxing: merge some declarations and definitions 2012-09-11 21:41:56 +02:00
Stefano Sabatini
bdd9bfbbab examples/muxing: prefer AVPicture to AVFrame, when feasible
Favor the use of plain AVPicture over AVFrame, especially when the use of
AVFrame is not required like in the case of tmp_picture.

Also adopt more straightforward names, to avoid frame/picture confusion.
2012-09-11 21:41:56 +02:00
Stefano Sabatini
2fe8fd3948 examples/demuxing: add audio decoding/demuxing 2012-09-11 17:48:07 +02:00
Stefano Sabatini
3b34cbce19 examples/scaling_video: write to rawvideo file
This is more useful for testing purposes. Also allow to specify the name
of the output file.
2012-09-04 11:29:28 +02:00
Stefano Sabatini
c8ef309379 examples: add demuxing.c example 2012-09-02 10:48:01 +02:00
Michael Niedermayer
3061664a57 avoid ambigous buffersink names
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-09-01 06:05:08 +02:00
Stefano Sabatini
db0a0aa243 examples/scaling_video: add logging in case of image allocation failure 2012-08-30 23:39:32 +02:00
Stefano Sabatini
952caf11f2 examples/muxing: remove pointless #undef exit 2012-08-30 23:39:32 +02:00
Stefano Sabatini
cb6defb053 examples/scaling_video: consistently use printf rather than av_log() 2012-08-30 21:48:50 +02:00
Stefano Sabatini
078e203379 examples/scaling_video: add file doxy 2012-08-30 21:48:24 +02:00
Stefano Sabatini
e53becc70f examples/Makefile: give priority to pkg-config flags
In case CFLAGS/LDLIBS are already defined and conflicting with the
pkg-config flags, give priority to the latter since they are used to
detect compilation flags.

This should fix for example the case where there are many different
instances of a library, CFLAGS=-I/foo/include and pkg-config cflags say
-I/bar/include.
2012-08-30 21:46:44 +02:00
Stefano Sabatini
2cbffc6706 examples/Makefile: remove duplicated -f switch
$(RM) already includes that flag.

Spotted-by: ubitux
2012-08-28 20:09:42 +02:00
Stefano Sabatini
74419fcf45 examples: add scaling_video example
This example should be useful to show the basic functionality of the
libswscale API.

More advanced features (scaling options etc., colorspace tweaking) may be
added later.
2012-08-28 20:09:37 +02:00
Stefano Sabatini
60924dfe55 examples/decoding_encoding: make operation logic more self-evident / predictable
Add a switch which controls which operation to perform.  Useful to test
only a single feature. Also the new behavior is more self-consistent.
2012-08-27 10:09:48 +02:00
Stefano Sabatini
3b0e2763f4 examples/Makefile: apply misc minor fixes to the RM rule
Use $(RM) in place of rm, drop useless "-r" for removing files.
2012-08-27 10:09:39 +02:00
Stefano Sabatini
c0bca6425d examples/decoding_encoding: store temporary files in current dir
Do not clutter the temporary directory with files, also "/tmp" is not
always available, e.g. in Windows.

Also add the clean-test Makefile rule, which will clean the generated
files.
2012-08-27 10:09:31 +02:00
Stefano Sabatini
fef9e84114 examples/decoding_encoding.c: tell where the decoding output files are printed 2012-08-24 17:31:10 +02:00
Stefano Sabatini
864e8adcf1 examples/muxing: update to the new avcodec_encode_video2() API 2012-08-24 17:31:10 +02:00
Stefano Sabatini
a7219529d1 examples/decoding_encoding: flush audio frames in the encoder 2012-08-22 11:54:30 +02:00
Stefano Sabatini
535df748c5 examples/decoding_encoding: re-organize frame configuration code
Put the relevant code in one chunk, also check for frame allocation
failures.
2012-08-22 11:54:24 +02:00
Stefano Sabatini
005af8ce61 examples/muxing: cast sws_scale() argument to the expected one
Fix warnings:
muxing.c: In function ‘write_video_frame’:
muxing.c:326:23: warning: passing argument 2 of ‘sws_scale’ from incompatible pointer type [enabled by default]
2012-08-22 01:03:48 +02:00
Michael Niedermayer
c581cb4e4f Merge remote-tracking branch 'qatar/master'
* qatar/master:
  Fix even more missing includes after the common.h removal
  build: Factor out rangecoder dependencies to CONFIG_RANGECODER
  build: Factor out error resilience dependencies to CONFIG_ERROR_RESILIENCE
  x86: avcodec: Consistently name all init files
  Add more missing includes after removing the implicit common.h
  Add some more missing includes after removing the implicit common.h
  Don't include common.h from avutil.h
  rtmp: Automatically compute the hash for SWFVerification

Conflicts:
	configure
	doc/APIchanges
	doc/examples/decoding_encoding.c
	libavcodec/Makefile
	libavcodec/assdec.c
	libavcodec/audio_frame_queue.c
	libavcodec/avpacket.c
	libavcodec/dv_profile.c
	libavcodec/dwt.c
	libavcodec/libtheoraenc.c
	libavcodec/rawdec.c
	libavcodec/rv40dsp.c
	libavcodec/tiff.c
	libavcodec/tiffenc.c
	libavcodec/v210dec.h
	libavcodec/vc1dsp.c
	libavcodec/x86/Makefile
	libavfilter/asrc_anullsrc.c
	libavfilter/avfilter.c
	libavfilter/buffer.c
	libavfilter/formats.c
	libavfilter/vf_ass.c
	libavfilter/vf_drawtext.c
	libavfilter/vf_fade.c
	libavfilter/vf_select.c
	libavfilter/video.c
	libavfilter/vsrc_testsrc.c
	libavformat/version.h
	libavutil/audioconvert.c
	libavutil/error.h
	libavutil/version.h

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-16 16:20:30 +02:00
Michael Niedermayer
9e89bc37ed Merge remote-tracking branch 'qatar/master'
* qatar/master:
  rtmp: Add support for SWFVerification
  api-example: use new video encoding API.
  x86: avcodec: Appropriately name files containing only init functions
  mpegvideo_mmx_template: drop some commented-out cruft
  libavresample: add mix level normalization option
  w32pthreads: Add missing #includes to make header compile standalone
  rtmp: Gracefully ignore _checkbw errors by tracking them
  rtmp: Do not send _checkbw calls as notifications
  prores: interlaced ProRes encoding

Conflicts:
	doc/examples/decoding_encoding.c
	libavcodec/proresenc_kostya.c
	libavcodec/w32pthreads.h
	libavcodec/x86/Makefile
	libavformat/version.h

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-15 15:55:24 +02:00
Michael Niedermayer
11a1033c9f Merge remote-tracking branch 'qatar/master'
* qatar/master: (23 commits)
  build: cosmetics: Reorder some lists in a more logical fashion
  x86: pngdsp: Fix assembly for OS/2
  fate: add test for RTjpeg in nuv with frameheader
  rtmp: send check_bw as notification
  g723_1: clip argument for 15-bit version of normalize_bits()
  g723_1: use all LPC vectors in formant postfilter
  id3v2: Support v2.2 PIC
  avplay: fix build with lavfi disabled.
  avconv: split configuring filter configuration to a separate file.
  avconv: split option parsing into a separate file.
  mpc8: do not leave padding after last frame in buffer for the next decode call
  mpegaudioenc: list supported channel layouts.
  mpegaudiodec: don't print an error on > 1 frame in a packet.
  api-example: update to new audio encoding API.
  configure: add --enable/disable-random option
  doc: cygwin: Update list of FATE package requirements
  build: Remove all installed headers and header directories on uninstall
  build: change checkheaders to use regular build rules
  rtmp: Add a new option 'rtmp_subscribe'
  rtmp: Add support for subscribing live streams
  ...

Conflicts:
	Makefile
	common.mak
	configure
	doc/examples/decoding_encoding.c
	ffmpeg.c
	libavcodec/g723_1.c
	libavcodec/mpegaudiodec.c
	libavcodec/x86/pngdsp.asm
	libavformat/version.h
	library.mak
	tests/fate/video.mak

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-09 00:51:02 +02:00
Michael Niedermayer
7a72695c05 Merge commit '36ef5369ee9b336febc2c270f8718cec4476cb85'
* commit '36ef5369ee9b336febc2c270f8718cec4476cb85':
  Replace all CODEC_ID_* with AV_CODEC_ID_*
  lavc: add AV prefix to codec ids.

Conflicts:
	doc/APIchanges
	doc/examples/decoding_encoding.c
	doc/examples/muxing.c
	ffmpeg.c
	ffprobe.c
	ffserver.c
	libavcodec/8svx.c
	libavcodec/avcodec.h
	libavcodec/dnxhd_parser.c
	libavcodec/dvdsubdec.c
	libavcodec/error_resilience.c
	libavcodec/h263dec.c
	libavcodec/libvorbisenc.c
	libavcodec/mjpeg_parser.c
	libavcodec/mjpegenc.c
	libavcodec/mpeg12.c
	libavcodec/mpeg4videodec.c
	libavcodec/mpegvideo.c
	libavcodec/mpegvideo_enc.c
	libavcodec/pcm.c
	libavcodec/r210dec.c
	libavcodec/utils.c
	libavcodec/v210dec.c
	libavcodec/version.h
	libavdevice/alsa-audio-dec.c
	libavdevice/bktr.c
	libavdevice/v4l2.c
	libavformat/asfdec.c
	libavformat/asfenc.c
	libavformat/avformat.h
	libavformat/avidec.c
	libavformat/caf.c
	libavformat/electronicarts.c
	libavformat/flacdec.c
	libavformat/flvdec.c
	libavformat/flvenc.c
	libavformat/framecrcenc.c
	libavformat/img2.c
	libavformat/img2dec.c
	libavformat/img2enc.c
	libavformat/ipmovie.c
	libavformat/isom.c
	libavformat/matroska.c
	libavformat/matroskadec.c
	libavformat/matroskaenc.c
	libavformat/mov.c
	libavformat/movenc.c
	libavformat/mp3dec.c
	libavformat/mpeg.c
	libavformat/mpegts.c
	libavformat/mxf.c
	libavformat/mxfdec.c
	libavformat/mxfenc.c
	libavformat/nsvdec.c
	libavformat/nut.c
	libavformat/oggenc.c
	libavformat/pmpdec.c
	libavformat/rawdec.c
	libavformat/rawenc.c
	libavformat/riff.c
	libavformat/sdp.c
	libavformat/utils.c
	libavformat/vocenc.c
	libavformat/wtv.c
	libavformat/xmv.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-07 22:45:46 +02:00
Stefano Sabatini
13bbc464ed examples/muxing: set codec in the codec context
Make add_{audio,video}_stream return the found codec, and pass it to
avcodec_open2() through open_{audio,video} functions.

Fix failure:
No codec provided to avcodec_open2().
could not open codec

This is also consistent with the use of the avcodec_open2() API in the
codebase.
2012-08-07 20:04:19 +02:00
Stefano Sabatini
b907655303 examples/muxing: drop duplicated code in add_video_stream() 2012-08-05 15:36:38 +02:00
Stefano Sabatini
66747a6160 examples/muxing: simplify alloc_picture()
Use avpicture_alloc() high level function.
2012-08-05 00:26:39 +02:00
Gavin Kinsey
37b5959d96 examples/filtering: fix packet memleak
Free packets unconditionally after demuxing, and not only when the
packets belong to a given stream.

Signed-off-by: Stefano Sabatini <stefasab@gmail.com>
2012-06-26 19:04:17 +02:00
Gavin Kinsey
9ebed95db6 examples/filtering_video: update to the new API
Update the video filtering example program based on the audio one.

Signed-off-by: Stefano Sabatini <stefasab@gmail.com>
2012-06-26 19:04:11 +02:00
Michael Niedermayer
11f2cad127 examples/filtering_audio: update for avfilter API "cleanup"
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-06-24 14:15:53 +02:00
Andrew Wason
1ef802d038 update filtering_audio example
The filtering_audio.c example needs to be updated for the new
"abuffer" filter args.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-06-05 03:02:41 +02:00
Clément Bœsch
4fd573970a doc/examples: make use of the parameter filters_descr parameter in init_filters(). 2012-05-19 12:29:05 +02:00
Clément Bœsch
e692b9d564 doc/examples: fix pts heuristic in filtering_video.
Note: the condition looked wrong in the first place ("if DTS is not
defined, then set PTS to that undefined value [...]").
2012-05-19 12:28:59 +02:00
Clément Bœsch
5e82ec9b42 doc/examples: properly close input in metadata.
Avoid some memleaks.
2012-05-19 12:28:59 +02:00
Clément Bœsch
50df68fd50 doc/examples: print operation filename in decoding_encoding. 2012-05-19 12:28:59 +02:00
Clément Bœsch
c6bbe3c2a7 doc/examples: add debug compilation flag. 2012-05-19 12:28:59 +02:00
Clément Bœsch
6c211085bb doc/examples: use system headers in decoding_encoding and muxing.
All the other examples already use the system installed headers.
2012-05-19 12:28:58 +02:00
Clément Bœsch
136ca0e5f8 doc/examples: remove explicit rules.
These rules are already in gmake builtins.
2012-05-19 12:28:58 +02:00
Clément Bœsch
7aedfeebfb doc/examples: add libavr to libraries to avoid link failures. 2012-05-19 12:28:48 +02:00
Stefano Sabatini
4d4098da00 lavfi: drop planar/packed negotiation support
The planar/packed switch and the packing_formats list is no longer
required, since the planar/packed information is now stored in the sample
format enum.

This is technically a major API break, possibly it should be not too
painful as we marked the audio filtering API as unstable.
2012-05-16 13:16:05 +02:00
Clément Bœsch
be062de9d4 doc/examples: add libswresample in the libraries.
It is required for audio filtering.
2012-05-12 19:58:44 +02:00
Clément Bœsch
55e5f105d3 doc/examples: use buffersrc.h instead of deprecated asrc_abuffer.h. 2012-05-12 19:58:36 +02:00
Clément Bœsch
9188294d30 doc/examples: fix typo. 2012-05-12 18:08:26 +02:00
Clément Bœsch
5b55c7f4e9 doc/examples: add -O2 in CFLAGS. 2012-05-12 17:59:41 +02:00
Clément Bœsch
072c2c08bf doc/examples: add missing math.h include in decoding/encoding example.
The header is required for the sin() function.
2012-05-12 17:59:41 +02:00
Clément Bœsch
2f197a20cf doc/examples: link decoding_encoding and muxing with math lib.
These two examples use the sin() function.
2012-05-12 17:59:41 +02:00
Clément Bœsch
9a19341e6e doc/examples: rename LDFLAGS to LDLIBS. 2012-05-12 17:59:41 +02:00
Michael Niedermayer
0261902dac doc/examples/Makefile: split lines up to make diffs that change them clearer
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-05-08 20:18:53 +02:00
Nicolas George
9f357e2bcd examples/filtering_audio: use av_buffersrc_add_frame. 2012-05-04 23:26:41 +02:00
Michael Niedermayer
28d37f7160 examples/decoding_encoding: fix encoding when all frames got buffered.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-05-03 12:25:17 +02:00
Nicolas George
a0a0199da3 examples/filtering_audio: do not stop on decode error.
Decode errors can happen with concatenated MP3s
with different formats.
2012-04-28 10:28:15 +02:00
Nicolas George
8f19483d06 examples/filtering_audio: fix a memory leak. 2012-04-28 10:28:15 +02:00
Stefano Sabatini
e21dac3a4f examples/decoding_encoding: remove unused variable "size"
Remove unused variable size from video_encode_example() function.

Fix GCC warning:
decoding_encoding.c:214:22: warning: unused variable ‘size’ [-Wunused-variable]
2012-04-13 00:13:31 +02:00
Michael Niedermayer
2b6325cacb Merge remote-tracking branch 'qatar/master'
* qatar/master:
  h264: drop ff_h264_ prefix from static function ff_h264_decode_rbsp_trailing()
  h264: Make ff_h264_decode_end() static, it is not used externally.
  output-example: K&R formatting cosmetics, comment spelling fixes
  avf: make the example output the proper message
  avf: fix audio writing in the output-example
  mov: don't overwrite existing indexes.
  lzw: fix potential integer overflow.
  truemotion: forbid invalid VLC bitsizes and token values.
  truemotion2: handle out-of-frame motion vectors through edge extension.
  configure: Check for a different SDL function

Conflicts:
	configure
	doc/examples/muxing.c
	libavcodec/truemotion2.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-03-30 22:10:17 +02:00
Michael Niedermayer
eb9841297a doc/examples/decoding_encoding: make the buffer bigger.
This should be converted to the new API

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-03-22 05:25:26 +01:00
Michael Niedermayer
b008ac18bb Merge remote-tracking branch 'qatar/master'
* qatar/master:
  docs: use -bsf:[vas] instead of -[vas]bsf.
  mpegaudiodec: Prevent premature clipping of mp3 input buffer.
  lavf: move the packet keyframe setting code.
  oggenc: free comment header for all codecs
  lcl: error out if uncompressed input buffer is smaller than framesize.
  mjpeg: abort decoding if packet is too large.
  golomb: use HAVE_BITS_REMAINING() macro to prevent infloop on EOF.
  get_bits: add HAVE_BITS_REMAINING macro.
  lavf/output-example: use new audio encoding API correctly.
  lavf/output-example: more proper usage of the new API.
  tiff: Prevent overreads in the type_sizes array.
  tiff: Make the TIFF_LONG and TIFF_SHORT types unsigned.
  apetag: do not leak memory if avio_read() fails
  apetag: propagate errors.
  SBR DSP x86: implement SSE sbr_hf_g_filt
  SBR DSP x86: implement SSE sbr_sum_square_sse
  SBR DSP: use intptr_t for the ixh parameter.

Conflicts:
	doc/bitstream_filters.texi
	doc/examples/muxing.c
	doc/ffmpeg.texi
	libavcodec/golomb.h
	libavcodec/x86/Makefile
	libavformat/oggenc.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-02-25 04:00:43 +01:00
Clément Bœsch
2bdac29360 doc/examples: rename filtering.c into filtering_video.c. 2012-02-21 22:34:39 +01:00
Clément Bœsch
aecf0cf5ed doc/examples: add audio decoding/filtering example.
Mostly based on doc/examples/filtering.c. lavfi API is still limited to
"buffer feeding" instead of "frame feeding" at the moment, so this
example code sticks with it.
2012-02-21 16:45:37 +01:00
Michael Niedermayer
be2e211dce Merge remote-tracking branch 'qatar/master'
* qatar/master:
  doxy: remove reference to removed api
  examples: unbreak compilation
  ttadec: cosmetics: reindent
  sunrast: use RLE trigger macro inplace of the hard coded value.
  sunrastenc: set keyframe flag for the output packet.
  mpegvideo_enc: switch to encode2().
  mpegvideo_enc: force encoding delay of at least 1 frame when low_delay=0

Conflicts:
	doc/examples/muxing.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-02-20 01:29:30 +01:00
Clément Bœsch
624c413d55 examples: add -Wall to CFLAGS. 2012-02-19 02:18:29 +01:00
Clément Bœsch
2b97be5d57 examples/filtering: fix unused variable and return value in open_input_file(). 2012-02-19 02:18:29 +01:00
Clément Bœsch
b117c39237 examples/filtering: fix deprecated function calls warnings. 2012-02-19 02:18:29 +01:00
Clément Bœsch
f075537561 examples/filtering: fix implicit declarations and function mis-usage. 2012-02-19 02:18:29 +01:00
Michael Niedermayer
cb73e35660 example: Update decoding/encoding example to the new API.
Reviewed-by: Paul B Mahol <onemda@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-01-28 19:47:53 +01:00
Michael Niedermayer
afe9105f66 example: update muxing example to purple API
Reviewed-by: Paul B Mahol <onemda@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-01-28 19:47:25 +01:00
Michael Niedermayer
0e187fd13c decoding example: reset pts/dts after subpacket.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-12-13 19:47:57 +01:00
Michael Niedermayer
25b9eef410 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  cljr: K&R cosmetics
  cljr: return a more sensible value when encountering invalid headers
  cljr: drop unnecessary emms_c() calls without MMX code
  cljr: remove useless casts
  cljr: group encode/decode parts under single ifdefs
  cljr: remove stray semicolon
  cljr: add missing return statement in decode_end()
  doc: add pulseaudio to the input list
  avconv: remove unsubstantiated comment
  shorten: avoid abort() on unknown audio types
  cljr: add encoder
  build: merge lists of HTML documentation targets
  tests/examples: Mark some variables only used within their files as static.
  tests/tools/examples: Replace direct exit() calls by return.
  x86 cpuid: set vendor union members separately
  cljr: release picture at end of decoding
  rv40: NEON optimised rv40 qpel motion compensation

Conflicts:
	doc/examples/muxing.c
	libavcodec/cljr.c
	libavcodec/version.h

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-12-09 00:05:51 +01:00
Michael Niedermayer
b404ab9e74 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  mov: Don't av_malloc(0).
  avconv: only allocate 1 AVFrame per input stream
  avconv: fix memleaks due to not freeing the AVFrame for audio
  h264-fate: remove -strict 1 except where necessary (mr4/5-tandberg).
  misc Doxygen markup improvements
  doxygen: eliminate Qt-style doxygen syntax
  g722: Add a regression test for muxing/demuxing in wav
  g722: Change bits per sample to 4
  g722dec: Signal skipping the lower bits via AVOptions instead of bits_per_coded_sample
  api-example: update to use avcodec_decode_audio4()
  avplay: use avcodec_decode_audio4()
  avplay: use a separate buffer for playing silence
  avformat: use avcodec_decode_audio4() in avformat_find_stream_info()
  avconv: use avcodec_decode_audio4() instead of avcodec_decode_audio3()
  mov: Allow empty stts atom.
  doc: document preferred Doxygen syntax and make patcheck detect it

Conflicts:
	avconv.c
	ffplay.c
	libavcodec/mlpdec.c
	libavcodec/version.h
	libavformat/mov.c
	tests/codec-regression.sh
	tests/fate/h264.mak

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-12-06 01:37:27 +01:00
Michael Niedermayer
cf257f30b9 doc/example/muxing: fix video timestamps
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-12-02 23:31:20 +01:00
Michael Niedermayer
096701d9b2 muxing example: set encoder defaults
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-12-02 22:54:49 +01:00
Clément Bœsch
2f0f9a87d0 Fix various if parenthesis misplacements. 2011-11-21 19:35:33 +01:00