Oracle® interMedia Reference 10g Release 1 (10.1) Part Number B10829-01 |
|
|
View PDF |
This section presents reference information on the Oracle interMedia methods used specifically for video data manipulation.
Chapter 3 presents reference information on the Oracle interMedia methods that are common to ORDAudio, ORDDoc, ORDImage, and ORDVideo. Use the methods presented in both chapters to get and set attributes, and to perform metadata extractions.
For more information on object types and methods, see Oracle Database Concepts.
The following methods are presented in this section:
Format
checkProperties(ctx IN OUT RAW) RETURN BOOLEAN;
Description
Checks all the properties of the stored video data, including the following video attributes: format, width, height, frame resolution, frame rate, video duration, number of frames, compression type, number of colors, and bit rate.
Parameters
The format plug-in context information.
Usage Notes
The checkProperties( ) method does not check the MIME type because a file can have multiple correct MIME types and this is not well defined.
Pragmas
None.
Exceptions
ORDVideoExceptions.VIDEO_PLUGIN_EXCEPTION
This exception is raised if you call the checkProperties( ) method and the video plug-in raises an exception when calling this method.
Examples
Check property information for known video attributes:
DECLARE obj ORDSYS.ORDVideo; ctx RAW(64) :=NULL; BEGIN SELECT p.product_video INTO obj FROM pm.online_media p WHERE p.product_id = 2030; IF(obj.checkProperties(ctx)) THEN DBMS_OUTPUT.PUT_LINE('check Properties returned true'); ELSE DBMS_OUTPUT.PUT_LINE('check Properties returned false'); END IF; COMMIT; EXCEPTION WHEN ORDSYS.ORDVideoExceptions.VIDEO_PLUGIN_EXCEPTION THEN DBMS_OUTPUT.PUT_LINE('ORDVideoExceptions.VIDEO_PLUGIN_EXCEPTION caught'); WHEN OTHERS THEN DBMS_OUTPUT.PUT_LINE('EXCEPTION caught'); END; /
Format
getAllAttributes(
ctx IN OUT RAW,
attributes IN OUT NOCOPY CLOB);
Description
Returns a formatted string for convenient client access. For natively supported formats, the string includes the following list of audio data attributes separated by a comma (,): width, height, format, frameResolution, frameRate, videoDuration, numberOfFrames, compressionType, numberOfColors, and bitRate. For user-defined formats, the string is defined by the format plug-in.
Parameters
The format plug-in context information.
The attributes.
Usage Notes
Generally, these video data attributes are available from the header of the formatted video data.
Video data attribute information can be extracted from the video data itself. You can extend support to a video format that is not understood by the ORDVideo object by implementing an ORDPLUGINS.ORDX_<format>_VIDEO package that supports that format. See Oracle interMedia User's Guide for more information.
Pragmas
None.
Exceptions
ORDVideoExceptions.METHOD_NOT_SUPPORTED
This exception is raised if you call the getAllAttributes( ) method and the video plug-in raises an exception when calling this method.
Examples
Return all video attributes for video data stored in the database:
DECLARE obj ORDSYS.ORDVideo; tempLob CLOB; ctx RAW(64) :=NULL; BEGIN SELECT p.product_video INTO obj FROM pm.online_media p WHERE p.product_id = 2030; DBMS_OUTPUT.PUT_LINE('getting comma separated list of all attributes'); DBMS_OUTPUT.PUT_LINE('---------------------------------------------'); DBMS_LOB.CREATETEMPORARY(tempLob, FALSE, DBMS_LOB.CALL); obj.getAllAttributes(ctx,tempLob); DBMS_OUTPUT.PUT_LINE(DBMS_LOB.substr(tempLob, DBMS_LOB.getLength(tempLob),1)); COMMIT; EXCEPTION WHEN ORDSYS.ORDVideoExceptions.METHOD_NOT_SUPPORTED THEN DBMS_OUTPUT.PUT_LINE('VIDEO METHOD_NOT_SUPPORTED EXCEPTION caught'); WHEN OTHERS THEN DBMS_OUTPUT.PUT_LINE('EXCEPTION CAUGHT'); END; /
Format
getAttribute(
ctx IN OUT RAW,
name IN VARCHAR2)
RETURN VARCHAR2;
Description
Returns the value of the requested attribute from video data for user-defined formats only.
Note: This method is supported only for user-defined format plug-ins. |
Parameters
The format plug-in context information.
The name of the attribute.
Usage Notes
None.
Pragmas
None.
Exceptions
ORDVideoExceptions.VIDEO_PLUGIN_EXCEPTION
This exception is raised if you call the getAttribute( ) method and the video plug-in raises an exception when calling this method.
Examples
Return information for the specified video attribute for video data stored in the database. (Because this example uses a supported data format, rather than a user-written plug-in, an exception will be raised.)
DECLARE obj ORDSYS.ORDVideo; res VARCHAR2(4000); ctx RAW(64) :=NULL; BEGIN SELECT p.product_video INTO obj FROM pm.online_media p WHERE p.product_id = 2030; DBMS_OUTPUT.PUT_LINE('getting video duration'); DBMS_OUTPUT.PUT_LINE('---------------------'); res := obj.getAttribute(ctx,'video_duration'); COMMIT; EXCEPTION WHEN ORDSYS.ORDVideoExceptions.VIDEO_PLUGIN_EXCEPTION THEN DBMS_OUTPUT.PUT_LINE('VIDEO PLUGIN EXCEPTION caught'); WHEN OTHERS THEN DBMS_OUTPUT.PUT_LINE('EXCEPTION caught'); END; /
Format
getBitRate( ) RETURN INTEGER;
Description
Returns the value of the bitRate attribute of the video object.
Parameters
None.
Usage Notes
None.
Pragmas
PRAGMA RESTRICT_REFERENCES(getBitRate, WNDS, WNPS, RNDS, RNPS)
Exceptions
None.
Examples
Return the object attribute value of the bitRate attribute of the video object:
DECLARE obj ORDSYS.ORDVideo; res INTEGER; BEGIN SELECT p.product_video INTO obj FROM pm.online_media p WHERE p.product_id = 2030; res := obj.getBitRate(); DBMS_OUTPUT.PUT_LINE('bit rate : ' || res ); COMMIT; END; /
Format
getCompressionType( ) RETURN VARCHAR2;
Description
Returns the value of the compressionType attribute of the video object.
Parameters
None.
Usage Notes
None.
Pragmas
PRAGMA RESTRICT_REFERENCES(getCompressionType, WNDS, WNPS, RNDS, RNPS)
Exceptions
None.
Examples
Return the object attribute value of the compressionType attribute of the video object:
DECLARE obj ORDSYS.ORDVideo; res VARCHAR2(4000); BEGIN SELECT p.product_video INTO obj FROM pm.online_media p WHERE p.product_id = 2030; res := obj.getCompressionType(); DBMS_OUTPUT.PUT_LINE('compression type: ' ||res); COMMIT; END; /
Format
getContentInLob(
ctx IN OUT RAW,
dest_lob IN OUT NOCOPY BLOB,
mimeType OUT VARCHAR2,
format OUT VARCHAR2);
Description
Copies data from a data source into the specified BLOB. The BLOB must not be the BLOB in the source.localData attribute (of the embedded ORDSource object).
Parameters
The source plug-in context information.
The LOB in which to receive data.
The MIME type of the data; this may or may not be returned.
The format of the data; this may or may not be returned.
Usage Notes
None.
Pragmas
None.
Exceptions
ORDSourceExceptions.METHOD_NOT_SUPPORTED
This exception is raised if you call the getContentInLob( ) method and this method is not supported by the source plug-in being used.
ORDSourceExceptions.SOURCE_PLUGIN_EXCEPTION
This exception is raised if you call the getContentInLob( ) method and the source plug-in raises an exception.
See Appendix F for more information about these exceptions.
Examples
Get data from a data source into the specified BLOB on the local source:
DECLARE obj ORDSYS.ORDVideo; tempBLob BLOB; mimeType VARCHAR2(4000); format VARCHAR2(31); ctx RAW(64) :=NULL; BEGIN SELECT p.product_video INTO obj FROM pm.online_media p WHERE p.product_id = 2030; IF (obj.isLocal) THEN DBMS_OUTPUT.PUT_LINE('local is true'); END IF; DBMS_LOB.CREATETEMPORARY(tempBLob, true, 10); obj.getContentInLob(ctx,tempBLob, mimeType,format); DBMS_OUTPUT.PUT_LINE('Length is ' ||TO_CHAR(DBMS_LOB.getLength(tempBLob))); COMMIT; EXCEPTION WHEN ORDSYS.ORDSourceExceptions.METHOD_NOT_SUPPORTED THEN DBMS_OUTPUT.PUT_LINE('ORDSourceExceptions.METHOD_NOT_SUPPORTED caught'); WHEN OTHERS THEN DBMS_OUTPUT.PUT_LINE('EXCEPTION caught'); END; /
Format
getContentLength(ctx IN OUT RAW) RETURN INTEGER;
Description
Returns the length of the video data content stored in the source.
Parameters
The source plug-in context information.
Usage Notes
None.
Pragmas
PRAGMA RESTRICT_REFERENCES(getContentLength, WNDS,
WNPS, RNDS, RNPS)
Exceptions
ORDSourceExceptions.INCOMPLETE_SOURCE_INFORMATION
This exception is raised if you call the getContentLength( ) method and the value of source.srcType attribute is NULL.
ORDSourceExceptions.SOURCE_PLUGIN_EXCEPTION
This exception is raised if you call the getContentLength( ) method and the source plug-in raises an exception.
See Appendix F for more information about this exception.
Examples
See the example in import( ).
Format
getDescription( ) RETURN VARCHAR2;
Description
Returns the description of the video data.
Parameters
None.
Usage Notes
None.
Pragmas
PRAGMA RESTRICT_REFERENCES(getDescription, WNDS, WNPS, RNDS, RNPS)
Exceptions
ORDVideoExceptions.DESCRIPTION_IS_NOT_SET
This exception is raised if you call the getDescription( ) method and the description attribute is not set.
Examples
See the example in setDescription( ).
Format
getFormat( ) RETURN VARCHAR2;
Description
Returns the value of the format attribute of the video object.
Parameters
None.
Usage Notes
None.
Pragmas
PRAGMA RESTRICT_REFERENCES(getFormat, WNDS,
WNPS, RNDS, RNPS)
Exceptions
ORDVideoExceptions.VIDEO_FORMAT_IS_NULL
This exception is raised if you call the getFormat( ) method and the value for the format attribute is NULL.
Examples
Get the format for some stored video data:
DECLARE obj ORDSYS.ORDVideo; BEGIN SELECT p.product_video INTO obj FROM pm.online_media p WHERE p.product_id = 2030; DBMS_OUTPUT.PUT_LINE('writing format'); DBMS_OUTPUT.PUT_LINE('--------------'); DBMS_OUTPUT.PUT_LINE(obj.getFormat); COMMIT; END; /
Format
getFrameRate( ) RETURN INTEGER;
Description
Returns the value of the frameRate attribute of the video object.
Parameters
None.
Usage Notes
None.
Pragmas
PRAGMA RESTRICT_REFERENCES(getFrameRate, WNDS, WNPS, RNDS, RNPS)
Exceptions
None.
Examples
Return the object attribute value of the frame rate for video data stored in the database:
DECLARE obj ORDSYS.ORDVideo; res INTEGER; BEGIN SELECT p.product_video INTO obj FROM pm.online_media p WHERE p.product_id = 2030; res := obj.getFrameRate(); DBMS_OUTPUT.PUT_LINE('frame rate : ' ||res); COMMIT; END; /
Format
getFrameResolution( ) RETURN INTEGER;
Description
Returns the value of the frameResolution attribute of the video object.
Parameters
None.
Usage Notes
None.
Pragmas
PRAGMA RESTRICT_REFERENCES(getFrameResolution, WNDS,
WNPS, RNDS, RNPS)
Exceptions
None.
Examples
Return the value of the frame resolution for the video data:
DECLARE obj ORDSYS.ORDVideo; res INTEGER; BEGIN SELECT p.product_video INTO obj FROM pm.online_media p WHERE p.product_id = 2030; res := obj.getFrameResolution(); DBMS_OUTPUT.PUT_LINE('resolution : ' ||res); COMMIT; END; /
Format
getFrameSize(retWidth OUT INTEGER,
retHeight OUT INTEGER);
Description
Returns the value of the height and width attributes of the video object.
Parameters
The frame width in pixels.
The frame height in pixels.
Usage Notes
None.
Pragmas
PRAGMA RESTRICT_REFERENCES(getFrameSize, WNDS, WNPS, RNDS, RNPS)
Exceptions
None.
Examples
Return the frame size (width and height) for video data:
DECLARE obj ORDSYS.ORDVideo; width INTEGER; height INTEGER; BEGIN SELECT p.product_video INTO obj FROM pm.online_media p WHERE p.product_id = 2030; obj.getFrameSize(width, height); DBMS_OUTPUT.PUT_LINE('width :' || width); DBMS_OUTPUT.PUT_LINE('height :' || height); COMMIT; END; /
Format
getNumberOfColors( ) RETURN INTEGER;
Description
Returns the value of the numberOfColors attribute of the video object.
Parameters
None.
Usage Notes
None.
Pragmas
PRAGMA RESTRICT_REFERENCES(getNumberOfColors, WNDS,
WNPS, RNDS, RNPS)
Exceptions
None.
Examples
Return the object attribute value of the numberOfColors attribute of the video object:
DECLARE obj ORDSYS.ORDVideo; res INTEGER; BEGIN SELECT p.product_video INTO obj FROM pm.online_media p WHERE p.product_id = 2030; res := obj.getNumberOfColors(); DBMS_OUTPUT.PUT_LINE('number of colors: ' ||res); COMMIT; END; /
Format
getNumberOfFrames( ) RETURN INTEGER;
Description
Returns the value of the numberOfFrames attribute of the video object.
Parameters
None.
Usage Notes
None.
Pragmas
PRAGMA RESTRICT_REFERENCES(getNumberOfFrames, WNDS,
WNPS, RNDS, RNPS)
Exceptions
None.
Examples
Return the object attribute value of the total number of frames in the video data:
DECLARE obj ORDSYS.ORDVideo; res INTEGER; BEGIN SELECT p.product_video INTO obj FROM pm.online_media p WHERE p.product_id = 2030; res := obj.getNumberOfFrames(); DBMS_OUTPUT.PUT_LINE('number of frames : ' ||res); COMMIT; END; /
Format
getVideoDuration( ) RETURN INTEGER;
Description
Returns the value of the videoDuration attribute of the video object.
Parameters
None.
Usage Notes
None.
Pragmas
PRAGMA RESTRICT_REFERENCES(getVideoDuration, WNDS,
WNPS, RNDS, RNPS)
Exceptions
None.
Examples
Return the total time to play the video data:
DECLARE obj ORDSYS.ORDVideo; res INTEGER; BEGIN SELECT p.product_video INTO obj FROM pm.online_media p WHERE p.product_id = 2030; res := obj.getVideoDuration(); DBMS_OUTPUT.PUT_LINE('video duration : ' ||res); COMMIT; END; /
Format
import(ctx IN OUT RAW);
Description
Transfers video data from an external video data source to a local source (localData) within Oracle Database.
Parameters
The source plug-in context information. This should be allocated and initialized to NULL. If you are using a user-defined source plug-in, you should call the openSource( ) method. See the introduction to this chapter for more information.
Usage Notes
Use the setSource( ) method to set the source.srcType, source.srcLocation, and source.srcName attributes (of the embedded ORDSource object) for the external video data source prior to calling the import( ) method.
After importing data from an external video data source to a local source (within Oracle Database), the source information remains unchanged (that is, pointing to the source from where the data was imported).
Invoking this method implicitly calls the setUpdateTime( ) and setLocal( ) methods.
This method is invoked at the ORDSource level, which uses the PL/SQL UTL_HTTP package to import media data from an HTTP data source. You can use environment variables to specify the proxy behavior of the UTL_HTTP package. For example, on UNIX, setting the environment variable http_proxy to a URL specifies that the UTL_HTTP package will use that URL as the proxy server for HTTP requests. Setting the no_proxy environment variable to a domain name specifies that the HTTP proxy server will not be used for URLs in the specified domain.
See PL/SQL Packages and Types Reference for more information about the UTL_HTTP PL/SQL package.
Pragmas
None.
Exceptions
ORDSourceExceptions.INCOMPLETE_SOURCE_INFORMATION
This exception is raised if you call the import( ) method and the value of the source.srcType attribute is NULL.
ORDSourceExceptions.NULL_SOURCE
This exception is raised if you call the import( ) method and the value of the source.localData attribute is NULL.
ORDSourceExceptions.METHOD_NOT_SUPPORTED
This exception is raised if you call the import( ) method and this method is not supported by the source plug-in being used.
ORDSourceExceptions.SOURCE_PLUGIN_EXCEPTION
This exception is raised if you call the import( ) method and the source plug-in raises an exception.
See Appendix F for more information about these exceptions.
Examples
Import video data by first setting the source and then importing it:
DECLARE obj ORDSYS.ORDVideo; ctx RAW(64) :=NULL; BEGIN SELECT p.product_video INTO obj FROM pm.online_media p WHERE p.product_id = 2030 FOR UPDATE; DBMS_OUTPUT.PUT_LINE('setting and getting source'); DBMS_OUTPUT.PUT_LINE('--------------------------'); -- Set source to a file: obj.setSource('file','FILE_DIR','speakers.rm'); -- Get source information: DBMS_OUTPUT.PUT_LINE(obj.getSource()); -- Import data: obj.import(ctx); -- Check size: DBMS_OUTPUT.PUT_LINE('Length is ' || TO_CHAR(obj.getContentLength(ctx))); UPDATE pm.online_media p SET p.product_video = obj WHERE p.product_id = 2030; COMMIT; END; /
Format
importFrom(ctx IN OUT RAW,
source_type IN VARCHAR2,
source_location IN VARCHAR2,
source_name IN VARCHAR2);
Description
Transfers video data from the specified external video data source to a local source (localData) within Oracle Database.
Parameters
The source plug-in context information. This should be allocated and initialized to NULL. If you are using a user-defined source plug-in, you should call the openSource( ) method. See the introduction to this chapter for more information.
The type of the source video data.
The location from which the source video data is to be imported.
The name of the source video data.
Usage Notes
This method is similar to the import( ) method except the source information is specified as parameters to the method instead of separately.
You must ensure that the directory indicated with the source_location parameter exists or is created before you use this method for srcType "file".
After importing data from an external video data source to a local source (within Oracle Database), the source information (that is, pointing to the source from where the data was imported) is set to the input values.
Invoking this method implicitly calls the setUpdateTime( ) and setLocal( ) methods.
Pragmas
None.
Exceptions
ORDSourceExceptions.NULL_SOURCE exception
This exception is raised if you call the importFrom( ) method and the value the source.localData attribute is NULL.
ORDSourceExceptions.METHOD_NOT_SUPPORTED
This exception is raised if you call the importFrom( ) method and this method is not supported by the source plug-in being used.
ORDSourceExceptions.SOURCE_PLUGIN_EXCEPTION
This exception is raised if you call the importFrom( ) method and the source plug-in raises an exception.
See Appendix F for more information about these exceptions.
Examples
Import video data from the specified external data source into the local source:
DECLARE obj ORDSYS.ORDVideo; ctx RAW(64) :=NULL; BEGIN SELECT p.product_video INTO obj FROM pm.online_media p WHERE p.product_id = 2004 FOR UPDATE; DBMS_OUTPUT.PUT_LINE('setting and getting source'); DBMS_OUTPUT.PUT_LINE('--------------------------'); -- Import data: obj.importFrom(ctx,'file','FILE_DIR','speakers.rm'); -- Check size: DBMS_OUTPUT.PUT_LINE('Length is ' ||TO_CHAR(obj.getContentLength(ctx))); UPDATE pm.online_media p SET p.product_video = obj WHERE p.product_id = 2004; COMMIT; EXCEPTION WHEN ORDSYS.ORDSourceExceptions.METHOD_NOT_SUPPORTED THEN DBMS_OUTPUT.put_line('Source METHOD_NOT_SUPPORTED caught'); WHEN ORDSYS.ORDSourceExceptions.SOURCE_PLUGIN_EXCEPTION THEN DBMS_OUTPUT.put_line('SOURCE PLUGIN EXCEPTION caught'); WHEN ORDSYS.ORDVideoExceptions.METHOD_NOT_SUPPORTED THEN DBMS_OUTPUT.put_line('VIDEO METHOD_NOT_SUPPORTED EXCEPTION caught'); WHEN ORDSYS.ORDVideoExceptions.VIDEO_PLUGIN_EXCEPTION THEN DBMS_OUTPUT.put_line('VIDEO PLUGIN EXCEPTION caught'); WHEN OTHERS THEN DBMS_OUTPUT.PUT_LINE('EXCEPTION Caught'); END; /
Format
processVideoCommand(ctx IN OUT RAW,
cmd IN VARCHAR2,
arguments IN VARCHAR2,
result OUT RAW)
RETURN RAW;
Description
Lets you send a command and related arguments to the format plug-in for processing.
Note: This method is supported only for user-defined format plug-ins. |
Parameters
The format plug-in context information.
Any command recognized by the format plug-in.
The arguments of the command.
The result of calling this method returned by the format plug-in.
Usage Notes
Use this method to send any video commands and their respective arguments to the format plug-in. Commands are not interpreted; they are taken and passed through to a format plug-in to be processed.
If the format is set to NULL, then the processVideoCommand( ) method uses the default format plug-in; otherwise, it uses your user-defined format plug-in.
You can extend support to a format that is not understood by the ORDVideo object by preparing an ORDPLUGINS.ORDX_<format>_VIDEO package that supports that format. See Oracle interMedia User's Guide for more information.
Pragmas
None.
Exceptions
ORDVideoExceptions.METHOD_NOT_SUPPORTED
ORDVideoExceptions.VIDEO_PLUGIN_EXCEPTION
Either exception is raised if you call the processVideoCommand( ) method and the video plug-in raises an exception when calling this method.
Examples
None.
Format
setBitRate(knownBitRate IN INTEGER);
Description
Sets the value of the bitRate attribute of the video object.
Parameters
The bit rate.
Usage Notes
Calling this method implicitly calls the setUpdateTime( ) method.
Pragmas
None.
Exceptions
ORDVideoExceptions.NULL_INPUT_VALUE
This exception is raised if you call the setBitRate( ) method and the value for the knownBitRate parameter is NULL.
Examples
See the example in setFrameSize( ).
Format
setCompressionType(knownCompressionType IN VARCHAR2);
Description
Sets the value of the compressionType attribute of the video object.
Parameters
A known compression type.
Usage Notes
Calling this method implicitly calls the setUpdateTime( ) method.
Pragmas
None.
Exceptions
ORDVideoExceptions.NULL_INPUT_VALUE
This exception is raised if you call the setCompressionType( ) method and the value for the knownCompressionType parameter is NULL.
Examples
See the example in setFrameSize( ).
Format
setDescription (user_description IN VARCHAR2);
Description
Sets the description of the video data.
Parameters
The description of the video data.
Usage Notes
Each video object may need a description to help some client applications. For example, a Web-based client can show a list of video descriptions from which a user can select one to access the video data.
Web access components and other client components provided with Oracle interMedia make use of this description attribute to present video data to users.
Calling this method implicitly calls the setUpdateTime( ) method.
Pragmas
None.
Exceptions
None.
Examples
Set the description attribute for some video data:
DECLARE obj ORDSYS.ORDVideo; BEGIN SELECT p.product_video INTO obj FROM pm.online_media p WHERE p.product_id = 2030 FOR UPDATE; DBMS_OUTPUT.PUT_LINE('writing description'); DBMS_OUTPUT.PUT_LINE('-------------'); obj.setDescription('This is a video of a speaker'); DBMS_OUTPUT.PUT_LINE(obj.getDescription()); UPDATE pm.online_media p SET p.product_video = obj WHERE p.product_id = 2688; COMMIT; END; /
Format
setFormat(knownFormat IN VARCHAR2);
Description
Sets the format attribute of the video object.
Parameters
The known format of the video data to be set in the video object.
Usage Notes
Calling this method implicitly calls the setUpdateTime( ) method.
Pragmas
None.
Exceptions
ORDVideoExceptions.NULL_INPUT_VALUE
This exception is raised if you call the setFormat( ) method and the value for the knownFormat parameter is NULL.
Examples
Set the format for some stored video data:
DECLARE obj ORDSYS.ORDVideo; BEGIN SELECT p.product_video INTO obj FROM pm.online_media p WHERE p.product_id = 2030 FOR UPDATE; DBMS_OUTPUT.PUT_LINE('current format'); DBMS_OUTPUT.PUT_LINE('--------------'); DBMS_OUTPUT.PUT_LINE(obj.getFormat); obj.setFormat('rm'); DBMS_OUTPUT.PUT_LINE('new format'); DBMS_OUTPUT.PUT_LINE('--------------'); DBMS_OUTPUT.PUT_LINE(obj.getFormat); UPDATE pm.online_media p SET p.product_video = obj WHERE p.product_id = 2030; COMMIT; EXCEPTION WHEN ORDSYS.ORDVideoExceptions.NULL_INPUT_VALUE THEN DBMS_OUTPUT.PUT_LINE('ORDVideoExceptions.NULL_INPUT_VALUE caught'); WHEN OTHERS THEN DBMS_OUTPUT.PUT_LINE('EXCEPTION caught'); END; /
Format
setFrameRate(knownFrameRate IN INTEGER);
Description
Sets the value of the frameRate attribute of the video object.
Parameters
The frame rate.
Usage Notes
Calling this method implicitly calls the setUpdateTime( ) method.
Pragmas
None.
Exceptions
ORDVideoExceptions.NULL_INPUT_VALUE
This exception is raised if you call the setFrameRate( ) method and the value for the knownFrameRate parameter is NULL.
Examples
See the example in setFrameSize( ).
Format
setFrameResolution(knownFrameResolution IN INTEGER);
Description
Sets the value of the frameResolution attribute of the video object.
Parameters
The known frame resolution in pixels per inch.
Usage Notes
Calling this method implicitly calls the setUpdateTime( ) method.
Pragmas
None.
Exceptions
ORDVideoExceptions.NULL_INPUT_VALUE
This exception is raised if you call the setFrameResolution( ) method and the value for the knownFrameResolution parameter is NULL.
Examples
See the example in setFrameSize( ).
Format
setFrameSize(knownWidth IN INTEGER,
knownHeight IN INTEGER);
Description
Sets the value of the height and width attributes of the video object.
Parameters
The frame width in pixels.
The frame height in pixels.
Usage Notes
Calling this method implicitly calls the setUpdateTime( ) method.
Pragmas
None.
Exceptions
ORDVideoExceptions.NULL_INPUT_VALUE
This exception is raised if you call the setFrameSize( ) method and the value for either the knownWidth or knownHeight parameter is NULL.
Examples
Set the frame size (width and height) for video data:
DECLARE obj ORDSYS.ORDVideo; BEGIN SELECT p.product_video INTO obj FROM pm.online_media p WHERE p.product_id = 2030 FOR UPDATE; obj.setFrameSize(1,2); obj.setFrameResolution(4); obj.setFrameRate(5); obj.setVideoDuration(20); obj.setNumberOfFrames(8); obj.setCompressionType('Cinepak'); obj.setBitRate(1500); obj.setNumberOfColors(256); UPDATE pm.online_media p SET p.product_video = obj WHERE p.product_id = 2030; COMMIT; END; /
Format
setKnownAttributes(
knownFormat IN VARCHAR2,
knownWidth IN INTEGER,
knownHeight IN INTEGER,
knownFrameResolution IN INTEGER,
knownFrameRate IN INTEGER,
knownVideoDuration IN INTEGER,
knownNumberOfFrames IN INTEGER,
knownCompressionType IN VARCHAR2,
knownNumberOfColors IN INTEGER,
knownBitRate IN INTEGER);
Description
Sets the known video attributes for the video data.
Parameters
The known format.
The known width.
The known height.
The known frame resolution.
The known frame rate.
The known video duration.
The known number of frames.
The known compression type.
The known number of colors.
The known bit rate.
Usage Notes
Calling this method implicitly calls the setUpdateTime( ) method.
Pragmas
None.
Exceptions
None.
Examples
Set the property information for all known attributes for video data:
DECLARE obj ORDSYS.ORDVideo; width integer; height integer; BEGIN SELECT p.product_video INTO obj FROM pm.online_media p WHERE p.product_id = 2030 FOR UPDATE; obj.setKnownAttributes('MOOV',1,2,4,5,20,8,'Cinepak', 256, 1500); obj.getFrameSize(width, height); DBMS_OUTPUT.PUT_LINE('width: ' || TO_CHAR(width)); DBMS_OUTPUT.PUT_LINE('height: ' || TO_CHAR(height)); DBMS_OUTPUT.PUT_LINE('format: ' || obj.getFormat()); DBMS_OUTPUT.PUT_LINE('frame resolution: ' || TO_CHAR(obj.getFrameResolution())); DBMS_OUTPUT.PUT_LINE('frame rate: ' || TO_CHAR(obj.getFrameRate())); DBMS_OUTPUT.PUT_LINE('video duration: ' || TO_CHAR(obj.getVideoDuration())); DBMS_OUTPUT.PUT_LINE('number of frames: ' || TO_CHAR(obj.getNumberOfFrames())); DBMS_OUTPUT.PUT_LINE('compression type: ' || obj.getCompressionType()); DBMS_OUTPUT.PUT_LINE('bite rate: ' || TO_CHAR(obj.getBitRate())); DBMS_OUTPUT.PUT_LINE('number of colors: ' || TO_CHAR(obj.getNumberOfColors())); UPDATE pm.online_media p SET p.product_video = obj WHERE p.product_id = 2030; COMMIT; END; /
Format
setNumberOfColors(knownNumberOfColors IN INTEGER);
Description
Sets the value of the numberOfColors attribute of the video object.
Parameters
A known number of colors.
Usage Notes
Calling this method implicitly calls the setUpdateTime( ) method.
Pragmas
None.
Exceptions
ORDVideoExceptions.NULL_INPUT_VALUE
This exception is raised if you call the setNumberOfColors( ) method and the value for the knownNumberOfColors parameter is NULL.
Examples
See the example in setFrameSize( ).
Format
setNumberOfFrames(knownNumberOfFrames IN INTEGER);
Description
Sets the value of the numberOfFrames attribute of the video object.
Parameters
A known number of frames.
Usage Notes
Calling this method implicitly calls the setUpdateTime( ) method.
Pragmas
None.
Exceptions
ORDVideoExceptions.NULL_INPUT_VALUE
This exception is raised if you call the setNumberOfFrames( ) method and the value for the knownNumberOfFrames parameter is NULL.
Examples
See the example in setFrameSize( ).
Format
setProperties(ctx IN OUT RAW,
setComments IN BOOLEAN);
Description
Reads the video data to get the values of the object attributes and then stores them in the object. This method sets the properties for each of the following attributes of the video data for which values are available: format, height, width, frame resolution, frame rate, video duration, number of frames, compression type, number of colors, and bit rate. This method populates the comments field of the object with a rich set of format and application properties in XML form if the value of the setComments parameter is TRUE.
Parameters
The format plug-in context information.
A Boolean value that indicates whether or not the comments field of the object is populated. If the value is TRUE, then the comments field of the object is populated with a rich set of format and application properties of the video object in XML form; otherwise, if the value is FALSE, the comments field of the object remains unpopulated. The default value is FALSE.
Usage Notes
If the property cannot be extracted from the media source, then the respective attribute is set to NULL.
If the format is set to NULL, then the setProperties( ) method uses the default format plug-in; otherwise, it uses your user-defined format plug-in.
Pragmas
None.
Exceptions
ORDVideoExceptions.VIDEO_PLUGIN_EXCEPTION
This exception is raised if you call the setProperties( ) method and the video plug-in raises an exception when calling this method.
Examples
Set the property information for known video attributes:
DECLARE obj ORDSYS.ORDVideo; ctx RAW(64) :=NULL; BEGIN SELECT p.product_video INTO obj FROM pm.online_media p WHERE p.product_id = 2030 FOR UPDATE; obj.setProperties(ctx,FALSE); UPDATE pm.online_media p SET p.product_video = obj WHERE p.product_id = 2030; COMMIT; EXCEPTION WHEN ORDSYS.ORDVideoExceptions.VIDEO_PLUGIN_EXCEPTION THEN DBMS_OUTPUT.PUT_LINE('ORDVideoExceptions.VIDEO_PLUGIN_EXCEPTION caught'); WHEN OTHERS THEN DBMS_OUTPUT.PUT_LINE('exception raised'); END; /
Format
setVideoDuration(knownVideoDuration IN INTEGER);
Description
Sets the value of the videoDuration attribute of the video object.
Parameters
A known video duration.
Usage Notes
Calling this method implicitly calls the setUpdateTime( ) method.
Pragmas
None.
Exceptions
ORDVideoExceptions.NULL_INPUT_VALUE
This exception is raised if you call the setVideoDuration( ) method and the value for the knownVideoDuration parameter is NULL.
Examples
See the example in setFrameSize( ).