Closed Bug 1390748 Opened 4 years ago Closed 4 years ago

Most ChannelMediaDecoder subclasses don't really need to be subclasses

Categories

(Core :: Audio/Video: Playback, enhancement)

55 Branch
enhancement
Not set
normal

Tracking

()

RESOLVED FIXED
mozilla57
Tracking Status
firefox57 --- fixed

People

(Reporter: cpearce, Assigned: cpearce)

References

Details

Attachments

(10 files)

59 bytes, text/x-review-board-request
jwwang
: review+
Details
59 bytes, text/x-review-board-request
jwwang
: review+
Details
59 bytes, text/x-review-board-request
jwwang
: review+
Details
59 bytes, text/x-review-board-request
jwwang
: review+
Details
59 bytes, text/x-review-board-request
jwwang
: review+
Details
59 bytes, text/x-review-board-request
jwwang
: review+
Details
59 bytes, text/x-review-board-request
jwwang
: review+
Details
59 bytes, text/x-review-board-request
jwwang
: review+
Details
59 bytes, text/x-review-board-request
jwwang
: review+
Details
59 bytes, text/x-review-board-request
jwwang
: review+
Details
Most of the subclasses of ChannelMediaDecoder don't actually need to be subclasses; they typically are subclasses so they can have a custom CreateStateMachine() or a GetMozDebugReaderData(). They also have a CloneImpl() which knows the true type of the instance, but we don't need that if we don't have subclasses.

I think we can remove most subclasses of ChannelMediaDecoder.
Comment on attachment 8897713 [details]
Bug 1390748 - Remove OggDecoder::CreateStateMachine().

https://reviewboard.mozilla.org/r/169004/#review174342
Attachment #8897713 - Flags: review?(jwwang) → review+
Comment on attachment 8897714 [details]
Bug 1390748 - Make MediaDecoder::CreateStateMachine() non-virtual.

https://reviewboard.mozilla.org/r/169006/#review174344
Attachment #8897714 - Flags: review?(jwwang) → review+
Comment on attachment 8897715 [details]
Bug 1390748 - Remove unnececssary 'public:' in MediaDecoder.h.

https://reviewboard.mozilla.org/r/169008/#review174346
Attachment #8897715 - Flags: review?(jwwang) → review+
Comment on attachment 8897716 [details]
Bug 1390748 - Create default MediaDecoder::GetMozDebugReaderData() implementation.

https://reviewboard.mozilla.org/r/169010/#review174348
Attachment #8897716 - Flags: review?(jwwang) → review+
Comment on attachment 8897717 [details]
Bug 1390748 - Pre-declare MediaDecoder in HTMLMediaElement.

https://reviewboard.mozilla.org/r/169012/#review174350
Attachment #8897717 - Flags: review?(jwwang) → review+
Comment on attachment 8897718 [details]
Bug 1390748 - Create DecoderTraits::IsSupportedType(const MediaContainerType&).

https://reviewboard.mozilla.org/r/169014/#review174352
Attachment #8897718 - Flags: review?(jwwang) → review+
Comment on attachment 8897719 [details]
Bug 1390748 - Remove ChannelMediaDecoder::CloneImpl() and remove subclasses of ChannelMediaDecoder.

https://reviewboard.mozilla.org/r/169016/#review174354
Attachment #8897719 - Flags: review?(jwwang) → review+
Comment on attachment 8897720 [details]
Bug 1390748 - Remove some unnecessary includes.

https://reviewboard.mozilla.org/r/169018/#review174356
Attachment #8897720 - Flags: review?(jwwang) → review+
Comment on attachment 8897721 [details]
Bug 1390748 - Remove unnecessary includes in *Decoders.

https://reviewboard.mozilla.org/r/169020/#review174358
Attachment #8897721 - Flags: review?(jwwang) → review+
Comment on attachment 8897722 [details]
Bug 1390748 - Remove usage of mozilla::Vector from mp4_demuxer::ByteReader.

https://reviewboard.mozilla.org/r/169022/#review174360

