Find Jobs
Hire Freelancers

Android MP4 Muxer (MPEG-4 Encoder)

$500-5000 USD

Ακυρώθηκε
Αναρτήθηκε περίπου 14 χρόνια πριν

$500-5000 USD

Πληρωμή κατά την παράδοση
Given are raw H.264 video and AAC audio files, which have to muxed (encoded) into a new valid MP4 (MPEG-4 container) file. This is not a project for Android beginners! Only expert Android/Java programmers will be able to handle it. We provide several example files at the beginning and during the project, which have to converted to valid MP4 files that will play with the standard Android MediaPlayer class. ## Deliverables Given are raw H.264 video and AAC audio files, which have to muxed (encoded) into a new valid MP4 (MPEG-4 container) file. This is not a project for Android beginners! Only expert Android/Java programmers will be able to handle it. We provide several example files at the beginning and during the project, which have to converted to valid MP4 files that will play with the standard Android MediaPlayer class. The program should be developed in Java. The transformation must be very performant, e.g. no garbage collection may be triggered while muxing(processing) very large files! Minimal CPU consumption. Stream-based processing (low memory consumption). The programm will receive multiple raw video&audio files as streams. Video and audio must be in-sync at all times in the resulting MP4 file. After the processing has started, more files may be added that will have muxed to the same MP4 file. In other words, the muxer must start processing data before all data/files are available. The muxer must start writing to the output stream as soon as sufficient data is available. The basic interface we need looks like this (first draft, maybe it will make sense to adjust the interface during the project if you and us find better solutions): interface Mp4Muxer { /** Sets the duration of the MP4 (as seen in media players). */ void setDuration(int/float/double/... durationOfMp4); /** Adds a raw video and a correspending raw audio file to the processing queue. */ /** Further files may be added after startMuxing has been called (processing already started). */ void addRawFiles(InputStream videoFile, InputStream audioFile); /** Starts processing of the queue, does generate output to the stream immediately. */ void startMuxing(OutputStream out); /** Marks the end of processing, no further files will be added. Any pending data must be flushed into the stream */ void stopMuxing(); } Source Code will be reviewed by senior Java developers and feedback will be given that must be considered. Basic coding guidelines must be followed: * Clean object-oriented design * No duplicate code * Line length: 120 * 4 spaces indention * Classes and variable should be exactly named after what they do or stand for (speaking names, no abbreviations) * Classes should not grow over 800 lines, methods not over 30 lines (reconsider design if limit is reached) This is a commercial project and open source code may only be used if the license is OK (no GPL etc.) and we agree to it. The result (including source code and libraries) may not be reused for other projects/clients; it must be exclusive to us. NDA is required. If everything goes well, there are good chances that we will cooperate with you in future projects.
Ταυτότητα εργασίας: 3623280

Σχετικά με την εργασία

3 προτάσεις
Απομακρυσμένη Εργασία
Ενεργός/ή 14 χρόνια πριν

Ψάχνεις τρόπο για να κερδίσεις μερικά χρήματα;

Πλεονεκτήματα πλειοδοσίας στο Freelancer

Καθόρισε τον προϋπολογισμό σου και το χρονοδιάγραμμα
Πληρώσου για τη δουλειά σου
Περίγραψε την πρόταση σου
Η εγγραφή και η πλειοδοσία σε εργασίες είναι δωρεάν
3 freelancers δίνουν μια μέση προσφορά $817 USD για αυτή τη δουλειά
Avatar Χρήστη
See private message.
$752,25 USD σε 10 ημέρες
2,7 (15 αξιολογήσεις)
4,6
4,6
Avatar Χρήστη
See private message.
$850 USD σε 10 ημέρες
0,0 (0 αξιολογήσεις)
0,0
0,0
Avatar Χρήστη
See private message.
$850 USD σε 10 ημέρες
0,0 (3 αξιολογήσεις)
2,5
2,5

Σχετικά με τον πελάτη

Σημαία της GERMANY
Germany
0,0
0
Μέλος από Αυγ 4, 2010

Επαλήθευση Πελάτη

Ευχαριστούμε! Σου έχουμε στείλει ένα email με ένα σύνδεσμο για να διεκδικήσεις τη δωρεάν πίστωση σου.
Κάτι πήγε στραβά κατά την προσπάθεια αποστολής του email σου. Παρακαλούμε δοκίμασε ξανά.
Εγγεγραμμένοι Χρήστες Συνολικές Αναρτημένες Δουλειές
Freelancer ® is a registered Trademark of Freelancer Technology Pty Limited (ACN 142 189 759)
Copyright © 2024 Freelancer Technology Pty Limited (ACN 142 189 759)
Φόρτωση προεπισκόπησης
Δόθηκε πρόσβαση για Geolocation.
Η σύνδεση σου έχει λήξει και τώρα έχεις αποσυνδεθεί. Παρακαλούμε συνδέσου ξανά.