Loading include/media/stagefright/timedtext/TimedTextDriver.h +4 −1 Original line number Diff line number Diff line Loading @@ -30,6 +30,7 @@ class MediaSource; class Parcel; class TimedTextPlayer; class TimedTextSource; class DataSource; class TimedTextDriver { public: Loading @@ -48,7 +49,7 @@ public: status_t addOutOfBandTextSource(const char *uri, const char *mimeType); // Caller owns the file desriptor and caller is responsible for closing it. status_t addOutOfBandTextSource( int fd, off64_t offset, size_t length, const char *mimeType); int fd, off64_t offset, off64_t length, const char *mimeType); void getTrackInfo(Parcel *parcel); Loading @@ -72,6 +73,8 @@ private: // -- End of variables to be guarded by mLock status_t selectTrack_l(int32_t index); status_t createOutOfBandTextSource( const char *mimeType, const sp<DataSource>& dataSource); DISALLOW_EVIL_CONSTRUCTORS(TimedTextDriver); }; Loading media/libstagefright/AwesomePlayer.cpp +1 −1 Original line number Diff line number Diff line Loading @@ -2292,7 +2292,7 @@ status_t AwesomePlayer::invoke(const Parcel &request, Parcel *reply) { } int fd = request.readFileDescriptor(); off64_t offset = request.readInt64(); size_t length = request.readInt64(); off64_t length = request.readInt64(); String8 mimeType(request.readString16()); return mTextDriver->addOutOfBandTextSource( fd, offset, length, mimeType); Loading media/libstagefright/timedtext/TimedTextDriver.cpp +21 −10 Original line number Diff line number Diff line Loading @@ -23,6 +23,7 @@ #include <media/mediaplayer.h> #include <media/MediaPlayerInterface.h> #include <media/stagefright/DataSource.h> #include <media/stagefright/FileSource.h> #include <media/stagefright/MediaDefs.h> #include <media/stagefright/MediaErrors.h> #include <media/stagefright/MediaSource.h> Loading Loading @@ -161,15 +162,32 @@ status_t TimedTextDriver::addInBandTextSource( status_t TimedTextDriver::addOutOfBandTextSource( const char *uri, const char *mimeType) { // TODO: Define "TimedTextSource::CreateFromURI(uri)" // and move below lines there..? // To support local subtitle file only for now if (strncasecmp("file://", uri, 7)) { ALOGE("uri('%s') is not a file", uri); return ERROR_UNSUPPORTED; } sp<DataSource> dataSource = DataSource::CreateFromURI(uri); return createOutOfBandTextSource(mimeType, dataSource); } status_t TimedTextDriver::addOutOfBandTextSource( int fd, off64_t offset, off64_t length, const char *mimeType) { if (fd < 0) { ALOGE("Invalid file descriptor: %d", fd); return ERROR_UNSUPPORTED; } sp<DataSource> dataSource = new FileSource(dup(fd), offset, length); return createOutOfBandTextSource(mimeType, dataSource); } status_t TimedTextDriver::createOutOfBandTextSource( const char *mimeType, const sp<DataSource>& dataSource) { if (dataSource == NULL) { return ERROR_UNSUPPORTED; } Loading @@ -189,13 +207,6 @@ status_t TimedTextDriver::addOutOfBandTextSource( return OK; } status_t TimedTextDriver::addOutOfBandTextSource( int fd, off64_t offset, size_t length, const char *mimeType) { // Not supported yet. This requires DataSource::sniff to detect various text // formats such as srt/smi/ttml. return ERROR_UNSUPPORTED; } void TimedTextDriver::getTrackInfo(Parcel *parcel) { Mutex::Autolock autoLock(mLock); Vector<sp<TimedTextSource> >::const_iterator iter; Loading Loading
include/media/stagefright/timedtext/TimedTextDriver.h +4 −1 Original line number Diff line number Diff line Loading @@ -30,6 +30,7 @@ class MediaSource; class Parcel; class TimedTextPlayer; class TimedTextSource; class DataSource; class TimedTextDriver { public: Loading @@ -48,7 +49,7 @@ public: status_t addOutOfBandTextSource(const char *uri, const char *mimeType); // Caller owns the file desriptor and caller is responsible for closing it. status_t addOutOfBandTextSource( int fd, off64_t offset, size_t length, const char *mimeType); int fd, off64_t offset, off64_t length, const char *mimeType); void getTrackInfo(Parcel *parcel); Loading @@ -72,6 +73,8 @@ private: // -- End of variables to be guarded by mLock status_t selectTrack_l(int32_t index); status_t createOutOfBandTextSource( const char *mimeType, const sp<DataSource>& dataSource); DISALLOW_EVIL_CONSTRUCTORS(TimedTextDriver); }; Loading
media/libstagefright/AwesomePlayer.cpp +1 −1 Original line number Diff line number Diff line Loading @@ -2292,7 +2292,7 @@ status_t AwesomePlayer::invoke(const Parcel &request, Parcel *reply) { } int fd = request.readFileDescriptor(); off64_t offset = request.readInt64(); size_t length = request.readInt64(); off64_t length = request.readInt64(); String8 mimeType(request.readString16()); return mTextDriver->addOutOfBandTextSource( fd, offset, length, mimeType); Loading
media/libstagefright/timedtext/TimedTextDriver.cpp +21 −10 Original line number Diff line number Diff line Loading @@ -23,6 +23,7 @@ #include <media/mediaplayer.h> #include <media/MediaPlayerInterface.h> #include <media/stagefright/DataSource.h> #include <media/stagefright/FileSource.h> #include <media/stagefright/MediaDefs.h> #include <media/stagefright/MediaErrors.h> #include <media/stagefright/MediaSource.h> Loading Loading @@ -161,15 +162,32 @@ status_t TimedTextDriver::addInBandTextSource( status_t TimedTextDriver::addOutOfBandTextSource( const char *uri, const char *mimeType) { // TODO: Define "TimedTextSource::CreateFromURI(uri)" // and move below lines there..? // To support local subtitle file only for now if (strncasecmp("file://", uri, 7)) { ALOGE("uri('%s') is not a file", uri); return ERROR_UNSUPPORTED; } sp<DataSource> dataSource = DataSource::CreateFromURI(uri); return createOutOfBandTextSource(mimeType, dataSource); } status_t TimedTextDriver::addOutOfBandTextSource( int fd, off64_t offset, off64_t length, const char *mimeType) { if (fd < 0) { ALOGE("Invalid file descriptor: %d", fd); return ERROR_UNSUPPORTED; } sp<DataSource> dataSource = new FileSource(dup(fd), offset, length); return createOutOfBandTextSource(mimeType, dataSource); } status_t TimedTextDriver::createOutOfBandTextSource( const char *mimeType, const sp<DataSource>& dataSource) { if (dataSource == NULL) { return ERROR_UNSUPPORTED; } Loading @@ -189,13 +207,6 @@ status_t TimedTextDriver::addOutOfBandTextSource( return OK; } status_t TimedTextDriver::addOutOfBandTextSource( int fd, off64_t offset, size_t length, const char *mimeType) { // Not supported yet. This requires DataSource::sniff to detect various text // formats such as srt/smi/ttml. return ERROR_UNSUPPORTED; } void TimedTextDriver::getTrackInfo(Parcel *parcel) { Mutex::Autolock autoLock(mLock); Vector<sp<TimedTextSource> >::const_iterator iter; Loading