- Oct 20, 2012
-
-
Timothy B. Terriberry authored
Right now we have no way to add any more parameters beyond a set of basic binary flags. This unifies op_url_stream_create() and op_url_stream_create_with_proxy() into a single function that takes a variable-length list of arguments, which can be extended in the future to include more options of any type. This is an incompatible API change.
-
Timothy B. Terriberry authored
We were computing the return value correctly, but then not returning it.
-
Timothy B. Terriberry authored
- Increase the maximum response header buffer size up to ~32 kB. This also moves it into a heap-allocated buffer instead of the stack, as 32 kB is really too much for the stack. - Treat LF as CR LF when parsing headers. This is necessary when parsing the load-balancer response in front of <http://lazaradio.hu:8100/bermuda.opus>. The response returned by that server is invalid in lots of ways, but with these two changes we can read it. - In addition, we now peek ahead at a large chunk of data when reading the response instead of reading 2 to 4 bytes at a time. This allows a typical response to be read with two syscalls (one peek, one read) instead of several hundred. - Stop trying to read more data when the connection is closed.
-
Timothy B. Terriberry authored
Thanks to Jean-Marc Valin for providing documentation feedback. This also changes op_tags() to allow the tags to be queried on a partially-open file (because they've already been read and are available), and fixes a leak when a partially open file is freed instead of being fully opened.
-
- Oct 14, 2012
-
-
Timothy B. Terriberry authored
The big one was that if the connect() call failed, it would loop forever (thanks to some code re-factoring, the loop was no longer advancing to the next address as originally designed).
-
- Oct 13, 2012
-
-
Timothy B. Terriberry authored
On the first request made by a connection, the value it was testing might be uninitialized, so we can't guarantee it'll pass.
-
- Oct 12, 2012
-
-
Timothy B. Terriberry authored
* Now supports HTTP/1.1 persistent connections with pipelining. This speeds up chain enumeration on large files by almost a factor of 2 over http, and by roughly a factor of 4 over https. The difference between http and https is now much smaller. * Add timeouts to all the socket I/O. * Estimate the number of available bytes to read and use it when making connection re-use decisions. * Add support for https with proxies using HTTP/1.1 CONNECT tunnels. * Fix TLS session re-use (it requires clean shutdown). * Various other code re-organization and minor improvements.
-
- Oct 09, 2012
-
-
Timothy B. Terriberry authored
-
Timothy B. Terriberry authored
Doing this in the source keeps them disabled when someone doesn't use one of our build systems.
-
- Oct 07, 2012
-
-
Gregory Maxwell authored
-
- Oct 02, 2012
-
-
Timothy B. Terriberry authored
It's helpful if we don't always read from the start of the array. Thanks to Matti Virolainen for the report.
-
- Oct 01, 2012
-
-
Ralph Giles authored
Making it exectutable doesn't put it in the path, so we have to call it ./git-version.sh from inside the doc directory. Jenkins didn't catch this because the $(shell ...) return code doesn't seem to be propagated to make itself. It prints a warning but doesn't abort. I don't know if there's a way to fix that.
-
Ralph Giles authored
Lets us call it directly without /bin/sh which saves space.
-
Ralph Giles authored
We use scripts like these with jenkins to do automatic build and test runs on every commit. Keeping the build instructions in the source repository itself makes it easier to track changes, and easier to make atomic updates when something is moved in the build system which breaks the jenkins runs.
-
Ralph Giles authored
-
Ralph Giles authored
This matches what the opus package does, and is consistent with what the pkg-config files were already doing.
-
Ralph Giles authored
This is redundant now that we have PROJECT_NUMBER substitution implemented. The file version is for displaying per-file versioning from CVS, etc.
-
Ralph Giles authored
-
Ralph Giles authored
Saves an indent stop. Thanks to Tim for the suggestion.
-
Ralph Giles authored
This almost, but doesn't quite, copy the layout the opus configure script uses.
-
Timothy B. Terriberry authored
* Tags were being freed even if not initialized if op_fetch_headers() failed on the first link. The logic for handling completely empty links would leak, also. * Ignore fragment identifiers in http URLs instead of rejecting them. * Get the current link in seeking_example's verify_seek when op_read_native() fails to return it for us.
-
Timothy B. Terriberry authored
Most of these were dead code left around from rewriting things and things llvm doesn't have enough global information to prove by itself. The one real error was the missing NULL check in opus_tags_parse_impl().
-
Timothy B. Terriberry authored
Also use Libs.private for libm.
-
Timothy B. Terriberry authored
-
Timothy B. Terriberry authored
This displays the current raw position, PCM position, and instantaneous bitrate once per second of output. This is useful when testing against long-running streams.
-
Timothy B. Terriberry authored
This makes it more useful for testing invalid files, where the goal is merely not to crash, assert, or trip valgrind warnings.
-
Timothy B. Terriberry authored
* Add Opus logo. * Use @VERSION@ consistently. * Fix some warnings/formatting exposed by a newer Doxygen versions.
-
Timothy B. Terriberry authored
The warning was correct, as far as it goes, but the use was actually harmless.
-
Timothy B. Terriberry authored
The previous comparison would have succeeded on things like "localhost123" instead of just "localhost".
-
Timothy B. Terriberry authored
* Guarantee pcm_start and pcm_end stay in range (not just move in the right direction). * When we fail to find a page in the interval, back up by increasing chunk sizes just like op_get_prev_page_serial(). * Eliminate the special case for the last page in the interval. * Force a straight bisection if we're backing up, but not decreasing the interval size rapidly enough, to limit the worst-case. This is guaranteed not to affect the first two iterations, so it has minimal impact on seeking in the normal case.
-
- Sep 30, 2012
-
-
Ralph Giles authored
The autoconf build replaced the static Doxyfile with a Doxyfile.in template. In the autoconf build, the config.status script applies substitutions to generate the actual Doxyfile. This made the generic doc/Makefile non-functional. Apply similar substitutions directly with the makefile so we can still build documentation outside the context of the autoconf build. Also add a 'distclean' target to remove the generated Doxyfile.
-
- Sep 29, 2012
-
-
Timothy B. Terriberry authored
We have to call op_collect_audio_packets() again to drain any buffered packets from the page.
-
Includes - A make debug target that disables optimizations and enables assertions, - Proper ./configure switches for the optional features, - A configuration summary, - libtool versioning information, - Visibility and warning flags, - API documentation, and - Support for out-of-tree builds. Signed-off-by:
Diego Elio Pettenò <flameeyes@flameeyes.eu>
-
Timothy B. Terriberry authored
* s/op_read_stereo_float/op_read_float_stereo/ for the fixed-point API. * Fix compiler warnings exposed when optimizations are enabled. * Fix opusfile_example to work with --enable-fixed-point --disable-float * Fix seeking_example to not re-define OP_FIXED_POINT if it's already been defined.
-
Gregory Maxwell authored
-
- Sep 24, 2012
-
-
Ralph Giles authored
GNU make provides a default definition for this variable. I've no idea what's special about mingw32-ar vs native ar, but it seems to be required.
-
Timothy B. Terriberry authored
The most important for the https backend: - Implement RFC 6066 Server Name Indication. - Implement SSL session resumption. This gives less of a speed improvement than you might think.
-
Timothy B. Terriberry authored
-
Timothy B. Terriberry authored
-
Timothy B. Terriberry authored
-