| OLD | NEW |
| 1 /* | 1 /* |
| 2 * Copyright (C) 2013 Google Inc. All rights reserved. | 2 * Copyright (C) 2013 Google Inc. All rights reserved. |
| 3 * | 3 * |
| 4 * Redistribution and use in source and binary forms, with or without | 4 * Redistribution and use in source and binary forms, with or without |
| 5 * modification, are permitted provided that the following conditions are | 5 * modification, are permitted provided that the following conditions are |
| 6 * met: | 6 * met: |
| 7 * | 7 * |
| 8 * * Redistributions of source code must retain the above copyright | 8 * * Redistributions of source code must retain the above copyright |
| 9 * notice, this list of conditions and the following disclaimer. | 9 * notice, this list of conditions and the following disclaimer. |
| 10 * * Redistributions in binary form must reproduce the above | 10 * * Redistributions in binary form must reproduce the above |
| (...skipping 209 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 220 // 6. If the mode attribute equals "sequence", then set the group start time
stamp to new timestamp offset. | 220 // 6. If the mode attribute equals "sequence", then set the group start time
stamp to new timestamp offset. |
| 221 if (!m_webSourceBuffer->setTimestampOffset(offset)) { | 221 if (!m_webSourceBuffer->setTimestampOffset(offset)) { |
| 222 MediaSource::logAndThrowDOMException(exceptionState, InvalidStateError,
"The timestamp offset may not be set while the SourceBuffer's append state is 'P
ARSING_MEDIA_SEGMENT'."); | 222 MediaSource::logAndThrowDOMException(exceptionState, InvalidStateError,
"The timestamp offset may not be set while the SourceBuffer's append state is 'P
ARSING_MEDIA_SEGMENT'."); |
| 223 return; | 223 return; |
| 224 } | 224 } |
| 225 | 225 |
| 226 // 7. Update the attribute to new timestamp offset. | 226 // 7. Update the attribute to new timestamp offset. |
| 227 m_timestampOffset = offset; | 227 m_timestampOffset = offset; |
| 228 } | 228 } |
| 229 | 229 |
| 230 AudioTrackList& SourceBuffer::audioTracks() |
| 231 { |
| 232 ASSERT(RuntimeEnabledFeatures::audioVideoTracksEnabled()); |
| 233 return *m_audioTracks; |
| 234 } |
| 235 |
| 236 VideoTrackList& SourceBuffer::videoTracks() |
| 237 { |
| 238 ASSERT(RuntimeEnabledFeatures::audioVideoTracksEnabled()); |
| 239 return *m_videoTracks; |
| 240 } |
| 241 |
| 230 double SourceBuffer::appendWindowStart() const | 242 double SourceBuffer::appendWindowStart() const |
| 231 { | 243 { |
| 232 return m_appendWindowStart; | 244 return m_appendWindowStart; |
| 233 } | 245 } |
| 234 | 246 |
| 235 void SourceBuffer::setAppendWindowStart(double start, ExceptionState& exceptionS
tate) | 247 void SourceBuffer::setAppendWindowStart(double start, ExceptionState& exceptionS
tate) |
| 236 { | 248 { |
| 237 WTF_LOG(Media, "SourceBuffer::setAppendWindowStart %p start=%f", this, start
); | 249 WTF_LOG(Media, "SourceBuffer::setAppendWindowStart %p start=%f", this, start
); |
| 238 // Section 3.1 appendWindowStart attribute setter steps. | 250 // Section 3.1 appendWindowStart attribute setter steps. |
| 239 // https://dvcs.w3.org/hg/html-media/raw-file/tip/media-source/media-source.
html#widl-SourceBuffer-appendWindowStart | 251 // https://dvcs.w3.org/hg/html-media/raw-file/tip/media-source/media-source.
html#widl-SourceBuffer-appendWindowStart |
| (...skipping 619 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 859 // m_loader might be already released, in case appendStream has failed due | 871 // m_loader might be already released, in case appendStream has failed due |
| 860 // to evictCodedFrames failing in didReceiveDataForClient. In that case | 872 // to evictCodedFrames failing in didReceiveDataForClient. In that case |
| 861 // appendStreamDone will be invoked from there, no need to repeat it here. | 873 // appendStreamDone will be invoked from there, no need to repeat it here. |
| 862 if (m_loader) | 874 if (m_loader) |
| 863 appendStreamDone(false); | 875 appendStreamDone(false); |
| 864 } | 876 } |
| 865 | 877 |
| 866 DEFINE_TRACE(SourceBuffer) | 878 DEFINE_TRACE(SourceBuffer) |
| 867 { | 879 { |
| 868 visitor->trace(m_source); | 880 visitor->trace(m_source); |
| 881 visitor->trace(m_audioTracks); |
| 882 visitor->trace(m_videoTracks); |
| 869 visitor->trace(m_trackDefaults); | 883 visitor->trace(m_trackDefaults); |
| 870 visitor->trace(m_asyncEventQueue); | 884 visitor->trace(m_asyncEventQueue); |
| 871 visitor->trace(m_appendBufferAsyncPartRunner); | 885 visitor->trace(m_appendBufferAsyncPartRunner); |
| 872 visitor->trace(m_removeAsyncPartRunner); | 886 visitor->trace(m_removeAsyncPartRunner); |
| 873 visitor->trace(m_appendStreamAsyncPartRunner); | 887 visitor->trace(m_appendStreamAsyncPartRunner); |
| 874 visitor->trace(m_stream); | 888 visitor->trace(m_stream); |
| 875 RefCountedGarbageCollectedEventTargetWithInlineData<SourceBuffer>::trace(vis
itor); | 889 RefCountedGarbageCollectedEventTargetWithInlineData<SourceBuffer>::trace(vis
itor); |
| 876 ActiveDOMObject::trace(visitor); | 890 ActiveDOMObject::trace(visitor); |
| 877 } | 891 } |
| 878 | 892 |
| 879 } // namespace blink | 893 } // namespace blink |
| OLD | NEW |