shaka-packager/packager/media/base
Kongqun Yang 277c5b23c0 Allow generating avc3 / hev1 from TS and Wvm files
Added a flag --strip_parameter_set_nalus. When enabled, parameter
set NAL units, SPS/PPS for H264 and SPS/PPS/VPS for H265, are stripped
from frames when converting NAL byte stream (AnnexB stream) to NAL
unit stream, which generates avc1/hvc1; otherwise they are not
stripped, and avc3/hev1 is generated.

Parameter set NAL units should not be stripped if they are varying
in the frames otherwise the frames may fail to be decoded.

The flag is enabled by default as we don't usually see varying
SPS/PPS/VPS and it is more space efficient with them stripped.

Set --strip_parameter_set_nalus=false to disable the flag if there
are varying SPS/PPS/VPS in the frames. This addresses #206.

Change-Id: I34bde6f33069f9f77d51a510b39f58a0f0e141aa
2017-03-23 13:53:14 -07:00
..
test Update boringssl and curl(v7.50.0) 2016-08-02 12:00:19 -07:00
aes_cryptor.cc Deprecate STLDeleter and string_as_array 2016-09-01 17:39:11 +00:00
aes_cryptor.h Replace scoped_ptr with std::unique_ptr 2016-08-18 17:12:36 -07:00
aes_cryptor_unittest.cc Replace scoped_ptr with std::unique_ptr 2016-08-18 17:12:36 -07:00
aes_decryptor.cc Add appveyor config for Windows CI 2016-08-23 12:24:34 -07:00
aes_decryptor.h Rename top level namespace to shaka 2016-05-24 21:55:55 +00:00
aes_encryptor.cc Rename top level namespace to shaka 2016-05-24 21:55:55 +00:00
aes_encryptor.h Replace scoped_ptr with std::unique_ptr 2016-08-18 17:12:36 -07:00
aes_pattern_cryptor.cc Improve support for decryption of full sample encrypted cbcs 2016-10-14 00:07:46 +00:00
aes_pattern_cryptor.h Improve support for decryption of full sample encrypted cbcs 2016-10-14 00:07:46 +00:00
aes_pattern_cryptor_unittest.cc Improve support for decryption of full sample encrypted cbcs 2016-10-14 00:07:46 +00:00
audio_stream_info.cc Implemented WebM VP9 subsample encryption and decryption. 2016-08-18 13:55:36 -07:00
audio_stream_info.h Replace scoped_refptr with std::shared_ptr 2017-01-26 02:20:47 +00:00
audio_timestamp_helper.cc Rename top level namespace to shaka 2016-05-24 21:55:55 +00:00
audio_timestamp_helper.h Rename top level namespace to shaka 2016-05-24 21:55:55 +00:00
audio_timestamp_helper_unittest.cc Rename top level namespace to shaka 2016-05-24 21:55:55 +00:00
bit_reader.cc Fix x64 build on Windows. 2017-01-05 14:19:35 -08:00
bit_reader.h Fix x64 build on Windows. 2017-01-05 14:19:35 -08:00
bit_reader_unittest.cc Fix x64 build on Windows. 2017-01-05 14:19:35 -08:00
buffer_reader.cc Rename top level namespace to shaka 2016-05-24 21:55:55 +00:00
buffer_reader.h Rename top level namespace to shaka 2016-05-24 21:55:55 +00:00
buffer_writer.cc Rename top level namespace to shaka 2016-05-24 21:55:55 +00:00
buffer_writer.h Rename top level namespace to shaka 2016-05-24 21:55:55 +00:00
buffer_writer_unittest.cc Replace scoped_ptr with std::unique_ptr 2016-08-18 17:12:36 -07:00
byte_queue.cc Replace scoped_ptr with std::unique_ptr 2016-08-18 17:12:36 -07:00
byte_queue.h Replace scoped_ptr with std::unique_ptr 2016-08-18 17:12:36 -07:00
closure_thread.cc Rename top level namespace to shaka 2016-05-24 21:55:55 +00:00
closure_thread.h Rename top level namespace to shaka 2016-05-24 21:55:55 +00:00
closure_thread_unittest.cc Update DEPS to fix mac build failure 2016-08-19 13:49:41 -07:00
container_names.cc Fix x64 build on Windows. 2017-01-05 14:19:35 -08:00
container_names.h Rename top level namespace to shaka 2016-05-24 21:55:55 +00:00
container_names_unittest.cc Fix x64 build on Windows. 2017-01-05 14:19:35 -08:00
decrypt_config.cc Implement EncryptionHandler 2017-02-11 01:21:28 +00:00
decrypt_config.h Implement EncryptionHandler 2017-02-11 01:21:28 +00:00
decryptor_source.cc Deprecate STLDeleter and string_as_array 2016-09-01 17:39:11 +00:00
decryptor_source.h Deprecate STLDeleter and string_as_array 2016-09-01 17:39:11 +00:00
decryptor_source_unittest.cc Rename top level namespace to shaka 2016-05-24 21:55:55 +00:00
demuxer.cc Use size_t as the type of stream_index 2017-03-16 20:54:48 +00:00
demuxer.h Use size_t as the type of stream_index 2017-03-16 20:54:48 +00:00
encryption_config.h Update EncryptionHandler to support key rotation and SampleAes 2017-03-21 23:50:53 +00:00
fixed_key_source.cc Update DEPS to fix mac build failure 2016-08-19 13:49:41 -07:00
fixed_key_source.h Replace scoped_ptr with std::unique_ptr 2016-08-18 17:12:36 -07:00
fixed_key_source_unittest.cc Replace scoped_ptr with std::unique_ptr 2016-08-18 17:12:36 -07:00
fourccs.h Allow generating avc3 / hev1 from TS and Wvm files 2017-03-23 13:53:14 -07:00
http_key_fetcher.cc Adding PlayReady support to Shaka packager 2017-01-24 13:36:47 -08:00
http_key_fetcher.h Adding PlayReady support to Shaka packager 2017-01-24 13:36:47 -08:00
http_key_fetcher_unittest.cc Rename top level namespace to shaka 2016-05-24 21:55:55 +00:00
key_fetcher.cc Rename top level namespace to shaka 2016-05-24 21:55:55 +00:00
key_fetcher.h Rename top level namespace to shaka 2016-05-24 21:55:55 +00:00
key_source.cc Add support for 4K and 8K content. 2016-12-13 19:24:22 +00:00
key_source.h Add support for 4K and 8K content. 2016-12-13 19:24:22 +00:00
language_utils.cc Add HLS audio language support 2017-03-10 16:14:14 -08:00
language_utils.h Add HLS audio language support 2017-03-10 16:14:14 -08:00
limits.h Rename top level namespace to shaka 2016-05-24 21:55:55 +00:00
macros.h Enable '-Wimplicit-fallthrough' and fix issues 2016-01-06 17:12:49 -08:00
media_base.gyp Update EncryptionHandler to support key rotation and SampleAes 2017-03-21 23:50:53 +00:00
media_handler.cc Use size_t as the type of stream_index 2017-03-16 20:54:48 +00:00
media_handler.h Update EncryptionHandler to support key rotation and SampleAes 2017-03-21 23:50:53 +00:00
media_handler_test_base.cc Allow generating avc3 / hev1 from TS and Wvm files 2017-03-23 13:53:14 -07:00
media_handler_test_base.h Update EncryptionHandler to support key rotation and SampleAes 2017-03-21 23:50:53 +00:00
media_parser.h Replace scoped_refptr with std::shared_ptr 2017-01-26 02:20:47 +00:00
media_sample.cc Replace scoped_refptr with std::shared_ptr 2017-01-26 02:20:47 +00:00
media_sample.h Replace scoped_refptr with std::shared_ptr 2017-01-26 02:20:47 +00:00
muxer.cc Integrate EncryptionHandler 2017-03-23 18:25:59 +00:00
muxer.h Integrate EncryptionHandler 2017-03-23 18:25:59 +00:00
muxer_options.cc Update cmd flags to support static mpd with live profile 2017-01-13 20:00:10 +00:00
muxer_options.h Integrate ChunkingHandler 2017-03-16 20:54:36 +00:00
muxer_util.cc Add support for 4K and 8K content. 2016-12-13 19:24:22 +00:00
muxer_util.h Add support for 4K and 8K content. 2016-12-13 19:24:22 +00:00
muxer_util_unittest.cc Rename top level namespace to shaka 2016-05-24 21:55:55 +00:00
network_util.cc Rename top level namespace to shaka 2016-05-24 21:55:55 +00:00
network_util.h Rename top level namespace to shaka 2016-05-24 21:55:55 +00:00
offset_byte_queue.cc Rename top level namespace to shaka 2016-05-24 21:55:55 +00:00
offset_byte_queue.h Rename top level namespace to shaka 2016-05-24 21:55:55 +00:00
offset_byte_queue_unittest.cc Replace scoped_ptr with std::unique_ptr 2016-08-18 17:12:36 -07:00
playready_key_source.cc Adding PlayReady support to Shaka packager 2017-01-24 13:36:47 -08:00
playready_key_source.h Adding PlayReady support to Shaka packager 2017-01-24 13:36:47 -08:00
producer_consumer_queue.h Rename top level namespace to shaka 2016-05-24 21:55:55 +00:00
producer_consumer_queue_unittest.cc Fix x64 build on Windows. 2017-01-05 14:19:35 -08:00
protection_system_specific_info.cc Rename top level namespace to shaka 2016-05-24 21:55:55 +00:00
protection_system_specific_info.h Rename top level namespace to shaka 2016-05-24 21:55:55 +00:00
protection_system_specific_info_unittest.cc Rename top level namespace to shaka 2016-05-24 21:55:55 +00:00
rcheck.h Move fourccs.h and rcheck.h to media/base 2016-04-12 21:28:37 +00:00
request_signer.cc Replace scoped_ptr with std::unique_ptr 2016-08-18 17:12:36 -07:00
request_signer.h Replace scoped_ptr with std::unique_ptr 2016-08-18 17:12:36 -07:00
rsa_key.cc Deprecate STLDeleter and string_as_array 2016-09-01 17:39:11 +00:00
rsa_key.h Rename top level namespace to shaka 2016-05-24 21:55:55 +00:00
rsa_key_unittest.cc Replace scoped_ptr with std::unique_ptr 2016-08-18 17:12:36 -07:00
status.cc Implement ChunkingHandler 2017-02-11 02:41:34 +00:00
status.h Implement ChunkingHandler 2017-02-11 02:41:34 +00:00
status_test_util_unittest.cc Rename top level namespace to shaka 2016-05-24 21:55:55 +00:00
status_unittest.cc Rename top level namespace to shaka 2016-05-24 21:55:55 +00:00
stream_info.cc Implemented WebM VP9 subsample encryption and decryption. 2016-08-18 13:55:36 -07:00
stream_info.h Allow generating avc3 / hev1 from TS and Wvm files 2017-03-23 13:53:14 -07:00
text_stream_info.cc Make WebVttMediaParser use WebVttSampleConverter 2017-03-15 20:44:36 +00:00
text_stream_info.h Make WebVttMediaParser use WebVttSampleConverter 2017-03-15 20:44:36 +00:00
text_track.h Replace scoped_ptr with std::unique_ptr 2016-08-18 17:12:36 -07:00
text_track_config.cc Rename top level namespace to shaka 2016-05-24 21:55:55 +00:00
text_track_config.h Rename top level namespace to shaka 2016-05-24 21:55:55 +00:00
timestamp.h Rename top level namespace to shaka 2016-05-24 21:55:55 +00:00
video_stream_info.cc Allow generating avc3 / hev1 from TS and Wvm files 2017-03-23 13:53:14 -07:00
video_stream_info.h Allow generating avc3 / hev1 from TS and Wvm files 2017-03-23 13:53:14 -07:00
widevine_key_source.cc Replace scoped_refptr with std::shared_ptr 2017-01-26 02:20:47 +00:00
widevine_key_source.h Replace scoped_refptr with std::shared_ptr 2017-01-26 02:20:47 +00:00
widevine_key_source_unittest.cc Add support for 4K and 8K content. 2016-12-13 19:24:22 +00:00
widevine_pssh_data.proto [pssh] Support widevine pssh generation with protection_scheme 2016-10-10 10:39:41 -07:00