mirror of
https://github.com/mozilla/gecko-dev.git
synced 2024-11-08 04:27:37 +00:00
43dc514afc
This class easily allows an AVCC-only decoder (H264EME and Apple VDA/VideoToolbox) to support AnnexB and AVC3 content. This is done by lazily creating the decoder only once we have detected SPS/PPS in the data stream, and converting all input to AVCC format.
89 lines
2.0 KiB
Python
89 lines
2.0 KiB
Python
# -*- Mode: python; c-basic-offset: 4; indent-tabs-mode: nil; tab-width: 40 -*-
|
|
# vim: set filetype=python:
|
|
# This Source Code Form is subject to the terms of the Mozilla Public
|
|
# License, v. 2.0. If a copy of the MPL was not distributed with this
|
|
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
|
|
|
EXPORTS += [
|
|
'AVCCDecoderModule.h',
|
|
'MP4Decoder.h',
|
|
'MP4Reader.h',
|
|
'MP4Stream.h',
|
|
'PlatformDecoderModule.h',
|
|
'SharedDecoderManager.h',
|
|
]
|
|
|
|
UNIFIED_SOURCES += [
|
|
'AVCCDecoderModule.cpp',
|
|
'BlankDecoderModule.cpp',
|
|
'MP4Decoder.cpp',
|
|
'MP4Stream.cpp',
|
|
'PlatformDecoderModule.cpp',
|
|
'SharedDecoderManager.cpp',
|
|
]
|
|
|
|
SOURCES += [
|
|
'MP4Reader.cpp',
|
|
]
|
|
|
|
if CONFIG['MOZ_WMF']:
|
|
DIRS += [ 'wmf' ];
|
|
|
|
if CONFIG['MOZ_EME']:
|
|
DIRS += ['eme']
|
|
|
|
if CONFIG['MOZ_FFMPEG']:
|
|
EXPORTS += [
|
|
'ffmpeg/FFmpegRuntimeLinker.h',
|
|
]
|
|
UNIFIED_SOURCES += [
|
|
'ffmpeg/FFmpegLog.cpp',
|
|
'ffmpeg/FFmpegRuntimeLinker.cpp',
|
|
]
|
|
DIRS += [
|
|
'ffmpeg/libav53',
|
|
'ffmpeg/libav54',
|
|
'ffmpeg/libav55',
|
|
]
|
|
LOCAL_INCLUDES += [
|
|
'ffmpeg',
|
|
]
|
|
|
|
if CONFIG['MOZ_APPLEMEDIA']:
|
|
EXPORTS += [
|
|
'apple/AppleDecoderModule.h',
|
|
]
|
|
UNIFIED_SOURCES += [
|
|
'apple/AppleATDecoder.cpp',
|
|
'apple/AppleCMLinker.cpp',
|
|
'apple/AppleDecoderModule.cpp',
|
|
'apple/AppleVDADecoder.cpp',
|
|
'apple/AppleVDALinker.cpp',
|
|
'apple/AppleVTDecoder.cpp',
|
|
'apple/AppleVTLinker.cpp',
|
|
]
|
|
OS_LIBS += [
|
|
'-framework AudioToolbox',
|
|
]
|
|
|
|
if CONFIG['ANDROID_VERSION'] >= '18'and CONFIG['MOZ_WIDGET_TOOLKIT'] == 'gonk':
|
|
DEFINES['MOZ_GONK_MEDIACODEC'] = True
|
|
DIRS += ['gonk']
|
|
|
|
include('/ipc/chromium/chromium-config.mozbuild')
|
|
|
|
if CONFIG['MOZ_WIDGET_TOOLKIT'] == 'android':
|
|
EXPORTS += [
|
|
'android/AndroidDecoderModule.h',
|
|
]
|
|
UNIFIED_SOURCES += [
|
|
'android/AndroidDecoderModule.cpp',
|
|
]
|
|
|
|
FINAL_LIBRARY = 'xul'
|
|
|
|
FAIL_ON_WARNINGS = True
|
|
|
|
if CONFIG['OS_ARCH'] == 'WINNT':
|
|
DEFINES['NOMINMAX'] = True
|