summaryrefslogtreecommitdiff
path: root/vpxenc.c
AgeCommit message (Collapse)Author
2014-07-02Adds support for reading and writing 10/12-bit y4mDeb Mukherjee
The y4m extension used is the same as the one used in ffmpeg/x264. The patch is adapted from the highbitdepth branch. Also adds unit tests for y4m header parsing and md5 check of the raw frame data, as well as y4m writing. Change-Id: Ie2794daf6dbafd2f128464f9b9da520fc54c0dd6
2014-05-20Updates libyuv to version 1005Deb Mukherjee
Also adds compile check and a libyuv configure flag Change-Id: Ib9f0f4a71c4083e6f0aea7b5a5d175531ef0f66b
2014-05-16Exit with error when vpxenc cannot correctly scale the input.Alex Converse
Change-Id: I4713406b751da06c41962f444f8873accc4fa044
2014-05-16Rewrite encoder input format handling.Alex Converse
The previous approach can't scale to all of or new formats. This also fixes YV12 input. Change-Id: Ic4ad333770bbbd0e921f519199b57862afcbe1ab
2014-05-12vpxenc: add some missing CONFIG_WEBM_IO checksJames Zern
fixes build of this file in the dist directory when using '--enable-install-srcs' Change-Id: Idb8dd5f392509e6a6d8a83908e53d161d2036971
2014-04-29Revert "Force ARNR filtering to be centered on the ARF frame"Adrian Grange
This reverts commit 59e733ca81b707780901340686ecd7419077eb54. Hold off removing arnr_type to give users the opportunity to change their script files to handle its deprecation. A follow-up patch will mark the control for setting arnr_type as deprecated and it will be removed completely in a later revision of the code. Change-Id: I8b817c744e144d3714234a4cd4309816d0c7e3e8
2014-04-22Force ARNR filtering to be centered on the ARF frameAdrian Grange
ARNR filtering is now forced to be centered on the ARF frame and the other two options have been removed. The other modes of constructing the ARNR frame were not used and there does not seem to be any good reason to maintain them. This is purely an encoder-side change. Change-Id: Ic772636d23f280752973852b9740083532a49de2
2014-04-17examples: remove off_t overridesJames Zern
this is error prone, int64 will suffice for all cases Change-Id: I94883f93518cfc356ed57b14dc39d79aebccf47d
2014-04-15Merge "More user friendly vpxenc help strings."Dmitry Kovalev
2014-04-14More user friendly vpxenc help strings.Dmitry Kovalev
Change-Id: I257fb32673c47848258dc7e6e22147d0beb49f86
2014-04-14Enable vpxenc to specify internal coded frame sizeAdrian Grange
Added command line flags "resize-width" & "resize-height" to allow the user to specify the frame size to encode at. These two flags are ignored if the "resize-allowed" switch is not set to 1. All frames in the clip are then encoded at this size, which must be smaller than the raw frame size. Change-Id: I3d64bd9303d5c0bd678461a866a1ea621700d744
2014-04-04Changing webmenc to use libwebmVignesh Venkatasubramanian
Changing webmenc to use libwebm for WebM file muxing. Change-Id: I38ccc74f35c6b9684a87d04d8f9354dbe9a3263b
2014-04-04Merge "Removed space in ETA printout"Yaowu Xu
2014-04-03Removed space in ETA printoutYaowu Xu
This is to fix issue#709 Change-Id: I537f1fb74252fef8a58e68b0960a36a9aada856e
2014-04-03Add codec control function for enabling frame_periodic_boost.Marco Paniconi
Change-Id: I6371ef7301c6bc3138552bd349e9bd154dee3e08
2014-04-02Revert "Changing webmenc to use libwebm"Paul Wilkins
Temporary revert. Problems with conflicting definitions of type off_t in MSVC builds that need resolving. c:\Program Files (x86)\ Microsoft Visual Studio 9.0\VC\include\wchar.h(479) : "error C2371: 'off_t' : redefinition; different basic types c:\on2experimental\libvpx\tools_common.h(26) : see declaration of 'off_t'" This reverts commit 92a4c591122fa406a1d7aed834a5283a86d9758a. Change-Id: I535e40a18842a92e3e6e0b29e5fba66313010803
2014-03-28Changing webmenc to use libwebmVignesh Venkatasubramanian
Changing webmenc to use libwebm for WebM file muxing. Change-Id: I42eb688953865003214c05bdf2076ee00db28970
2014-03-14Adding a configure flag to control WebM container supportVignesh Venkatasubramanian
Adding a --(enable|disable)-webm-io flag to control WebM container input and output support. For now, enabling WebM IO by default only when there is a C++ compiler. Doing so because eventually we will move WebM IO to libwebm and it is built using C++. Change-Id: I210ac36c23528e382ed41d3c4322291720481492
2014-02-27Adding sse_to_psnr function to tools_common.{h, c}.Dmitry Kovalev
Change-Id: Id5f974172416499ff55b0929e315b12d16ff1b1b
2014-02-21Stop gating non420 features with a configure flag.Alex Converse
Change-Id: I8cc38fdef6a2a0968af8dfe15e7c2b3c46c531ea
2014-02-21Require an --experimental-bitstream flag at runtime for encoding profile 1.Alex Converse
Change-Id: I73865bbbf6ea74434f15b73783ae97b4d273be80
2014-02-13In realtime mode enforce one pass with 0 lagDeb Mukherjee
vpxenc level changes to enforce one pass encoding with 0 lag_in_frames when --rt mode is on. Change-Id: I3e71719e87c9f66566cb4d944cf5705904f9a5b8
2014-02-11Adding API to get vpx encoder/decoder interface.Dmitry Kovalev
Change-Id: I137e5e6585356792913e1e84da6c0a439c5153a5
2014-02-11vpxenc: Silence MSVC warnings.Tom Finegan
Change-Id: I7dd8532052f0b2d4077f579e78db3987b58e3d2a
2014-02-03Merge changes Ic362b088,I1c65c2aaJames Zern
* changes: vpxenc: find_mismatch/compare_img: normalize types vpxenc: cosmetics
2014-01-31remove duplicate const from vpx_codec_iface_t useJames Zern
the public typedef already includes a const, quiets 'same type qualifier used more than once' warnings Change-Id: Ib118b3b116fba59d4c6ead84d85b26e5d3ed363d
2014-01-31vpxenc: find_mismatch/compare_img: normalize typesJames Zern
use uint32_t where appropriate, silences a few warnings Change-Id: Ic362b08868b00f4828982757a7bcee081d50308d
2014-01-31vpxenc: cosmeticsJames Zern
find_mismatch() / compare_img(): const, whitespace Change-Id: I1c65c2aac378535001720aca31e7437ee5492739
2014-01-29Changing ivf_write_frame_header() function signature.Dmitry Kovalev
Replacing vpx_codec_cx_pkt argument with two separate pts and frame_size. Change-Id: I7b37e379ee71342520cf08f03acfb4b499b2cbe4
2014-01-29vpxenc: Relocate rate/quantizer histogram code.Dmitry Kovalev
Adding rate_hist.{h, c} files. Change-Id: Iaa28af6b25ec8982966a7296a073d6017b3a7f96
2014-01-22Fix the vpxenc mismatch problem due to seperatehkuang
the boarder size for encoder and decoder. Change-Id: I7291a9e06035d1533202d7a75ab40abfc1131342
2014-01-15Merge "vpxenc: remove some warnings w/--disable-(vp8|vp9)"James Zern
2014-01-14vpxenc: remove some warnings w/--disable-(vp8|vp9)James Zern
group vp8/vp9 only options under CONFIG_*_ENCODER Change-Id: I331bb154df019b398780be6451355de50657a33e
2014-01-13Removing pass number check from ivf_write_file_header().Dmitry Kovalev
Putting appropriate check to open_output_file() and close_output_file(). Before that the output file has been opened twice during two-pass encoding. Change-Id: I290cecf00513d6a31ca3f45bc20fef7efcb10190
2014-01-06Fix encoding Raw yv12 and i420 from a pipe.Alex Converse
rewind() does not work on pipes. https://code.google.com/p/webm/issues/detail?id=678 Change-Id: I057f1e25c3f5662012d6e33ff4c97c88f50df357
2013-11-25vpxenc: Move config check code into its own source files.Tom Finegan
- Add command line args that allow display of warnings without prompting for user input. - Extend warning code to make it somewhat scalable. Change-Id: I2bad8f9315f6eed120c2e1bbe0a2a5ede15fbf35
2013-11-25In frame Q adjustment experiment.Paul Wilkins
The idea here is to allow "in frame" adjustment of the final Q value used to encode each SB64, using segmentation. There is also adjustment of the rd mult in regions of overspend. Activated using aq_mode=2 Change-Id: I2f140cd898c9f877c32cd6d2e667f5e11ada4b1c
2013-11-21vpxenc: Add vpxenc.h and move/rename the global_config structTom Finegan
- Rename the struct to VpxEncoderConfig. - The idea behind this is to enable checking the global settings against stream specific settings in source files other than vpxenc.c. Change-Id: Ic736cbb714845b9466acb34671780d65b83ad1a8
2013-11-20vpxenc: Warn users about incorrect quantizer settings.Tom Finegan
Also, clean up stylistically questionable code near my changes. Change-Id: I92c96a274cb339b7b74174a608f94ae86aba8354
2013-11-20Merge "vpxenc: add --aq-mode flag to control adaptive quantization"Guillaume Martres
2013-11-15vpxenc: add --aq-mode flag to control adaptive quantizationGuillaume Martres
Change-Id: I57e1ad4bed3487df12893ced77c49093f8755706
2013-11-15vpx[dec|enc]: Extract IVF support from the apps.Tom Finegan
- Move IVF reading support into ivfdec.c and ivfdec.h - Move IVF writing support into ivfenc.c and ivfenc.h - Removed IVF writing code from the SVC example in favor of ivfenc. Change-Id: I70adf6240d0320fdd232d8546ed573f0f68dd793
2013-11-11vpxenc: clean up; move stats code out of vpxenc.cTom Finegan
Change-Id: I6b245ef5017c49373ba33e30f8fbf3d1b97409b5
2013-11-11Merge "vpx[dec|enc]: Clean up target OS based IO focused preproc abuse."Tom Finegan
2013-11-11vpx[dec|enc]: Clean up target OS based IO focused preproc abuse.Tom Finegan
Relocate it to tools_common.h so we can stop duping this code everywhere. BUG=https://code.google.com/p/webm/issues/detail?id=660 Change-Id: If8aa49b74d297273cd9fd7006b2767837055a359
2013-11-08vpxenc: Remove support for IVF input.Tom Finegan
Change-Id: Ida0e1b2df89e992b8140672b70517d8623cf9ede
2013-11-06Move WebM writing support out of vpxenc.c.Tom Finegan
This is mainly a clean up patchset. It moves the WebM writing support out of vpxenc and into its own source file. Changes to tools_common and vpxdec result from relocation of shared bits of code. Change-Id: Iee55d3285f56e0a548f791094fb14c5ac5346a26
2013-10-16Prevent first pass from outputing invalid infoYaowu Xu
First pass does not produce compressed data, therefore encode/decode match check is not initialized. Change-Id: I1971a6747337872a850987cc70ba267bd0f1d564
2013-10-07Moving libmkv library to third_party folder.Dmitry Kovalev
Change-Id: Id0bfaedf54ff3f59d4cf361c170a0b5a5711e5f2
2013-09-24vpxenc: Stop writing the WebM FrameRate element.Tom Finegan
The FrameRate element has been deprecated. Change-Id: I68ac496e7b33685a100a45d2772e0ff30eb6a811