HK1139759B - A method and system for media file conversion - Google Patents
A method and system for media file conversion Download PDFInfo
- Publication number
- HK1139759B HK1139759B HK10105902.4A HK10105902A HK1139759B HK 1139759 B HK1139759 B HK 1139759B HK 10105902 A HK10105902 A HK 10105902A HK 1139759 B HK1139759 B HK 1139759B
- Authority
- HK
- Hong Kong
- Prior art keywords
- file
- media player
- portable media
- supported
- media
- Prior art date
Links
Description
Technical Field
The present invention relates to methods and systems for automatically converting media files for playback on a portable media player, and more particularly to aspects related to conversion duration, file size, and playback quality.
Background
Media content is provided in many different formats. Many formats are not natively supported by various portable media players. Therefore, such content needs to undergo a time-consuming conversion process to a supported format.
In general, media content is composed of media data and miscellaneous data. The media data includes audio streams and video streams. These streams are encoded with different codecs and encapsulated into different file containers. For example, AVI video (file container format) may include a DivX encoded video stream and an MP3 encoded audio stream. The same stream can also be packaged into a MOV file container and appear to the portable media player as a different video.
Similarly, audio streams may be encoded using different codecs and may be packaged into different file containers.
Therefore, in order to determine whether media content is supported by and playable on a portable media player, the following components must be considered:
1. file container-the portable media player must first recognize the file container format and then know how and where to parse the audio and video (video content only) streams within the file.
2. Audio stream-in order for a portable media player to decode an audio stream, the audio stream must be encoded with a codec supported by the portable media player. In addition, the portable media player may limit certain properties of the audio streams that it is capable of supporting. For example, the sampling rate, bits per sample, number of audio channels, and bit rate of the encoded audio stream may be limited to accommodate the audio capabilities of the portable media player.
3. Video stream (for video content only) -in order for a portable media player to decode a video stream, the stream must be encoded with a codec supported by the portable media player. In addition, the portable media player may limit certain attributes of the video stream that it can support. For example, the size (width and height), frame rate, color depth, and bit rate of the encoded video stream may be limited to accommodate the video capabilities of the portable media player.
Previous attempts to simplify and speed up the conversion process have met with varying degrees of success.
For example, iTunes 6 only allows video formats supported by an iPod to be downloaded to the iPod. The user needs to manually convert any unsupported formats before downloading. Only files listed in the iTunes video library may be selected for conversion. Files eligible for conversion are limited to those supported by iTunes. Other video formats may be converted using the export function of QuickTime Pro or other third party software.
As another example, Windows Media Player 10(WMP10) only allows video files from its Media library to be downloaded to a portable Media Player. Therefore, file formats not supported by WMP10 are excluded. While downloading to the portable media player, WMP10 automatically converts all WMV/ASF video regardless of whether these formats are already supported by a Media Transfer Protocol (MTP) player. For other file types (e.g., AVI), WMP10 copies them to the MTP player without conversion. There is no guarantee that the transferred files can be played in the MTP player.
It is therefore desirable to simplify and expedite the conversion process that ensures that converted video or audio content can be played on a portable media player.
Disclosure of Invention
A method for automatically converting media files for playback on a portable media player is provided. The method includes designating a type of the portable media player; discarding media data of the media file if the media data cannot be played back by the portable media player; determining whether a file container for the media file is supported by the portable media player if the media data for the media file is capable of being played back by and supported by the portable media player; if the media data of the media file can be played back by the portable media player but is not supported by the portable media player, converting the media data into media data supported by the portable media player using a predetermined codec supported by the portable media player; and if the media data of the media file can be played back by the portable media player and is supported by the portable media player, and the file container of the media file is not supported by the portable media player, copying the media data to the file container supported by the portable media player, the predetermined codec being selected based on the playback quality, the output file size, and the file transition time.
Preferably, in the event that the file container of the media file is not supported by the portable media player, the stream of the media file is repackaged to the file container supported by the portable media player. The media file may include at least one item such as a video stream, an audio stream, and miscellaneous data. The converted media file may preferably be copied to the portable media player. The type of portable media player may be selected by the user or may be automatically detected when the portable media player is connected to the computer performing the conversion.
A system for automatically converting media files for playback on a portable media player is also provided. The system comprises: detecting means for determining a type of the portable media player; and a conversion means for determining whether the media file requires conversion and for performing the conversion, the conversion means being configured to: discarding media data of the media file if the media data cannot be played back by the portable media player; determining whether a file container for the media file is supported by the portable media player if the media data for the media file is capable of being played back by and supported by the portable media player; if the media data of the media file can be played back by the portable media player but is not supported by the portable media player, converting the media data into media data supported by the portable media player using a predetermined codec supported by the portable media player; and if the media data of the media file can be played back by the portable media player and is supported by the portable media player, and the file container of the media file is not supported by the portable media player, copying the media data to the file container supported by the portable media player, the predetermined codec being selected based on the playback quality, the output file size, and the file transition time.
The system may further include file transfer means for transferring the converted media file to the portable media player after a delay time, either automatically or according to a predetermined schedule. The system may preferably comprise means for storing a plurality of codecs, each codec being assigned a priority based on playback quality, output file size and file conversion time and being associated with a list of supported portable media players.
In another aspect of the invention, a software program for automatically converting media files for playback on a portable media player is provided. The software program may include: a detection module to determine a type of the portable media player; and a conversion module for determining whether a stream of the media file requires transcoding.
Drawings
Examples of the invention will now be described with reference to the accompanying drawings, in which:
FIG. 1 is a process flow diagram of a translation method in accordance with a preferred embodiment of the present invention;
FIG. 2 is a block diagram of a system in accordance with a preferred embodiment of the present invention;
FIG. 3 is an activity diagram of the conversion of various digital and audio content in accordance with a preferred embodiment of the present invention;
FIG. 4 is a diagram of utilizing Windows Explorer in accordance with a preferred embodiment of the present inventionTMA screen shot of a file conversion performed by drag and drop in (1);
FIG. 5 is a screen shot of a selected page of a client program for file conversion in accordance with a preferred embodiment of the present invention;
FIG. 6 is a screen shot of a setup interface that allows a user to select an output option for a converted file in accordance with a preferred embodiment of the present invention;
FIG. 7 is a screen shot of a conversion schedule according to an embodiment of the present invention; and is
Fig. 8 is a screen shot of the progress of transferring the converted file to the portable media player in accordance with a preferred embodiment of the present invention.
Detailed Description
The drawings and the following discussion are intended to provide a brief general description of a suitable computing environment in which the invention may be implemented. Although not required, the invention will be described in the general context of computer-executable instructions, such as program modules, being executed by a computer, such as a personal computer, laptop computer, notebook computer, tablet computer, PDA, or the like. Generally, program modules include routines, programs, characters, components, data structures, that perform particular tasks or implement particular abstract data types. As will be appreciated by one skilled in the art, the invention may be practiced with other computer system configurations, including hand-held devices, multiprocessor systems, microprocessor-based or programmable consumer electronics, network PCs, minicomputers, mainframe computers, and the like. The invention may also be practiced in distributed computing environments where tasks are performed by remote processing devices that are linked through a communications network. In a distributed computing environment, program modules may be located in both local and remote memory storage devices.
Referring to fig. 1 and 2, a system 20 is provided for automatically converting a media file 60 for playback on a portable media player 30. The system 20 generally includes a client 50 mounted on a computer 40, to which computer 40 the portable media player 30 is operatively connected by cable or wirelessly. The computer 40 also stores media files 60, and these media files 60 can be selected for conversion and transferred to the portable media player 30 for subsequent playback.
The client 50 includes a user interface 51, a detection module 52, a conversion module 53, a file transfer module 54, and a codec 55. Some screen shots of the user interface 51 are shown in fig. 5-8.
The user selects the media files 60 to be transferred from the computer 40 to the portable media player 30. This may be performed by a drag-and-drop action 81 in Windows Explorer 80 as shown in FIG. 4 (either directly or via a file transfer and conversion interface), or from a selection screen 90 of the user interface 51 shown in FIG. 5. In the selection screen 90, the user clicks on the "Add" button 91 to Add additional media files 60 for conversion and transfer to the portable media player 30. After all of the media files 60 are selected, the user clicks the "Next" button 92 to continue to the Next screen.
Referring to fig. 6, there is shown a setup screen that enables a user to select output options and settings for files to be converted and transferred to the portable media player 30. Alternatively, this screen may be accessible to more advanced users who wish to customize the file conversion and transfer process. The detection module 52 detects 5 the type of the portable media player 30. This may be specified by the user through the drop-down box 120 shown in fig. 6, or automatically detected by the computer 40 connected to the portable media player 30. Once the portable media player 30 has been determined, its capabilities and format compatibility are known to the computer 40. The user may also specify the quality setting from drop-down box 121. The quality settings may include, for example: excellent quality, good quality or better quality. The specified quality setting may automatically determine the video format 122, audio format 123, bit rate 124 to be used during the conversion process. It should be noted, however, that the output video and audio formats are dependent on the original file. Each media file may be converted in different ways depending on whether full conversion, partial conversion, or repackaging is involved. Customization should be based on playback objectives, e.g., optimizing for PAL/NTSC TV, optimizing for player display resolution, minimizing file size, etc. Alternatively, the default quality setting may be to maintain the file size of the source media file 60 and maintain the bit rate of the source media file 60. The total estimated file size 125 of the converted file is calculated and displayed to the user. An optional checkbox is provided to the user to indicate whether any pruning of the video content is desired. For example, the sides of the wide format video may be cropped to fit the display screen of the portable media player. For the destination of the converted file, the user may specify the location by clicking on the "Browse" button 127 and selecting the appropriate folder location.
Next, the conversion module 53 performs conversion of the source media file 60 to a target file for transfer to the portable media player 30. Referring back to fig. 1, the conversion module 53 determines (6) whether a media file 60 including an audio stream 62, a video stream, or miscellaneous data 63 (collectively referred to as media data) is capable of being played on the portable media player 30. Miscellaneous data 63 may be subtitles, scripts, text, and the like. If not, unsupported media data is either discarded (7)/not converted or stored in the file container 60. In other words, if the designated portable media player 30 does not have a display screen for video content, it cannot play back the video stream 61. Next, the conversion module 53 determines (10) whether the media data is supported by the portable media player 30 or is compatible with the portable media player 30.
If the media data is not supported by the portable media player 30 or is not compatible with the portable media player 30, the codec 55 is filtered (11) to those supported by the portable media player 30. A lookup table may be used to efficiently filter codecs 55 and prioritize codecs based on switching speed. From the filtered codecs 55, a codec is selected (12) based on an evaluation of playback quality, output file size and file conversion time. The codec is selected based on a criterion that the algorithm in the client 50 evaluates playback quality, output file size and file conversion time to enable the user to both enjoy ease of use in terms of a file transfer/transcoding experience and a satisfactory media playback experience. The selection of the codec may also take into account user specified quality settings. With the selected codec, unsupported media data is converted (13) to a target format supported by the portable media player 30. However, if the media data is supported by the portable media player 30, the conversion is not performed. The media data is then copied (14) to a file container supported by the portable media player 30. The file container 60 may be an original container or a new container as long as the container can support both media data and portable media player 30.
If the media data is supported by the portable media player 30 or compatible with the portable media player 30, the conversion module 53 determines whether the file container 60 is supported by the portable media player 30 or compatible with the portable media player 30. If the file container 60 is not supported by the portable media player 30 or is not compatible with the portable media player 30, the media data is then copied (16) to a new file container supported by the portable media player 30.
After converting the media files to a format supported by or compatible with the portable media player 30, the converted media files are then transferred from the computer 40 to the portable media player 30. The transfer may be done automatically after the conversion is completed or delayed according to a schedule.
Referring to fig. 7, a status screen 100 is displayed to visually indicate the progress of the conversion process to the user. For each file 60, a status bar 101 is displayed to show the progress of the conversion in terms of percentage. Beside each file 60, a comment is also displayed to inform the user of the type of conversion necessary. The user can also deselect files 60 that the user does not wish to be converted on the status screen 100 by unchecking the check box next to each file name.
Returning to FIG. 3, each transition scenario for the various media files 60 is described in more detail. In short, when the source video format (the container 60, the audio stream 62, the video stream 61, and the miscellaneous data) is supported by the portable media player 30, the source video stream 61 is directly copied to the portable media player 30 without any conversion. When the source audio streams (the container 60 and the audio stream 62) are supported by the portable media player 30, the source audio stream 62 is copied directly to the portable media player 30 without any conversion. When the source video format (container 60, audio stream 62, and video stream 61) is not supported by the portable media player 30, the source video stream 61 is converted to a format supported or compatible by the portable media player 30. For example, if the portable media player 30 supports both WMV (max resolution: 320 × 240) format and AVI (max MPEG4 video resolution: 640 × 480) format, the MOV source video (H.264 video at 640 × 480) is converted to AVI format to maintain video resolution. If the portable media player 30 does not support video playback, the audio content of the source video is converted to audio in a new audio container using an appropriate audio codec (only if the audio content is not supported by the portable media player 30). When the source audio format (the container 60 and the audio stream 62) is not supported by the portable media player 30, the source audio stream 62 is converted to an audio format supported or compatible by the portable media player 30.
When the source video format is partially supported by the portable media player 30 or partially compatible with the portable media player 30, six situations may occur:
1. only the file container 60 is not supported by the portable media player 30,
2. only the video stream 61 is not supported by the portable media player 30,
3. only the audio stream 62 is not supported by the portable media player 30,
4. neither the file container 60 nor the audio stream 62 are supported by the portable media player 30,
5. neither the file container 60 nor the video stream 62 are supported by the portable media player 30, or
6. Neither the audio stream 61 nor the video stream 62 is supported by the portable media player 30.
In fig. 3(a), if only the file container 60 is not supported by the portable media player, both the audio stream 62 and the video stream 61 from the source video are repackaged into the container format 60 supported by the portable media player 30 without any codec conversion.
In fig. 3(b), if only the video stream 61 is not supported by the portable media player 30, the video stream 61 is converted in the same file container format 60 using a video codec 55, which video codec 55 can be specified by the user and supported by the portable media player 30. The codec 55 may be selected based on a criterion that an algorithm in the client 50 evaluates playback quality, output file size, and file conversion time to enable the user to both enjoy ease of use in terms of a file transfer/transcoding experience and a satisfactory media playback experience. The audio stream 62 is maintained. If the portable media player 30 does not support video playback, the video stream 61 is discarded from the original file container 60 without any conversion.
In FIG. 3(c), if only the audio stream 62 is not supported by the portable media player 30, the audio stream 62 is converted in the same file container format 60 using an audio codec 55, which audio codec 55 is user-specifiable and supported by the portable media player 30. The codec 55 may be selected based on a criterion that an algorithm in the client 50 evaluates playback quality, output file size, and file conversion time to enable the user to both enjoy ease of use in terms of a file transfer/transcoding experience and a satisfactory media playback experience. The video stream 61 is maintained.
In FIG. 3(d), if neither the file container 60 nor the audio stream 62 is supported by the portable media player 30, the audio stream 62 is converted using an audio codec 55 in the source video codec-enabled file container format 60, the audio codec 55 being user-specifiable and supported by the portable media player 30. The codec 55 may be selected based on a criterion that an algorithm in the client 50 evaluates playback quality, output file size, and file conversion time to enable the user to both enjoy ease of use in terms of a file transfer/transcoding experience and a satisfactory media playback experience. The video stream 61 is maintained. The converted audio stream 72 and the original video stream 61 are repackaged into the target container format 70.
In fig. 3(e), if neither the file container 60 nor the video stream 61 is supported by the portable media player 30, the video stream 61 is converted in the source audio codec supported container format 60 using a video codec 55, the video codec 55 being user-specifiable and supported by the portable media player 30. The codec 55 may be selected based on a criterion that an algorithm in the client 50 evaluates playback quality, output file size, and file conversion time to enable the user to both enjoy ease of use in terms of a file transfer/transcoding experience and a satisfactory media playback experience. The audio stream 62 is maintained. The converted video stream 71 and the original audio stream 61 are repackaged into the target container format 70. If the portable media player 30 does not support video playback, the video stream 61 is discarded without any conversion. The audio stream 62 is packaged in a new audio container without any conversion.
In fig. 3(f), if neither the audio stream 62 nor the video stream 61 is supported by the portable media player 30, then both the audio stream 62 and the video stream 61 are converted using a codec that is specifiable by the user and supported by the portable media player 30. The converted streams 71, 72 are repackaged into a file container format 70 that can store both streams 71, 72. The codec may be selected based on a benchmark that an algorithm in the client 50 evaluates playback quality, output file size, and file conversion time to enable a user to both enjoy ease of use in terms of a file transfer/transcoding experience, and a satisfactory media playback experience. If the portable media player 30 does not support video playback, the video stream 61 is discarded without any conversion. The audio stream 62 is converted in a new audio container with the most appropriate audio codec.
In fig. 3(g), a general case is shown, including a case where the miscellaneous data 63 may be directly copied or discarded depending on whether the portable media player 30 is capable of supporting the miscellaneous data 63.
When the source audio format is partially supported by the portable media player 30 or partially compatible with the portable media player 30, two situations may occur:
1. only the file container 60 is not supported by the portable media player 30, or
2. Only the audio stream 62 is not supported by the portable media player 30.
If only the file container 60 is not supported by the portable media player 30, the original audio stream 61 is repackaged into a new audio container supported by the portable media player 30 without any conversion.
If only the audio stream 62 is not supported by the portable media player 30, the audio stream 62 is converted using the most appropriate audio codec in a new or existing audio container.
The conversion process described can be fully automated without any user intervention. The user may simply need to specify the source audio or video file to be transferred and specify the target portable media player 30 for the transfer. The client 50 determines for the file container 60, each stream 61, 62, and miscellaneous data 63 whether to repackage (for file containers) or directly copy (for streams/data), discard (for streams/data), transcode (for streams). The algorithm in the client 50 thus provides intelligent conversion, enabling the user to enjoy both ease of use in terms of a file transfer/transcoding experience and a satisfactory media playback experience.
The following table shows the behavior of the transition method for various scenarios:
video content
Audio content
Video content
Audio content
Illustration of the drawings
Player support +═
X ═ player does not support
-
Although it is described that only a single video stream and a single audio stream are stored in the file container, it is also possible to store a plurality of video streams and audio streams. Other streams are also possible, such as a subtitle stream.
It will be appreciated by persons skilled in the art that numerous variations and/or modifications may be made to the invention as shown in the specific embodiments without departing from the scope or spirit of the invention as broadly described. The present embodiments are, therefore, to be considered in all respects as illustrative and not restrictive.
Claims (8)
1. A method for automatically converting a media file for playback on a portable media player, the method comprising:
specifying a type of the portable media player;
discarding media data of the media file if the media data cannot be played back by the portable media player;
determining whether a file container for the media file is supported by the portable media player if the media data for the media file is capable of being played back by and supported by the portable media player;
if the media data of the media file can be played back by the portable media player but is not supported by the portable media player, converting the media data into media data supported by the portable media player using a predetermined codec supported by the portable media player; and is
If the media data of the media file is capable of being played back by and supported by the portable media player and the file container of the media file is not supported by the portable media player, then the media data is copied to the file container supported by the portable media player.
2. The method of claim 1, further comprising selecting the predetermined codec based on playback quality, output file size, and file conversion time.
3. The method of claim 1, wherein the media file comprises at least one selected from the group consisting of: video stream, audio stream, miscellaneous data.
4. The method of claim 1, further comprising the step of copying the converted media file to the portable media player.
5. The method of claim 1, wherein the step of specifying the type of the portable media player is selected by a user or is automatically detected when the portable media player is connected to a computer that performs the conversion.
6. A system for automatically converting a media file for playback on a portable media player, the system comprising:
detecting means for determining a type of the portable media player; and
conversion means for determining whether a media file requires conversion and for performing the conversion, the conversion means being configured to:
discarding media data of the media file if the media data cannot be played back by the portable media player;
determining whether a file container for the media file is supported by the portable media player if the media data for the media file is capable of being played back by and supported by the portable media player;
if the media data of the media file can be played back by the portable media player but is not supported by the portable media player, converting the media data into media data supported by the portable media player using a predetermined codec supported by the portable media player; and is
If the media data of the media file is capable of being played back by and supported by the portable media player and the file container of the media file is not supported by the portable media player, then the media data is copied to the file container supported by the portable media player.
7. The system of claim 6, further comprising file transfer means for transferring the converted media file to the portable media player after a delay time, either automatically or according to a predetermined schedule.
8. The system of claim 6, further comprising means for storing a plurality of codecs, each codec assigned a priority based on playback quality, output file size, and file conversion time and associated with a list of supported portable media players.
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US11/594,044 | 2006-11-06 | ||
US11/594,044 US8019200B2 (en) | 2006-11-06 | 2006-11-06 | Method and system for media file conversion |
PCT/SG2007/000367 WO2008057046A1 (en) | 2006-11-06 | 2007-10-31 | A method and system for media file conversion |
Publications (2)
Publication Number | Publication Date |
---|---|
HK1139759A1 HK1139759A1 (en) | 2010-09-24 |
HK1139759B true HK1139759B (en) | 2013-03-28 |
Family
ID=
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8019200B2 (en) | Method and system for media file conversion | |
US10348794B2 (en) | Media production system with score-based display feature | |
US7634502B2 (en) | System and method for improved content delivery | |
US11210610B2 (en) | Enhanced multimedia content preview rendering in a cloud content management system | |
US9063912B2 (en) | Multimedia content preview rendering in a cloud content management system | |
US11232481B2 (en) | Extended applications of multimedia content previews in the cloud-based content management system | |
JP5112287B2 (en) | Method and system for providing distributed editing and storage of digital media over a network | |
US9098474B2 (en) | Preview pre-generation based on heuristics and algorithmic prediction/assessment of predicted user behavior for enhancement of user experience | |
MXPA04006412A (en) | Sparse caching for streaming media. | |
US20080040453A1 (en) | Method and apparatus for multimedia encoding, broadcast and storage | |
US20130083210A1 (en) | Screen and webcam video capture techniques | |
US20190394537A1 (en) | Methods and apparatus for updating media presentation data | |
CN103974147A (en) | MPEG (moving picture experts group)-DASH protocol based online video playing control system with code rate switch control and static abstract technology | |
WO2006113018A2 (en) | Media timeline processing infrastructure | |
US10489501B2 (en) | Systems and methods for displaying annotated video content by mobile computing devices | |
HK1139759B (en) | A method and system for media file conversion | |
US9250771B1 (en) | Asynchronously ingesting media content into a content management system from a client computer having an unreliable network connection | |
CN114598895A (en) | Audio and video processing method, device and equipment and computer readable storage medium | |
US12052447B1 (en) | Dynamically moving transcoding of content between servers | |
WO2013116365A1 (en) | Extended applications of multimedia content previews in the cloud-based content management system | |
CN105681540A (en) | Multimedia message play method and apparatus | |
US20110307625A1 (en) | Index-based video play apparatus and method using double buffering | |
GB2500967A (en) | Preview pre-generation based on heuristics and algorithmic prediction /assessment of predicted user behaviour | |
KR20210037304A (en) | Display video providing device | |
EP2724259A1 (en) | Multimedia content conversion in a cloud content management system |