| 1 | [[BackLinksMenu]] |
| 2 | |
| 3 | [[TicketQuery(summary=AUDIO_CONTENT_R0, format=table, col=summary|owner|status|type|component|priority|effort|importance, rows=description|analysis_owners|analysis_reviewers|analysis_score|design_owners|design_reviewers|design_score|implementation_owners|implementation_reviewers|implementation_score|test_owners|test_reviewers|test_score|)]] |
| 4 | |
| 5 | |
| 6 | |
| 7 | = Analysis = |
| 8 | |
| 9 | == Overview == |
| 10 | |
| 11 | Audio content connects an audio resource to a frame |
| 12 | |
| 13 | * Audio content is a content of a frame representing audio. |
| 14 | * Audio resources are resources for audio. |
| 15 | * Audio resources have the same information as any other resources plus specific information about the audio they are representing. |
| 16 | * Audio content is responsible for returning the visual representation of the audio |
| 17 | * There should be drag and drop support, so audio can be dropped onto a frame and a audio content is created automatically from them. Audio are scaled if they are bigger than the frame they are dropped onto. |
| 18 | * There should be support for creating a frame with audio content by choosing an audio file. |
| 19 | * Audio resources should support clipping (in point, out point), rate and volume |
| 20 | |
| 21 | == Task requirements == |
| 22 | |
| 23 | * Define basic audio content. |
| 24 | * Define basic audio resource. |
| 25 | * Define how content work with frames to find a renderer (is this a scene?) |
| 26 | |
| 27 | == Task result == |
| 28 | The result of this task should be source code. |
| 29 | |
| 30 | == Implementation idea == |
| 31 | * Create class !IAudioContent which is concrete implementation of org.sophie2.base.model.book.!FrameContent for audio. |
| 32 | * !AudioContent should override mainResource() and return Prop<!AudioResource>. |
| 33 | * Create class !AudioResource which is concrete implementation of org.sophie2.base.model.book.resource.!BookResource for audio resources. |
| 34 | * !AudioResource should have methods: |
| 35 | * inPoint |
| 36 | * outPoint |
| 37 | * startPoint (0) |
| 38 | * endPoint (same as duration) |
| 39 | * rate |
| 40 | * volume |
| 41 | * duration |
| 42 | |
| 43 | * Audio |
| 44 | * Audio can be played without a frame presence (some script) |
| 45 | * Audio can be represented by an image |
| 46 | * Audio can have a controller |
| 47 | * Determine if any of this should be part of the content, or kept elsewhere, ie does the content have any say in how the resource is represented on screen? |
| 48 | * If yes, maybe contents should have extension points that keep the list of renderers for this content (and similar for audio and video, ie any content) |
| 49 | |
| 50 | |
| 51 | == Related == |
| 52 | * [wiki:UNPLANNED_BASE_MODEL_FRAME_CONTENT_R0][[BR]] |
| 53 | * [wiki:BASE_RESOURCE_COMMONS_R0] |
| 54 | * [wiki:IMAGE_CONTENT_R0] |
| 55 | * [wiki:VIDEO_CONTENT_R0] |
| 56 | |
| 57 | == How to demo == |
| 58 | * Create a frame with audio resource. |
| 59 | * Check if the resource is set correctly and check if the information about the resource is correct. |
| 60 | * Try changing the resource and check again the same things. |
| 61 | |
| 62 | = Design = |
| 63 | |
| 64 | = Implementation = |
| 65 | ^(Implementation results should be described and linked here (from the wiki or the repository))^ |
| 66 | |
| 67 | = Testing = |
| 68 | |
| 69 | = Comments = |
| 70 | ^(Write comments for this or later revisions here.) |
| 71 | |