shaka-packager/packager/app
KongQun Yang 05a5a41969 Support generation of libpackager.so (shared_library)
Shared libpackager can be built by setting libpackager_type to
shared_library, e.g.

GYP_DEFINES='libpackager_type=shared_library' gclient runhooks
ninja -C out/Debug

will generate libpackager.so in out/Debug/lib directory.

Here is a few other changes to make shared_library builds and
tests pass:

- Add several test parameters to packager.h, which is needed for
  testing.
- Create a protoc.gypi from build/protoc.gypi but depending on
  protobuf_full_do_not_use instead of protobuf_lite, since we need
  protobuf_full_do_not_use for text parsing and generation of media
  info proto. Somehow shared_library build does not allow mixed use
  of protobuf_full_do_not_use and protobuf_lite.
- Remove the use of LazyInstance in version/version.cc and use static
  variable directly. This is because LazyInstance needs AtExitManager
  which may not be easy to setup when calling GetVersion.
- Allow skipping testPackageWvmInputWithoutStrippingParameterSetNalus
  with flag --shared_library, which is needed as shared_library build
  does not support --strip_parameter_set_nalus flag yet.

Fixes #227

Change-Id: Iff05a50baa28134faa7218664c96114cb9e70329
2017-06-13 20:42:32 +00:00
..
test Support generation of libpackager.so (shared_library) 2017-06-13 20:42:32 +00:00
crypto_flags.cc Rename webm_subsample_encryption flag to vp9_subsample_encryption 2017-03-30 20:36:43 +00:00
crypto_flags.h Rename webm_subsample_encryption flag to vp9_subsample_encryption 2017-03-30 20:36:43 +00:00
fixed_key_encryption_flags.cc Implement top level API: packager.cc/h 2017-06-13 19:23:34 +00:00
fixed_key_encryption_flags.h Integrate packager top level library 2017-06-13 13:40:26 -07:00
hls_flags.cc Integrate packager top level library 2017-06-13 13:40:26 -07:00
hls_flags.h Add driver program flags for HLS 2016-06-13 18:30:24 -07:00
libcrypto_threading.cc Integrate packager top level library 2017-06-13 13:40:26 -07:00
libcrypto_threading.h Rename top level namespace to shaka 2016-05-24 21:55:55 +00:00
mpd_flags.cc Integrate packager top level library 2017-06-13 13:40:26 -07:00
mpd_flags.h Deprecate availability_time_offset MPD flag 2017-05-22 23:14:16 +00:00
mpd_generator.cc Fix --version in drive programs 2016-12-08 14:45:05 -08:00
mpd_generator_flags.h Move source code into packager directory 2014-10-02 12:32:14 -07:00
muxer_flags.cc Integrate packager top level library 2017-06-13 13:40:26 -07:00
muxer_flags.h Integrate packager top level library 2017-06-13 13:40:26 -07:00
packager_main.cc Support generation of libpackager.so (shared_library) 2017-06-13 20:42:32 +00:00
packager_util.cc Integrate packager top level library 2017-06-13 13:40:26 -07:00
packager_util.h Support generation of libpackager.so (shared_library) 2017-06-13 20:42:32 +00:00
playready_key_encryption_flags.cc Adding PlayReady support to Shaka packager 2017-01-24 13:36:47 -08:00
playready_key_encryption_flags.h Adding PlayReady support to Shaka packager 2017-01-24 13:36:47 -08:00
retired_flags.cc The retired availability_time_offset flag should have value 0 2017-06-01 14:55:16 -07:00
retired_flags.h Deprecate availability_time_offset MPD flag 2017-05-22 23:14:16 +00:00
stream_descriptor.cc Integrate packager top level library 2017-06-13 13:40:26 -07:00
stream_descriptor.h Integrate packager top level library 2017-06-13 13:40:26 -07:00
validate_flag.cc Rename top level namespace to shaka 2016-05-24 21:55:55 +00:00
validate_flag.h Rename top level namespace to shaka 2016-05-24 21:55:55 +00:00
vlog_flags.cc Enable verbose logging through --v or --vmodule 2015-10-28 22:15:50 +00:00
vlog_flags.h Enable verbose logging through --v or --vmodule 2015-10-28 22:15:50 +00:00
widevine_encryption_flags.cc Implement top level API: packager.cc/h 2017-06-13 19:23:34 +00:00
widevine_encryption_flags.h Rename webm_subsample_encryption flag to vp9_subsample_encryption 2017-03-30 20:36:43 +00:00