Nice cleanup!
Attachment #8897722 - Flags: review?(jwwang) → review+
Pushed by cpearce@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/634fe076d134
Remove OggDecoder::CreateStateMachine(). r=jwwang
https://hg.mozilla.org/integration/autoland/rev/5d3b637d2485
Make MediaDecoder::CreateStateMachine() non-virtual. r=jwwang
https://hg.mozilla.org/integration/autoland/rev/5fa77990472e
Remove unnececssary 'public:' in MediaDecoder.h. r=jwwang
https://hg.mozilla.org/integration/autoland/rev/bf78a8dce9c5
Create default MediaDecoder::GetMozDebugReaderData() implementation. r=jwwang
https://hg.mozilla.org/integration/autoland/rev/0e77809e7bc2
Pre-declare MediaDecoder in HTMLMediaElement. r=jwwang
https://hg.mozilla.org/integration/autoland/rev/7dadac869038
Create DecoderTraits::IsSupportedType(const MediaContainerType&). r=jwwang
https://hg.mozilla.org/integration/autoland/rev/14d421ace6cc
Remove ChannelMediaDecoder::CloneImpl() and remove subclasses of ChannelMediaDecoder. r=jwwang
https://hg.mozilla.org/integration/autoland/rev/fc8989be30f3
Remove some unnecessary includes. r=jwwang
https://hg.mozilla.org/integration/autoland/rev/84e8bf01c856
Remove unnecessary includes in *Decoders. r=jwwang
https://hg.mozilla.org/integration/autoland/rev/02b36ee5fb17
Remove usage of mozilla::Vector from mp4_demuxer::ByteReader. r=jwwang
Pushed by cpearce@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/57be2e971ae2
Remove OggDecoder::CreateStateMachine(). r=jwwang
https://hg.mozilla.org/integration/autoland/rev/b86afd45a710
Make MediaDecoder::CreateStateMachine() non-virtual. r=jwwang
https://hg.mozilla.org/integration/autoland/rev/ad5c7eb1bfe1
Remove unnececssary 'public:' in MediaDecoder.h. r=jwwang
https://hg.mozilla.org/integration/autoland/rev/2964dba33ef8
Create default MediaDecoder::GetMozDebugReaderData() implementation. r=jwwang
https://hg.mozilla.org/integration/autoland/rev/4a31e4302e03
Pre-declare MediaDecoder in HTMLMediaElement. r=jwwang
https://hg.mozilla.org/integration/autoland/rev/94c0ec4bf19e
Create DecoderTraits::IsSupportedType(const MediaContainerType&). r=jwwang
https://hg.mozilla.org/integration/autoland/rev/d3c000525403
Remove ChannelMediaDecoder::CloneImpl() and remove subclasses of ChannelMediaDecoder. r=jwwang
https://hg.mozilla.org/integration/autoland/rev/9172b8d6ce3e
Remove some unnecessary includes. r=jwwang
https://hg.mozilla.org/integration/autoland/rev/3f9350bf23ff
Remove unnecessary includes in *Decoders. r=jwwang
https://hg.mozilla.org/integration/autoland/rev/2674b8eaba32
Remove usage of mozilla::Vector from mp4_demuxer::ByteReader. r=jwwang
had to back this out for breaking android like https://treeherder.mozilla.org/logviewer.html#?job_id=123788151&repo=autoland
Flags: needinfo?(cpearce)
Pushed by cpearce@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/04677e50eae4
Remove OggDecoder::CreateStateMachine(). r=jwwang
https://hg.mozilla.org/integration/autoland/rev/a297b34e8d08
Make MediaDecoder::CreateStateMachine() non-virtual. r=jwwang
https://hg.mozilla.org/integration/autoland/rev/5ece0caad34c
Remove unnececssary 'public:' in MediaDecoder.h. r=jwwang
https://hg.mozilla.org/integration/autoland/rev/047db39bc8b4
Create default MediaDecoder::GetMozDebugReaderData() implementation. r=jwwang
https://hg.mozilla.org/integration/autoland/rev/1377dc708aa9
Pre-declare MediaDecoder in HTMLMediaElement. r=jwwang
https://hg.mozilla.org/integration/autoland/rev/f19970af5f01
Create DecoderTraits::IsSupportedType(const MediaContainerType&). r=jwwang
https://hg.mozilla.org/integration/autoland/rev/557168f0da99
Remove ChannelMediaDecoder::CloneImpl() and remove subclasses of ChannelMediaDecoder. r=jwwang
https://hg.mozilla.org/integration/autoland/rev/43b00dfe7c29
Remove some unnecessary includes. r=jwwang
https://hg.mozilla.org/integration/autoland/rev/cfe1b2eb0610
Remove unnecessary includes in *Decoders. r=jwwang
https://hg.mozilla.org/integration/autoland/rev/859e657f26dc
Remove usage of mozilla::Vector from mp4_demuxer::ByteReader. r=jwwang
Flags: needinfo?(cpearce)
Assignee: nobody → cpearce
You need to log in before you can comment on or make changes to this bug.