summaryrefslogtreecommitdiff
path: root/src/AS_DCP_PCM.cpp
diff options
context:
space:
mode:
authorCarl Hetherington <cth@carlh.net>2016-01-14 20:04:43 +0000
committerCarl Hetherington <cth@carlh.net>2016-01-14 23:02:44 +0000
commitbb12174d81d85d3ecbb9ef883f9d16d53dfde666 (patch)
tree351c8fa02e0218667665cd7d165a6aa028ea7c86 /src/AS_DCP_PCM.cpp
parent9cb94743afa61dd08e9c96001fcfe39db2b21012 (diff)
Remove edit rate checks so that DCP-o-matic can use any edit rate it wants.
Diffstat (limited to 'src/AS_DCP_PCM.cpp')
-rwxr-xr-xsrc/AS_DCP_PCM.cpp17
1 files changed, 11 insertions, 6 deletions
diff --git a/src/AS_DCP_PCM.cpp b/src/AS_DCP_PCM.cpp
index 02b82f3..d1f4afe 100755
--- a/src/AS_DCP_PCM.cpp
+++ b/src/AS_DCP_PCM.cpp
@@ -25,7 +25,7 @@ THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
/*! \file AS_DCP_PCM.cpp
- \version $Id: AS_DCP_PCM.cpp,v 1.47 2014/10/02 21:02:24 jhurst Exp $
+ \version $Id: AS_DCP_PCM.cpp,v 1.47 2014/10/02 21:02:24 jhurst Exp $
\brief AS-DCP library, PCM essence reader and writer implementation
*/
@@ -285,6 +285,8 @@ ASDCP::PCM::MXFReader::h__Reader::OpenRead(const std::string& filename)
return RESULT_FORMAT;
}
+#if 0
+ /* This check has been removed so that DCP-o-matic can use any edit rate it wants */
// check for sample/frame rate sanity
if ( ASDCP_SUCCESS(result)
&& m_ADesc.EditRate != EditRate_24
@@ -308,7 +310,7 @@ ASDCP::PCM::MXFReader::h__Reader::OpenRead(const std::string& filename)
// oh, they gave us the audio sampling rate instead, assume 24/1
if ( m_ADesc.EditRate == SampleRate_48k || m_ADesc.EditRate == SampleRate_96k )
{
- DefaultLogSink().Warn("adjusting EditRate to 24/1\n");
+ DefaultLogSink().Warn("adjusting EditRate to 24/1\n");
m_ADesc.EditRate = EditRate_24;
}
else
@@ -318,6 +320,7 @@ ASDCP::PCM::MXFReader::h__Reader::OpenRead(const std::string& filename)
return RESULT_FORMAT;
}
}
+#endif
// TODO: test file for sane CBR index BytesPerEditUnit
@@ -518,7 +521,7 @@ class ASDCP::PCM::MXFWriter::h__Writer : public ASDCP::h__ASDCPWriter
public:
AudioDescriptor m_ADesc;
byte_t m_EssenceUL[SMPTE_UL_LENGTH];
-
+
h__Writer(const Dictionary& d) : ASDCP::h__ASDCPWriter(d) {
memset(m_EssenceUL, 0, SMPTE_UL_LENGTH);
}
@@ -561,6 +564,8 @@ ASDCP::PCM::MXFWriter::h__Writer::SetSourceStream(const AudioDescriptor& ADesc)
if ( ! m_State.Test_INIT() )
return RESULT_STATE;
+#if 0
+ /* This check has been removed so that DCP-o-matic can use any edit rate it wants */
if ( ADesc.EditRate != EditRate_24
&& ADesc.EditRate != EditRate_25
&& ADesc.EditRate != EditRate_30
@@ -580,6 +585,7 @@ ASDCP::PCM::MXFWriter::h__Writer::SetSourceStream(const AudioDescriptor& ADesc)
ADesc.EditRate.Numerator, ADesc.EditRate.Denominator);
return RESULT_RAW_FORMAT;
}
+#endif
if ( ADesc.AudioSamplingRate != SampleRate_48k && ADesc.AudioSamplingRate != SampleRate_96k )
{
@@ -592,7 +598,7 @@ ASDCP::PCM::MXFWriter::h__Writer::SetSourceStream(const AudioDescriptor& ADesc)
m_ADesc = ADesc;
Result_t result = PCM_ADesc_to_MD(m_ADesc, (WaveAudioDescriptor*)m_EssenceDescriptor);
-
+
if ( ASDCP_SUCCESS(result) )
{
memcpy(m_EssenceUL, m_Dict->ul(MDD_WAVEssence), SMPTE_UL_LENGTH);
@@ -716,7 +722,7 @@ ASDCP::PCM::MXFWriter::OpenWrite(const std::string& filename, const WriterInfo&
m_Writer = new h__Writer(DefaultInteropDict());
m_Writer->m_Info = Info;
-
+
Result_t result = m_Writer->OpenWrite(filename, HeaderSize);
if ( ASDCP_SUCCESS(result) )
@@ -754,4 +760,3 @@ ASDCP::PCM::MXFWriter::Finalize()
//
// end AS_DCP_PCM.cpp
//
-